rfc4666
Network Working Group K. Morneault, Ed.
Request for Comments: 4666 Cisco Systems
Obsoletes: 3332 J. Pastor-Balbas, Ed.
Category: Standards Track Ericsson
September 2006
Signaling System 7 (SS7) Message Transfer Part 3 (MTP3) -
User Adaptation Layer (M3UA)
Status of This Memo
This document specifies an Internet standards track protocol for the
Internet community, and requests discussion and suggestions for
improvements. Please refer to the current edition of the "Internet
Official Protocol Standards" (STD 1) for the standardization state
and status of this protocol. Distribution of this memo is unlimited.
Copyright Notice
Copyright (C) The Internet Society (2006).
Abstract
This memo defines a protocol for supporting the transport of any SS7
MTP3-User signalling (e.g., ISUP and SCCP messages) over IP using the
services of the Stream Control Transmission Protocol. Also,
provision is made for protocol elements that enable a seamless
operation of the MTP3-User peers in the SS7 and IP domains. This
protocol would be used between a Signalling Gateway (SG) and a Media
Gateway Controller (MGC) or IP-resident Database, or between two IP-
based applications. It is assumed that the SG receives SS7
signalling over a standard SS7 interface using the SS7 Message
Transfer Part (MTP) to provide transport. This document obsoletes
RFC 3332.
Morneault & Pastor-Balbas Standards Track [Page 1]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
Table of Contents
1. Introduction ....................................................6
1.1. Scope ......................................................6
1.2. Terminology ................................................6
1.3. M3UA Overview ..............................................9
1.3.1. Protocol Architecture ...............................9
1.3.2. Services Provided by the M3UA Layer ................10
1.3.2.1. Support for the Transport of
MTP3-User Messages ........................10
1.3.2.2. Native Management Functions ...............11
1.3.2.3. Interworking with MTP3 Network
Management Functions ......................11
1.3.2.4. Support for the Management of SCTP
Associations between the ..................11
1.3.2.5. Support for the Management of
Connections to Multiple SGPs ..............12
1.4. Functional Areas ..........................................12
1.4.1. Signalling Point Code Representation ...............12
1.4.2. Routing Contexts and Routing Keys ..................14
1.4.2.1. Overview ..................................14
1.4.2.2. Routing Key Limitations ...................15
1.4.2.3. Managing Routing Contexts and
Routing Keys ..............................15
1.4.2.4. Message Distribution at the SGP ...........15
1.4.2.5. Message Distribution at the ASP ...........16
1.4.3. SS7 and M3UA Interworking ..........................16
1.4.3.1. Signalling Gateway SS7 Layers .............16
1.4.3.2. SS7 and M3UA Interworking at the SG .......17
1.4.3.3. Application Server ........................17
1.4.3.4. IPSP Considerations .......................18
1.4.4. Redundancy Models ..................................18
1.4.4.1. Application Server Redundancy .............18
1.4.5. Flow Control .......................................18
1.4.6. Congestion Management ..............................19
1.4.7. SCTP Stream Mapping ................................19
1.4.8. SCTP Client/Server Model ...........................19
1.5. Sample Configuration ......................................20
1.5.1. Example 1: ISUP Message Transport ..................20
1.5.2. Example 2: SCCP Transport between IPSPs ............21
1.5.3. Example 3: SGP Resident SCCP Layer, with
Remote ASP .........................................22
1.6. Definition of M3UA Boundaries .............................23
1.6.1. Definition of the Boundary between M3UA and
an MTP3-User .......................................23
1.6.2. Definition of the Boundary between M3UA and SCTP ...23
1.6.3. Definition of the Boundary between M3UA and
Layer Management ...................................24
Morneault & Pastor-Balbas Standards Track [Page 2]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
2. Conventions ....................................................27
3. M3UA Protocol Elements .........................................28
3.1. Common Message Header .....................................28
3.1.1. M3UA Protocol Version: 8 bits (unsigned integer) ...28
3.1.2. Message Classes and Types ..........................28
3.1.3. Reserved: 8 Bits ...................................30
3.1.4. Message Length: 32-Bits (Unsigned Integer) .........30
3.2. Variable-Length Parameter Format ..........................30
3.3. Transfer Messages .........................................33
3.3.1. Payload Data Message (DATA) ........................33
3.4. SS7 Signalling Network Management (SSNM) Messages .........36
3.4.1. Destination Unavailable (DUNA) .....................36
3.4.2. Destination Available (DAVA) .......................39
3.4.3. Destination State Audit (DAUD) .....................40
3.4.4. Signalling Congestion (SCON) .......................40
3.4.5. Destination User Part Unavailable (DUPU) ...........43
3.4.6. Destination Restricted (DRST) ......................45
3.5. ASP State Maintenance (ASPSM) Messages ....................45
3.5.1. ASP Up .............................................45
3.5.2. ASP Up Acknowledgement (ASP Up Ack) ................46
3.5.3. ASP Down ...........................................47
3.5.4. ASP Down Acknowledgement (ASP Down Ack) ............48
3.5.5. Heartbeat (BEAT) ...................................48
3.5.6. Heartbeat Acknowledgement (BEAT Ack) ...............49
3.6. Routing Key Management (RKM) Messages [Optional] ..........49
3.6.1. Registration Request (REG REQ) .....................49
3.6.2. Registration Response (REG RSP) ....................54
3.6.3. Deregistration Request (DEREG REQ) .................56
3.6.4. Deregistration Response (DEREG RSP) ................57
3.7. ASP Traffic Maintenance (ASPTM) Messages ..................59
3.7.1. ASP Active .........................................59
3.7.2. ASP Active Acknowledgement (ASP Active Ack) ........60
3.7.3. ASP Inactive .......................................61
3.7.4. ASP Inactive Acknowledgement (ASP Inactive Ack) ....62
3.8. Management (MGMT) Messages ................................63
3.8.1. Error ..............................................63
3.8.2. Notify .............................................67
4. Procedures .....................................................70
4.1. Procedures to Support the M3UA-User .......................70
4.1.1. Receipt of Primitives from the M3UA-User ...........70
4.2. Receipt of Primitives from the Layer Management ...........71
4.2.1. Receipt of M3UA Peer Management Messages ...........72
4.3. AS and ASP/IPSP State Maintenance .........................73
4.3.1. ASP/IPSP States ....................................74
4.3.2. AS States ..........................................76
4.3.3. M3UA Management Procedures for Primitives ..........78
4.3.4. ASPM Procedures for Peer-to-Peer Messages ..........79
4.3.4.1. ASP Up Procedures .........................79
Morneault & Pastor-Balbas Standards Track [Page 3]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
4.3.4.2. ASP-Down Procedures .......................81
4.3.4.3. ASP Active Procedures .....................82
4.3.4.4. ASP Inactive Procedures ...................86
4.3.4.5. Notify Procedures .........................88
4.3.4.6. Heartbeat Procedures ......................89
4.4. Routing Key Management Procedures [Optional] ..............90
4.4.1. Registration .......................................90
4.4.2. Deregistration .....................................92
4.4.3. IPSP Considerations (REG/DEREG) ....................93
4.5. Procedures to Support the Availability or
Congestion Status of SS7 Destination ......................93
4.5.1. At an SGP ..........................................93
4.5.2. At an ASP ..........................................94
4.5.2.1. Single SG Configurations ..................94
4.5.2.2. Multiple SG Configurations ................94
4.5.3. ASP Auditing .......................................94
4.6. MTP3 Restart ..............................................96
4.7. NIF Not Available .........................................97
4.8. M3UA Version Control ......................................97
4.9. M3UA Termination ..........................................97
5. Examples of M3UA Procedures ....................................98
5.1. Establishment of Association and Traffic between
SGPs and ASPs .............................................98
5.1.1. Single ASP in an Application Server ("1+0"
sparing), No Registration ..........................98
5.1.1.1. Single ASP in an Application
Server ("1+0" Sparing), No Registration ...98
5.1.1.2. Single ASP in Application Server
("1+0" Sparing), Dynamic Registration .....99
5.1.1.3. Single ASP in Multiple
Application Servers (Each with "1+0"
Sparing), Dynamic Registration (Case 1
- Multiple Registration Requests) ........100
5.1.1.4. Single ASP in Multiple
Application Servers (each with "1+0"
sparing), Dynamic Registration (Case 2
- Single Registration Request) ...........101
5.1.2. Two ASPs in Application Server ("1+1" Sparing) ....102
5.1.3. Two ASPs in an Application Server ("1+1"
Sparing, Loadsharing Case) ........................103
5.1.4. Three ASPs in an Application Server ("n+k"
Sparing, Loadsharing Case) ........................104
5.2. ASP Traffic Failover Examples ............................105
5.2.1. 1+1 Sparing, Withdrawal of ASP, Backup Override ...105
5.2.2. 1+1 Sparing, Backup Override ......................105
5.2.3. n+k Sparing, Loadsharing Case, Withdrawal of ASP ..106
5.3. Normal Withdrawal of an ASP from an Application Server ...106
5.4. Auditing Examples ........................................107
Morneault & Pastor-Balbas Standards Track [Page 4]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
5.4.1. SG State: Uncongested/Available ...................107
5.4.2. SG State: Congested (Congestion Level=2) /
Available .........................................107
5.4.3. SG State: Unknown/Available .......................107
5.4.4. SG State: Unavailable .............................108
5.5. M3UA/MTP3-User Boundary Examples .........................108
5.5.1. At an ASP .........................................108
5.5.1.1. Support for MTP-TRANSFER
Primitives at the ASP ....................108
5.5.2. At an SGP .........................................109
5.5.2.1. Support for MTP-TRANSFER Request
Primitive at the SGP .....................109
5.5.2.2. Support for MTP-TRANSFER
Indication Primitive at the SGP ..........110
5.5.2.3. Support for MTP-PAUSE,
MTP-RESUME, MTP-STATUS Indication
Primitives ...............................110
5.6. Examples for IPSP Communication ..........................112
5.6.1. Single Exchange ...................................112
5.6.2. Double Exchange ...................................113
6. Security Considerations .......................................113
7. IANA Considerations ...........................................114
7.1. SCTP Payload Protocol Identifier .........................114
7.2. M3UA Port Number .........................................114
7.3. M3UA Protocol Extensions .................................114
7.3.1. IETF-Defined Message Classes ......................115
7.3.2. IETF Defined Message Types ........................115
7.3.3. IETF-Defined Parameter Extension ..................115
8. Acknowledgements ..............................................115
9. Document Contributors .........................................116
10. References ...................................................116
10.1. Normative References ....................................116
10.2. Informative References ..................................117
Appendix A .......................................................119
A.1. Signalling Network Architecture .............................119
A.2. Redundancy Models ...........................................121
A.2.1. Application Server Redundancy ........................121
A.2.2. Signalling Gateway Redundancy ........................122
Morneault & Pastor-Balbas Standards Track [Page 5]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
1. Introduction
This memo defines a protocol for supporting the transport of any SS7
MTP3-User signalling (e.g., ISUP and SCCP messages) over IP using the
services of the Stream Control Transmission Protocol [18]. Also,
provision is made for protocol elements that enable a seamless
operation of the MTP3-User peers in the SS7 and IP domains. This
protocol would be used between a Signalling Gateway (SG) and a Media
Gateway Controller (MGC) or IP-resident Database [12], or between two
IP-based applications.
1.1. Scope
There is a need for Switched Circuit Network (SCN) signalling
protocol delivery from an SS7 Signalling Gateway (SG) to a Media
Gateway Controller (MGC) or IP-resident Database as described in the
Framework Architecture for Signalling Transport [12]. The delivery
mechanism should meet the following criteria:
* Support for the transfer of all SS7 MTP3-User Part messages (e.g.,
ISUP [1,2,3], SCCP [4,5,6], TUP [13], etc.)
* Support for the seamless operation of MTP3-User protocol peers
* Support for the management of SCTP transport associations and
traffic between an SG and one or more MGCs or IP-resident
Databases
* Support for MGC or IP-resident database process failover and load
sharing
* Support for the asynchronous reporting of status changes to
management
In simplistic transport terms, the SG will terminate SS7 MTP2 and
MTP3 protocol layers [7,8,9] and deliver ISUP, SCCP, and/or any other
MTP3-User protocol messages, as well as certain MTP network
management events, over SCTP transport associations to MTP3-User
peers in MGCs or IP-resident databases.
1.2. Terminology
Application Server (AS) - A logical entity serving a specific Routing
Key. An example of an Application Server is a virtual switch element
handling all call processing for a signalling relation, identified by
an SS7 DPC/OPC. Another example is a virtual database element,
handling all HLR transactions for a particular SS7 SIO/DPC/OPC
combination. The AS contains a set of one or more unique Application
Server Processes, of which one or more is normally actively
processing traffic. Note that there is a 1:1 relationship between an
AS and a Routing Key.
Morneault & Pastor-Balbas Standards Track [Page 6]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
Application Server Process (ASP) - A process instance of an
Application Server. An Application Server Process serves as an
active or backup process of an Application Server (e.g., part of a
distributed virtual switch or database). Examples of ASPs are
processes (or process instances) of MGCs, IP SCPs, or IP HLRs. An
ASP contains an SCTP endpoint and may be configured to process
signalling traffic within more than one Application Server.
Association - An association refers to an SCTP association. The
association provides the transport for the delivery of MTP3-User
protocol data units and M3UA adaptation layer peer messages.
IP Server Process (IPSP) - A process instance of an IP-based
application. An IPSP is essentially the same as an ASP, except that
it uses M3UA in a point-to-point fashion. Conceptually, an IPSP does
not use the services of a Signalling Gateway node.
Failover - The capability to reroute signalling traffic as required
to an alternate Application Server Process, or group of ASPs, within
an Application Server in the event of failure or unavailability of a
currently used Application Server Process. Failover also applies
upon the return to service of a previously unavailable Application
Server Process.
Host - The computing platform that the process (SGP, ASP or IPSP) is
running on.
Layer Management - Layer Management is a nodal function that handles
the inputs and outputs between the M3UA layer and a local management
entity.
Linkset - A number of signalling links that directly interconnect two
signalling points, which are used as a module.
MTP - The Message Transfer Part of the SS7 protocol.
MTP3 - MTP Level 3, the signalling network layer of SS7.
MTP3-User - Any protocol normally using the services of the SS7 MTP3
(e.g., ISUP, SCCP, TUP, etc.).
Network Appearance - The Network Appearance is a M3UA local reference
shared by SG and AS (typically an integer) that, together with an
Signaling Point Code, uniquely identifies an SS7 node by indicating
the specific SS7 network to which it belongs. It can be used to
distinguish between signalling traffic associated with different
networks being sent between the SG and the ASP over a common SCTP
association. An example scenario is where an SG appears as an
Morneault & Pastor-Balbas Standards Track [Page 7]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
element in multiple separate national SS7 networks and the same
Signaling Point Code value may be reused in different networks.
Network Byte Order - Most significant byte first, a.k.a Big Endian.
Routing Key - A Routing Key describes a set of SS7 parameters and
parameter values that uniquely define the range of signalling traffic
to be handled by a particular Application Server. Parameters within
the Routing Key cannot extend across more than a single Signalling
Point Management Cluster.
Routing Context - A value that uniquely identifies a Routing Key.
Routing Context values are configured either using a configuration
management interface, or by using the routing key management
procedures defined in this document.
Signaling End Point (SEP) - A node in the SS7 network associated with
an originating or terminating local exchange (switch) or a gateway
exchange.
Signalling Gateway Process (SGP) - A process instance of a Signalling
Gateway. It serves as an active, backup, load-sharing, or broadcast
process of a Signalling Gateway.
Signalling Gateway (SG) - An SG is a signaling agent that
receives/sends SCN native signaling at the edge of the IP network
[12]. An SG appears to the SS7 network as an SS7 Signalling Point.
An SG contains a set of one or more unique Signalling Gateway
Processes, of which one or more is normally actively processing
traffic. Where an SG contains more than one SGP, the SG is a logical
entity, and the contained SGPs are assumed to be coordinated into a
single management view to the SS7 network and to the supported
Application Servers.
Signalling Process - A process instance that uses M3UA to communicate
with other signalling processes. An ASP, an SGP, and an IPSP are all
signalling processes.
Signalling Point Management Cluster (SPMC) - The complete set of
Application Servers represented to the SS7 network under a single MTP
entity (Signalling Point) in one specific Network Appearance. SPMCs
are used to aggregate the availability, congestion, and user part
status of an MTP entity (Signalling Point) that is distributed in the
IP domain, for the purpose of supporting MTP3 management procedures
towards the SS7 network. In some cases, the SG itself may also be a
member of the SPMC. In this case, the SG
availability/congestion/User_Part status should also be taken into
account when considering any supporting MTP3 management actions.
Morneault & Pastor-Balbas Standards Track [Page 8]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
Signaling Transfer Point (STP) - A node in the SS7 network that
provides network access and performs message routing, screening and
transfer of signaling messages.
Stream - An SCTP stream; a unidirectional logical channel established
from one SCTP endpoint to another associated SCTP endpoint, within
which all user messages are delivered in-sequence except for those
submitted to the unordered delivery service.
1.3. M3UA Overview
1.3.1. Protocol Architecture
The framework architecture that has been defined for SCN signalling
transport over IP [12] uses multiple components, including a common
signalling transport protocol and an adaptation module to support the
services expected by a particular SCN signalling protocol from its
underlying protocol layer.
Within the framework architecture, this document defines an MTP3-User
adaptation module suitable for supporting the transfer of messages of
any protocol layer that is identified to the MTP Level 3 as an MTP
User. The list of these protocol layers includes but is not limited
to ISDN User Part (ISUP) [1,2,3], Signalling Connection Control Part
(SCCP) [4,5,6], and Telephone User Part (TUP) [13]. TCAP [14,15,16]
or RANAP [16] messages are transferred transparently by the M3UA
protocol as SCCP payload, as they are SCCP-User protocols.
It is recommended that M3UA use the services of the Stream Control
Transmission Protocol (SCTP) [18] as the underlying reliable common
signalling transport protocol. This is to take advantage of various
SCTP features, such as:
- Explicit packet-oriented delivery (not stream-oriented)
- Sequenced delivery of user messages within multiple streams,
with an option for order-of-arrival delivery of individual
user messages
- Optional multiplexing of user messages into SCTP datagrams
- Network-level fault tolerance through support of multi-homing
at either or both ends of an association
- Resistance to flooding and masquerade attacks
- Data segmentation to conform to discovered path MTU size
Under certain scenarios, such as back-to-back connections without
redundancy requirements, the SCTP functions above might not be a
requirement, and TCP MAY be used as the underlying common transport
protocol.
Morneault & Pastor-Balbas Standards Track [Page 9]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
1.3.2. Services Provided by the M3UA Layer
The M3UA Layer at an ASP or IPSP provides the equivalent set of
primitives at its upper layer to the MTP3-Users as provided by the
MTP Level 3 to its local MTP3-Users at an SS7 SEP. In this way, the
ISUP and/or SCCP layer at an ASP or IPSP is unaware that the expected
MTP3 services are offered remotely from an MTP3 Layer at an SGP, and
not by a local MTP3 layer. The MTP3 layer at an SGP may also be
unaware that its local users are actually remote user parts over
M3UA. In effect, the M3UA extends access to the MTP3 layer services
to a remote IP-based application. The M3UA layer does not itself
provide the MTP3 services. However, in the case where an ASP is
connected to more than one SG, the M3UA layer at an ASP should
maintain the status of configured SS7 destinations and route messages
according to the availability and congestion status of the routes to
these destinations via each SG.
The M3UA layer may also be used for point-to-point signalling between
two IP Server Processes (IPSPs). In this case, the M3UA layer
provides the same set of primitives and services at its upper layer
as the MTP3. However, in this case the expected MTP3 services are
not offered remotely from an SGP. The MTP3 services are provided,
but the procedures to support these services are a subset of the MTP3
procedures, due to the simplified point-to-point nature of the IPSP-
to-IPSP relationship.
1.3.2.1. Support for the Transport of MTP3-User Messages
The M3UA layer provides the transport of MTP-TRANSFER primitives
across an established SCTP association between an SGP and an ASP or
between IPSPs.
At an ASP, in the case where a destination is reachable via multiple
SGPs, the M3UA layer must also choose via which SGP the message is to
be routed or support load balancing across the SGPs, thereby
minimizing missequencing.
The M3UA layer does not impose a 272-octet signalling information
field (SIF) length limit as specified by the SS7 MTP Level 2 protocol
[7,8,9]. Larger information blocks can be accommodated directly by
M3UA/SCTP, without the need for an upper layer segmentation/
re-assembly procedure as specified in recent SCCP or ISUP versions.
However, in the context of an SG, the maximum 272-octet block size
must be followed when interworking to a SS7 network that does not
support the transfer of larger information blocks to the final
destination. This avoids potential ISUP or SCCP fragmentation
requirements at the SGPs. The provisioning and configuration of the
SS7 network determines the restriction placed on the maximum block
Morneault & Pastor-Balbas Standards Track [Page 10]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
size. Some configurations (e.g., Broadband MTP [19,20,22]) may
permit larger block sizes.
1.3.2.2. Native Management Functions
The M3UA layer provides the capability to indicate errors associated
with received M3UA messages and to notify, as appropriate, local
management and/or the peer M3UA.
1.3.2.3. Interworking with MTP3 Network Management Functions
At the SGP, the M3UA layer provides interworking with MTP3 management
functions to support seamless operation of the user SCN signalling
applications in the SS7 and IP domains. This includes
- providing an indication to MTP3-Users at an ASP that a destination
in the SS7 network is not reachable;
- providing an indication to MTP3-Users at an ASP that a destination
in the SS7 network is now reachable;
- providing an indication to MTP3-Users at an ASP that messages to a
destination in the SS7 network are experiencing SS7 congestion;
- providing an indication to the M3UA layer at an ASP that the routes
to a destination in the SS7 network are restricted; and
- providing an indication to MTP3-Users at an ASP that a MTP3-User
peer is unavailable.
The M3UA layer at an ASP keeps the state of the routes to remote SS7
destinations and may initiate an audit of the availability and the
restricted or the congested state of remote SS7 destinations. This
information is requested from the M3UA layer at the SGP.
The M3UA layer at an ASP may also indicate to the SG that the M3UA
layer itself or the ASP or the ASP's Host is congested.
1.3.2.4. Support for the Management of SCTP Associations between the
SGP and ASPs
The M3UA layer at the SGP maintains the availability state of all
configured remote ASPs, to manage the SCTP Associations and the
traffic between the M3UA peers. Also, the active/inactive and
congestion state of remote ASPs is maintained.
The M3UA layer MAY be instructed by local management to establish an
SCTP association to a peer M3UA node. This can be achieved using the
Morneault & Pastor-Balbas Standards Track [Page 11]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
M-SCTP_ESTABLISH primitives (see Section 1.6.3 for a description of
management primitives) to request, indicate, and confirm the
establishment of an SCTP association with a peer M3UA node. In order
to avoid redundant SCTP associations between two M3UA peers, one side
(client) SHOULD be designated to establish the SCTP association, or
M3UA configuration information maintained to detect redundant
associations (e.g., via knowledge of the expected local and remote
SCTP endpoint addresses).
Local management MAY request from the M3UA layer the status of the
underlying SCTP associations using the M-SCTP_STATUS request and
confirm primitives. Also, the M3UA MAY autonomously inform local
management of the reason for the release of an SCTP association,
determined either locally within the M3UA layer or by a primitive
from the SCTP.
Also, the M3UA layer MAY inform the local management of the change in
status of an ASP or AS. This MAY be achieved using the M-ASP_STATUS
request or M-AS_STATUS request primitives.
1.3.2.5. Support for the Management of Connections to Multiple SGPs
As shown in Figure 1, an ASP may be connected to multiple SGPs. In
such a case, a particular SS7 destination may be reachable via more
than one SGP and/or SG; i.e., via more than one route. As MTP3 users
only maintain status on a destination and not on a route basis, the
M3UA layer must maintain the status (availability, restriction,
and/or congestion of route to destination) of the individual routes,
derive the overall availability or congestion status of the
destination from the status of the individual routes, and inform the
MTP3 users of this derived status whenever it changes.
1.4. Functional Areas
1.4.1. Signalling Point Code Representation
For example, within an SS7 network, a Signalling Gateway might be
charged with representing a set of nodes in the IP domain into the
SS7 network for routing purposes. The SG itself, as a signalling
point in the SS7 network, might also be addressable with an SS7 Point
Code for MTP3 Management purposes. The SG Point Code might also be
used for addressing any local MTP3-Users at the SG such as a local
SCCP layer.
Morneault & Pastor-Balbas Standards Track [Page 12]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
An SG may be logically partitioned to operate in multiple SS7 network
appearances. In such a case, the SG could be addressable with a
Point Code in each network appearance, and it represents a set of
nodes in the IP domain into each SS7 network. Alias Point Codes [8]
may also be used within an SG network appearance.
Where an SG contains more than one SGP, the MTP3 routeset, SPMC, and
remote AS/ASP states of each SGP SHOULD be coordinated across all the
SGPs. Rerouting of traffic between the SGPs MAY also be supported.
Application Servers can be represented under the same Point Code of
the SG, under their own individual Point Codes, or grouped with other
Application Servers for Point Code preservation purposes. A single
Point Code may be used to represent the SG and all the Application
Servers together, if desired.
If an ASP or group of ASPs is available to the SS7 network via more
than one SG, each with its own Point Code, the ASP(s) will typically
be represented by a Point Code that is separate from any SG Point
Code. This allows, for example, these SGs to be viewed from the SS7
network as "STPs", each having an ongoing "route" to the same ASP(s).
Under failure conditions where the ASP(s) become(s) unavailable from
one of the SGs, this approach enables MTP3 route management messaging
between the SG and SS7 network, allowing simple SS7 rerouting through
an alternate SG without changing the Destination Point Code Address
of SS7 traffic to the ASP(s).
Where a particular AS can be reached via more than one SGP, the
corresponding Routing Keys in the SGPs should be identical. (Note:
It is possible for the SGP Routing Key configuration data to be
temporarily out of sync during configuration updates).
+--------+
| |
+------------+ SG 1 +--------------+
+-------+ | SS7 links | "STP" | IP network | ----
| SEP +---+ +--------+ +---/ \
| or | |* | ASPs |
| STP +---+ +--------+ +---\ /
+-------+ | | | | ----
+------------+ SG 2 +--------------+
| "STP" |
+--------+
Figure 1. Example with mated SGs
* Note: SG-to-SG communication (i.e., "C-links") is recommended
for carrier grade networks, using an MTP3 linkset or an
Morneault & Pastor-Balbas Standards Track [Page 13]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
equivalent, to allow rerouting between the SGs in the event of
route failures. Where SGPs are used, inter-SGP communication
might be used. Inter-SGP protocol is outside of the scope of this
document.
The following example shows a signalling gateway partitioned into
two network appearances.
SG
+-------+ +---------------+
| SEP +--------------| SS7 Ntwk.|M3UA| ----
+-------+ SS7 links | "A" | | / \
|__________| +-----------+ ASPs |
| | | \ /
+-------+ | SS7 Ntwk.| | ----
| SEP +--------------+ "B" | |
+-------+ +---------------+
Figure 2. Example with multiple network
1.4.2. Routing Contexts and Routing Keys
1.4.2.1. Overview
The distribution of SS7 messages between the SGP and the Application
Servers is determined by the Routing Keys and their associated
Routing Contexts. A Routing Key is essentially a set of SS7
parameters used to filter SS7 messages, whereas the Routing Context
parameter is a 4-octet value (integer) that is associated to that
Routing Key in a 1:1 relationship. The Routing Context therefore can
be viewed as an index into a sending node's Message Distribution
Table containing the Routing Key entries.
Possible SS7 address/routing information that comprise a Routing Key
entry includes, for example, the OPC, DPC, and SIO found in the MTP3
routing label. Some example Routing Keys are: the DPC alone, the
DPC/OPC combination, or the DPC/OPC/SI combination. The particular
information used to define an M3UA Routing Key is application and
network dependent, and none of the above examples are mandated.
An Application Server Process may be configured to process signalling
traffic related to more than one Application Server, over a single
SCTP Association. In ASP Active and ASP Inactive management
messages, the signalling traffic to be started or stopped is
discriminated by the Routing Context parameter. At an ASP, the
Routing Context parameter uniquely identifies the range of signalling
traffic associated with each Application Server that the ASP is
configured to receive.
Morneault & Pastor-Balbas Standards Track [Page 14]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
1.4.2.2. Routing Key Limitations
Routing Keys SHOULD be unique in the sense that each received SS7
signalling message SHOULD have a full or partial match to a single
routing result. An example of a partial match would be a default
Routing Key that would be the result if there are no other Routing
Keys to which the message belongs. It is not necessary for the
parameter range values within a particular Routing Key to be
contiguous.
1.4.2.3. Managing Routing Contexts and Routing Keys
There are two ways to provision a Routing Key at an SGP. A Routing
Key may be configured statically using an implementation dependent
management interface, or dynamically using the M3UA Routing Key
registration procedure.
When using a management interface to configure Routing Keys, the
message distribution function within the SGP is not limited to the
set of parameters defined in this document. Other implementation-
dependent distribution algorithms may be used.
1.4.2.4. Message Distribution at the SGP
To direct messages received from the SS7 MTP3 network to the
appropriate IP destination, the SGP must perform a message
distribution function using information from the received MTP3-User
message.
To support this message distribution, the SGP might, for example,
maintain the equivalent of a network address translation table,
mapping incoming SS7 message information to an Application Server for
a particular application and range of traffic. This could be
accomplished by comparing elements of the incoming SS7 message to
currently defined Routing Keys in the SGP.
These Routing Keys could in turn map directly to an Application
Server that is enabled by one or more ASPs. These ASPs provide
dynamic status information regarding their availability, traffic-
handling capability and congestion to the SGP using various
management messages defined in the M3UA protocol.
The list of ASPs in an AS is assumed to be dynamic, taking into
account the availability, traffic-handling capability, and congestion
status of the individual ASPs in the list, as well as configuration
changes and possible failover mechanisms.
Morneault & Pastor-Balbas Standards Track [Page 15]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
Normally, one or more ASPs are active (i.e., currently processing
traffic) in the AS, but in certain failure and transition cases it is
possible that there may be no active ASP available. Broadcast,
loadsharing, and backup scenarios are supported.
When there is no matching Routing Key entry for an incoming SS7
message, a default treatment MAY be specified. Possible solutions
are to provide a default Application Server at the SGP that directs
all unallocated traffic to a (set of) default ASPs, or to drop the
message and provide a notification to layer management. The
treatment of unallocated traffic is implementation dependent.
1.4.2.5. Message Distribution at the ASP
The ASP must choose an SGP to direct a message to the SS7 network.
This is accomplished by observing the Destination Point Code (and
possibly other elements of the outgoing message, such as the SLS
value). The ASP must also take into account whether the related
Routing Context is active or not (see Section 4.3.4.3).
Implementation Note: Where more than one route (or SGP) is possible
for routing to the SS7 network, the ASP could, for example, maintain
a dynamic table of available SGP routes for the SS7 destinations,
taking into account the SS7 destination
availability/restricted/congestion status received from the SGP(s),
the availability status of the individual SGPs, and configuration
changes and failover mechanisms. There is, however, no M3UA
messaging to manage the status of an SGP (e.g., SGP-
Up/Down/Active/Inactive messaging).
Whenever an SCTP association to an SGP exists, the SGP is assumed to
be ready for the purposes of responding to M3UA ASPSM messages (refer
to Section 3).
1.4.3. SS7 and M3UA Interworking
In the case of SS7 and M3UA interworking, the M3UA adaptation layer
is designed to provide an extension of the MTP3-defined user
primitives.
1.4.3.1. Signalling Gateway SS7 Layers
The SG is responsible for terminating MTP Level 3 of the SS7
protocol, and offering an IP-based extension to its users.
Morneault & Pastor-Balbas Standards Track [Page 16]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
From an SS7 perspective, it is expected that the Signalling Gateway
transmits and receives SS7 Message Signalling Units (MSUs) over a
standard SS7 network interface, using the SS7 Message Transfer Part
(MTP) [7,8,9].
As a standard SS7 network interface, the use of MTP Level 2
signalling links is not the only possibility. ATM-based High Speed
Links can also be used with the services of the Signalling ATM
Adaptation Layer (SAAL) [19,20].
Note: It is also possible for IP-based interfaces to be present,
using the services of the MTP2-User Adaptation Layer (M2UA) [24] or
M2PA [25].
These could be terminated at a Signalling Transfer Point (STP) or
Signalling End Point (SEP). Using the services of MTP3, the SG could
be capable of communicating with remote SS7 SEPs in a quasi-
associated fashion, where STPs may be present in the SS7 path between
the SEP and the SG.
1.4.3.2. SS7 and M3UA Interworking at the SG
The SGP provides a functional interworking of transport functions
between the SS7 network and the IP network by also supporting the
M3UA adaptation layer. It allows the transfer of MTP3-User
signalling messages to and from an IP-based Application Server
Process where the peer MTP3-User protocol layer exists.
For SS7 user part management, it is required that the MTP3-User
protocols at ASPs receive indications of SS7 signalling point
availability, SS7 network congestion, and remote User Part
unavailability, as would be expected in an SS7 SEP node. To
accomplish this, the MTP-PAUSE, MTP-RESUME, and MTP-STATUS indication
primitives received at the MTP3 upper layer interface at the SG need
to be propagated to the remote MTP3-User lower layer interface at the
ASP.
MTP3 management messages (such as TFPs or TFAs received from the SS7
network) MUST NOT be encapsulated as Data message Payload Data and
sent either from SG to ASP or from ASP to SG. The SG MUST terminate
these messages and generate M3UA messages, as appropriate.
1.4.3.3. Application Server
A cluster of application servers is responsible for providing the
overall support for one or more SS7 upper layers. From an SS7
standpoint, a Signalling Point Management Cluster (SPMC) provides
complete support for the upper layer service for a given point code.
Morneault & Pastor-Balbas Standards Track [Page 17]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
As an example, an SPMC providing MGC capabilities could provide
complete support for ISUP (and any other MTP3 user located at the
point code of the SPMC) for a given point code.
In the case where an ASP is connected to more than one SGP, the M3UA
layer must maintain the status of configured SS7 destinations and
route messages according to the availability/congestion/restricted
status of the routes to these SS7 destinations.
1.4.3.4. IPSP Considerations
Since IPSPs use M3UA in a point-to-point fashion, there is no concept
of routing of messages beyond the remote end. Therefore, SS7 and
M3UA interworking is not necessary for this model.
1.4.4. Redundancy Models
1.4.4.1 Application Server Redundancy
All MTP3-User messages (e.g., ISUP, SCCP) that match a provisioned
Routing Key at an SGP are mapped to an Application Server.
The Application Server is the set of all ASPs associated with a
specific Routing Key. Each ASP in this set may be active, inactive,
or unavailable. Active ASPs handle traffic; inactive ASPs might be
used when active ASPs become unavailable.
The failover model supports an "n+k" redundancy model, where "n" ASPs
is the minimum number of redundant ASPs required to handle traffic
and "k" ASPs are available to take over for a failed or unavailable
ASP. Traffic SHOULD be sent after "n" ASPs are active. "k" ASPs MAY
be either active at the same time as "n" or kept inactive until
needed due to a failed or unavailable ASP.
A "1+1" active/backup redundancy is a subset of this model. A
simplex "1+0" model is also supported as a subset, with no ASP
redundancy.
1.4.5. Flow Control
Local Management at an ASP may wish to stop traffic across an SCTP
association to temporarily remove the association from service or to
perform testing and maintenance activity. The function could
optionally be used to control the start of traffic on to a newly
available SCTP association.
Morneault & Pastor-Balbas Standards Track [Page 18]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
1.4.6. Congestion Management
The M3UA layer is informed of local and IP network congestion by
means of an implementation-dependent function (e.g., an
implementation-dependent indication from the SCTP of IP network
congestion).
At an ASP or IPSP, the M3UA layer indicates IP network congestion to
local MTP3-Users by means of an MTP-STATUS primitive, as per current
MTP3 procedures, to invoke appropriate upper-layer responses.
When an SG determines that the transport of SS7 messages to a
Signalling Point Management Cluster (SPMC) is encountering IP network
congestion, the SG MAY trigger SS7 MTP3 Transfer Controlled
management messages to originating SS7 nodes, per the congestion
procedures of the relevant MTP3 standard. The triggering of SS7 MTP3
Management messages from an SG is an implementation-dependent
function.
The M3UA layer at an ASP or IPSP MAY indicate local congestion to an
M3UA peer with an SCON message. When an SG receives a congestion
message (SCON) from an ASP and the SG determines that an SPMC is now
encountering congestion, it MAY trigger SS7 MTP3 Transfer Controlled
management messages to concerned SS7 destinations according to
congestion procedures of the relevant MTP3 standard.
1.4.7. SCTP Stream Mapping
The M3UA layer at both the SGP and ASP also supports the assignment
of signalling traffic into streams within an SCTP association.
Traffic that requires sequencing SHOULD be assigned to the same
stream. To accomplish this, MTP3-User traffic may be assigned to
individual streams based on, for example, the SLS value in the MTP3
Routing Label, subject of course to the maximum number of streams
supported by the underlying SCTP association.
The following rules apply (see Section 3.1.2):
1. The DATA message MUST NOT be sent on stream 0.
2. The ASPSM, MGMT, RKM classes SHOULD be sent on stream 0 (other
than BEAT, BEAT ACK and NTFY messages).
3. The SSNM, ASPTM classes and BEAT, BEAT ACK and NTFY messages can
be sent on any stream.
1.4.8. SCTP Client/Server Model
It is recommended that the SGP and ASP be able to support both client
and server operation. The peer endpoints using M3UA SHOULD be
Morneault & Pastor-Balbas Standards Track [Page 19]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
configured so that one always takes on the role of client and the
other the role of server for initiating SCTP associations. The
default orientation would be for the SGP to take on the role of
server while the ASP is the client. In this case, ASPs SHOULD
initiate the SCTP association to the SGP.
In the case of IPSP to IPSP communication, the peer endpoints using
M3UA SHOULD be configured so that one always takes on the role of
client and the other the role of server for initiating SCTP
associations.
The SCTP and TCP Registered User Port Number Assignment for M3UA is
2905.
1.5. Sample Configuration
1.5.1. Example 1: ISUP Message Transport
******** SS7 ***************** IP ********
* SEP *---------* SGP *--------* ASP *
******** ***************** ********
+------+ +---------------+ +------+
| ISUP | | (NIF) | | ISUP |
+------+ +------+ +------+ +------+
| MTP3 | | MTP3 | | M3UA | | M3UA |
+------| +------+-+------+ +------+
| MTP2 | | MTP2 | | SCTP | | SCTP |
+------+ +------+ +------+ +------+
| L1 | | L1 | | IP | | IP |
+------+ +------+ +------+ +------+
|_______________| |______________|
SEP - SS7 Signalling End Point
SCTP - Stream Control Transmission Protocol
NIF - Nodal Interworking Function
In this example, the SGP provides an implementation-dependent nodal
interworking function (NIF) that allows the MGC to exchange SS7
signalling messages with the SS7-based SEP. The NIF within the SGP
serves as the interface within the SGP between the MTP3 and M3UA.
This nodal interworking function has no visible peer protocol with
either the MGC or SEP. It also provides network status information
to one or both sides of the network.
For internal SGP modeling purposes, at the NIF level, SS7 signalling
messages that are destined to the MGC are received as MTP-TRANSFER
indication primitives from the MTP Level 3 upper layer interface,
Morneault & Pastor-Balbas Standards Track [Page 20]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
translated to MTP-TRANSFER request primitives, and sent to the local
M3UA-resident message distribution function for ongoing routing to
the final IP destination. Messages received from the local M3UA
network address translation and mapping function as MTP-TRANSFER
indication primitives are sent to the MTP Level 3 upper-layer
interface as MTP-TRANSFER request primitives for ongoing MTP Level 3
routing to an SS7 SEP. For the purposes of providing SS7 network
status information, the NIF also delivers MTP-PAUSE, MTP-RESUME, and
MTP-STATUS indication primitives received from the MTP Level 3
upper-layer interface to the local M3UA-resident management function.
In addition, as an implementation and network option, restricted
destinations are communicated from MTP network management to the
local M3UA-resident management function.
1.5.2. Example 2: SCCP Transport between IPSPs
******** IP ********
* IPSP * * IPSP *
******** ********
+------+ +------+
|SCCP- | |SCCP- |
| User | | User |
+------+ +------+
| SCCP | | SCCP |
+------+ +------+
| M3UA | | M3UA |
+------+ +------+
| SCTP | | SCTP |
+------+ +------+
| IP | | IP |
+------+ +------+
|________________|
This example shows an architecture where no Signalling Gateway is
used. In this example, SCCP messages are exchanged directly between
two IP-resident IPSPs with resident SCCP-User protocol instances,
such as RANAP or TCAP. SS7 network interworking is not required;
therefore, there is no MTP3 network management status information for
the SCCP and SCCP-User protocols to consider. Any MTP-PAUSE, MTP-
RESUME, or MTP-STATUS indications from the M3UA layer to the SCCP
layer should consider the status of the SCTP Association and
underlying IP network and any congestion information received from
the remote site.
Morneault & Pastor-Balbas Standards Track [Page 21]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
1.5.3. Example 3: SGP Resident SCCP Layer, with Remote ASP
******** SS7 ***************** IP ********
* SEP *---------* *--------* *
* or * * SGP * * ASP *
* STP * * * * *
******** ***************** ********
+------+ +---------------+ +------+
| SCCP-| | SCCP | | SCCP-|
| User | +---------------+ | User |
+------+ | _____ | +------+
| SCCP | | | | | | SCCP |
+------+ +------+-+------+ +------+
| MTP3 | | MTP3 | | M3UA | | M3UA |
+------| +------+ +------+ +------+
| MTP2 | | MTP2 | | SCTP | | SCTP |
+------+ +------+ +------+ +------+
| L1 | | L1 | | IP | | IP |
+------+ +------+ +------+ +------+
|_______________| |______________|
STP - SS7 Signalling Transfer Point
In this example, the SGP contains an instance of the SS7 SCCP
protocol layer that may, for example, perform the SCCP Global Title
Translation (GTT) function for messages logically addressed to the SG
SCCP. If the result of a GTT for an SCCP message yields an SS7 DPC
or DPC/SSN address of an SCCP peer located in the IP domain, the
resulting MTP-TRANSFER request primitive is sent to the local M3UA-
resident network address translation and mapping function for ongoing
routing to the final IP destination.
Similarly, the SCCP instance in an SGP can perform the SCCP GTT
service for messages logically addressed to it from SCCP peers in the
IP domain. In this case, MTP-TRANSFER indication primitives are sent
from the local M3UA-resident network address translation and mapping
function to the SCCP for GTT. If the result of the GTT yields the
address of an SCCP peer in the SS7 network, then the resulting MTP-
TRANSFER request primitive is given to the MTP3 for delivery to an
SS7-resident node.
It is possible that the above SCCP GTT at the SGP could yield the
address of an SCCP peer in the IP domain, and that the resulting
MTP-TRANSFER request primitive would be sent back to the M3UA layer
for delivery to an IP destination.
Morneault & Pastor-Balbas Standards Track [Page 22]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
For internal SGP modeling purposes, this may be accomplished with the
use of an implementation-dependent nodal interworking function within
the SGP that effectively sits below the SCCP and routes MTP-TRANSFER
request/indication messages to/from both the MTP3 and the M3UA layer,
based on the SS7 DPC or DPC/SI address information. This nodal
interworking function has no visible peer protocol with either the
ASP or SEP.
Note that the services and interface provided by the M3UA layer are
the same as in Example 1 and that the functions taking place in the
SCCP entity are transparent to the M3UA layer. The SCCP protocol
functions are not reproduced in the M3UA protocol.
1.6. Definition of M3UA Boundaries
This section provides a definition of the boundaries of the M3UA
protocol. They consist of SCTP, Layer Management, and the MTP3-User.
+-----------+
| MTP3-User |
+-----------+
|
|
+-----------+ +------------+
| M3UA |-----| Layer Mgmt |
+-----------+ +------------+
|
|
+-----------+
| SCTP |
+-----------+
1.6.1. Definition of the Boundary between M3UA and an MTP3-User
From ITU Q.701 [7]:
MTP-TRANSFER request
MTP-TRANSFER indication
MTP-PAUSE indication
MTP-RESUME indication
MTP-STATUS indication
1.6.2. Definition of the Boundary between M3UA and SCTP
An example of the upper-layer primitives provided by the SCTP are
provided in Reference [18], Section 10.
Morneault & Pastor-Balbas Standards Track [Page 23]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
1.6.3. Definition of the Boundary between M3UA and Layer Management
M-SCTP_ESTABLISH request
Direction: LM -> M3UA
Purpose: LM requests that ASP establish an SCTP association with its
peer.
M-SCTP_ESTABLISH confirm
Direction: M3UA -> LM
Purpose: ASP confirms to LM that it has established an SCTP
association with its peer.
M-SCTP_ESTABLISH indication
Direction: M3UA -> LM
Purpose: M3UA informs LM that a remote ASP has established an SCTP
association.
M-SCTP_RELEASE request
Direction: LM -> M3UA
Purpose: LM requests that ASP release an SCTP association with its
peer.
M-SCTP_RELEASE confirm
Direction: M3UA -> LM
Purpose: ASP confirms to LM that it has released SCTP association
with its peer.
M-SCTP_RELEASE indication
Direction: M3UA -> LM
Purpose: M3UA informs LM that a remote ASP has released an SCTP
Association or that the SCTP association has failed.
M-SCTP_RESTART indication
Direction: M3UA -> LM
Purpose: M3UA informs LM that an SCTP restart indication has been
received.
M-SCTP_STATUS request
Direction: LM -> M3UA
Purpose: LM requests that M3UA report the status of an SCTP
association.
M-SCTP_STATUS confirm
Direction: M3UA -> LM
Purpose: M3UA responds with the status of an SCTP association.
Morneault & Pastor-Balbas Standards Track [Page 24]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
M-SCTP STATUS indication
Direction: M3UA -> LM
Purpose: M3UA reports the status of an SCTP association.
M-ASP_STATUS request
Direction: LM -> M3UA
Purpose: LM requests that M3UA report the status of a local or remote
ASP.
M-ASP_STATUS confirm
Direction: M3UA -> LM
Purpose: M3UA reports the status of local or remote ASP.
M-AS_STATUS request
Direction: LM -> M3UA
Purpose: LM requests that M3UA report the status of an AS.
M-AS_STATUS confirm
Direction: M3UA -> LM
Purpose: M3UA reports the status of an AS.
M-NOTIFY indication
Direction: M3UA -> LM
Purpose: M3UA reports that it has received a Notify message
from its peer.
M-ERROR indication
Direction: M3UA -> LM
Purpose: M3UA reports that it has received an Error message from
its peer or that a local operation has been unsuccessful.
M-ASP_UP request
Direction: LM -> M3UA
Purpose: LM requests that ASP start its operation and send an ASP Up
message to its peer.
M-ASP_UP confirm
Direction: M3UA -> LM
Purpose: ASP reports that it has received an ASP UP Ack message from
its peer.
M-ASP_UP indication
Direction: M3UA -> LM
Purpose: M3UA reports that it has successfully processed an incoming
ASP Up message from its peer.
Morneault & Pastor-Balbas Standards Track [Page 25]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
M-ASP_DOWN request
Direction: LM -> M3UA
Purpose: LM requests that ASP stop its operation and send an ASP Down
message to its peer.
M-ASP_DOWN confirm
Direction: M3UA -> LM
Purpose: ASP reports that it has received an ASP Down Ack message
from its peer.
M-ASP_DOWN indication
Direction: M3UA -> LM
Purpose: M3UA reports that it has successfully processed an incoming
ASP Down message from its peer, or the SCTP association has
been lost/reset.
M-ASP_ACTIVE request
Direction: LM -> M3UA
Purpose: LM requests that ASP send an ASP Active message to its peer.
M-ASP_ACTIVE confirm
Direction: M3UA -> LM
Purpose: ASP reports that it has received an ASP Active
Ack message from its peer.
M-ASP_ACTIVE indication
Direction: M3UA -> LM
Purpose: M3UA reports that it has successfully processed an incoming
ASP Active message from its peer.
M-ASP_INACTIVE request
Direction: LM -> M3UA
Purpose: LM requests that ASP send an ASP Inactive message to its
peer.
M-ASP_INACTIVE confirm
Direction: LM -> M3UA
Purpose: ASP reports that it has received an ASP Inactive
Ack message from its peer.
M-ASP_INACTIVE indication
Direction: M3UA -> LM
Purpose: M3UA reports that it has successfully processed an incoming
ASP Inactive message from its peer.
M-AS_ACTIVE indication
Direction: M3UA -> LM
Purpose: M3UA reports that an AS has moved to the AS-ACTIVE state.
Morneault & Pastor-Balbas Standards Track [Page 26]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
M-AS_INACTIVE indication
Direction: M3UA -> LM
Purpose: M3UA reports that an AS has moved to the AS-INACTIVE state.
M-AS_DOWN indication
Direction: M3UA -> LM
Purpose: M3UA reports that an AS has moved to the AS-DOWN state.
If dynamic registration of RK is supported by the M3UA layer, the
layer MAY support the following additional primitives:
M-RK_REG request
Direction: LM -> M3UA
Purpose: LM requests that ASP register RK(s) with its peer by sending
an REG REQ message
M-RK_REG confirm
Direction: M3UA -> LM
Purpose: ASP reports that it has received REG RSP message with a
registration status of successful from its peer.
M-RK_REG indication
Direction: M3UA -> LM
Purpose: M3UA informs LM that it has successfully processed an
incoming REG REQ message.
M-RK_DEREG request
Direction: LM -> M3UA
Purpose: LM requests that ASP deregister RK(s) with its peer by
sending a DEREG REQ message.
M-RK_DEREG confirm
Direction: M3UA -> LM
Purpose: ASP reports that it has received DEREG REQ message with a
deregistration status of successful from its peer.
M-RK_DEREG indication
Direction: M3UA -> LM
Purpose: M3UA informs LM that it has successfully processed an
incoming DEREG REQ from its peer.
2. Conventions
In this document, the keywords MUST, MUST NOT, REQUIRED, SHALL, SHALL
NOT, SHOULD, SHOULD NOT, RECOMMENDED, NOT RECOMMENDED, MAY, and
OPTIONAL are to be interpreted as described in [21].
Morneault & Pastor-Balbas Standards Track [Page 27]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
3. M3UA Protocol Elements
The general M3UA message format includes a Common Message Header
followed by zero or more parameters as defined by the Message Type.
For forward compatibility, all Message Types may have attached
parameters even if none are specified in this version.
3.1. Common Message Header
The protocol messages for MTP3-User Adaptation require a message
header that contains the adaptation layer version, the message type,
and message length.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Version | Reserved | Message Class | Message Type |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Message Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
\ \
/ /
All fields in an M3UA message MUST be transmitted in network byte
order, unless otherwise stated.
3.1.1. M3UA Protocol Version: 8 bits (unsigned integer)
The version field contains the version of the M3UA adaptation layer.
The supported versions are as follows:
1 Release 1.0
3.1.2. Message Classes and Types
The following list contains the valid Message Classes:
Message Class: 8 bits (unsigned integer)
The following list contains the valid Message Type Classes:
0 Management (MGMT) Messages
1 Transfer Messages
2 SS7 Signalling Network Management (SSNM) Messages
3 ASP State Maintenance (ASPSM) Messages
4 ASP Traffic Maintenance (ASPTM) Messages
5 Reserved for Other SIGTRAN Adaptation Layers
Morneault & Pastor-Balbas Standards Track [Page 28]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
6 Reserved for Other SIGTRAN Adaptation Layers
7 Reserved for Other SIGTRAN Adaptation Layers
8 Reserved for Other SIGTRAN Adaptation Layers
9 Routing Key Management (RKM) Messages
10 to 127 Reserved by the IETF
128 to 255 Reserved for IETF-Defined Message Class extensions
Message Type: 8 bits (unsigned integer)
The following list contains the message types for the defined
messages.
Management (MGMT) Messages (see Section 3.8)
0 Error (ERR)
1 Notify (NTFY)
2 to 127 Reserved by the IETF
128 to 255 Reserved for IETF-Defined MGMT extensions
Transfer Messages (see Section 3.3)
0 Reserved
1 Payload Data (DATA)
2 to 127 Reserved by the IETF
128 to 255 Reserved for IETF-Defined Transfer extensions
SS7 Signalling Network Management (SSNM) Messages (see Section
3.4)
0 Reserved
1 Destination Unavailable (DUNA)
2 Destination Available (DAVA)
3 Destination State Audit (DAUD)
4 Signalling Congestion (SCON)
5 Destination User Part Unavailable (DUPU)
6 Destination Restricted (DRST)
7 to 127 Reserved by the IETF
128 to 255 Reserved for IETF-Defined SSNM extensions
ASP State Maintenance (ASPSM) Messages (see Section 3.5)
0 Reserved
1 ASP Up (ASPUP)
2 ASP Down (ASPDN)
3 Heartbeat (BEAT)
4 ASP Up Acknowledgement (ASPUP ACK)
5 ASP Down Acknowledgement (ASPDN ACK)
6 Heartbeat Acknowledgement (BEAT ACK)
Morneault & Pastor-Balbas Standards Track [Page 29]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
7 to 127 Reserved by the IETF
128 to 255 Reserved for IETF-Defined ASPSM extensions
ASP Traffic Maintenance (ASPTM) Messages (see Section 3.7)
0 Reserved
1 ASP Active (ASPAC)
2 ASP Inactive (ASPIA)
3 ASP Active Acknowledgement (ASPAC ACK)
4 ASP Inactive Acknowledgement (ASPIA ACK)
5 to 127 Reserved by the IETF
128 to 255 Reserved for IETF-Defined ASPTM extensions
Routing Key Management (RKM) Messages (see Section 3.6)
0 Reserved
1 Registration Request (REG REQ)
2 Registration Response (REG RSP)
3 Deregistration Request (DEREG REQ)
4 Deregistration Response (DEREG RSP)
5 to 127 Reserved by the IETF
128 to 255 Reserved for IETF-Defined RKM extensions
3.1.3. Reserved: 8 Bits
The Reserved field SHOULD be set to all '0's and ignored by the
receiver.
3.1.4. Message Length: 32-Bits (Unsigned Integer)
The Message Length defines the length of the message in octets,
including the Common Header. The Message Length MUST include
parameter padding octets, if there are any.
Note: A receiver SHOULD accept the message whether or not the final
parameter padding is included in the message length.
3.2. Variable-Length Parameter Format
M3UA messages consist of a Common Header followed by zero or more
variable-length parameters, as defined by the message type. All the
parameters contained in a message are defined in a Tag Length-Value
format, as shown below.
Morneault & Pastor-Balbas Standards Track [Page 30]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Parameter Tag | Parameter Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
\ \
/ Parameter Value /
\ \
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Where more than one parameter is included in a message, the
parameters may be in any order, except where explicitly mandated. A
receiver SHOULD accept the parameters in any order.
Unless explicitly stated or shown in a message format diagram, only
one parameter of the same type is allowed in a message.
Parameter Tag: 16 bits (unsigned integer)
The Tag field is a 16-bit identifier of the type of parameter. It
takes a value of 0 to 65534. Common parameters used by adaptation
layers are in the range of 0x00 to 0x3f. M3UA-specific parameters
have Tags in the range 0x0200 to 0x02ff. The parameter Tags
defined are as follows:
Common Parameters. These TLV parameters are common across the
different adaptation layers:
Parameter Name Parameter ID
============== ============
Reserved 0x0000
Not Used in M3UA 0x0001
Not Used in M3UA 0x0002
Not Used in M3UA 0x0003
INFO String 0x0004
Not Used in M3UA 0x0005
Routing Context 0x0006
Diagnostic Information 0x0007
Not Used in M3UA 0x0008
Heartbeat Data 0x0009
Not Used in M3UA 0x000a
Traffic Mode Type 0x000b
Error Code 0x000c
Status 0x000d
Not Used in M3UA 0x000e
Not Used in M3UA 0x000f
Not Used in M3UA 0x0010
ASP Identifier 0x0011
Morneault & Pastor-Balbas Standards Track [Page 31]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
Affected Point Code 0x0012
Correlation ID 0x0013
M3UA-Specific parameters. These TLV parameters are specific to the
M3UA protocol:
Network Appearance 0x0200
Reserved 0x0201
Reserved 0x0202
Reserved 0x0203
User/Cause 0x0204
Congestion Indications 0x0205
Concerned Destination 0x0206
Routing Key 0x0207
Registration Result 0x0208
Deregistration Result 0x0209
Local Routing Key Identifier 0x020a
Destination Point Code 0x020b
Service Indicators 0x020c
Reserved 0x020d
Originating Point Code List 0x020e
Reserved 0x020f
Protocol Data 0x0210
Reserved 0x0211
Registration Status 0x0212
Deregistration Status 0x0213
Reserved by the IETF 0x0214 to 0xffff
The value of 65535 is reserved for IETF-defined extensions.
Values other than those defined in specific parameter descriptions
are reserved for use by the IETF. An RFC is required to make use
of parameter values "Reserved by the IETF".
Parameter Length: 16 bits (unsigned integer)
The Parameter Length field contains the size of the parameter in
octets, including the Parameter Tag, Parameter Length, and
Parameter Value fields. Thus, a parameter with a zero-length
Parameter Value field would have a Length field of 4. The
Parameter Length does not include any padding octets. If the
parameter contains subparameters, the Parameter Length field will
include all the octets of each subparameter, including
subparameter padding octets (if there are any).
Parameter Value: variable length
The Parameter Value field contains the actual information to be
transferred in the parameter.
Morneault & Pastor-Balbas Standards Track [Page 32]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
The total length of a parameter (including Tag, Parameter Length,
and Value fields) MUST be a multiple of 4 octets. If the length
of the parameter is not a multiple of 4 octets, the sender pads
the Parameter at the end (i.e., after the Parameter Value field)
with all zero octets. The length of the padding is NOT included
in the parameter length field. A sender MUST NOT pad with more
than 3 octets. The receiver MUST ignore the padding octets.
3.3. Transfer Messages
The following section describes the Transfer messages and parameter
contents.
3.3.1. Payload Data Message (DATA)
The DATA message contains the SS7 MTP3-User protocol data, which is
an MTP-TRANSFER primitive, including the complete MTP3 Routing Label.
The DATA message contains the following variable-length parameters:
Network Appearance Optional
Routing Context Conditional
Protocol Data Mandatory
Correlation Id Optional
The following format MUST be used for the Data Message:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tag = 0x0200 | Length = 8 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Network Appearance |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tag = 0x0006 | Length = 8 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Routing Context |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tag = 0x0210 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
\ \
/ Protocol Data /
\ \
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tag = 0x0013 | Length = 8 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Correlation Id |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Morneault & Pastor-Balbas Standards Track [Page 33]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
Network Appearance: 32 bits (unsigned integer)
The Network Appearance parameter identifies the SS7 network
context for the message and implicitly identifies the SS7 Point
Code format used, the SS7 Network Indicator value, and the MTP3
and possibly the MTP3-User protocol type/variant/version used
within the specific SS7 network. Where an SG operates in the
context of a single SS7 network, or if individual SCTP
associations are dedicated to each SS7 network context, the
Network Appearance parameter is not required. In other cases, the
parameter may be configured to be present for the use of the
receiver.
The Network Appearance parameter value is of local significance
only, coordinated between the SGP and ASP. Therefore, in the case
where an ASP is connected to more than one SGP, the same SS7
network context may be identified by different Network Appearance
values, depending on which SGP a message is being transmitted/
received.
Where the optional Network Appearance parameter is present, it
MUST be the first parameter in the message, as it defines the
format of the Protocol Data field.
IMPLEMENTATION NOTE: For simplicity of configuration, it may be
desirable to use the same NA value across all nodes sharing a
particular network context.
Routing Context: 32 bits (unsigned integer)
The Routing Context parameter contains the Routing Context value
associated with the DATA message. Where a Routing Key has not
been coordinated between the SGP and ASP, sending of Routing
Context is not required. Where multiple Routing Keys and Routing
Contexts are used across a common association, the Routing Context
MUST be sent to identify the traffic flow, assisting in the
internal distribution of Data messages.
Protocol Data: variable length
The Protocol Data parameter contains the original SS7 MTP3
message, including the Service Information Octet and Routing
Label.
Morneault & Pastor-Balbas Standards Track [Page 34]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
The Protocol Data parameter contains the following fields:
Service Indicator
Network Indicator
Message Priority
Destination Point Code
Originating Point Code
Signalling Link Selection Code (SLS)
User Protocol Data, which includes
MTP3-User protocol elements (e.g., ISUP, SCCP, or TUP
parameters)
The Protocol Data parameter is encoded as follows:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Originating Point Code |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Destination Point Code |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SI | NI | MP | SLS |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
\ \
/ User Protocol Data /
\ \
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Originating Point Code: 32 bits (unsigned integer)
Destination Point Code: 32 bits (unsigned integer)
The Originating and Destination Point Code fields contains the OPC
and DPC from the routing label of the original SS7 message in Network
Byte Order, justified to the least significant bit. Unused bits are
coded `0'.
Service Indicator: 8 bits (unsigned integer)
The Service Indicator field contains the SI field from the original
SS7 message justified to the least significant bit. Unused bits are
coded `0'.
Morneault & Pastor-Balbas Standards Track [Page 35]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
Network Indicator: 8 bits (unsigned integer)
The Network Indicator contains the NI field from the original SS7
message justified to the least significant bit. Unused bits are
coded `0'.
Message Priority: 8 bits (unsigned integer)
The Message Priority field contains the MP bits (if any) from the
original SS7 message, both for ANSI-style and TTC-style [26] message
priority bits. The MP bits are aligned to the least significant bit.
Unused bits are coded `0'.
Signalling Link Selection: 8 bits (unsigned integer)
The Signalling Link Selection field contains the SLS bits from the
routing label of the original SS7 message justified to the least
significant bit and in Network Byte Order. Unused bits are coded
`0'.
User Protocol Data: variable-length octet string
The User Protocol Data field contains an octet string of MTP-User
information from the original SS7 message, starting with the first
octet of the original SS7 message following the Routing Label
[7][8][26].
Correlation Id: 32 bits (unsigned integer)
The Correlation Id parameter uniquely identifies the MSU carried in
the Protocol Data within an AS. This Correlation Id parameter is
assigned by the sending M3UA.
3.4. SS7 Signalling Network Management (SSNM) Messages
3.4.1. Destination Unavailable (DUNA)
The DUNA message is sent from an SGP in an SG to all concerned ASPs
to indicate that the SG has determined that one or more SS7
destinations are unreachable. It is also sent by an SGP in response
to a message from the ASP to an unreachable SS7 destination. As an
implementation option, the SG may suppress the sending of subsequent
"response" DUNA messages regarding a certain unreachable SS7
destination for a certain period to give the remote side time to
react. If there is no alternate route via another SG, the MTP3-User
at the ASP is expected to stop traffic to the affected destination
via the SG as per the defined MTP3-User procedures.
Morneault & Pastor-Balbas Standards Track [Page 36]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
The DUNA message contains the following parameters:
Network Appearance Optional
Routing Context Conditional
Affected Point Code Mandatory
INFO String Optional
The format for DUNA Message parameters is as follows:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tag = 0x0200 | Length = 8 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Network Appearance |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tag = 0x0006 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
\ \
/ Routing Context /
\ \
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tag = 0x0012 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Mask | Affected PC 1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
\ \
/ ... /
\ \
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Mask | Affected PC n |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tag = 0x0004 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
\ \
/ INFO String /
\ \
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Network Appearance: 32-bit unsigned integer
The description of Network Appearance in Section 3.3.1 applies,
with the exception that Network Appearance does not have to be the
first parameter in this message.
Morneault & Pastor-Balbas Standards Track [Page 37]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
Routing Context: n x 32 bits (unsigned integer)
The conditional Routing Context parameter contains the Routing
Context values associated with the DUNA message. Where a Routing
Key has not been coordinated between the SGP and ASP, sending of
Routing Context is not required. Where multiple Routing Keys and
Routing Contexts are used across a common association, the Routing
Context(s) MUST be sent to identify the concerned traffic flows
for which the DUNA message applies, assisting in outgoing traffic
management and internal distribution of MTP-PAUSE indications to
MTP3-Users at the receiver.
Affected Point Code: n x 32 bits
The Affected Point Code parameter contains a list of Affected
Destination Point Code fields, each a three-octet parameter to
allow for 14-, 16-, and 24-bit binary formatted SS7 Point Codes.
Affected Point Codes that are less than 24 bits are padded on the
left to the 24-bit boundary. The encoding is shown below for ANSI
and ITU Point Code examples.
ANSI 24-bit Point Code
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Mask | Network | Cluster | Member |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|MSB-----------------------------------------LSB|
ITU 14-bit Point Code
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Mask |0 0 0 0 0 0 0 0 0 0|Zone | Region | SP |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|MSB--------------------LSB|
It is optional to send an Affected Point Code parameter with more
than one Affected PC, but it is mandatory to receive it.
Including multiple Affected PCs may be useful when receipt of an
MTP3 management message or a linkset event simultaneously affects
the availability status of a list of destinations at an SG.
Morneault & Pastor-Balbas Standards Track [Page 38]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
Mask: 8 bits (unsigned integer)
The Mask field can be used to identify a contiguous range of
Affected Destination Point Codes. Identifying a contiguous range
of Affected DPCs may be useful when receipt of an MTP3 management
message or a linkset event simultaneously affects the availability
status of a series of destinations at an SG.
The Mask parameter is an integer representing a bit mask that can
be applied to the related Affected PC field. The bit mask
identifies how many bits of the Affected PC field are significant
and which are effectively "wildcarded". For example, a mask of
"8" indicates that the last eight bits of the PC are "wildcarded".
For an ANSI 24-bit Affected PC, this is equivalent to signalling
that all PCs in an ANSI Cluster are unavailable. A mask of "3"
indicates that the last three bits of the PC are "wildcarded".
For a 14-bit ITU Affected PC, this is equivalent to signaling that
an ITU Region is unavailable. A mask value equal (or greater
than) the number of bits in the PC indicates that the entire
network appearance is affected; this is used to indicate network
isolation to the ASP.
INFO String: variable length
The optional INFO String parameter can carry any meaningful UTF-8
[10] character string along with the message. Length of the INFO
String parameter is from 0 to 255 octets. No procedures are
presently identified for its use, but the INFO String MAY be used
for debugging purposes. An INFO String with a zero-length
parameter is not considered an error (a zero length parameter is
one in which the Length field in the TLV will be set to 4).
3.4.2. Destination Available (DAVA)
The DAVA message is sent from an SGP to all concerned ASPs to
indicate that the SG has determined that one or more SS7 destinations
are now reachable (and not restricted), or in response to a DAUD
message, if appropriate. If the ASP M3UA layer previously had no
routes to the affected destinations, the ASP MTP3-User protocol is
informed and may now resume traffic to the affected destination. The
ASP M3UA layer now routes the MTP3-user traffic through the SG
initiating the DAVA message.
Morneault & Pastor-Balbas Standards Track [Page 39]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
The DAVA message contains the following parameters:
Network Appearance Optional
Routing Context Conditional
Affected Point Code Mandatory
INFO String Optional
The format and description of the Network Appearance, Routing
Context, Affected Point Code, and INFO String parameters are the same
as for the DUNA message (See Section 3.4.1).
3.4.3. Destination State Audit (DAUD)
The DAUD message MAY be sent from the ASP to the SGP to audit the
availability/congestion state of SS7 routes from the SG to one or
more affected destinations.
The DAUD message contains the following parameters:
Network Appearance Optional
Routing Context Conditional
Affected Point Code Mandatory
INFO String Optional
The format and description of DAUD Message parameters are the same as
for the DUNA message (See Section 3.4.1).
It is recommended that during normal operation (traffic handling) the
mask field of the Affected Point Code parameter in the DAUD message
be kept to a zero value in order to avoid SG overloading.
3.4.4. Signalling Congestion (SCON)
The SCON message can be sent from an SGP to all concerned ASPs to
indicate that an SG has determined that there is congestion in the
SS7 network to one or more destinations, or to an ASP in response to
a DATA or DAUD message, as appropriate. For some MTP protocol
variants (e.g., ANSI MTP) the SCON message may be sent when the SS7
congestion level changes. The SCON message MAY also be sent from the
M3UA layer of an ASP to an M3UA peer, indicating that the congestion
level of the M3UA layer or the ASP has changed.
IMPLEMENTATION NOTE: An M3UA node may maintain a timer to control
congestion notification validity, if desired. This timer will be
useful in cases where the peer node fails to indicate congestion
abatement.
Morneault & Pastor-Balbas Standards Track [Page 40]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
The SCON message contains the following parameters:
Network Appearance Optional
Routing Context Conditional
Affected Point Code Mandatory
Concerned Destination Optional
Congestion Indications Optional
INFO String Optional
The format for SCON Message parameters is as follows:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tag = 0x0200 | Length = 8 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Network Appearance |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tag = 0x0006 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
\ \
/ Routing Context /
\ \
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tag = 0x0012 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Mask | Affected PC 1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
\ \
/ ... /
\ \
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Mask | Affected PC n |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tag = 0x0206 | Length = 8 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| reserved | Concerned DPC |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tag = 0x0205 | Length = 8 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved | Cong. Level |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tag = 0x0004 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
\ \
/ INFO String /
\ \
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Morneault & Pastor-Balbas Standards Track [Page 41]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
The format and description of the Network Appearance, Routing
Context, Affected Point Code, and INFO String parameters are the
same as for the DUNA message (see Section 3.4.1).
The Affected Point Code parameter can be used to indicate
congestion of multiple destinations or ranges of destinations.
Concerned Destination: 32 bits
The optional Concerned Destination parameter is only used if the
SCON message is sent from an ASP to the SGP. It contains the
point code of the originator of the message that triggered the
SCON message. The Concerned Destination parameter contains one
Concerned Destination Point Code field, a three-octet parameter to
allow for 14-, 16-, and 24-bit binary formatted SS7 Point Codes.
A Concerned Point Code that is less than 24 bits is padded on the
left to the 24-bit boundary. Any resulting Transfer Controlled
(TFC) message from the SG is sent to the Concerned Point Code
using the single Affected DPC contained in the SCON message to
populate the (affected) Destination field of the TFC message
Congested Indications: 32 bits
The optional Congestion Indications parameter contains a
Congestion Level field. This optional parameter is used to
communicate congestion levels in national MTP networks with
multiple congestion thresholds, such as in ANSI MTP3. For MTP
congestion methods without multiple congestion levels (e.g., the
ITU international method) the parameter is not included.
Congestion Level field: 8 bits (unsigned integer)
The Congestion Level field, associated with all of the Affected
DPC(s) in the Affected Destinations parameter, contains one of the
following values:
0 No Congestion or Undefined
1 Congestion Level 1
2 Congestion Level 2
3 Congestion Level 3
The congestion levels are defined in the congestion method in the
appropriate national MTP recommendations [7,8].
Morneault & Pastor-Balbas Standards Track [Page 42]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
3.4.5. Destination User Part Unavailable (DUPU)
The DUPU message is used by an SGP to inform concerned ASPs that a
remote peer MTP3-User Part (e.g., ISUP or SCCP) at an SS7 node is
unavailable.
The DUPU message contains the following parameters:
Network Appearance Optional
Routing Context Conditional
Affected Point Code Mandatory
User/Cause Mandatory
INFO String Optional
The format for DUPU message parameters is as follows:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tag = 0x0200 | Length = 8 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Network Appearance |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tag = 0x0006 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
\ \
/ Routing Context /
\ \
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tag = 0x0012 | Length = 8 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Mask = 0 | Affected PC |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tag = 0x0204 | Length = 8 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Cause | User |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tag = 0x0004 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
\ \
/ INFO String /
\ \
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Morneault & Pastor-Balbas Standards Track [Page 43]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
User/Cause: 32 bits
The Unavailability Cause and MTP3-User Identity fields, associated
with the Affected PC in the Affected Point Code parameter, are
encoded as follows:
Unavailability Cause field: 16 bits (unsigned integer)
The Unavailability Cause parameter provides the reason for the
unavailability of the MTP3-User. The valid values for the
Unavailability Cause parameter are shown in the following table.
The values agree with those provided in the SS7 MTP3 User Part
Unavailable message. Depending on the MTP3 protocol used in the
Network Appearance, additional values may be used; the
specification of the relevant MTP3 protocol variant/version
recommendation is definitive.
0 Unknown
1 Unequipped Remote User
2 Inaccessible Remote User
MTP3-User Identity field: 16 bits (unsigned integer)
The MTP3-User Identity describes the specific MTP3-User that is
unavailable (e.g., ISUP, SCCP, etc.). Some of the valid values
for the MTP3-User Identity are shown below. The values align with
those provided in the SS7 MTP3 User Part Unavailable message and
Service Indicator. Depending on the MTP3 protocol variant/version
used in the Network Appearance, additional values may be used.
The relevant MTP3 protocol variant/version recommendation is
definitive.
0 to 2 Reserved
3 SCCP
4 TUP
5 ISUP
6 to 8 Reserved
9 Broadband ISUP
10 Satellite ISUP
11 Reserved
12 AAL type 2 Signalling
13 Bearer Independent Call Control (BICC)
14 Gateway Control Protocol
15 Reserved
The format and description of the Affected Point Code parameter
are the same as for the DUNA message (see Section 3.4.1.) except
that the Mask field is not used and only a single Affected DPC is
Morneault & Pastor-Balbas Standards Track [Page 44]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
included. Ranges and lists of Affected DPCs cannot be signaled in
a DUPU message, but this is consistent with UPU operation in the
SS7 network. The Affected Destinations parameter in an MTP3 User
Part Unavailable message (UPU) received by an SGP from the SS7
network contains only one destination.
The format and description of the Network Appearance, Routing
Context, and INFO String parameters are the same as for the DUNA
message (see Section 3.4.1).
3.4.6. Destination Restricted (DRST)
The DRST message is optionally sent from the SGP to all concerned
ASPs to indicate that the SG has determined that one or more SS7
destinations are now restricted from the point of view of the SG,
or in response to a DAUD message, if appropriate. The M3UA layer
at the ASP is expected to send traffic to the affected destination
via an alternate SG with a route of equal priority, but only if
such an alternate route exists and is available. If the affected
destination is currently considered unavailable by the ASP, The
MTP3-User should be informed that traffic to the affected
destination can be resumed. In this case, the M3UA layer should
route the traffic through the SG initiating the DRST message.
This message is optional for the SG to send, and it is optional
for the ASP to act on any information received in the message. It
is for use in the "STP" case described in Section 1.4.1.
The DRST message contains the following parameters:
Network Appearance Optional
Routing Context Conditional
Affected Point Code Mandatory
INFO String Optional
The format and description of the Network Appearance, Routing
Context, Affected Point Code, and INFO String parameters are the
same as for the DUNA message (see Section 3.4.1).
3.5. ASP State Maintenance (ASPSM) Messages
3.5.1. ASP Up
The ASP Up message is used to indicate to a remote M3UA peer that
the adaptation layer is ready to receive any ASPSM/ASPTM messages
for all Routing Keys that the ASP is configured to serve.
Morneault & Pastor-Balbas Standards Track [Page 45]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
The ASP Up message contains the following parameters:
ASP Identifier Optional
INFO String Optional
The format for ASP Up message parameters is as follows:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tag = 0x0011 | Length = 8 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ASP Identifier |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tag = 0x0004 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
\ \
/ INFO String /
\ \
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
ASP Identifier: 32-bit unsigned integer
The optional ASP Identifier parameter contains a unique value that
is locally significant among the ASPs that support an AS. The SGP
should save the ASP Identifier to be used, if necessary, with the
Notify message (see Section 3.8.2).
The format and description of the optional INFO String parameter
are the same as for the DUNA message (see Section 3.4.1).
3.5.2. ASP Up Acknowledgement (ASP Up Ack)
The ASP UP Ack message is used to acknowledge an ASP Up message
received from a remote M3UA peer.
The ASP Up Ack message contains the following parameters:
ASP Identifier Optional
INFO String Optional
Morneault & Pastor-Balbas Standards Track [Page 46]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
The format for ASP Up Ack message parameters is as follows:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tag = 0x0011 | Length = 8 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ASP Identifier |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tag =0x0004 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
\ \
/ INFO String /
\ \
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The optional ASP Identifier parameter is specifically useful for IPSP
communication. In that case, the IPSP answering the ASP Up message
MAY include its own ASP Identifier value.
The format and description of the optional INFO String parameter are
the same as for the DUNA message (see Section 3.4.1). The INFO
String in an ASP Up Ack message is independent from the INFO String
in the ASP Up message (i.e., it does not have to echo back the INFO
String received).
3.5.3. ASP Down
The ASP Down message is used to indicate to a remote M3UA peer that
the adaptation layer is NOT ready to receive DATA, SSNM, RKM, or
ASPTM messages.
The ASP Down message contains the following parameter:
INFO String Optional
The format for the ASP Down message parameters is as follows:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tag =0x0004 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
\ \
/ INFO String /
\ \
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Morneault & Pastor-Balbas Standards Track [Page 47]
RFC 4666 SS7 MTP3-User Adaptation Layer September 2006
The format and description of the optional INFO String parameter are
the same as for the DUNA message (see Section 3.4.1).
3.5.4. ASP Down Acknowledgement (ASP Down Ack)
The ASP Down Ack message is used to acknowledge an ASP Down message
received from a remote M3UA peer.
The ASP Down Ack message contains the following parameter:
INFO String Optional
The format for the ASP Down Ack message parameters is as follows:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tag = 0x0004 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
\ \
/ INFO String /
\ \
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The format and description of the optional INFO String parameter are
the same as for the DUNA message (See Section 3.4.1).
The INFO String in an ASP Down Ack message is independent from the
INFO String in the ASP Down message (i.e., it does not have to echo
back the INFO String received).
3.5.5. Heartbeat (BEAT)
The BEAT message is optionally used to ensure that the M3UA peers are
still available to each other. It is recommended for use when the
M3UA runs over a transport layer other than the SCTP, which has its