Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
JAIN Java Call Control (JCC) and Java Coordination and Transactions (JCAT) Ravi Jain, John-Luc Bakker, and Farooq Anjum July 23, 2001 {rjain, jbakker, fanjum}@telcordia.com © 2001, Telcordia Technologies, Inc. An SAIC Company Overview Introduction JCAT Mapping JCC to SIP Conclusion Jain/Bakker – 2 JAIN “Religious Diagram” Java Service Creation Environment (JSCE) Untrusted third-party applications Trusted third-party applications JAIN SPA Security Interface Secure Network Space Java Service Logic Execution Environment (JSLEE) API Java Call Control (JCC) & Java Coordination and Transactions (JCAT) TCAP IP Broadband ISUP INAP Wireless SIP etc PSTN Satellit e Applications Protocols Jain/Bakker – 3 Call Control alignment process ETSI SPAN 12 3GPP OSA Joint work on parts 1-12 of ETSI ES 120070 & Doc. 120075 JAIN JCC/SPA Parlay APIs 120070 = API for Open Service Access 120075 = API Mapping for Open Service Access Jain/Bakker – 4 Parlay/3GPP/ETSI/JAIN call control timeline Jan 01 3GPP, OSA Mar 01 May 01 Release 4, v. 1.0.0† Release 4, v. 4.0.0‡ July 01 ~Oct 01 ~Mar 02 Rel. 4, Release 5 v. 4.0.x Parlay, APIs Parlay 3.0 Parlay 3.1 ETSI, SPAN 12 Version 1 Version 2 JCC 1.0 JAIN JCC 1.1 JCAT JCC/JCAT † ‡ The specification is not under change control: version 1.0.x. Release 4 contains GCCS and MPCCS. The specification is under “change control”: version 4.0.0. In Sep/Oct 3GPP plenary will likely approve final version 4.0.x Jain/Bakker – 5 Fun Facts About JCC JCC 1.0 Reference Implementation (RI) and Test Compatibility Kit (TCK) are available for free download at Telcordia site: http://www.argreenhouse.com/JAINRefCode/ JCC 1.0 API (First Public Release) available at SUN site JCC implementation discussion list: http://groups.yahoo.com/group/jainjcc Telcordia AR Mini Call Agent prototype passes the TCK JCC is a simplified version of Parlay’s MPCCS. JCC aligns with JTAPI and Parlay MPCCS. JCC is protocol agnostic. JCC is out there and available! Jain/Bakker – 6 Call control inheritance and alphabet soup Proposed CCS GCCS MPCCS CCCS MMCCS JCP JCC 1.1 JCCCS JMMCCS Parlay/ETSI JAIN JCAT JTAPI JTAPI 1.4 Core CCS = Call Control Service GCCS = Generic CCS MPCCS = Multi-Party CCS CCCS = Conferencing CCS MMCCS = Multi-Media CCS JCP = Java Call Processing JCC = Java Call Control JCAT = Java Coordination & Transactions JTAPI = Java Telephony API Jain/Bakker – 7 JAIN JCAT Requirements JCAT – A rich call model to address the concerns of the JAIN community and still have alignment with Parlay and JTAPI – Addresses end-office (Class 5, local exchange) environment – Explicitly models terminals unlike JCC and Parlay Support first-party as well as third-party calls JCAT Expert Group Spec Lead (Telcordia) is obligated to release: – API Specification document Rigorously defined: Pre and post-conditions, FSM, use Java patterns – Reference Implementation (RI) – Test Compatibility Kit (TCK) Jain/Bakker – 8 Object Inheritance diagram JCC 1.1 is based on Parlay 3.0 MPCCS alignment Java Call Processing (JCP) Java Call Control (JCC) JTAPI Core JTAPI Extensions Java Coordination & Transactions (JCAT) Parlay Extensions Jain/Bakker – 9 Basic JCAT approach JAIN and Parlay Terminology Map: Provider Listener Provider = Call Control Manager Connection = Call Leg Call Listener Connection Listener Application Synchronous method calls JCAT API Provider Call Connection Java Events Network Connection Jain/Bakker – 10 JCAT Objects Provi der Call Connecti on Connecti on Ter mi nal Connecti on Ter mi nal Connecti on Address Ter mi nal Address Ter mi nal Jain/Bakker – 11 Mapping a Call Control API to a Signaling Protocol Application JCC API JCC Implementation Network Adapter SIP User Agent/ Proxy IP Network Other SIP Client/Proxy Jain/Bakker – 12 “Canonical” SIP call setup SIP Registrar 1. Register 1. Register User Agent A 2a. Invite(B, codecs) 3. Trying 4b. Ringing 5b. OK(codec) 6a. ACK 2b. Invite(B, codecs) SIPenabled network 4a. Ringing 5a. OK(codec) 6b. ACK User Agent B Jain/Bakker – 13 Application Provider createCall() Con-A Con-B Call SIP Party A SIP Party B new() Idle routeCall(B,A,-,-) new() Idle Active Call Delivery new() Idle Call Delivery INVITE(B,A) TRYING RINGING Alerting OK Connected Connected ACK Jain/Bakker – 14 Conclusions Open APIs are here! Call Control APIs and network signaling protocols like SIP are complementary, not competing “The JAIN and Parlay sets of APIs are among the first to emerge that hold the promise of this simplified, collaborative development environment. … While these initiatives compete with each other in some respects, they are also complementary, with each API incorporating elements of the others. Most emerging vendors will support at least JAIN and Parlay …” - Yankee Group, 9/2000 Jain/Bakker – 15 Acronym List AIN - Advanced Intelligent Network APIs - Application Programming Interfaces CAP - CAMEL Application Part CORBA - Common Object Request Broker Architecture CS - Capability Set ETSI - European Telecommunications Standards Institute IDE - Integrated Development Environment IDL - Interface Definition Language IIOP - Internet Inter-ORB Protocol INAP - Intelligent Network Application Protocol IT - Information Technology JAINTM - Java APIs for Integrated Networks JCAT - Java Coordination and Transactions JCC - Java Call Control JSLEE - Java Service Logic Execution Environment MAP - Mobile Application Part MGCP - Media Gateway Control Protocol ORB - Object Request Broker OSA - Open Services Architecture OSS - Operations Support Systems PAM - Presence and Availability Management SCE - Service Creation Environment SIP - Session Initiation Protocol TCP/IP - Transaction Control Protocol/Internet Protocol WIN - Wireless Intelligent Network UML - Universal Machine Language XML - eXtensible Markup Language 3GPP - 3G Partnership Program Jain/Bakker – 16 Background Slides Jain/Bakker – 17 JAIN organization JAIN Executive Committee (Multiple companies) JAIN Program Management (Sun) Protocol expert group Applications expert group MGCP (Telcordia) Java Call Control (JCC/JCAT) (Telcordia) TCAP (AePONA) ISUP (AePONA) Service Creation (Telcordia / TBD) MAP (Ericsson) Service Logic Execution (Motorola) SIP (Dynamicsoft) OA&M (Sun/AePONA) Service Provider API (SPA) (Sun / BT) H.323 (Radvision) INAP (Mahindara BT) = Led by Telcordia = Telcordia participation Policy Managment (Lucent/Cisco) Jain/Bakker – 18 JAIN APIs timeline 2000 2001 Remaining SPA SCE H.323 Megaco Q2+ SPA Mobility ISUP INAP MAP SLEE Application APIs Q1 SPA (Parlay) MGCP SIP Q4 JCC Q3 OAM TCAP Protocol APIs = Led by Telcordia = Telcordia participation Jain/Bakker – 19