[Docs] [txt|pdf] [Tracker] [Email] [Diff1] [Diff2] [Nits]

Versions: 00 01 02

Internet Engineering Task Force
Internet Draft                                             Rajesh Kumar
Document: draft-rajeshkumar-mmusic-sdp-atm-02.txt       Mohamed Mostafa
July 1, 2000                                              Cisco Systems
Expires: January 1, 2001


     Conventions for the use of the Session Description Protocol (SDP)
                         for ATM Bearer Connections


STATUS OF THIS MEMO


   This document is an Internet-Draft and is in full conformance with
   all provisions of Section 10 of RFC2026.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF), its areas, and its working groups.  Note that
   other groups may also distribute working documents as Internet-
   Drafts.

   Internet-Drafts are draft documents valid for a maximum of six
   months and may be updated, replaced, or obsoleted by other documents
   at any time.  It is inappropriate to use Internet- Drafts as
   reference material or to cite them other than as work in progress.

      The list of current Internet-Drafts can be accessed at
      http://www.ietf.org/ietf/1id-abstracts.txt

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html.


Abstract


   This document described conventions for using the Session Description
   Protocol (SDP) described in RFC2327 for controlling ATM Bearer
   Connections, and any associated ATM Adaptation Layer (AAL). The AALs
   addressed are Type 1, Type 2 and Type 5. This list of conventions is
   meant to be exhaustive. Individual applications can use subsets of
   these conventions. Further, these conventions are meant to comply
   strictly with the SDP syntax as defined in rfc2327.


1. Introduction

   SDP will be used in conjunction with a connection handling /
   device control protocol such as Megaco (H.248) [26],
   SIP [18] or  MGCP [25] to communicate the information
   needed to set up ATM bearer connections. These  connections include
   voice connections, voiceband data connections, clear channel circuit
   emulation connections and baseband data connections (such as fax
   relay, modem relay, SSCOP, frame relay etc.).



Rajesh Kumar, Mohamed Mostafa                                       [Page 1]


   These conventions use standard SDP syntax as defined in rfc2327
   to describe the ATM-level and AAL-level connections, addresses and
   other parameters. In general, parameters associated with layers
   higher than the ATM adaptation layer are included only if they are
   tightly coupled to the ATM or AAL layers. Since the syntax conforms to
   rfc2327, standard SDP parsers should react in a well-defined and safe
   manner on receiving session descriptions based on the SDP conventions
   in this document. This
   is done by extending the values of fields  defined in rfc2327
   rather than by defining new fields. This is true for all SDP lines
   except the of the media attribute  lines, in which case new
   attributes are defined. The SDP protocol allows the definition
   of new attributes in the media attribute  lines which are free-form.
   For the remaining lines, the fact that the <networkType> field in
   an  SDP descriptor
   is set to "ATM" should preclude the misinterpretation of extended
   parameter values by rfc2327-compliant SDP parsers.

   These conventions are meant to address the following ATM applications:

        * Applications in which a new SVC is set-up for each service
          connection. These SVCs could be AAL1 or AAL5 SVCs or
          single-CID AAL2 SVCs.

        * Applications in which existing  path  resources are assigned
          to service connections. These resources could be
          AAL1 PVCs (or SPVCs), AAL5 PVCs (or SPVCs), AAL2 single-CID
          PVCs (or SPVCs), or  channels (CIDs) within AAL2 PVCs (or
          SPVCs) that multiplex multiple CIDs.

  This document is limited to the case when the network type is ATM.
  This includes raw RTP encapsulation over AAL5 with no intervening IP
  layer [46]. It does not address SDP usage for IP, with or without
  ATM as a lower layer.

  In some cases, IP connection set-up is independent
  of lower layers, which are configured prior to it. For example, AAL5
  PVCs that connect IP routers can be used for VoIP calls.

  In other cases,  VoIP call set-up is  closely tied to ATM-level
  connection set-up.
  This might require a chaining of IP and ATM descriptors, as described in
  section 5.7.39.

  This document makes no assumptions on who constructs the session
  descriptions (media gateway, intermediate ATM/AAL2 switch, media
  gateway controller etc.). This will be different in different
  applications. Further, it allows the use of one session description
  for both directions of a connection (as in SIP applications) or the
  use of separate session descriptions for different directions. It
  addresses the ATM multicast and anycast capabilities.

  This document makes no assumptions about how the SDP description will
  be coded. Although the descriptions shown here are encoded as text,
  alternate codings are possible:

  - Binary encoding such as ASN.1. This is an option (in addition to
    text encoding) in the Megaco context.

Rajesh Kumar, Mohamed Mostafa                                       [Page 2]


  - Use of extended ISUP parameters (Q.1901) to encode the information in
    SDP descriptors, with conversion to/from binary/text-based  SDP
    encoding when needed.


2. Representation of Certain Fields within SDP description lines

   This document uses all the syntactic conventions of standard SDP as
   defined in RFC2327.

2.1  Representation of Extension Attributes

   The SDP protocol (RFC2327)  requires that non-standard attributes
   and codec names use an "X-" prefix.

   In this internet draft, the "X-" prefix is used consistently for
   codec names (Table 1) that have not been registered with IANA.

   However, this prefix is not used for the extension SDP attributes
   defined in this document.  This has been done to enhance legibility.

   This document suggests that parsers be flexible in the use of the
   "X-" prefix convention. They  should accept codec names and
   attribute names with or without the "X-" prefix.

