Tutorial On Signaling System 7 (SS7)
Tutorial On Signaling System 7 (SS7)
www.pt.com
Table of Contents
Topic Page Overview ....................................................................................................................................................... 3 Signaling Links .......................................................................................................................................... 3 Signaling Points......................................................................................................................................... 3 SS7 Signaling Link Types.......................................................................................................................... 4 SS7 Protocol Stack ....................................................................................................................................... 6 Message Transfer Part .............................................................................................................................. 6 ISDN User Part (ISUP) .............................................................................................................................. 7 Telephone User Part (TUP)....................................................................................................................... 7 Signaling Connection Control Part (SCCP)............................................................................................... 7 Transaction Capabilities Applications Part (TCAP)................................................................................... 7 Message Transfer Part.................................................................................................................................. 7 MTP Level 1 .............................................................................................................................................. 7 MTP Level 2 .............................................................................................................................................. 8 MTP Level 3 ............................................................................................................................................ 11 Signaling Link Selection (SLS) ................................................................................................................ 12 ISDN User Part ........................................................................................................................................... 12 Basic ISUP Call Control........................................................................................................................... 13 ISUP Message Format ............................................................................................................................ 14 Initial Address Message .......................................................................................................................... 15 Address Complete Message ................................................................................................................... 16 Release Message.................................................................................................................................... 18 Release Complete Message ................................................................................................................... 19 Telephone User Part ................................................................................................................................... 20 Signaling Connection Control Part.............................................................................................................. 20 Global Title Translation............................................................................................................................ 20 SCCP Message Format........................................................................................................................... 20 Transaction Capabilities Application Part ................................................................................................... 21 Transaction Portion ................................................................................................................................. 22 Component Portion.................................................................................................................................. 22 Other SS7 Information ................................................................................................................................ 22 Bibliography ................................................................................................................................................ 23 About Performance Technologies............................................................................................................... 23
Page 2
2000-2003 Performance Technologies, Inc. All Rights Reserved.
www.pt.com
Overview
Common Channel Signaling System No. 7 (SS7 or C7) is a global standard for telecommunications defined by the International Telecommunication Union (ITU) Telecommunication Standardization Sector (ITU-T). The standard defines the procedures and protocol by which network elements in the public switched telephone network (PSTN) exchange information over a digital signaling network to effect wireless (cellular) and wireline call setup, routing and control. The ITU definition of SS7 allows for national variants such as North Americas American National Standards Institute (ANSI) and Bell Communications Research (Telcordia Technologies) standards and Europes European Telecommunications Standards Institute (ETSI) standard. The SS7 network and protocol are used for: Basic call setup, management and tear down Wireless services such as personal communications services (PCS), wireless roaming and mobile subscriber authentication Local number portability (LNP) Toll-free (800/888) and toll (900) wireline services Enhanced call features such as call forwarding, calling party name/number display and three-way calling Efficient and secure worldwide telecommunications
Signaling Links
SS7 messages are exchanged between network elements over 56 or 64 kilobit per second (kbps) bidirectional channels called signaling links. Signaling occurs out-of-band on dedicated channels rather than in-band on voice channels. Compared to in-band signaling, out-of-band signaling provides: Faster call setup times (compared to in-band signaling using multi-frequency (MF) signaling tones) More efficient use of voice circuits Support for Intelligent Network (IN) services, which require signaling to network elements without voice trunks (e.g., database systems) Improved control over fraudulent network usage
Signaling Points
Each signaling point in the SS7 network is uniquely identified by a numeric point code. Point codes are carried in signaling messages exchanged between signaling points to identify the source and destination of each message. Each signaling point uses a routing table to select the appropriate signaling path for each message. There are three kinds of signaling points in the SS7 network (Figure. 1): SSP (Service Switching Point) STP (Signal Transfer Point) SCP (Service Control Point)
Page 3
2000-2003 Performance Technologies, Inc. All Rights Reserved.
www.pt.com
SSPs are switches that originate, terminate or tandem calls. An SSP sends signaling messages to other SSPs to setup, manage and release voice circuits required to complete a call. An SSP may also send a query message to a centralized database (an SCP) to determine how to route a call (e.g., a toll-free 1800/888 call in North America). An SCP sends a response to the originating SSP containing the routing number(s) associated with the dialed number. An alternate routing number may be used by the SSP if the primary number is busy or the call is unanswered within a specified time. Actual call features vary from network to network and from service to service. Network traffic between signaling points may be routed via a packet switch called an STP. An STP routes each incoming message to an outgoing signaling link based on routing information contained in the SS7 message. Because it acts as a network hub, an STP provides improved utilization of the SS7 network by eliminating the need for direct links between signaling points. An STP may perform global title translation, a procedure by which the destination signaling point is determined from digits present in the signaling message (e.g., the dialed 800 number, calling card number or mobile subscriber identification number). An STP can also act as a "firewall" to screen SS7 messages exchanged with other networks. Because the SS7 network is critical to call processing, SCPs and STPs are usually deployed in mated pair configurations in separate physical locations to ensure network-wide service in the event of an isolated failure. Links between signaling points are also provisioned in pairs. Traffic is shared across all links in the linkset. If one of the links fails, the signaling traffic is rerouted over another link in the linkset. The SS7 protocol provides both error correction and retransmission capabilities to allow continued service in the event of signaling point or link failures.
Page 4
2000-2003 Performance Technologies, Inc. All Rights Reserved.
www.pt.com
A Link:
An "A" (access) link connects a signaling end point (e.g., an SCP or SSP) to an STP. Only messages originating from or destined to the signaling end point are transmitted on an "A" link. A "B" (bridge) link connects one STP to another. Typically, a quad of "B" links interconnect peer (or primary) STPs (e.g., the STPs from one network to the STPs of another network). The distinction between a "B" link and a "D" link is rather arbitrary. For this reason, such links may be referred to as "B/D" links. A "C" (cross) link connects STPs performing identical functions into a mated pair. A "C" link is used only when an STP has no other route available to a destination signaling point due to link failure(s). Note that SCPs may also be deployed in pairs to improve reliability; unlike STPs however, mated SCPs are not interconnected by signaling links. A "D" (diagonal) link connects a secondary (e.g., local or regional) STP pair to a primary (e.g., inter-network gateway) STP pair in a quad-link configuration. Secondary STPs within the same network are connected via a quad of "D" links. The distinction between a "B" link and a "D" link is rather arbitrary. For this reason, such links may be referred to as "B/D" links. An "E" (extended) link connects an SSP to an alternate STP. "E" links provide an alternate signaling path if an SSP's "home" STP cannot be reached via an "A" link. "E" links are not usually provisioned unless the benefit of a marginally higher degree of reliability justifies the added expense. An "F" (fully associated) link connects two signaling end points (i.e., SSPs and SCPs). "F" links are not usually used in networks with STPs. In networks without STPs, "F" links directly connect signaling points.
B Link:
C Link:
D Link:
E Link:
F Link:
Page 5
2000-2003 Performance Technologies, Inc. All Rights Reserved.
www.pt.com
Figure 3. The OSI Reference Model and the SS7 Protocol Stack
Page 6
2000-2003 Performance Technologies, Inc. All Rights Reserved.
www.pt.com
MTP Level 3 provides message routing between signaling points in the SS7 network. MTP Level 3 reroutes traffic away from failed links and signaling points and controls traffic when congestion occurs. MTP Level 3 is equivalent to the OSI Network Layer.
MTP Level 1
The lowest level, MTP Level 1, is equivalent to the OSI Physical Layer. MTP Level 1 defines the physical, electrical and functional characteristics of the digital signaling link. Physical interfaces defined
Page 7
2000-2003 Performance Technologies, Inc. All Rights Reserved.
www.pt.com
include E-1 (2048 kb/s; 32 64 kb/s channels), DS-1 (1544 kb/s; 24 64 kp/s channels), V.35 (64 kb/s), DS0 (64 kb/s) and DS-0A (56 kb/s).
MTP Level 2
MTP Level 2 ensures accurate end-to-end transmission of a message cross a signaling link. Level 2 implements flow control, message sequence validation and error checking. When an error occurs on a signaling link, the message (or set of messages) is retransmitted. MTP Level 2 is equivalent to the OSI Data Link Layer. An SS7 message is called a signal unit (SU). There are three kinds of signal units: Fill-In Signal Units (FISUs), Link Status Signal Units (LSSUs) and Message Signal Units (MSUs) (Figure. 4).
Figure 4. SS7 Signal Units FISUs are transmitted continuously on a signaling link in both directions unless other signal units (MSUs or LSSUs) are present. FISUs carry basic Level 2 information only (i.e., acknowledgment of signal unit receipt by a remote signaling point). Because a CRC checksum is calculated for each FISU, signaling link quality is checked continuously by both signaling points at either end of the link. (Note: In the ITU-T Japan variant, signaling link quality is checked by the continuous transmission of flag octets (8-bit bytes) rather than FISUs; FISUs are sent only at predefined timer intervals (e.g., once every 150 milliseconds). LSSUs carry one or two octets (8-bit bytes) of link status information between signaling points at either end of a link. The link status is used to control link alignment and to indicate the status of a signaling point (e.g., local processor outage) to the remote signaling point.
Page 8
2000-2003 Performance Technologies, Inc. All Rights Reserved.
www.pt.com
MSUs carry all call control, database query and response, network management and network maintenance data in the signaling information field (SIF). MSUs have a routing label, which allows an originating signaling point to send information to a destination signaling point across the network. The value of the LI (Length Indicator) field determines the signal unit type:
Signal Unit Type Fill-In Signal Unit (FISU) Link Status Signal Unit (LSSU) Message Signal Unit (MSU)
The 6-bit LI can store values between zero and 63. If the number of octets that follow the LI and precede the CRC is less than 63, the LI contains this number. Otherwise, the LI is set to 63. An LI of 63 indicates that the message length is equal to or greater than 63 octets (up to a maximum of 273 octets). The maximum length of a signal unit is 279 octets: 273 octets (data) + one octet (flag) + one octet (BSN + BIB) + one octet (FSN + FIB) + one octet (LI + two bits spare) + two octets (CRC). Flag The flag indicates the beginning of a new signal unit and implies the end of the previous signal unit (if any). The binary value of the flag is 0111 1110. Before transmitting a signal unit, MTP Level 2 removes "false flags" by adding a zero-bit after any sequence of five one-bits. Upon receiving a signal unit and stripping the flag, MTP Level 2 removes any zero-bit following a sequence of five one-bits to restore the original contents of the message. Duplicate flags are removed between signal units. BSN (Backward Sequence Number) The BSN is used to acknowledge the receipt of signal units by the remote signaling point. The BSN contains the sequence number of the signal unit being acknowledged. (See description under FIB below.) BIB (Backward Indicator Bit) The BIB indicates a negative acknowledgment by the remote signaling point when toggled. (See description under FIB below.) FSN (Forward Sequence Number) The FSN contains the sequence number of the signal unit. (See description under FIB below.) FIB (Forward Indicator Bit) The FIB is used in error recovery like the BIB. When a signal unit is ready for transmission, the signaling point increments the FSN (forward sequence number) by one (FSN = 0..127). The CRC (cyclic redundancy check) checksum value is calculated and appended to the forward message. Upon receiving the message, the remote signaling point checks the CRC and copies the value of the FSN into the BSN of the next available message scheduled for transmission back to the initiating signaling point. If the CRC is correct, the backward message is transmitted. If the CRC is incorrect, the remote signaling point indicates negative acknowledgment by toggling the BIB prior to sending the backward message. When
Page 9
2000-2003 Performance Technologies, Inc. All Rights Reserved.
www.pt.com
the originating signaling point receives a negative acknowledgment, it retransmits all forward messages, beginning with the corrupted message, with the FIB toggled. Because the 7-bit FSN can store values between zero and 127, a signaling point can send up to 128 signal units before requiring acknowledgment from the remote signaling point. The BSN indicates the last in-sequence signal unit received correctly by the remote signaling point. The BSN acknowledges all previously received signal units as well. For example, if a signaling point receives a signal unit with BSN = five followed by another with BSN = ten (and the BIB is not toggled), the latter BSN implies successful receipt of signal units six through nine as well. SIO (Service Information Octet) The SIO field in an MSU contains the 4-bit subservice field followed by the 4-bit service indicator. FISUs and LSSUs do not contain an SIO. The subservice field contains the network indicator (e.g., national or international) and the message priority (zero to three with three being the highest priority). Message priority is considered only under congestion conditions, not to control the order in which messages are transmitted. Low priority messages may be discarded during periods of congestion. Signaling link test messages receive a higher priority than call setup messages. The service indicator specifies the MTP user (Figure. 6), thereby allowing the decoding of the information contained in the SIF.
Service Indicator 0 1 2 3 4 5 6 7
MTP User Signaling Network Management Message (SNM) Maintenance Regular Message (MTN) Maintenance Special Message (MTNS) Signaling Connection Control Part (SCCP) Telephone User Part (TUP) ISDN User Part (ISUP) Data User Part (call and circuit-related messages) Data User Part (facility registration/cancellation messages)
SIF (Signaling Information Field) The SIF in an MSU contains the routing label and signaling information (e.g., SCCP, TCAP and ISUP message data). LSSUs and FISUs contain neither a routing label nor an SIO as they are sent between two directly connected signaling points. For more information about routing labels, refer to the description of MTP Level 3 below.
Page 10
2000-2003 Performance Technologies, Inc. All Rights Reserved.
www.pt.com
CRC (Cyclic Redundancy Check) The CRC value is used to detect and correct data transmission errors. For more information, see the description for BIB above.
MTP Level 3
MTP Level 3 provides message routing between signaling points in the SS7 network. MTP Level 3 is equivalent in function to the OSI Network Layer. MTP Level 3 routes messages based on the routing label in the signaling information field (SIF) of message signal units. The routing label is comprised of the destination point code (DPC), originating point code (OPC) and signaling link selection (SLS) field. Point codes are numeric addresses that uniquely identify each signaling point in the SS7 network. When the destination point code in a message indicates the receiving signaling point, the message is distributed to the appropriate user part (e.g., ISUP or SCCP) indicated by the service indicator in the SIO. Messages destined for other signaling points are transferred provided that the receiving signaling point has message transfer capabilities (like an STP). The selection of outgoing link is based on information in the DPC and SLS. An ANSI routing label uses seven octets; an ITU-T routing label uses four octets (Figure. 7).
Page 11
2000-2003 Performance Technologies, Inc. All Rights Reserved.
www.pt.com
ANSI point codes use 24 bits (three octets); ITU-T point codes typically use 14 bits. For this reason, signaling information exchanged between ANSI and ITU-T networks must be routed through a gateway STP, protocol converter or other signaling point that has both an ANSI and an ITU-T point code. (Note: China uses 24-bit ITU-T point codes, which are incompatible with both ANSI and other ITU-T networks). Interaction between ANSI and ITU-T networks is further complicated by different implementations of higher-level protocols and procedures. An ANSI point code consists of network, cluster and member octets (e.g., 245-16-0). An octet is an 8-bit byte that can contain any value between zero and 255. Telcos with large networks have unique network identifiers while smaller operators are assigned a unique cluster number within networks one through four (e.g., 1-123-9). Network number zero is not used; network number 255 is reserved for future use. ITU-T point codes are pure binary numbers, which may be stated in terms of zone, area/network and signaling point identification numbers. For example, the point code 5557 (decimal) may be stated as 2182-5 (binary 010 10110110 101).
In ANSI networks, the size of the SLS field was originally five bits (32 values). In configurations with two links in each linkset of a combined linkset (totaling four links), eight SLS values were assigned to each link to allow an equal balance of traffic. A problem arose when growing networks provisioned linksets beyond four links. With a 5 bit SLS, a configuration with five links in each linkset of a combined linkset (totaling 10 links) results in an uneven assignment of three SLS values for eight links and four SLS values for the remaining two links. To eliminate this problem, both ANSI and Bellcore moved to adopt an 8-bit SLS (256 values) to provide better loadsharing across signaling links. In ITU-T implementations, the SLS is interpreted as the signaling link code in MTP messages. In ITU-T Telephone User Part message, a portion of the circuit identification code is stored in the SLS field. MTP Level 3 re-routes traffic away from failed links and signaling points and controls traffic when congestion occurs. However, a detailed discussion of this topic is outside the scope of this tutorial. MTP Levels 2 and 1 can be replaced by ATM (Asynchronous Transfer Mode), a simple broadband protocol that uses fixed-length 53 octet cells. MTP Level 3 interfaces to ATM using the Signaling ATM Adaptation Layer (SAAL). This interface is currently an area of ongoing study.
Page 12
2000-2003 Performance Technologies, Inc. All Rights Reserved.
www.pt.com
used for both ISDN and non-ISDN calls. Calls that originate and terminate at the same switch do not use ISUP signaling.
2. The destination switch examines the dialed number, determines that it serves the called party and that the line is available for ringing. The destination switch rings the called party line and transmits an ISUP address complete message (ACM) to the originating switch (2a) (via its home STP) to indicate that the remote end of the trunk circuit has been reserved. The STP routes the ACM to the originating switch (2b), which rings the calling party's line and connects it to the trunk to complete the voice circuit from the calling party to the called party. In the example shown above, the originating and destination switches are directly connected with trunks. If the originating and destination switches are not directly connected with trunks, the originating switch transmits an IAM to reserve a trunk circuit to an intermediate switch. The intermediate switch sends an ACM to acknowledge the circuit reservation request and then
Page 13
2000-2003 Performance Technologies, Inc. All Rights Reserved.
www.pt.com
transmits an IAM to reserve a trunk circuit to another switch. This process continues until all trunks required to complete the voice circuit from the originating switch to the destination switch are reserved. 3. When the called party picks up the phone, the destination switch terminates the ringing tone and transmits an ISUP answer message (ANM) to the originating switch via its home STP (3a). The STP routes the ANM to the originating switch (3b), which verifies that the calling party's line is connected to the reserved trunk and, if so, initiates billing. 4. If the calling party hangs-up first, the originating switch sends an ISUP release message (REL) to release the trunk circuit between the switches (4a). The STP routes the REL to the destination switch (4b). If the called party hangs up first, or if the line is busy, the destination switch sends an REL to the originating switch indicating the release cause (e.g., normal release or busy). 5. Upon receiving the REL, the destination switch disconnects the trunk from the called party's line, sets the trunk state to idle and transmits an ISUP release complete message (RLC) to the originating switch (5a) to acknowledge the release of the remote end of the trunk circuit. When the originating switch receives (or generates) the RLC (5b), it terminates the billing cycle and sets the trunk state to idle in preparation for the next call. ISUP messages may also be transmitted during the connection phase of the call (i.e., between the ISUP Answer (ANM) and Release (REL) messages.
Page 14
2000-2003 Performance Technologies, Inc. All Rights Reserved.
www.pt.com
Each ISUP message contains a mandatory fixed part containing mandatory fixed-length parameters. Sometimes the mandatory fixed part is comprised only of the message type field. The mandatory fixed part may be followed by the mandatory variable part and/or the optional part. The mandatory variable part contains mandatory variable-length parameters. The optional part contains optional parameters, which are identified by a one-octet parameter code followed by a length indicator ("octets to follow") field. Optional parameters may occur in any order. If optional parameters are included, the end of the optional parameters is indicated by an octet containing all zeros.
Page 15
2000-2003 Performance Technologies, Inc. All Rights Reserved.
www.pt.com
Figure 10. ANSI and ITU-T Initial Address Message (IAM) Format
Page 16
2000-2003 Performance Technologies, Inc. All Rights Reserved.
www.pt.com
Figure 11. ANSI and ITU-T Address Complete Message (ACM) Format
When the called party answers, the destination switch terminates the ringing tone and sends an Answer Message (ANM) to the originating switch. The originating switch initiates billing after verifying that the calling party's line is connected to the reserved trunk.
Page 17
2000-2003 Performance Technologies, Inc. All Rights Reserved.
www.pt.com
Release Message
A Release Message (REL) is sent in either direction indicating that the circuit is being released due to the cause indicator specified. An REL is sent when either the calling or called party "hangs up" the call (cause = 16). An REL is also sent in the backward direction if the called party line is busy (cause = 17).
Page 18
2000-2003 Performance Technologies, Inc. All Rights Reserved.
www.pt.com
Figure 14. ANSI and ITU-T Release Complete (RLC) Message Format
Page 19
2000-2003 Performance Technologies, Inc. All Rights Reserved.
www.pt.com
Page 20
2000-2003 Performance Technologies, Inc. All Rights Reserved.
www.pt.com
Each SCCP message contains a mandatory fixed part (mandatory fixed-length parameters), mandatory variable part (mandatory variable-length parameters) and an optional part that may contain fixed-length and variable-length fields. Each optional part parameter is identified by a one-octet parameter code followed by a length indicator ("octets to follow") field. Optional parameters may occur in any order. If optional parameters are included, the end of the optional parameters is indicated by an octet containing all zeros.
Page 21
2000-2003 Performance Technologies, Inc. All Rights Reserved.
www.pt.com
Transaction Portion
The transaction portion contains the package type identifier. There are seven package types: Unidirectional: Transfers component(s) in one direction only (no reply expected). Query with Permission: Initiates a TCAP transaction (e.g., a 1-800 query). The destination node may end the transaction. Query without Permission: Initiates a TCAP transaction. The destination node may not end the transaction. Response: Ends the TCAP transaction. A response to a 1-800 query with permission may contain the routing number(s) associated with the 800 number. Conversation with Permission: Continues a TCAP transaction. The destination node may end the transaction. Conversation without Permission: Continues a TCAP transaction. The destination node may not end the transaction. Abort: Terminates a transaction due to an abnormal situation.
The transaction portion also contains the Originating Transaction ID and Responding Transaction ID fields, which associate the TCAP transaction with a specific application at the originating and destination signaling points respectively.
Component Portion
The component portion contains components. There are six kinds of components: Invoke (Last): Invokes an operation. For example, a Query with Permission transaction may include an Invoke (Last) component to request SCP translation of a dialed 800 number. The component is the "last" component in the query. Invoke (Not Last): Similar to the Invoke (Last) component except that the component is followed by one or more components. Return Result (Last): Returns the result of an invoked operation. The component is the "last" component in the response. Return Result (Not Last): Similar to the Return Result (Last) component except that the component is followed by one or more components. Return Error: Reports the unsuccessful completion of an invoked operation. Reject: Indicates that an incorrect package type or component was received.
Components include parameters, which contain application-specific data carried unexamined by TCAP.
Page 22
2000-2003 Performance Technologies, Inc. All Rights Reserved.
www.pt.com
Bibliography
The following table lists several important SS7 standards documents that were used in the preparation of this tutorial:
SS7 Level MTP Level 2 MTP Level 3 SCCP TUP ISUP TCAP ITU Standard ITU Q.701 - Q.703, 1992 ITU Q.704 - Q.707, 1992 ITU Q.711 - Q.714, 1992 CCITT Q.721 - Q.724, 1988 ITU Q.761 - Q.764, 1992 ITU Q.771 - Q.775, 1992 ANSI Standard ANSI T1.111.2-.3, 1992 ANSI T1.111.4-.7, 1992 ANSI T1.112, 1992 N/A ANSI T1.113, 1992 ANSI T1.114, 1992 JTC (Japan) Standard JT-Q.701 - JT-Q.703, 1992 JT-Q.704 - JT-Q.707, 1992 JT-Q.711 - JT-Q.714, 1992 N/A JT-Q.761 - JT-Q.764, 1992 JT-Q.771 - JT-Q.775, 1992
Page 23
2000-2003 Performance Technologies, Inc. All Rights Reserved.