Course Objectives:
Understand the Sigtran Protocol
Contents
1 SIGTRAN.......................................................................................................................................................1 1.1 Principal Concept of Sigtran...................................................................................................................1 1.1.1 Structure of SIGTRAN.............................................................................................................1 1.1.2 Networking and Interconnection of SIGTRAN.......................................................................2 1.1.3 Applications of SIGTRAN in SG.............................................................................................5 1.2 Transport Layer Protocol........................................................................................................................9 1.2.1 Basic Concept of SCTP............................................................................................................9 1.2.2 SCTP Terms............................................................................................................................10 1.2.3 Functions of SCTP..................................................................................................................11 1.2.4 Message Units of SCTP..........................................................................................................14 1.2.5 Setup/Shutdown of the SCTP Association.............................................................................18 1.3 Signal Adaptation Protocol...................................................................................................................22 1.3.1 Functions of M3UA................................................................................................................22 1.3.2 Protocol Stack and Network Applications of M3UA.............................................................22 1.3.3 Message Units of M3UA........................................................................................................24 1.3.4 Concepts of AS and ASP........................................................................................................27 1.3.5 IUA.........................................................................................................................................27 1.3.6 M2UA.....................................................................................................................................28 1.3.7 M2PA......................................................................................................................................28 1.3.8 SUA........................................................................................................................................29
1 SIGTRAN
Key points Structure of SIGTRAN. Applications of SIGTRAN. SCTP. M3UA.
The UDP offers reliable transmission and does not provide sequence control or connection acknowledgment; the TCP supports single data stream, does not provide multiple IP connections, and has a lower security. Therefore, the generic signaling transport protocol used in the SIGTRAN is stream control transmission protocol (SCTP) in stead of TCP or UDP. The SCTP ensures reliable transfer of signaling messages through the Multi-Homing and rerouting mechanisms. It also uses the MultiStreaming mechanism to ensure real-time signaling transfer, especially to avoid signaling congestion over high-delay links.
Chapter 1 SIGTRAN
heterogeneous networks will be integrated. With the rapid development of the IP network, the NGN will take the IP network as the backbone and flexibly offer services in a unified manner based on the integration of various networks. Functionally, the NGN consists of four layers: service layer, control layer, transport layer, and access layer. The major function of the SG is to perform adaptation-layer conversion for the SS7 on the SCN side and the SIGTRAN o the IP side to transfer SS7 in the IP network. In this way, the SS7 network can interwork with the IP network. The SG is very important to the interworking of the SS7 and IP networks. On one hand, the SG performs adaptation for the signaling transferred in the SCN, in this way, the signaling can be transferred to the MGC as packets. On the other hand, the SG converts the signaling from the MGC, that is, to convert the signaling that is sent to the SG as IP packets; in this way, the signaling can be transferred in the SCN. The networking applications of the SG include the application in the SP agent and the STP. In the STP networking application, the SG need meet the networking applications of the IP network and need comply with the networking applications defined in the STP specifications. The SS7 network and IP network can be interworked in multiple networking modes by using the SG. The protocol processing mode that need be loaded to the SG depends on the networking mode.
The SIGTRAN also supports direct signaling transfer between two SGs.
In the figure above, the two SGs have different function levels. SG1 adopts the M2UA/SCTP architecture. SG2 adopts the MTP3/M2UA/SCTP architecture at the SG1 side and the M3UA/SCTP architecture at the MGC side. The MGC also adopts the M3UA/SCTP architecture. Or:
The two SGs have the same function level. The SIGTRAN on the SG and that on the IPSP adopt the M2PA/SCTP architecture.
Chapter 1 SIGTRAN
In this application, the SIGTRAN can adopt the SUA/SCTP, M3UA/SCTP, or M2PA/SCTP architecture. Note that M2UA and IUA cannot be used in this application; they can be used in the SG networking mode only.
1.1.3.2 SG Running in M2PA Mode In this application, the SG has the MTP3 function; it is an SS7 network node and has a SS7 SPC. It does not directly map the signaling link to the IP link. Instead, it acts as an STP and can transfer MTP messages or relay higher-layer messages, or even act as an STP between the SS7 and IP networks. Fig. 1.1 -7 shows how the SG transfers signaling messages (circuit-related call
connection control signaling messages or circuit-unrelated signaling messages) to an MGC or IPSP. In this application, the SCN node need know the SPC of the MGC or IPSP and the SPC of the SG acting as an STP.
SCCP (Optional)
1.1.3.3 SG Running in M3UA Mode (Without the SCCP Function) In this application, upon receiving a signaling message from the narrowband SS7
6
Chapter 1 SIGTRAN
network or the IP network, the SG transfers it to the MTP3 or M3UA, and then transfers it through the nodal interworking function (NIF) according to the DPC or IP address.
1.1.3.4 SG Running in M3UA Mode (With the SCCP Function) In this application, upon receiving a signaling message from the narrowband SS7 network or the IP network, the SG transfers it to the SCCP. After the SCCP completes the address translation, it transfers the message to the MTP3 or M3UA. Then the SG transfers the message through the NIF according to the DPC or DPC/OPC/NI/CIC (SCCP_SSN). The SG contains the SCCP protocol layer that can implement GT translation (GTT). If the message is from the SS7 network, it is routed to the SCCP in the SG. The SCCP implements GTT. In the results of the GTT, the DPC or DPC/SSN points to the IP domain. To route the message to the destination IP domain, the SCCP sends the MTPTransfer request primitive to the NAT and mapping functions of the local M3UA. Similarly, if the message is from the IP domain, the message is routed to the SCCP layer of the SG. The SCCP implements GTT. In the result of the GTT, the DPC or DPC/SSN points to the SS7 network. To route the message to the destination SS7 network, the SCCP sends the MTP-Transfer request primitive to the local MTP3.
1.1.3.5 SG Running in SUA Mode In this application, upon receiving a signaling message from the narrowband SS7 network, the SG transfers it to the SCCP. After the SCCP analyzes the address, the SG transfers the message to the SUA through the NIF. The SUA resolves the destination IP address according to the GTT or the address list, encapsulates the corresponding information in the SCTP message, and then sends the message to the association. After the SG receives a message from the IP network, the SUA extracts the user data from the SCTP and then transfers the data to the SCCP through the NIF. After that, the SCCP implements GTT and DPC mapping.
Chapter 1 SIGTRAN
Using COOKIE authentication to ensure the security of the association setup; Real-time path fault test function.
SCTP user
SCTP user
SCTP layer IP layer SCTP endpoint A One or more IP addresses Network transfer
Chapter 1 SIGTRAN
unidirectional logical channel from an endpoint to another endpoint in an SCTP association. The data requiring sequenced transfer must be transferred within a stream. One association may contain multiple streams. 4. TSN and SSN TSN stands for transmission sequence number. In the SCTP, an end of the association allocates a 32-bit sequence based on the initial TSN for the sequence of each chunk sent at the end. In this way, the opposite can confirm the sequence after receiving a chunk. The TSN is maintained based on the association. SSN stands for stream sequence number. In each stream of an SCTP association, a 16-bit sequence number is allocated for each chunk sent at the local end to ensure the sequenced delivery of chunks within the stream. The SSN is maintained based on the stream. TSN and SSN are independently allocated. 5. Others Congestion window (CWND): The SCTP is also a sliding window protocol. The CWND is maintained based on each destination address. It will be adjusted according to the network condition. If the length of the unacknowledged messages sent to the destination address exceeds the CWND, the endpoint will stops sending data to the address. Receiver window (RWND): The RWND describes the size of the receiving buffer of the opposite end of an association. During the setup of an association, both parties exchange their own RWNDs. The RWND changes in real time with the state of data sending and acknowledgement. The size of the RWND limits the size of the data that can be sent by the SCTP. If RWND is 0, the SCTP still can send one datagram to know the change to the buffer through the acknowledgement message until the CWND is hit.
11
Upper-layer protocol SCTP user (M3UA,SUA...) Sequenced delivery User data fragmentation functions Acknowledgement and congestion avoidance Chunk bundling Packet validation Path management IP layer SCTP
takedown
Association startup and takedown An association is initiated by a request from the SCTP user. A cookie mechanism is employed during the initialization to provide protection against security attacks. SCTP provides for graceful close (i.e., shutdown) of an active association on request from the SCTP user. SCTP also allows ungraceful close (i.e., abort), either on request from the user or as a result of an error condition detected within the SCTP layer.
Sequenced delivery within streams The term "stream" is used in SCTP to refer to a sequence of user messages that are to be delivered to the upper-layer protocol in order with respect to other messages within the same stream. The SCTP user can specify at association startup time the number of streams to be supported by the association. This number is negotiated with the remote end. User messages are associated with stream numbers. Internally, SCTP assigns a stream sequence number to each message passed to it by the SCTP user. On the receiving side, SCTP ensures that messages are delivered to the SCTP user in sequence within a given stream. However, while one stream may be blocked
12
Chapter 1 SIGTRAN
waiting for the next in-sequence user message, delivery from other streams may proceed. SCTP provides a mechanism for bypassing the sequenced delivery service. User messages sent using this mechanism are delivered to the SCTP user as soon as they are received. User data fragmentation When needed, SCTP fragments user messages to ensure that the SCTP packet passed to the lower layer conforms to the path MTU. On receipt, fragments are reassembled into complete messages before being passed to the SCTP user. Acknowledgement and congestion avoidance SCTP assigns a Transmission Sequence Number (TSN) to each user data fragment or unfragmented message. The TSN is independent of any stream sequence number assigned at the stream level. The receiving end acknowledges all TSNs received, even if there are gaps in the sequence. In this way, reliable delivery is kept functionally separate from sequenced stream delivery. The acknowledgement and congestion avoidance function is responsible for packet retransmission when timely acknowledgement has not been received. Packet retransmission is conditioned by congestion avoidance procedures similar to those used for TCP. Chunk bundling The SCTP packet as delivered to the lower layer consists of a common header followed by one or more chunks. Each chunk may contain either user data or SCTP control information. The SCTP user has the option to request bundling of more than one user messages into a single SCTP packet. The chunk bundling function of SCTP is responsible for assembly of the complete SCTP packet and its disassembly at the receiving end. During times of congestion an SCTP implementation may still perform bundling even if the user has requested that SCTP not bundle. The user's disabling of bundling only affects SCTP implementations that may delay a small period of time before transmission Packet validation A mandatory Verification Tag field and a 32 bit checksum field are included in
13
the SCTP common header. The Verification Tag value is chosen by each end of the association during association startup. Packets received without the expected Verification Tag value are discarded, as a protection against blind masquerade attacks and against stale SCTP packets from a previous association. The Adler32 checksum should be set by the sender of each SCTP packet to provide additional protection against data corruption in the network. The receiver of an SCTP packet with an invalid Adler-32 checksum silently discards the packet. Path management The sending SCTP user is able to manipulate the set of transport addresses used as destinations for SCTP packets. The SCTP path management function chooses the destination transport address for each outgoing SCTP packet based on the SCTP user's instructions and the currently perceived reachability status of the eligible destination set. The path management function monitors reachability through heartbeats when other packet traffic is inadequate to provide this information and advises the SCTP user when reachability of any far-end transport address changes. The path management function is also responsible for reporting the eligible set of local transport addresses to the far end during association startup, and for reporting the transport addresses returned from the far end to the SCTP user. At association start-up, a primary path is defined for each SCTP endpoint, and is used for normal sending of SCTP packets. On the receiving end, the path management is responsible for verifying the existence of a valid SCTP association to which the inbound SCTP packet belongs before passing it for further processing.
Chapter 1 SIGTRAN
Chunk #n
1.2.4.2 Format of the SCTP Common Packet Header Fig. 1.2 -14 shows the format of the SCTP common packet header.
Source port number: This is the SCTP sender's port number. It can be used by the receiver in combination with the source IP address, the SCTP destination port and possibly the destination IP address to identify the association to which this packet belongs. Destination port number: This is the SCTP port number to which this packet is destined. The receiving host will use this port number to de-multiplex the SCTP packet to the correct receiving endpoint/application. Verification tag: The receiver of this packet uses the Verification Tag to validate the sender of this SCTP packet. On transmit, the value of this Verification Tag must be set to the value of the Initiate Tag received from the peer endpoint during the association initialization, with the following exceptions: A packet containing an INIT chunk must have a zero Verification Tag. An INIT chunk must be the only chunk in the SCTP packet carrying it. A packet containing a SHUTDOWN-COMPLETE chunk with the T-bit set must
15
have the Verification Tag copied from the packet with the SHUTDOWN-ACK chunk. A packet containing an ABORT chunk may have the verification tag copied from the packet which caused the ABORT to be sent. Checksum: This field contains the checksum of the SCTP packet. 1.2.4.3 Format of the Chunk Fig. 1.2 -15 shows the field format of the chunks in the SCTP packet. Each chunk is formatted with a Chunk Type field, a chunk-specific Flag field, a Chunk Length field, and a Value field.
Chunk type
Chunk flag
Chunk length
Chunk value
Chunk Type: This field identifies the type of information contained in the Chunk Value field. It takes a value from 0 to 254. The value of 255 is reserved for future use as an extension field. The values of Chunk Types are defined as follows: 1. 2. 3. 4. 5. 6. 7. 8. 9. Payload Data (DATA) Initiation (INIT) Initiation Acknowledgement (INIT ACK) Selective Acknowledgement (SACK) HeartBeat Request (HEARTBEAT) HeartBeat Authentication (HEARTBEAT ACK) Abort (ABORT) Shutdown (SHUTDOWN) Shutdown Acknowledgement (SHUTDOWN ACK)
16
Chapter 1 SIGTRAN
10. Operation Error (ERROR) 11. State Cookie (COOKIE ECHO) 12. Cookie Acknowledgement (COOKIE ACK) 13. Reserved for Explicit Congestion Notification Echo (ECNE) 14. Reserved for Congestion Window Reduced (CWR) 15. Shutdown Complete (SHUTDOWN COMPLETE) 16~255 Reserved by the IETF or IETF-defined Chunk Extensions
Chunk Types are encoded such that the highest-order two bits specify the action that must be taken if the processing endpoint does not recognize the Chunk Type. 00: Stop processing this SCTP packet and discard it, do not process any further chunks within it. 01: Stop processing this SCTP packet and discard it, do not process any further chunks within it, and report the unrecognized parameter in an "Unrecognized Parameter Type" in an ERROR Chunk. 10: Skip this chunk and continue processing. 11: Skip this chunk and continue processing, but report in an ERROR Chunk using the Unrecognized Chunk Type' cause of error. Chunk Flag: The usage of these bits depends on the chunk type as given by the Chunk Type. Unless otherwise specified, they are set to zero on transmit and are ignored on receipt. Chunk Length: This value represents the size of the chunk in bytes including the Chunk Type, Chunk Flags, Chunk Length, and Chunk Value fields. Therefore, if the Chunk Value field is zero-length, the Length field will be set to 4. The Chunk Length field does not count any padding bytes. Chunk Value: The Chunk Value field contains the actual information to be transferred in the chunk. The usage and format of this field depends on the Chunk Type. The total length of a chunk (including Type, Length and Value fields) must be a multiple of 4 bytes. If the length of the chunk is not a multiple of 4 bytes, the sender must pad the chunk with all zero bytes and this padding is not included in the chunk length field. The sender should never pad with more than 3 bytes. The receiver must
17
ignore the padding bytes. Except the last parameter, the padding bytes in all other parameters need be counted in the chunk length. 1.2.4.4 Format of the Variable Length Parameter Chunk values of SCTP control chunks consist of a chunk-type-specific header of required fields, followed by zero or more parameters. The optional and variable-length parameters contained in a chunk are defined in a Type-Length-Value format as shown in Fig. 1.2 -16.
Parameter length
18
Chapter 1 SIGTRAN
Endpoint A
build TCB INIT [I-Tag=Tag_A & other info] Start T1-init timer Enter COOKIE-WAIT state Cancel T1-init timer COOKIE ECHO [COOKIE_Z] Start T1-init timer Enter COOKIE-ECHOED state
Endpoint B
{app sets association with Z}
Compose temp TCB and Cookie_Z INIT ACK [Veri Tag=Tag_A 1-Tag=Tag_Z Cookie_Z, & other info destroy temp TCB] build TCB, enter ESTABLISHED state COOKIE-ACK
Cancel T1-init timer, enter ESTABLISHED state DATA [TSN=initial TSN_A, Strm=0,Seq=1 & user data] Start T3-rtx timer Cancel T3-rtx timer
1.
The association initiator first creates a transfer control block (TCB) to describe the association to the initiated (including basic information about the association), and then sends the INIT message to the opposite end. In general, the INIT message carries one or more local IP addresses (if no local IP address is carried, the opposite end takes the source address from which the INIT message is sent as the address of the endpoint). In the common header, the Verification Tag is set to zero because the Tag of the opposite end is unknown. The message must carry the local Tag and the expected inbound streams and outbound streams. After sending the message, the initiator starts an INIT timer to wait for the INIT ACK message from the opposite end. If the timer expires, the initiator retransmits INIT until the allowed retransmission times is hit. After taking these actions, the initiator enters the COOKIE-WAIT state.
.Upon receiving the INIT message, the association receiver generates a Tag and puts it in the INIT ACK message as the initial Tag of the local end. After that, it generates a temporary TCB according to the basic information about the
19
association. After generating the TCB, the receiver calculates an 32-bit message authentication code (MAC) based on the necessary information in the TCB (including the time stamp generated by COOKIE and the lifespan of the COOKIE) and a local secret key by using the algorithm described in RFC240 (this calculation is not reversible). After that, the receiver combines the necessary information and the MAC to generate the STATE COOKIE parameter, and then put the parameter in the INIT ACK message. The Verification Tag in the common header of the INIT ACK message is set to the value of the initial Tag in the INIT message. In general, the INIT ACK message also carries local address, inbound streams, and outbound streams. The receiver sends INIT ACK to the opposite end and deletes the temporary TCB (in this way, the receiver does not keep any resources for the association). 3. Upon receiving INIT ACK, the association initiator stops the INIT timer. Then it updates its TCB with the information obtained from INIT ACK. After that, the initiator generates the COOKIE ECHO message to return the STATE COOKIE (unaltered) in INIT ACK to the receiver. Then it starts the COOKIE timer, and its state transits to COOKIE-ECHOED. 4. Upon receiving the COOKIE ECHO message, the receiver authentications the COOKIE. It calculates the MAC based on the TCB in the STATE COOKIE and the local secrete key by using the MAC algorithm described in RF2401. Then, it compares the calculated MAC with the MAC carried in the STATE COOKIE. If they are different, the receiver discards the message. If they are the same, the receiver extracts the time stamp of the TCB, and then compares it with the current time to check whether the lifespan of the TCB has expired. If yes, the receiver also discards the message; otherwise it sets up an association to the opposite end according to the information in the TCB. After that, the receiver enters the ESTABLISHED state and returns the COOKIE ACK message. 5. Upon receiving the COOKIE ACK message, the initiator stops the COOKIE timer, and its state transits to ESTABLISHED. Now the association is set up. Association shutdown: The SCTP provides two methods for shutting down associations: GRACEFUL and UNGRACEFUL. With the former method, the association will be terminated only after the peer acknowledges all the SCTP packets sent. With the later method, the association is directly terminated, and the current SCTP packets are discarded.
20
Chapter 1 SIGTRAN
GRACEFUL: The shutdown of an association involves three-way handshake: 1. The termination initiator sends a GRACEFUL association termination request to the SCTP. The state of the SCTP association transits from ESTABLISHED to SHUTDOWN-PENDING. At the SHUTDOWN-PENDING state, the SCTP does not accept any request for sending data over the association from the upper layer and waits for the opposite end to acknowledge all the packets sent by the local end. 2. After all the packets sent by the local end are acknowledged, the SCTP sends the SHUTDOWN message to the opposite end, and its state transits to SHUTDOWN-SENT. The SCTP starts the SHUTDOWN timer to wait for the SHUTDOWN-ACK message from the opposite end. In this state, the packets received from opposite end are acknowledged immediately. 3. After the opposite end receives the SHUTDOWN message, its state transits to SHOUTDOWNREVD, and the opposite end no longer accepts any request for sending data over the association from the upper layer. After all the packets sent by the local end are acknowledged, the opposite sends the SHUTDOWN ACK message and starts the SHUTDOWN timer to wait for the SHUTDWON COMPLETE message. 4. Upon receiving the SHUTDOWN ACK message, the termination initiator stops the SHUTDOWN timer, sends SHUTDOWN COMPLETE to the opposite end, and then deletes the TCB of the association. 5. Upon receiving the SHUTDOWN COMPLETE message, the opposite end deletes the TCB of the association. UNGRACEFUL: Such association shutdown is simple because it does not consider the data security. 1. 2. The initiator sends the ABORT message. Upon receiving the message, the receiver immediately deletes the TCB of the association. After the opposite end receives the ABORT message, it also deletes the TCB of the association immediately.
21
MTP3-user
22
Chapter 1 SIGTRAN
Host 1
Host 3
Host 2
Host 4
SCTP association
23
SCCP user
SCCP user
Version
Reserved
Message class
Message type
Message length
The M3UA message contains the adaptation layer version, the message type, message length, and message content. The message header is common to M3UA messages. Protocol version: The version field contains the M3UA version. The supported version is as follows: value : 00000001; version: Release 1.0 protocol. Message class and message type: The table below lists the message classes and message types defined in M3UA.
24
Chapter 1 SIGTRAN
Table 1.3-1 M3UA Message Types Message Type Management (MGMT ) Messages Transfer Messages SS7 Signaling Network Management (SSNM) Messages ASP State Maintenance (ASPSM) Messages ASP Traffic Maintenance (ASPTM) Messages Reserved for other SIGTRAN adaptation layers Reserved for other SIGTRAN adaptation layers Reserved for other SIGTRAN adaptation layers Reserved for other SIGTRAN adaptation layers Routing Key Management (RKM) Messages Reserved by IETF
Reserved for IETF-Defined Message Class Extensions
Table 1.3-2 M3UA Management (MGMT) Messages Message Type Error (ERR Notify (NTFY) Reserved by IETF Reserved for IETF-defined MGMT extensions 00 01 02-7F 80-FF Message Type Code (in Hex.)
Table 1.3-3 M3UA Transfer Messages Message Type Reserved Data (DATA) Reserved by IETF 00 01 02-7F Message Type Code (in Hex.)
Table 1.3-4 SS7 Signaling Network Management (SSNM) Messages Message Type Destination Unavailable (DUNA) Destination Available (DAVA) Destination State Audit (DAUD) SS7 Network Congestion (SCON) 25 01 02 03 04 Message Type Code (in Hex.)
Destination User Part Unavailable (DUPU) Destination Restricted (DRST) (not used for the time being) Reserved by IETF Reserved for IETF-defined SSNM Extensions
05 06 7-7F 80-FF
Table 1.3-5 M3UA ASP State Maintenance (ASPSM) Messages Message Type Reserved ASP Up (ASPUP) ASP Down (ASPDN) Heartbeat (BEAT) ASP Up Ack (ASPUP ACK) ASP Down Ack (ASPDN ACK) Heartbeat Ack (BEAT ACK) Reserved by IETF Reserved for IETF-defined ASPSM Extensions 00 01 02 03 04 05 06 7-7F 80-FF Message Type Code (in Hex.)
Table 1.3-6 M3UA ASP Traffic Maintenance (ASPTM) Messages Message Type Reserved ASP Active (ASPAC) ASP Inactive (ASPIA) ASP Active Ack (ASPAC ACK) ASP Inactive Ack (ASPIA ACK) Reserved by IETF Reserved for IETF-defined ASPTM Extensions 00 01 02 03 04 5-7F 80-FF Message Type Code (in Hex.)
Table 1.3-7 M3UA Routing Key Management (RKM) Messages Message Type Reserved Registration Request (REG REQ) Registration Response (REG RSP) Deregistration Request (DEREG REQ) Deregistration Response (DEREG RSP) 00 01 02 03 04 Message Type Code (in Hex.)
26
Chapter 1 SIGTRAN
5-7F 80-FF
Message length: The message length field indicates the length of the octets in the message. It is contained in the message header. If the last parameter in the message contains any padding bytes, the padding bytes shall also be counted in the message length. 1.3.3.2 Format of the Parameter
Parameter tag
Parameter length
Parameter value
Where more than one parameter is included in a message, the parameters may be in any order, except where explicitly mandated. A receiver should accept the parameters in any order. The Tag field is a 16-bit identifier of the type of parameter. It takes a value of 0 to 65534. Common parameters used by adaptation layers are in the range of 0x00 to 0x3f. M3UA-specific parameters have Tags in the range 0x0200 to 0x02ff.
1.3.5 IUA
ISDN user application layer (IUA): The endpoint in the IP network still keeps the interface between Q.921 and Q.931. The SG uses the IUA protocol for the interworking between the SCN and the IP. The IUA can only be used for the interworking between
27
the SCN signaling and the IP; it cannot be used for the interworking between two IP network nodes. The IUA provides the following functions: Supporting the boundary interface between the Q.921 and Q.931 for transferring Q.931 messages. Managing the communications between the SG and the MGC. Managing the associations between the SG and the MGC. Mapping the association streams between the SG and the MGC.
1.3.6 M2UA
The MTP2 user adaptation layer (M2UA) terminates the MTP2 at the edge SG of the packet-based network, and transparently transfers MTP2 user messages (MTP3 messages) to the MTP3 in the packet-based network. The SP in the IP network still keeps the interface between the MTP2 and MTP3. The M2UA converts the MTP2/MTP3 interface primitive to corresponding message and then transfers it over the IP network through SCTP connection. After arriving at the opposite end, the M2UA message is converted to the corresponding MTP2/MTP3 interface primitive and then sent to the MTP3. The SG uses the M2UA protocol for the interworking between the SCN signaling and the IP. The M2UA can only be used for the interworking between the SCN signaling and the IP; it cannot be used for the interworking between two IPSPs in the IP network. The M2UA provides the following functions: Supporting the boundary interface between the MTP2 and MTP3 Managing the communications between the SG and the MGC. Managing the associations between the SG and the MGC. Mapping the association streams between the SG and the MGC.
1.3.7 M2PA
M2PA is used to support the operations between the peer layers of the MTP3 in the IP network, support the boundary interface between the MTP2 and MTP3, support the message transfer through the SCTP association, implement the MTP2 link function, and report the change to the management status. It is used to connect IPSPs or connect
28
Chapter 1 SIGTRAN
IPSP and SG for transferring MTP3 messages. The major function of the M2PA is to provide message transfer link for MTP3. The SCTP can provide sequenced transport function, so the M2PA need not offer such function; it only need implement the functions related to the link status control. It can be understood in this way: The M2PA/SCTP/IP protocol structure replaces the MTP2/MTP1 protocol structure in the IP domain without affecting the MTP3, and the MTP2A works with the SCTP to implement the MTP2 function. The functions of the M2PA are similar to those of MTP2, including link initial alignment, user data transfer, link-level traffic control, processor fault control, and so on. However, these functions of the MTP2 are cancelled: message delimitation, error check, error rate monitoring, and retransmission control. To work with the SCTP to provide reliable sequenced message transfer, the M2PA maps each link to an SCTP association. That is to say, the M2PA maintains mapping table of the signaling link codes (SLCs) in the link set and the associations. The link states of the M2PA are the same as those of the MTP2, including Idle, Out of Service, Aligned, Not Aligned, Proving, In Service, and so on. There are two types of M2PA signal units: message signal unit (MSU) and link status signal unit (LSSU). Compared with the MTP2, the M2PA does not have the fill-in signal unit (FISU).
1.3.8 SUA
The SUA defines how to transfer SCCP user messages between two SPs through IP. It can be used by the SG for the interworking between the SS7 and IP; it can also be used for the interworking between two IPSPs in the IP network. The SUA provides the following functions: Transferring the SCCP user messages, including TCAP messages and RANAP messages. Supporting SCCP connectionless service. Supporting SCCP connection-oriented service. Supporting the seamless operations between the peer layers of the SCCP user protocol. Supporting address translation and mapping.
29
Managing the communications between the SG and the MGC. Managing the associations between the SG and the MGC. Mapping the association streams between the SG and the MGC.
30