Transaction Capabilities Application Part

Last updated
SS7 protocol suite
SS7 protocols by OSI layer
Application INAP, MAP, IS-41...
TCAP, CAP, ISUP, ...
Network MTP Level 3 + SCCP
Data link MTP Level 2
Physical MTP Level 1

Transaction Capabilities Application Part, from ITU-T recommendations Q.771-Q.775 or ANSI T1.114 is a protocol for Signalling System 7 networks. Its primary purpose is to facilitate multiple concurrent dialogs between the same sub-systems on the same machines, using Transaction IDs to differentiate these, similar to the way TCP ports facilitate multiplexing connections between the same IP addresses on the Internet.

Contents

TCAP uses ASN.1 BER encoding, as well as the protocols it encapsulates, namely MAP in mobile phone networks or INAP in Intelligent Networks.

Overview

TCAP messages are sent over the wire between machines. TCAP primitives are sent between the application and the local TCAP stack. All TCAP messages are primitives but there are primitives that are not messages. In other words, some are only transferred inside the local machine. A TCAP primitive is made up of one or more TCAP components.

An ITU-T TCAP primitive may be one of the following types:

UnidirectionalA single primitive with no subsequent primitives. Sometimes referred to as a Notice.
BeginStart a dialog, further primitives will follow.
ContinueSend a subsequent primitive on an existing dialog, further primitives will follow.
EndThe last primitive on an existing dialog, Close an existing dialog.
AbortAn error has caused the dialog to close.
CancelThe invoke timer has expired without a response being received (this is a primitive but not a message)

A Begin primitive has an Originating Transaction ID (up to 4 bytes). A Continue primitive has an Originating Transaction ID and a Destination Transaction ID. End and Abort primitives only have a Destination Transaction ID. Each primitive has both an optional component and (optional) dialogue portions. The component portion for the unidirectional primitive is mandatory.

The dialogue portion carries dialogue or unidialogue control PDUs. For MAP and INAP, dialogue PDU is used which performs establishment and release of dialogues for the application context provided in the primitives. Following primitives are defined for the dialogue PDU:

AARQDialogue request. For MAP and INAP, AARQ is sent in the Begin primitive with the Invoke component in general, with the application context of MAP/INAP operation's package.
AAREDialogue response. Sent in response to AARQ in either Continue or End primitives.
ABRTDialogue abort.

Each ITU-T TCAP component may be one of the following types:

InvokeA new operation is being requested, this may or may not solicit a response
Return Result LastA final response to an Invoke
Return Result Not LastA response to an Invoke, further responses will be sent
Return ErrorAn error occurred
RejectComponent is rejected for some reason like duplicate invocation, unrecognized linked id, unrecognized operation or mistyped argument

Invoke components have a signed 7 bit InvokeID which is present in all the other components to identify which invoke they relate to.

TCAP is based on the OSI defined ROSE, Remote Operations Services Element protocol.

Transaction ID

The transaction ID is a TCAP reference for a set of TCAP operations that are performed within a single dialog. When machine A starts a TCAP dialog with another machine B, A sends a Begin message to B. This Begin message contains an Originating Transaction ID, which is the Transaction ID reference for A. When machine B replies to A with a Continue message, it includes A's Transaction ID as the Destination Transaction ID. Furthermore, B includes its own Transaction ID as the Originating Transaction ID.

As the TCAP dialog goes on, each Continue message includes the Transaction ID of the destination machine as the Destination Transaction ID and the Transaction ID of the originating machine as the Originating Transaction ID. When either machine wants to close the dialog, it sends an End message or an Abort message to the other machine. This message contains the Destination Transaction ID only.

Invoke ID

Invoke ID is a TCAP reference for a specific TCAP operation and must be unique within a dialog.

Decoded TCAP Message

This is a MO-SMS sent by a MAP layer and the hex stream is taken from TCAP layer.

  62 74 48 04 00 02 00 30 6B 1A 28 18 06 07 00 11 86 05 01 01 01 A0 0D 60 0B A1 09 06 07 04 00 00   01 00 19 02 6C 50 A1 4E 02 01 01 02 01 2E 30 46 80 05 70 31 42 44 44 84 06 A1 70 91 92 55 55 04   35 2F 09 00 70 97 92 62 23 04 00 90 20 11 80 01 24 00 27 43 50 7A 0E A2 A3 CB 20 71 79 4E 07 B1   C3 EE 73 3D 7C 2E 83 D2 20 74 D8 5E 06 95 ED 65 39 68 5E 2E BB 01 00

According to tag length values, this can be decoded as below.

      '--> 62|74  <- Start of Tcap begin message              |              '--> 48|04:00 02 00 30    <- Transaction ID              |              '--> 6B|1A   <- Start of Dialog  portion                      |                     '--> 28|18                            |                            '--> 06|07:00 11 86 05 01 01 01                             |                            '--> A0|0D                                   |                                   '--> 60|0B                                          |                                          '--> A1|09                                                 |                                                 '--> 06|07:04 00 00 01 00 19 02   <- Application context              |              '--> 6C|50     <- Start of component portion                     |                     '--> A1|4E                            |                            '--> 02|01:01    <- Component Id (invoke id)                            |                            '--> 02|01:2E    <- Operation Code                            |                            '--> 30|46       <- Start of parameter buffer                                   |                                   '--> 80|05:70 31 42 44 44        <- SM-RP-DA(BCD)                                   |                                   '--> 84|06:A1 70 91 92 55 55     <- SM-RP-OA(BCD)                                   |                                   '--> 04|35:2F 09 00 70 97 92 62 23 04 00 90 20 11 80 01 24 00 27 43 50 7A 0E A2 A3 CB 20 71 79 4E 07 B1 C3 EE 73 3D 7C 2E 83 D2 20 74 D8 5E 06 95 ED 65 39 68 5E 2E BB 01   <- SM-RP-UI

