draft-ietf-sigtran-m2pa-03.txt   draft-ietf-sigtran-m2pa-04.txt 
skipping to change at page 1, line 14 skipping to change at page 1, line 14
Ram Dantu Ram Dantu
Cisco Systems Cisco Systems
Malleswar Kalla Malleswar Kalla
Telcordia Telcordia
Hanns Juergen Schwarzbauer Hanns Juergen Schwarzbauer
Siemens Siemens
Greg Sidebottom Greg Sidebottom
Ken Morneault Ken Morneault
Cisco Systems Cisco Systems
Expires January 2002 July 20, 2001 Expires August 2002 February 28, 2002
SS7 MTP2-User Peer-to-Peer Adaptation Layer SS7 MTP2-User Peer-to-Peer Adaptation Layer
<draft-ietf-sigtran-m2pa-03.txt> <draft-ietf-sigtran-m2pa-04.txt>
Status of This Memo Status of This Memo
This document is an Internet-Draft and is in full conformance with all This document is an Internet-Draft and is in full conformance with all
provisions of Section 10 of RFC 2026. Internet-Drafts are working provisions of Section 10 of RFC 2026. Internet-Drafts are working
documents of the Internet Engineering Task Force (IETF), its areas, documents of the Internet Engineering Task Force (IETF), its areas,
and its working groups. Note that other groups may also distribute and its working groups. Note that other groups may also distribute
working documents as Internet-Drafts. working documents as Internet-Drafts.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
skipping to change at page 3, line 13 skipping to change at page 3, line 13
signaling messages. signaling messages.
TABLE OF CONTENTS TABLE OF CONTENTS
1. Introduction............................................. 4 1. Introduction............................................. 4
1.1 Scope................................................. 4 1.1 Scope................................................. 4
1.2 Terminology........................................... 4 1.2 Terminology........................................... 4
1.3 Abbreviations......................................... 5 1.3 Abbreviations......................................... 5
1.4 Conventions........................................... 6 1.4 Conventions........................................... 6
1.5 Signaling Transport Architecture...................... 6 1.5 Signaling Transport Architecture...................... 6
1.6 Services Provided by M2PA............................. 8 1.6 Services Provided by M2PA............................. 9
1.7 Functions Provided by M2PA............................ 9 1.7 Functions Provided by M2PA............................10
1.8 Definition of the M2PA Boundaries.....................10 1.8 Definition of the M2PA Boundaries.....................11
1.9 Differences Between M2PA and M2UA.....................12 1.9 Differences Between M2PA and M2UA.....................12
2. Protocol Elements........................................14 2. Protocol Elements........................................14
2.1 Common Message Header.................................14 2.1 Common Message Header.................................14
2.2 M2PA Messages.........................................16 2.2 M2PA Header...........................................16
3. M2PA Link State Control..................................19 2.3 M2PA Messages.........................................16
4. Procedures...............................................22 3. M2PA Link State Control..................................20
4.1 Procedures to Support MTP2 Features...................22 4. Procedures...............................................24
4.2 Procedures to Support the MTP3/MTP2 Interface.........31 4.1 Procedures to Support MTP2 Features...................24
5. Examples of M2PA Procedures..............................36 4.2 Procedures to Support the MTP3/MTP2 Interface.........33
5.1 Link Initialization (Alignment).......................36 5. Examples of M2PA Procedures..............................37
5.2 Message Transmission and Reception....................39 5.1 Link Initialization (Alignment).......................38
5.3 Link Status Indication................................39 5.2 Message Transmission and Reception....................40
5.4 Link Status Message (Processor Outage)................40 5.3 Link Status Indication................................40
5.5 Level 2 Flow Control..................................41 5.4 Link Status Message (Processor Outage)................41
5.5 Level 2 Flow Control..................................42
5.6 MTP3 Signaling Link Congestion........................43 5.6 MTP3 Signaling Link Congestion........................43
5.7 Link Deactivation.....................................44 5.7 Link Deactivation.....................................43
5.8 Link Changeover.......................................45 5.8 Link Changeover.......................................44
6. Security.................................................47 6. Security.................................................45
6.1 Threats...............................................47 6.1 Threats...............................................45
6.2 Protecting Confidentiality............................47 6.2 Protecting Confidentiality............................45
7. IANA Considerations......................................48 7. IANA Considerations......................................46
7.1 SCTP Payload Protocol Identifier......................48 7.1 SCTP Payload Protocol Identifier......................46
7.2 M2PA Protocol Extensions..............................48 7.2 M2PA Protocol Extensions..............................46
8. Acknowledgements.........................................49 8. Acknowledgements.........................................47
9. References...............................................50 9. References...............................................48
10. Authors' Addresses.......................................51 10. Author's Addresses.......................................49
1. Introduction 1. Introduction
1.1 Scope 1.1 Scope
There is a need for Switched Circuit Network (SCN) signaling protocol There is a need for Switched Circuit Network (SCN) signaling protocol
delivery over an IP network. This includes message transfer between delivery over an IP network. This includes message transfer between
the following: the following:
- a Signaling Gateway (SG) and a Media Gateway Controller (MGC) - a Signaling Gateway (SG) and a Media Gateway Controller (MGC)
skipping to change at page 5, line 5 skipping to change at page 4, line 55
- Support asynchronous reporting of status changes to management. - Support asynchronous reporting of status changes to management.
1.2 Terminology 1.2 Terminology
MTP - The Message Transfer Part of the SS7 protocol [2] [3]. MTP - The Message Transfer Part of the SS7 protocol [2] [3].
MTP2 - MTP Level 2, the MTP signaling link layer. MTP2 - MTP Level 2, the MTP signaling link layer.
MTP3 - MTP Level 3, the MTP signaling network layer. MTP3 - MTP Level 3, the MTP signaling network layer.
MTP2-User - A protocol that normally uses the services of MTP Level MTP2-User - A protocol that normally uses the services of MTP
2. The only MTP2 user is MTP3. The MTP2 user is equivalent to the M2PA
user. Level 2. The only MTP2 user is MTP3. The MTP2 user is equivalent to
the M2PA user.
Signaling End Point (SEP) - A node in an SS7 network that originates Signaling End Point (SEP) - A node in an SS7 network that originates
or terminates signaling messages. One example is a central office or terminates signaling messages. One example is a central office
switch. switch.
IP Signaling Point (IPSP) - An SS7 Signaling Point with an IP IP Signaling Point (IPSP) - An SS7 Signaling Point with an IP
network connection used for SS7 over IP. network connection used for SS7 over IP.
Signaling Gateway (SG) - A signaling agent that receives/sends SCN Signaling Gateway (SG) - A signaling agent that receives/sends SCN
native signaling at the edge of the IP network [4]. In this context, native signaling at the edge of the IP network [4]. In this context,
skipping to change at page 5, line 31 skipping to change at page 5, line 30
Signaling Transfer Point (STP) - A node in an SS7 network that routes Signaling Transfer Point (STP) - A node in an SS7 network that routes
signaling messages based on their destination point code in the SS7 signaling messages based on their destination point code in the SS7
network. network.
Association - An association refers to a SCTP association [5]. The Association - An association refers to a SCTP association [5]. The
association provides the transport for MTP3 protocol data units and association provides the transport for MTP3 protocol data units and
M2PA adaptation layer peer messages. M2PA adaptation layer peer messages.
Network Byte Order - Most significant byte first, also known as "Big Network Byte Order - Most significant byte first, also known as "Big
Endian". See [15], Appendix B Data Transmission Order. Endian". See [14], Appendix B Data Transmission Order.
Stream - A stream refers to a SCTP stream [5]. Stream - A stream refers to a SCTP stream [5].
1.3 Abbreviations 1.3 Abbreviations
BSNT - Backward Sequence Number to be Transmitted BSNT - Backward Sequence Number to be Transmitted
FSNC - Forward Sequence Number of last message accepted by FSNC - Forward Sequence Number of last message accepted by
remote level 2 remote level 2
skipping to change at page 9, line 5 skipping to change at page 9, line 19
services to its user as provided by MTP Level 2 to MTP Level 3. services to its user as provided by MTP Level 2 to MTP Level 3.
These services are described in the following subsections. These services are described in the following subsections.
1.6.1 Support for MTP Level 2 / MTP Level 3 interface boundary 1.6.1 Support for MTP Level 2 / MTP Level 3 interface boundary
This interface is the same as the MTP2/MTP3 interface described in This interface is the same as the MTP2/MTP3 interface described in
[2], [3] and [10], with the addition of support for larger sequence [2], [3] and [10], with the addition of support for larger sequence
numbers in [3] and [7]. numbers in [3] and [7].
Because SCTP uses larger sequence numbers than MTP, the MTP3 Because M2PA uses larger sequence numbers than MTP2, the MTP3
Changeover procedure must use the Extended Changeover Order and Changeover procedure must use the Extended Changeover Order and
Extended Changeover Acknowledgment messages described in [7] and Extended Changeover Acknowledgment messages described in [7] and [3].
[3]. This will allow for use of the SCTP stream sequence numbers in
the changeover messages.
Also, the following MTP3/MTP2 primitives must use the larger sequence Also, the following MTP3/MTP2 primitives must use the larger sequence
numbers: numbers:
- BSNT Confirmation - BSNT Confirmation
- Retrieval Request and FSNC - Retrieval Request and FSNC
1.6.2 Support for peer-to-peer communication 1.6.2 Support for peer-to-peer communication
skipping to change at page 9, line 35 skipping to change at page 9, line 47
peer at another node. Likewise, M2PA passes these messages from MTP3 peer at another node. Likewise, M2PA passes these messages from MTP3
to SCTP as data for transport across a link. These are called User to SCTP as data for transport across a link. These are called User
Data messages in M2PA. Data messages in M2PA.
LSSUs allow peer MTP2 layers to exchange status information. Analogous LSSUs allow peer MTP2 layers to exchange status information. Analogous
messages are needed for M2PA. The Link Status message serves this messages are needed for M2PA. The Link Status message serves this
purpose. purpose.
FISUs are sent when no other signal units are waiting to be sent. This 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 purpose is served by the heartbeat messages in SCTP. FISUs also carry
acknowledgment of messages. This function is performed by acknowledgment of messages. This function is performed by the M2PA
SCTP. Therefore, it is unnecessary for M2PA to provide a protocol data User Data and Link Status messages. Therefore, it is unnecessary for
unit like the FISU. M2PA to provide a protocol data unit like the FISU. Furthermore, since
an IP network is a shared resource, it would be undesirable to have a
message type that is sent continuously as the FISUs are.
1.7 Functions Provided by M2PA 1.7 Functions Provided by M2PA
1.7.1 Support of MTP3/MTP2 Primitives 1.7.1 Support of MTP3/MTP2 Primitives
M2PA receives the primitives sent from MTP3 to its lower layer. M2PA M2PA receives the primitives sent from MTP3 to its lower layer. M2PA
processes these primitives or maps them to appropriate primitives at processes these primitives or maps them to appropriate primitives at
the M2PA/SCTP interface. Likewise, M2PA sends primitives to MTP3 like the M2PA/SCTP interface. Likewise, M2PA sends primitives to MTP3 like
those used in the MTP3/MTP2 interface. those used in the MTP3/MTP2 interface.
skipping to change at page 10, line 25 skipping to change at page 10, line 40
corresponding SCTP association. corresponding SCTP association.
1.7.4 SCTP Stream Management 1.7.4 SCTP Stream Management
SCTP allows a user-specified number of streams to be opened during the SCTP allows a user-specified number of streams to be opened during the
initialization. It is the responsibility of the M2PA layer to ensure initialization. It is the responsibility of the M2PA layer to ensure
proper management of the streams allowed within each association. proper management of the streams allowed within each association.
M2PA uses two streams in each direction for each association. Stream 0 M2PA uses two streams in each direction for each association. Stream 0
in each direction is designated for Link Status messages. Stream 1 is in each direction is designated for Link Status messages. Stream 1 is
designated for User Data and Proving Data messages. Separating the designated for User Data messages. Separating the Link Status and User
Link Status and User Data messages onto separate stream allows M2PA to Data messages onto separate streams allows M2PA to prioritize the
prioritize the messages in a manner similar to MTP2. messages in a manner similar to MTP2.
1.7.5 Retention of MTP3 in the SS7 Network 1.7.5 Retention of MTP3 in the SS7 Network
M2PA allows MTP3 to perform all of its Message Handling and Network M2PA allows MTP3 to perform all of its Message Handling and Network
Management functions with IPSPs as with other SS7 nodes. Management functions with IPSPs as with other SS7 nodes.
1.8 Definition of the M2PA Boundaries 1.8 Definition of the M2PA Boundaries
1.8.1 Definition of the M2PA / MTP Level 3 boundary 1.8.1 Definition of the M2PA / MTP Level 3 boundary
skipping to change at page 14, line 45 skipping to change at page 14, line 45
This section describes the format of various messages used in this This section describes the format of various messages used in this
protocol. protocol.
All fields in an M2PA message must be transmitted in the network byte All fields in an M2PA message must be transmitted in the network byte
order, i.e., most significant byte first, unless otherwise stated. order, i.e., most significant byte first, unless otherwise stated.
2.1 Common Message Header 2.1 Common Message Header
The protocol messages for M2PA require a message header structure The protocol messages for M2PA require a message header structure
which contains a version, message type and message length. The header which contains a version, message class, message type, and message
structure is shown in Figure 5. length. The header structure is shown in Figure 5.
0 1 2 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 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 Class | Message Type | | Version | Spare | Message Class | Message Type |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Message Length | | Message Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 5: Common Message Header Figure 5: Common Message Header
skipping to change at page 15, line 50 skipping to change at page 15, line 50
2.1.4 Message Type 2.1.4 Message Type
The following list contains the message types for the defined The following list contains the message types for the defined
messages. messages.
Value Message Type Value Message Type
----- ------------ ----- ------------
1 User Data 1 User Data
2 Link Status 2 Link Status
3 Proving Data
Other values are invalid. Other values are invalid.
2.1.4 Message Length 2.1.5 Message Length
The Message Length defines the length of the message in octets, The Message Length defines the length of the message in octets,
including the Common Header. including the Common Header.
2.2 M2PA Messages 2.2 M2PA Header
All protocol messages for M2PA require an M2PA-specific header. The
header structure is shown in Figure 6.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| BSN | FSN |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 6: M2PA-specific Message Header
2.2.1 Backward Sequence Number
This is the FSN of the message last received from the peer.
2.2.2 Forward Sequence Number
This is the M2PA sequence number of the User Data message being sent.
2.3 M2PA Messages
The following section defines the messages and parameter contents. An The following section defines the messages and parameter contents. An
M2PA message consists of a Common Message Header followed by the data M2PA message consists of a Common Message Header and M2PA Header
appropriate to the message. followed by the data appropriate to the message.
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
... ...
| Common Message Header | | Common Message Header |
... ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| M2PA-specific Message Header |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
... ...
| Message Data | | Message Data |
... ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
2.2.1 User Data 2.3.1 User Data
The User Data is the data sent from MTP3. The format for the User Data The User Data is the data sent from MTP3. The format for the User Data
message is as follows: message is as follows:
0 1 2 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 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
... ...
| Data | | Data |
... ...
skipping to change at page 17, line 21 skipping to change at page 17, line 47
- Forward Sequence Number (FSN) - Forward Sequence Number (FSN)
- Forward Indicator Bit (FIB) - Forward Indicator Bit (FIB)
- Check bits (CK) - Check bits (CK)
The Data field SHALL be transmitted in the byte order as defined by The Data field SHALL be transmitted in the byte order as defined by
MTP3. MTP3.
It is not necessary to put the message length in the LI octet as in It is not necessary to put the message length in the LI octet as in
MTP2. The LI octet is included because the two spare bits in the LI MTP2. The LI octet is included because the two spare bits in the LI
octet are used by MTP3 in at least one national version of SS7 to octet are used by MTP3 in at least one national version of SS7 to
carry MTP3 information. For example, the Japan TTC standard uses these carry MTP3 information. For example, the Japanese TTC standard uses
spare bits as an MTP3 Message Priority field. See [9], section 14 these spare bits as an MTP3 Message Priority field. See [9], section
"Common Characteristics of message signal unit formats", section 14.2 14 "Common Characteristics of message signal unit formats", section
(A) Priority Indicator (PRI). For versions of MTP that do not use 14.2 (A) Priority Indicator (PRI). For versions of MTP that do not use
these two bits, the entire octet is spare. these two bits, the entire octet is spare.
Therefore in M2PA the format of the LI octet is: Therefore in M2PA the format of the LI octet is:
0 0
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
| spare |PRI| (followed by SIO, SIF) |PRI| spare | (followed by SIO, SIF)
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
PRI - Priority used only in national MTP defined in [9]. PRI - Priority used only in national MTP defined in [9].
Spare for other MTP versions. Spare for other MTP versions.
Since the LI octet is not used for a message length, there is no need Since the LI octet is not used for a message length, there is no need
to support the expanded LI field in [2], Q.703 Annex A. Therefore the to support the expanded LI field in [2], Q.703 Annex A. Therefore the
LI field in M2PA is always one octet. LI field in M2PA is always one octet.
Note: In the SS7 Recommendations, the format of the messages and Note: In the SS7 Recommendations, the format of the messages and
skipping to change at page 18, line 9 skipping to change at page 18, line 33
positioned to the right. The received SS7 fields are populated octet positioned to the right. The received SS7 fields are populated octet
by octet as received into the 4-octet word as shown below. by octet as received into the 4-octet word as shown below.
As an example, in the ANSI MTP protocol, the Data field format is As an example, in the ANSI MTP protocol, the Data field format is
shown below: shown below:
|MSB---------------------------------------------------------LSB| |MSB---------------------------------------------------------LSB|
0 1 2 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 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| spare |PRI| SIO | SIF octet | ... | |PRI| spare | SIO | SIF octet | ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
\ : \ \ : \
/ : / / : /
\ : \ \ : \
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ... | ... | ... | SIF octet | | ... | ... | ... | SIF octet |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Within each octet the Least Significant Bit (LSB) per the SS7 Within each octet the Least Significant Bit (LSB) per the SS7
Recommendations is to the right (e.g., bit 15 of SIO is the LSB). Recommendations is to the right (e.g., bit 15 of SIO is the LSB).
2.2.2 Link Status 2.3.2 Link Status
The MTP2 Link Status message can be sent between M2PA peers to The MTP2 Link Status message can be sent between M2PA peers to
indicate link status. This message performs a function similar to the indicate link status. This message performs a function similar to the
the Link Status Signal Unit in MTP2. Except as modified later in this the Link Status Signal Unit in MTP2. The format for the Link Status
section, the format for the Link Status message is as follows: message is as follows:
0 1 2 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 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| State | | State |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The valid values for State are shown in the following table. The valid values for State are shown in the following table.
Value Value
(decimal) Description (decimal) Description
--------- ----------- --------- -----------
1 Alignment 1 Alignment
2 Proving Normal 2 Proving Normal
3 Proving Emergency 3 Proving Emergency
4 Ready 4 Ready
5 Processor Outage 5 Processor Outage
6 Processor Outage Ended 6 Processor Outage Ended
7 Busy 7 Busy
8 Busy Ended 8 Busy Ended
9 Out of Service
10 In Service
2.2.3 Proving Data 2.3.2.1 Link Status Proving
The Proving Data message is used during the proving period. The format The Link Status Proving message may optionally carry additional
for the message is as follows. bytes. These bytes can be used to take SCTP through the slow start
period. If the optional bytes are used, the format for the message is
as follows.
0 1 2 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 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
... | State |
| Data | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
... | filler |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
:
:
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| filler |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
It is recommended that the length of the Data field be similar to the It is recommended that the length of the Link Status Proving message
size of the User Data messages that will be carried on the link. be similar to the size of the User Data messages that will be carried
on the link.
It is recommended that the Data field contain a number pattern which It is recommended that the filler field contain a number pattern which
varies among the Proving Data messages, and that will allow the SCTP varies among the Link Status Proving messages, and that will allow the
checksum to be used to verify the accuracy of transmission. SCTP checksum to be used to verify the accuracy of transmission.
3. M2PA Link State Control 3. M2PA Link State Control
The M2PA link moves from one state to another in response to various The M2PA link moves from one state to another in response to various
events. The events that may result in a change of state include: events. The events that may result in a change of state include:
- MTP3 primitive requests - MTP3 primitive requests
- SCTP notifications - SCTP notifications
- Receipt of Status messages from the peer M2PA - Receipt of Status messages from the peer M2PA
- Expiration of certain timers - Expiration of certain timers
Figure 6 illustrates state changes together with the causing events. Figure 7 illustrates state changes together with the causing events.
Note that some of the error conditions are not shown in the state Note that some of the error conditions are not shown in the state
diagram. diagram.
Following is a list of the M2PA Link States and a description of each. Following is a list of the M2PA Link States and a description of each.
IDLE - State of the link during power-up initialization. IDLE - State of the link during power-up initialization.
OOS - Out Of Service. Power-up initialization is complete. OOS - Out Of Service. Power-up initialization is complete.
AIP - Alignment In Progress. M2PA is attempting to exchange Alignment AIP - Alignment In Progress. M2PA is attempting to exchange Alignment
messages with its peer. messages with its peer.
PROVING - M2PA is sending Proving Data messages to its peer. PROVING - M2PA is sending Link Status Proving messages to its peer.
ALIGNED READY - Proving is complete. M2PA is waiting until peer ALIGNED READY - Proving is complete. M2PA is waiting until peer
completes proving. completes proving.
INS - In Service. Link is ready for traffic. INS - In Service. Link is ready for traffic.
RETRIEVAL - Link no longer carries traffic. M2PA is waiting for RETRIEVAL - Link no longer carries traffic. M2PA is waiting for
request for message retrieval from MTP3. request for message retrieval from MTP3.
+-----------+ +-----------+
| IDLE | | IDLE |
+-----------+ +-----------+
| |
| Power On | Power On
| |
| +--------------------------+ | +--------------------------+
| | (Associate) | | | (Associate) |
V V | V V |
+-----------+ | +-----------+ |
+------>| OOS |<--+ | +----------------------->| OOS |<--+ |
| +-----------+ | Link Configured | | +-----------+ | Link Configured |
| | | | (Associate) | | | | | (Associate) |
| | +-----+ | | | +-----+ |
| | | | | |
| | MTP3 Start | | | MTP3 Start |
| MTP3 Stop | | | | |
| V | | V |
| +-----------+ | | +-----------+ |
+<------| AIP |----------------------->+ +<-----------------------| AIP |----------------------->+
| +-----------+ SCTP Comm Error | | MTP3 Stop +-----------+ SCTP Comm Error |
| | OR SCTP Comm Lost | | OR T1 Expiry | OR SCTP Comm Lost |
| | OR T1 Expiry | | | |
| | | | | |
| | Receive LS Alignment | | | Receive LS Alignment |
| | OR LS Proving | | | OR LS Proving |
| MTP3 Stop | | | | |
| V | | V |
| +-----------+ | | +-----------+ |
+<------| PROVING |----------------------->+ +<-----------------------| PROVING |----------------------->+
| +-----------+ SCTP Comm Error | | MTP3 Stop +-----------+ SCTP Comm Error |
| | OR SCTP Comm Lost | | OR Receive LS OOS | OR SCTP Comm Lost |
| | | | | |
| | T2 Expiry | | | T2 Expiry |
| MTP3 Stop | | | | |
| V | | V |
| +-----------+ | | +-----------+ |
+<------| ALIGNED | | | | ALIGNED | |
| READY |----------------------->+ +<-----------------------| READY |----------------------->+
+-----------+ | | MTP3 Stop +-----------+ SCTP Comm Error
| SCTP Comm Error | | OR T3 Expiry | OR SCTP Comm Lost
| OR SCTP Comm Lost | | OR Receive LS OOS |
| OR T3 Expiry |
| | | |
| Receive LS Proving Complete | | | Receive LS Ready
| OR Receive User Data | | | OR Receive User Data
| | | |
V | | V
+-----------+ | | +-----------+
| INS | | | | INS |
+-----------+ | | +-----------+
| | | |
| | | |
| | | |
| | | |
| | | |
| MTP3 Stop | | | MTP3 Stop
| OR SCTP Comm Error | | | OR Receive LS OOS
| OR SCTP Comm Lost | | | OR SCTP Comm Error
| OR T6 Expiry | | | OR SCTP Comm Lost
| | OR T6 Expiry
| | | |
V | | V
+-----------+ | | +-----------+
| RETRIEVAL |----------------------->+ +<-----------------------| RETRIEVAL |
+-----------+ Retrieval Complete Retrieval Complete +-----------+
OR MTP3 Start OR MTP3 Start
Figure 6: M2PA Link State Transition Diagram Figure 7: M2PA Link State Transition Diagram
Figure 7 illustrates state changes in the M2PA management of the SCTP Figure 8 illustrates state changes in the M2PA management of the SCTP
association together with the causing events. Note that some of the association together with the causing events. Note that some of the
error conditions are not shown in the state diagram. error conditions are not shown in the state diagram.
Following is a list of the M2PA Association States and a description Following is a list of the M2PA Association States and a description
of each. of each.
IDLE - State of the association during power-up initialization. IDLE - State of the association during power-up initialization.
ASSOCIATE - M2PA is attempting to establish an SCTP association. ASSOCIATE - M2PA is attempting to establish an SCTP association.
ESTABLISHED - SCTP association is established. ESTABLISHED - SCTP association is established.
+-----------+ +-----------+
+------------------->| IDLE | | IDLE |
| +-----------+ +-----------+
|
| Associate
| (Issue SCTP associate)
|
| +----------------------+
| | (Issue SCTP |
V V associate) |
+-----------+ |
| ASSOCIATE |------------------->+
+-----------+ SCTP Comm Error |
| | | |
| (Issue SCTP | Associate
| Abort) | (Issue SCTP associate)
| | | |
| | +----------------------+ | SCTP Comm Up |
| | | (Issue SCTP | | |
| V V associate) | V |
| Abort +-----------+ | +-------------+ |
+<-------------------| ASSOCIATE |------------------->+ | ESTABLISHED |----------------->+
| +-----------+ SCTP Comm Error |
| | |
| | |
| | SCTP Comm Up |
| | |
| V |
| Abort +-------------+ |
+<-------------------| ESTABLISHED |----------------->+
+-------------+ SCTP Comm Error +-------------+ SCTP Comm Error
OR SCTP Comm Lost OR SCTP Comm Lost
Figure 7: M2PA Association State Transition Diagram Figure 8: M2PA Association State Transition Diagram
4. Procedures 4. Procedures
4.1 Procedures to Support MTP2 Features 4.1 Procedures to Support MTP2 Features
4.1.1 Signal Unit Format, Delimitation, Acceptance 4.1.1 Signal Unit Format, Delimitation, Acceptance
Messages for transmission across the network must follow the format Messages for transmission across the network must follow the format
described in section 2. described in section 2.
SCTP provides reliable, in-sequence delivery. Therefore the related SCTP provides reliable, in-sequence delivery. Therefore the related
functionality of MTP2 is not needed. SCTP does not provide functions functionality of MTP2 is not needed. SCTP does not provide functions
related to Link State Control in MTP2. These functions must be related to Link State Control in MTP2. These functions must be
provided by M2PA. provided by M2PA.
4.1.2 MTP and SCTP Entities 4.1.2 MTP and SCTP Entities
This section describes how M2PA relates MTP and SCTP entities. This section describes how M2PA relates MTP and SCTP entities.
To prevent duplicate associations from being established, it must be Each MTP link corresponds to an SCTP association. To prevent duplicate
decided in advance which endpoint initiates the establishment of the associations from being established, it is recommended that each
association. In a pair of endpoints, the endpoint that initiates the endpoint know the IP address and port number of both endpoints. SCTP
establishment of the association is called the client. The other prevents two associations with the same IP addresses and port numbers
endpoint is the server. An endpoint may be a client in its from being established.
relationship with one endpoint, and a server in its relationship with
another endpoint. The designations of client and server are needed
only to decide which endpoint initiates the establishment of the
association. After that, the endpoints function as peers.
The client initiates the association using the server's IP address and
the M2PA well-known port number as the destination endpoint. If only
one association is to be established between these two IP addresses,
then the client should use its own IP address and the M2PA well-known
port number as the source endpoint.
If it is desirable to create multiple associations (for multiple
links) between the two IP addresses, the client uses a different local
port number for each association.
The client M2PA should establish the association for a link when the
link is configured for operation by MTP signaling management.
Whenever the association is terminated, the client M2PA should It is necessary for at least one of the endpoints to be listening on
establish the association as soon as the termination procedure is the port on which the other endpoint is trying to establish the
complete. association. Therefore, at least one of the port numbers should be the
M2PA registered port.
The client M2PA establishes an association by sending the SCTP If only one association is to be established between these two IP
ASSOCIATE primitive to SCTP. The client should attempt to establish addresses, then the association should be established using the M2PA
the association periodically until it is successful. registered port at each endpoint.
Once the association is established and MTP3 has issued its Start If it is desirable to create multiple associations (for multiple
Request, M2PA begins the alignment procedure. The M2PA at either end links) between the two IP addresses, different port numbers can be
may initiate the alignment procedure first. There is no client/server used for each association. Nevertheless, the M2PA registered port
distinction once the SCTP association is established. number should be used at one end of each association.
Each combination of client IP address/port and server IP address/port Each combination of IP address/port for the two endpoints (i.e., each
(i.e., each association) must be mapped to the same Signaling Link association) must be mapped to the same Signaling Link Code (SLC) at
Code (SLC) in the client and server, so that each endpoint knows which each endpoint, so that each endpoint knows which link is being created
link is being created at the time the SCTP association is at the time the SCTP association is established. However, M2PA does
established. However, M2PA does not do any processing based on the not do any processing based on the SLC.
SLC.
Following are examples of the relationships between associations and Following are examples of the relationships between associations and
links. Note that a link is an SCTP association identified by two links. Note that a link is an SCTP association identified by two
endpoints, in this case a client and server. Each endpoint is endpoints. Each endpoint is identified by an IP address and port
identified by an IP address and port number. Each association is number. Each association is mapped to an SLC.
mapped to an SLC.
Figure 8 shows a case with two IPSPs, each with two IP addresses. Two Figure 9 shows a case with two IPSPs, each with two IP addresses. Two
associations are the links that connect the two IPSPs. Since these associations are the links that connect the two IPSPs. Since these
links are in the same link set, they must have different SLCs. links are in the same link set, they must have different SLCs.
Table 1 shows the relationships in tabular form. Table 1 is only Table 1 shows the relationships in tabular form. Table 1 is only
conceptual. The actual method for mapping the SCTP associations to the conceptual. The actual method for mapping the SCTP associations to the
SLCs is implementation dependent. SLCs is implementation dependent.
IPSP X IPSP Y IPSP X IPSP Y
+-------------+ +-------------+ +-------------+ +-------------+
| | SCTP | | | | SCTP | |
| IPA | association 1 | IPB | | IPA | association 1 | IPB |
| port = PW +---------------+ port = PW | | port = PW +---------------+ port = PW |
| SLC = a | | SLC = a | | SLC = a | | SLC = a |
| Client | | Server | | | | |
| | | | | | | |
| | SCTP | | | | SCTP | |
| IPC | association 2 | IPD | | IPC | association 2 | IPD |
| port = PW +---------------+ port = PW | | port = PW +---------------+ port = PW |
| SLC = b | | SLC = b | | SLC = b | | SLC = b |
| Client | | Server | | | | |
| | | | | | | |
+-------------+ +-------------+ +-------------+ +-------------+
IPx = IP address IPx = IP address
PW = Well-known port number for M2PA PW = Registered port number for M2PA
Figure 8: Associations and Links - Figure 9: Associations and Links -
Two IPSPs with Two IP Addresses Each Two IPSPs with Two IP Addresses Each
+-------------+---------------------------------------+-----+ +-------------+---------------------------------------+-----+
| Association | Client | Server | SLC | | Association | IPSP X | IPSP Y | SLC |
| +------------+------+------------+------+ | | +------------+------+------------+------+ |
| | IP address | Port | IP address | Port | | | | IP address | Port | IP address | Port | |
+=============+============+======+============+======+=====+ +=============+============+======+============+======+=====+
| 1 | IPA | PW | IPB | PW | a | | 1 | IPA | PW | IPB | PW | a |
+-------------+------------+------+------------+------+-----+ +-------------+------------+------+------------+------+-----+
| 2 | IPC | PW | IPD | PW | b | | 2 | IPC | PW | IPD | PW | b |
+-------------+------------+------+------------+------+-----+ +-------------+------------+------+------------+------+-----+
Table 1: Associations and SLCs - Table 1: Associations and SLCs -
Two IPSPs with Two IP Addresses Each Two IPSPs with Two IP Addresses Each
Figure 9 and Table 2 show an example with three IPSPs. Note that in Figure 10 and Table 2 show an example with three IPSPs. Note that in
this example, the two links are in different link sets. Therefore, it this example, the two links are in different link sets. Therefore, it
is possible that the values a and b may be equal. is possible that the values a and b may be equal.
IPSP X IPSP Y IPSP X IPSP Y
+-------------+ +-------------+ +-------------+ +-------------+
| | SCTP | | | | SCTP | |
| IPA | association 1 | IPB | | IPA | association 1 | IPB |
| port = PW +---------------+ port = PW | | port = PW +---------------+ port = PW |
| SLC = a | | SLC = a | | SLC = a | | SLC = a |
| Client | | Server | | | | |
| | | | | | | |
| | SCTP | | | | SCTP | |
| IPC | association 2 | | | IPC | association 2 | |
| port = PW +-------+ | | | port = PW +-------+ | |
| SLC = b | | | | | SLC = b | | | |
| Client | | | | | | | | |
| | | | | | | | | |
+-------------+ | +-------------+ +-------------+ | +-------------+
| |
| |
| IPSP Z | IPSP Z
| |
| +-------------+ | +-------------+
| | | | | |
| | IPD | | | IPD |
+-------+ port = PW | +-------+ port = PW |
| SLC = b | | SLC = b |
| Server | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
+-------------+ +-------------+
IPx = IP address IPx = IP address
PW = Well-known port number for M2PA PW = Registered port number for M2PA
Figure 9: Associations and Links - Figure 10: Associations and Links -
One IPSP Connected to Two IPSPs One IPSP Connected to Two IPSPs
+-------------+---------------------------------------+-----+ +-------------+---------------------------------------+-----+
| Association | Client | Server | SLC | | Association | IPSP X | IPSP Y | SLC |
| +------------+------+------------+------+ | | +------------+------+------------+------+ |
| | IP address | Port | IP address | Port | | | | IP address | Port | IP address | Port | |
+=============+============+======+============+======+=====+ +=============+============+======+============+======+=====+
| 1 | IPA | PW | IPB | PW | a | | 1 | IPA | PW | IPB | PW | a |
+-------------+------------+------+------------+------+-----+ +-------------+------------+------+------------+------+-----+
| 2 | IPC | PW | IPD | PW | b | | 2 | IPC | PW | IPD | PW | b |
+-------------+------------+------+------------+------+-----+ +-------------+------------+------+------------+------+-----+
Table 2: Associations and SLCs - Table 2: Associations and SLCs -
One IPSP Connected to Two IPSPs One IPSP Connected to Two IPSPs
Figure 10 and Table 3 show two associations between the same Figure 11 and Table 3 show two associations between the same IP
endpoints. This is accomplished by using different port numbers for addresses. This is accomplished by using different port numbers for
each association at the client. each association at one endpoint.
IPSP X IPSP Y IPSP X IPSP Y
+-------------+ +-------------+ +-------------+ +-------------+
| | SCTP | | | | SCTP | |
| IPA | association 1 | IPB | | IPA | association 1 | IPB |
| port = P1 +---------------+ port = PW | | port = P1 +---------------+ port = PW |
| SLC = a | | SLC = a | | SLC = a | | SLC = a |
| Client | | Server | | | | |
| | | | | | | |
| | SCTP | | | | SCTP | |
| IPA | association 2 | IPB | | IPA | association 2 | IPB |
| port = PW +---------------+ port = PW | | port = PW +---------------+ port = PW |
| SLC = b | | SLC = b | | SLC = b | | SLC = b |
| Client | | Server | | | | |
| | | | | | | |
+-------------+ +-------------+ +-------------+ +-------------+
IPx = IP address IPx = IP address
P1 = Pre-selected port number for Client P1 = Pre-selected port number
PW = Well-known port number for M2PA PW = Registered port number for M2PA
Figure 10: Associations and SLCs - Figure 11: Associations and SLCs -
Multiple Associations Between Two IP Addresses Multiple Associations Between Two IP Addresses
+-------------+---------------------------------------+-----+ +-------------+---------------------------------------+-----+
| Association | Client | Server | SLC | | Association | IPSP X | IPSP Y | SLC |
| +------------+------+------------+------+ | | +------------+------+------------+------+ |
| | IP address | Port | IP address | Port | | | | IP address | Port | IP address | Port | |
+=============+============+======+============+======+=====+ +=============+============+======+============+======+=====+
| 1 | IPA | P1 | IPB | PW | a | | 1 | IPA | P1 | IPB | PW | a |
+-------------+------------+------+------------+------+-----+ +-------------+------------+------+------------+------+-----+
| 2 | IPA | PW | IPB | PW | b | | 2 | IPA | PW | IPB | PW | b |
+-------------+------------+------+------------+------+-----+ +-------------+------------+------+------------+------+-----+
Table 3: Associations and SLCs - Table 3: Associations and SLCs -
Multiple Associations Between Two IP Addresses Multiple Associations Between Two IP Addresses
The association shall contain two streams in each direction. Stream 0 The association shall contain two streams in each direction. Stream 0
is designated for Link Status messages. Stream 1 is designated for is designated for Link Status messages. Stream 1 is designated for
User Data and Proving Data messages. User Data messages.
4.1.3 Link Alignment 4.1.3 Link Alignment
The purposes of the alignment procedure are: The purposes of the alignment procedure are:
1. To provide a handshaking procedure so that both endpoints are 1. To provide a handshaking procedure so that both endpoints are
prepared to send SS7 traffic, and to prevent traffic from being prepared to send SS7 traffic, and to prevent traffic from being
sent before the other end is ready. sent before the other end is ready.
2. Verify that the SCTP association is suitable for use as an SS7 2. Verify that the SCTP association is suitable for use as an SS7
link. link.
3. Optionally, to overcome the SCTP slow start period. 3. Optionally, to overcome the SCTP slow start period.
Link alignment takes place after the association is established. If Link alignment takes place after the association is established. If
SCTP fails to establish the association, and M2PA has received a Start 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 Request from its MTP3, then M2PA shall report to MTP3 that the link is
out of service. out of service.
After the association is established, M2PA shall send a Link Status
Out of Service message to its peer.
Once the association is established and M2PA has received a Start Once the association is established and M2PA has received a Start
Request from MTP3, M2PA sends the Link Status Alignment message to its Request from MTP3, M2PA sends the Link Status Alignment message to its
peer. If M2PA has not already received the Link Status Alignment peer. If M2PA has not already received the Link Status Alignment
message from its peer, then M2PA starts timer T1. message from its peer, then M2PA starts timer T1.
(Note that if the remote M2PA has not received a Start Request from its (Note that if the remote M2PA has not received a Start Request from its
MTP3, it will not send the Link Status Alignment message to the MTP3, it will not send the Link Status Alignment message to the
local M2PA. Eventually timer T1 in the local M2PA will expire.) local M2PA. Eventually timer T1 in the local M2PA will expire.)
M2PA stops timer T1 when it has received the Link Status Alignment M2PA stops timer T1 when it has received the Link Status Alignment
message from its peer. message from its peer.
If timer T1 expires, then M2PA reports to MTP3 that the link is out of If timer T1 expires, then M2PA reports to MTP3 that the link is out of
service. M2PA should leave the association established. M2PA waits for service. M2PA sends Link Status Out of Service to its peer. M2PA
MTP3 to initiate the alignment procedure again. should leave the association established. M2PA waits for MTP3 to
initiate the alignment procedure again.
Note: Between the time M2PA sends Link Status Alignment to its peer
and receives Link Status Alignment from its peer, M2PA may receive
Link Status Out of Service from its peer. This message is
ignored. After receiving Link Status Alignment from the peer, receipt
of a Link Status Out of Service message causes M2PA to send Out of
Service to MTP3 and return to the Out of Serivce state.
When M2PA has both sent and received the Link Status Alignment When M2PA has both sent and received the Link Status Alignment
message, it has completed alignment and moves to the proving state. message, it has completed alignment and moves to the proving state.
M2PA starts the proving period timer T2. During the proving period, M2PA starts the proving period timer T2. During the proving period,
M2PA sends Link Status Proving messages to its peer at an interval M2PA sends Link Status Proving messages to its peer at an interval
defined by the protocol parameter Status_Interval. M2PA sends either defined by the protocol parameter Proving_Rate. M2PA sends either the
the Proving Normal or Proving Emergency message, according to the Proving Normal or Proving Emergency message, according to the
Emergency and Emergency Ceases commands from MTP3. M2PA uses the value Emergency and Emergency Ceases commands from MTP3. M2PA uses the value
of T2 corresponding to the Normal or Emergency state. However, if M2PA of T2 corresponding to the Normal or Emergency state. However, if M2PA
receives a Link Status Proving Emergency message from its peer, then receives a Link Status Proving Emergency message from its peer, then
M2PA shall use the Emergency value for T2. M2PA shall initiate the Emergency proving period value for T2, but it
shall continue to send the Proving message (Normal or Emergency)
Also while T2 is running, M2PA shall send Proving Data messages on the determined by its own upper layer MTP3.
User Data stream. These messages are sent at a rate equal to the
protocol parameter Proving_Data_Rate.
When the proving period timer T2 expires, M2PA shall determine the
association's performance as described in section 4.1.6 Error
Monitoring. If the association's performance is inadequate, M2PA shall
report to MTP3 that the link is out of service. M2PA should leave the
association established. M2PA waits for MTP3 to initiate the alignment
procedure again.
If the association's performance is satisfactory, M2PA shall start the When the proving period timer T2 expires, M2PA shall start the timer
timer T3 and send Link Status Ready messages to its peer at interval T3 and send Link Status Ready messages to its peer at interval
Status_Interval. These messages are used to verify that both ends have Status_Interval. These messages are used to verify that both ends have
completed proving. completed proving.
M2PA shall stop timer T3 when it receives a Link Status Proving M2PA shall stop timer T3 when it receives a Link Status Ready or User
Complete or User Data message from its peer. If timer T3 expires, then Data message from its peer. If timer T3 expires, then M2PA reports to
M2PA reports to MTP3 that the link is out of service. M2PA should MTP3 that the link is out of service. M2PA sends Link Status Out of
leave the association established. M2PA waits for MTP3 to initiate the Service to its peer. M2PA should leave the association
alignment procedure again. established. M2PA waits for MTP3 to initiate the alignment procedure
again.
Note that if M2PA has already received a Link Status Ready message Note that if M2PA has already received a Link Status Ready message
from its peer when it finishes checking the association's performance, from its peer when its timer T2 expires, there is no need to start
there is no need to start timer T3. M2PA can just send Link Status timer T3. M2PA can just send Link Status Ready to the peer and
Ready to the peer and continue along. continue along.
When all of the following are true: When all of the following are true:
(a) M2PA has received a Start Request from MTP3. (a) M2PA has received a Start Request from MTP3.
(b) M2PA's proving period T2 has expired. (b) M2PA's proving period T2 has expired.
(c) M2PA has sent a Link Status Ready to its peer. (c) M2PA has sent a Link Status Ready to its peer.
(d) M2PA has received a Link Status Ready OR User Data (d) M2PA has received a Link Status Ready OR User Data
message from its peer. message from its peer.
(e) M2PA has not received Link Status Out of Service from its peer
since it received Link Status Alignment.
then M2PA shall send Link In Service to its MTP3. then M2PA shall send Link In Service to its MTP3.
If there is a local processor outage condition, M2PA sends Link Status If there is a local processor outage condition during the alignment
Processor Outage to its peer. When the local processor outage procedure, M2PA sends Link Status Processor Outage to its peer. When
condition ends, then M2PA shall send Link Status Processor Outage the local processor outage condition ends, then M2PA shall send Link
Ended to its peer. M2PA shall attempt to complete the alignment Status Processor Outage Ended to its peer. M2PA shall attempt to
procedure during the local processor outage condition. complete the alignment procedure during the local processor outage
condition.
If M2PA receives a Link Status Processor Outage during alignment, and If M2PA receives a Link Status Processor Outage during alignment, and
M2PA had received a Start Request from its MTP3, M2PA shall report M2PA had received a Start Request from its MTP3, M2PA shall report
Remote Processor Outage to MTP3. Remote Processor Outage to MTP3. M2PA shall attempt to complete the
alignment procedure during the remote processor outage condition.
If M2PA receives a Stop command from its MTP3 during alignment, M2PA
shall send Link Status Out of Service to its peer and terminate the
alignment procedure.
Recommended values: Recommended values:
T1 Alignment - Range: 1-60 seconds Default: 10 seconds T1 Alignment - Range: 1-60 seconds Default: 10 seconds
T2 Proving - T2 Proving -
Normal - Range: 1-60 seconds Default: 10 seconds Normal - Range: 1-60 seconds Default: 10 seconds
Emergency - Range: 400-600 milliseconds Default: 500 milliseconds Emergency - Range: 400-600 milliseconds Default: 500 milliseconds
T3 Ready - Range: 1-60 seconds Default: 10 seconds T3 Ready - Range: 1-60 seconds Default: 10 seconds
Status_Interval - implementation dependent. Status_Interval - implementation dependent.
Proving_Data_Rate - implementation dependent. Proving_Rate - implementation dependent.
4.1.4 Processor Outage 4.1.4 Processor Outage
A processor outage occurs when M2PA cannot transfer messages because A processor outage occurs when M2PA cannot transfer messages because
of a condition at a higher layer than M2PA. of a condition at a higher layer than M2PA.
When M2PA detects a local processor outage, it sends a Link Status When M2PA detects a local processor outage, it sends a Link Status
message to its peer with status Processor Outage. M2PA shall also message to its peer with status Processor Outage. M2PA shall also
cease sending User Data messages to SCTP for transmission. cease sending User Data messages to SCTP for transmission. M2PA shall
stop receiving incoming messages from SCTP.
M2PA should periodically send a Link Status Processor Outage message M2PA should periodically send a Link Status Processor Outage message
as long as there is a local processor outage. as long as there is a local processor outage and the link is in
service. If the link is out of service, M2PA should locally mark that
it is in local processor outage.
The peer M2PA, upon receiving the Link Status Processor Outage The peer M2PA, upon receiving the Link Status Processor Outage
message, shall report Remote Processor Outage to its MTP3. The peer message, shall report Remote Processor Outage to its MTP3. The peer
M2PA ceases sending User Data messages. M2PA stops the Remote M2PA ceases sending User Data messages. M2PA stops the Remote
Congestion timer T6 if it is running. Congestion timer T6 (see section 4.1.5 Level 2 Flow Control) if it is
running.
MTP3 sends a Flush Buffers or Continue command to M2PA. When the MTP3 may send a Flush Buffers or Continue command to M2PA as part of
processor outage ceases, MTP3 sends a Local Processor Recovered its processor outage procedure (See section 4.2.4 Flush Buffers,
indication to M2PA. The local M2PA notifies its peer by sending a Link Continue). Alternatively, MTP3 may perform data retrieval as part of a
Status message with status Processor Outage Ended. The peer uses the changeover procedure.
Remote Processor Recovered Indication to notify its MTP3 that the
remote processor outage condition has ceased. When the processor outage ceases, MTP3 sends a Local Processor
Recovered indication to M2PA. The local M2PA notifies its peer by
sending a Link Status message with status Processor Outage Ended. The
peer uses the Remote Processor Recovered Indication to notify its MTP3
that the remote processor outage condition has ceased.
4.1.5 Level 2 Flow Control 4.1.5 Level 2 Flow Control
Notification of receive congestion from SCTP to M2PA is implementation The determination of receive congestion in M2PA is implementation
dependent. This section assumes that M2PA has some means of dependent.
determining when SCTP is in receive congestion, such as a receive
congestion notification from SCTP to M2PA. Since SCTP has its own
congestion control, the purpose of the M2PA level 2 flow control is to
monitor the association and decide if it should be aborted.
If M2PA determines that SCTP is in receive congestion for an If M2PA determines that it is in receive congestion for an
association, M2PA shall send a Link Status Busy message to its peer on association, M2PA shall send a Link Status Busy message to its peer on
that association. that association. M2PA shall continue to acknowledge incoming
messages.
M2PA should periodically send a Link Status Busy message as long as M2PA should periodically send a Link Status Busy message as long as
its SCTP is in receive congestion. it is in receive congestion.
M2PA shall continue transmitting messages while it is in receive
congestion.
When the peer M2PA receives the Link Status Busy message, it shall When the peer M2PA receives the Link Status Busy message, it shall
start the Remote Congestion timer T6. If timer T6 expires, M2PA shall start the Remote Congestion timer T6. If timer T6 expires, M2PA shall
use the ABORT primitive to end the association and take the link out take the link out of service.
of service.
The peer M2PA shall continue transmitting messages to SCTP while its
The peer M2PA shall cease transmitting messages to SCTP while its
T6 timer is running, i.e., while the other end is Busy. T6 timer is running, i.e., while the other end is Busy.
If M2PA determines that SCTP is no longer in receive congestion for If M2PA is no longer in receive congestion for the association, M2PA
the association, M2PA shall send a Link Status Busy Ended message to shall send a Link Status Busy Ended message to its peer on that
its peer on that association. association.
When the peer M2PA receives the Link Status Busy Ended message, it When the peer M2PA receives the Link Status Busy Ended message, it
shall stop timer T6. shall stop timer T6.
Recommended value of T6 is 1-6 seconds. Recommended value of T6 is 1-6 seconds.
4.1.6 Error Monitoring 4.1.6 Error Monitoring
If M2PA loses the SCTP association for a link, M2PA shall report to If M2PA loses the SCTP association for a link, M2PA shall report to
MTP3 that the link is out of service. MTP3 that the link is out of service.
As long as the SCTP association is up, M2PA shall regularly monitor
the association performance. It is recommended that M2PA use the
following data to determine the performance of the association:
- Smooth Round Trip Time (SRTT). This can be obtained from SCTP by
invoking the SCTP GETSRTTREPORT primitive.
- Frequency of SCTP retransmissions.
- Frequency of SCTP Gap Acknowledgements received.
If these values are not acceptable, the link is considered failed and
taken out of service.
The acceptable values of these data are implementation dependent.
The interval between successive checks of the performance data should
be a configurable parameter. Its value is implementation dependent.
4.1.7 Transmission and Reception Priorities 4.1.7 Transmission and Reception Priorities
In MTP, Link Status messages have priority over User Data messages In MTP, Link Status messages have priority over User Data messages
([2] Q.703, section 11.2). To achieve this in M2PA, M2PA shall send ([2] Q.703, section 11.2). To achieve this in M2PA, M2PA shall send
Link Status and User Data messages on separate streams in its SCTP Link Status and User Data messages on separate streams in its SCTP
association. All messages are sent using the ordered delivery option. association. All messages are sent using the ordered delivery option.
M2PA SHOULD give higher priority to Link Status messages than to User
Data messages when sending messages to SCTP.
M2PA SHOULD give higher priority to reading the Link Status stream M2PA SHOULD give higher priority to reading the Link Status stream
over the User Data stream. over the User Data stream.
M2PA SHOULD give higher priority to receiving notifications from SCTP M2PA SHOULD give higher priority to receiving notifications from SCTP
over reading either the Link Status stream or the User Data stream.
Implementation Note: If the SCTP implementation allows streams to have over reading either the Link Status stream or the User Data stream.
different priorities for sending messages, then M2PA SHOULD set the
Link Status stream to a higher priority than the User Data stream. See
[13] for a possible extension to SCTP to allow for stream priorities.
4.1.8 M2PA Version Control 4.1.8 M2PA Version Control
A node upgraded to a newer version of M2PA SHOULD support the older A node upgraded to a newer version of M2PA SHOULD support the older
versions used on other nodes with which it is communicating. If that versions used on other nodes with which it is communicating. If that
is the case, then alignment can proceed normally. is the case, then alignment can proceed normally.
In particular, it is recommended that for future modifications to this In particular, it is recommended that for future modifications to this
protocol: protocol:
skipping to change at page 31, line 53 skipping to change at page 33, line 55
Link Status and User Data messages shall be sent via SCTP on separate Link Status and User Data messages shall be sent via SCTP on separate
streams. streams.
When M2PA receives a User Data message from SCTP, M2PA passes the When M2PA receives a User Data message from SCTP, M2PA passes the
message to MTP3. message to MTP3.
If M2PA receives a message from SCTP with an invalid Message Class or If M2PA receives a message from SCTP with an invalid Message Class or
unsupported Message Type in the Common Message Header, M2PA shall unsupported Message Type in the Common Message Header, M2PA shall
discard the message. discard the message.
The first User Data message sent after the link is placed in service
is given a Forward Sequence Number (FSN) of 1.
The Forward Sequence Number of the header is incremented by 1 for each
User Data message sent. When the FSN reaches the maximum value, the
next FSN is 0.
For message types other than User Data, the Forward Sequence Number is
set to the FSN of the last User Data message sent.
The Backward Sequence Number is set to the FSN of the last User Data
message M2PA received from its peer. This serves as an M2PA-level
acknowledgement of the message. After the link is placed in service
and before a User Data message has been received, the BSN is set to 0.
When M2PA receives a message with Backward Sequence Number equal to
'n', it may remove all messages with Forward Sequence Number <= n from
its queue.
If M2PA receives a User Data message with an FSN that is out of order,
the message should be discarded.
M2PA may send acknowledgement of a received message in an outgoing
User Data or Link Status message.
Note that since SCTP provides reliable delivery and ordered delivery
within the stream, M2PA does not need to perform retransmissions.
4.2.2 Link activation and restoration 4.2.2 Link activation and restoration
When MTP3 requests that M2PA activate or restore a link by a Start When MTP3 requests that M2PA activate or restore a link by a Start
Request, M2PA shall follow the alignment procedure in section 4.1.3. Request, M2PA shall follow the alignment procedure in section 4.1.3.
4.2.3 Link deactivation 4.2.3 Link deactivation
When MTP3 requests that M2PA deactivate a link by a Stop command, M2PA When MTP3 requests that M2PA deactivate a link by a Stop command, M2PA
shall send an ABORT primitive to SCTP. shall send a Link Status Out of Service message to its peer.
The peer M2PA, upon receiving Link Status Out of Service, shall notify
its upper layer MTP3 that the link is out of service.
4.2.4 Flush Buffers, Continue 4.2.4 Flush Buffers, Continue
The Flush Buffers and Continue commands allow M2PA to resume normal The Flush Buffers and Continue commands allow M2PA to resume normal
operations (i.e., transmission of messages to SCTP and receiving operations (i.e., transmission of messages to SCTP and receiving
messages from SCTP) after a processor outage (local and/or remote) messages from SCTP) after a processor outage (local and/or remote)
ceases. ceases.
If M2PA receives a Flush Buffers command from MTP3, M2PA: If M2PA receives a Flush Buffers command from MTP3, M2PA:
skipping to change at page 32, line 34 skipping to change at page 35, line 16
(b) shall discard all messages currently waiting to be passed (b) shall discard all messages currently waiting to be passed
to MTP3. to MTP3.
If M2PA receives either a Flush Buffers or Continue command from MTP3, If M2PA receives either a Flush Buffers or Continue command from MTP3,
and the processor outage condition ceases, M2PA shall resume receiving and the processor outage condition ceases, M2PA shall resume receiving
and transmitting messages. and transmitting messages.
4.2.5 MTP3 Signaling Link Congestion 4.2.5 MTP3 Signaling Link Congestion
Notification of transmit congestion from SCTP to its upper layer M2PA shall detect transmit congestion in its buffers according to the
(M2PA) is implementation dependent. Nevertheless, M2PA should receive requirements for signaling link transmit congestion in [2] Q.704,
notification from SCTP adequate to allow MTP3 to meet its requirements section 3.8.
for signaling link transmit congestion in [2] Q.704, section 3.8.
M2PA shall use the Congestion Indication primitive to notify its upper M2PA shall use the Congestion Indication primitive to notify its upper
layer MTP3 of changes in the signaling link congestion status and the layer MTP3 of changes in the signaling link congestion status and the
signaling link discard status. For national networks with multiple signaling link discard status. For national networks with multiple
congestion threshold levels, M2PA shall notify MTP3 of the congestion congestion threshold levels, M2PA shall notify MTP3 of the congestion
and discard status levels. and discard status levels.
Note: M2PA does not discard messages because of transmit
congestion. Discarding of messages due to transmit congestion is
performed by MTP3.
4.2.6 Changeover 4.2.6 Changeover
The objective of the changeover is to ensure that signaling traffic The objective of the changeover is to ensure that signaling traffic
carried by the unavailable signaling link is diverted to the carried by the unavailable signaling link is diverted to the
alternative signaling link(s) as quickly as possible while avoiding alternative signaling link(s) as quickly as possible while avoiding
message loss, duplication, or mis-sequencing. For this purpose, the message loss, duplication, or mis-sequencing. For this purpose, the
changeover procedure includes data retrieval, which is performed changeover procedure includes data retrieval, which is performed
before opening the alternative signaling links to the diverted before opening the alternative signaling links to the diverted
traffic. Data retrieval consists of these steps: traffic. Data retrieval consists of these steps:
(1) buffer updating, i.e., identifying all those User Data (1) buffer updating, i.e., identifying all those User Data
messages in the retransmission buffer of the unavailable messages in the retransmission buffer of the unavailable
signaling link which have not been received by the far end signaling link which have not been received by the far end
SCTP, as well as untransmitted messages, and M2PA, as well as untransmitted messages, and
(2) transferring those messages to the transmission buffers of the (2) transferring those messages to the transmission buffers of the
alternate links. alternate links.
Note that only User Data messages are retrieved and transmitted over Note that only User Data messages are retrieved and transmitted over
the alternate links. Link Status messages shall not be retrieved and the alternate links. Link Status messages shall not be retrieved and
transmitted over the alternate links. References to stream sequence transmitted over the alternate links.
numbers in this section refer only to the User Data stream's stream
sequence numbers.
In order to support changeover in M2PA, 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 M2PA's Sequence Numbers are 16 bits long. MTP2's Forward and Backward
and Backward Sequence Numbers are only seven bits long. Hence it is Sequence Numbers are only seven bits long. Hence it is necessary for
necessary for MTP3 to accommodate the larger SSNs. This is done MTP3 to accommodate the larger sequence numbers. This is done through
through the use of the Extended Changeover Order (XCO) and Extended the use of the Extended Changeover Order (XCO) and Extended Changeover
Changeover Acknowledgement (XCA) messages instead of the Changeover Acknowledgement (XCA) messages instead of the Changeover Order (COO)
Order (COO) and Changeover Acknowledgement (COA) messages. The XCO and and Changeover Acknowledgement (COA) messages. The XCO and XCA
XCA messages are specified in Reference [7] section 9.8.1 and messages are specified in Reference [7] section 9.8.1 and Reference
Reference [3] T1.111.4, section 15.4. Only the XCO and XCA messages
from [7] or [3] are required. The SSN is placed in the XCO/XCA message
as explained in [7] and [3].
(Note that the Stream Sequence Numbers are used instead of the [3] T1.111.4, section 15.4. Only the XCO and XCA messages from [7] or
Transmission Sequence Numbers. The Transmission Sequence Numbers are [3] are required. The BSN is placed in the XCO/XCA message as
32 bits long, and therefore would not fit in the XCO and XCA explained in [7] and [3].
messages. Furthermore, TSNs do not number User Data messages
consecutively. TSNs also number Link Status and SCTP-originated
messages, which should not be retrieved during the changeover
procedure.)
Also, the following MTP3/MTP2 primitives must use the larger sequence Also, the following MTP3/MTP2 primitives must use the larger sequence
numbers: numbers:
- BSNT Confirmation - BSNT Confirmation
- Retrieval Request and FSNC - Retrieval Request and FSNC
For data retrieval, MTP3 requests the Backward Sequence Number to be For data retrieval, MTP3 requests the Backward Sequence Number to be
Transmitted (BSNT) from M2PA through the Retrieve BSNT Transmitted (BSNT) from M2PA through the Retrieve BSNT request. M2PA
request. Normally, SCTP receives messages in order, in which case the determines the Forward Sequence Number of the last User Data message
BSNT is the last message received by SCTP. However, because of received from the peer. This value is the BSNT. M2PA sends the BSNT
congestion or a failure condition, the sequence numbers of the
acknowledged messages may have gaps. In particular, the SCTP SACK
(selective acknowledgement message) message can have several of these
gaps. In this case, it is necessary to scan through these gaps and
find the sequence number before the first gap. This is the number
considered as the BSNT and communicated to MTP3. M2PA sends the BSNT
value to MTP3 in the BSNT confirmation. In the same way, the remote value to MTP3 in the BSNT confirmation. In the same way, the remote
end also detects its BSNT. The MTP3 layers exchange BSNT values end also detects its BSNT. The MTP3 layers exchange BSNT values
through the XCO and XCA messages. The BSNT received from the other end through the XCO and XCA messages. The BSNT received from the other end
is called the FSNC. When MTP3 receives the FSNC from the other end, is called the FSNC. When MTP3 receives the FSNC from the other end,
MTP3 retrieves all the unsent and unacknowledged messages starting MTP3 retrieves all the unsent and unacknowledged messages starting
with sequence number (FSNC + 1). This is accomplished through a with sequence number (FSNC + 1). This is accomplished through a
Retrieval Request and FSNC request. After all the messages are sent Retrieval Request and FSNC request. After all the messages are sent
from M2PA to MTP3, M2PA sends a Retrieval Complete indication to MTP3. from M2PA to MTP3, M2PA sends a Retrieval Complete indication to MTP3.
As an example of how the BSNT is determined, suppose the following If there are any messages on the M2PA or SCTP receive queues that have
SSNs had been received by SCTP on the Data Stream when it is time to not been acknowledged by M2PA, M2PA SHOULD discard these messages. The
do the changeover procedure: 1-10, 13, 14, 16. Then M2PA tells its peer will retransmit them on an alternate link. Any messages
upper layer that the last message it received (the BSNT) was 10. SCTP acknowledged by M2PA MUST NOT be discarded. These messages must be
has not delivered 13, 14, and 16 to M2PA because to do so would delivered to MTP3.
violate ordered delivery within the stream. The value of 10 is
transmitted to the remote end by MTP3 in the XCO/XCA message. So the
remote end will retransmit 11-16 on an alternate link.
If there are any messages on the SCTP receive queue, M2PA SHOULD
receive these messages and deliver them to MTP3. Note that SCTP does
not deliver incoming messages after the first gap (if any) in the
SSNs, since this would violate ordered delivery within the stream. In
the example above, this would mean that messages 1-10 SHOULD be
received. Otherwise, these unreceived messages might be lost, since
SCTP might have acknowledged them.
Note that the sequence numbers and messages requested by MTP3 may be
obtained by M2PA from SCTP via the Communication Lost primitive [5].
Retrieval of messages is an optional feature in SCTP that is required
by M2PA. To perform data retrieval, it is necessary that SCTP identify
the SSNs of the messages that M2PA retrieves. SCTP must retain the
messages for retrieval by MTP3/M2PA whenever an association is
aborted. SCTP must be able to return messages to M2PA so that M2PA can
perform retrieval for MTP3. There are various ways that this can be
implemented, such as:
(1) SCTP provides a way for M2PA to request retrieval of messages
for a specified stream and SSN(s).
(2) SCTP retrieves all messages and identifies the stream and SSN
of each message. M2PA then must select the appropriate messages
to pass up to MTP3.
M2PA must be able to respond to the BSNT request from MTP3. There are
various ways of implementing this, such as having SCTP provide the
BSNT.
It is helpful for M2PA to have access to the first and last SSN in
SCTP's transmission queue. This information could be used to determine
if the FSNC received from the remote end is a valid value.
If M2PA receives a Retrieve BSNT request from MTP3, M2PA shall respond If M2PA receives a Retrieve BSNT request from MTP3, M2PA shall respond
with the BSNT confirmation. The BSNT value is the SCTP stream sequence with the BSNT confirmation. The BSNT value is the Forward Sequence
number of the last message received by SCTP User Data stream before Number of the last User Data message received from the peer.
any gaps in the stream sequence numbers.
(Note that any messages received with a stream sequence number greater
than this BSNT value have been acknowledged by the receiving SCTP, but
have not been passed up to M2PA. These messages are discarded by the
receiving SCTP and are not delivered to the upper layer
M2PA. Therefore these messages should be retransmitted by the far end
on the alternate link.)
If M2PA receives a Retrieval Request and FSNC request from MTP3, M2PA If M2PA receives a Retrieval Request and FSNC request from MTP3, M2PA
shall retrieve from SCTP in order and deliver to MTP3: shall retrieve from its buffers in order and deliver to MTP3:
(a) any transmitted User Data messages beginning with the first (a) any transmitted User Data messages beginning with the first
unacknowledged message with stream sequence number greater unacknowledged message with FSN greater than FSNC.
than FSNC.
(b) any untransmitted User Data messages in SCTP.
(c) any untransmitted User Data messages M2PA has not delivered (b) any untransmitted User Data messages.
to SCTP for transmission.
Then M2PA shall send the Retrieval Complete indication to MTP3. Then M2PA shall send the Retrieval Complete indication to MTP3.
For emergency changeover, MTP3 retrieves only the unsent messages for For emergency changeover, MTP3 retrieves only the unsent messages for
transmission on the alternate link(s). If M2PA receives a Retrieval transmission on the alternate link(s). If M2PA receives a Retrieval
Request and FSNC request with no FSNC value, or with an invalid FSNC, Request and FSNC request with no FSNC value, or with an invalid FSNC,
then M2PA shall retrieve from SCTP in order and deliver to MTP3: then M2PA shall retrieve from its buffers in order and deliver to
MTP3:
(a) any untransmitted User Data messages in SCTP. (a) any untransmitted User Data messages.
(b) any untransmitted User Data messages M2PA has not delivered Then M2PA shall send the Retrieval Complete indication to MTP3.
to SCTP for transmission.
Note: For the Japanese version of MTP defined in [9], MTP3 retrieves
both unsent and unacknowleged messages for transmission on the
alternate link(s). In this version of MTP, 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 in order and deliver to
MTP3:
(a) any transmitted but unacknowledged User Data messages.
(b) any untransmitted User Data messages.
Then M2PA shall send the Retrieval Complete indication to MTP3. Then M2PA shall send the Retrieval Complete indication to MTP3.
4.2.6.1 Multiple User Data Streams and Changeover 4.2.6.1 Multiple User Data Streams and Changeover
The changeover procedure makes it problematic for M2PA to have The changeover procedure makes it problematic for M2PA to have
multiple User Data streams in one direction for a link. Buffer multiple User Data streams in one direction for a link. Buffer
updating would have to be done for each User Data stream separately to updating would have to be done for each User Data stream separately to
avoid duplication or loss of messages. But MTP3 provides for only one avoid duplication or loss of messages. But MTP3 provides for only one
XCO/XCA message for sending the last-received SSN. XCO/XCA message for sending the last-received sequence number.
Even with sequence numbering of User Data messages at the M2PA layer,
it is necessary to perform buffer updating on each stream. Since the
M2PA messages would be delivered over multiple streams, there could be
a gap in the M2PA sequence numbers at the receiving end when the
changeover procedure begins. If only the M2PA sequence number is used
in the XCO/XCA message, there would be a possibility of losing the
messages in the gap, or duplicating messages after the gap.
M2PA links with multiple User Data streams would be possible if a M2PA links with multiple User Data streams would be possible if a
multiple-BSNT XCO/XCA message is defined in MTP3, or MTP3 allows multiple-BSNT XCO/XCA message is defined in MTP3, or MTP3 allows
multiple XCO/XCA messages (one for each User Data stream) to be sent multiple XCO/XCA messages (one for each User Data stream) to be sent
during a changeover. This is beyond the scope of this document. during a changeover. This is beyond the scope of this document.
Another attempt to solve this problem and allow for multiple User Data
streams, without changes to MTP3 messages and procedures, is to
introduce sequence numbering of User Data messages at the M2PA
layer. The M2PA sequence numbers would be used instead of SCTP SSNs in
the XCO/XCA messages. However, since the M2PA messages would be
delivered over multiple streams, there could be a gap in the M2PA
sequence numbers at the receiving end when the changeover procedure
begins. There would be a possibility of losing the messages in the
gap, or duplicating messages after the gap.
5. Examples of M2PA Procedures 5. Examples of M2PA Procedures
In general, messages passed between MTP3 and M2PA are the same as In general, messages passed between MTP3 and M2PA are the same as
those passed between MTP3 and MTP2. M2PA interprets messages from those passed between MTP3 and MTP2. M2PA interprets messages from
MTP3 and sends the appropriate message to SCTP. Likewise, messages MTP3 and sends the appropriate message to SCTP. Likewise, messages
from SCTP are used to generate a meaningful message to MTP3. from SCTP are used to generate a meaningful message to MTP3.
Note that throughout this section, the primitives between MTP3 and Note that throughout this section, the primitives between MTP3 and
M2PA are named using the MTP terminology [1][2]. Communications M2PA are named using the MTP terminology [1][2]. Communications
between M2PA and SCTP are named using SCTP terminology. between M2PA and SCTP are named using SCTP terminology.
skipping to change at page 37, line 8 skipping to change at page 38, line 15
5.1 Link Initialization (Alignment) 5.1 Link Initialization (Alignment)
An example of the message flow to bring an SS7 link in service is An example of the message flow to bring an SS7 link in service is
shown below. Alignment is done by both ends of the link. To simplify the shown below. Alignment is done by both ends of the link. To simplify the
diagram, alignment is shown on one end only. It is assumed in this diagram, alignment is shown on one end only. It is assumed in this
example that SCTP has been initialized. example that SCTP has been initialized.
MTP3 M2PA SCTP SCTP M2PA MTP3 MTP3 M2PA SCTP SCTP M2PA MTP3
---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
Emergency OR
Emergency Ceases
------------>
Start
------------>
Associate Associate
------------> ------------>
(SCTP Association (SCTP Association
procedure) procedure)
Communication Up Communication Up Communication Up Communication Up
<------------ ------------> <------------ ------------>
Link Status Out of Service
------------------------------------>
Emergency OR
Emergency Ceases
------------>
Start
------------>
MTP3 M2PA SCTP SCTP M2PA MTP3 MTP3 M2PA SCTP SCTP M2PA MTP3
---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
Link Status Alignment Link Status Alignment
------------------------------------> ------------------------------------>
Start timer T1 Start timer T1
Link Status Alignment Link Status Alignment
<------------------------------------ <------------------------------------
skipping to change at page 38, line 4 skipping to change at page 39, line 19
Start timer T1 Start timer T1
Link Status Alignment Link Status Alignment
<------------------------------------ <------------------------------------
Stop timer T1 Stop timer T1
Start timer T2 Start timer T2
Proving period begins. (Messages from remote end not shown.) Proving period begins. (Messages from remote end not shown.)
Link Status Proving Link Status Proving
Proving Data
------------------------------------> ------------------------------------>
------------------------------------> ------------------------------------>
------------------------------------> ------------------------------------>
------------------------------------> ------------------------------------>
------------------------------------> ------------------------------------>
------------------------------------> ------------------------------------>
Timer T2 expires Timer T2 expires
Proving period ends. Check association performance.
Get SRTT Report
------------>
Send Link Status Ready until the remote end completes its proving Send Link Status Ready until the remote end completes its proving
period. period.
Start timer T3 Start timer T3
Link Status Ready Link Status Ready
------------------------------------> ------------------------------------>
------------------------------------> ------------------------------------>
------------------------------------> ------------------------------------>
------------------------------------> ------------------------------------>
skipping to change at page 41, line 15 skipping to change at page 42, line 15
5.5 Level 2 Flow Control 5.5 Level 2 Flow Control
This illustrates the Level 2 Flow Control procedure. In the first This illustrates the Level 2 Flow Control procedure. In the first
diagram, congestion ceases before timer T6 expires. The second diagram diagram, congestion ceases before timer T6 expires. The second diagram
shows the case where T6 expires. shows the case where T6 expires.
MTP3 M2PA SCTP SCTP M2PA MTP3 MTP3 M2PA SCTP SCTP M2PA MTP3
---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
Implementation dependent Implementation dependent
indication of receive determination of M2PA
congestion onset receive congestion onset
<------------
Link Status Busy Link Status Busy
------------------------------------> ------------------------------------>
Start Start
Timer T6 Timer T6
Implementation dependent Implementation dependent
indication of receive determination of M2PA
congestion abatement receive congestion abatement
<------------
Link Status Busy Ended Link Status Busy Ended
------------------------------------> ------------------------------------>
Stop Stop
Timer T6 Timer T6
MTP3 M2PA SCTP SCTP M2PA MTP3 MTP3 M2PA SCTP SCTP M2PA MTP3
---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
Implementation dependent Implementation dependent
indication of receive determination of M2PA
congestion onset receive congestion onset
<------------
Link Status Busy Link Status Busy
------------------------------------> ------------------------------------>
Start Start
Timer T6 Timer T6
: :
: :
Timer T6 Timer T6
Expires Expires
Abort Link Status Out of Service
<------------ <------------------------------------
Comm Lost
------------>
Out of Service Out of Service
------------> ------------>
5.6 MTP3 Signaling Link Congestion 5.6 MTP3 Signaling Link Congestion
In this example, it is assumed that SCTP notifies M2PA of congestion In this example, M2PA notifies MTP3 of congestion onset and
onset and abatement. The notification includes the congestion level, abatement. The notification includes the congestion level, if there
if there are levels of congestion defined. are levels of congestion defined.
MTP3 M2PA SCTP SCTP M2PA MTP3 MTP3 M2PA SCTP SCTP M2PA MTP3
---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
Implementation dependent Implementation dependent
indication of transmit determination of M2PA
congestion onset (level) transmit congestion
<------------ onset (level)
Congestion Indication Congestion Indication
(level) (level)
<------------ <------------
Implementation dependent Implementation dependent
indication of transmit determination of M2PA
congestion abatement (level) transmit congestion
<------------ abatement (level)
Congestion Indication Congestion Indication
(level) (level)
<------------ <------------
5.7 Link Deactivation 5.7 Link Deactivation
The MTP3 can request that a SS7-IP link be taken out-of-service. M2PA The MTP3 can request that a SS7-IP link be taken out of service.
uses the Abort message as shown below.
MTP3 M2PA SCTP SCTP M2PA MTP3 MTP3 M2PA SCTP SCTP M2PA MTP3
---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
Stop Stop
------------> ------------>
Abort Link Status Out of Service
------------> ------------------------------------>
(SCTP performs its
termination procedure)
Communication Lost
<------------
Out of Service Out of Service
<------------ <------------
5.8 Link Changeover 5.8 Link Changeover
In this example, MTP3 performs a changeover because the link went out In this example, MTP3 performs a changeover because the link went out
of service. MTP3 selects a different link to retransmit the of service. MTP3 selects a different link to retransmit the
unacknowledged and unsent messages. unacknowledged and unsent messages.
skipping to change at page 46, line 17 skipping to change at page 44, line 28
Communication Lost Communication Lost
<------------ <------------
Out of Service Out of Service
<------------ <------------
Retrieve BSNT Retrieve BSNT
------------> ------------>
(M2PA locates
first gap in
received messages)
BSNT Confirmation BSNT Confirmation
<------------ <------------
XCO (BSNT) on another link XCO (BSNT) on another link
------------------------------------------------------------> ------------------------------------------------------------>
Retrieve BSNT Retrieve BSNT
<------------ <------------
BSNT Confirmation BSNT Confirmation
------------> ------------>
XCA (BSNT) XCA (BSNT)
<------------------------------------------------------------ <------------------------------------------------------------
Retrieval Request Retrieval Request
and FSNC and FSNC
------------> ------------>
(M2PA locates
first gap in
acknowledgements)
Retrieved Message Retrieved Message
<------------ <------------
:
Retrieved Message :
<------------ <------------
Retrieval Complete Retrieval Complete
<------------ <------------
Send messages on another link. Send messages on another link.
6. Security 6. Security
M2PA is designed to carry signaling messages for telephony M2PA is designed to carry signaling messages for telephony
skipping to change at page 48, line 38 skipping to change at page 46, line 38
This protocol may be extended through IANA in three ways: This protocol may be extended through IANA in three ways:
- through definition of additional message classes, - through definition of additional message classes,
- through definition of additional message types, and - through definition of additional message types, and
- through definition of additional message parameters. - through definition of additional message parameters.
The definition and use of new message classes, types, and parameters The definition and use of new message classes, types, and parameters
is an integral part of SIGTRAN adaptation layers. Thus, these is an integral part of SIGTRAN adaptation layers. Thus, these
extensions are assigned by IANA through an IETF Consensus action as extensions are assigned by IANA through an IETF Consensus action as
defined in [14]. defined in [13].
The proposed extension must in no way adversely affect the general The proposed extension must in no way adversely affect the general
working of the protocol. working of the protocol.
7.2.1 IETF Defined Message Classes 7.2.1 IETF Defined Message Classes
The documentation for a new message class MUST include the following The documentation for a new message class MUST include the following
information: information:
(a) A long and short name for the message class. (a) A long and short name for the message class.
skipping to change at page 50, line 23 skipping to change at page 48, line 23
[3] ANSI T1.111-2000, American National Standard for [3] ANSI T1.111-2000, American National Standard for
Telecommunications - Signaling System Number 7 (SS7) - Telecommunications - Signaling System Number 7 (SS7) -
Message Transfer Part (MTP), 2000. Message Transfer Part (MTP), 2000.
[4] RFC 2719, Framework Architecture for Signaling Transport, [4] RFC 2719, Framework Architecture for Signaling Transport,
October 1999. October 1999.
[5] RFC 2960, Stream Control Transmission Protocol, [5] RFC 2960, Stream Control Transmission Protocol,
October 2000. October 2000.
[6] SS7 MTP2-User Adaptation Layer, draft-ietf-sigtran-m2ua-09.txt, [6] SS7 MTP2-User Adaptation Layer, draft-ietf-sigtran-m2ua-13.txt,
July 2001. January 2002.
[7] ITU-T Recommendation Q.2210, 'Message transfer part level 3 [7] ITU-T Recommendation Q.2210, 'Message transfer part level 3
functions and messages using the services of ITU-T functions and messages using the services of ITU-T
Recommendation Q.2140'. Recommendation Q.2140'.
[8] Bradner, S. "Key words for use in RFCs to Indicate Requirement [8] Bradner, S. "Key words for use in RFCs to Indicate Requirement
Levels", BCP 14, RFC 2119, March 1997. Levels", BCP 14, RFC 2119, March 1997.
[9] Telecommunication Technology Committee (TTC) Standard JT-Q704, [9] Telecommunication Technology Committee (TTC) Standard JT-Q704,
'Message Transfer Part Signaling Network Functions', 'Message Transfer Part Signaling Network Functions',
April 28, 1992. April 28, 1992.
[10] ITU-T Recommendation Q.2140, 'B-ISDN ATM Adaptation Layer', [10] ITU-T Recommendation Q.2140, 'B-ISDN ATM Adaptation Layer',
February 1995. February 1995.
[11] RFC 2196, Site Security Handbook, September 1997. [11] RFC 2196, Site Security Handbook, September 1997.
[12] RFC 2401, Security Architecture for the Internet Protocol, [12] RFC 2401, Security Architecture for the Internet Protocol,
November 1998. November 1998.
[13] SCTP Extensions for Dynamic Reconfiguration of IP Addresses [13] Narten, T. and H. Alvestrand, "Guidelines for Writing an IANA
and Enforcement of Flow and Message Limits,
draft-ietf-tsvwg-addip-sctp-02.txt, June 29, 2001.
[14] Narten, T. and H. Alvestrand, "Guidelines for Writing an IANA
Considerations Section in RFCs", BCP 26, RFC 2434, October Considerations Section in RFCs", BCP 26, RFC 2434, October
1998. 1998.
[15] RFC 791, Internet Protocol, September 1981. [14] RFC 791, Internet Protocol, September 1981.
10. Authors' Addresses 10. Author's Addresses
Tom George Tel: +1-972-519-3168 Tom George Tel: +1-972-519-3168
Alcatel USA, Inc. EMail: Tom.George@usa.alcatel.com Alcatel USA, Inc. EMail: Tom.George@alcatel.com
1000 Coit Road 1000 Coit Road
Plano, TX 75075 Plano, TX 75075
USA USA
Ram Dantu, Ph.D. Tel: +1-469-255-0716 Ram Dantu, Ph.D. Tel: +1-214-291-1111
Cisco Systems Inc. EMail: rdantu@cisco.com Netrake Corporation EMail: rdantu@netrake.com
17919 Waterview Parkway 3000 Technology Drive, Suite 100
Dallas, TX 75252 Plano 75074
USA USA
Malleswar Kalla Tel: +1-973-829-5212 Malleswar Kalla Tel: +1-973-829-5212
Telcordia Technologies EMail: kalla@research.telcordia.com Telcordia Technologies EMail: kalla@research.telcordia.com
MCC 1J211R MCC 1J211R
445 South Street 445 South Street
Morristown, NJ 07960 Morristown, NJ 07960
USA USA
Hanns Juergen Schwarzbauer Tel: +49-89-722-24236 Hanns Juergen Schwarzbauer Tel: +49-89-722-24236
SIEMENS AG HannsJuergen.Schwarzbauer@icn.siemens.de SIEMENS AG HannsJuergen.Schwarzbauer@icn.siemens.de
Hofmannstr. 51 Hofmannstr. 51
81359 Munich 81359 Munich
Germany Germany
Greg Sidebottom Greg Sidebottom
Kanata, Ontario EMail: gregside@home.com gregside consulting EMail: gregside@rogers.com
Kanata, Ontario
Canada Canada
Ken Morneault Tel: +1-703-484-3323 Ken Morneault Tel: +1-703-484-3323
Cisco Systems Inc. EMail: kmorneau@cisco.com Cisco Systems Inc. EMail: kmorneau@cisco.com
13615 Dulles Technology Drive 13615 Dulles Technology Drive
Herndon, VA 20171 Herndon, VA 20171
USA USA
This Internet Draft expires January 2002. This Internet Draft expires August 2002.
 End of changes. 

This html diff was produced by rfcdiff 1.23, available from http://www.levkowetz.com/ietf/tools/rfcdiff/