Tech-invite3GPPspaceIETFspace
96959493929190898887868584838281807978777675747372717069686766656463626160595857565554535251504948474645444342414039383736353433323130292827262524232221201918171615141312111009080706050403020100
in Index   Prev   Next

RFC 4666

Signaling System 7 (SS7) Message Transfer Part 3 (MTP3) - User Adaptation Layer (M3UA)

Pages: 124
Proposed Standard
Errata
Obsoletes:  3332
Part 2 of 5 – Pages 12 to 45
First   Prev   Next

Top   ToC   RFC4666 - Page 12   prevText

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.
Top   ToC   RFC4666 - Page 13
   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
Top   ToC   RFC4666 - Page 14
      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.
Top   ToC   RFC4666 - Page 15
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.
Top   ToC   RFC4666 - Page 16
   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.
Top   ToC   RFC4666 - Page 17
   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.
Top   ToC   RFC4666 - Page 18
   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.
Top   ToC   RFC4666 - Page 19

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
Top   ToC   RFC4666 - Page 20
   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,
Top   ToC   RFC4666 - Page 21
   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.
Top   ToC   RFC4666 - Page 22

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.
Top   ToC   RFC4666 - Page 23
   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.
Top   ToC   RFC4666 - Page 24

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.
Top   ToC   RFC4666 - Page 25
   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.
Top   ToC   RFC4666 - Page 26
   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.
Top   ToC   RFC4666 - Page 27
   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].
Top   ToC   RFC4666 - Page 28

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
Top   ToC   RFC4666 - Page 29
        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)
Top   ToC   RFC4666 - Page 30
        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.
Top   ToC   RFC4666 - Page 31
       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
Top   ToC   RFC4666 - Page 32
        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.
Top   ToC   RFC4666 - Page 33
      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 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Top   ToC   RFC4666 - Page 34
   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.
Top   ToC   RFC4666 - Page 35
      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'.
Top   ToC   RFC4666 - Page 36
   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.
Top   ToC   RFC4666 - Page 37
   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.
Top   ToC   RFC4666 - Page 38
   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.
Top   ToC   RFC4666 - Page 39
   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.
Top   ToC   RFC4666 - Page 40
   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.
Top   ToC   RFC4666 - Page 41
     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                           /
      \                                                               \
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Top   ToC   RFC4666 - Page 42
     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].
Top   ToC   RFC4666 - Page 43

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 / \ \ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Top   ToC   RFC4666 - Page 44
   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
Top   ToC   RFC4666 - Page 45
      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).


(page 45 continued on part 3)

Next Section