This chapter introduces the Oracle Communications Converged Application Server.
Before continuing, you should familiarize yourself with the Internet Engineering Task Force (IETF) standards listed in Table 1-1.
Table 1-1 SIP and SDP Standards
Protocol | Description | URL |
---|---|---|
Session Initiation Protocol (SIP) |
From the IETF document, "[SIP is} an application-layer control (signaling) protocol for creating, modifying, and terminating sessions with one or more participants. These sessions include Internet telephone calls, multimedia distribution, and multimedia conferences." |
|
Session Description Protocol (SDP) |
From the IETF document, "SDP is intended for describing multimedia sessions for the purposes of session announcement, session invitation, and other forms of multimedia session initiation." |
Converged Application Server is a carrier-class Java Platform, Enterprise Edition (Java EE) application server that has been extended with support for the SIP and a number of operational enhancements that allow it to meet the demanding requirements of next-generation Internet Protocol-based communications networks. The Converged Application Server implementation is based on Oracle's widely deployed and time-tested Java EE-compliant WebLogic Server product.
In a typical IP Multimedia Subsystem (IMS) deployment, Converged Application Server fills the role of the IMS SIP Application Server. Figure 1-1 shows the Converged Application Server in the context of the functional architecture for the provision of service in the IMS, as specified by 3GPP TS 23.002, "Network Architecture."
Converged Application Server supports all of the standard Oracle WebLogic Server programming interfaces and facilities, such as Java Transaction API (JTA), Java Activation Framework (JAF), Java Message Service (JMS), Java Naming and Directory Interface (JNDI), Java Database Connectivity (JDBC), and Enterprise JavaBeans (EJB). Converged Application Server also supports the protocols typically associated with a standards-compliant Java EE application server, including Remote Method Invocation (RMI) over Internet Inter-Orb Protocol (IIOP), HTTP 1.1, Lightweight Directory Access Protocol (LDAP), Simple Mail Transfer Protocol (SMTP), Post Office Protocol (POP), Internet Message Access Protocol (IMAP), and SNMPv2.
Converged Application Server then builds upon the base Java EE programming model by integrating a SIP Servlet Container that is compliant with the JSR-359 SIP Servlet API specification. This ”converged” container provides an execution environment for applications containing both HTTP and SIP protocol handling components, as well as other protocols such as Diameter.
The ”SIP Stack” of Converged Application Server is fully integrated into the SIP Servlet container and is substantially more powerful and easier to use than a traditional protocol stack.
As shown in Figure 1-2, Converged Application Server combines the SIP Servlet container with EJB and HTTP Servlet containers, supporting application convergence through session context sharing.
The SIP Servlet API defines a higher layer of abstraction than simple protocol stacks provide and frees the developer from concern for the mechanics of the SIP protocol itself. Specifically, the API handles the syntactic validation of received requests, transaction layer timers, generation of non-application-related responses, generation of fully-formed SIP requests from request objects (which involves correct preparation of system headers and generation of syntactically correct SIP messages), and lower-layer transport protocols (such as TCP, UDP or SCTP).
The Servlet container distributes request and response objects to components in a structured way, maintains awareness of the state of the larger, converged SIP and HTTP application session, and manages the end-to-end object lifecycle, including resource, transaction, and session state management. The converged SIP and HTTP container thereby frees the developer from much work (and opportunity for error) and allows deployed applications to inherit the high-availability, performance, and operational features provided by the robust Converged Application Server container implementation.
The SIP Servlet API greatly simplifies the task of implementing SIP User Agents, Proxies and Back-to-Back-User-Agents, and it narrows the developers exposure to operational concerns such as resource management, reliability, manageability and interaction between services. (See "Developing Applications for Converged Application Server" for more information.)
Converged Application Server incorporates a number of architectural features that allow for its deployment as a highly-available, fault tolerant cluster.
Engines processes all signaling traffic and replicates transaction and session state between all engines in a cluster. This clustering capability, combined with a third-party load balancer, transparently provides services with Telco-grade availability, scalability, and fault tolerance (session retention), ensuring that ongoing sessions are not affected by the failure of individual cluster members since a production deployment of Converged Application Server has no single point of failure.
Converged Application Server provides several tools and mechanisms for administration and configuration which include:
Administration Console: Converged Application Server provides an extensive Web-based GUI that supports all configuration management, including deployment of applications, configuration of connectivity, and other common tasks. This interface offers secure, role-based administration of servers from any terminal that has access to the Administration Server and supports a standard HTML Web browser.
Java Management Extensions (JMX): Converged Application Server interoperates with standard network element management systems via JMX. Many common network management suites support JMX natively, which is the standard management technology for Java applications.
Simple Network Management Protocol (SNMP): Converged Application Server interoperates with standard network element management systems via use of SNMP, V2. The Converged Application Server SNMP MIB complies with MIB II. Converged Application Server also enables developers to send SNMP traps from within application code, as described in "Generating SNMP Traps from Application Code" in Oracle Communications Converged Application Server Developer's Guide.
Converged Application Server also uses the SNMP features available in Oracle WebLogic Server, such as SNMP proxying. See Monitoring Oracle WebLogic Server with SNMP for more information.
WebLogic Scripting Tool (WLST): Converged Application Server provides a Command Line Interface (CLI) using WLST for manual runtime configuration from any network terminal with secure access to the Administration Server. See Understanding the WebLogic Scripting Tool for more information.
The Converged Application Server Web Administration Console is used for the following tasks:
Configuring application container and related resource properties
Configuring security
Deploying applications or components
Monitoring resource usage
Configure debug logging for the servers in the domain
Displaying log messages
Starting and stopping servers
In addition to providing access to the configuration for the implementation, the Converged Application Server Administration console serves as a monitoring and troubleshooting interface. It provides a convenient interface for observing system-wide usage metrics, including SIP traffic activity. For more information, see "Converged Application Server Monitoring and Overload Protection" in Converged Application Server Administrator's Guide.