M2UA AND M2PA Submitted by, Srinivas Kommineni, Gayathri Sarivisetti, Vivek Nemarugommula. Agenda Introduction of SS7 M2UA M2PA Differences between M2UA and M2PA Conclusion References SS7 Protocols Common Channel Signaling System No. 7 (i.e., 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. Standard SS7 Layer Summary Message Transfer Part 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. MTP Level 2 ensures accurate end-to-end transmission of a message across a signaling link. Level 2 implements flow control, message sequence validation, and error checking. MTP Level 3 provides message routing between signaling points in the SS7 network. MTP Level 3 re-routes traffic away from failed links and signaling points and controls traffic when congestion occurs. MTP Level 3 is equivalent to the OSI Network Layer. SCCP & TCAP Signaling Connection Control Part (SCCP):SCCP is used as the transport layer for TCAP-based services. SCCP provides global title translation (GTT) capabilities above MTP Level 3. TCAP supports the exchange of non-circuit related data between applications across the SS7 network using the SCCP connectionless service. SS7 Classic The term SS7 classic differentiates between SS7 over IP and narrowband 64-kilobit SS7. SS7 classic is signaling for call delivery that follows a separate physical path from the bearer channel to set up calls. Evolution to SS7 over IP A Signaling Transport (sigtran) working group is focusing on how the existing SS7 protocol might run over IP. The first step is converting elements—such as simple control transport protocol (SCTP) to run directly over IP, thus replacing transmission control protocol (TCP) and user datagram protocol (UDP) to provide a reliable transport for signaling in the telephony networks. Uses of SS7 Network 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 efficient and secure worldwide telecommunications Introduction (M2UA) M2UA is a protocol for transporting SS7 MTP2-User signaling e.g., MTP3 messages over IP using the services of the Stream Control Transmission Protocol (SCTP). The M2UA protocol is the layer between SCTP and MTP3 that separates the physical SS7 termination from the actual signaling point within the network. M2UA Overview M2UA deployments consist of 2 entities, the client and the server. The server provides physical SS7 termination and communicates with the client over an SCTP association using IP. The client houses the MTP3 and thus is the point code addressable element within the SS7 network. M2UA in the SG to MGC Application Architecture of M2UA Common Message Header M2UA Message Header Applications M2UA serves several purposes. The first purpose is to provide a mechanism for the transport of SS7 MTP2 user signaling (e.g., MTP3 messages) over IP using SCTP. The second purpose is to allow remote placement of SS7 link terminations and back haul SS7 traffic to a centralized point in the network. Services Provided by the M2UA Adaptation Layer The SS7 MTP3/MTP2(MTP2-User) interface is retained at the termination point in the IP network, so that the M2UA protocol layer is required to provide the equivalent set of services to its users as provided by the MTP Level 2 to MTP Level 3. Support for MTP Level 2 / MTP Level 3 interface boundary Support for communication between Layer Management modules on SG and MGC Support for management of active associations between SG and MGC Functions Provided by the M2UA Layer Mapping Flow Control / Congestion SCTP Stream Management Seamless SS7 Network Management Interworking Active Association Control Security M2UA is designed to carry signaling messages for telephony services. As such, M2UA MUST involve the security needs of several parties: the end users of the services; the network providers and the applications involved. As a transport protocol, M2UA has the following security objectives: * Availability of reliable and timely user data transport. * Integrity of user data transport. * Confidentiality of user data. Threats * Blind Denial of Service Attacks * Flooding * Masquerade * Improper Monopolization of Services When the network in which M2UA runs in involves more than one party, it MAY NOT be reasonable to expect that all parties have implemented security in a sufficient manner. In such a case, it is recommended that IPSEC is used to ensure confidentiality of user payload. M2PA-Message Transport protocol peer-to-peer adaptation layer M2PA is the peer-to-peer equivalent of M2UA. M2PA allows communication between SS7 systems over IP rather than T-1 or E-1 TDM links. An M2PA link may be used in place of an MTP2 link, removing the need for dedicated and expensive SS7 hardware. The M2PA protocol is the layer between SCTP and MTP Level 3. M2PA provides a means for peer MTP3 layers in SGs to communicate directly, it extends the reach of SS7 over the IP network. Role of M2PA in Evolution to SS7 over IP M2PA allows the classical SS7 link to be replaced by SS7 over IP while maintaining the SS7 link topology. Purpose of M2PA Provides a mechanism for the transport of SS7 MTP2 user signaling (e.g., MTP3 messages) over IP using SCTP. Enables seamless operation between MTP2 user peers in the SS7 and IP space. M2PA Symmetrical Peer-to-Peer Architecture M2PA Symmetrical Peer-to-Peer Architecture MTP3 is adapted to the SCTP layer using M2PA. All primitives between MTP3 and MTP2 are supported by M2PA. Architecture of M2PA in a Signaling Gateway M2PA in IP Signaling Gateway Architecture of M2PA in a Signaling Gateway SG is an IPSP that is equipped with both traditional SS7 and IP network connections. Architecture is applicable for an SG to SG connection, used to bridge SS7 network islands. SG and the IPSP communicate through an IP link using the M2PA protocol. Messages sent from the SEP to the IPSP (and vice versa) are routed by the SG. MTP3 is present on each SG to provide routing and management of the MTP2/M2PA links. Because of the presence of MTP3, each SG would require its own SS7 point code. M2PA has no knowledge of the upper SS7 layer. M2PA in IP Signaling Gateway The IPSP's MTP3 uses its underlying M2PA as a replacement for MTP2. Communication between the two layers MTP3/M2PA is defined by the same primitives as in SS7 MTP3/MTP2. M2PA uses the SCTP association as an SS7 link. The M2PA/SCTP/IP stack can be used in place of an MTP2/MTP1 stack. Functions Provided by M2PA MTP2 Functionality: M2PA provides MTP2 functionality that is not provided by SCTP; thus, together M2PA and SCTP provide functionality similar to that of MTP2. SCTP provides reliable, sequenced delivery of messages. M2PA functionality includes: Data retrieval to support the MTP3 changeover procedure. Reporting of link status changes to MTP3. Processor outage procedure. Link alignment procedure. SCTP Association Management SCTP allows a user-specified number of streams to be opened during initialization. Responsibility of M2PA to ensure proper management of the streams. M2PA uses two streams in each direction for each association. - Stream 0 is designated for Link Status messages. - Stream 1 is designated for User Data messages, as well as Link Status messages that must remain in sequence with the User Data messages. Separating results in M2PA to prioritize the messages in a manner similar to MTP2. M2PA Association State Transition Diagram Description of M2PA Association states IDLE: State of the association during power up initialization ASSOCIATING: M2PA is attempting to establish an SCTP association. ESTABLISHED: SCTP association is established. M2PA Link State Control M2PA link moves from one state to another in response to various events. The events that may result in a change of state include: - MTP3 primitive requests - Receipt of messages from the peer M2PA - Expiration of timers - SCTP notifications M2PA Applications M2PA Applications M2PA used in SS7 offloading applications Communication between node SEP1 and SEP2 is done via two SGs. Both SEP1 and SEP2 are connected to two different Signaling Gateways via SS7 interface. These Signaling Gateways are connected to each other via SIGTRAN (M2Pa + SCTP) and acts as STP Nodes. Signaling messages from SEP1 and SEP2 are passed via these two Signaling Gateways. This application can be termed as SS7 offload. M2PA used in IP based signaling points In this case Signaling Points are connected to each other using IP network. These IP based signaling points (IPSP) uses M2PA links instead of MTP2 links. These IP bases signaling points can also connect to signaling points in SS7 network, via M2PA based Signaling Gateway. Services provided by M2PA M2PA receives the primitives sent from MTP3 to its lower layer. M2PA processes these primitives or maps them to appropriate primitives at the M2PA/SCTP interface. Also M2PA sends primitives to MTP3 similar to those used in the MTP3/MTP2 interface. Types of messages Message Signal Units (MSUs) Link Status Signal Units (LSSUs) Fill-In Signal Units (FISUs) Types of messages (contd..) MSUs originate at a higher level than MTP2, and are destined for a peer at another node. M2PA passes these messages from MTP3 to SCTP as data for transport across a link. These are called User Data messages in M2PA. LSSUs allow peer MTP2 layers to exchange status information. Analogous messages are needed for M2PA. The Link Status message serves this purpose. FISUs are transmitted continuously when no other signal units are waiting to be sent. FISUs also carry acknowledgement of messages. Since an IP network is a shared resource, it would be undesirable to have a message type that is sent continuously as is the case with FISUs. Furthermore, SCTP does not require its upper layer to continuously transmit messages. Therefore, M2PA does not provide a protocol data unit like the FISU. The M2PA User Data message is used to carry acknowledgement of messages. If M2PA needs to acknowledge a message, and it has no MTP3 message of its own to send, an empty User Data message can be sent. M2PA Procedures Messages passed between MTP3 and M2PA are the same as those passed between MTP3 and MTP2. M2PA interprets messages from MTP3 and sends the appropriate message to SCTP. Likewise, messages from SCTP are used to generate a meaningful message to MTP3. LINK Initialization – Alignment An example of the message flow used to bring an SS7 link in service is shown The purposes of the alignment procedure are: (1) To provide a handshaking procedure so that both endpoints are prepared to send SS7 traffic, and to prevent traffic from being sent before the other end is ready. (2) To verify that the SCTP association is suitable for use as an SS7 link. Link Initialization - Alignment Link Initialization If SCTP fails to establish the association, and M2PA has received a Start Request from its MTP3, then M2PA SHALL report to MTP3 that the link is out of service. The Link Status Out of Service message replaces the SIOS message of MTP2 After the association is established, M2PA SHALL send a Link Status Out of Service message to its peer. Prior to the beginning of alignment, M2PA MAY send additional Link Status Out of Service messages. M2PA MAY send additional Link Status Alignment until it receives Link Status Alignment, Link Status Proving Normal, or Link Status Proving Emergency from the peer. If proving is performed, then during the proving period (i.e., after M2PA starts the proving period timer T4), M2PA SHALL send Link Status Proving messages to its peer at an interval defined by the protocol parameter Proving_Interval The Link Status Ready message is used to verify that both ends have completed proving. When M2PA starts timer T1, it SHALL send a Link Status Ready message to its peer in the case where MTP2 would send a FISU after proving is complete. Link Initialization - Proving Message Transmission and Reception Link Initialization – In Service Messages are transmitted using the Data Request primitive from MTP3 to M2PA. The message is passed from MTP3 of the source to MTP3 of the destination. Link Status Indication If SCTP sends a Communication Lost primitive to M2PA, M2PA notifies MTP3 that the link is out of service. MTP3 responds in its usual way. Processor Outage The Link Status Processor Outage message replaces the SIPO message of MTP2. M2PA SHALL send a Link Status Processor Outage message to its peer at the beginning of a processor outage condition where MTP2 would send SIPO. M2PA MAY send additional Link Status Processor Outage messages as long as that condition persists. M2PA sends a Link Status message to its peer. The peer M2PA notifies MTP3 of the outage. MTP3 can then follow the processor outage procedures. When the local processor outage condition ends, M2PA SHALL send a Link Status Processor Recovered message to its peer on the User Data stream. This message is used to signal the end of the processor outage condition, instead of an MSU or FISU, as is used in MTP2. Upon receiving the Link Status Processor Recovered message, the M2PA in RPO SHALL respond with a Link Status Ready message on the User Data stream. When M2PA experiences a local processor outage, it MAY put the link out of service by sending a Link Status Out of Service message, if this is allowed by the applicable MTP2 standard Processor Outage Flow control M2PA SHALL send a Link Status Busy message to its peer at the beginning of a receive congestion condition. M2PA MAY send additional Link Status Busy messages as long as that condition persists. When the condition ends, M2PA SHALL send a Link Status Busy Ended message to its peer When the peer M2PA receives the first Link Status Busy message, it SHALL start the Remote Congestion timer T6 if there are messages in the retransmission buffer awaiting acknowledgement (i.e., T7 is running). M2PA SHALL stop the T7 timer if it is running. Additional Link Status Busy messages received while T6 is running do not cause T6 to be reset and do not cause T7 to be started. While T6 is running, T7 SHALL NOT be started. When the peer M2PA receives the Link Status Busy Ended message and T6 has not expired, it SHALL stop T6 (if T6 is running) and start T7 (if there are messages awaiting acknowledgement in the retransmission buffer). The peer M2PA SHOULD continue receiving and acknowledging messages while the other end is busy, but MUST NOT send User Data messages after receiving Link Status Busy and before receiving Link Status Busy Ended. Flow Control Level 2 Flow Control- Congestion Ceases Level 2 Flow Control-Timer T6 Expires MTP3 Signaling Link Congestion M2PA SHALL detect transmit congestion in its buffers according to the requirements for signaling link transmit congestion in MTP3 M2PA notifies MTP3 of congestion onset and abatement. The notification includes the congestion level, if there are levels of congestion defined. Link Deactivation •MTP3 can request that a link be taken out of service. •M2PA SHALL send a Link Status Out of Service message to its peer at the beginning of a condition where MTP2 would send SIOS. M2PA MAY send additional Link Status Out of Service messages as long as that condition persists. Link Changeover The objective of the changeover is to ensure that signaling traffic carried by the unavailable signaling link is diverted to the alternative signaling links as quickly as possible while avoiding message loss, duplication, or mis-sequencing. MTP3 performs a changeover because the link went out of service. MTP3 selects a different link to retransmit the unacknowledged and unsent messages. MTP2's Forward and Backward Sequence Numbers are only seven bits long. Hence, it is necessary for MTP3 to accommodate the larger sequence numbers. 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. If M2PA receives a Retrieval Request and FSNC request from MTP3, M2PA SHALL retrieve from its buffers and deliver to MTP3 BSNT - Backward Sequence Number to be Transmitted FSNC - Forward Sequence Number of last message accepted by remote level 2 For emergency changeover, MTP3 retrieves only the unsent messages for transmission on the alternate links. If M2PA receives a Retrieval Request and FSNC request with no FSNC value, or with an invalid FSNC, then M2PA SHALL retrieve from its buffers and deliver to MTP3. Link Changeover Security Issues M2PA is designed to carry signaling messages for telephony services. As such, M2PA MUST involve the security needs of several parties: - the end users of the services - the network providers - the applications involved M2PA Protocol Extensions This protocol may be extended through IANA (Internet Assigned Numbers Authority) in three ways: - through definition of additional message classes, - through definition of additional message types, and - through definition of additional message parameters. Differences between M2PA and M2UA M2PA: IPSP processes MTP3/MTP2 primitives. M2UA: MGC transports MTP3/MTP2 primitives between the SG's MTP2 and the MGC's MTP3 (via the NIF) for processing. M2PA: SG-IPSP connection is an SS7 link. M2UA: SG-MGC connection is not an SS7 link. It is an extension of MTP to a remote entity. M2PA: SG is an SS7 node with a point code. M2UA: SG is not an SS7 node and has no point code. M2PA: SG can have upper SS7 layers, e.g., SCCP. M2UA: SG does not have upper SS7 layers since it has no MTP3. M2PA: relies on MTP3 for management procedures. M2UA: uses M2UA management procedures. M2PA and M2UA similarities Both transport MTP3 messages. Both present an MTP2 upper interface to MTP3. Specification Issues In M2PA/SCTP, there is no mechanism for immediately stopping acknowledgement of incoming messages. No Link Status Out of Service message - If M2PA keeps an association up when the link is out of service, there should be a Link Status Out of Service message. M2PA could then inform its peer that it is in the Out of Service state. M2PA draft does not give clear advice on when to abort an association because of poor association performance. Benefits of SS7oIP reduced infrastructure costs. enhanced efficiency. new opportunities to deploy revenuegenerating applications and services. Conclusions The goal of SS7 is to provide a signaling network, and performance characteristics to facilitate communication between carrier grade network elements in circuit switched and mobile networks. The purpose is to provide a mechanism for the transport of SS7 MTP2 user signaling (e.g., MTP3 messages) over IP using SCTP. M2PA provides MTP2 functionality that is not provided by SCTP; thus, together M2PA and SCTP provide functionality similar to that of MTP2. M2PA interprets messages from MTP3 and sends the appropriate message to SCTP. Likewise, messages from SCTP are used to generate a meaningful message to MTP3. Questions 1. Differences between M2UA and M2PA? - Refer slide # 57. 2. What functions does M2PA support? a.) seamless operation of MTP3 protocol peers over an IP network connection. b.) The MTP2/MTP3 interface boundary, management of SCTP transport associations, and traffic instead of MTP2 Links. c.) Asynchronous reporting of status changes to management. 3. Services Provided by the M2UA Adaptation Layer ? - Refer slide # 17. References http://www.hssworld.com/voip/stacks/sigtran/Sigtran_M2PA/overview.ht m#m2pa http://www.protocols.com/pbook/sigtran.htm http://www.commsdesign.com/design_corner/showArticle.jhtml?articleID =16502464 http://www.analogzone.com/nett0105.pdf http://www.zytrax.com/tech/ss7/sigtran_intro.html http://www.faqs.org/ftp/rfc/pdf/rfc4165.txt.pdf http://quimby.gnus.org/internet-drafts/draft-george-sigtran-m2pa-interop00.txt http://community.roxen.com/developers/idocs/rfc/rfc4165.html http://www.pt.com/tutorials/iptelephony/tutorial_voip_mtp.html http://www.ietf.org/rfc/rfc3331.txt http://www.ulticom.com/html/products/sigtran/m2ua.asp