2.2  Representation of Parameter Values

    Parsers designed to this document should be flexible enough to
    accommodate decimal and hexadecimal representations. The former
    do not have a prefix, while the latter should use a 0x prefix.
    In either case,  if the bit field is smaller or larger
    than the binary equivalent of the SDP representation, then leading
    0 bits should be added or removed as needed. Thus, 3 and
    0x3 translate  into the following five-bit pattern: 0 0011.
    The SDP representations 0x12 and 18 translate  into the following
    five-bit pattern: 1 0010.

    Both single-character and multi-character string values are
    enclosed in double quotes (i.e. "). By contrast, single quotes
    (i.e. ') are used for emphasizing keywords rather than to
    refer to characters or strings.

2.3  Directionality Convention

    This section defined the meaning of the terms 'forward' and
    'backward' as used in this document. This is specially applicable
    to parameters that have a specific direction associated with them.

    In this document, 'forward' refers to the direction away from the
    Media Gateway, while 'backward' refers to the direction towards the
    Media Gateway. This convention must be used in all SDP-based session
    descriptions regardless of whether underlying bearer is an SVC, a
    dynamically allocated PVC/SPVC or a dynamically allocated CID. This
    is regardless of which side originates the service connection. If ATM
    SVC or AAL2 Q.2630.1 signaling is used, the directionality convention
    is independent of which side originates the SVC or AAL2 connection.


Rajesh Kumar, Mohamed Mostafa                                       [Page 3]


    This provides a simple way of identifying the direction in which a
    parameter is applicable, in a manner that is independent of the
    underlying ATM or AAL2 bearer. This simplicity comes at a price,
    described below.

   Note that, the convention used by all ATM/AAL2 signaling
   specifications  (e.g. Q.2931 Section 1.3.3 and Q.2630.1)
   mandates that
   forward direction is from the end initiating setup/establishment
   via bearer signaling towards the end receiving  the
   setup/ establishment request. The backward direction is in the
   opposite direction.  In some cases, the 'forward' and
   'backward' directions of the ATM signaling convention might
   be the exact opposite of the SDP convention described above,
   requiring the media gateway to perform the necessary translation.
   An example case in which this is needed is described below.

   Consider an SDP description sent by a media gateway
   controller to the gateway originating a service-level call.
   In the backward SVC call set-up model, this gateway terminates
   (rather than originates) an SVC call. The media gateway refers
   to the traffic descriptor (and hence the PCR) in the direction
   away from this gateway as the forward  traffic descriptor and
   forward PCR. Clearly, this is at odds with ATM SVC signaling which
   refers to this very PCR as the backward PCR. The gateway needs
   to be able to perform the required swap of directions. In this
   example, the media gateway terminating the service level call
   (and hence originating the SVC call) does not need to perform
   this swap.

3. Capabilities Provided by SDP conventions

   To support these applications, the SDP conventions in this document
   provide the following session establishment capabilities:

        * Identification by an ATM network element of its own address,
          in one of several possible formats. A connection peer can
          initiate SVC set-up to this address.

        * Identification of the ATM bearer connection that is to be
          bound to the narrowband telephony connection. This is either
          a VCC in AAL1/AAL5  applications or a channel (identified by
          a CID) in AAL2 applications. This is useful in PVC/SPVC
          applications.

          Note that the  difference between the PVCs and SPVCs
          is  in the way the bearer virtual circuit connection is set
          up. From the perspective of this document, the terms PVC and
          SPVC are equivalent. This is because the bearer connection is
          already set prior to the time when the SDP description is used
          to bind it to a narrowband telephony connection.

        * In AAL1/AAL5  applications, declaration of a set of payload
          types that can be bound to the ATM bearer connection.
          RTP payload types that have been registered with IANA are
          re-used for AAL1 or AAL5. In the manner of standard SDP,
          unregistered payload types are mapped dynamically.


Rajesh Kumar, Mohamed Mostafa                                       [Page 4]


        * In AAL2 applications, declaration of a set of profiles that
          can be bound to the ATM bearer connection. A mechanism for
          dynamically defining custom profiles within the SDP session
          description is included. This allows the use of custom
          profiles for connections that span multi-network interfaces.

        * A means of correlating narrowband telephony connections with
          underlying ATM bearer connections. The backbone network
          connection identifier or bnc-id specified in ITU Q.BICC
          standardization work is used for this purpose. In order to
          provide a common SDP base for applications based on
          ISUP+/Q.BICC and SIP/SIP+, the neutral term 'eecid' is used
          in lieu of 'bnc-id' in the SDP session descriptor.

        * A means of specifying the explicit mapping of one codec type
          and one packetization period into a service type.  Service
          types are voice, voiceband data and facsimile. This is useful
          in determining the encoding to use when the connection is
          upspeeded in response to modem or facsimile tones.

        * A means of describing the QoS class, ATM transfer capability /
          service category, broadband bearer class, traffic parameters,
          CPS parameters and SSCS parameters related the underlying
          bearer connection.

4. Format of the ATM Session Description

  The sequence of lines in the session descriptions in this document
  conforms to rfc2327 [1]. In general, a session description consists of
  a  session-level part followed by zero or more media-level parts. ATM
  session descriptions consist of a session level part followed by one
  or two media-level parts. The only two media applicable are the ATM
  medium and RTCP control (where applicable).


   Session descriptor with one media-level part

   v=  (protocol version, zero or one line)
   o=  (origin, zero or one line)
   s=  (session name, zero or one line)
   c=  (connection information, one line)
   t=  (timestamp, zero or one line)
   m=  (media information and transport address, one line)
   b=  (bandwidth, zero or one line)
   k=  (encryption key, zero or one line)
   a=  (media attribute, zero or more lines)

  Session descriptor with two media-level parts
 (used in h.323 annex C applications)

   Session-level part

   v=  (protocol version, zero or one line)
   o=  (origin, zero or one line)
   s=  (session name, zero or one line)
   c=  (connection information, one line)
   t=  (timestamp, zero or one line)

Rajesh Kumar, Mohamed Mostafa                                       [Page 5]


   media-level part (audio medium)
   m=  (media information and transport address, one line)
   b=  (bandwidth, zero or one line)
   k=  (encryption key, zero or one line)
   a=  (media attribute, zero or more lines)

   media-level part (control medium)
   m=  (media information and transport address, one line)
   c=  (connection information for control only, one line)

   In general, the 'v', 'o', 's', and 't' lines are mandatory.
   However, in the Megaco [26] context, these lines have been made optional.
   The 'o', 's', and 't' lines are omitted in most MGCP applications.

   Note that SDP session descriptors for ATM can contain
   bandwidth (b=) and encryption key (k=) lines. If used, these lines should
   strictly conform to the SDP standard (rfc2327). The bandwidth (b=) line
   is redundant in the ATM context since this information can be expressed
   with greater precision in the atmFtrfcDesc and atmBtrfcDesc
   media attribute lines. The   encryption key line (k=) can be used
   to indicate an encryption key for the bearer, and a method to
   obtain the key. At present, the encryption of ATM and AAL2 bearers
   has not been conventionalized, unlike the encryption of RTP payloads.
   Nor has the authentication of ATM or AAL2 bearer signaling.
   In the ATM and AAL2 contexts, the term 'bearer' can include 'bearer
   signaling'  as well as 'bearer payloads'.

   The order of lines in an ATM session description is exactly in the
   rfc2327-conformant order depicted above. However, there is no order
   of the media attribute ('a') lines with respect to other 'a' lines.

   The SDP protocol version for session descriptions using these
   conventions is 0. In conformance with standard SDP, it  is strongly
   recommended that the 'v' line be included at the beginning of each
   SDP session description. In some contexts such as Megaco, the
   'v' line is optional and may be omitted unless several session
   descriptions are provided in sequence, in which case the
   'v' line serves as a delimiter. Depending on the application,
   sequences of session descriptions might refer to:
   -  Different connections or sessions.
   -  Alternate ways of realizing the same connection or session.

   The 'o', 's' and 't' lines are included for strict conformance with
   RFC2327. It is possible that these lines might not carry useful
   information in some ATM-based narrowband telephony applications.
   Therefore, some applications might omit these lines, although
   it is recommended that they not do so.  For maximum
   interoperability, it is preferable that SDP parsers  not
   reject session descriptions that do not contain these lines.

5.  Structure of the Session Description Lines

5.1 The Origin Line

   The origin line for an ATM-based narrowband telephony session is
   structured as follows:



Rajesh Kumar, Mohamed Mostafa                                       [Page 6]


        o=<username> <sessionID> <version> <networkType>
           <ATMaddressType> <ATMaddress>

   The <username> is set to "-".

   The <sessionID> can be  set to one of the following:

      *   an NTP timestamp referring to the moment when the SDP session
          descriptor was created.
      *   a Call ID, connection ID or context ID that uniquely
          identifies the session within the scope of a media gateway.
          Since calls can comprise multiple connections (sessions),
          call IDs are generally not suitable for this purpose.

   NTP time stamps can be represented as decimal or hex integers.
   The part of the NTP timestamp that refers to an integer number
   of seconds is sufficient. Since this is a 32-bit field, the decimal
   or hex equivalent of a 32-bit field is adequate if NTP time stamps
   are used for this purpose.

   On the other hand, call IDs, connection IDs and context IDs can be
   represented in decimal or hex format, or as a string of alphanumeric
   characters. The MGCP connection ID can be 32 hex digits long.

   In general, to cover all cases, the  <sessionID>
   can comprise of up to 32 digits or 34 alphanumeric characters. The
   additional two characters allow the inclusion of a "0x" prefix when
   hex numbers are represented alphanumerically.

   The <version> refers to the version of the SDP session descriptor
   (not that of the SDP protocol). This is can be set to one of the
   following:

      *  0.
      *  an NTP timestamp referring to the moment when the SDP session
        descriptor was modified. If the SDP session descriptor has not
        been modified by an intermediate entity (such as an MGC),
        then the <version> timestamp will be the same as the
        <sessionId> timestamp, if any.

   It is adequate to allow up to 32 decimal or hex digits for
   the <version>.

   The <networkType> in  SDP  session descriptions for ATM
   applications should be assigned the string value "ATM".

   The <ATMaddressType> and <ATMaddress>  parameters are identical to
   those for the connection information ('c') line. Each of these
   parameters can be set to a "-". However, it is not recommended
   that these fields be omitted without being set to  a "-" since
   this is not explicitly allowed by standard SDP (rfc2327). It
   is recognized that some parser-builders follow this practice.






Rajesh Kumar, Mohamed Mostafa                                       [Page 7]


5.2 The Session Name Line


   In general, the session name line  is structured as follows:

        s=<sessionName>

   For ATM-based narrowband telephony sessions, the <sessionName>
   parameter  is set to a   "-".  The resulting
   lines is:

        s=-
   It is not recommended that the <sessionName> be omitted without
   being set to  a "-" since this is not explicitly allowed by
   standard SDP (rfc2327). It is recognized that some parser-builders
   follow this practice.


        s=-


5.3 The Connection Information Line

   The connection information line for ATM-based narrowband telephony
   sessions is structured as follows:

        c=<networkType> <ATMaddressType> <ATMaddress>

   The <networkType> field in the 'c' line should be set to "ATM".

   When the SDP description is built by a media gateway, the
   <ATMaddress> refers to the ATM address of the media gateway
   building the SDP description. When this description is forwarded
   to the another gateway, it still contains the original gateway's
   ATM address. When the media gateway controller builds part or
   all of the SDP description, the local descriptor contains the
   ATM address of the local media gateway, while the remote descriptor
   contains the ATM address of the remote media gateway.  Additionally,
   in all contexts, the 'm' line can have an ATM address in the
   <virtualConnectionId> subparameter which, if present, is the
   remote address if  the 'c' line address is local, and vice versa.

   The <ATMaddressType>  can be NSAP, E164 or GWID (ALIAS).

   The <ATMaddress>  format depends on the <ATMaddressType>.

   NSAP: If the ATMaddressType is NSAP, the ATMaddress is expressed as
   a string of 40  hex characters without the "0x" prefix. As an option,
   dots can be included after 16-bit fields, with the first dot following
   an 8-bit field. The last octet of the NSAP
   address is the 'selector' field that is not used for ATM addressing
   and is available for non-standard use. The prior six octets of the
   NSAP are an IEEE 802 MAC address assigned to the gateway. For
   example:

        c=ATM NSAP 47.0091.8100.0000.0060.3e64.fd01.0060.3e64.fd01.00


Rajesh Kumar, Mohamed Mostafa                                       [Page 8]


   E164: If the ATMaddressType is E164, the ATMaddress is expressed as
   a decimal number  with up to 15 digits. For example:


        c=ATM E164 9738294382

  The use of E.164 numbers in the B-ISDN context is defined in ITU E.191.
  There is a disparity between the ATM forum and the ITU
  in the use of E.164 numbers for ATM addressing. The ATM forum (e.g. UNI
  Signaling 4.0) allows only International Format E.164 numbers, while
  the ITU (e.g. Q.2931) allows private numbering plans. Since the goal
  of this SDP specification is to interoperate with all bearer signaling
  protocols, it allows the use of numbers that do not conform to the
  E.164 International Format. However, to maximize overall consistency,
  network administrators can restrict the provisioning of numbers to the
  E.164 International Format.

   GWID (ALIAS): If the ATMaddressType is GWID meaning that the address is a
   private Voice Gateway identifier (unique within context of network),
   the ATMaddress is expressed as alphanumeric string ("A"-"Z", "a"-"z", "0"-
   "9",".","-","_"). For example:

        c=ATM GWID officeABCmgx101vism12

   Since these SDP conventions can be used for more than gateways, the
   string "ALIAS" can be used instead of "GWID" in the 'c' line. Thus,
   the example above is equivalent to:

        c=ATM ALIAS officeABCmgx101vism12

   An example of a GWID (ALIAS)is the CLLI code used for telecom
   equipment. For all practical purposes, it should be adequate for the
   GWID (ALIAS) to be a variable length string with a maximum size of 32
   characters. Since this identifier is private to a network, some
   network administrations  might restrict it to a smaller size (e.g. 10
   characters).

   The connection information line is always present in an SDP session
   descriptor. However, if there is no address to transmit, this line
   can be represented in one of the   equivalent ways:

        c=ATM - -

   This might be used  when the address is known a priori. It is not
   recommended that   <ATMaddressType> or  <ATMaddress> be omitted
   without being set to  a "-" since this is not explicitly allowed
   by standard SDP (rfc2327). It is recognized that some parser-builders
   follow this practice.

5.4 The Timestamp Line


   The timestamp line for an SDP session descriptor is structured as
   follows:

        t= <startTime> <stopTime>



Rajesh Kumar, Mohamed Mostafa                                       [Page 9]


   For ATM-based narrowband telephony sessions, the  <startTime>
   parameter can be made equal to the NTP timestamp (if any) used for
   the <sessionID> in the 'o' line.  It can also be set to 0
   indicating its irrelevance. If it made equal to the NTP timestamp
   in seconds, the fractional part of the NTP timestamp is omitted.
   In this case,
   it is adequate to allow the hex or decimal equivalent of a 32-bit
   field. Per Ref. [49], NTP time stamps need a 32 bit unsigned
   representation of seconds, and a 32 bit unsigned representation of
   fractional seconds.


   The <stopTime> parameter is set to 0 in the ATM-based narrowband
   telephony context.

5.5 Media Information Line for AAL1 and AAL5  sessions

   See Section 6.0 for the representation, in SDP, of the parameters
   in the media information line.

   The media information line for AAL1-based  narrowband telephony
   sessions  is structured as follows:

        m=audio <virtualConnectionId> AAL1/AVP <payloadType#1>
                <payloadType#2>...<payloadType #n>

   The media information line for AAL5-based  narrowband telephony
   sessions  is similar, with the exception that the string "AAL5"
   replaces the string "AAL1". This is depicted below:

        m=audio <virtualConnectionId> AAL5/AVP <payloadType#1>
                <payloadType#2>...<payloadType #n>

   In most AAL1 and AAL2 applications, the ordering  of payload types
   implies a preference (preferred payload types before less favored
   ones).

   Note that it is not possible to make this line identical to the 'm'
   line in VoAAL2 due to basic differences between the two
   applications.

   The  <virtualConnectionId> parameter can be in one of two basic
   formats: with explicit designation of subparameter types within
   the <virtualConnectionId> parameter, or with implicit
   inference of subparameter type from subparameter position in
   the <virtualConnectionId> parameter.

   With explicit designation of subparameter types, the
   <virtualConnectionId> parameter can be in one of the following
   formats:
        * VCCI-<vcci>
        * <ATMaddressType>-<ATMaddress>/VCCI-<vcci>
        * BCG-<bcg>/VCCI-<vcci>
        * PORT-<portId>/VPI-<vpi>/VCI-<vci>
        * BCG-<bcg>/VPI-<vpi>/VCI-<vci>
        * VPCI-<vpci>/VCI-<vci>

Rajesh Kumar, Mohamed Mostafa                                       [Page 10]


   With implicit inference of subparameter type from
   subparameter position, the <virtualConnectionId> parameter can
   be in one of the following formats:
        * <vcci>
        * <ATMaddressType>-<ATMaddress>/<vcci>
        * <ATMaddress>/<vcci>
        * <bcg>/<vcci>
        * <portId>/<vpi>/<vci>
        * <bcg>/<vpi>/<vci>
        * <vpci>/<vci>

   In the implicit case, the application context and/or the existence
   and positions  of hyphens and  slashes is used to differentiate
   between the various options. Within the SDP
   media information line, <vcci>, <portId>, <vpi>, <vci> and <vpci> are
   decimal numbers (no prefix) or hexadecimal numbers (0x prefix). The
   <ATMaddressType> and <ATMaddress> are identical
   to their definitions above for the connection information line with
   the difference that this address refers to the remote peer in the
   media information line.

   A "$" notation implies 'any'. A "$" can be used in lieu the entire
   <virtualConnectionId> parameter or some or all of its subparameters.
   The constant strings in the <virtualConnectionId> can be retained
   in the "$" wildcard or omitted consistent with the 'explicit' and
   'implicit' formats described above.

    Note that a "$" can be used in lieu of the concatenation
    <ATMaddressType>-<ATMaddress> in the following ways:
        * The entire concatenation, <ATMaddressType>-<ATMaddress>, is
          replaced with a "$".
        * <ATMaddress> is replaced with a "$", but <ATMaddressType> is
          not.


   There are contexts   such as SVC-based applications   where  there
   is no need to communicate the  <virtualConnectionId> parameter
   across the MGC - MG   interface. In these contexts,
   it is sufficient to use a "$", "$/$" or "$/$/$" for the
   <virtualConnectionId> parameter in both directions of
   communication.

   When the network uses PVCs the VCCI values are pre-provisioned. If
   connections are established via SVCs or SPVCs, the VCCI is selected
   from the list of available VCCIs. The VCCI can  be signaled end-to-
   end within the Generic Information Transport (GIT) as part of the
   ITU Recommendation Q.2931 Setup message per ITU Recommendation
   Q.2941.2. The VCCI glare avoidance scheme defined in [32] and [44]
   is not adequate for preventing glare when a pool of existing
   PVCs/SPVCs is  dynamically assigned to calls. In this
   context, a mechanism for glare reduction such as assigning
   the nearest available values from different ends of the VCCI range
   is needed.



Rajesh Kumar, Mohamed Mostafa                                       [Page 11]


   The definition of <vcci> guarantees uniqueness between a pair of ATM
   nodes. When the MGC communicates with an ATM MG, it can qualify the
   <vcci> with the ATM address of the remote node. Network administrations
   have the option of provisioning the <vcci> uniquely in a network,
   or in subnets of the network. In this case, the ATM address of the
   far end can be omitted.

   The <portId> parameter is used to identify the physical trunk port
   on a stand-alone  gateway  or on a multiplexer into  which the
   gateway is plugged as a tributary module. It can be represented as a
   decimal or
   hex number of up to 32 digits, or an alphanumeric string of up to 32
   characters. In general, to cover all cases, the  <portID>
   can comprise of up to 32 digits or 34 alphanumeric characters. The
   additional two characters allow the inclusion of a "0x" prefix when
   hex numbers are represented alphanumerically.

   The <vpi> and <vci>  have their usual ATM connotation.

   In some applications, it is meaningful to use a VPCI, a sixteen
   bit field, in SDP descriptors. The VPCI is similar to the VPI, except
   for its width and the fact that it retains its value across VP
   crossconnects. Normally, the VPCI values are unique within the set
   of VPs controlled by an SVC/SPVC signaling channel.

   In some applications, it is meaningful to bundle  a set of connections
   between a pair of ATM nodes into a bearer connection group. The <bcg>
   subparameter is an eight bit field that allows the bundling of up
   to 255 connections.

   Although   RTP encapsulation defined in rfc1889 is not used, the
   payload type variables are used exactly as defined in rfc1890.
   Hence, the protocols used for VoAAL1 and VoAAL5 are identified as
   AAL1/AVP and AAL5/AVP in the media information line.

   Following the text string "AAL1/AVP" or "AAL5/AVP", there is a
   list of  payload types. The ordering of these payload types
   (preferred codecs before less favored ones)  can indicate
   preference is some applications. These can be either statically
   assigned  or dynamically mapped payload types. Encodings that
   are not statically mapped to payload types by IANA  [31] are to
   be dynamically mapped at the time of connection establishment
   to  payload types in the decimal  range 96-127. The SDP 'atmmap'
   attribute (similar to 'rtpmap') is used for this purpose.

   The following are examples of the use of the media information line
   in the descriptions of AAL1 narrowband telephony sessions.

   Example 1:
        m=audio 27 AAL1/AVP 18 0 96
        a=atmmap:96 G727-32

   implies that the AAL1 VCCI=27 and that the supported  encoding
   formats are G.729 (or G.729a), PCM Mu-law and 32 kbps G.727.

   Example 2:
        m=audio 3/4/50 AAL1/AVP 8 15

 Rajesh Kumar, Mohamed Mostafa                                      [Page 12]


   implies that the AAL1  virtual circuit used has VPI=4, VCI=50 and is
   on trunk port #3. Further, it implies that the encoding formats are
   G.711 A-law and G.728.


   Example 3:
        m=audio $  AAL1/AVP 8 15

   implies that any AAL1 VCC  may be used (subject to glare rules).

   Example 4:
        m=audio 2/6/$  AAL1/AVP 8 15

   implies that any VCI on VPI= 6 of trunk port #2 may be used.

   In some applications, an "-" can be used in lieu of the
   <payloadType>. It is also legal to use an "-" instead of
   the string "AAL1/AVP". In this case, the coding scheme and
   the adaptation schemes are described elsewhere, or defaulted.

   Example 5:
         m=audio 234 - -
         a=aalType:AAL1

   Example 6:
         m=audio 234 AAL1/AVP -

   Examples 5 and 6 both indicate an audio medium,  a VCCI of 234, AAL1
   adaptation and an unspecified codec.

5.6 Media Information Line for AAL2 sessions

   See Section 6.0 for the representation, in SDP, of the parameters
   in the media information line.

   The media information line for AAL2-based narrowband telephony
   sessions   is structured as follows:

   m=audio <virtualConnectionId> <profileType #1> <profile #1>...
     <profile #n1> ... <profileType #M> <profile #1>...
     <profile #nM>

   In most applications, the ordering  of profiles implies
   a preference (preferred    profiles before less favored ones). If
   so, then there can be multiple instances of the same profile
   type in the same 'm' line.

   Note that it is not possible to make this line identical to the 'm'
   line in Voice-over-AAL1  due to basic differences between the two
   applications.

   The  <virtualConnectionId> parameter can be in  one of the following
   formats:




Rajesh Kumar, Mohamed Mostafa                                       [Page 13]


        * <vcci>/<cid>
        * <ATMaddressType>-<ATMaddress>/<vcci>/<cid>
        * <portId>/<vpi>/<vci>/<cid>
        * <bcg>/<vpi>/<vci>/<cid>
        * <bcg>/<vcci>/<cid>
        * <vpci>/<vci>

   The  <virtualConnectionId> parameter can be in one of two basic
   formats: with explicit designation of subparameter types within
   the <virtualConnectionId> parameter, or with implicit
   inference of subparameter type from subparameter position in
   the <virtualConnectionId> parameter.

   With explicit designation of subparameter types, the
   <virtualConnectionId> parameter can be in one of the following
   formats:
        * VCCI-<vcci>/CID-<cid>
        * <ATMaddressType>-<ATMaddress>/VCCI-<vcci>/CID-<cid>
        * BCG-<bcg>/VCCI-<vcci>/CID-<cid>
        * PORT-<portId>/VPI-<vpi>/VCI-<vci>/CID-<cid>
        * BCG-<bcg>/VPI-<vpi>/VCI-<vci>/CID-<cid>
        * VPCI-<vpci>/VCI-<vci>/CID-<cid>


   With implicit inference of subparameter type from
   subparameter position, the <virtualConnectionId> parameter can
   be in one of the following formats:
        * <vcci>/<cid>
        * <ATMaddressType>-<ATMaddress>/<vcci>/<cid>
        * <ATMaddress>/<vcci>/<cid>
        * <bcg>/<vcci>/<cid>
        * <portId>/<vpi>/<vci>/<cid>
        * <bcg>/<vpi>/<vci>/<cid>
        * <vpci>/<vci>/<cid>

   In the implicit case, the application context and/or the existence
   and positions  of hyphens and  slashes is used to differentiate
   between the various options. Within the SDP
   media information line, <vcci>, <portId>, <vpi>, <vci>, <vpci> and
   <cid> are decimal numbers (no prefix) or hexadecimal numbers (0x
   prefix). The <ATMaddressType> and <ATMaddress> are identical
   to their definitions above for the connection information line with
   the difference that this address refers to the remote peer in the
   media information line.

   A "$" notation implies 'any'. A "$" can be used in lieu the entire
   <virtualConnectionId> parameter or some or all of its subparameters.
   The constant strings in the <virtualConnectionId> can be retained
   in the "$" wildcard or omitted consistent with the 'explicit' and
   'implicit' formats described above.

    Note that a "$" can be used in lieu of the concatenation
    <ATMaddressType>-<ATMaddress> in the following ways:
        * The entire concatenation, <ATMaddressType>-<ATMaddress>, is
          replaced with a "$".
        * <ATMaddress> is replaced with a "$", but <ATMaddressType> is
          not.
Rajesh Kumar, Mohamed Mostafa                                       [Page 14]


   There are contexts  such as SVC-based applications   where  there
   is no need to communicate the  <virtualConnectionId> parameter
   across the media gateway controller - media gateway interface. In these
   contexts, it is sufficient to use a "$", "$/$", "$/$/$"  or "$/$/$/$"
   for the <virtualConnectionId> parameter.

   When the network uses PVCs the VCCI values are pre-provisioned. If
   connections are established via single-CID SVCs or S/PVCs, the VCCI
   is selected from the list of available VCCIs. The VCCI can  be
   signaled end-to-end within the Generic Information Transport (GIT)
   as part of the ITU Recommendation Q.2931 Setup message per ITU
   Recommendation Q.2941.2. The VCCI glare avoidance scheme defined in
   [32] and [44]
   is not adequate for preventing glare when a pool of existing
   PVCs/SPVCs is  dynamically assigned to calls. In this
   context, a mechanism for glare reduction such as assigning
   the nearest available values from different ends of the VCCI range
   is needed.


   The definition of <vcci> guarantees uniqueness between a pair of ATM
   nodes. When the MGC communicates with an ATM MG, it can qualify the
   <vcci> with the ATM address of the remote node. Network administrations
   have the option of provisioning the <vcci> uniquely in a network,
   or in subnets of the network. In this case, the ATM address of the
   far end can be omitted.

   If no intermediate subcell switching or multiplexing is involved,
   identical CIDs  within the same VCC are used at  both MGs.
   If intermediate subcell switching or multiplexing is involved,
   then the CIDs can be different at the two MGs. However, at
   an  MG and at the  first-hop AAL2 switch it interfaces to, the same
   CIDs  within the same VCC are used. Since calls can be initiated at
   either end, CIDs within the same VCC may be assigned at each end,
   giving rise to the possibility of glare. In this context,
   a mechanism for glare reduction such as assigning the nearest
   available values from different ends of the CID range  is needed.

   The <portId> parameter is used to identify the physical trunk port
   on a stand-alone  gateway  or on a multiplexer into  which the
   gateway is plugged as a tributary module. It can be represented as a
   decimal or
   hex number of up to 32 digits, or an alphanumeric string of up to 32
   characters. If represented in hex format, the 32 digits do not include
   the "0x" prefix ("x" is not a digit, anyway).

   The <vpi> and <vci>  have
   their usual ATM connotation.

   In some applications, it is meaningful to use a VPCI, a sixteen
   bit field, in SDP descriptors. The VPCI is similar to the VPI, except
   for its width and the fact that it retains its value across VP
   crossconnects. Normally, the VPCI values are unique within the set
   of VPs controlled by an SVC/SPVC signaling channel.



Rajesh Kumar, Mohamed Mostafa                                       [Page 15]


   In some applications, it is meaningful to bundle  a set of connections
   between a pair of ATM nodes into a bearer connection group. The <bcg>
   subparameter is an eight bit field that allows the bundling of up
   to 255 connections.

   The  <profileType> parameter indicates the type of profile. It is
   expressed in the format AAL2/<profileClass> where <profileClass>
   identifies the  source of the definition of the profile.

   The <profileClass> can be assigned  a string value indicating the
   source of the subsequent profile numbers
   until the next <profileType> field.  The following rules apply to
   the contents of the <profileClass> field:

    - <profileClass> = "ITU" indicates profiles defined by ITU.
      Examples: profiles defined in the I.366.2 specification [13].
    - <profileClass> = "ATMF"  indicates profiles defined by ATM
      forum. Examples: profiles defined in the AF-VTOA-0113
      specification [44].
    - <profileClass> = "custom"  indicates profiles defined by
      an organization other than the ITU or ATMF. In multi-vendor
      networks where this <profileClass> value is used, care
      should be taken to preclude inconsistent definitions.
    - <profileClass> = <corporateName>
      An equipment vendor or service provider can use its registered,
      globally unique corporate name (e.g. Cisco, Telcordia etc.) as a
      string value of the <profileClass>. It is suggested that organizations
      maintain consistent definitions of the advertised AAL2 profiles
      that bear their corporate name.
    - The <profileClass> can be based on IEEE Standard 802-1990,
      Section 5.1,
      which defines the globally unique, IEEE-administered, three-octet
      OUIs used in MAC addresses and protocol  identifiers.  In this case,
      the <profileClass> field shall be assigned a string value of
      "IEEE:" concatenated with <oui> where <oui> is the hex representation
      of a three-octet field identical to the IEEE OUI. As a hex representation,
      it can be preceded by a 0x prefix, which can also be omitted. For example,
      "IEEE:00000C" refers to Cisco Systems, Inc.

   The <profile> parameter is expressed as a decimal number. The value
   of <profile> for profiles of the type AAL2/ITU or AAL2/ATMF are in
   range 1-255 in accordance with ITU-T I.366.2 Annex P [13] and AF-VTOA-
   0113 [44]. For other types of profiles, a range of 1-255 should be
   adequate.


   For example, the media information line may look like:

        m=audio 123/5 AAL2/ITU 1


   This media line indicates that the media contains audio. The VCCI
   for the AAL2 connection is decimal 123 and the CID is decimal 5. The
   AAL2 connection uses ITU profile 1 as defined in I.366.2 [13].

      m=audio $  AAL2/ITU 8 AAL2/custom  100 AAL2/ITU 1


Rajesh Kumar, Mohamed Mostafa                                       [Page 16]


   implies that any AAL2 VCC  may be used (subject to glare rules).   If
   this list is preferentially ordered, then AAL2/ITU 8 has the highest
   priority.


   In some applications, an "-" can be used in lieu of the <profileType>
   and <profile #> fields. This is possible when the coding scheme is
   described  elsewhere e.g. when 'aal2_SSCS_3662' attribute  indicates
   <faxDemod> = "on" and any other competing options as "off", and the
   <aalType> attribute indicates AAL2. An example
   of the use of the 'm' line in this case is:

      m=audio 123/5 - -
      a=aalType:AAL2
      a=aal2_SSCS_3662:audio off off on off on off off off - - -

   Besides indicating an audio medium, a VCCI of 123 and a CID of 5,
   the 'm' line indicates an unspecified profile.

5.7 The Media Attribute Lines

   In an SDP  line sequence, the media information line 'm'  is
   followed by one or more media attribute or 'a'  lines. Media
   attribute lines are per the format below:

       a=<attribute>:<value>

   or

       a=<value>

   In general, media attribute lines are optional except when needed to
   qualify the media information line. This qualification is necessary
   when the "m" line for an AAL1 or AAL5 session specifies a payload
   type that needs to be dynamically mapped. The 'atmmap' media
   attribute line defined below is used for this purpose.

   In attribute lines, subparameters that are meant to be left
   unspecified are set to a "-". These are generally inapplicable or, if
   applicable, are known by other means such as provisioning. In some
   cases, a media attribute line with all parameters set to "-" carries
   no information and should be preferably omitted. In other cases,
   such as the 'lij' media attribute line, the very presence of the
   media attribute line conveys meaning.

   There are no restrictions placed by rfc2327 [1] regarding the order
   of 'a' lines with respect to other 'a' lines. However, these lines
   must not contradict each other or the other SDP lines. Inconsistencies
   are not to be ignored
   and should be flagged as errors. Repeated lines shall result in the
   later lines supplanting earlier ones.

   Applications will selectively use the optional media attribute
   lines listed below. This is meant to be an exhaustive list for
   describing the general attributes of ATM bearer networks. However,
   it is recognized that this list might have overlooked some attributes,
   which particular applications might need. If these are common
   enough for general interoperability between vendors (as opposed
   to innovation and proprietary differentiation by particular
   vendors), then these should be brought to the attention of the
Rajesh Kumar, Mohamed Mostafa                                       [Page 17]


   IETF MMUSIC working group for incorporation into future releases
   of this document.

        * The attributes defined in RFC2327 which allow indication of
          the direction in which a session is active. These are
          a=sendonly, a=recvonly, a=sendrecv, a=inactive.
        * The 'Ptime' attribute defined in RFC2327. It indicates the
          packet period. The 'ptime' media attribute line should not
          be used in AAL2 applications, since this information is included
          in the profiles listed in the 'm' line. This information can
          also be included in the 'vsel', 'dsel' and 'fsel' lines. If
          the 'ptime' line is included in AAL2 applications, then it can
          be ignored or flagged as an error. The latter is preferred
          for robustness and simplicity. The 'ptime' is not applicable
          in the AAL1 context, where is should be flagged as an error.
          In the AAL5 context,
          the 'Ptime' media attribute line, if used, should be consistent
          with the 'vsel', 'dsel' and 'fsel' lines, if any. Here,
          consistency means the ability to yield a non-empty intersection
          with one of these lines.
        * The 'atmmap' attribute. In the AAL1 and AAL5 contexts, this is
          used to dynamically map payload types into codec strings.
        * The 'eecid' attribute. This stands for 'end-to-end connection
          identifier'. It provides a  means of  correlating narrowband
          telephony connections with underlying ATM bearer connections.
          In the Q.BICC/ISUP+ context, the eecid is synonymous with the
          bnc-id (backbone network connection identifier). In the SDP
          session description, the more general term 'eecid' is used in
          order to provide a common SDP baseline for ATM  telephony
          applications using Q.BICC/ISUP+ and SIP/SIP+.
        * The 'aalType' attribute. This is used to indicate the nature
          of the ATM adaptation layer (AAL).
        * The 'silenceSupp' attribute, used to indicate the use of
          of voice activity detection for silence suppression, and to
          optionally parameterize the silence suppression function.
        * The 'ecanf' and 'ecanb' attributes, used to indicate the use of
          of echo cancellation, and to parameterize the this function.
        * The 'gcf' and 'gcb' attributes, used to indicate the use of
          of gain control, and to parameterize the this function.
        * The 'profiledesc' attribute which can be used to describe
          AAL2 profiles. Although any AAL2 profile can be so described,
          this attribute is useful for describing, at connection
          establishment time,  custom profiles that might not be known
          to the far end. This attribute applies in the AAL2 context
          only.
        * The 'vsel' attribute which indicates a prioritized list of
          3-tuples for voice service. Each 3-tuple indicates a codec,
          an optional packet length and an optional packetization
          period. This complements the 'm' line information and should
          be consistent with it.
        * The 'dsel' attribute which indicates a prioritized list of
          3-tuples for voiceband data service. Each 3-tuple indicates a
          codec, an optional packet length and an optional packetization
          period. This complements the 'm' line information and should
          be consistent with it.



Rajesh Kumar, Mohamed Mostafa                                       [Page 18]


        * The 'fsel' attribute which indicates a prioritized list of
          3-tuples for facsimile service. Each 3-tuple indicates a
          codec, an optional packet length and an optional packetization
          period. This complements the 'm' line information and should
          be consistent with it.
        * The 'capability' attribute which indicates the ATM transfer
          capability (ITU nomenclature) synonymous with the ATM Service
          Category (ATMF nomenclature).
        * The 'qosclass' attribute which indicates the QoS class of the
          ATM bearer connection.
        * The 'bcob' attribute which indicates the broadband connection
          oriented bearer class.
        * The   'stc' attribute which indicates susceptibility to
          clipping.
        * The   'upcc' attribute which indicates susceptibility the
          user plane connection configuration.
        * The 'atmQOSfparms' and 'atmQOSbparms' attributes are
          used to describe certain key ATM QoS parameters in the forward
          and backward directions respectively.
        * The 'aal2QOSfparms' and 'aal2QOSbparms' attributes which
          are  placeholders for AAL2-level impairments, yet to be defined.
          These attributes may be withdrawn if not needed.
        * The 'atmFtrfcDesc' and 'atmBtrfcDesc' attributes which are
          used to describe  ATM traffic descriptor parameters in the
          forward and backward directions respectively.
        * The 'aal2FtrfcDesc' and 'aal2BtrfcDesc' attributes which
          are  placeholders for AAL2-level traffic descriptors,
          yet to be defined. These attributes may be withdrawn if not
          needed.
        * The 'abrFparms' and 'abrBparms' attributes which are
          used to describe  ABR-specific parameters in the
          forward and backward directions respectively. These parameters
          are per the UNI 4.0 signaling  specification [5].
        * The 'clkrec' attribute which indicates the clock recovery
          method for AAL1 unstructured data transfer (UDT).
        * The 'fec' attribute which indicates the use of
          forward error correction.
        * The 'prtfl' attribute which indicates indicate the fill
          level of partially filled cells.
        * The 'bearertype' attribute is used to indicate
          whether the underlying bearer is an ATM PVC/SPVC, an ATM SVC,
          or an AAL2 CID connection within an existing ATM PVC/SPVC.
        * When present, the 'structure' attribute is used to indicate
          the presence or absence of AAL1 structured data transfer (SDT),
          and the size of the SDT blocks.
        * When present, the 'sbc' media attribute line denotes the
          subchannel count in the case of  n x 64 clear channel
          communication.
        * When present, the 'fcpssdusize' and 'bcpssdusize'
          attributes are used to  indicate the maximum size of the
          CPCS SDU payload in the forward and backward directions.
        * When present, the 'aal2CPS' attribute is used to
          indicate that an AAL2 CPS sublayer as defined in
          ITU I.363.2 [13] is associated with VCC referred to in the
          'm' line. Optionally, it can be used to indicate selected
          CPS options and parameter values for this VCC.



Rajesh Kumar, Mohamed Mostafa                                       [Page 19]


        * When present, the 'aal2_sscs_3661' attribute is used to
          indicate the presence of an AAL2 SSCS sublayer as defined
          in ITU I.366.1 [12]. Optionally, it can be used to indicate
          selected options and parameter values for this SSCS.
        * When present, the 'aal2_SSCS_3662' attribute is used to
          indicate the presence of an AAL2 SSCS sublayer as defined
          in ITU I.366.2. Optionally, it can be used to indicate
          selected options and parameter values for this SSCS.
        * When present, the 'aal2_sscs_3652' attribute is used to
          indicate the use, in conjunction with AAL2,  of a
          service-specific coordination function, as defined in
          ITU I.365.2 [40], for Connection Oriented Network Service
          (SSCF-CONS).
        * When present, the 'aal2_sscs_3653' attribute is
          used to indicate the use, in conjunction with AAL2,
          of a service-specific coordination function, as defined
          in ITU I.365.3 [41], for Connection Oriented Transport Service
         (SSCF-COTS).
        * When present, the 'AAL5app' attribute is used to
          indicate the presence of an application that uses AAL5,
          and to point to the controlling standard for the
          application layer.
        * When present, the 'lij' attribute is used to indicate the
          presence of a connection that uses the Leaf-initiated-join
          capability described in UNI 4.0 [5], and to optionally
          describe parameters associated with this capability.
        * When present, the 'anycast' attribute line is used to
          indicate the applicability of the anycast function described
          in UNI 4.0 [5], and to optionally qualify it with certain
          parameters.
        * When present, the 'wtp' media attribute line is used to specify
          the circuit used to deliver a tapped stream.
        * The 'fmtp' attribute line defined in the SDP standard can be
          used to describe higher-layer parameters. These that pertain
          to layers higher than the ATM adaptation layer and that are
          not closely coupled with the ATM or ATM adaptation layers.
          Examples are the B-HLI and B-LLI IEs specified in ITU Q.2931 [15],
          and the user-to-user information element described in
          ITU Q.2957 [48].
        * The 'chain' attribute line is used to chain consecutive SDP
          descriptions.


5.7.1       The 'atmmap' attribute


  The 'atmmap' attribute is defined on the basis of the 'rtpmap'
  attribute used in RFC2327.


        a=atmmap:<payloadType> <encodingName>

   The 'atmmap' attribute is used to dynamically map encoding names
   into payload types. This is necessary for those encoding names which
   have not been assigned a static payload type through IANA. Payload
   types and encoding techniques that have been registered with IANA
   for RTP are retained for narrowband telephony based on AAL1 or
   AAL5.

Rajesh Kumar, Mohamed Mostafa                                       [Page 20]


   The range of statically defined payload types is in the range
   0-95. All static assignments of payload types to codecs are
   listed in [31]. The range of payload types defined dynamically
   via the 'atmmap' attribute is 96-127.

   The encoding names in Table 1 are case-insensitive.

                   Table 1: Encoding Names and Payload Types
      |---------------------|--------------|---------------------------|
      | Encoding Technique  | Encoding Name|    Payload type           |
      |---------------------|--------------|---------------------------|
      | PCM - Mu law        | "PCMU"       |    0 (Statically Mapped)  |
      |---------------------|--------------|---------------------------|
      | 32 kbps ADPCM       | "G726-32"    |    2 (Statically Mapped)  |
      |---------------------|--------------|---------------------------|
      |Dual rate 5.3/6.3kbps| "G723"       |    4 (Statically Mapped)  |
      |---------------------|--------------|---------------------------|
      | PCM- A law          | "PCMA"       |    8 (Statically Mapped)  |
      |---------------------|--------------|---------------------------|
      | 7 KHz audio coding  | "G722"       |    9 (Statically Mapped)  |
      | within 64 kbps      |              |                           |
      |---------------------|--------------|---------------------------|
      | LD-CELP             | "G728"       |    15 (Statically Mapped) |
      |---------------------|--------------|---------------------------|
      | CS-ACELP            | "G729"       |    18 (Statically Mapped) |
      |(normal/low-complexity)             |                           |
      |---------------------|--------------|---------------------------|
      | Low-complexity      | "X-G729a"    |    None, map dynamically  |
      | CS-ACELP            |              |                           |
      |---------------------|--------------|---------------------------|
      |Normal               | "X-G729b"    |    None, map dynamically  |
      |CS-ACELP w/ ITU      |              |                           |
      |defined silence      |              |                           |
      |suppression          |              |                           |
      |---------------------|--------------|---------------------------|
      |Low-complexity       | "X-G729ab"   |    None, map dynamically  |
      |CS-ACELP w/ ITU      |              |                           |
      |defined silence      |              |                           |
      |suppression          |              |                           |
      |---------------------|--------------|---------------------------|
      | 16 kbps ADPCM       | "X-G726-16"  |    None, map dynamically  |
      |---------------------|--------------|---------------------------|
      | 24 kbps ADPCM       | "X-G726-24"  |    None, map dynamically  |
      |---------------------|--------------|---------------------------|
      | 40 kbps ADPCM       | "X-G726-40"  |    None, map dynamically  |
      |---------------------|--------------|---------------------------|
      | Dual rate 5.3/6.3   |"X-G7231-H"   |    None, map dynamically  |
      | kbps - high rate    |              |                           |
      |---------------------|--------------|---------------------------|
      | Dual rate 5.3/6.3   |"X-G7231-L"   |    None, map dynamically  |
      | kbps - low rate     |              |                           |
      |---------------------|--------------|---------------------------|
      | Dual rate 5.3/6.3   |"X-G7231a-H"  |    None, map dynamically  |
      | kbps - high rate w/ |              |                           |
      | ITU-defined silence |              |                           |
      | suppression         |              |                           |
      |---------------------|--------------|---------------------------|
 Rajesh Kumar, Mohamed Mostafa                                      [Page 21]


      ------------------------------------------------------------------
      | Dual rate 5.3/6.3   |"X-G7231a-L"  |    None, map dynamically  |
      | kbps - high rate w/ |              |                           |
      | ITU-defined silence |              |                           |
      | suppression         |              |                           |
      |---------------------|--------------|---------------------------|
      | 16 kbps EADPCM      | "X-G727-16"  |    None, map dynamically  |
      |---------------------|--------------|---------------------------|
      | 24 kbps EADPCM      | "X-G727-24"  |    None, map dynamically  |
      |---------------------|--------------|---------------------------|
      | 32 kbps EADPCM      | "X-G727-32"  |    None, map dynamically  |
      |---------------------|--------------|---------------------------|
      |n x 64 kbps Clear    | "X-CCD"      |    None, map dynamically  |
      |Channel without CAS  |              |                           |
      |per af-vtoa-78 [7]   |              |                           |
      |---------------------|--------------|---------------------------|
      |n x 64 kbps Clear    | "X-CCD-CAS"  |    None, map dynamically  |
      |Channel with CAS     |              |                           |
      |per af-vtoa-78 [7]   |              |                           |
      |---------------------|--------------|---------------------------|
      |GSM Full Rate        | "GSM"        |    3 (Statically Mapped)  |
      |---------------------|--------------|---------------------------|
      |GSM Half Rate        | "X-GSM-HR"   |    None, map dynamically  |
      |---------------------|--------------|---------------------------|
      |GSM-Enhanced Full Rate  "X-GSM-EFR" |    None, map dynamically  |
      |---------------------|--------------|---------------------------|
      |GSM-Enhanced Half Rate  "X-GSM-EHR" |    None, map dynamically  |
      |---------------------|--------------|---------------------------|
        |Group 3 fax demod.     "X-FXDMOD-3" |    None, map dynamically  |
      |---------------------|--------------|---------------------------|


5.7.2   The 'eecid' attribute

   The 'eecid' attribute is synonymous with the 4-byte'bnc-id'
   parameter used  by T1SI, the ATM forum and the ITU (Q.1901)
   standardization effort. The term 'eecid' stands for 'end-to-end
   connection identifier', while 'bnc-id' stands for 'backbone network
   connection identifier'.  The name "backbone" is slightly misleading
   since it refers to the entire ATM network including the ATM edge and
   ATM core networks. In   Q.1901 terminology, an ATM "backbone"
   connects TDM or analog edges.
















Rajesh Kumar, Mohamed Mostafa                                       [Page 22]


   While the term 'bnc-id' might be used in the bearer signaling plane
   and in an ISUP (Q.1901) call control plane,   SDP session descriptors
   use the neutral term 'eecid'. This provides a common SDP baseline
   for applications that use ISUP and applications that use
   SIP/SIP+.

   In the forward SVC establishment model, the call-originating gateway
   initiates SVC establishment and transmits an eecid to the call-
   terminating gateway  via SDP.

   In backward SVC establishment model, the call-originating gateway
   does not  initiate  SVC establishment. However, it transmits an
   eecid to the call-terminating gateway via SDP. The call-terminating
   gateway initiates SVC establishment.

   The value of the eecid attribute  values needs to be unique within
   the gateway initiating the SVC set-up but not across multiple
   gateways. Hence, the SVC-initiating  gateway has complete control
   over using and releasing values of this  parameter. The eecid
   attribute is used to  correlate, one-to-one, received SVC SETUP
   requests with service connection requests  from the media gateway
   controller. In the forward call model, the call-terminating gateway
   uses the ATM address of the call-originating gateway in the 'c' line
   of the session description to qualify the eecid. This is because
   multiple call-originating gateways can sending  identical eecids.

   Within an SDP session description, the eecid attribute is used as
   follows:

            a=eecid:<eecid>


  where <eecid> consists of up to 8 hex digits (equivalent to 4
  octets).

  This SDP document does not specify how the eecid (synonymous
  with bnc-id) is to be communicated through bearer signaling
  (Q.931, UNI, PNNI, AINI, IISP, proprietary signaling equivalent,
  Q.2630.1). This is a task of these bearer signaling protocols.
  However, the following informative statements are made to
  convey a sense of the interoperability that is a goal of
  current standardization efforts:
  -  ITU Q.2941.3 and the ATMF each recommend the use of the
     GIT IE for carrying the eecid (synonymous with bnc-id)
     in the set-up message of  ATM signaling protocols (Q.2931,
     UNI 4.0, PNNI, AINI, IISP).
     The coding for carrying the eecid (bnc-id) in the GIT IE
     is defined in ITU Q.2941.3 and accepted by the ATM forum.
 -   Another alternate method is to use the called party
     subaddress IE in the backward SVC call establishment model,
     and the calling party subaddress IE in the forward SVC call
     establishment model. This might be construed to be a protocol
     violation and is not the recommended means of carrying
     the eecid (bnc-id). The GIT IE is the preferred method of
     transporting the eecid (bnc-id) in ATM signaling messages.



Rajesh Kumar, Mohamed Mostafa                                       [Page 23]


-    The establish request (ERQ) message of the Q.2630.1 [37]
     signaling protocol can use the  SUGR (Served User Generated
     Reference)  IE to transport the eecid (bnc-id).


   In the backward path set-up model, the call-originating gateway can
   release and re-use an eecid when it receives  Q.2931 set-up or
   Q.2630.1 establish request  from the call-terminating end.

   In the forward  path set-up model, the call-originating gateway can
   release and re-use an eecid when it receives  a Q.2931 [15] connect  or
   Q.2630.1 [37] establish confirm from the call-terminating end. This
   message need not carry  the eecid. The Q.2931 call reference or the
   Q.2630.1 Destination Signaling Association Identifier (DSAID) points
   to the eecid.

   However, in both cases (backward and forward models),
   it is recommended that this eecid be retained until the connection
   terminates since it can serve as a handle for applications such
   as lawful wiretaps (CALEA).

5.7.3 The 'aalType' attribute

   When present, the 'aalType' attribute is used to indicate
   the ATM adaptation layer. If  this information is redundant
   with the 'm' line, it can be omitted. The format of the
   'aalType' media attribute line is as follows:

   a=aalType: <aalType>

   Here, <aalType> can take on the following string values:
   "AAL1", "AAL1_SDT", "AAL1_UDT", "AAL2", "AAL3/4", "AAL5"
   and "User defined AAL".
   Note that this document addresses AAL1, AAL2 and AAL5 only.
   Currently, there are no known  narrowband telephony applications
   or standards that use AAL3/4.

5.7.4 The 'silenceSupp' attribute

   When present, the 'silenceSupp' attribute is used to indicate
   the use or non-use of  silence suppression.
   The format of the 'silenceSupp' media attribute line is
   as follows:

   a=silenceSupp: <silenceSuppEnable> <silenceTimer> <suppPref> <sidUse>
                   <fxnslevel>

   If any of the parameters in the silenceSupp media attribute line
   is not specified, is inapplicable or is implied, then it is set to
   "-".

   The <silenceSuppEnable> can take on values of "on" or "off". If it
   is "on", then silence suppression is enabled.

   The <silenceTimer> is a 16-bit field which can be represented in
   decimal or hex. Each increment (tick) of this timer represents
   a millisecond. The maximum value of this timer is between 1 and 3
   minutes. This timer represents the time-lag before silence
   suppression kicks in. Even though this can, theoretically, be
   as low as 1 ms, most DSP algorithms take more than that to
Rajesh Kumar, Mohamed Mostafa                                       [Page 24]


   detect silence. Setting <silenceTimer> to a large value (say
   1 minute> is equivalent to disabling silence suppression
   within a call. However, idle channel suppression between calls
   on the basis of silence suppression is still operative in
   non-switched, trunking applications if <silenceSuppEnable> = "on"
   and <silenceTimer> is a large value.

   The <suppPref> specifies the preferred silence suppression
   method that is preferred or already selected.  It can
   take on the string values of "standard" and "custom". If
   its value is "standard", then a standard method (e.g. ITU-defined)
   is preferred to custom methods if such a standard
   is defined. Otherwise, a custom method may be used. If
   <suppPref> is set to "custom", then a custom method, if
   available, is preferred to the standard method.

  The <sidUse> indicates whether SIDs (Silence Insertion
  Descriptors) are to be used, and whether they use fixed comfort
  noise or sampled background noise. It can take on the
  string values of "No SID", "Fixed Noise", "Sampled Noise".

  If the value of <sidUse> is "Fixed Noise", then  <fxnslevel>
  provides its level. It can take on integer values in the range
  0-127, as follows:
      <fxnslevel> value               Meaning
         0-29                             Reserved
         30                            -30 dBm0
         31                            -31 dBm0
         . . .                         . . .
         77                            -77 dBm0
         78                            -78 dBm0
         79-126                         reserved
          127                       Idle Code (no noise)

A hex representation, preceded by a 0x prefix, of <fxnslevel>
is allowed.

5.7.5 The 'ecanf' and 'ecanb' attributes

   When present, the 'ecanf' and 'ecanb' attributes are used to indicate
   the use or non-use of  echo cancellation in the forward
   and backward directions respectively. See Section
   2.3 for a definition of the terms 'forward' and 'backward'.

   The format of the 'ecanf' and 'ecanb' media attribute lines is
   as follows:

   a=ecanf: <ecanEnable> <ecanType>
   a=ecanb: <ecanEnable> <ecanType>

   If any of the parameters in the ecanf and ecanb media attribute lines
   is not specified, is inapplicable or is implied, then it is set to
   "-".





Rajesh Kumar, Mohamed Mostafa                                       [Page 25]


   If the 'ecanf' or 'ecanb'
   media attribute lines is not present, then means other than
   the SDP descriptor must be used to determine the applicability
   and nature of echo cancellation in that direction. Examples
   of such means are MIB provisioning, the local connection options
   structure in MGCP etc.

   The <ecanEnable> parameter can take on values of "on" or "off". If it
   is "on", then echo cancellation is enabled. If it is "off",
   then echo cancellation is disabled.

   The <ecanType> parameter can take on the string values "G165" and "G168"
   respectively.

   When SDP is used with some media gateway control protocols such as MGCP
   and Megaco [26], there exist means outside SDP descriptions to specify
   the echo cancellation properties of a connection. Nevertheless, this
   media attribute line is included for completeness.  As a result, the
   SDP can be used for describing echo cancellation in applications
   where alternate means for this are unavailable.

5.7.6 The 'gcf' and 'gcb' attributes

   When present, the 'gcf' and 'gcb' attributes are used to indicate
   the use or non-use of  gain control in the forward
   and backward directions respectively. See Section
   2.3 for a definition of the terms 'forward' and 'backward'.

   The format of the 'gcf' and 'gcb' media attribute lines is
   as follows:

   a=gcf: <gcEnable> <gcLvl>
   a=gcb: <gcEnable> <gcLvl>

   If any of the parameters in the gcf and gcb media attribute lines
   is not specified, is inapplicable or is implied, then it is set to
   "-".

   If the 'gcf' or 'gcb'
   media attribute line is  not present, then means other than
   the SDP descriptor must be used to determine the applicability
   and nature of gain control in that direction. Examples of such
   means are MIB provisioning, the local connection options
   structure in MGCP etc.

   The <gcEnable> parameter can take on values of "on" or "off". If it
   is "on", then gain control is enabled. If it is "off", then
   gain control is disabled.

   The <gcLvl> parameter is represented as the decimal or hex
   equivalent of a  16-bit binary field. A value of 0xFFFF implies
   automatic gain control. Otherwise, this number indicates the
   number of decibels of inserted loss. The upper bound, 65,535 dB
   (0xFFFE) of inserted loss,  is an absurdly large  number and is a
   carryover from Megaco [26]. In practical applications, the inserted loss
   is much lower.


Rajesh Kumar, Mohamed Mostafa                                       [Page 26]


   When SDP is used with some media gateway control protocols such as MGCP
   and Megaco [26], there exist means outside SDP descriptions to specify
   the gain control properties of a connection. Nevertheless, this
   media attribute line is included for completeness.  As a result, the
   SDP can be used for describing gain control in applications
   where alternate means for this are unavailable.

5.7.7 The 'profiledesc' attribute

   There is one  'profiledesc' media attribute line  for each AAL2
   profile that is intended to be described.  The 'profiledesc' media
   attribute line  is  structured  as follows:

     a=profiledesc: <profileType> <profile>  <uuiCodeRange#1>
       <encodingName#1> <packetLength#1> <packetTime#1>
       <uuiCodeRange#2> <encodingName#2> <packetLength#2>
       <packetTime#2>... <uuiCodeRange#N> <encodingName#N>
        <packetLength#N> <packetTime#N>

   Here, <profileType>  and  <profile> are identical to their
   definition, above, for the 'm' line.

   The profile elements (rows in the profile tables of  ITU I.366.2 or
   AF-VTOA-0113) are represented as four-tuples following the <profile>
   parameter in the 'profiledesc' media attribute line. If a member of
   one of these four-tuples is not specified or is implied, then it is
   set to   "-".

   The <uuiCodeRange> parameter is represented by D1-D2, where D1 and
   D2 are decimal integers in the range 0 through 15.


   The <encodingName> parameter can take one of the values in column 2
   of Table 1. Additionally, it can take on the following descriptor
   strings:  "PCMG", "SIDG" and "SID729".  These stand for generic PCM,
   generic SID and G.729 SID respectively.

   The <packetLength> is a decimal integer representation of the AAL2
   packet length in octets.

   The <packetTime> is a decimal integer representation of the AAL2
   packetization interval in ms.

   For instance, the 'profiledesc' media attribute line below defines
   the AAL2/custom 100 profile. This profile is reproduced in the table
   below. For a description of the parameters in this profile such as
   M and the sequence number interval, see ITU I.366.2.

     a=profiledesc:AAL2/custom 100 0-7 PCMG 40 5 0-7 SIDG 1 5 8-15
         G726-32 40 10 8-15 SIDG 1 5

   If the <packetTime> parameter is to be omitted or implied, then the
   same profile  can be represented as follows:

     a=profiledesc:AAL2/custom 100 0-7 PCMG 40 - 0-7 SIDG 1 - 8-15
          G726-32 40 - 8-15 SIDG 1 -



Rajesh Kumar, Mohamed Mostafa                                       [Page 27]


   If a gateway has a provisioned or hard coded definition of a
   profile, then any definition provided via the 'profiledesc' line
   overrides it. The exception to this rule is with regard to standard
   profiles such as ITU-defined profiles and ATMF-defined profiles. In
   general, these should not be defined via a 'profiledesc' media
   attribute line. If they are, then the definition needs to be
   consistent with the standard definition else the SDP session
   descriptor should be rejected with an appropriate error code.

   |---------------------------------------------------------------|
   | UUI  | Packet |Encoding |                |    |Packet|Seq.No. |
   | Code | Length |per ITU  |Description of  | M  |Time  |Interval|
   |point |(octets)|I.366.2  |  Algorithm     |    |(ms)  |(ms)    |
   |Range |        |  2/99   |                |    |      |        |
   |      |        | version |                |    |      |        |
   |---------------------------------------------------------------|
   | 0-7  |    40  |  Figure | PCM, G.711-64,|   1 |    5 |    5   |
   |      |        |  B-1    |  generic      |     |      |        |
   |------|--------|---------|---------------|-----|------|--------|
   | 0-7  |    1   |  Figure | Generic SID   |   1 |    5 |    5   |
   |      |        |  I-1    |               |     |      |        |
   |------|--------|---------|---------------|-----|------|--------|
   | 8-15 |    40  |  Figure | ADPCM,        |   2 |   10 |    5   |
   |      |        |  E-2    | G.726-32      |     |      |        |
   |------|--------|---------|---------------|-----|------|--------|
   | 8-15 |    1   |  Figure | Generic SID   |   1 |    5 |    5   |
   |      |        |  I-1    |               |     |      |        |
   |------|--------|---------|---------------|-----|------|--------|



5.7.8 The 'vsel' attribute

 The 'vsel' attribute which indicates a prioritized list of
 one or more
 3-tuples for voice service. Each 3-tuple indicates a codec,
 an optional packet length and an optional packetization
 period. This complements the 'm' line information and should
 be consistent with it.

 The 'vsel' line is structured as follows:

      a=vsel:<encodingName #1> <packetLength #1><packetTime #1>
                <encodingName #2> <packetLength #2><packetTime #2>
                ...
               <encodingName #N> <packetLength #N><packetTime #N>

   where the <encodingName> parameter can take one of the values in
   column 2 of Table 1. The <packetLength> is a decimal integer
   representation of the packet length in octets. The <packetTime> is a
   decimal integer representation of the
   packetization interval in ms. The parameters
   <packetLength>and <packetTime> can be set to "-" when not needed.
   Also, the entire 'vsel' media attribute line can be omitted when not
   needed.


Rajesh Kumar, Mohamed Mostafa                                       [Page 28]


   For example,

        a=vsel:G729 10 10 G726-32 40 10

   indicates first preference  of G.729 or G.729a (both are
   interoperable) as the voice encoding scheme. A packet length of 10
   octets and a packetization interval of 10 ms are associated with
   this codec. G726-32 is  the second preference stated in this line,
   with an associated packet length of 40 octets and a packetization
   interval of 10 ms. If the packet length and packetization
   interval are intended to be omitted, then this media attribute line
   becomes

        a=vsel:G729 - - G726-32 - -

   The media attribute line

         a=vsel:G726-32 40 10

   indicates preference for or selection of 32 kbps ADPCM with a packet
   length of 40 octets and a packetization interval of 10 ms.

   This media attribute line can be used in the AAL1, AAL2 and
   AAL5 contexts. In the AAL1 context, it has the very limited
   utility of indicating whether the codec type is PCMU or PCMA.
   The <packetLength> and <packetTime> are not meaningful in this
   case, and should be set to "-". Its greatest utility in AAL2,
   where it  determines the use of some or all of the rows in
   a given profile table. If multiple 3-tuples are present, they
   can indicate a hierarchical assignment of some rows in that
   profile to voice service e.g. row A preferred to row B etc.
   If multiple profiles are present on the 'm' line, the profile
   qualified by this attribute is the first (i.e. highest priority)
   profile.


5.7.9 The 'dsel' attribute

 The 'dsel' attribute which indicates a prioritized list of
 one or more 3-tuples for voiceband data service. The <fxIncl>
 flag indicates whether this definition of voiceband data
 includes fax ("on" value) or not ("off" value). If <fxIncl> is
 "on", then the 'dsel' line  must be consistent with any 'fsel' line
 in the session description. In this case,  an
 error event is generated in the case of inconsistency.
 Each 3-tuple indicates a codec,
 an optional packet length and an optional packetization
 period. This complements the 'm' line information and should
 be consistent with it.

   The 'dsel' line is structured as follows:

      a=dsel:<fxIncl> <encodingName #1> <packetLength #1><packetTime #1>
                <encodingName #2> <packetLength #2><packetTime #2>
                ...
               <encodingName #N> <packetLength #N><packetTime #N>

   where the <encodingName> parameter can take one of the values in
   column 2 of Table 1. The <packetLength> and <packetTime>
   parameters are per their definition, above, for the 'vsel'
Rajesh Kumar, Mohamed Mostafa                                       [Page 29]


   media attribute line. The parameters
   <packetLength>and <packetTime>) can be set to "-" when not needed.
   The <fxIncl> flag is presumed to be "off" if it is set to "-".
   Also, the entire 'dsel' media attribute line can be omitted when not
   needed.

   For example,

       a=dsel:-  G726-32 20 5 PCMU 40 5

   indicates that this line does not address facsimile, and that the
   first preference for the voiceband data codes is 32 kbps ADPCM,
   while the second preference is PCMU.  The packet length
   and the packetization interval associated with G726-32 are 20  octets and
   5 ms respectively. For PCMU, they are 40  octets and 5 ms respectively.

   This media attribute line can be used in the AAL1, AAL2 and
   AAL5 contexts. In the AAL1 context, it has the very limited
   utility of indicating whether the codec type is PCMU or PCMA.
   The <packetLength> and <packetTime> are not meaningful in this
   case, and should be set to "-". Its greatest utility in AAL2,
   where it  determines the use of some or all of the rows in
   a given profile table. If multiple 3-tuples are present, they
   can indicate a hierarchical assignment of some rows in that
   profile to voiceband data service e.g. row A preferred to row B etc.
   If multiple profiles are present on the 'm' line, the profile
   qualified by this attribute is the first (i.e. highest priority)
   profile.

5.7.10 The 'fsel' attribute


 The 'fsel' attribute which indicates a prioritized list of
 one or more 3-tuples for facsimile service. If an 'fsel' line
 is present, any 'dsel' line with <fxIncl> set to "on" in the session
 description must be checked for consistency with it. In this case,
 an  error event is generated in the case of inconsistency.
 Each 3-tuple indicates a codec,
 an optional packet length and an optional packetization
 period. This complements the 'm' line information and should
 be consistent with it.

 The 'fsel' line is structured as follows:

      a=dsel:<encodingName #1> <packetLength #1><packetTime #1>
                <encodingName #2> <packetLength #2><packetTime #2>
                ...
               <encodingName #N> <packetLength #N><packetTime #N>

   where the <encodingName> parameter can take one of the values in
   column 2 of Table 1. The <packetLength> and <packetTime>
   parameters are per their definition, above, for the 'vsel'
   media attribute line. The parameters
   <packetLength>and <packetTime> can be set to "-" when not needed.
   Also, the entire 'fsel' media attribute line can be omitted when not
   needed.

   For example,

Rajesh Kumar, Mohamed Mostafa                                       [Page 30]


        a=fsel:FXDMOD-3 - -

   indicates demodulation and remodulation of ITU-T group 3 fax at the
   gateway.

        a=fsel:PCMU 40 5 G726-32 20 5

   indicates  a first and second preference of Mu-law PCM and 32 kbps
   ADPCM as the facsimile encoding scheme.  The packet length
   and the packetization interval associated with G726-32 are 20  octets and
   5 ms respectively. For PCMU, they are 40  octets and 5 ms respectively.

   This media attribute line can be used in the AAL1, AAL2 and
   AAL5 contexts. In the AAL1 context, it has the very limited
   utility of indicating whether the codec type is PCMU or PCMA.
   The <packetLength> and <packetTime> are not meaningful in this
   case, and should be set to "-". Its greatest utility in AAL2,
   where it  determines the use of some or all of the rows in
   a given profile table. If multiple 3-tuples are present, they
   can indicate a hierarchical assignment of some rows in that
   profile to facsimile service e.g. row A preferred to row B etc.
   If multiple profiles are present on the 'm' line, the profile
   qualified by this attribute is the first (i.e. highest priority)
   profile.


5.7.11  The 'capability' attribute

   When present, the 'capability' attribute indicates the ATM Transfer
   Capability described in ITU I.371 [28], equivalent to the ATM Service
   Category described in the UNI 4.1 Traffic Management specification [6].

   The  'capability' media attribute line is structured in one of
   the following ways:

       a=capability: <asc> <configuration>

       a=capability: <atc> <configuration>

   Possible values of the <asc> are enumerated
   below:

       "CBR", "nrt-VBR", "rt-VBR", "UBR", "ABR", "GFR"

   Possible values of the <atc> are enumerated
   below:

       "DBR","SBR","ABT/IT","ABT/DT","ABR"

   Some applications might use non-standard <atc> and <asc> values
   not listed above. Equipment designers will need to agree on
   the meaning and implications of non-standard transfer
   capabilities / service capabilities. An example of a
   a non-standard <asc> value is "UBR+", which is UBR with
   minimum cell rate (MCR).

Rajesh Kumar, Mohamed Mostafa                                       [Page 31]


   The <configuration> field essentially serves as a subscript
   to the <asc> and <atc> fields. In general, it can
   take on any integer value, or the "-" value indicating that
   it does not apply or that the underlying data is to be known
   by other means, such as provisioning.

   The following combinations are recognized in the ATMF and
   ITU specifications:

               <atc>              <configuration>  Meaning

              nrt-VBR                   1          nrt-VBR.1
              nrt-VBR                   2          nrt-VBR.2
              nrt-VBR                   3          nrt-VBR.3
              rt-VBR                    1          rt-VBR.1
              rt-VBR                    2          rt-VBR.2
              rt-VBR                    3          rt-VBR.3
              UBR                       1          UBR.1
              UBR                       2          UBR.2
              GFR                       1          GFR.1
              GFR                       2          GRR.2

             <atc>               <configuration>   Meaning

              SBR                      1           SBR1
              SBR                      2           SBR2
              SBR                      3           SBR3

   It is beyond the scope of this specification to examine the
   equivalence of some of the ATMF and ITU definitions. These
   need to be recognized from the ATMF and ITU
   source specifications and exploited, as much as possible,
   to simplify ATM node design.

   These string values in the 'capability' attribute are case-
   insensitive. When the bearer connection is a single AAL2 CID
   connection within a multiplexed AAL2 VC, the 'capability'
   attribute does not apply.


5.7.12  The 'qosclass' attribute

   When present, the   'qosclass' attribute indicates the QoS class
   specified in ITU I.2965.1 [34].

   The  'qosclass' media attribute line is structured as follows:

       a=qosclass: <qosclass>

   Here, <qosclass> is an integer in the range 0 - 5.

      <qosclass>      Meaning

           0            Default QoS
           1            Stringent
           2            Tolerant
           3            Bi-level
           4            Unbounded
           5            Stringent bi-level

Rajesh Kumar, Mohamed Mostafa                                       [Page 32]


5.7.13  The 'bcob' attribute

   When present, the   'bcob' attribute represents the broadband
   connection oriented bearer class defined in ITU Q.2961.2 [33].
   The 'bcob' media attribute line is structured as
   follows:

       a=bcob: <bcob>

   Here, <bcob> is the decimal or hex representation of a 5-bit
   field.  Currently, all values are unused and
   reserved with the following exceptions:

        <bcob>          Meaning

           1            BCOB-A
           3            BCOB-C
          16            BCOB-X
          24            BCOB-VP (transparent VP service)

5.7.14  The 'stc' attribute

   When present, the   'stc' attribute represents susceptibility
   to clipping. The 'stc' media attribute line is structured as
   follows:

       a=stc: <stc>

   Here, <stc> is the decimal equivalent of a 2-bit field.
   Currently, all values are  unused and reserved with the
   following exceptions:

      <stc> value      Binary Equivalent     Meaning

           0                   00            Not susceptible to clipping
           1                   01            Susceptible to clipping

5.7.15  The 'upcc' attribute

   When present, the   'upcc' attribute represents the user plane
   connection configuration. The 'upcc' media attribute line is
   structured as follows:

       a=upcc: <upcc>

   Here, <upcc> is the decimal equivalent of a 2-bit field.
   Currently, all values are  unused and reserved with the
   following exceptions:

      <upcc> value     Binary Equivalent    Meaning

           0                 00             Point to point
           1                 01             Point to multipoint

5.7.16 The 'atmQOSfparms' and 'atmQOSbparms' attributes

   When present, the 'atmQOSfparms' and 'atmQOSbparms'
   attributes are  used to describe certain key ATM QoS parameters
   in the forward and backward directions respectively. See Section
Rajesh Kumar, Mohamed Mostafa                                       [Page 33]


   2.3 for a definition of the terms 'forward' and 'backward'.

   The 'atmQOSfparms' and 'atmQOSbparms' media attribute lines
   are structured as follows:

   a=atmQOSfparms: <cdvType><acdv><ccdv><actd><cctd><aclr>
   a=atmQOSbparms: <cdvType><acdv><ccdv><actd><cctd><aclr>

   The <cdvType> parameter can take on the string values of
   "pp" and "2p". These refer to the peak-to-peak and two-point
   CDV as defined in UNI 4.0 [5] and ITU Q.2965.2 [35] respectively.

   The CDV parameters, <acdv> and <ccdv>, refer to  the acceptable
   and cumulative  CDVs respectively. These are expressed in units
   of microseconds and represented as the decimal or hex equivalent
   of 24-bit fields.  These use the cell loss ratio, <aclr>, as the
   "alpha" quantiles defined in the ATMF TM 4.1 specification [6]
   and in ITU I.356 [47].

   The CTD  parameters, <actd> and <cctd>,  refer to the acceptable and
   cumulative  CTDs respectively in milliseconds.
   These are represented as the decimal or hex
   equivalent of  16-bit fields.
   These parameters are equivalent to the maximum end-to-end
   transit delay defined in   ATMF TM 4.1
   specification [6] and Q.2965.2 [35].

   The <aclr> parameter refers to  forward and backward acceptable
   cell loss ratios. This is the ratio between the number of cells
   lost and the number of cells transmitted. It is
   expressed as the decimal or hex equivalent of an 8-bit field. This field
   expresses an order of magnitude n, where n is an integer in the range
   1-15. The Cell Loss Ratio takes on the value 10 raised to the power
   of minus n.

   If any of these parameters is not specified, is inapplicable or is
   implied, then it is set to   "-".

   An example use of these  attributes for an  rt-VBR,
   single-CID AAL2 voice VC is:

        a=atmQOSfparms:pp  8125 3455 32000 -  11
        a=atmQOSbparms:pp  4675 2155 18000 -  12

   This implies a forward acceptable peak-to-peak CDV of 8.125 ms, a
   backward acceptable peak-to-peak CDV of 4.675 ms, forward
   cumulative peak-to-peak CDV of 3.455 ms, a backward cumulative
   peak-to-peak CDV of 2.155 ms, a forward acceptable maximum
   cell transfer delay of 32  ms, a backward acceptable maximum
   cell transfer delay of 18   ms, an unspecified forward cumulative
   cell transfer delay, an unspecified backward cumulative cell transfer
   delay, a forward cell loss ratio of
   10 raised to  minus 11 and a backward cell loss ratio of 10 to
   the minus 12.

   In certain applications (such as SIP-based applications), an SDP
   descriptor might have both the atmQOSfparms and atmQOSbparms
   attributes. In other applications (such as Megaco-based applications),
   the remote descriptor can have the atmQOSfparms attribute
Rajesh Kumar, Mohamed Mostafa                                       [Page 34]


   while the local descriptor can have the atmQOSbparms attribute.


5.7.17 The 'aal2QOSfparms' and 'aal2QOSbparms'  attributes

   It is recognized that means of characterizing impairments in AAL2
   packet streams are not clearly defined at this time. These AAL2 media
   attributes will constructed along the line of the 'atmQOSfparms'
   and 'atmQOSbparms' attributes.

5.7.18 The 'atmFtrfcDesc' and 'atmBtrfcDesc' attributes

   When present, the 'atmFtrfcDesc' and 'atmBtrfcDesc' attributes
   are  used to indicate ATM traffic descriptor parameters in the
   forward and backward directions respectively. See Section
   2.3 for a definition of the terms 'forward' and 'backward'.


   The  'atmFtrfcDesc' and 'atmBtrfcDesc' media attribute lines
   are structured as follows:

      a=atmFtrfcDesc:<clpLvl> <pcr><scr><mbs><cdvt><mcr><mfs><fd><te>
      a=atmBtrfcDesc:<clpLvl> <pcr><scr><mbs><cdvt><mcr><mfs><fd><te>


    If any of these parameters in these media attribute
   lines is not specified, is inapplicable or is implied, then it is
   set to   "-".

   The <clpLvl> (CLP level) parameter indicates whether the rates and
   bursts described in these media
   attribute lines apply to CLP
   values of 0, (0+1). It can take on the following string values:
   "0", "0+1" and "-". If rates and bursts for both <clpLvl> values are to
   be described, then it is necessary to use two separate
   media attribute lines for each direction in the same session
   descriptor.  If the <clpLvl> parameter is set to "-", then it
   implies that the CLP parameter is not applicable. This is true
   when the 'atmFtrfcDesc' or  'atmBtrfcDesc' attribute is used to
   describe an AAL2
   CID rather than an ATM VC connection.

   The meaning, units and applicability of the remaining parameters
   are per the ATMF TM 4.1 specification [6] and are
   reiterated below:

   PARAMETER      MEANING       UNITS         APPLICABILITY
   <pcr>          PCR           Cells/        CBR, rt-VBR, nrt-VBR,
                                second        ABR, UBR, GFR;
                                              CLP=0,0+1

   <scr>          SCR            Cells/        rt-VBR, nrt-VBR;
                                 second        CLP=0,0+1

   <mbs>          MBS            Cells         rt-VBR, nrt-VBR,
                                               GFR;
                                               CLP=0,0+1
Rajesh Kumar, Mohamed Mostafa                                       [Page 35]


   <cdvt>        CDVT           Microsec.     CBR, rt-VBR, nrt-VBR,
                                              ABR, UBR, GFR;
                                              CLP=0,0+1


   <mcr>         MCR          Cells/        ABR,GFR;
                              second        CLP=0+1


   <mfs>         MFS          Cells         GFR;
                                            CLP=0,0+1


   <fd>         Frame        "on"/"off"    CBR, rt-VBR, nrt-VBR,
                Discard                    ABR, UBR, GFR;
                Allowed                    CLP=0+1


   <te>         CLP            "on"/"off"    CBR, rt-VBR, nrt-VBR,
                tagging                      ABR, UBR, GFR;
                Enabled                      CLP=0


   <fd> indicates that frame discard is permitted. It can take on the string
   values of "on" or "off". Note that, in the GFR case, frame discard
   is always enabled. Hence, this subparameter can be set to "-" in
   the case of GFR. Since the <fd>   parameter is  independent
   of CLP, it  is meaningful in the case when <clpLvl> = "0+1".
   It  should be set to "-" for the case when <clpLvl> = "0".

   <te> (tag enable)   indicates that CLP tagging is allowed.
   These can take on the string values of "on" or "off".
   Since the <te>   parameter applies only to cells with
   a CLP of 0, it  is  meaningful in the case when <clpLvl> = "0".
   It should be set to "-" for the case when <clpLvl> = "0+1".

   An example use of these media attribute lines for an  rt-VBR,
   single-CID AAL2 voice VC is:

     a=atmFtrfcDesc:0+1 200   100  20   - - - on  -
     a=atmFtrfcDesc:0   200   80   15   - - - -  off
     a=atmBtrfcDesc:0+1 200   100  20   - - - on -
     a=atmBtrfcDesc:0   200   80   15   - - - -  off

   This implies a forward and backward PCR of 200 cells per second
   all cells regardless of CLP,  forward and backward PCR of 200 cells
   per second for cells with CLP=0, a forward and backward SCR of 100
   cells per second for all cells regardless of CLP, a forward and
   backward SCR of 80 cells per second for cells with CLP=0,
   a forward and backward MBS of 20 cells  for all cells regardless
   of CLP, a forward and backward MBS of 15 cells for cells with
   CLP=0,  an unspecified CDVT which can be known by other means,
   and an  MCR and MFS which are unspecified because they are
   inapplicable. Frame discard is enabled in both the forward and
   backward directions. Tagging is not enabled in either direction.

   In certain applications (such as SIP-based applications), an SDP
   descriptor might have both the atmFtrfcDesc and atmBtrfcDesc
   attributes. In other applications (such as Megaco-based applications),
   the remote descriptor can have the atmFtrfcDesc attribute
Rajesh Kumar, Mohamed Mostafa                                       [Page 36]


   while the local descriptor can have the atmBtrfcDesc attribute.


5.7.19  The 'aal2FtrfcDesc' and 'aal2BtrfcDesc' attributes

    It might be meaningful to construct   descriptors for traffic
    at the AAL2 packet (subcell) level. These can tentatively be
    named the 'aal2FtrfcDesc' and 'aal2BtrfcDesc' attributes
    When constructed, these can  be similar in some aspects to the
    'aal2FtrfcDesc' and 'aal2BtrfcDesc' attributes.

5.7.20  The 'abrFparms' and 'abrBparms' attributes

   When present, the 'abrFparms' and 'abrBparms' attributes
   are used to indicate the 'additional' ABR parameters specified
   in the UNI 4.0 signaling specification [5]. These refer to the
   forward and backward directions respectively. See Section
   2.3 for a definition of the terms 'forward' and 'backward'.

   The 'abrFparms' and 'abrBparms' media attribute lines
   are structured as follows:

   a=abrFparms:<nrm><trm><cdf><adtf>
   a=abrBparms:<nrm><trm><cdf><adtf>

   These parameters are mapped into the ABR service parameters in
   [6] in the manner described below. These parameters can be
   represented in SDP as decimal integers, with fractions permitted
   for some. Details of the meaning, units and applicability of
   these parameters are in [5] and [6].

   If any of these parameters in the 'abrFparms' or 'abrBparms'
   media attribute  lines is not specified, is inapplicable or is implied,
   then it is set to   "-".


   SDP        ATMF          SDP REPRESENTATION
   PARAMETER  EQUIVALENT

   <nrm>       NRM    Decimal/hex equivalent of 3 bit field
   <trm>       TRM           -ditto-
   <cdf>       CDF           -ditto-
   <adtf>      ADTF   Decimal/Hex  equivalent of 10 bit field

   In certain applications (such as SIP-based applications), an SDP
   descriptor might have both the abrFparms and abrBparms
   attributes. In other applications (such as Megaco-based applications),
   the remote descriptor can have the abrFparms attribute
   while the local descriptor can have the abrBparms attribute.

5.7.21 The 'clkrec' attribute

   When present, the 'clkrec' attribute is used to indicate
   the clock recovery method. This attribute is meaningful in the
   case of AAL1 unstructured data transfer (UDT). The format of the
   'clkrec' media attribute line is as follows:

   a=clcrec: <clcrec>

Rajesh Kumar, Mohamed Mostafa                                       [Page 37]


   The <clcrec> field can take on the following string
   values: "NULL", "SRTS" or "adaptive". These  are defined in
   ITU I.363.1 [10]. "NULL" indicates   that the stream (e.g. T1/E1)
   encapsulated in ATM is synchronous to  the ATM network or
   is retimed using slip buffers.

5.7.22 The 'fec' attribute

   When present, the 'fec' attribute is used to indicate the use of
   forward error correction. Currently, there exists a forward error
   correction method defined for AAL1 in ITU I.363.1 [10]. The format of the
   'fec' media attribute line is as follows:

   a=fec: <fecEnable>

   The <fecEnable> flag indicates the presence of absence of Forward
   Error Correction. It can take on the string values of "NULL", "loss
   sensitive" and "delay sensitive". An "NULL" value implies disabling
   this capability. FEC can be enabled differently for delay-sensitive
   and loss-sensitive connections.

5.7.23 The 'prtfl' attribute

   When present, the 'prtfl' attribute is used to indicate the fill
   level of partially filled cells. This is the number of non-pad payload
   octets, not including any AAL SAR or convergence sublayer octets. For
   example, in some AAL1 applications that use partially filled cells with
   padding at the end, this attribute indicates the number of leading
   payload octets not including any AAL overhead.


   The format of the 'prtfl' media attribute line is as follows:

   a=prtfl: <partialFill>

   Here, <partialFill> can be expressed as a decimal (no prefix)
   or hex (0x prefix) integer.  In general, permitted values are integers
   in  the range 1 - 46  inclusive. However, this upper bound is
   different for different adaptations since the AAL overhead is
   different.

   In the case of AAL1 SDT used for n x 64 (n>=2) clear channel
   transmission,
   this media attribute line applies to both P and non-P cells.
   A value of 46 indicates no padding in P-cells and a padding of
   one in non-P cells. If partial fill is enabled, structures
   shall not be
   split across cell boundaries and shall fit in any cell. Hence,
   their size shall be less than or equal to the partial fill
   size (maximum of 46). Further, the partial fill size is preferably
   an integer multiple of the structure size. If not, then the
   partial fill size stated in the SDP description shall be
   truncated to an integer multiple (e.g. a partial fill size of
   40 is truncated to 36 to support six 6 x 64 channels).


5.7.24 The 'bearertype' attribute

   When present, the 'bearertype' attribute is used to indicate
Rajesh Kumar, Mohamed Mostafa                                       [Page 38]


   whether the underlying bearer is an ATM PVC/SPVC, an ATM SVC,
   or an AAL2 CID connection within an existing ATM PVC/SPVC.
   Additionally, for ATM SVCs and AAL2 CID connections, the
   'bearertype' attribute can be used to indicate whether the
   media gateway initiates connection set-up via bearer signaling
   (Q.2931-based or Q.2630.1 based. The format of the 'bearertype'
   media attribute line is as follows:

   a=bearertype: <bearerType> <localInititiation>

   The <bearerType> field can take on the following string values:
   "PVC", "SVC", "CID", with semantics as defined above.

   In the case when the underlying bearer is a PVC/SPVC, or a CID
   assigned by the MGC rather than through bearer signaling, the
   <localInititiation> flag can be omitted or set to "-". In the
   case when bearer signaling is used, this flag can be omitted
   when it is known by default  or by other means
   whether the media gateway initiates
   the connection set-up via bearer signaling. Only when this is to
   be indicated explicitly that the <localInititiation> flag takes
   on the values of "on" or "off". An "on" value indicates that
   the media gateway is responsible for initiating connection set-up
   via bearer signaling (SVC signaling or Q.2630.1 signaling),
   an "off" value indicates otherwise.

5.7.25 The 'structure' attribute

   This attribute applies to AAL1 connections only. When present,
   the 'structure' attribute is used to indicate the presence or
   absence of structured data transfer (SDT), and the size in octets
   of the SDT
   blocks. The format of the 'structure' media attribute line is as
   follows:

   a=structure: <structureEnable> <blksz>

   where the <structureEnable> flag indicates the presence of absence of SDT.
   It can take on the values of "on" or "off". An "on" value implies
   AAL1 structured data transfer (SDT), while an "off" value implies
   AAL1 unstructured data transfer (UDT).

   The block size field, <blksz>,  is an optional 16-bit field (Q.2931)
   that can be represented in decimal (no prefix) or in hex (0x prefix).
   It can be omitted or set to a "-" when not applicable, as in the case
   of unstructured data transfer (UDT). For SDT, it can   be omitted or set
   to a "-" when <blksz> is known by other means. For instance,
   af-vtoa-78 [7] fixes the structure size for n x 64 service,
   with or without CAS. The theoretical maximum value  of <blksz> is 65,535,
   although most services  use much less.

5.7.26 The 'sbc' attribute

   The 'sbc' media attribute line denotes the subchannel count and
   is meaningful only in the case of  n x 64 clear channel
   communication. A clear n x 64 channel can use AAL1
   (ATM forum af-vtoa-78) or AAL2 adaptation (ITU I.366.2). Although
   no such standard definition exists, it is also possible to use
   AAL5 for this purpose. An  n x 64 clear channel is represented
Rajesh Kumar, Mohamed Mostafa                                       [Page 39]


   by the encoding names of  "X-CCD" and "X-CCD-CAS" in
   Table 1.

   The format of the 'sbc' media attribute line is as follows:

     a=sbc: <sbc>

   Here, <sbc> can be expressed as a decimal (no prefix)
   or hex (0x prefix) integer.   This attribute indicates the
   number of DS0s in a T1 or E1 frame that are aggregated for
   transmitting  clear channel data. For T1-based applications, it
   can take on integral values in the inclusive range [1...24]. For
   E1-based applications, it can take on integral values in the
   inclusive range [1...31]. When omitted, other means are to be used
   to determine the subchannel count.

5.7.27 The 'fcpssdusize' and 'bcpssdusize' attributes

   When present, the 'fcpssdusize' and 'bcpssdusize' attributes are used to
   indicate the maximum size of the CPCS SDU payload in the forward and
   backward directions respectively. See section 2.3 for a definition of the
   terms 'forward' and 'backward'.

   The format of these media attribute line is as follows:

     a=fcpssdusize: <cpcs>
     a=bcpssdusize: <cpcs>

   The <cpcs>  fields is a 16-bit integer that can be
   represented in decimal (no prefix)or in hex (0x prefix).

   The meaning and  values of these fields are as follows:

   Application    Field      Meaning                         Values

   AAL5           <cpcs>    Maximum CPCS-SDU size           1- 65,535


   AAL2           <cpcs>    Maximum CPCS-SDU size           45 or 64

   In certain applications (such as SIP-based applications), an SDP
   descriptor might have both the fcpssdusize and bcpssdusize
   attributes. In other applications (such as Megaco-based applications),
   the remote descriptor can have the fcpssdusize attribute
   while the local descriptor can have the bcpssdusize attribute.


   5.7.28 The 'aal2CPS' attribute

   When present, the 'aal2CPS' attribute is used to indicate
   describe parameters associated with the AAL2 CPS layer.

   The format of the 'aal2CPS' media attribute line is as
   follows:

   a=aal2CPS: <maxChan> <timerCU>

   Each of these fields can be set to a "-" when the intention
   is to not specify them in an SDP descriptor.
Rajesh Kumar, Mohamed Mostafa                                       [Page 40]


   The <maxChan> integer can take on values between 1 and 255.
   It represents the number of channels (CIDs) multiplexed into
   the AAL2 VCC. It can be represented in decimal (no prefix)
   or in hex (0x prefix).

   The <timerCU> integer represents the "combined use" timerCU
   defined in ITU I.363.2. This timer is represented as an
   integer number of microseconds.

5.7.29 The 'aal2_sscs_3661' attribute

   When present, the 'aal2_sscs_3661' attribute is used to indicate
   the presence of an AAL2 SSCS sublayer as defined in ITU I.366.1 [12].
   Optionally, it can be used to indicate selected options and
   parameter values for this SSCS.

   The format of the 'aal2_sscs_3661' media attribute line is as
   follows:

   a=aal2_sscs_3661: <adt> <ted> <fsssar> <bsssar>

   Each of these fields can be set to a "-" when the intention
   is to not specify them in an SDP descriptor.

   The <adt> flag indicates the presence of absence of assured data
   transfer as defined in I.366.1. The <ted> flag indicates the
   presence of absence of transmission error detection as defined
   in I.366.1. Each of these flags can take on the values of "on"
   or  "off". An "on" value indicates presence of the capability.

   The  <fsssar> and  <bsssar> fields are 16-bit integers  that
   can be represented in decimal (no prefix)or in hex (0x prefix).
   The meaning and  values of the  <fsssar> and  <bsssar> fields
   are as follows:

   Field      Meaning                         Values

   <fsssar>   Maximum SSSAR-SDU size           1- 65,535
              forward direction

   <bsssar>   Maximum SSSAR-SDU size           1- 65,535
              backward direction

  In certain applications (such as SIP-based applications), an SDP
  descriptor might have an 'aal2_sscs_3661' media attribute line
  with the <fsssar> and <bsssar> subparameters. In applications
  (such as Megaco-based applications), the remote descriptor can have the
  <fsssar> subparameter while the local descriptor can have the
  <bsssar> subparameter.

  5.7.30 The 'aal2_SSCS_3662' attribute

   When present, the 'aal2_SSCS_3662' attribute is used to indicate
   the presence of an AAL2 SSCS sublayer as defined in ITU I.366.2 [13].
   Optionally, it can be used to indicate selected options and
   parameter values for this SSCS.


Rajesh Kumar, Mohamed Mostafa                                       [Page 41]


   The format of the 'aal2_SSCS_3662' media attribute line is as
   follows:

   a=aal2_SSCS_3662: <sap> <circuitMode> <frameMode> <faxDemod>
                   <cas> <dtmf> <mfall> <mfr1> <mfr2>
                   <PCMencoding> <fmaxframe> <bmaxframe>

   Each of these fields can be set to a "-" when the intention
   is to not specify them in an SDP descriptor.

   The <sap> field can take on the following string values: "audio"
   and "multirate". These correspond to the audio and multirate
   Service Access Points (SAPs) defined in ITU I.366.2.

   The <circuitMode> flag indicates whether the transport of circuit
   mode data is enabled or disabled, corresponding to the string
   values of "on" and "off" respectively.

   The <frameMode> flag indicates whether the transport of frame
   mode data is enabled or disabled, corresponding to the string
   values of "on" and "off" respectively.

   The <faxDemod> flag indicates whether facsimile demodulation
   and remodulation are enabled or disabled, corresponding to the
   string values of "on" and "off" respectively.

   The <cas> flag indicates whether the transport of Channel
   Associated Signaling (CAS) bits in AAL2 type 3 packets is enabled
   or disabled, corresponding to the string values of "on" and "off"
   respectively.

   The <dtmf> flag indicates whether the transport of DTMF dialled
   digits in AAL2 type 3 packets is enabled or disabled, corresponding
   to the string values of "on" and "off" respectively.

   The <mfall> flag indicates whether the transport of MF dialled
   digits in AAL2 type 3 packets is enabled or disabled, corresponding
   to the string values of "on" and "off" respectively. This flag
   enables  MF dialled digits in a generic manner, without specifying
   type (e.g. R1, R2 etc.).

   The <mfr1> flag indicates whether the transport,  in AAL2 type 3
   packets, of MF dialled digits for signaling system R1 is enabled
   or disabled, corresponding to the string values of "on" and "off"
   respectively.

   The <mfr2> flag indicates whether the transport,  in AAL2 type 3
   packets, of MF dialled digits for signaling system R2 is enabled
   or disabled, corresponding to the string values of "on" and "off"
   respectively.

   The <PCMencoding> field indicates whether  PCM encoding, if used,
   is based on the A-law or the Mu-law. This can be used to qualify
   the 'generic PCM' codec stated in some of the AAL2 profiles. The
   <PCMencoding> field can take on the string values of "A"
   and "Mu".


Rajesh Kumar, Mohamed Mostafa                                       [Page 42]


   The  <fmaxframe> and  <bmaxframe> fields are 16-bit integers  that
   can be represented in decimal (no prefix)or in hex (0x prefix).
   The meaning and  values of the  <fmaxframe> and  <bmaxframe> fields
   are as follows:

   Field         Meaning                         Values

   <fmaxframe>   Maximum length of a             1- 65,535
                 frame mode data unit,
                 forward direction

   <bmaxframe>   Maximum length of a             1- 65,535
                 frame mode data unit,
                 backward direction

  In certain applications (such as SIP-based applications), an SDP
  descriptor might have an 'aal2_SSCS_3662' media attribute line
  with the <fmaxframe> and <bmaxframe> subparameters. In applications
  (such as Megaco-based applications), the remote descriptor can have the
  <fmaxframe>  subparameter while the local descriptor can have the
  <bmaxframe> subparameter.


5.7.31 The 'aal2_sscs_3652' attribute

   When present, the 'aal2_sscs_3652' attribute is used to indicate
   the use, in conjunction with AAL2,  of a service-specific
   coordination function, as defined in ITU I.365.2 [40], for Connection
   Oriented Network Service (SSCF-CONS). The format of the
   'aal2_sscs_3652' media attribute line is as follows:

   a=aal2_sscs_3652

5.7.32 The 'aal2_sscs_3653' attribute

   When present, the 'aal2_sscs_3653' attribute is used to indicate
   the use, in conjunction with AAL2,  of a service-specific
   coordination function, as defined in ITU I.365.3 [41], for Connection
   Oriented Transport Service (SSCF-COTS). The format of the
   'aal2_sscs_3653' media attribute line is as follows:

   a=aal2_sscs_3653

5.7.33 The 'AAL5app' attribute

   When present, the 'AAL5app' attribute is used to indicate
   the presence of an application that uses AAL5, and to optionally
   point to the
   controlling standard for the application layer. The format of the
   'AAL5app' media attribute line is as follows:

   a=AAL5app: <AAL5app>

   The <AAL5app> field can take on the string values listed
   below, along with their meaning. Additionally, it can be set to "-"
   if the controlling standard for the application is known by other
   means such as by default or through provisioning.

Rajesh Kumar, Mohamed Mostafa                                       [Page 43]


         <AAL5app>           Meaning

        "h323c"               Annex C of H.323 which specifies direct
                              RTP on AAL5 [45].

         "af83"               af-vtoa-0083.001, which specifies
                              variable size AAL5 PDUs with PCM voice
                              and a null SSCS [46].

      "assuredSSCOP"          SSCOP as defined in ITU Q.2110 [43],
                              assured operation.

      "nonassuredSSCOP"       SSCOP as defined in ITU Q.2110 [43],
                              non-assured operation.

         "itu_i3651"          Frame relay SSCS per ITU I.365.1 [39].

         "itu_i3652"          Service-specific coordination function,
                              as defined in ITU I.365.2, for Connection
                              Oriented Network Service (SSCF-CONS) [40].

         "itu_i3653"          Service-specific coordination function,
                              as defined in ITU I.365.3, for Connection
                              Oriented Transport Service (SSCF-COTS) [41].

         "FRF11"             Use of the FRF.11 frame relay standard
                              to transmit telephony payloads.

5.7.34 The 'lij' attribute

   When present, the 'lij' attribute is used to indicate
   the presence of a connection that uses the Leaf-initiated-join
   capability described in UNI 4.0 [5], and to optionally describe
   parameters associated with this capability.  The format of the
   'lij' media attribute line is as follows:

   a=lij: <sci><lsn>

  The <sci> (screening indication) is a 4-bit field expressed as a
  decimal
  or hex integer. It is defined in the UNI 4.0 signaling specification
  [5]. It is expected that the values of this field will be defined
  later by the ATMF and/or ITU. Currently, all values are reserved
  with the exception of 0, which indicates a 'Network Join without Root
  Notification'.

  The <lsn> (leaf sequence number) is a 32-bit field expressed as a
  decimal
  or hex integer. Per the UNI 4.0 signaling specification [5], it is
  used by a joining leaf to associate messages and responses during
  LIJ (leaf initiated join) procedures.

  Each of these fields can be set to a "-" when the intention
  is to not specify them in an SDP descriptor.

5.7.35 The 'anycast' attribute

   When present, the 'anycast' attribute line is used to indicate
   the applicability of the anycast function described in UNI
Rajesh Kumar, Mohamed Mostafa                                       [Page 44]


   4.0 [5]. Optional parameters to  qualify this function are
   provided. The format of the 'anycast' attribute is:

   a=anycast: <atmGroupAddress> <cdStd> <conScpTyp> <conScpSel>

   The <atmGroupAddress> is per Annex 5 of UNI 4.0 [5]. Within
   an SDP descriptor, it can be represented in one of the formats
   (NSAP, E.164, GWID/ALIAS) described elsewhere in this document.

   The remaining subparameters mirror the connection scope selection
   information element in UNI 4.0 [5]. Their meaning and representation
   is as shown below:

   PARAMETER     MEANING                                  REPRESENTATION
   <cdStd>       Coding standard for the                  Decimal or hex
                 connection scope selection IE            equivalent of
                 Definition: UNI 4.0 [5]                  2 bits

  <conScpTyp>    Type of connection scope                 Decimal or hex
                 Definition: UNI 4.0 [5]                  equivalent of
                                                          4 bits

  <conScpSel>    Connection scope selection               Decimal or hex
                 Definition: UNI 4.0 [5]                  equivalent of
                                                          8 bits

 Currently, all values of <cdStd> and   <conScpTyp> are reserved with
 the exception of <cdStd> = 3 (ATMF coding standard) and <conScpTyp> = 1
 (connection scope type of 'organizational').

  Each of these fields can be set to a "-" when the intention
  is to not specify them in an SDP descriptor.

5.7.36 The 'wtp' attribute

This is used for CALEA (lawful wiretap) conformance. It specifies the
VCC and/or CID to be used for delivering a tapped stream. An odd-even
convention is used.
The stream directed towards the tapped party (or towards a
party to which the tapped party's call is redirected) is copied into a
circuit with an even VCCI (if there are no CIDs or one CID per VCC) or a
circuit with an even CID (if there are multiple CIDs per VCC). VCCIs
used are 0,2,4... CIDs used are 8, 10, 12 ...
The stream from the tapped party (or from a
party to which the tapped party's call is redirected) is copied into a
circuit with the next odd   VCCI (if there are no CIDs or one CID per VCC) or a
circuit with the next odd CID (if there are multiple CIDs per VCC).   The odd
value in the pair is automatically derived by adding 1 to the even value and is
not specified in the 'wtp' attribute line. The resulting VCCI values are
1, 3, 5 ... The resulting CID values are 9, 11, 13 ...

This attribute has the following format:

a=wtp: <virtualConnectionId>

where <virtualConnectionId> is defined in sections above on the 'm' lines
for AAL1, AAL5 and AAL2. The wildcarding rules for <virtualConnectionId> are
applicable. Note that the semantics of the <virtualConnectionId>  allow
specification of the ATM address of the remote delivery site.
Rajesh Kumar, Mohamed Mostafa                                       [Page 45]


When   SVC(s)  are  used for delivering the tapped streams
to another site, all terms in <virtualConnectionId> except the ATM address
of the remote delivery site are wildcarded.


5.7.37 Specification of Higher-layer attributes

This conventions in this ATM SDP document are limited to the ATM and adaptation
layers. Parameters associated with layers higher than the ATM adaptation
layer are addressed only if these are tightly coupled to the ATM or
adaptation layers.

ATM signaling standards provide 'escape mechanisms' to
represent, signal and negotiate higher-layer parameters. Examples
are the B-HLI and B-LLI IEs specified in ITU Q.2931 [15], and
the user-to-user information element described in ITU Q.2957 [48].

SDP as described in rfc2327 has a similar mechanism to
describe higher-layer parameters. This is the 'fmtp' or the
format-specific parameters attribute. This attribute is expressed in
the following manner:
     a=fmtp:<format><format specific parameters>

It is suggested that applications use this attribute, described in
detail in rfc2327 [1], to express higher-layer parameters. Conventions
for the use of the 'fmtp' attribute to describe higher-layer information
are beyond the scope of the present document. However, it is recognized
that in  some applications it is necessary to describe higher-layer
information within the same SDP descriptor as the ATM and AAL
information.

5.7.38 Use of the second media-level part in H.323 Annex C applications

Section 4 mentions that H.323 annex C applications have a second media level part
for the ATM session description. This is used to convey information about the RTCP
stream. Although the RTP stream is encapsulated in AAL5 with no intervening IP
layer, the RTCP stream is sent to an IP address and RTCP port. This media level
part has the following format:
   m= <media> <port> <transport> <fmt list>
   m= control <rtcpPortNum> H323c -
   c= IN IP4 <rtcpIPaddr>

Consistency with rfc2327 is maintained in the location and format of these lines.
The <fmt list> is set o "-". The 'c' line in the second media-level part pertains
to RTCP only.

The <rtcpPortNum> and <rtcpIPaddr> subparameters indicate the port number and IP
address on which the media gateway is prepared to receive RTCP packets. Since this
refers to the RTCP packets and not to RTP packets, the port number is odd. If an
even port is specified, then the next odd number is used.

Any of the subparameters on these lines can be set to "-" if they are known by
other means.

The range and format of the <rtcpPortNum> and <rtcpIPaddr> subparameters is per
[1]. The <rtcpPortNum> is a decimal number between 1024 and 65535. It is an odd
number. If an even number in this range is specified, the next odd number is used.
The <rtcpIPaddr> is expressed in the usual dotted decimal IP address
representation, from 0.0.0.0 to 255.255.255.255, resulting in an alphanumeric
Rajesh Kumar, Mohamed Mostafa                                       [Page 46]


string of 7 to 15 characters.

5.7.39 Chaining SDP descriptors

   The start of an SDP descriptor is marked by a 'v' line. In some
   applications, consecutive SDP descriptions are alternative descriptions
   of the same session. In others, these describe different layers of the
   same connection (e.g. IP, ATM, frame relay). This is useful when these
   connectivity at these layers are established at the same time e.g. an
   IP-based session over an ATM SVC. To distinguish between the
   alternation and concatenation of SDP descriptions, a 'chain' attribute
   can be used in the case of concatenation.

   When present, the 'chain' attribute binds an SDP description to  the
   next or previous SDP description. The next or previous description is
   separated from the current one by a 'v' line. It is not necessary that
   this description also have a 'chain' media attribute line.

   Chaining averts the need to set up a single SDP description for a
   session that is simultaneously created at multiple layers. It allows
   the SDP descriptors for  different layers to remain simple and clean.
   Chaining is not needed in the Megaco context, where it is possible to
   create separate terminations for the different layers of a connection.

   The 'chain' media attribute line has the following format:

        a=chain: <chainPointer>

   The <chainPointer> field can take on the following string values:
   "next", "previous" and "NULL". The value "NULL" is not equivalent to
   omitting the chain attribute from a description since it expressly
   precludes the possibility of chaining. If the 'chain' attribute is
   absent in an SDP description, chaining can still be realized by its
   presence in the previous or next description.


6.0   List of Parameters with  Representations

This section provides a list of the parameters used in this document,
and the formats used to represent them in SDP descriptions.

In the representations of these parameters, string values (including
single-character strings) are enclosed in double quotes (" ").
Decimal numbers are do not have a prefix, while hex numbers
are preceded by a 0x.

In general, a  "-" value can be used for any field that
is not specified, is inapplicable or is implied.

PARAMETER           MEANING              REPRESENTATION

<username>          User name            Constant "-"

<sessionID>        Session ID            Decimal, Hex,
                                         or Alphanumeric
                                         At most 32 digits or
                                         34 characters.

Rajesh Kumar, Mohamed Mostafa                                       [Page 47]


<version>           Version of           Decimal or Hex
                    SDP descriptor       At most 32 digits

<networkType>      Network type         Constant "ATM"

<ATMaddressType>    ATM address type     String values:
                                         "NSAP", "E164", "GWID",
                                         "ALIAS"

<ATMaddress>         ATM address         "NSAP": 40 hex digits,
                                                 optionally dotted
                                         "E164": up to 15 decimal digits
                                         "GWID":  up to 32 characters
                                         "ALIAS": up to 32 characters

<sessionName>       Session name         Constant "-"

<startTime>         Session start        Decimal or hex equivalent
                     time                 of 32-bit field

<stopTime>          Session stop         Constant "0"
                     time

<vcci>               Virtual Circuit      Decimal or hex equivalent
                     Connection           of 16 bits
                     Identifier

<bcg>                Bearer Connection    Decimal or hex equivalent
                     Group                of 8 bits

<portId>            Port ID              Decimal, Hex,
                                         or Alphanumeric.
                                         At most 32 digits or
                                         34 characters.

<vpi>                Virtual Path        Decimal or hex equivalent
                     Identifier          of 8 or 12 bits

<vci>                Virtual Circuit     Decimal or hex equivalent
                     Identifier          of 16 bits

<vpci>               Virtual Path        Decimal or hex equivalent
                     Connection          of 16 bits
                     Identifier

<cid>                Channel             Decimal or hex equivalent
                     Identifier          of 8 bits

<payloadType>       Payload             Decimal integer 0-127
                     Type

<profileClass>      Profile             String values:
                     Class               "ITU", "ATMF",
                                         "custom", <corporateName>,
                                         "IEEE:"<oui>
                                         <oui>: IEEE-registered OUI

<profile>            Profile              Decimal integer 1-255

Rajesh Kumar, Mohamed Mostafa                                       [Page 48]


<eecid>              End-to-end           Up to 8 hex digits
                     Connection
                     Identifier

<aalType>           AAL type             String values:
                                          "AAL1","AAL1_SDT","AAL1_UDT",
                                          "AAL2", "AAL3/4",
                                          "AAL5", "User defined AAL"

<silenceSuppEnable>  Silence suppression  String values:
                     Enable               "on", "off"

<silenceTimer>       Kick-in timer        Decimal or hex representation
                     for silence          of 16-bit field
                     suppression

<suppPref>          Preferred Silence     String values:
                     Suppression Method    "standard", "custom"

<sidUse>            SID Use              String values:
                     Method               "No SID", "Fixed Noise",
                                          "Sampled Noise"

<fxnslevel>          Fixed Noise          Decimal or hex representation
                     Level                of a 7-bit field

<ecanEnable>         Enable Echo          String values:
                     Cancellation         "on", "off"

<ecanType>           Type of Echo         String values:
                     Cancellation         "G165", "G168"

<gcEnable>           Enable Gain          String values:
                     Control              "on", "off"

<gcLvl>              Level of inserted    Decimal or hex equivalent
                     Loss                 of 16-bit field

<uuiCodeRange>     UUI code range       Decimal integer 0-15

<encodingName>      Encoding name        String values:
                                          "PCMG", "SIDG", "SID729",
                                          any value from column 2
                                          of Table 1

<packetLength>      Packet length        Decimal integer 0-45

<packetTime>        Packetization        Decimal integer 1-500
                     Interval

<fxIncl>           Facsimile included    String values: "on", "off"

<asc>                ATM service         String values:
                     category defined    "CBR", "nrt-VBR", "rt-VBR",
                     by the ATMF         "UBR", "ABR", "GFR"

Rajesh Kumar, Mohamed Mostafa                                       [Page 49]


<atc>                ATM transfer        String values:
                     capability          "DBR","SBR","ABT/IT","ABT/DT",
                     defined by the      "ABR"
                     ITU

<qosclass>          QoS Class           Decimal integer 0-5

<bcob>               Broadband Bearer    Decimal or hex representation
                     Class               of 5-bit field

<stc>                Susceptibility      Decimal equivalent of
                     to clipping         a 2-bit field

<upcc>               User plane          Decimal equivalent of
                     connection          a 2-bit field
                     configuration

<cdvType>           CDV type            String values:
                                         "pp", "2p"

<acdv>               Acceptable CDV      Integer or hex equivalent
                                         of 24-bit field

<ccdv>               Cumulative CDV      Integer or hex equivalent
                                         of 24-bit field

<actd>              Acceptable CTD       Integer or hex equivalent
                                         of 16-bit field

<cctd>              Cumulative CTD       Integer or hex equivalent
                                         of 16-bit field

<aclr>               Acceptable          Integer or hex equivalent
                     Cell Loss Ratio     of 8-bit field

<clpLvl>             CLP level            String values:
                                          "0", "0+1"

<pcr>                Peak                 Cells/second
                     Cell Rate

<scr>                Sustained            Cells/second
                     Cell Rate

<mbs>                Maximum              Cells
                     Burst Size

<cdvt>               CDVT                Decimal integer or
                                         fraction, range determined
                                         by application.

<mcr>                Minimum             Cells/second
                     Cell Rate

<mfs>                Maximum             Cells
                     Frame Size

<fd>                 Frame Discard       String Values:
                     Allowed             "on", "off"

Rajesh Kumar, Mohamed Mostafa                                       [Page 50]


<te>                CLP tagging         String Values:
                                        Enabled "on", "off"

<nrm>               NRM                  Decimal/hex equivalent
                                         of 3 bit field

<trm>               TRM                   - ditto-

<cdf>               CDF                    -ditto-

<adtf>             ADTF                  Decimal/Hex  equivalent
                                         of 10 bit field

<clcrec>            Clock Recovery          String values:
                    Method                  "NULL", "SRTS",
                                            "adaptive"

<fecEnable>        Forward Error           String values:
                   Correction Enable       "NULL", "loss sensitive"
                                           "delay sensitive"

<partialFill>      Partial Fill            Decimal integer 1-46
                                            or hex equivalent

<bearerType>       Bearer Type              String Values:
                                             "PVC", "SVC", "CID"

<structureEnable>  Structure Present        String values:
                                             "on", "off"

<blksz>             Block Size               Decimal or hexadecimal
                                             equivalent of 16 bits

<sbc>               Subchannel Count         T1: Decimal integer 1-24
                                             or hex equivalent
                                             E1: Decimal integer 1-31
                                             or hex equivalent

<cpcs>              Maximum                  AAL5: Decimal or hex
                    CPCS SDU size            equivalent of 16 bits
                                             AAL2: 45 or 64

<maxChan>          Maximum number of        Decimal integer 1-255
                    subcell channels         or hex equivalent

<timerCU>          Timer, combined use      Integer decimal; range
                                             determined by application

<adt>               Assured Data           String values:
                    Transfer Enable        "on", "off"

<ted>               Transmission Error      String values:
                    Detection Enable        "on", "off"

<fsssar>            Maximum SSSAR-SDU       Decimal or hex
                    size, forward           equivalent of 16-bit
                    direction               field
Rajesh Kumar, Mohamed Mostafa                                       [Page 51]


<bsssar>            Maximum SSSAR-SDU       Decimal or hex
                    size, backward          equivalent of 16-bit
                    direction               field

<sap>               Service Access          String values:
                    Point                   "audio", "multirate"

<circuitMode>      Circuit Mode            String values:
                    Enable                  "on", "off"

<frameMode>        Frame Mode              String values:
                    Enable                  "on", "off"

<faxDemod>         Fax Demodulation        String values:
                    Enable                  "on", "off"

<cas>               Enable CAS transport    String values:
                    via Type 3 packets      "on", "off"

<dtmf>              Enable DTMF transport    String values:
                    via Type 3 packets       "on", "off"

<mfall>             Enable MF transport     String values:
                    via Type 3 packets       "on", "off"

<mfr1>              Enable MF (R1)          String values:
                    transport via             "on", "off"
                    Type 3 packets

<mfr2>              Enable MF (R2)          String values:
                    transport via             "on", "off"
                    Type 3 packets

<PCMencoding>    PCM encoding             String values:
                                           " A", " Mu"

<fmaxframe>      Maximum length of a        Decimal or hex
                 frame mode data unit,      equivalent of
                 forward direction          16-bit field

<bmaxframe>      Maximum length of a           -ditto-
                 frame mode data unit,
                 backward direction

<AAL5app>       Application that uses      String values:
                 AAL5                       "h323c","af83",
                                            "assuredSSCOP",
                                            "nonassuredSSCOP",
                                            "itu_i3651", "itu_i3652",
                                            "itu_i3653", "FRF11"

<sci>           Screening Indication        Decimal or hex
                                            equivalent of 4  bits.

<lsn>           Leaf Sequence Number        Decimal or hex
                                            equivalent of 32 bits.


Rajesh Kumar, Mohamed Mostafa                                       [Page 52]


<cdStd>         Coding standard for the     Decimal or hex
                connection scope selection  equivalent of
                IE                          2 bits
                Definition: UNI 4.0 [5]

<conScpTyp>    Type of connection scope      Decimal or hex
               Definition: UNI 4.0 [5]       equivalent of 4 bits

<conScpSel>    Connection scope selection    Decimal or hex equivalent
               Definition: UNI 4.0 [5]       of 8 bits

<rtcpPortNum>  RTCP port number for          Odd decimal in range 1024 to
               H.323 Annex C applications    65535

<rtcpIPaddr>   IP address for  receipt       Dotted decimal, 7-15 chars
               of RTCP packets

<chainPointer> Chain pointer                 String values: "next",
                                             "previous", "NULL"

7.0   Examples of ATM session descriptions using SDP

   An example of  a complete AAL1 session description in SDP is:

     v=0
     o=- A3C47F21456789F0 0 ATM NSAP
        47.0091.8100.0000.0060.3e64.fd01.0060.3e64.fd01.00
     s=-
     c=ATM NSAP
         47.0091.8100.0000.0060.3e64.fd01.0060.3e64.fd01.00
     t=0 0
     m=audio $ AAL1/AVP 18 0 96
     a=atmmap:96 G727-32
     a=eecid:B3D58E32

   An example of  a complete AAL2 session description in SDP is:

     v=0
     o=- A3C47F21456789F0 0 ATM NSAP
     47.0091.8100.0000.0060.3e64.fd01.0060.3e64.fd01.00
     s=-
     c=ATM NSAP
                47.0091.8100.0000.0060.3e64.fd01.0060.3e64.fd01.00
     t=0 0
     m=audio $ AAL2/ITU 8 AAL2/custom 100 AAL2/ITU 1
     a=eecid:B3E32


   The AAL2 session descriptor below is the same as the one above
   except that it states an explicit preference for a voice codec, a
   voiceband data codec and a voiceband fax codec. Further, it defines
   the profile AAL2/custom 100 rather than assume that the far-end is
   cognizant of the elements of this profile.





Rajesh Kumar, Mohamed Mostafa                                       [Page 53]


     v=0
     o=- A3C47F21456789F0 0 ATM NSAP
     47.0091.8100.0000.0060.3e64.fd01.0060.3e64.fd01.00
     s=-
     c=ATM NSAP
     47.0091.8100.0000.0060.3e64.fd01.0060.3e64.fd01.00
     t=0 0
     m=audio $ AAL2/ITU 8 AAL2/custom 100 AAL2/ITU 1
     a=eecid:B3E32
     a=profiledesc:AAL2/custom 100 0-7 PCMG 40 5 0-7 SIDG 1
     5 8-15 G726-32 40 10 8-15 SIDG 1 5
     a=vsel:G726-32 40 10
     a=dsel:PCMU - -
     a=fsel:G726-32 40 10

8.0    Representation of data media

   The following  encoding names  in Table 1  can refer to data as well
   as audio media: X-CCD and X-CCD-CAS   in Table 1.

   The following encoding names in Table 1  refer to data media:
   X-FXDMOD-3 in Table 1.

   In the AAL1 context, X-CCD and X-CCD-CAS can be represented as
   "audio" codecs that are dynamically mapped into payload types. This
   is done through the 'atmmap' attribute, as described earlier. For
   example:
              m=audio 27 AAL1/AVP 98
              a=atmmap:98 X-CCD

   implies that AAL1 VCCI=27 is used for n x 64 transmission.

   Currently, AAL1 in unsuitable for transmitting demodulated facsimile
   because it lacks the bearer plane mechanisms (equivalent to AAL2
   type 3 messages) for transmitting control information.

   In the AAL2 context, these "codecs" can be assigned profile types and
   numbers. Even though it is not possible to construct
   profile tables as described in ITU I.366.2 for these "codecs", it
   is preferable to adopt the common AAL2 profile convention in their
   case. An example AAL2 profile mapping for these could be as follows:

        PROFILE TYPE         PROFILE NUMBER        "CODEC" (ONLY ONE)
          "custom"                200                     X-CCD
          "custom"                201                     X-FXDMOD-3

   The profile does not identify the number of subchannels ('n' in nx64).
   This is known by other means such as the 'sbc' media attribute line.
   Currently, there is no definition of n x 64 trunking with CAS for AAL2.

   For example, the media information line:
          m=audio $ AAL2/custom 200
          a=sbc:6

   implies a 384 kbps n x 64 circuit using AAL2 adaptation.



Rajesh Kumar, Mohamed Mostafa                                       [Page 54]


   In the case of fax demodulation and remodulation (ITU
   I.366.2),  parameters such as information type, image data
   size and control type are negotiated  in the 'bearer plane'
   via type 3 messages. There is no need to define
   several encoding names for these control streams.



9.0 Security Considerations

9.1  Bearer Security
   At present, standard means of encrypting ATM and AAL2 bearers
   are not conventionalized in the same manner as means of encrypting RTP
   payloads. Nor has the authentication of ATM or AAL2 bearer
   signaling.

   If and when an ATM or AAL2 bearer encryption convention is
   conventionalized,
   the SDP encryption key line (k=) defined in rfc2327 can be used
   to represent the encryption key and the method of obtaining the
   key. In the ATM and AAL2 contexts, the term 'bearer' can include
   'bearer signaling'  as well as 'bearer payloads'.

9.2  Security of the SDP description

   The SDP session descriptions might originate in untrusted areas
   such as
   equipment owned by end-subscribers or located at end-subscriber
   premises. SDP relies on the security mechanisms of the encapsulating
   protocol or layers below the encapsulating protocol. Examples of
   encapsulating protocols are the Session Initiation Protocol (SIP),
   MGCP and Multimedia Gateway Control Protocol (MEGACO). No additional
   security mechanisms are needed. SIP, MGCP and MEGACO
   can use IPSec authentication as described in RFC1826 [Ref.
   27]. IPSec encryption can be optionally used with authentication to
   provide an additional, potentially more expensive level of security.
   IPSec security associations can be made between equipment located in
   untrusted areas and equipment located in trusted areas through
   configured shared secrets or the use of a certificate authority.

10.0 Remaining Tasks

    In the authors' opinion, the following tasks need to be done to
    complete the definition of the basic conventions needed to describe
    ATM connections in SDP.

    -  Adequate representation of AAL2 parameters, such as some of the
       parameters found in Q.2630.1.

    -  Additional, detailed examples of  the use of these SDP conventions.

    -  Address the so-called UBR+ service category. Where is it defined?

    -  Add a table of contents.



Rajesh Kumar, Mohamed Mostafa                                       [Page 55]


References


[1]     IETF RFC 2327, 'SDP: Session Description Protocol', April '98,
        Mark Handley and Van Jacobson.

[2]     IETF RFC 1889, 'RTP: A Transport Protocol for Real-Time
        Applications', Jan. 1996.

[3]     IETF RFC 1890, 'RTP Profile for Audio and Video Conferences
        with Minimal Control', Jan. 1996.

[4]     ATMF UNI 3.1 Specification,  af-uni-0010.002. Of special
        interest for this document is  Section 5.4.5.5,  ATM Adaptation
        Layer Parameters.

[5]     ATMF UNI 4.0 Signaling Specification, af-sig-0061.000.

[6]     ATMF Traffic Management Specification, Version 4.1, af-tm-
        0121.000.

[7]     ATMF Circuit Emulation Service (CES) Interoperability
        Specification, version 2.0, af-vtoa-0078.000, Jan. 97.

[8]     ATMF Voice and Telephony over ATM - ATM Trunking using AAL1 for
        Narrowband Services, version 1.0, af-vtoa-0089.000, July 1997.

[9]     ATMF Specifications of (DBCES) Dynamic Bandwidth Utilization -
        in 64kbps Timeslot Trunking over ATM  - using CES, af-vtoa-
        0085.000, July 1997.

[10]    ITU-T I.363.1, B-ISDN ATM Adaptation Layer Specification: Type
        1 AAL, August 1996.

[11]    ITU-T I.363.2, B-ISDN ATM Adaptation Layer Specification: Type
        2 AAL, Sept. 1997.

[12]    ITU-T I.366.1, Segmentation and Reassembly Service Specific
        Convergence Sublayer  for AAL Type 2, June 1998.

[13]    ITU-T I.366.2, AAL Type 2 Reassembly Service Specific
        Convergence Sublayer  for Trunking, Feb. 99.

[14]    Draft ietf-avt-telephone-tones-05.txt, RTP payloads for
        Telephone Signal Events, S.B.Petrack, Nov. 17, 1998.

[15]    ITU-T Q.2931, B-ISDN Application Protocol for Access Signaling.

[16]    Amendment 1, 2, 3 and 4 to ITU-T Q.2931, B-ISDN Application
        Protocol for Access Signaling.

[17]    SAP: Session Announcement Protocol , draft-ietf-mmusic-sap-v2-
        04.txt, Mark Handley, Colin Perkins and Edmund Whelan .

[18]    rfc2543, Handley, M., H. Schulzrinne , Schooler, E. and
        Rosenberg, J., "Session Initiation Protocol (SIP)",   March
        1999.

Rajesh Kumar, Mohamed Mostafa                                       [Page 56]


[19]    rfc1349, Type of Service in the Internet Protocol Suite. P.
        Almquist. July 1992.

[20]    rfc2474, Definition of the Differentiated Services Field (DS
        Field) in the IPv4 and IPv6 Headers. K. Nichols, S. Blake, F.
        Baker, D. Black. December 1998.

[21]    ITU-T I.363.5, B-ISDN ATM Adaptation Layer Specification: Type
        5 AAL, Aug. 1996.

[22]    ATMF PNNI 1.0, af-pnni-0055.000, March 1996.

[23]    ietf-avt-rtp-new-05.txt, Oct. 21, 1999, RTP: A Transport
        Protocol for Real-Time Applications.

[24]    ietf-avt-profile-new-07.txt, Oct. 21, 1999, RTP Profile for
        Audio and Video Conferences with Minimal Control.

[25]    Media Gateway Control Protocol (MGCP), Mauricio Arango, Isaac
        Elliott, Christian Huitema, Scott Pickett, Version 1.0,
        RFC2705.

[26]    draft-ietf-Megaco-merged-00.txt, April, 2000, Media Gateway
        control (Megaco) protocol, Fernando Cuervo, Nancy Greene, Christian
        Huitema, Abdallah Rayhan, Brian Rosen, John Segers.

[27]    IP Authentication Header, R. Atkinson, August 1995, RFC1826.

[28]    ITU I.371, Traffic Control and Congestion Control in the BISDN.

[29]    ITU E.191, BISDN Numbering and Addressing.

[30]      ATM Forum Addressing: Reference Guide, af-ra-0106.000.

[31]    http://www.isi.edu/in-notes/iana/assignments/rtp-parameters
        for a list of codecs with static payload types.

[32]   ITU Q.2941-2, Digital Subscriber Signalling System No. 2
       (DSS 2): Generic identifier transport extensions.

[33]   ITU Q.2961, Digital subscriber signalling system no.2 (DSS 2)
       - additional traffic parameters. Also, Amendment 2 to Q.2961.

[34]   ITU Q. 2965.1, Digital subscriber signalling system no.2 (DSS 2)
       - Support of Quality of Service classes.

[35]   ITU Q. 2965.2, Digital subscriber signalling system no.2 (DSS 2)
       - Signalling of individual Quality of Service parameters.

[36]   ITU Q.1901, Bearer Independent Call Control Protocol.

[37]   ITU Q.2630.1, AAL type 2 signaling protocol - capability set 1.

[38]   ITU I.363.5, B-ISDN ATM Adaptation Layer specification: Type 5
       AAL.

[39]   I.365.1,Frame relaying service specific convergence sublayer
       (FR-SSCS).

Rajesh Kumar, Mohamed Mostafa                                       [Page 57]


[40]   I.365.2, B-ISDN ATM adaptation layer sublayers: service
       specific coordination function to provide the connection
       oriented network service.

[41]  I.365.3, B-ISDN ATM adaptation layer sublayers: service
      specific coordination function to provide the
      connection-oriented transport service.

[42]  I.365.4, B-ISDN ATM adaptation layer sublayers: Service specific
      convergence sublayer for HDLC applications.

[43]  Q.2110, B-ISDN ATM adaptation layer - service specific connection oriented
      protocol (SSCOP).

[44]  af-vtoa-0113.000, ATM trunking using AAL2 for narrowband services.

[45]  H.323-2, Packet-based multimedia communications systems.

[46]  af-vtoa-0083.000, Voice and Telephony Over ATM to the Desktop.

[47]  I.356, BISDN ATM layer cell transfer performance.

[48]  ITU Q.2957, Digital Subscriber Signaling System No. 2, User to user
      signaling.

[49]  rfc1305, Network Time Protocol, version 3.


Acknowledgements
   The authors wish to thank several colleagues at Cisco and in the
   industry who have contributed towards the development of these SDP
   conventions, and who have reviewed, implemented and tested these
   constructs. Valuable technical ideas that have been incorporated
   into this internet draft have been provided by Hisham Abdelhamid,
   David Auerbach, Robert Biskner, Bruce Buffam, Steve Casner, Alex Clemm,
   Bill Foster, Snehal Karia, Raghu Thirumalai Rajan, Joe Stone, Bruce
   Thompson, Dan Wing and Ken Young of Cisco, Michael Brown, Rade
   Gvozdanovic, Graeme Gibbs, Tom-PT Taylor and Sophia Scoggins of
   Nortel Networks, Brian Rosen, Tim Dwight and Michael Mackey
   of Marconi, Ed Guy and Petros Mouchtaris of Telcordia, Christian
   Groves of Ericsson, Charles Eckel of Vovida Networks, Tom Jepsen of
   Fujitsu and Mahamood Hussain of Hughes Software Systems.
   The authors also    wish to thank the ISC device control group,
   and the MMUSIC and  MEGACO subgroups of the IETF, especially Bill Foster,
   Jeorg Ott and Brian Rosen for their help in the preparation of this
   document.

   If there are names of contributors that have been overlooked, please
   let the authors know before the document goes on standards track.








Rajesh Kumar, Mohamed Mostafa                                       [Page 58]


Authors' Addresses

   Rajesh Kumar
   Cisco Systems, Inc.
   M/S SJC01/3
   170 West Tasman Drive
   San Jose, CA 95134-1706
   Phone: 1-800-250-4800
   Email: rkumar@cisco.com

   Mohamed Mostafa
   Cisco Systems, Inc.
   M/S SJC01/3
   170 West Tasman Drive
   San Jose, CA 95134-1706
   Phone: 1-800-250-4800
   Email: mmostafa@cisco.com



Full Copyright Statement

   Copyright (C) The Internet Society (March 2, 2000). All Rights
   Reserved.

   This document and translations of it may be copied and furnished to
   others, and derivative works that comment on or otherwise explain it
   or assist in its implementation may be prepared, copied, published
   and distributed, in whole or in part, without restriction of any
   kind, provided that the above copyright notice and this paragraph
   are included on all such copies and derivative works. However, this
   document itself may not be modified in any way, such as by removing
   the copyright notice or references to the Internet Society or other
   Internet organizations, except as needed for the purpose of
   developing Internet standards in which case the procedures for
   copyrights defined in the Internet Standards process must be
   followed, or as required to translate it into languages other than
   English.


   The limited permissions granted above are perpetual and will not be
   revoked by the Internet Society or its successors or assigns.

   This document and the information contained herein is provided on an
   "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
   TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
   BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
   HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
   MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE."









Rajesh Kumar, Mohamed Mostafa                                       [Page 59]


Html markup produced by rfcmarkup 1.129c, available from https://tools.ietf.org/tools/rfcmarkup/