JBoss.orgCommunity Documentation

Chapter 1. Introduction to the SIP Servlets Server

1.1. High-Availability: SIP Servlets Server Load Balancing, Clustering and Failover
1.2. Working with the SIP Servlets Management Console

Mobicents SIP (Session Initiation Protocol) Servlets deliver a consistent, open platform on which to develop and deploy portable and distributed SIP and Java Enterprise Edition services. The Mobicents SIP Servlets Server is a certified implementation of the SIP Servlet v1.1 (JSR 289) specification that can run on top of either the JBoss Application Server or the Tomcat Servlet Container.

Mobicents SIP Servlets for JBoss (MSS for JBoss) strives to develop interoperability standards between SIP Servlets and the Java Service Logic Execution Environment (JSLEE) so that applications can exploit the strengths of both. The JAIN-SIP Reference Implementation is leveraged as the SIP stack, and the Mobicents JAIN SLEE Server is used as the SLEE implementation.

Features of the Mobicents SIP Servlets Server

  • the first certified SIP Servlet v1.1 (JSR 289) implementation

  • a current call rate of 100 calls per second over a 24-hour duration: 8,640,000 total calls

  • load balancing, cluster and failover support

  • merged SIP and HTTP session management

  • a browser-based Management Console

  • a bundled JSLEE/SIP interoperability demonstration application for MSS for JBoss

  • Mobicents Media Server

  • extensions such as SUBSCRIBE/NOTIFY, among others

Telecommunications applications demand High-Availability (HA), fault tolerance, scalability and performance. Providing highly-available end-user applications that are tolerant of faults is commonly achieved through the use of clustering technologies.

Clustering is a complex subject that is often used to collectively address a variety of techniques aimed at improving the high-availability and scalability of services and applications. Such techniques include distributed state replication, load balancing, and failover capabilities. The usage of any one of these techniques improves either reliability or performance, but for the sake of the other. It requires careful analysis of real-world scenarios to arrive at an architecture which represents the optimal balance of performance and reliability.

Based on experience with production deployments and extensive feedback from the Open Source community, Mobicents HA has undergone several iterations of refinement. In its current incarnation, the architecture can be described as a "star topology" with symmetric application servers and a smart, lightweight load-balancing element with built-in failover logic. The amount of state replication is kept to a minimum for maximum scalability with sufficiently-high reliability.

Clustering Terms and Definitions for Mobicents SIP Servlets

For purposes of clarity, the SIP Servlets High-Availability sections use terms—such as cluster—with meanings specific to the context of Mobicents SIP Servlets. Therefore, the following definitions are provided to clarify more precisely what is meant by the terms cluster, node, SIP Servlets Server and so on, in the subsequent sections, and in the context of Mobicents High-Availability.

Once installed, the MSS for JBoss or MSS for Tomcat instance can be accessed and configured using the SIP Servlets Management Console. The management console is available at http://localhost:8080/sip-servlets-management/.

Information on how to use the SIP Servlets Management Console is available from the Help link on the top main menu bar. Clicking Help displays a Default Application Router Help pop-up which can be repositioned and resized by dragging.

Recent versions of the SIP Servlets Management Console feature a Server Settings tab, in which concurrency and congestion control settings can be tuned.

For more information on concurrency and congestion control tuning, refer to Configuring the Concurrency and Congestion Control Settings.