SlideShare a Scribd company logo
1 of 27
Download to read offline
Mobicents SIP Servlets
       http://dev.telestax.com/sipservlets/




Mobicents Summit, Rio, October 2012
Agenda


● MSS Achievements

● Community

● Introducing Mobicents SIP Servlets 2.0

● Roadmaps
MSS Achievements



Mobicents Summit, Rio, October 2012
More RFCs Support
●   RFC 5626 - Managing Client-Initiated Connections in the Session Initiation Protocol
    Also known as SIP Outbound : Defines a keep-alive mechanism used to keep NAT
    bindings fresh, and to allow the UA to detect when a flow has failed.
     β—‹ Allow for KeepAlives to keep the NAT pinholes open https://mobicents.ci.cloudbees.
          com/job/Mobicents-SipServlets-Release/lastSuccessfulBuild/artifact/documentation/jsr289-extensions-
          apidocs/org/mobicents/servlet/sip/SipConnector.html#setKeepAliveTimeout(java.lang.String, int, long)
           which Allow to set/reset the RFC5626 Section 4.4.1 keeplive on a given TCP/TLS/SCTP connection to a given
    remote host and port
          and https://mobicents.ci.cloudbees.com/job/Mobicents-SipServlets-
          Release/lastSuccessfulBuild/artifact/documentation/jsr289-extensions-
          apidocs/org/mobicents/servlet/sip/listener/SipConnectorListener.html#onKeepAliveTimeout(org.mobicents.servlet.
          sip.SipConnector, java.lang.String, int)
          which if a RFC 5626 KeepAlive timeout has fired, gives the connector on which it happened and the peer
          information involved.
     β—‹    Support for Flow Tokens (A Flow is a transport-layer association between two
          hosts that is represented by the network address and port number of both ends
          and by the transport protocol. For TCP, a flow is equivalent to a TCP
          connection) to be matched to connections so that in dialog requests uses the
          correct IP and Port for reaching SIP UAs behind NAT

●   RFC 4916 - Connected Identity in the Session Initiation Protocol : Allow for From
    and To Header Modification within a dialog as per Section 4.1.2 of JSR 289
Congestion Control
 ●   Present at the SIP Stack level through a Valve before it gets to the TU,
     access to low level details from the SIP Stack, pluggable mechanism

 ●   Congestion Control at the Container level, based on Memory Usage (CPU
     and Session based control to be added) => Now Allow Notifications to
     be popped up at the container level
