RFC 4233:Integrated Services Digital Network (ISDN...
RFC-Ref

1. Introduction


   In this document, the term Q.921-User refers to an upper layer that
   uses the services of Q.921, not the user side of ISDN interface [1].
   Examples of the upper layer would be Q.931 and QSIG.

   This section describes the need for ISDN Q.921-User Adaptation (IUA)
   layer protocol as well as how this protocol shall be implemented.


1.1. Scope


   There is a need for Switched Circuit Network (SCN) signaling protocol
   delivery from an ISDN Signaling Gateway (SG) to a Media Gateway
   Controller (MGC) as described in the Framework Architecture for

   Signaling Transport [5].  The delivery mechanism SHOULD meet the
   following criteria:

   *  Support for transport of the Q.921/Q.931 boundary primitives
   *  Support for communication between Layer Management modules on SG
      and MGC
   *  Support for management of SCTP active associations between SG
      and MGC

   This document supports both ISDN Primary Rate Access (PRA) as well as
   Basic Rate Access (BRA) including the support for both point-to-point
   and point-to-multipoint modes of communication.  This support
   includes Facility Associated Signaling (FAS), Non-Facility Associated
   Signaling (NFAS), and NFAS with backup D channel.  QSIG adaptation
   layer requirements do not differ from Q.931 adaptation layer; hence,
   the procedures described in this document are also applicable for a
   QSIG adaptation layer.  For simplicity, only Q.931 will be mentioned
   in the rest of this document.


1.2. Terminology


   Application Server (AS) - A logical entity serving a specific
   application instance.  An example of an Application Server is a MGC
   handling the Q.931 and call processing for D channels terminated by
   the Signaling Gateways.  Practically speaking, an AS is modeled at
   the SG as an ordered list of one or more related Application Server
   Processes (e.g., primary, secondary, tertiary).

   Application Server Process (ASP) - A process instance of an
   Application Server.  Examples of Application Server Processes are
   primary or backup MGC instances.

   Association - An association refers to an SCTP association.  The
   association will provide the transport for the delivery of Q.921-User
   protocol data units and IUA adaptation layer peer messages.

   Backhaul - A SG terminates the lower layers of an SCN protocol and
   backhauls the upper layer(s) to MGC for call processing.  For the
   purposes of this document, the SG terminates Q.921 and backhauls
   Q.931 to MGC.

   Fail-over - The capability to re-route signaling traffic as required
   between related ASPs in the event of failure or unavailability of the
   currently used ASP (e.g., from primary MGC to backup MGC).  Fail-over
   also applies upon the return to service of a previously unavailable
   process.

   Host - The computing platform that the ASP process is running on.

   Interface - For the purposes of this document, an interface supports
   the relevant ISDN signaling channel.  This signaling channel MAY be a
   16-kbps D channel for an ISDN BRA as well as 64-kbps primary or
   backup D channel for an ISDN PRA.  For QSIG, the signaling channel is
   a Qc channel.

   Interface Identifier - The Interface Identifier identifies the
   physical interface at the SG for which the signaling messages are
   sent/received.  The format of the Interface Identifier parameter can
   be text or integer, the values of which are assigned according to
   network operator policy.  The values used are of local significance
   only, coordinated between the SG and ASP.  Significance is not
   implied across SGs served by an AS.

   Layer Management - Layer Management is a nodal function that handles
   the inputs and outputs between the IUA layer and a local management
   entity.

   Network Byte Order - Most significant byte first, a.k.a big endian.

   Stream - A stream refers to an SCTP stream: a uni-directional 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 un-ordered delivery service.

   Q.921-User - Any protocol normally using the services of the ISDN
   Q.921 (e.g., Q.931, QSIG, etc.).


1.3. IUA Overview


   The architecture that has been defined [5] for SCN signaling
   transport over IP uses multiple components, including an IP transport
   protocol, a signaling common transport protocol, and an adaptation
   module to support the services expected by a particular SCN signaling
   protocol from its underlying protocol layer.

   This document defines an adaptation module that is suitable for the
   transport of ISDN Q.921-User (e.g., Q.931) messages.


1.3.1. Example: SG to MGC


   In a Signaling Gateway (SG), it is expected that the ISDN signaling
   is received over a standard ISDN network termination.  The SG then
   provides interworking of transport functions with IP Signaling
   Transport, in order to transport the Q.931 signaling messages to the
   MGC where the peer Q.931 protocol layer exists, as shown below:

            ******   ISDN        ******      IP      *******
            * EP *---------------* SG *--------------* MGC *
            ******               ******              *******

            +-----+                                  +-----+
            |Q.931|              (NIF)               |Q.931|
            +-----+           +----------+           +-----+
            |     |           |     | IUA|           | IUA |
            |     |           |     +----+           +-----+
            |Q.921|           |Q.921|SCTP|           |SCTP |
            |     |           |     +----+           +-----+
            |     |           |     | IP |           | IP  |
            +-----+           +-----+----+           +-----+

            NIF  - Nodal Interworking Function
            EP   - ISDN End Point
            SCTP - Stream Control Transmission Protocol (Refer to [4,8])
            IUA  - ISDN User Adaptation Layer Protocol

           Figure 1.  IUA in the SG to MGC Application

   It is recommended that the IUA use the services of the Stream Control
   Transmission Protocol (SCTP) as the underlying reliable common
   signaling transport protocol.  The use of SCTP provides the following
   features:

      -  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, and
      -  data segmentation to conform to discovered path MTU size.

   There are scenarios without redundancy requirements and scenarios in
   which redundancy is supported below the transport layer.  In these
   cases, the SCTP functions above MAY be determined to not be required
   and TCP MAY be used as the underlying common transport protocol.


1.3.2. Support for the Management of SCTP Associations between the SG


   The IUA layer at the SG maintains the availability state of all
   dynamically registered remote ASPs, in order to manage the SCTP
   associations and the traffic between the SG and ASPs.  As well, the
   active/inactive states of remote ASP(s) are maintained.  Active ASPs
   are those currently receiving traffic from the SG.

   The IUA layer MAY be instructed by local management to establish an
   SCTP association to a peer IUA node.  This can be achieved using the
   M-SCTP ESTABLISH primitive to request, indicate, and confirm the
   establishment of an SCTP association with a peer IUA node.

   The IUA layer MAY also need to inform local management of the status
   of the underlying SCTP associations using the M-SCTP STATUS request
   and indication primitive.  For example, the IUA MAY inform local
   management of the reason for the release of an SCTP association,
   determined either locally within the IUA layer or by a primitive from
   the SCTP.


1.3.3. ASP Fail-over Model and Terminology


   The IUA layer supports ASP fail-over functions in order to support a
   high availability of call processing capability.  All Q.921-User
   messages incoming to an SG are assigned to a unique Application
   Server, based on the Interface Identifier of the message.

   The Application Server is, in practical terms, a list of all ASPs
   configured to process Q.921-User messages from certain Interface
   Identifiers.  One or more ASPs in the list are normally active (i.e.,
   handling traffic) while any others MAY be unavailable or inactive, to
   be possibly used in the event of failure or unavailability of the
   active ASP(s).

   The IUA layer supports an n+k redundancy model (active-standby, load
   sharing, broadcast) where n 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.  Note that 1+1 active/standby redundancy
   is a subset of this model.  A simplex 1+0 model is also supported as
   a subset, with no ASP redundancy.


1.3.4. Client/Server Model


   It is recommended that the SG and ASP be able to support both client
   and server operation.  The peer endpoints using IUA 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
   default orientation would be for the SG to take on the role of server
   while the ASP is the client.  In this case, ASPs SHOULD initiate the
   SCTP association to the SG.

   The SCTP and TCP Registered User Port Number Assignment for IUA is
   9900.


1.4. Services Provided by the IUA Layer

1.4.1. Support for Transport of Q.921/Q.931 Boundary Primitives


   In the backhaul scenario, the Q.921/Q.931 boundary primitives are
   exposed.  IUA layer needs to support all of the primitives of this
   boundary to successfully backhaul Q.931.

   This includes the following primitives [1]:

   DL-ESTABLISH

   The DL-ESTABLISH primitives are used to request, indicate, and
   confirm the outcome of the procedures for establishing multiple frame
   operation.

   DL-RELEASE

   DL-RELEASE primitives are used to request, indicate, and confirm the
   outcome of the procedures for terminating a previously established
   multiple frame operation, or for reporting an unsuccessful
   establishment attempt.

   DL-DATA

   The DL-DATA primitives are used to request and indicate layer 3
   (Q.931) messages that are to be transmitted, or have been received,
   by the Q.921 layer using the acknowledged information transfer
   service.

   DL-UNIT DATA

   The DL-UNIT DATA primitives are used to request and indicate layer 3
   (Q.931) messages that are to be transmitted, by the Q.921 layer using
   the unacknowledged information transfer service.


1.4.2. Support for Communication between Layer Management Modules on SG


   It is envisioned that the IUA layer needs to provide some services
   that will facilitate communication between Layer Management modules
   on the SG and MGC.  These primitives are shown below:

   M-TEI STATUS

   The M-TEI STATUS primitives are used to request, confirm, and
   indicate the status (assigned/unassigned) of an ISDN Terminal
   Endpoint Identifier (TEI).

   M-ERROR

   The M-ERROR primitive is used to indicate an error with a received
   IUA message (e.g., interface identifier value is not known to the
   SG).


1.4.3. Support for Management of Active Associations between SG and MGC


   A set of primitives between the IUA layer and the Layer Management is
   defined below to help the Layer Management manage the SCTP
   association(s) between the SG and MGC.  The IUA layer can be
   instructed by the Layer Management to establish an SCTP association
   to a peer IUA node.  This procedure can be achieved using the M-SCTP
   ESTABLISH primitive.

   M-SCTP ESTABLISH

   The M-SCTP ESTABLISH primitives are used to request, indicate, and
   confirm the establishment of an SCTP association to a peer IUA node.

   M-SCTP RELEASE

   The M-SCTP RELEASE primitives are used to request, indicate, and
   confirm the release of an SCTP association to a peer IUA node.

   The IUA layer MAY also need to inform the status of the SCTP
   associations to the Layer Management.  This can be achieved using the
   M-SCTP STATUS primitive.

   M-SCTP STATUS

   The M-SCTP STATUS primitives are used to request and indicate the
   status of the underlying SCTP association(s).

   The Layer Management MAY need to inform the IUA layer of an AS/ASP
   status (i.e., failure, active, etc.), so that messages can be
   exchanged between IUA layer peers to stop traffic to the local IUA
   user.  This can be achieved using the M-ASP STATUS primitive.

   M-ASP STATUS

   The ASP status is stored inside IUA layer on both the SG and MGC
   sides.  The M-ASP STATUS primitive can be used by Layer Management to
   request the status of the Application Server Process from the IUA
   layer.  This primitive can also be used to indicate the status of the
   Application Server Process.

   M-ASP-UP

   The M-ASP-UP primitive can be used by Layer Management to send a ASP
   Up message for the Application Server Process.  It can also be used
   to generate an ASP Up Acknowledgement.

   M-ASP-DOWN

   The M-ASP-DOWN primitive can be used by Layer Management to send a
   ASP Down message for the Application Server Process.  It can also be
   used to generate an ASP Down Acknowledgement.

   M-ASP-ACTIVE

   The M-ASP-UP primitive can be used by Layer Management to send a ASP
   Active message for the Application Server Process.  It can also be
   used to generate an ASP Active Acknowledgement.

   M-ASP-INACTIVE

   The M-ASP-UP primitive can be used by Layer Management to send a ASP
   Inactive message for the Application Server Process.  It can also be
   used to generate an ASP Inactive Acknowledgement.

   M-AS STATUS

   The M-AS STATUS primitive can be used by Layer Management to request
   the status of the Application Server.  This primitive can also be
   used to indicate the status of the Application Server.


1.5. Functions Implemented by the IUA Layer

1.5.1. Mapping


   The IUA layer MUST maintain a map of the Interface Identifier to a
   physical interface on the Signaling Gateway.  A physical interface
   would be a T1 line, E1 line, etc., and could include the Time-
   Division Multiplexing (TDM) timeslot.  In addition, for a given
   interface the SG MUST be able to identify the associated signaling
   channel.  IUA layers on both SG and MGC MAY maintain the status of
   ISDN Terminal Endpoint Identifiers (TEIs) and Service Access Point
   Identifiers (SAPIs).

   The SG maps an Interface Identifier to an SCTP association/stream
   only when an ASP sends an ASP Active message for a particular
   Interface Identifier.  It MUST be noted, however, that this mapping
   is dynamic and could change at any time due to a change of ASP state.
   This mapping could even temporarily be invalid, for example, during
   fail-over of one ASP to another.  Therefore, the SG MUST maintain the
   states of AS/ASP and reference them during the routing of an messages
   to an AS/ASP.

   One example of the logical view of relationship between D channel,
   Interface Identifier, AS, and ASP in the SG is shown below:

           /---------------------------------------------------+
          /   /------------------------------------------------|--+
         /   /                                                 v  |
        /   /    +----+             act+-----+    +-------+ -+--+-|+--+-
 D chan1-------->|IID |-+          +-->| ASP |--->| Assoc |       v
          /      +----+ |  +----+  |   +-----+    +-------+ -+--+--+--+-
         /              +->| AS |--+                        Streams
        /        +----+ |  +----+   stb+-----+
 D chan2-------->|IID |-+              | ASP |
                +----+                +-----+

   where IID = Interface Identifier

   Note that an ASP can be in more than one AS.


1.5.2. Status of ASPs


   The IUA layer on the SG MUST maintain the state of the ASPs it is
   supporting.  The state of an ASP changes because of reception of
   peer-to-peer messages (ASPM messages as described in Section 3.3.2)
   or reception of indications from the local SCTP association.  ASP
   state transition procedures are described in Section 4.3.1.

   At a SG, an Application Server list MAY contain active and inactive
   ASPs to support ASP load-sharing and fail-over procedures.  When, for
   example, both a primary and a backup ASP are available, IUA peer
   protocol is required to control which ASP is currently active.  The
   ordered list of ASPs within a logical Application Server is kept
   updated in the SG to reflect the active Application Server
   Process(es).

   Also the IUA layer MAY need to inform the local management of the
   change in status of an ASP or AS.  This can be achieved using the
   M-ASP STATUS or M-AS STATUS primitives.


1.5.3. SCTP Stream Management


   SCTP allows a user-specified number of streams to be opened during
   the initialization.  It is the responsibility of the IUA layer to
   ensure proper management of these streams.  Because of the
   unidirectional nature of streams, an IUA layer is not aware of the
   stream number to Interface Identifier mapping of its peer IUA layer.
   Instead, the Interface Identifier is in the IUA message header.

   The use of SCTP streams within IUA is recommended in order to
   minimize transmission and buffering delay, therefore improving the
   overall performance and reliability of the signaling elements.  It is
   recommended that a separate SCTP stream is used for each D channel.


1.5.4. Seamless Network Management Interworking


   The IUA layer on the SG SHOULD pass an indication of unavailability
   of the IUA-User (Q.931) to the local Layer Management, if the
   currently active ASP moves from the ACTIVE state.  The Layer
   Management could instruct Q.921 to take some action, if it deems
   appropriate.

   Likewise, if an SCTP association fails, the IUA layer on both the SG
   and ASP sides MAY generate Release primitives to take the data links
   out-of-service.


1.5.5. Congestion Management


   If the IUA layer becomes congested (implementation dependent), it MAY
   stop reading from the SCTP association to flow control from the peer
   IUA.


1.6. Definition of IUA Boundaries

1.6.1. Definition of IUA/Q.921 Boundary


   DL-ESTABLISH
   DL-RELEASE
   DL-DATA
   DL-UNIT DATA


1.6.2. Definition of IUA/Q.931 Boundary


   DL-ESTABLISH
   DL-RELEASE
   DL-DATA
   DL-UNIT DATA


1.6.3. Definition of SCTP/IUA Boundary


   An example of the upper layer primitives provided by SCTP are
   available in Section 10 of RFC 2960prop [4].


1.6.4. Definition of IUA/Layer-Management Boundary


   M-SCTP ESTABLISH request
   Direction: LM -> IUA
   Purpose: LM requests ASP to establish an SCTP association with an SG.

   M-STCP ESTABLISH confirm
   Direction: IUA -> LM
   Purpose: ASP confirms to LM that it has established an SCTP
            association with an SG.

   M-SCTP ESTABLISH indication
   Direction: IUA -> LM
   Purpose: SG informs LM that an ASP has established an SCTP
            association.

   M-SCTP RELEASE request
   Direction: LM -> IUA
   Purpose: LM requests ASP to release an SCTP association with SG.

   M-SCTP RELEASE confirm
   Direction: IUA -> LM
   Purpose: ASP confirms to LM that it has released SCTP association
            with SG.

   M-SCTP RELEASE indication
   Direction: IUA -> LM
   Purpose: SG informs LM that ASP has released an SCTP association.

   M-SCTP STATUS request
   Direction: LM -> IUA
   Purpose: LM requests IUA to report status of SCTP association.

   M-SCTP STATUS indication
   Direction: IUA -> LM
   Purpose: IUA reports status of SCTP association.

   M-ASP STATUS request
   Direction: LM -> IUA
   Purpose: LM requests SG to report status of remote ASP.

   M-ASP STATUS indication
   Direction: IUA -> LM
   Purpose: SG reports status of remote ASP.

   M-AS-STATUS request
   Direction: LM -> IUA
   Purpose: LM requests SG to report status of AS.

   M-AS-STATUS indication
   Direction: IUA -> LM
   Purpose: SG reports status of AS.

   M-NOTIFY indication
   Direction: IUA -> LM
   Purpose: ASP reports that it has received a NOTIFY message
            from its peer.

   M-ERROR indication
   Direction: IUA -> LM
   Purpose: ASP or SG reports that it has received an ERROR
            message from its peer.

   M-ASP-UP request
   Direction: LM -> IUA
   Purpose: LM requests ASP to start its operation and send an ASP UP
            message to the SG.

   M-ASP-UP confirm
   Direction: IUA -> LM
   Purpose: ASP reports that is has received an ASP UP Acknowledgement
            message from the SG.

   M-ASP-DOWN request
   Direction: LM -> IUA
   Purpose: LM requests ASP to stop its operation and send an ASP DOWN
            message to the SG.

   M-ASP-DOWN confirm
   Direction: IUA -> LM
   Purpose: ASP reports that is has received an ASP DOWN
            Acknowledgement message from the SG.

   M-ASP-ACTIVE request
   Direction: LM -> IUA
   Purpose: LM requests ASP to send an ASP ACTIVE message to the SG.

   M-ASP-ACTIVE confirm
   Direction: IUA -> LM
   Purpose: ASP reports that is has received an ASP ACTIVE
            Acknowledgement message from the SG.

   M-ASP-INACTIVE request
   Direction: LM -> IUA
   Purpose: LM requests ASP to send an ASP INACTIVE message to the SG.

   M-ASP-INACTIVE confirm
   Direction: IUA -> LM
   Purpose: ASP reports that is has received an ASP INACTIVE
            Acknowledgement message from the SG.

   M-TEI STATUS request
   Direction: LM -> IUA
   Purpose: LM requests ASP to send a TEI status request to the SG.

   M-TEI STATUS indication
   Direction: IUA -> LM
   Purpose: ASP reports that is has received a TEI status indication
            from the SG.

   M-TEI STATUS confirm
   Direction: IUA -> LM
   Purpose: ASP reports that is has received a TEI status confirm from
            the SG.



Google
Web
RFC-Ref