280 likes | 475 Views
Empowering SIP Applications with J2EE Technology. Marcelo Oliveira & Sudhrity Mondal Principal Architects, BEA Systems. Agenda. VoIP Landscape SIP with J2EE Use Case: Audio/Video conferencing application. AS. HSS. SIP. DIAMETER. HTTP. Sh. ISC. Cx. Cx. S-CSCF. I-CSCF. Mw. Ut. Mw.
E N D
Empowering SIP Applications with J2EE Technology Marcelo Oliveira & Sudhrity Mondal Principal Architects, BEA Systems
Agenda • VoIP Landscape • SIP with J2EE • Use Case: Audio/Video conferencing application
AS HSS SIP DIAMETER HTTP Sh ISC Cx Cx S-CSCF I-CSCF Mw Ut Mw Mi Mi BGCF Mw Mg Mr Mj MGCF MGCF UE P-CSCF MRCF Gm IMS • IP Multimedia Subsystems • Next generation mobile specification • SIP as the signaling protocol • Driver for Fixed / Mobile / IP Convergence • Cutting edge services • Increase ARPU • Telephony applications and services look more like HTTP applications
Signaling (SIP) Media Gateway Control Media (RTP) VoIP Overview Signaling plane • SIP Application Servers • Session Setup • Session Management • Session teardown Media Plane • Media Servers • Control and processing of real-time multimedia data Application Server Endpoint Media Server
SIP • Session Initiation Protocol • Base Protocol IETF RFC 3261 • Leading Signaling Protocol for VoIP development • Create, Modify and Teardown Multimedia Sessions • Mobility • Event Subscription / Notification • Presence • IM
Media Servers • Essential to Multimedia Applications • Controlled via Media Gateway Control Protocols • Mature Standards: • MGCP • MEGACO [H.248] • Standardized as IMS Media Gateway Control Protocol • Recently Introduced: • MSCML • MSML/MOML
MSCML Overview • “Media Server Control Markup Language” • XML based • Transported over SIP messages • INVITE transactions • INFO transactions • APIs: • Create / Terminate Conference • Add / Remove Conference Participant • Modify Conference Leg • Play / Record Announcement • Collect DTMF Digits • etc
VoIP Applications • VoIP enables an extensive new set of applications and revolutionaizes some of the traditional services like: • Softswitches • Voice Mail • Push to Talk • Voice and Video Conferencing • Application Sharing • IVR • etc
Multipoint Controller Multipoint Controller Multipoint Controller SIP / HTTP Load Balancer SIP / HTTP Load Balancer SIP HTTP Media Processor Media Processor Media Processor Media Processor Media Processor Web Server Web Server Web Server HTTP SIP Proprietary Web Browser Web Browser Web Browser Web Browser User Agent User Agent User Agent User Agent MGCP / MEGACO Challenges on SIP App Development • SIP and MEGACO / MGCP Stacks • Build • High Development Cost • High Maintenance Cost • Buy • Vendor Specific Interfaces • Complex Integration • Maintenance
Challenges on SIP App Development • Application Platform • C/C++ Intrinsic Platform Dependency • HW / OS platforms • Development Environment • OS abstraction layer • Build • High Development Cost • High Maintenance Cost • Buy • Cost • Vendor Specific Interfaces • Complex Integration • Limited OS Support
Multipoint Controller Multipoint Controller Multipoint Controller SIP / HTTP Load Balancer SIP / HTTP Load Balancer SIP HTTP Media Processor Media Processor Media Processor Media Processor Media Processor Web Server Web Server Web Server HTTP SIP Proprietary Web Browser Web Browser Web Browser User Agent User Agent User Agent User Agent Web Browser MGCP / MEGACO Challenges on SIP App Development • User & Management Interfaces • Complex Integration with Application • Application Scalability • Architecture • Testing • Application Fault Tolerance • Architecture • Testing
Challenges on SIP App Development • Integration with other applications • Databases • Web Services • Enterprise Information Systems • Reusability • No resources to create reusable components • New Application Same Challenges
Agenda • VoIP Landscape • SIP with J2EE • Use Case: Audio/Video conferencing
What does J2EE provide for VoIP? • JSR 116 – SIP Servlet container • J2EE Framework • Web-tier : Servlets, JSP • Infrastructure : JDBC, JNDI, JMS, JTA, JTS, JAAS, Mail, JMX • Business-tier : JavaBeans, EJB • Integration : RMI, JRMP, IIOP, J2EE-CA, Web Services • J2EE Application servers • Clustering, Replication, High Availability, Failover • Integrated Security, Management • Platform independence • Enhanced development and deployment tools • Technologies around J2EE (Struts, JSF, Spring, …)
Fixed Phone Media Gateway CSR Soft Phone CSR Desktop Management Console Web Application IP PSTN IP Mobile 2G/3G Phone CRM Billing VoIP using J2EE Network Resources not standalone apps ACD Voicemail CTI IVR/Speech Quality Monitoring IP Network SIP (JSR 116) J2EE Platform JSP JMS JTS JNDI JAAS EJB JCA IIOP JMX JDBC Order Mgmt Customer Data Mart Trouble Ticketing Applications
JAVA Solutions for VoIP • SIP Application Servers • BEA WebLogic SIP Server • Ubiquity • IBM WAS • Oracle SDP • SIP Java Toolkits • JAIN SIP • Radvision • SIP Development Environments/Applications • Eclipse • WebLogic Workshop • WebSphere WSAD • Pactolus • www.sipcenter.com
J2EE Advantages • Fusion of cutting edge communications technology and proven enterprise reliability • Simplified SIP handling using SIP Servlets • Natural convergence of web-tier with business tier • Standards based infrastructure • Easy integration with back-end applications • XML Automation • Support for Workflow • Support for heterogeneous environments • Availability of tools and solutions around J2EE • Cost of development, deployment and maintenance
Multipoint Controller Multipoint Controller Multipoint Controller Conferencing Application Conferencing Application Conferencing Application SIP / HTTP Load Balancer SIP / HTTP Load Balancer Generic Load Balancer Generic Load Balancer SIP HTTP SIP Media Processor Media Processor Media Processor Media Processor Media Processor Media Processor Media Processor Media Processor Media Processor Media Processor HTTP Web Server Web Server Web Server HTTP SIP HTTP SIP Proprietary Web Browser Web Browser Web Browser User Agent User Agent User Agent Web Browser Web Browser Web Browser User Agent User Agent User Agent User Agent Web Browser User Agent Web Browser SIP MGCP / MEGACO J2EE SIP Application Enablement J2EE Enablement
SOA for VoIP Services • Expose SIP servlet features as generic, re-useable web services • Create composite services by orchestrating low level granular SIP features • Expose services to Enterprise Service Bus • Implement complex VoIP applications using composite services • Quick turnaround from concept to deployment of services
Modularization & Extensibility using SOA • Java web services can be used to modularize SIP features • Web service modules are re-useable and generic • VoIP applications can be extended easily using service orchestration – by adding additional services
Service Creation & Orch. BPM EAI Broker Content Portal Personal J2EE Application Servers Telephony Messaging Video OA&M Policy Partner Management Access Control SIP HTTP Network Adapters SIP Servlets EJB’s HTTP Servlets SOA for VoIP Services IT Network Enterprise Service Bus Core Network Web Service Access J2EE Application Server Billing
Agenda • VoIP Landscape • SIP with J2EE • Use Case: Audio/Video conferencing
Use case: Audio/Video Conferencing • Service provider offers conferencing service • Conference host schedules a conference with conferees • Conferees get notified of conference via e-mail or SMS, accepts/denies participation • Host and conferees receive call at time of conference • Conferees enter PIN, record name to join the conference • Conferees switches video on/off • Host Manages Conference • Extend/Terminate Conference • Remove Conferees • Mute / Unmute Conferees
Use case: Architecture • To be added
Use case: Message Flow • To be added
References • To be added