ContainerListener
void onCongestionControlStarted(CongestionControlEvent event) As soon as
congestion starts in the underlying source, it calls this method to notify about it.
void onCongestionControlStopped(CongestionControlEvent event) As soon as
congestion abates in the underlying source, it calls this method to notify about it.
javax.servlet.sip.SipServletResponse onRequestThrottled(javax.servlet.sip.
SipServletRequest request, CongestionControlEvent event) When a request that
comes in is not passed up to the application because of congestion control. Allow to modify the default
response to add headers to it.
SIP Servlets Testing



 ●   Released Arquillian Integration ALPHA 1 to create a
     standard test framework for testing SIP Servlets
     applications (See Georges' Presentation).

 ●   Took over Leadership of SipUnit under Mobicents
     Umbrella in agreement with CafeSip team
JAIN SIP NIO Support

  ●   Blocking IO is limiting the number of concurrent connections to
      the server as each connection is creating 2 threads thus
      reaching pretty fast the OS limits of max threads.

  ●   NIO Support allows to solve that issue and process a larger
      amount of concurrent connections capped only by the
      processing power of the hardware (RAM, CPU)

  ●   NIO only supported for TCP/TLS no UDP Support for NIO.

  ●   Allowed the JAIN SIP Stack to reach 5000 registrations & calls
      TCP or TLS (10K concurrent connections). Tests done by a
      customer on a 2 GB RAM - 32 bits OS.
JAIN SIP NIO Architecture
JAIN SIP NIO
Threading Model
General


●   More than 150 bug fixes scattered over MSS, SIP LB,
    JAIN SIP, JAIN SIP HA, JAIN SIP Ext, Cluster


●   More Extensions to JSR 289


●   Member of JSR 359 - SIP Servlets 2.0 Expert Group
Member of JSR 359 -
SIP Servlets 2.0 EG

JSR is open and public, anyone can chime in. Current
items being discussed or that wil be discussed
 ● SIP Outbound (RFC5626) Extension
 ● WebRTC / SIP Over WebSockets Integration
 ● IMS Extensions :
    β—‹   3GPP TS24.229 V10.2.0 Section 5.2.8.1.2 : support Termination of Session from Proxy

●   Proxy 1xx Timeout
●   SIP Session Timers (RFC4028)
●   Interworking of SIP Servlets with other protocols.
●   Concurrency issues and Threading Model
●   Java EE7/CDI Integration

                                        Brainstorm
SIP Servlets CDI
 ●   Released CDI Telco Framework ALPHA 1 : CDI Integration
     with SIP Servlets with the end goal to feed it back to SIP
     Servlet 2.0 spec
SIP Servlets CDI
public class SimpleSipServlet {
   @Inject
   private SipFactory sipFactory;

   protected void handleInvite(@Observes @Invite
SipServletRequest req){ ... }

   protected void handleSuccessResponse(@Observes
@SuccessResponse SipServletResponse resp) {....}
}


●   Loose coupling with strong typing
●   Reusable components
●   Enhanced event notifications mechanism
●   Out of the box integration with the rest of the Java EE
    ecosystem
Container Abstraction
Layer




●   Internal API for Plugging MSS into any type of container
●   Containers Supported for Tomcat 6, Tomcat 7, JBoss AS5, JBoss AS7
●   Can support more containers such as Jetty, contributions are welcomed !
MSS 2.0.0.Final !

 ●   SIP Over WebSockets (See other Presentations +
     Demo from Vladimir and Francois-Joseph from Orange
     Labs)

 ●   NIO Support

 ●   Support for JBoss AS 7 in standalone mode :
     β—‹   TCK Certified
     β—‹   AS7 Management Integration through SIP Subsystem
     β—‹   Fast Startup Time and Low Mem Footprint (Comparable to Tomcat but
         for a full JEE Container)

 ●   Missing Features planned for 2.X versions
     β—‹   Failover - Replication
     β—‹   SNMP
Mobicents HTML 5
WebRTC Client Sneak Peek
Community



Mobicents Summit, Rio, October 2012
Git and CloudBees
migration

●   Rebranded the project to TeleStax leadership

●   Moved the project to Git and independent google code
    project. Ported the Code + some of the Documentation
    to Wiki

●   Moved the CI infra to CloudBees, allow external
    contributors to start CI jobs and reduce overhead.
MSS Company
Contributors
Contributions

 ●   Jose M Recio from Solaiemes : AS7 support

 ●   Laurent Strullu, FranΓ§ois-Joseph LevΓ©e, Camille Oudot from Orange Labs :
     JAIN SIP JS + bug fixes.

 ●   Jonas Borjesson from Twilio : RFC 5626 Flow ob parameter Support + TLS
     Documentation

 ●   Georges Vagenas : Leading CDI Telco Framework and Sip Servlets
     Testing with Arquillian and SipUnit + Helping on RestComm

 ●   Thomas Quintana : Leading RestComm

 ●   Alex Vinogradov and Alex Saveliev from Codeminders; commissioned by
     Avistar Communications Corp : bug fixes + testing
Downloads

 ●   5200 downloads on cumulated versions since last
     Summit (source http://sourceforge.net/projects/mobicents/files/Mobicents%20Sip%20Servlets/stats/timeline?
     dates=2011-12-02+to+2012-10-04)
International Events
  Presence
 ●   Fosdem 2012 (Belgium) : Global Platform
     Presentation

 ●   Mobile World Congress 2012

 ●   CommunicAsia 2012
ShortComings
●   Too few community releases : One 1.X FINAL
    release, One 2.X FINAL release

●   Late on schedule : due to migration of projects to
    TeleStax and git + setting up the TelScale Product
    Line. Also moved to major version which implied
    more work.
Roadmaps



Mobicents Summit, Rio, October 2012
Mobicents SIP Servlets
2.X Roadmap

 ●   HA for JBoss AS7
 ●   Improvement to WebRTC Client
 ●   SNMP for JBoss AS7
 ●   Auto Scaling
 ●   Rolling Upgrades
 ●   More RFCs Support
 ●   Better Support for NAT (ICE - TURN)
 ●   Regular Business of bug fixing and contributions.
Mobicents SIP Servlets
3.X Roadmap


 ●   SIP Servlets 2.0 Non Backward Compatible Work

 ●   Will be started early 2013 in parallel with 2.X branch
Thank you !


 http://telestax.com/



     confidential

More Related Content

What's hot

4. CNCF kubernetes Comparison of-existing-cni-plugins-for-kubernetes
4. CNCF kubernetes Comparison of-existing-cni-plugins-for-kubernetes4. CNCF kubernetes Comparison of-existing-cni-plugins-for-kubernetes
4. CNCF kubernetes Comparison of-existing-cni-plugins-for-kubernetes
Juraj Hantak
Β 

What's hot (20)

Quic Tools Presentation
Quic Tools PresentationQuic Tools Presentation
Quic Tools Presentation
Β 
OpenStack Meetup - SDN
OpenStack Meetup - SDNOpenStack Meetup - SDN
OpenStack Meetup - SDN
Β 
How OpenShift SDN helps to automate
How OpenShift SDN helps to automateHow OpenShift SDN helps to automate
How OpenShift SDN helps to automate
Β 
4. Kubernetes - Application centric infrastructure kubernetes, contiv
4. Kubernetes - Application centric infrastructure  kubernetes, contiv4. Kubernetes - Application centric infrastructure  kubernetes, contiv
4. Kubernetes - Application centric infrastructure kubernetes, contiv
Β 
MidoNet 101
MidoNet 101MidoNet 101
MidoNet 101
Β 
4. CNCF kubernetes Comparison of-existing-cni-plugins-for-kubernetes
4. CNCF kubernetes Comparison of-existing-cni-plugins-for-kubernetes4. CNCF kubernetes Comparison of-existing-cni-plugins-for-kubernetes
4. CNCF kubernetes Comparison of-existing-cni-plugins-for-kubernetes
Β 
Microservices for Enterprises - Consistent Network & Security services for Co...
Microservices for Enterprises - Consistent Network & Security services for Co...Microservices for Enterprises - Consistent Network & Security services for Co...
Microservices for Enterprises - Consistent Network & Security services for Co...
Β 
CentOS NFV SIG Introduction and Update
CentOS NFV SIG Introduction and UpdateCentOS NFV SIG Introduction and Update
CentOS NFV SIG Introduction and Update
Β 
MidoNet 101: Face to Face with the Distributed SDN
MidoNet 101: Face to Face with the Distributed SDNMidoNet 101: Face to Face with the Distributed SDN
MidoNet 101: Face to Face with the Distributed SDN
Β 
Sfo15 408- odp-dpdk platform performance
Sfo15 408- odp-dpdk platform performanceSfo15 408- odp-dpdk platform performance
Sfo15 408- odp-dpdk platform performance
Β 
ITSPA May 2013 - WebRTC, TURN, and WebSocket
ITSPA May 2013 - WebRTC, TURN, and WebSocketITSPA May 2013 - WebRTC, TURN, and WebSocket
ITSPA May 2013 - WebRTC, TURN, and WebSocket
Β 
Red Hat demo of OpenStack and ODL at ODL summit 2016
Red Hat demo of OpenStack and ODL at ODL summit 2016 Red Hat demo of OpenStack and ODL at ODL summit 2016
Red Hat demo of OpenStack and ODL at ODL summit 2016
Β 
2014 OpenStack Summit - Neutron OVS to LinuxBridge Migration
2014 OpenStack Summit - Neutron OVS to LinuxBridge Migration2014 OpenStack Summit - Neutron OVS to LinuxBridge Migration
2014 OpenStack Summit - Neutron OVS to LinuxBridge Migration
Β 
Ryu sdn framework
Ryu sdn framework Ryu sdn framework
Ryu sdn framework
Β 
Introduction to NBL
Introduction to NBLIntroduction to NBL
Introduction to NBL
Β 
Developing SDN apps in Ryu
Developing SDN apps in RyuDeveloping SDN apps in Ryu
Developing SDN apps in Ryu
Β 
ONOS build 2016 Sharing
ONOS build 2016 SharingONOS build 2016 Sharing
ONOS build 2016 Sharing
Β 
Opendaylight SDN Controller
Opendaylight SDN ControllerOpendaylight SDN Controller
Opendaylight SDN Controller
Β 
Introduction to the Helium release of OpenDaylight
Introduction to the Helium release of OpenDaylightIntroduction to the Helium release of OpenDaylight
Introduction to the Helium release of OpenDaylight
Β 
OpenStack sdn
OpenStack sdnOpenStack sdn
OpenStack sdn
Β 

Viewers also liked

Mobicents Summit 2012 - Orange Mobicents WebRTC Contribution : JAIN SIP JS
Mobicents Summit 2012 - Orange Mobicents WebRTC Contribution : JAIN SIP JSMobicents Summit 2012 - Orange Mobicents WebRTC Contribution : JAIN SIP JS
Mobicents Summit 2012 - Orange Mobicents WebRTC Contribution : JAIN SIP JS
telestax
Β 
Mobicents Summit 2012 - Silvano Girardi - InPhonex's migration to Mobicents S...
Mobicents Summit 2012 - Silvano Girardi - InPhonex's migration to Mobicents S...Mobicents Summit 2012 - Silvano Girardi - InPhonex's migration to Mobicents S...
Mobicents Summit 2012 - Silvano Girardi - InPhonex's migration to Mobicents S...
telestax
Β 
Mobicents 2.0, The Java Open Source Communications Platform-FOSDEM 2011 Jean ...
Mobicents 2.0, The Java Open Source Communications Platform-FOSDEM 2011 Jean ...Mobicents 2.0, The Java Open Source Communications Platform-FOSDEM 2011 Jean ...
Mobicents 2.0, The Java Open Source Communications Platform-FOSDEM 2011 Jean ...
Jean Deruelle
Β 

Viewers also liked (11)

Tuning and development with SIP Servlets on Mobicents
Tuning and development with SIP Servlets on MobicentsTuning and development with SIP Servlets on Mobicents
Tuning and development with SIP Servlets on Mobicents
Β 
Mobicents Summit 2012 - Orange Mobicents WebRTC Contribution : JAIN SIP JS
Mobicents Summit 2012 - Orange Mobicents WebRTC Contribution : JAIN SIP JSMobicents Summit 2012 - Orange Mobicents WebRTC Contribution : JAIN SIP JS
Mobicents Summit 2012 - Orange Mobicents WebRTC Contribution : JAIN SIP JS
Β 
Mobicents Summit 2012 - Silvano Girardi - InPhonex's migration to Mobicents S...
Mobicents Summit 2012 - Silvano Girardi - InPhonex's migration to Mobicents S...Mobicents Summit 2012 - Silvano Girardi - InPhonex's migration to Mobicents S...
Mobicents Summit 2012 - Silvano Girardi - InPhonex's migration to Mobicents S...
Β 
Mobicents 2.0, The Java Open Source Communications Platform-FOSDEM 2011 Jean ...
Mobicents 2.0, The Java Open Source Communications Platform-FOSDEM 2011 Jean ...Mobicents 2.0, The Java Open Source Communications Platform-FOSDEM 2011 Jean ...
Mobicents 2.0, The Java Open Source Communications Platform-FOSDEM 2011 Jean ...
Β 
The Network Protocol Stack Revisited
The Network Protocol Stack RevisitedThe Network Protocol Stack Revisited
The Network Protocol Stack Revisited
Β 
Introduction to VoIP, RTP and SIP
Introduction to VoIP, RTP and SIP Introduction to VoIP, RTP and SIP
Introduction to VoIP, RTP and SIP
Β 
Introduction to SIP(Session Initiation Protocol)
Introduction to SIP(Session Initiation Protocol)Introduction to SIP(Session Initiation Protocol)
Introduction to SIP(Session Initiation Protocol)
Β 
SIP & TLS - a very brief overview for the POSH BOF at IETF 87
SIP & TLS - a very brief overview for the POSH BOF at IETF 87SIP & TLS - a very brief overview for the POSH BOF at IETF 87
SIP & TLS - a very brief overview for the POSH BOF at IETF 87
Β 
DANE-based TLS verification in the SIP protocol (v 2)
DANE-based TLS verification in the SIP protocol (v 2)DANE-based TLS verification in the SIP protocol (v 2)
DANE-based TLS verification in the SIP protocol (v 2)
Β 
Sips must die, die, die - about TLS usage in the SIP protocol
Sips must die, die, die - about TLS usage in the SIP protocolSips must die, die, die - about TLS usage in the SIP protocol
Sips must die, die, die - about TLS usage in the SIP protocol
Β 
Webrtc overview
Webrtc overviewWebrtc overview
Webrtc overview
Β 

Similar to Mobicents Summit 2012 - Jean Deruelle - Mobicents SIP Servlets

What_s_New_in_OpenShift_Container_Platform_4.6.pdf
What_s_New_in_OpenShift_Container_Platform_4.6.pdfWhat_s_New_in_OpenShift_Container_Platform_4.6.pdf
What_s_New_in_OpenShift_Container_Platform_4.6.pdf
chalermpany
Β 
From MSS to TelScale - Mobicents Summit 2011
From MSS to TelScale - Mobicents Summit 2011From MSS to TelScale - Mobicents Summit 2011
From MSS to TelScale - Mobicents Summit 2011
telestax
Β 

Similar to Mobicents Summit 2012 - Jean Deruelle - Mobicents SIP Servlets (20)

What_s_New_in_OpenShift_Container_Platform_4.6.pdf
What_s_New_in_OpenShift_Container_Platform_4.6.pdfWhat_s_New_in_OpenShift_Container_Platform_4.6.pdf
What_s_New_in_OpenShift_Container_Platform_4.6.pdf
Β 
From MSS to TelScale - Mobicents Summit 2011
From MSS to TelScale - Mobicents Summit 2011From MSS to TelScale - Mobicents Summit 2011
From MSS to TelScale - Mobicents Summit 2011
Β 
Java one2013
Java one2013Java one2013
Java one2013
Β 
Zephyr Introduction - Nordic Webinar - Sept. 24.pdf
Zephyr Introduction - Nordic Webinar - Sept. 24.pdfZephyr Introduction - Nordic Webinar - Sept. 24.pdf
Zephyr Introduction - Nordic Webinar - Sept. 24.pdf
Β 
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under LinuxPractical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Β 
Tungsten Fabric Overview
Tungsten Fabric OverviewTungsten Fabric Overview
Tungsten Fabric Overview
Β 
Summit 16: How to Compose a New OPNFV Solution Stack?
Summit 16: How to Compose a New OPNFV Solution Stack?Summit 16: How to Compose a New OPNFV Solution Stack?
Summit 16: How to Compose a New OPNFV Solution Stack?
Β 
Netty @Apple: Large Scale Deployment/Connectivity
Netty @Apple: Large Scale Deployment/ConnectivityNetty @Apple: Large Scale Deployment/Connectivity
Netty @Apple: Large Scale Deployment/Connectivity
Β 
2010-01-28 NSA Open Source User Group Meeting, Current & Future Linux on Syst...
2010-01-28 NSA Open Source User Group Meeting, Current & Future Linux on Syst...2010-01-28 NSA Open Source User Group Meeting, Current & Future Linux on Syst...
2010-01-28 NSA Open Source User Group Meeting, Current & Future Linux on Syst...
Β 
SDN and metrics from the SDOs
SDN and metrics from the SDOsSDN and metrics from the SDOs
SDN and metrics from the SDOs
Β 
WebRTC standards update - November 2014
WebRTC standards update - November 2014WebRTC standards update - November 2014
WebRTC standards update - November 2014
Β 
VozDigital DevFest 31/10/14
VozDigital DevFest 31/10/14VozDigital DevFest 31/10/14
VozDigital DevFest 31/10/14
Β 
Monitoring federation open stack infrastructure
Monitoring federation open stack infrastructureMonitoring federation open stack infrastructure
Monitoring federation open stack infrastructure
Β 
Software Stacks to enable SDN and NFV
Software Stacks to enable SDN and NFVSoftware Stacks to enable SDN and NFV
Software Stacks to enable SDN and NFV
Β 
Openshift serverless Solution
Openshift serverless SolutionOpenshift serverless Solution
Openshift serverless Solution
Β 
AGILE software, devices and wider ecosystem
AGILE software, devices and wider ecosystemAGILE software, devices and wider ecosystem
AGILE software, devices and wider ecosystem
Β 
Monkey Server
Monkey ServerMonkey Server
Monkey Server
Β 
Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications
Boost JBoss AS7 with HTML5 WebRTC for Real Time CommunicationsBoost JBoss AS7 with HTML5 WebRTC for Real Time Communications
Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications
Β 
Red hat NFV Roadmap - OpenStack Summit 2016/Red Hat NFV Mini Summit
Red hat NFV Roadmap    - OpenStack Summit 2016/Red Hat NFV Mini SummitRed hat NFV Roadmap    - OpenStack Summit 2016/Red Hat NFV Mini Summit
Red hat NFV Roadmap - OpenStack Summit 2016/Red Hat NFV Mini Summit
Β 
Network Security and Visibility through NetFlow
Network Security and Visibility through NetFlowNetwork Security and Visibility through NetFlow
Network Security and Visibility through NetFlow
Β 

More from telestax

Open Source Hangouts on WebRTC - WebRTC Workshop IMS World Forum
Open Source Hangouts on WebRTC - WebRTC Workshop IMS World ForumOpen Source Hangouts on WebRTC - WebRTC Workshop IMS World Forum
Open Source Hangouts on WebRTC - WebRTC Workshop IMS World Forum
telestax
Β 
Mobicents Summit 2012 - CTBC/Algar TeleCom - Simplifying CTBC's IVR System an...
Mobicents Summit 2012 - CTBC/Algar TeleCom - Simplifying CTBC's IVR System an...Mobicents Summit 2012 - CTBC/Algar TeleCom - Simplifying CTBC's IVR System an...
Mobicents Summit 2012 - CTBC/Algar TeleCom - Simplifying CTBC's IVR System an...
telestax
Β 
Mobicents Summit 2012 - Twilio Expanding internationally Challenges Solutions
Mobicents Summit 2012 - Twilio Expanding internationally Challenges SolutionsMobicents Summit 2012 - Twilio Expanding internationally Challenges Solutions
Mobicents Summit 2012 - Twilio Expanding internationally Challenges Solutions
telestax
Β 
Mobicents Summit 2012 - Jonas Borjesson - Introduction to Twilio
Mobicents Summit 2012 - Jonas Borjesson - Introduction to TwilioMobicents Summit 2012 - Jonas Borjesson - Introduction to Twilio
Mobicents Summit 2012 - Jonas Borjesson - Introduction to Twilio
telestax
Β 
Mobicents Summit 2012 - TeleStax Keynote
Mobicents Summit 2012 - TeleStax KeynoteMobicents Summit 2012 - TeleStax Keynote
Mobicents Summit 2012 - TeleStax Keynote
telestax
Β 
Mobicents Summit 2012 - Vladimir Ralev - Mobicents Load Balancer and High Ava...
Mobicents Summit 2012 - Vladimir Ralev - Mobicents Load Balancer and High Ava...Mobicents Summit 2012 - Vladimir Ralev - Mobicents Load Balancer and High Ava...
Mobicents Summit 2012 - Vladimir Ralev - Mobicents Load Balancer and High Ava...
telestax
Β 

More from telestax (20)

Api and fly! CPaaS Enablement: Combining Apps, Networks, and APIs
Api and fly! CPaaS Enablement:  Combining Apps, Networks, and APIsApi and fly! CPaaS Enablement:  Combining Apps, Networks, and APIs
Api and fly! CPaaS Enablement: Combining Apps, Networks, and APIs
Β 
RestComm Architecture Design
RestComm Architecture DesignRestComm Architecture Design
RestComm Architecture Design
Β 
RestComm Mobile Client SDKs
RestComm Mobile Client SDKsRestComm Mobile Client SDKs
RestComm Mobile Client SDKs
Β 
Location Based Services at Heterogeneous Networks
Location Based Services at Heterogeneous NetworksLocation Based Services at Heterogeneous Networks
Location Based Services at Heterogeneous Networks
Β 
Restcomm past and future
Restcomm past and futureRestcomm past and future
Restcomm past and future
Β 
Restcomm in an oauth environment
Restcomm in an oauth environmentRestcomm in an oauth environment
Restcomm in an oauth environment
Β 
Restconn 2015 products
Restconn 2015 productsRestconn 2015 products
Restconn 2015 products
Β 
Restconn 2015 products
Restconn 2015 productsRestconn 2015 products
Restconn 2015 products
Β 
New Opportunities for Real Time Communications - WebRTC Conference Japan - Fe...
New Opportunities for Real Time Communications - WebRTC Conference Japan - Fe...New Opportunities for Real Time Communications - WebRTC Conference Japan - Fe...
New Opportunities for Real Time Communications - WebRTC Conference Japan - Fe...
Β 
TeleStax - Convergence - uFone - AWCC - TADS 2014
TeleStax - Convergence - uFone - AWCC - TADS 2014TeleStax - Convergence - uFone - AWCC - TADS 2014
TeleStax - Convergence - uFone - AWCC - TADS 2014
Β 
New Business Opportunities created by the IoT Explosion - WebRTCSummit - San...
New Business Opportunities created by the IoT Explosion - WebRTCSummit  - San...New Business Opportunities created by the IoT Explosion - WebRTCSummit  - San...
New Business Opportunities created by the IoT Explosion - WebRTCSummit - San...
Β 
Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications
Boost JBoss AS7 with HTML5 WebRTC for Real Time CommunicationsBoost JBoss AS7 with HTML5 WebRTC for Real Time Communications
Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications
Β 
Restcomm in Telehealth - Web RTC Summit - November 2013 - Santa Clara, CA
Restcomm in Telehealth - Web RTC Summit - November 2013 - Santa Clara, CARestcomm in Telehealth - Web RTC Summit - November 2013 - Santa Clara, CA
Restcomm in Telehealth - Web RTC Summit - November 2013 - Santa Clara, CA
Β 
Tel scale ussd_gateway-vuc
Tel scale ussd_gateway-vucTel scale ussd_gateway-vuc
Tel scale ussd_gateway-vuc
Β 
Open Source Hangouts on WebRTC - WebRTC Workshop IMS World Forum
Open Source Hangouts on WebRTC - WebRTC Workshop IMS World ForumOpen Source Hangouts on WebRTC - WebRTC Workshop IMS World Forum
Open Source Hangouts on WebRTC - WebRTC Workshop IMS World Forum
Β 
Mobicents Summit 2012 - CTBC/Algar TeleCom - Simplifying CTBC's IVR System an...
Mobicents Summit 2012 - CTBC/Algar TeleCom - Simplifying CTBC's IVR System an...Mobicents Summit 2012 - CTBC/Algar TeleCom - Simplifying CTBC's IVR System an...
Mobicents Summit 2012 - CTBC/Algar TeleCom - Simplifying CTBC's IVR System an...
Β 
Mobicents Summit 2012 - Twilio Expanding internationally Challenges Solutions
Mobicents Summit 2012 - Twilio Expanding internationally Challenges SolutionsMobicents Summit 2012 - Twilio Expanding internationally Challenges Solutions
Mobicents Summit 2012 - Twilio Expanding internationally Challenges Solutions
Β 
Mobicents Summit 2012 - Jonas Borjesson - Introduction to Twilio
Mobicents Summit 2012 - Jonas Borjesson - Introduction to TwilioMobicents Summit 2012 - Jonas Borjesson - Introduction to Twilio
Mobicents Summit 2012 - Jonas Borjesson - Introduction to Twilio
Β 
Mobicents Summit 2012 - TeleStax Keynote
Mobicents Summit 2012 - TeleStax KeynoteMobicents Summit 2012 - TeleStax Keynote
Mobicents Summit 2012 - TeleStax Keynote
Β 
Mobicents Summit 2012 - Vladimir Ralev - Mobicents Load Balancer and High Ava...
Mobicents Summit 2012 - Vladimir Ralev - Mobicents Load Balancer and High Ava...Mobicents Summit 2012 - Vladimir Ralev - Mobicents Load Balancer and High Ava...
Mobicents Summit 2012 - Vladimir Ralev - Mobicents Load Balancer and High Ava...
Β 

Recently uploaded

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
Β 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
Β 

Recently uploaded (20)

ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
Β 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
Β 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Β 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
Β 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
Β 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
Β 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
Β 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
Β 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
Β 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
Β 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Β 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
Β 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
Β 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
Β 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
Β 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Β 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Β 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
Β 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
Β 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
Β 

Mobicents Summit 2012 - Jean Deruelle - Mobicents SIP Servlets

  • 1. Mobicents SIP Servlets http://dev.telestax.com/sipservlets/ Mobicents Summit, Rio, October 2012
  • 2. Agenda ● MSS Achievements ● Community ● Introducing Mobicents SIP Servlets 2.0 ● Roadmaps
  • 4. More RFCs Support ● RFC 5626 - Managing Client-Initiated Connections in the Session Initiation Protocol Also known as SIP Outbound : Defines a keep-alive mechanism used to keep NAT bindings fresh, and to allow the UA to detect when a flow has failed. β—‹ Allow for KeepAlives to keep the NAT pinholes open https://mobicents.ci.cloudbees. com/job/Mobicents-SipServlets-Release/lastSuccessfulBuild/artifact/documentation/jsr289-extensions- apidocs/org/mobicents/servlet/sip/SipConnector.html#setKeepAliveTimeout(java.lang.String, int, long) which Allow to set/reset the RFC5626 Section 4.4.1 keeplive on a given TCP/TLS/SCTP connection to a given remote host and port and https://mobicents.ci.cloudbees.com/job/Mobicents-SipServlets- Release/lastSuccessfulBuild/artifact/documentation/jsr289-extensions- apidocs/org/mobicents/servlet/sip/listener/SipConnectorListener.html#onKeepAliveTimeout(org.mobicents.servlet. sip.SipConnector, java.lang.String, int) which if a RFC 5626 KeepAlive timeout has fired, gives the connector on which it happened and the peer information involved. β—‹ Support for Flow Tokens (A Flow is a transport-layer association between two hosts that is represented by the network address and port number of both ends and by the transport protocol. For TCP, a flow is equivalent to a TCP connection) to be matched to connections so that in dialog requests uses the correct IP and Port for reaching SIP UAs behind NAT ● RFC 4916 - Connected Identity in the Session Initiation Protocol : Allow for From and To Header Modification within a dialog as per Section 4.1.2 of JSR 289
  • 5. Congestion Control ● Present at the SIP Stack level through a Valve before it gets to the TU, access to low level details from the SIP Stack, pluggable mechanism ● Congestion Control at the Container level, based on Memory Usage (CPU and Session based control to be added) => Now Allow Notifications to be popped up at the container level ContainerListener void onCongestionControlStarted(CongestionControlEvent event) As soon as congestion starts in the underlying source, it calls this method to notify about it. void onCongestionControlStopped(CongestionControlEvent event) As soon as congestion abates in the underlying source, it calls this method to notify about it. javax.servlet.sip.SipServletResponse onRequestThrottled(javax.servlet.sip. SipServletRequest request, CongestionControlEvent event) When a request that comes in is not passed up to the application because of congestion control. Allow to modify the default response to add headers to it.
  • 6. SIP Servlets Testing ● Released Arquillian Integration ALPHA 1 to create a standard test framework for testing SIP Servlets applications (See Georges' Presentation). ● Took over Leadership of SipUnit under Mobicents Umbrella in agreement with CafeSip team
  • 7. JAIN SIP NIO Support ● Blocking IO is limiting the number of concurrent connections to the server as each connection is creating 2 threads thus reaching pretty fast the OS limits of max threads. ● NIO Support allows to solve that issue and process a larger amount of concurrent connections capped only by the processing power of the hardware (RAM, CPU) ● NIO only supported for TCP/TLS no UDP Support for NIO. ● Allowed the JAIN SIP Stack to reach 5000 registrations & calls TCP or TLS (10K concurrent connections). Tests done by a customer on a 2 GB RAM - 32 bits OS.
  • 8. JAIN SIP NIO Architecture
  • 10. General ● More than 150 bug fixes scattered over MSS, SIP LB, JAIN SIP, JAIN SIP HA, JAIN SIP Ext, Cluster ● More Extensions to JSR 289 ● Member of JSR 359 - SIP Servlets 2.0 Expert Group
  • 11. Member of JSR 359 - SIP Servlets 2.0 EG JSR is open and public, anyone can chime in. Current items being discussed or that wil be discussed ● SIP Outbound (RFC5626) Extension ● WebRTC / SIP Over WebSockets Integration ● IMS Extensions : β—‹ 3GPP TS24.229 V10.2.0 Section 5.2.8.1.2 : support Termination of Session from Proxy ● Proxy 1xx Timeout ● SIP Session Timers (RFC4028) ● Interworking of SIP Servlets with other protocols. ● Concurrency issues and Threading Model ● Java EE7/CDI Integration Brainstorm
  • 12. SIP Servlets CDI ● Released CDI Telco Framework ALPHA 1 : CDI Integration with SIP Servlets with the end goal to feed it back to SIP Servlet 2.0 spec
  • 13. SIP Servlets CDI public class SimpleSipServlet { @Inject private SipFactory sipFactory; protected void handleInvite(@Observes @Invite SipServletRequest req){ ... } protected void handleSuccessResponse(@Observes @SuccessResponse SipServletResponse resp) {....} } ● Loose coupling with strong typing ● Reusable components ● Enhanced event notifications mechanism ● Out of the box integration with the rest of the Java EE ecosystem
  • 14. Container Abstraction Layer ● Internal API for Plugging MSS into any type of container ● Containers Supported for Tomcat 6, Tomcat 7, JBoss AS5, JBoss AS7 ● Can support more containers such as Jetty, contributions are welcomed !
  • 15. MSS 2.0.0.Final ! ● SIP Over WebSockets (See other Presentations + Demo from Vladimir and Francois-Joseph from Orange Labs) ● NIO Support ● Support for JBoss AS 7 in standalone mode : β—‹ TCK Certified β—‹ AS7 Management Integration through SIP Subsystem β—‹ Fast Startup Time and Low Mem Footprint (Comparable to Tomcat but for a full JEE Container) ● Missing Features planned for 2.X versions β—‹ Failover - Replication β—‹ SNMP
  • 16. Mobicents HTML 5 WebRTC Client Sneak Peek
  • 18. Git and CloudBees migration ● Rebranded the project to TeleStax leadership ● Moved the project to Git and independent google code project. Ported the Code + some of the Documentation to Wiki ● Moved the CI infra to CloudBees, allow external contributors to start CI jobs and reduce overhead.
  • 20. Contributions ● Jose M Recio from Solaiemes : AS7 support ● Laurent Strullu, FranΓ§ois-Joseph LevΓ©e, Camille Oudot from Orange Labs : JAIN SIP JS + bug fixes. ● Jonas Borjesson from Twilio : RFC 5626 Flow ob parameter Support + TLS Documentation ● Georges Vagenas : Leading CDI Telco Framework and Sip Servlets Testing with Arquillian and SipUnit + Helping on RestComm ● Thomas Quintana : Leading RestComm ● Alex Vinogradov and Alex Saveliev from Codeminders; commissioned by Avistar Communications Corp : bug fixes + testing
  • 21. Downloads ● 5200 downloads on cumulated versions since last Summit (source http://sourceforge.net/projects/mobicents/files/Mobicents%20Sip%20Servlets/stats/timeline? dates=2011-12-02+to+2012-10-04)
  • 22. International Events Presence ● Fosdem 2012 (Belgium) : Global Platform Presentation ● Mobile World Congress 2012 ● CommunicAsia 2012
  • 23. ShortComings ● Too few community releases : One 1.X FINAL release, One 2.X FINAL release ● Late on schedule : due to migration of projects to TeleStax and git + setting up the TelScale Product Line. Also moved to major version which implied more work.
  • 25. Mobicents SIP Servlets 2.X Roadmap ● HA for JBoss AS7 ● Improvement to WebRTC Client ● SNMP for JBoss AS7 ● Auto Scaling ● Rolling Upgrades ● More RFCs Support ● Better Support for NAT (ICE - TURN) ● Regular Business of bug fixing and contributions.
  • 26. Mobicents SIP Servlets 3.X Roadmap ● SIP Servlets 2.0 Non Backward Compatible Work ● Will be started early 2013 in parallel with 2.X branch
  • 27. Thank you ! http://telestax.com/ confidential