Network Working Group Tom George INTERNET-DRAFT Alcatel Ram Dantu IPmobile Malleswar Kalla Telcordia Hanns Juergen Schwarzbauer Siemens Greg Sidebottom Nortel Networks Ken Morneault Cisco Systems Expires November 2000 May 22, 2000 SS7 MTP2-User Peer-to-Peer Adaptation Layer Status of This Memo This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC 2026. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet-Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as 'work in progress.' The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. To learn the current status of any Internet-Draft, please check the '1id-abstracts.txt' listing contained in the Internet- Drafts Shadow Directories on ftp.is.co.za (Africa), nic.nordu.net (Europe), munnari.oz.au (Pacific Rim), ftp.ietf.org (US East Coast), or ftp.isi.edu (US West Coast). George, et al [Page 1] Internet Draft SS7 MTP2-User Peer-to-Peer Adaptation Layer May 2000 Abstract This Internet Draft defines a protocol supporting the transport of SS7 MTP Layer 3 signaling messages over IP using the services of the Stream Control Transmission Protocol (SCTP). This protocol would be used between SS7 Signaling Points employing the MTP Level 3 protocol. The SS7 Signaling Points may also employ standard SS7 links using the SS7 Message Transfer Part (MTP) Layer 2 to provide transport of MTP Layer 3 signaling messages. George, et al [Page 2] Internet Draft SS7 MTP2-User Peer-to-Peer Adaptation Layer May 2000 TABLE OF CONTENTS 1. Introduction............................................. 4 1.1 Scope................................................. 4 1.2 Terminology........................................... 4 1.3 Abbreviations......................................... 5 1.4 Signaling Transport Architecture...................... 5 1.5 Services Provided by the MTP2 User Adaptation Layer... 7 1.6 Functions Provided by the MTP2 User Adaptation Layer.. 8 1.7 Definition of the M2UA Boundaries..................... 8 2. Protocol Elements........................................ 8 2.1 Common Message Header................................. 9 2.2 M2UA Messages......................................... 9 3. Procedures...............................................10 3.1 Procedures to Support MTP2 Features...................11 3.2 Procedures to Support the MTP3/MTP2 Interface.........13 4. Examples of MTP2 User Adaptation (M2UA) Procedures.......16 4.1 Link Initialization (Alignment).......................16 4.2 Message Transmission and Reception....................18 4.3 Link Status Indication................................18 4.4 Link Status Message (Processor Outage)................19 4.5 Congestion Notification to Upper layer................20 4.6 Link Deactivation.....................................21 4.7 Link Changeover.......................................21 5. Security.................................................23 6. IANA Considerations......................................23 7. Acknowledgements.........................................23 8. References...............................................23 9. Author's Addresses.......................................24 George, et al [Page 3] Internet Draft SS7 MTP2-User Peer-to-Peer Adaptation Layer May 2000 1. Introduction 1.1 Scope There is a need for Switched Circuit Network (SCN) signaling protocol delivery over an IP network. This includes delivery from a Signalling Gateway (SG) to a Media Gateway Controller (MGC) or IP Signaling Point, as described in the Framework Architecture for Signalling Transport [1]. . This could allow for convergence of some signaling and data networks. SCN Signaling nodes would have access to databases and other devices in the IP network domain that do not employ SS7 signaling links. There may also be operational cost and performance advantages when traditional signaling links are replaced by IP network "connections". The delivery mechanism described in this document allows for full MTP3 message handling and network management capabilities between any two SS7 nodes, communicating over an IP network. An SS7 node equipped with an IP network connection is called an IP Signaling Point (IPSP). The IPSPs function as traditional SS7 nodes using the IP network instead of SS7 links. The delivery mechanism should * Support seamless operation of MTP3 protocol peers over an IP network connection. * Support the MTP Level 2 / MTP Level 3 interface boundary. * Support management of SCTP transport associations and traffic instead of MTP2 Links. * Support asynchronous reporting of status changes to management. Throughout this document, M2UA is used to refer to the MTP 2 User Peer-to-Peer case. This should not be confused with the MTP 2 User Backhauling case described in [6]. 1.2 Terminology MTP - The Message Transfer Part of the SS7 protocol [2]. MTP2 - MTP Level 2, the MTP signaling link layer. MTP3 - MTP Level 3, the MTP signaling network layer. MTP2-User - A protocol that normally uses the services of MTP Level 2. The only MTP2 user is MTP3. Signaling End Point (SEP) - A node in an SS7 network that originates George, et al [Page 4] Internet Draft SS7 MTP2-User Peer-to-Peer Adaptation Layer May 2000 or terminates signaling messages. One example is a central office switch. IP Signaling Point (IPSP) - An SS7 Signaling Point with an IP network connection used for SS7 over IP. Signaling Gateway (SG) - A signaling agent that receives/sends SCN native signaling at the edge of the IP network [4]. In this context, an SG is an SS7 Signaling Point that has both an IP network connection used for SS7 over IP, and a traditional (non-IP) link to an SS7 network. Signaling Transfer Point (STP) - A node in an SS7 network that routes signaling messages based on their destination point code in the SS7 network. Association - An association refers to a SCTP association [5]. The association providea the transport for MTP3 protocol data units and M2UA adaptation layer peer messages. Network Byte Order - Most significant byte first, also known as "Big Endian". Stream - A stream refers to a SCTP stream [5]. 1.3 Abbreviations SCN - Switched Circuit Network SCTP - Stream Control Transmission Protocol SS7 - Signaling System 7 1.4 Signaling Transport Architecture The architecture that has been defined [4] for Switched Circuit Network (SCN) signaling transport over IP uses multiple components, including an IP transport protocol, the Stream Control Transmission Protocol (SCTP), and an adaptation module to support the services expected by a particular SCN signaling protocol from its underlying protocol layer. Within this framework architecture, this document defines an SCN adaptation module that is suitable for the transport of SS7 MTP3 messages. Figure 1 shows the seamless interworking at the MTP3 layer. MTP3 is adapted to the SCTP layer using the MTP2 User Adaptation Layer (M2UA). All the primitives between MTP3 and MTP2 are supported by M2UA. The SCTP association acts as an SS7 link between the IPSPs. The association contains two streams, one in each direction. George, et al [Page 5] Internet Draft SS7 MTP2-User Peer-to-Peer Adaptation Layer May 2000 ******** IP ******** * IPSP *--------* IPSP * ******** ******** +------+ +------+ | MTP3 | | MTP3 | +------+ +------+ | M2UA | | M2UA | +------+ +------+ | SCTP | | SCTP | +------+ +------+ | IP | | IP | +------+ +------+ IP - Internet Protocol IPSP - IP Signaling Point SCTP - Stream Control Transmission Protocol (see Reference [5]) Figure 1: M2UA Symmetrical Peer-to-Peer Architecture An IPSP may have SCCP and other SS7 layers above MTP3. Figure 2 shows an example. The Signaling Gateway is an IPSP equipped with both traditional SS7 and IP network connections. In effect, the Signaling Gateway acts as an STP. Any of the nodes in the diagram could have SCCP or other SS7 layers. STPs may or may not be present in the SS7 path between the SEP and the SG. ******** SS7 *************** IP ******** * SEP *--------* SG *--------* IPSP * ******** *************** ******** +------+ +------+ | TCAP | | TCAP | +------+ +------+ | SCCP | | SCCP | +------+ +-------------+ +------+ | MTP3 | | MTP3 | | MTP3 | +------+ +------+------+ +------+ | MTP2 | | MTP2 | M2UA | | M2UA | +------+ +------+------+ +------+ | MTP1 | | MTP1 | SCTP | | SCTP | | | | +------+ +------+ | | | | IP | | IP | +------+ +------+------+ +------+ SEP - SS7 Signaling Endpoint Figure 2: M2UA in IP Signaling Gateway George, et al [Page 6] Internet Draft SS7 MTP2-User Peer-to-Peer Adaptation Layer May 2000 Figure 2 is only an example. Other configurations are possible. For example, IPSPs without traditional SS7 links could use the protocol layers MTP3/M2UA/SCTP/IP to route SS7 messages in a network with all IP links. Another example, related to Figure 2, is that two SGs could be connected over an IP network to form an SG mated pair similar to the way STPs are provisioned in traditional SS7 networks. 1.4.1 Point Code Representation The MTP specification requires that each node with an MTP3 layer is represented by an SS7 point code. 1.5 Services Provided by the MTP2 User Adaptation Layer The SS7 MTP3/MTP2 (MTP2-User) interface is retained at the termination point in the IP network. The M2UA protocol layer is required to provide the equivalent set of services to its user as provided by MTP Level 2 to MTP Level 3. These services are described in the following subsections. 1.5.1 Support for MTP Level 2 / MTP Level 3 interface boundary This interface is the same as the MTP2/MTP3 interface described in [2], with the addition of support for larger sequence numbers in [7]. Because SCTP uses larger sequence numbers than MTP, the MTP3 Changeover procedure must use the Extended Changeover Order and Extended Changeover Acknowledgment messages described in [7]. This will allow for use of the SCTP stream sequence numbers in the changeover messages. 1.5.2 Support for peer-to-peer communication In SS7, MTP Level 2 sends three types of messages, known as signal units: Message Signal Units (MSUs), Link Status Signal Units (LSSUs), and Fill-In Signal Units (FISUs). MSUs originate at a higher level than MTP2, and are destined for a peer at another node. Likewise, M2UA passes these messages from MTP3 to SCTP as data for transport across a link. LSSUs allow peer MTP2 layers to exchange status information. Analogous messages are needed for M2UA. FISUs are sent when no other signal units are waiting to be sent. This purpose is served by the heartbeat messages in SCTP. FISUs also carry George, et al [Page 7] Internet Draft SS7 MTP2-User Peer-to-Peer Adaptation Layer May 2000 acknowledgment of messages. This function is performed by SCTP. Therefore, it is unnecessary for M2UA to send FISUs. To perform the function of MTP2 in traditional SS7, the following protocol element is defined. Link Status This element performs a function similar to the LSSU in MTP2. It provides a means for asychronous notification of link state to an M2UA peer. An example would be the reporting of a local processor outage. 1.6 Functions Provided by the MTP2 User Adaptation Layer 1.6.1 Mapping For each IP link, the M2UA layer must maintain a map of the SS7 link to its SCTP association and its corresponding IP destination. 1.6.2 SCTP Stream Management SCTP allows user specified number of streams to be opened during the initialization. It is the responsibility of the M2UA layer to ensure proper management of the two streams allowed within each association. 1.6.3 Retention of MTP3 in the SS7 Network M2UA allows MTP3 to perform all of its Message Handling and Network Management functions with IPSPs as with other SS7 nodes. 1.7 Definition of the M2UA Boundaries 1.7.1 Definition of the M2UA / MTP Level 3 boundary The upper layer primitives provided by M2UA are the same as those provided by MTP2 to MTP3 [2]. 1.7.2 Definition of the Lower Layer Boundary between M2UA and SCTP The upper layer primitives provided by SCTP are described in Reference [5] Section 10 "Interface with Upper Layer". 2. Protocol Elements This section describes the format of various messages used in this protocol. All fields in an M2UA message must be transmitted in the network byte order, i.e., most significant byte first, unless otherwise stated. George, et al [Page 8] Internet Draft SS7 MTP2-User Peer-to-Peer Adaptation Layer May 2000 2.1 Common Message Header The protocol messages for MTP2 User Adaptation require a message header structure which contains a version, message type and message length. This message header is common among all SCN adaptation layers. The header structure is shown in Figure 3. 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Version | Spare | Message Type | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Message Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | Figure 3: Common Message Header 2.1.1 Version The version field (vers) contains the version of the M2UA adapation layer. The supported versions are: 01 Release 1.0 of M2UA adaptation protocol 2.1.2 Message Type The valid message types are defined below and the message contents are described in Section 2.2. Each message can contain parameters. The following list contains the message types for the defined messages. MTP2 User Adaptatation Messages Type Value (Hex) User Data 0601 Link Status 0602 2.1.3 Message Length The Message length defines the length of the message in octets, not including the header. 2.2 M2UA Messages The following section defines the messages and parameter contents. The George, et al [Page 9] Internet Draft SS7 MTP2-User Peer-to-Peer Adaptation Layer May 2000 M2UA messages will use the command header and the M2UA specific header. 2.2.1 User Data The User Data parameter is the data sent from the MTP3 in the form of the contiguous SIO and SIF fields of the MSU ([2] Q.703, section 2.2 Signal Unit Format). The format for the Data message is as follows: 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ... | User Data | ... +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ No padding is added to the MTP3 message. Note that the User Data field contains only the SIF and SIO octets. The other components of the message transmitted by MTP2 (the Flag, BSN, BIB, FSN, FIB, LI, CK) are not included in M2UA. 2.2.2 Link Status The MTP2 Link Status message can be sent between M2UA peers to indicate link status. It is the equivalent of the Link Status Signal Unit in MTP2. 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Link Status | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ The valid values for State are shown in the following table. All values defined in the MTP2 Link Status Signal Unit have an equivalent in this M2UA Link Status message. This does not imply that all values must be used by M2UA. Value Description 1 In Alignment 2 In Service 3 Processor Outage 4 Processor Outage Ended 3. Procedures George, et al [Page 10] Internet Draft SS7 MTP2-User Peer-to-Peer Adaptation Layer May 2000 3.1 Procedures to Support MTP2 Features 3.1.1 Signal Unit Format, Delimitation, Acceptance Messages for transmission across the network must follow the format described in section 2. SCTP provides reliable, in-sequence delivery. Therefore the related functionality of MTP2 is not needed. SCTP does not provide functions related to Link State Control in MTP2. These functions must be provided by M2UA. 3.1.2 Link Alignment To begin alignment in M2UA, M2UA sends the ASSOCIATE primitive to SCTP if the SCTP association is not already established. The association shall contain one stream in each direction. If SCTP fails to establish the association, M2UA shall report to MTP3 that the link is out of service. Once the association is established, M2UA has the option of sending Link Status messages with status In Alignment. These messages can be used for proving the link. If M2UA receives a Link Status In Alignment, it should ignore the message. Once the association is established and In Alignment messages (if any) have been sent, if MTP3 has not deactivated the link, M2UA sends a Link Status of In Service to its peer. The link is ready for traffic when the association is established, M2UA has sent Link Status In Service to its peer, and has received Link Status In Service from its peer. Then M2UA sends Link In Service to its MTP3. If M2UA receives a Link Status of Processor Outage during alignment, M2UA shall report to MTP3 that the link is out of service. M2UA shall ignore the Emergency and Emergency Ceases commands from MTP3. 3.1.3 Processor Outage A processor outage occurs when M2UA cannot transfer messages because of a condition at a higher layer than M2UA. When M2UA detects a local processor outage, it sends a Link Status message to its peer with status Processor Outage. It discards any messages received. The peer M2UA, upon receiving the Link Status Processor Outage message, notifies its MTP3. It ceases sending Data messages. George, et al [Page 11] Internet Draft SS7 MTP2-User Peer-to-Peer Adaptation Layer May 2000 When the processor outage ceases, MTP3 sends a Local Processor Recovered indication to M2UA. The local M2UA notifies its peer by sending a Link Status message with status Processor Outage Ended. The peer notifies its MTP3 that the remote processor outage has ceased. 3.1.4 Level 2 Flow Control Notification of receive congestion from M2UA to MTP3 is implementation dependent. 3.1.5 Error monitoring If M2UA loses the SCTP association for a link, M2UA shall report to MTP3 that the link is out of service. 3.1.6 Transmission Priorities Link Status messages have priority over User Data messages ([2] Q.703, section 11.2). To achieve this, Link Status messages shall be sent via SCTP using the unordered delivery option. User Data messages shall be sent via SCTP using ordered delivery. It is recommended that SCTP give higher transmission priority to unordered messages. In other words, SCTP should follow the Implementation Note in [5] section 6.6, "Ordered and Un-ordered Delivery". 3.1.7 MTP2 Timers in M2UA This section explains which MTP2 timers are needed in M2UA. 3.1.7.1 T2 Not Aligned, T3 Aligned Timers T2 and T3 are used to verify that the other end of the link is communicating. In MTP2, if either of timers T2 or T3 expire, alignment is not possible, so MTP2 reports to MTP3 that the link is out of service ([2] Q.703, Figures 8 and 9). Timer T2 is used to verify that the remote end responds to the initial attempt to align the link. Timer T3 is used to verify that the remote end is proving the link along with the local end. Both timers T2 Not Aligned and T3 Aligned are implemented in M2UA. Recommended value of T2 is 5-150 seconds. Recommended value of T3 is 1-2 seconds. These are the same values recommended in [2] Q.703. 3.1.7.2 T4 Proving Period Since M2UA directs the Proving procedure, timer T4 Proving Period is George, et al [Page 12] Internet Draft SS7 MTP2-User Peer-to-Peer Adaptation Layer May 2000 implemented in M2UA as in MTP2. Recommended values are: normal proving period: 7.5-9.5 seconds emergency proving period: 400-600 milliseconds These are the same values recommended in [2] Q.703. 3.1.7.3 T1 Alignment Ready In MTP2, timer T1 is started when alignment is complete. If T1 expires before an MSU or FISU is received, MTP2 LSC reports to MTP3 that the link is out of service ([2] Q.703, Figure 8, sheet 6). M2UA does not send FISUs. The purpose of FISUs is served by the Heartbeats in SCTP. SCTP uses the Heartbeats to determine if communication has been lost on the connection. M2UA does not need to verify that the link is in service. Therefore it is not necessary to implement timer T1 in M2UA. 3.1.7.4 T5 Sending SIB Since SCTP provides congestion control, it is not necessary to implement timer T5 in M2UA. 3.1.7.5 T6 Remote Congestion MTP2 uses T6 to determine if a link has been congested so long that it should be failed. Since SCTP determines when an association has failed, it is not necessary to implement timer T6 in M2UA. 3.1.7.6 T7 Excessive Delay of Acknowledgement SCTP performs acknowledgements and retransmissions. Therefore it is not necessary to implement timer T7 in M2UA. 3.2 Procedures to Support the MTP3/MTP2 Interface 3.2.1 Sending/receiving messages When MTP3 sends a message for transmission to M2UA, M2UA adds the M2UA header to the message, then passes the message to SCTP using the SEND primitive. When M2UA receives a Data message from SCTP, M2UA removes the M2UA header and passes the message to MTP3. 3.2.2 Link activation and restoration When MTP3 requests that M2UA activate or restore a link by a Start George, et al [Page 13] Internet Draft SS7 MTP2-User Peer-to-Peer Adaptation Layer May 2000 command, M2UA shall follow the alignment procedure in section 3.1.2. 3.2.3 Link deactivation When MTP3 requests that M2UA deactivate a link by a Stop command, M2UA shall send an ABORT primitive to SCTP. 3.2.4 Flush buffers Processing of the Flush Buffers request from MTP3 is implementation dependent. 3.2.5 Signaling Link Congestion Notification of transmit congestion from SCTP to its upper layer (M2UA) is implementation dependent. Nevertheless, M2UA should receive notification from SCTP adequate to allow MTP3 to meet its requirements for signaling link transmit congestion in [2] Q.704, section 3.8. 3.2.6 Changeover The objective of the changeover is to ensure that signaling traffic carried by the unavailable signaling link is diverted to the alternative signaling link as quickly as possible while avoiding message loss, duplication, or mis-sequencing. For this purpose, the changeover procedure includes data retrieval, which is performed before reopening the alternative signaling links to the diverted traffic. Data retrieval consists of these steps: (1) buffer updating, i.e., identifying all those User Data messages in the retransmission buffer of the unavailable signaling link which have not been received by the far end SCTP, as well as untransmitted messages, and (2) transferring those messages to the transmission buffers of the alternate links. Note that only User Data messages are retrieved and transmitted over the alternate links. Link Status messages shall not be transmitted over the alternate links. Since Link Status messages are sent with the unordered delivery option of SCTP, they do not have Stream Sequence Numbers. In order to support changeover in M2UA, the SCTP Stream Sequence Numbers must be used in place of the Forward and Backward Sequence Numbers (FSN/BSN) of SS7. Stream Sequence Numbers used by SCTP are 16 bits long. MTP2's Forward and Backward Sequence Numbers are only seven bits long. Hence it is necessary for MTP3 to accomodate the larger SSNs. This is done through the use of the Extended Changeover Order (XCO) and Extended Changeover Acknowledgement (XCA) messages instead of the Changeover Order (COO) and Changeover Acknowledgement (COA) messages. The XCO and XCA George, et al [Page 14] Internet Draft SS7 MTP2-User Peer-to-Peer Adaptation Layer May 2000 messages are specified in Reference [7] section 9.8.1. Only the XCO and XCA messages from [7] are used. These messages have a 24-bit field for the sequence number. The upper 8 bits of the 24 bit field should be set to 0, and the SSN placed in the lower 16 bits. For data retrieval, MTP3 requests Backward Sequence Number (BSN) from M2UA. This is the sequence number of the last message received by the local end. Normally, SCTP delivers ordered messages to the application. However, during congestion or failure condition, the sequence numbers of the acknowledged messages may have gaps. In particular, the SACK (selective acknowledgement message) message can have several of these gaps. Hence, it is important to scan through these gaps and find the sequence number before the first gap. This is the number from which the remote end has to transmit the messages. So this is the number considered as the Backward Sequence Number and communicated to the remote end. In a similar way, the remote end also detects the BSN and indicates to the local end. As soon as the MTP3 of the local end receives this BSN, MTP3 retrieves all the unacknowledged messages starting from BSN. This is accomplished through a Retrieval Request and FSNC request. After all the messages are sent from M2UA to MTP3, a Retrieval Complete indication is sent. Note that the sequence numbers and messages requested by MTP3 are sent from SCTP to M2UA in the Communication Lost primitive. Retrieval of messages is an optional feature in SCTP. To perform data retrieval, it is necessary that this option be implemented, and that the SSNs of the messages are identified. If M2UA receives a Retrieve BSNT request from MTP3, M2UA responds with the BSNT indication. The BSNT value is the SCTP stream sequence number of the last message received by SCTP before any gaps in the stream sequence numbers. (Note that any messages with stream sequence number greater than this BSNT value have been acknowledged by SCTP, but have not been passed up to M2UA. Therefore these messages should be retransmitted by the far end on the alternate link.) If M2UA receives a Retrieval Request and FSNC request from MTP3, M2UA retrieves from SCTP: (a) any transmitted but unacknowledged messages beginning with the stream sequence number FSNC + 1, and (b) any untransmitted messages in SCTP. Each of these messages is sent to MTP3, first (a), then (b). Then M2UA sends the Retrieval Complete indication to MTP3. Note: The changeover procedure makes it impossible for M2UA to have multiple streams in a direction for one link. Buffer updating would have to be done for each stream separately to avoid duplication of messages. But there is only one XCO message for sending the George, et al [Page 15] Internet Draft SS7 MTP2-User Peer-to-Peer Adaptation Layer May 2000 last-received SSN. 4. Examples of MTP2 User Adaptation (M2UA) Procedures In general, messages passed between MTP3 and M2UA are the same as those passed between MTP3 and MTP2. M2UA interprets messages from MTP3 and sends the appropriate message to SCTP. Likewise, messages from SCTP are used to generate a meaningful message to MTP3. Note that throughout this section, the primitives between MTP3 and M2UA are named using the MTP terminology [1][2]. Communications between M2UA and SCTP are named using SCTP terminology. 4.1 Link Initialization (Alignment) An example of the message flow to bring an SS7 link in-service is shown below. Proving is done by both ends of the link. To simplify the diagram, proving is shown on one end only. It is assumed in this example that SCTP has been initialized. MTP3 M2UA SCTP SCTP M2UA MTP3 ---- ---- ---- ---- ---- ---- Out of Service <------------ Emergency OR Emergency Ceases ------------> Start ------------> Associate ------------> (SCTP Association procedure) Communication Up Communication Up <------------ ------------> George, et al [Page 16] Internet Draft SS7 MTP2-User Peer-to-Peer Adaptation Layer May 2000 Even though the SCTP association is established, it is important that M2UA not send MTP3 data at this point. It must be confirmed that both ends of the link are ready for traffic. Otherwise, messages could be lost. Therefore proving begins at this time: MTP3 M2UA SCTP SCTP M2UA MTP3 ---- ---- ---- ---- ---- ---- Link Status In Alignment ------------------------------------> ------------------------------------> ------------------------------------> : ------------------------------------> Link Status In Alignment messages are sent for period T4. Status ------------> Link Status In Service ------------------------------------> Link Status In Service <------------------------------------ In Service <------------ At this point, MTP3 may begin sending data messages. George, et al [Page 17] Internet Draft SS7 MTP2-User Peer-to-Peer Adaptation Layer May 2000 4.2 Message Transmission and Reception Messages are transmitted using the Data Request primitive from MTP3 to M2UA. The diagram shows the case where the Link is In Service. The message is passed from MTP3 of the source to MTP3 of the destination. MTP3 M2UA SCTP SCTP M2UA MTP3 ---- ---- ---- ---- ---- ---- Message for transmission ------------> Send (Data Message) ------------> (SCTP sends message) Receive ------------> Received message ------------> 4.3 Link Status Indication If SCTP sends a Communication Lost primitive to M2UA, M2UA notifies MTP3 that the link is out of service. MTP3 responds in its usual way. MTP3 M2UA SCTP SCTP M2UA MTP3 ---- ---- ---- ---- ---- ---- Communication Lost <------------ Out of Service <------------ George, et al [Page 18] Internet Draft SS7 MTP2-User Peer-to-Peer Adaptation Layer May 2000 4.4 Link Status Message (Processor Outage) This example shows how M2UA responds to a local processor outage. M2UA sends a Link Status message to its peer. The peer M2UA notifies MTP3 of the outage. MTP3 can then follow the processor outage procedures in [2]. MTP3 M2UA SCTP SCTP M2UA MTP3 ---- ---- ---- ---- ---- ---- M2UA detects Local Processor Outage Link Status ------------> (SCTP sends message) Receive ------------> Remote Processor Outage ------------> George, et al [Page 19] Internet Draft SS7 MTP2-User Peer-to-Peer Adaptation Layer May 2000 4.5 Congestion Notification to Upper layer MTP3 layer expects notification of the link congestion. For example, this is accomplished by two messages 1) Link Congestion Onset 2) Link Congestion Abated. Congestion is assumed if M2UA layer notices repeated failures to send requests to SCTP (this is implementation dependent and it is assumed that the SEND Failure has an error code "life time expired"). Subsequently M2UA can start polling status of SCTP. If all the messages are successfully transmitted over a period of time (implementation dependent) then it is assumed that the congestion is abated. If the congestion condition should continue, the link will be taken out of service. In this case, it is possible to start the link changeover procedure. The US National version of SS7 has congestion levels. For US National SS7, the Indication primitive for Congestion Onset should report the congestion level. In the example below, M2UA has sent a message to SCTP. MTP3 M2UA SCTP SCTP M2UA MTP3 ---- ---- ---- ---- ---- ---- Implementation dependent indication of congestion <------------ Congestion Onset <------------ Status ------------> Status ------------> : : Status ------------> polled for certain time until congestion ceases - implementation dependent Congestion Abatement <------------ George, et al [Page 20] Internet Draft SS7 MTP2-User Peer-to-Peer Adaptation Layer May 2000 4.6 Link Deactivation The MTP3 can request that a SS7-IP link be taken out-of-service. It uses the Release Request message as shown below. MTP3 M2UA SCTP SCTP M2UA MTP3 ---- ---- ---- ---- ---- ---- Stop ------------> Terminate ------------> (SCTP performs its termination procedure) Communication Lost <------------ Out of Service <------------ 4.7 Link Changeover In this example, MTP3 performs a changeover because the link went out of service. MTP3 selects a different link for retransmitting the unacknowledged messages. Note that the sequence numbers and messages requested by MTP3 are sent from SCTP to M2UA in the Communication Lost primitive. George, et al [Page 21] Internet Draft SS7 MTP2-User Peer-to-Peer Adaptation Layer May 2000 MTP3 M2UA SCTP SCTP M2UA MTP3 ---- ---- ---- ---- ---- ---- Communication Lost <------------ Out of Service <------------ Retrieve BSN ------------> (M2UA locates first gap in received messages) Indicate BSN <------------ XCO (BSN) on another link ------------------------------------------------------------> Retrieve BSN <------------ Indicate BSN ------------> XCA (BSN) <------------------------------------------------------------ Retrieve FSN ------------> (M2UA locates first gap in acknowledgements) Retrieved Message <------------ Retrieved Message <------------ Retrieval Complete <------------ Send messages on another link. George, et al [Page 22] Internet Draft SS7 MTP2-User Peer-to-Peer Adaptation Layer May 2000 5. Security SCN adaptation layers rely on SCTP to provide security. 6. IANA Considerations The SCTP (and UDP/TCP) Registered User Port Number Assignment for M2UA is TBD. The value assigned by IANA for the Payload Protocol Identifier in the SCTP Payload Data chunk is M2UA Peer TBD The SCTP Payload Protocol Identifier is included in each SCTP Data chunk, to indicate which protocol the SCTP is carrying. This Payload Protocol Identifier is not directly used by SCTP but may be used by certain network entities to identify the type of information being carried in a Data chunk. The User Adaptation peer may use the Payload Protocol Identifier as a way of determining additional information about the data being presented to it by SCTP. 7. Acknowledgements The authors would like to thank Ian Rytina for his valuable comments and suggestions. 8. References [1] ITU-T Recommendation Q.700, 'Introduction To ITU-T Signalling System No. 7 (SS7)' [2] ITU-T Recommendation Q.701-Q.705, 'Signalling System No. 7 (SS7) - Message Transfer Part (MTP)' [3] Bellcore GR-246-CORE 'Bell Communications Research Specification of Signaling System Number 7', Volume 1, December 1995 [4] RFC 2719, Framework Architecture for Signaling Transport, October 1999 [5] Stream Control Transmission Protocol, draft-ietf-sigtran-sctp-09.txt, April 19, 2000 [6] SS7 MTP2-User Adaptation Layer, draft-ietf-sigtran-m2ua-00.txt, March 2000 [7] ITU-T Recommendation Q.2210, 'Message transfer part level 3 functions and messages using the services of ITU-T Recommendation Q.2140' George, et al [Page 23] Internet Draft SS7 MTP2-User Peer-to-Peer Adaptation Layer May 2000 9. Author's Addresses Tom George Tel: +1-972-519-3168 Alcatel USA EMail: tom.george@usa.alcatel.com 1000 Coit Road Plano, TX 75075 USA Ram Dantu, Ph.D. Tel: +1-972-234-6070 extension 211 IPmobile EMail: rdantu@ipmobile.com 1651 North Glenville, Suite 216 Richardson, TX 75081 USA Malleswar Kalla Tel: +1-973-829-5212 Telcordia Technologies EMail: kalla@research.telcordia.com MCC 1J211R 445 South Street Morristown, NJ 07960 USA Hanns Juergen Schwarzbauer Tel: +49-89-722-24236 SIEMENS AG HannsJuergen.Schwarzbauer@icn.siemens.de Hofmannstr. 51 81359 Munich Germany Greg Sidebottom Tel: +1-613-763-7305 Nortel Networks EMail: gregside@nortelnetworks.com 3685 Richmond Rd, Nepean, Ontario Canada K2H5B7 Ken Morneault Tel: +1-703-484-3323 Cisco Systems Inc. EMail: kmorneau@cisco.com 13615 Dulles Technology Drive Herndon, VA. 20171 USA This Internet Draft expires November 2000. George, et al [Page 24]