Related Research Articles

H.263 is a video compression standard originally designed as a low-bit-rate compressed format for videotelephony. It was standardized by the ITU-T Video Coding Experts Group (VCEG) in a project ending in 1995/1996. It is a member of the H.26x family of video coding standards in the domain of the ITU-T.

In computer networking, the maximum transmission unit (MTU) is the size of the largest protocol data unit (PDU) that can be communicated in a single network layer transaction. The MTU relates to, but is not identical to the maximum frame size that can be transported on the data link layer, e.g. Ethernet frame.

The Session Initiation Protocol (SIP) is a signaling protocol used for initiating, maintaining, and terminating communication sessions that include voice, video and messaging applications. SIP is used in Internet telephony, in private IP telephone systems, as well as mobile phone calling over LTE (VoLTE).

Short Message Peer-to-Peer (SMPP) in the telecommunications industry is an open, industry standard protocol designed to provide a flexible data communication interface for the transfer of short message data between External Short Messaging Entities (ESMEs), Routing Entities (REs) and SMSC.

The Intelligent Network (IN) is the standard network architecture specified in the ITU-T Q.1200 series recommendations. It is intended for fixed as well as mobile telecom networks. It allows operators to differentiate themselves by providing value-added services in addition to the standard telecom services such as PSTN, ISDN on fixed networks, and GSM services on mobile phones or other mobile devices.

Abstract Syntax Notation One (ASN.1) is a standard interface description language for defining data structures that can be serialized and deserialized in a cross-platform way. It is broadly used in telecommunications and computer networking, and especially in cryptography.

Signalling System No. 7 (SS7) is a set of telephony signaling protocols developed in 1975, which is used to set up and tear down telephone calls in most parts of the world-wide public switched telephone network (PSTN). The protocol also performs number translation, local number portability, prepaid billing, Short Message Service (SMS), and other services.

In telecommunication, common-channel signaling (CCS), or common-channel interoffice signaling (CCIS), is the transmission of control information (signaling) via a separate channel than that used for the messages, The signaling channel usually controls multiple message channels.

The ISDN User Part or ISUP is part of Signaling System No. 7 (SS7), which is used to set up telephone calls in the public switched telephone network (PSTN). It is specified by the ITU-T as part of the Q.76x series.

Connectionless-mode Network Service (CLNS) or simply Connectionless Network Service is an OSI network layer datagram service that does not require a circuit to be established before data is transmitted, and routes messages to their destinations independently of any other messages. As such it is a "best-effort" rather than a "reliable" delivery service. CLNS is not an Internet service, but provides capabilities in an OSI network environment similar to those provided by the Internet protocol suite. The service is specified in ISO/IEC 8348, the OSI Network Service Definition

The Open Systems Interconnection protocols are a family of information exchange standards developed jointly by the ISO and the ITU-T. The standardization process began in 1977.

INAP stands for Intelligent Network Application Protocol or Intelligent Network Application Part. It is the signalling protocol used in Intelligent Networking (IN). It is part of the Signalling System No. 7 (SS7) protocol suite, typically layered on top of the Transaction Capabilities Application Part (TCAP). It can also be termed as logic for controlling telecommunication services migrated from traditional switching points to computer based service independent platform.

A service control point (SCP) is a standard component of the Intelligent Network (IN) telephone system which is used to control the service. Standard SCPs in the telecom industry today are deployed using SS7, SIGTRAN or SIP technologies. The SCP queries the service data point (SDP) which holds the actual database and directory. SCP, using the database from the SDP, identifies the geographical number to which the call is to be routed. This is the same mechanism that is used to route 800 numbers.

ISO 8583 is an international standard for financial transaction card originated interchange messaging. It is the International Organization for Standardization standard for systems that exchange electronic transactions initiated by cardholders using payment cards.

The Mobile Application Part (MAP) is an SS7 protocol that provides an application layer for the various nodes in GSM and UMTS mobile core networks and GPRS core networks to communicate with each other in order to provide services to users. The Mobile Application Part is the application-layer protocol used to access the Home Location Register, Visitor Location Register, Mobile Switching Center, Equipment Identity Register, Authentication Centre, Short message service center and Serving GPRS Support Node (SGSN).

Real-Time Messaging Protocol (RTMP) is a communication protocol for streaming audio, video, and data over the Internet. Originally developed as a proprietary protocol by Macromedia for streaming between Flash Player and the Flash Communication Server, Adobe has released an incomplete version of the specification of the protocol for public use.

The Signalling Connection Control Part (SCCP) is a network layer protocol that provides extended routing, flow control, segmentation, connection-orientation, and error correction facilities in Signaling System 7 telecommunications networks. SCCP relies on the services of MTP for basic routing and error detection.

The CAMEL Application Part (CAP) is a signalling protocol used in the Intelligent Network (IN) architecture. CAP is a Remote Operations Service Element (ROSE) user protocol, and as such is layered on top of the Transaction Capabilities Application Part (TCAP) of the SS#7 protocol suite. CAP is based on a subset of the ETSI Core and allows for the implementation of carrier-grade, value added services such as unified messaging, prepaid, fraud control and Freephone in both the GSM voice and GPRS data networks. CAMEL is a means of adding intelligent applications to mobile networks. It builds upon established practices in the fixed line telephony business that are generally classed under the heading of or INAP CS-2 protocol.

The Short Message Service is realised by the use of the Mobile Application Part (MAP) of the SS7 protocol, with Short Message protocol elements being transported across the network as fields within the MAP messages. These MAP messages may be transported using "traditional" TDM based signalling, or over IP using SIGTRAN and an appropriate adaptation layer.