JSRs: Java Specification Requests
JSR 11: JAINTM TCAP Specification
Section 1: Identification
Phone: +1 609 231-5790
This JSR is being submitted and endorsed by the following Java Community Process Participants:
Section 2: Request
This JSR is to develop the Java for the (Advanced) Intelligent Network (JAIN) Transaction Capability Application Part (TCAP) Specification. It will describe the Java standard API for transaction processing in the Telecommunications Industry.
2.1 What is TCAP?
TCAP adds transaction based functionality to the Public Switch Telephone Network (PSTN). TCAP is defined within the Signaling System 7 (SS7) specifications as a communications protocol that maintains dialogue processing, activates remote processes or features, and transfers switched based information from one telephony application to another. TCAP applications handle numerous processing within the PSTN such as 800 or free phone processing, 911 emergancy service, call forwarding, call waiting, etc.
2.2 Target Java Platform
The JAIN TCAP Specification is targeted towards Central Office switching environments, mobile telephony networks, and telephony over Internet Protocol networks. This will typically be NEBS Certified equipment or servers that support SS7 or Signaling environments.
2.3 Needs of Java Community this Specification Addresses
The JAIN TCAP specification defines an API which allows for the rapid creation and deployment of dynamic telephony services into a Java telephony platform. Standard Telephony applications require costly resources to develop, test, and deploy. A JAIN TCAP component can be rapidly developed, tested, and integrated on a variety of platforms with access to numerous tools and utilities. A JAIN cross-platform solution gives the Carriers, Service Providers, and Network Equipment Providers a consistent, open environment where they can develop and deploy telephony services.
2.4 The API being defined.
The API specified by the JAIN SS7 Java Community Process Participants for TCAP are based on the ANSI'92, ANSI'96, ITU'93, and ITU'97 TCAP specifications. Instead of mapping the standard specifications to a Java interface, the JAIN TCAP specification abstracts a functional definition into the variant protocol stacks.
The JAIN TCAP API is built upon the Java Beans Event model. The protocol stack vendor supplies the JAIN TCAP 'provider' interface into the protocol stack. JAIN TCAP 'listeners' may readily be rolled onto the platform by an object manager.
Proprietary stack features are hidden behind a JAIN TCAP Factory. Through JAIN TCAP interfaces, a protocol stack provider is obtained from the factory, and JAIN TCAP listeners are then attached to the providers.
2.5 Underlying technologies
The JAIN TCAP specification is based upon the underlying SS7 protocol stacks supplied by the JAIN JSPA members and other 3rd party protocol stack implementations. While JAIN TCAP adapts well to other protocols such as TCP/IP, 1129+, or SIP, its initial purpose is to provide a ubiquitous, standard Java interface into SS7 protocol stacks.
A JAIN TCAP application can be written as a program, applet, servlet, or bean. The Java bean makes for an ideal telephony component for rapid dynamic service integration. The Telecom industry has defined telephony services built by integrating components in a Service Creation Environment (SCE). The service is then loaded onto a Service Logic Execution Environments (SLEE) where they receive incoming calls and perform the service logic.
Telephony components are analogous to objects or Java Beans. A Service Logic Execution Environments may be built within a Java Virtual Maching using Java Bean technology. The SLEE requires Java Beans and a Java Bean Management tool. Service Creation Environments may be built using Java visual tools such as Java Studio, or Visual Cafe.
While there is no dependancy on such tools to build a JAIN TCAP compont, a Java Bean Manager and/or a visual Java bean builder aids in the development, integration, testing, and deployment of telephony services.
2.6 Proposed package namesPackage names being considered are:
2.7 Possible platform dependencies
The Reference Implementation will have a dependency on RMI.
2.8 Security implications
None. JAIN TCAP expects to utilize standard JDK security.
2.9 Internationalization implications
Because JAIN TCAP is based on ITU specifications, the API can be readily adopted in the European market. Adherance to Japanese standards will also make JAIN TCAP ready for the Asian market.
2.10 Localization implications
Since JAIN TCAP is also based on ANSI/Bellcore standards, the TCAP API can be readily adapted to most North American SS7 Protocol Stacks.
2.11 Risk assessment
JAIN TCAP moves Java into telco carrier grade service. The Telcoms Industry levies Stingent performance and failure requirements on hardware and software platforms. Risks include failure of the Java platform due to poor performance or the inability to failover or recover. Performance evaluation and tests based on API architecture will be published with each release of the API. Failover will be measured and published based on latency to recover to a like platform and recover state data through JDBC interfaces or Transaction based tools.
2.12 Existing specifications rendered obsolete or deprecated
2.13 Existing specifications needing revisions
Section 3: Contributions
Documents describing JAIN can be found at