draft-ietf-mmusic-sdp-atm-05.txt   rfc3108.txt 
Internet Engineering Task Force Network Working Group R. Kumar
Internet Draft Rajesh Kumar Request for Comments: 3108 M. Mostafa
Document: draft-ietf-mmusic-sdp-atm-05.txt Mohamed Mostafa Category: Standards Track Cisco Systems
February 1, 2001 Cisco Systems May 2001
Expires: August 1, 2001
Conventions for the use of the Session Description Protocol (SDP)
for ATM Bearer Connections
STATUS OF THIS DOCUMENT
This document is an Internet-Draft and is in full conformance with Conventions for the use of the Session Description Protocol (SDP)
all provisions of Section 10 of RFC2026. for ATM Bearer Connections
Internet-Drafts are working documents of the Internet Engineering Status of this Memo
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 This document specifies an Internet standards track protocol for the
months and may be updated, replaced, or obsoleted by other documents Internet community, and requests discussion and suggestions for
at any time. It is inappropriate to use Internet- Drafts as improvements. Please refer to the current edition of the "Internet
reference material or to cite them other than as work in progress. Official Protocol Standards" (STD 1) for the standardization state
and status of this protocol. Distribution of this memo is unlimited.
The list of current Internet-Drafts can be accessed at Copyright Notice
http://www.ietf.org/ietf/1id-abstracts.txt
The list of Internet-Draft Shadow Directories can be accessed at Copyright (C) The Internet Society (2001). All Rights Reserved.
http://www.ietf.org/shadow.html.
Abstract Abstract
This document describes conventions for using the Session Description This document describes conventions for using the Session Description
Protocol (SDP) described in RFC2327 [1] for controlling ATM Bearer Protocol (SDP) described in RFC 2327 for controlling ATM Bearer
Connections, and any associated ATM Adaptation Layer (AAL). The AALs Connections, and any associated ATM Adaptation Layer (AAL). The AALs
addressed are Type 1, Type 2 and Type 5. This list of conventions is addressed are Type 1, Type 2 and Type 5. This list of conventions is
meant to be exhaustive. Individual applications can use subsets of meant to be exhaustive. Individual applications can use subsets of
these conventions. Further, these conventions are meant to comply these conventions. Further, these conventions are meant to comply
strictly with the SDP syntax as defined in rfc2327. strictly with the SDP syntax as defined in RFC 2327.
Rajesh Kumar, Mohamed Mostafa. 1 Table of Contents
1. Introduction...............................................................3
1.1 Key words to indicate Requirement Levels..................................4
2. Representation of Certain Fields within SDP description lines..............5
2.1 Representation of Extension Attributes.................................5
2.2 Representation of Parameter Values.....................................5
2.3 Directionality Convention..............................................6
2.4 Case convention.........................................................7
2.5 Use of special characters in SDP parameter values.......................7
3. Capabilities Provided by SDP conventions..................................7
4. Format of the ATM Session Description......................................9
5. Structure of the Session Description Lines...............................11
5.1 The Origin Line........................................................11
5.2 The Session Name Line..................................................12
5.3 The Connection Information Line........................................12
5.4 The Timestamp Line.....................................................14
5.5 Media Information Line for ATM connections.............................15
5.5.1 The Virtual Connection ID.........................................15
5.5.2 The Transport Parameter...........................................18
5.5.3 The Format List for AAL1 and AAL5 applications....................19
5.5.4 The Format List for AAL2 applications.............................19
5.5.5 Media information line construction...............................20
5.6 The Media Attribute Lines..............................................24
5.6.1 ATM bearer connection attributes..................................25
5.6.1.1 The 'eecid' attribute...........................................27
5.6.1.2 The 'aalType' attribute.........................................28
5.6.1.3 The 'capability' attribute......................................29
5.6.1.4 The 'qosClass' attribute........................................30
5.6.1.5 The 'bcob' attribute............................................30
5.6.1.6 The 'stc' attribute.............................................31
5.6.1.7 The 'upcc' attribute............................................32
5.6.1.8 The 'atmQOSparms' attribute.....................................32
5.6.1.9 The 'atmTrfcDesc' attribute....................................33
5.6.1.10 The 'abrParms' attribute........................................36
5.6.1.11 The 'abrSetup' attribute........................................37
5.6.1.12 The 'bearerType' attribute......................................38
5.6.1.13 The 'lij' attribute.............................................39
5.6.1.14 The 'anycast' attribute.........................................39
5.6.1.15 The 'cache' attribute...........................................40
5.6.1.16 The 'bearerSigIE' attribute.....................................41
5.6.2 ATM Adaptation Layer (AAL) attributes.............................41
5.6.2.1 The 'aalApp' attribute..........................................42
5.6.2.2 The 'cbrRate' attribute.........................................44
5.6.2.3 The 'sbc' attribute.............................................45
5.6.2.4 The 'clkrec' attribute..........................................47
5.6.2.5 The 'fec' attribute.............................................47
5.6.2.6 The 'prtfl' attribute...........................................47
5.6.2.7 The 'structure' attribute.......................................48
5.6.2.8 The 'cpsSDUsize' attribute......................................48
5.6.2.9 The 'aal2CPS' attribute.........................................49
5.6.2.10 The 'aal2CPSSDUrate' attribute..................................49
5.6.2.11 The 'aal2sscs3661unassured' attribute...........................50
5.6.2.12 The 'aal2sscs3661assured' attribute.............................51
Rajesh Kumar, Mohamed Mostafa. 2 1. Introduction................................................... 3
5.6.2.13 The 'aal2sscs3662' attribute....................................52 1.1 Key words to indicate Requirement Levels..................... 5
5.6.2.14 The 'aal5sscop' attribute.......................................53 2. Representation of Certain Fields within SDP description lines.. 5
5.6.3 Service attributes................................................54 2.1 Representation of Extension Attributes....................... 5
5.6.3.1 The 'atmmap' attribute..........................................55 2.2 Representation of Parameter Values........................... 5
5.6.3.2 The 'silenceSupp' attribute.....................................59 2.3 Directionality Convention.................................... 6
5.6.3.3 The 'ecan' attribute............................................60 2.4 Case convention............................................... 7
5.6.3.4 The 'gc' attributes.............................................61 2.5 Use of special characters in SDP parameter values............. 8
5.6.3.5 The 'profileDesc' attribute.....................................62 3. Capabilities Provided by SDP conventions....................... 8
5.6.3.6 The 'vsel' attribute............................................63 4. Format of the ATM Session Description.......................... 9
5.6.3.7 The 'dsel' attribute............................................65 5. Structure of the Session Description Lines.................... 11
5.6.3.8 The 'fsel' attribute............................................66 5.1 The Origin Line.............................................. 11
5.6.3.9 The 'onewaySel' attribute.......................................68 5.2 The Session Name Line........................................ 12
5.6.3.10 The 'codecconfig' attribute....................................69 5.3 The Connection Information Line.............................. 13
5.6.3.11 The 'isup_usi' attribute........................................70 5.4 The Timestamp Line........................................... 15
5.6.3.12 The 'uiLayer1_Prot' attribute...................................70 5.5 Media Information Line for ATM connections................... 16
5.6.4 Miscellaneous media attributes...................................71 5.5.1 The Virtual Connection ID.................................. 16
5.6.4.1 The 'chain' attribute............................................71 5.5.2 The Transport Parameter.................................... 19
5.6.5 Use of the second media-level part in H.323 Annex C applications.72 5.5.3 The Format List for AAL1 and AAL5 applications............. 21
5.6.6 Use of the eecid media attribute in call establishment procedures 72 5.5.4 The Format List for AAL2 applications...................... 21
6.0 List of Parameters with Representations...............................77 5.5.5 Media information line construction........................ 22
7.0 Examples of ATM session descriptions using SDP.........................86 5.6 The Media Attribute Lines.................................... 27
8.0 Security Considerations..................................................87 5.6.1 ATM bearer connection attributes........................... 28
8.1 Bearer Security.......................................................87 5.6.1.1 The 'eecid' attribute.................................... 30
8.2 Security of the SDP description.......................................88 5.6.1.2 The 'aalType' attribute.................................. 31
9.0 ATM SDP Grammar.........................................................88 5.6.1.3 The 'capability' attribute............................... 32
5.6.1.4 The 'qosClass' attribute................................. 33
5.6.1.5 The 'bcob' attribute..................................... 34
5.6.1.6 The 'stc' attribute...................................... 34
5.6.1.7 The 'upcc' attribute..................................... 35
5.6.1.8 The 'atmQOSparms' attribute.............................. 35
5.6.1.9 The 'atmTrfcDesc' attribute............................. 37
5.6.1.10 The 'abrParms' attribute................................. 39
5.6.1.11 The 'abrSetup' attribute................................. 40
5.6.1.12 The 'bearerType' attribute............................... 41
5.6.1.13 The 'lij' attribute...................................... 42
5.6.1.14 The 'anycast' attribute.................................. 43
5.6.1.15 The 'cache' attribute.................................... 43
5.6.1.16 The 'bearerSigIE' attribute.............................. 44
5.6.2 ATM Adaptation Layer (AAL) attributes...................... 45
5.6.2.1 The 'aalApp' attribute................................... 46
5.6.2.2 The 'cbrRate' attribute.................................. 48
5.6.2.3 The 'sbc' attribute...................................... 49
5.6.2.4 The 'clkrec' attribute................................... 51
5.6.2.5 The 'fec' attribute...................................... 51
5.6.2.6 The 'prtfl' attribute.................................... 51
5.6.2.7 The 'structure' attribute................................ 52
5.6.2.8 The 'cpsSDUsize' attribute............................... 53
5.6.2.9 The 'aal2CPS' attribute.................................. 53
5.6.2.10 The 'aal2CPSSDUrate' attribute........................... 54
5.6.2.11 The 'aal2sscs3661unassured' attribute.................... 54
5.6.2.12 The 'aal2sscs3661assured' attribute...................... 55
5.6.2.13 The 'aal2sscs3662' attribute............................. 56
5.6.2.14 The 'aal5sscop' attribute................................ 58
5.6.3 Service attributes......................................... 58
5.6.3.1 The 'atmmap' attribute................................... 60
5.6.3.2 The 'silenceSupp' attribute.............................. 63
5.6.3.3 The 'ecan' attribute..................................... 65
5.6.3.4 The 'gc' attributes...................................... 66
5.6.3.5 The 'profileDesc' attribute.............................. 67
5.6.3.6 The 'vsel' attribute..................................... 68
5.6.3.7 The 'dsel' attribute..................................... 70
5.6.3.8 The 'fsel' attribute..................................... 72
5.6.3.9 The 'onewaySel' attribute................................ 73
5.6.3.10 The 'codecconfig' attribute.............................. 75
5.6.3.11 The 'isup_usi' attribute................................. 76
5.6.3.12 The 'uiLayer1_Prot' attribute............................ 76
5.6.4 Miscellaneous media attributes............................. 77
5.6.4.1 The 'chain' attribute..................................... 77
5.6.5 Use of the second media-level part in H.323 Annex C
applications............................................... 78
5.6.6 Use of the eecid media attribute in call establishment
procedures................................................. 78
6. List of Parameters with Representations....................... 83
7. Examples of ATM session descriptions using SDP................. 93
8. Security Considerations........................................ 94
8.1 Bearer Security.............................................. 94
8.2 Security of the SDP description.............................. 95
9. ATM SDP Grammar................................................ 95
References........................................................104
Acknowledgements..................................................109
Authors' Addresses................................................109
Full Copyright Statement..........................................110
1. Introduction 1. Introduction
SDP will be used in conjunction with a connection handling /device 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 control protocol such as Megaco (H.248) [26], SIP [18] or MGCP [25]
communicate the information needed to set up ATM and AAL2 bearer to communicate the information needed to set up ATM and AAL2 bearer
connections. These connections include voice connections, voiceband data connections. These connections include voice connections, voiceband
connections, clear channel circuit emulation connections, video connections data connections, clear channel circuit emulation connections, video
and baseband data connections (such as fax relay, modem relay, SSCOP, connections and baseband data connections (such as fax relay, modem
frame relay etc.). relay, SSCOP, frame relay etc.).
These conventions use standard SDP syntax as defined in rfc2327 These conventions use standard SDP syntax as defined in RFC 2327 [1]
to describe the ATM-level and AAL-level connections, addresses and to describe the ATM-level and AAL-level connections, addresses and
other parameters. In general, parameters associated with layers other parameters. In general, parameters associated with layers
higher than the ATM adaptation layer are included only if they are 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 tightly coupled to the ATM or AAL layers. Since the syntax conforms
rfc2327, standard SDP parsers should react in a well-defined and safe to RFC 2327, standard SDP parsers should react in a well-defined and
manner on receiving session descriptions based on the SDP conventions safe manner on receiving session descriptions based on the SDP
in this document. This is done by extending the values of fields defined in conventions in this document. This is done by extending the values
rfc2327 rather than by defining new fields. This is true for all SDP lines of fields defined in RFC 2327 rather than by defining new fields.
except the of the media attribute lines, in which case new This is true for all SDP lines except the of the media attribute
attributes are defined. The SDP protocol allows the definition lines, in which case new attributes are defined. The SDP protocol
of new attributes in the media attribute lines which are free-form. allows the definition of new attributes in the media attribute lines
For the remaining lines, the fact that the <networkType> field in which are free-form. For the remaining lines, the fact that the
an SDP descriptor is set to "ATM" should preclude the misinterpretation of <networkType> field in an SDP descriptor is set to "ATM" should
extended parameter values by rfc2327-compliant SDP parsers. preclude the misinterpretation of extended parameter values by RFC
2327-compliant SDP parsers.
Rajesh Kumar, Mohamed Mostafa. 3 These conventions are meant to address the following ATM
These conventions are meant to address the following ATM applications: applications:
1. Applications in which a new SVC is set-up for each service 1. Applications in which a new SVC is set-up for each service
connection. These SVCs could be AAL1 or AAL5 SVCs or connection. These SVCs could be AAL1 or AAL5 SVCs or single-
single-CID AAL2 SVCs. CID AAL2 SVCs.
2. Applications in which existing path resources are assigned 2. Applications in which existing path resources are assigned to
to service connections. These resources could be: service connections. These resources could be:
* AAL1/AAL5 PVCs, SPVCs or cached SVCs, * AAL1/AAL5 PVCs, SPVCs or cached SVCs,
* AAL2 single-CID PVCs, SPVCs or cached SVCs, * AAL2 single-CID PVCs, SPVCs or cached SVCs,
* CIDs within AAL2 SVCs/PVCs/SPVCs that multiplex multiple * CIDs within AAL2 SVCs/PVCs/SPVCs that multiplex multiple
CIDs. CIDs.
* Subchannels (identified by CIDs) within AAL1 [8] or AAL2
[11] SVCs/PVCs/SPVCs.
Note that the difference between PVCs and SPVCs is in the way the bearer Note that the difference between PVCs and SPVCs is in the way the
virtual circuit connection is set up. SPVCs are a class of PVCs that use bearer virtual circuit connection is set up. SPVCs are a class of
bearer signaling, as opposed to node-by-node provisioning, for connection PVCs that use bearer signaling, as opposed to node-by-node
establishment. provisioning, for connection establishment.
This document is limited to the case when the network type is ATM. This document is limited to the case when the network type is ATM.
This includes raw RTP encapsulation [45] or voice sample encapsulation This includes raw RTP encapsulation [45] or voice sample
[46] over AAL5 with no intervening IP layer. It does not address SDP usage encapsulation [46] over AAL5 with no intervening IP layer. It does
for IP, with or without ATM as a lower layer. 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 In some cases, IP connection set-up is independent of lower layers,
are configured prior to it. For example, AAL5 PVCs that connect IP routers which are configured prior to it. For example, AAL5 PVCs that
can be used for VoIP calls. In other cases, VoIP call set-up is closely connect IP routers can be used for VoIP calls. In other cases, VoIP
tied to ATM-level connection set-up. This might require a chaining of IP and call set-up is closely tied to ATM-level connection set-up. This
ATM descriptors, as described in section 5.6.4.1. might require a chaining of IP and ATM descriptors, as described in
section 5.6.4.1.
This document makes no assumptions on who constructs the session This document makes no assumptions on who constructs the session
descriptions (media gateway, intermediate ATM/AAL2 switch, media descriptions (media gateway, intermediate ATM/AAL2 switch, media
gateway controller etc.). This will be different in different gateway controller etc.). This will be different in different
applications. Further, it allows the use of one session description applications. Further, it allows the use of one session description
for both directions of a connection (as in SIP and MGCP applications) for both directions of a connection (as in SIP and MGCP applications)
or the use of separate session descriptions for different directions. It or the use of separate session descriptions for different directions.
also addresses the ATM multicast and anycast capabilities. It also addresses the ATM multicast and anycast capabilities.
This document makes no assumptions about how the SDP description will This document makes no assumptions about how the SDP description will
be coded. Although the descriptions shown here are encoded as text, be coded. Although the descriptions shown here are encoded as text,
alternate codings are possible: alternate codings are possible:
- Binary encoding such as ASN.1. This is an option (in addition to - Binary encoding such as ASN.1. This is an option (in addition to
text encoding) in the Megaco context. text encoding) in the Megaco context.
- Use of extended ISUP parameters [36] to encode the information in - Use of extended ISUP parameters [36] to encode the information in
SDP descriptors, with conversion to/from binary/text-based SDP SDP descriptors, with conversion to/from binary/text-based SDP
encoding when needed. encoding when needed.
1.1 Key words to indicate Requirement Levels 1.1 Key words to indicate Requirement Levels
Rajesh Kumar, Mohamed Mostafa. 4 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
"SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to document are to be interpreted as described in RFC 2119 [62].
be interpreted as described in rfc2119 [62].
2. Representation of Certain Fields within SDP description lines 2. Representation of Certain Fields within SDP description lines
This document conforms to the syntactic conventions of standard SDP as This document conforms to the syntactic conventions of standard SDP
defined in RFC2327 [1]. as defined in RFC 2327 [1].
2.1 Representation of Extension Attributes 2.1 Representation of Extension Attributes
The SDP protocol [1] requires that non-standard attributes and codec The SDP protocol [1] requires that non-standard attributes and codec
names use an "X-" prefix. names use an "X-" prefix.
In this internet draft, the "X-" prefix is used consistently for In this internet document, the "X-" prefix is used consistently for
codec names (Table 2) that have not been registered with the IANA. codec names (Table 2) that have not been registered with the IANA.
The IANA-registered codec names listed in [31] do not The IANA-registered codec names listed in [31] do not use this
use this prefix, regardless of whether they are statically or prefix, regardless of whether they are statically or dynamically
dynamically assigned payload types. assigned payload types.
However, this prefix is not used for the extension SDP attributes However, this prefix is not used for the extension SDP attributes
defined in this document. This has been done to enhance legibility. defined in this document. This has been done to enhance legibility.
This document suggests that parsers be flexible in the use of the This document suggests that parsers be flexible in the use of the
"X-" prefix convention. They should accept codec names and attribute "X-" prefix convention. They should accept codec names and attribute
names with or without the "X-" prefix. names with or without the "X-" prefix.
2.2 Representation of Parameter Values 2.2 Representation of Parameter Values
Depending on the format of their representation in SDP, the
parameters defined in this document fall into the following
classes:
(1) Parameters always represented in a decimal format. Depending on the format of their representation in SDP, the
(2) Parameters always represented in a hexadecimal format. parameters defined in this document fall into the following classes:
(3) Parameters always represented as character strings.
(4) Parameters that can be represented in either decimal or
hexadecimal format.
No prefixes are needed for classes 1 - 3, since the format is (1) Parameters always represented in a decimal format.
fixed. For class 4, a "0x" prefix shall always be used to (2) Parameters always represented in a hexadecimal format.
differentiate the hexadecimal from the decimal format. (3) Parameters always represented as character strings.
(4) Parameters that can be represented in either decimal or
hexadecimal format.
For both decimal and hex representations, if the underlying bit field No prefixes are needed for classes 1 - 3, since the format is fixed.
is smaller or larger than the binary equivalent of the SDP representation, For class 4, a "0x" prefix shall always be used to differentiate the
then leading 0 bits should be added or removed as needed. Thus, 3 and hexadecimal from the decimal format.
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.
Leading 0 digits shall not be used in decimal representations. For both decimal and hex representations, if the underlying bit field
Generally, these are also not used in hexadecimal 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.
Rajesh Kumar, Mohamed Mostafa. 5 Leading 0 digits shall not be used in decimal representations.
representations. Exceptions are when an exact number of hex digits Generally, these are also not used in hexadecimal representations.
is expected, as in the case of NSAP addresses. Parsers shall not Exceptions are when an exact number of hex digits is expected, as in
reject leading zeros in hex values. the case of NSAP addresses. Parsers shall not reject leading zeros
in hex values.
Both single-character and multi-character string values are enclosed in Both single-character and multi-character string values are enclosed
double quotes (i.e. "). By contrast, single quotes (i.e. ') are used for in double quotes (i.e., "). By contrast, single quotes (i.e., ') are
emphasizing keywords rather than to refer to characters or strings. used for emphasizing keywords rather than to refer to characters or
strings.
In the text representation of decimal and hex numbers, digits to the In the text representation of decimal and hex numbers, digits to the
left are more significant than digits to the right. left are more significant than digits to the right.
2.3 Directionality Convention 2.3 Directionality Convention
This section defined the meaning of the terms 'forward' and This section defined the meaning of the terms 'forward' and
'backward' as used in this document. This is specially applicable 'backward' as used in this document. This is specially applicable to
to parameters that have a specific direction associated with them. parameters that have a specific direction associated with them.
In this document, 'forward' refers to the direction away from the In this document, 'forward' refers to the direction away from the ATM
ATM node under consideration, while 'backward' refers to the direction node under consideration, while 'backward' refers to the direction
towards the ATM node. This convention must be used in all SDP-based towards the ATM node. This convention must be used in all SDP-based
session descriptions regardless of whether underlying bearer is an SVC, a session descriptions regardless of whether underlying bearer is an
dynamically allocated PVC/SPVC or a dynamically allocated CID. This SVC, a dynamically allocated PVC/SPVC or a dynamically allocated CID.
is regardless of which side originates the service connection. If ATM This is regardless of which side originates the service connection.
SVC or AAL2 Q.2630.1 signaling is used, the directionality convention If ATM SVC or AAL2 Q.2630.1 signaling is used, the directionality
is independent of which side originates the SVC or AAL2 connection. convention is independent of which side originates the SVC or AAL2
connection.
This provides a simple way of identifying the direction in which a This provides a simple way of identifying the direction in which a
parameter is applicable, in a manner that is independent of the parameter is applicable, in a manner that is independent of the
underlying ATM or AAL2 bearer. This simplicity comes at a price, underlying ATM or AAL2 bearer. This simplicity comes at a price,
described below. described below.
The convention used by all ATM/AAL2 signaling specifications (e.g. Q.2931 The convention used by all ATM/AAL2 signaling specifications (e.g.,
Section 1.3.3 and Q.2630.1) mandates that forward direction is from the Q.2931 Section 1.3.3 and Q.2630.1) mandates that forward direction is
end initiating setup/establishment via bearer signaling towards the end from the end initiating setup/establishment via bearer signaling
receiving the setup/establishment request. The backward direction is in towards the end receiving the setup/establishment request. The
the opposite direction. In some cases, the 'forward' and 'backward' backward direction is in the opposite direction. In some cases, the
directions of the ATM signaling convention might be the exact opposite of 'forward' and 'backward' directions of the ATM signaling convention
the SDP convention described above, requiring the media gateway to perform might be the exact opposite of the SDP convention described above,
the necessary translation. An example case in which this is needed is requiring the media gateway to perform the necessary translation. An
described below. example case in which this is needed is described below.
Consider an SDP description sent by a media gateway controller to the 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 gateway originating a service-level call. In the backward SVC call
model, this gateway terminates (rather than originates) an SVC call. The set-up model, this gateway terminates (rather than originates) an SVC
media gateway refers to the traffic descriptor (and hence the PCR) in the call. The media gateway refers to the traffic descriptor (and hence
direction away from this gateway as the forward traffic descriptor and the PCR) in the direction away from this gateway as the forward
forward PCR. Clearly, this is at odds with ATM SVC signaling which refers traffic descriptor and forward PCR. Clearly, this is at odds with
to this very PCR as the backward PCR. The gateway needs to be able to ATM SVC signaling which refers to this very PCR as the backward PCR.
perform the required swap of directions. In this example, the media The gateway needs to be able to perform the required swap of
gateway terminating the service level call (and hence originating the SVC directions. In this example, the media gateway terminating the
call) does not need to perform this swap. service level call (and hence originating the SVC call) does not need
to perform this swap.
Rajesh Kumar, Mohamed Mostafa. 6 Certain parameters within attributes are defined exclusively for the
Certain parameters within attributes are defined exclusively forward or backward directions. Examples for the forward direction
for the forward or backward directions. Examples for the forward are the <fsssar> subparameter within the 'aal2sscs3661unassured'
direction are the <fsssar> subparameter within the media attribute line, the <fsssar>, <fsscopsdu> and <fsscopuu>
'aal2sscs3661unassured' media attribute line, subparameters within the 'aal2sscs3661assured' media attribute line,
the <fsssar>, <fsscopsdu> and <fsscopuu> subparameters within the the <fsscopsdu> and <fsscopuu> subparameters within the 'aal5sscop'
'aal2sscs3661assured' media attribute line, the <fsscopsdu> and media attribute line, and the <fmaxFrame> parameter within the
<fsscopuu> subparameters within the 'aal5sscop' media attribute line, 'aal2sscs3662' media attribute line. Examples for the backward
and the <fmaxFrame> parameter within the 'aal2sscs3662' media attribute direction are the <bsssar> subparameter within the
line. Examples for the backward direction are the <bsssar> 'aal2sscs3661unassured' media attribute line, the <bsssar>,
subparameter within the 'aal2sscs3661unassured' media attribute line, <bsscopsdu> and <bsscopuu> subparameters within the
the <bsssar>, <bsscopsdu> and <bsscopuu> subparameters within the 'aal2sscs3661assured' media attribute line, the <bsscopsdu> and
'aal2sscs3661assured' media attribute line, the <bsscopsdu> and <bsscopuu> subparameters within the 'aal5sscop' media attribute line,
<bsscopuu> subparameters within the 'aal5sscop' media attribute line, and the <bmaxFrame> parameter within the 'aal2sscs3662' media
and the <bmaxFrame> parameter within the 'aal2sscs3662' media attribute attribute line.
line.
2.4 Case convention 2.4 Case convention
As defined in RFC2327 [1], SDP syntax is case-sensitive. Since these ATM As defined in RFC 2327 [1], SDP syntax is case-sensitive. Since
conventions conform strictly with SDP syntax, they are case-sensitive. SDP these ATM conventions conform strictly with SDP syntax, they are
line types (e.g. "c", "m", "o", "a") and fields in the SDP lines should be case-sensitive. SDP line types (e.g., "c", "m", "o", "a") and fields
built according to the case conventions in [1] and in this document. It is in the SDP lines should be built according to the case conventions in
suggested, but not required, that SDP parsers for ATM applications be case- [1] and in this document. It is suggested, but not required, that
tolerant where ignoring case does not result in ambiguity. SDP parsers for ATM applications be case-tolerant where ignoring case
does not result in ambiguity. Encoding names, which are defined
outside the SDP protocol, are case-insensitive.
2.5 Use of special characters in SDP parameter values 2.5 Use of special characters in SDP parameter values
In general, rfc2327-conformant string values of SDP parameters[1] do In general, RFC 2327-conformant string values of SDP parameters [1]
not include special characters that are neither alphabets nor do not include special characters that are neither alphabets nor
digits. An exception is the "/" character used in the value "RTP/AVP" digits. An exception is the "/" character used in the value
of transport sub-field of the 'm' line. "RTP/AVP" of transport sub-field of the 'm' line.
String values used in SDP descriptions of ATM connections retain this
convention, while allowing the use of the special character "/" in a manner
commensurate with [1]. In addition, the special characters "$" and "-" are
used in the following manner. A "$" value is a wildcard that allows the
recipient of the SDP description to select any permitted value of the
parameter. A "-" value indicates that it is not necessary to specify the
value of the parameter in the SDP description because this parameter is
irrelevant for this application, or because its value can be
known from another source such as provisioning, defaults, another
protocol, another SDP descriptor or another part of the same SDP
descriptor. If the use of these special characters is construed as a
violation of rfc2327 [1] syntax, then reserved string values can be used.
The string "CHOOSE" can be used in lieu of "$". The string "OMIT" can be
used in lieu of "-" for an omitted parameter. A decision to use special
characters or reserved keywords will be made before this internet draft
is upgraded to an rfc.
3. Capabilities Provided by SDP conventions String values used in SDP descriptions of ATM connections retain this
convention, while allowing the use of the special character "/" in a
manner commensurate with [1]. In addition, the special characters
"$" and "-" are used in the following manner. A "$" value is a
wildcard that allows the recipient of the SDP description to select
any permitted value of the parameter. A "-" value indicates that it
is not necessary to specify the value of the parameter in the SDP
description because this parameter is irrelevant for this
application, or because its value can be known from another source
such as provisioning, defaults, another protocol, another SDP
descriptor or another part of the same SDP descriptor. If the use of
these special characters is construed as a violation of RFC 2327 [1]
syntax, then reserved string values can be used. The string "CHOOSE"
can be used in lieu of "$". The string "OMIT" can be used in lieu of
"-" for an omitted parameter.
To support the applications listed in section 1, the SDP conventions in 3. Capabilities Provided by SDP conventions
Rajesh Kumar, Mohamed Mostafa. 7 To support the applications listed in section 1, the SDP conventions
this document provide the following session control capabilities: in this document provide the following session control capabilities:
* Identification of the underlying bearer network type as ATM. * Identification of the underlying bearer network type as ATM.
* Identification by an ATM network element of its own address, * Identification by an ATM network element of its own address, in
in one of several possible formats. A connection peer can one of several possible formats. A connection peer can
initiate SVC set-up to this address. A call agent or connection initiate SVC set-up to this address. A call agent or
peer can select an pre-established bearer path to this address. connection peer can select an pre-established bearer path to
this address.
* Identification of the ATM bearer connection that is to be * Identification of the ATM bearer connection that is to be bound
bound to the service-level connection. This is either to the service-level connection. Depending on the application,
a VCC in AAL1/AAL2/AAL5 applications or a channel (identified by this is either a VCC or a subchannel (identified by a CID)
a CID) in AAL2 applications. within a VCC.
* Identification of media type: audio, video, data. * Identification of media type: audio, video, data.
* In AAL1/AAL5 applications, declaration of a set of payload * In AAL1/AAL5 applications, declaration of a set of payload
types that can be bound to the ATM bearer connection. types that can be bound to the ATM bearer connection. The
The encoding names and payload types defined for use in encoding names and payload types defined for use in the RTP
the RTP context [31] are re-used for AAL1 and AAL5, context [31] are re-used for AAL1 and AAL5, if applicable.
if applicable.
* In AAL2 applications, declaration of a set of profiles that * In AAL2 applications, declaration of a set of profiles that can
can be bound to the ATM bearer connection. A mechanism for be bound to the ATM bearer connection. A mechanism for
dynamically defining custom profiles within the SDP session dynamically defining custom profiles within the SDP session
description is included. This allows the use of custom description is included. This allows the use of custom
profiles for connections that span multi-network interfaces. profiles for connections that span multi-network interfaces.
* A means of correlating service-level connections with * A means of correlating service-level connections with
underlying ATM bearer connections. The backbone network underlying ATM bearer connections. The backbone network
connection identifier or bnc-id specified in ITU Q.1901 [36] connection identifier or bnc-id specified in ITU Q.1901 [36]
standardization work is used for this purpose. In order to standardization work is used for this purpose. In order to
provide a common SDP base for applications based on provide a common SDP base for applications based on Q.1901 and
Q.1901 and SIP/SIP+, the neutral term 'eecid' is used SIP/SIP+, the neutral term 'eecid' is used in lieu of 'bnc-id'
in lieu of 'bnc-id' in the SDP session descriptor. in the SDP session descriptor.
* A means of mapping codec types and packetization periods into * A means of mapping codec types and packetization periods into
service types (voice, voiceband data and facsimile). This is service types (voice, voiceband data and facsimile). This is
useful in determining the encoding to use when the connection is useful in determining the encoding to use when the connection
upspeeded in response to modem or facsimile tones. is upspeeded in response to modem or facsimile tones.
* A means of describing the adaptation type, QoS class, ATM transfer * A means of describing the adaptation type, QoS class, ATM
capability/service category, broadband bearer class, traffic transfer capability/service category, broadband bearer class,
parameters, CPS parameters and SSCS parameters related the underlying traffic parameters, CPS parameters and SSCS parameters related
bearer connection. the underlying bearer connection.
* Means for enabling or describing special functions such as leaf- * Means for enabling or describing special functions such as
initiated-join, anycast and SVC caching. leaf- initiated-join, anycast and SVC caching.
* For H.323 Annex C applications, a means of specifying the IP address * For H.323 Annex C applications, a means of specifying the IP
and port number on which the node will receive RTCP messages. address and port number on which the node will receive RTCP
messages.
Rajesh Kumar, Mohamed Mostafa. 8 * A means of chaining consecutive SDP descriptors so that they
* A means of chaining consecutive SDP descriptors so that they refer to refer to different layers of the same connection.
different layers of the same connection.
4. Format of the ATM Session Description 4. Format of the ATM Session Description
The sequence of lines in the session descriptions in this document The sequence of lines in the session descriptions in this document
conforms to rfc2327 [1]. In general, a session description consists of conforms to RFC 2327 [1]. In general, a session description consists
a session-level part followed by zero or more media-level parts. ATM of a session-level part followed by zero or more media-level parts.
session descriptions consist of a session-level part followed by one ATM session descriptions consist of a session-level part followed by
or two media-level parts. The only two media applicable are the ATM one or two media-level parts. The only two media applicable are the
bearer medium and RTCP control (where applicable). ATM bearer medium and RTCP control (where applicable).
The session level part consists of the following lines: The session level part consists of the following lines:
v= (protocol version, zero or one line) v= (protocol version, zero or one line)
o= (origin, zero or one line) o= (origin, zero or one line)
s= (session name, zero or one line) s= (session name, zero or one line)
c= (connection information, one line) c= (connection information, one line)
b= (bandwidth, zero or more lines) b= (bandwidth, zero or more lines)
t= (timestamp, zero or one line) t= (timestamp, zero or one line)
k= (encryption key, zero or one line) k= (encryption key, zero or one line)
In ATM session descriptions, there are no media attribute lines in the In ATM session descriptions, there are no media attribute lines in
session level part. These are present in the media-level parts. the session level part. These are present in the media-level parts.
The media level part for the ATM bearer consists of the following The media-level part for the ATM bearer consists of the following
lines: lines:
m= (media information and transport address, one line) m= (media information and transport address, one line)
b= (bandwidth, zero or more lines) b= (bandwidth, zero or more lines)
k= (encryption key, zero or more lines) k= (encryption key, zero or more lines)
a= (media attribute, zero or more lines) a= (media attribute, zero or more lines)
The media level part for RTCP control consists of the following The media-level part for RTCP control consists of the following
lines: lines:
m= (media information and transport address, one line) m= (media information and transport address, one line)
c= (connection information for control only, one line) c= (connection information for control only, one line)
In general, the 'v', 'o', 's', and 't' lines are mandatory. In general, the 'v', 'o', 's', and 't' lines are mandatory. However,
However, in the Megaco [26] context, these lines have been made optional. in the Megaco [26] context, these lines have been made optional. The
The 'o', 's', and 't' lines are omitted in most MGCP [25] applications. 'o', 's', and 't' lines are omitted in most MGCP [25] applications.
Note that SDP session descriptors for ATM can contain bandwidth (b=) and
encryption key (k=) lines. Like all other lines, these lines should
strictly conform to the SDP standard [1].
The bandwidth (b=) line is not necessarily redundant in the ATM context Note that SDP session descriptors for ATM can contain bandwidth (b=)
and encryption key (k=) lines. Like all other lines, these lines
should strictly conform to the SDP standard [1].
Rajesh Kumar, Mohamed Mostafa. 9 The bandwidth (b=) line is not necessarily redundant in the ATM
since, in some applications, it can be used to convey application-level context since, in some applications, it can be used to convey
information which does not map directly into the atmTrfcDesc application-level information which does not map directly into the
media attribute line. For instance, the 'b' line can be used atmTrfcDesc media attribute line. For instance, the 'b' line can be
in SDP descriptors in RTSP commands to describe content bandwidth. used in SDP descriptors in RTSP commands to describe content
bandwidth.
The encryption key line (k=) can be used The encryption key line (k=) can be used to indicate an encryption
to indicate an encryption key for the bearer, and a method to key for the bearer, and a method to obtain the key. At present, the
obtain the key. At present, the encryption of ATM and AAL2 bearers encryption of ATM and AAL2 bearers has not been conventionalized,
has not been conventionalized, unlike the encryption of RTP payloads. unlike the encryption of RTP payloads. Nor has the authentication or
Nor has the authentication or encryption of ATM or AAL2 bearer signaling. encryption of ATM or AAL2 bearer signaling. In the ATM and AAL2
In the ATM and AAL2 contexts, the term 'bearer' can include 'bearer contexts, the term 'bearer' can include 'bearer signaling' as well as
signaling' as well as 'bearer payloads'. 'bearer payloads'.
The order of lines in an ATM session description is exactly in the The order of lines in an ATM session description is exactly in the
rfc2327-conformant order depicted above. However, there is no order RFC 2327-conformant order depicted above. However, there is no order
of the media attribute ('a') lines with respect to other 'a' lines. of the media attribute ('a') lines with respect to other 'a' lines.
The SDP protocol version for session descriptions using these The SDP protocol version for session descriptions using these
conventions is 0. In conformance with standard SDP, it is strongly conventions is 0. In conformance with standard SDP, it is strongly
recommended that the 'v' line be included at the beginning of each recommended that the 'v' line be included at the beginning of each
SDP session description. In some contexts such as Megaco, the SDP session description. In some contexts such as Megaco, the
'v' line is optional and may be omitted unless several session 'v' line is optional and may be omitted unless several session
descriptions are provided in sequence, in which case the descriptions are provided in sequence, in which case the 'v' line
'v' line serves as a delimiter. Depending on the application, serves as a delimiter. Depending on the application, sequences of
sequences of session descriptions might refer to: session descriptions might refer to:
- Different connections or sessions. - Different connections or sessions.
- Alternate ways of realizing the same connection or session. - Alternate ways of realizing the same connection or session.
- Different layers of the same session (section 5.6.4.1). - Different layers of the same session (section 5.6.4.1).
The 'o', 's' and 't' lines are included for strict conformance with The 'o', 's' and 't' lines are included for strict conformance with
RFC2327. It is possible that these lines might not carry useful RFC 2327. It is possible that these lines might not carry useful
information in some ATM-based applications. information in some ATM-based applications. Therefore, some
Therefore, some applications might omit these lines, although applications might omit these lines, although it is recommended that
it is recommended that they not do so. For maximum they not do so. For maximum interoperability, it is preferable that
interoperability, it is preferable that SDP parsers not SDP parsers not reject session descriptions that do not contain these
reject session descriptions that do not contain these lines. lines.
Rajesh Kumar, Mohamed Mostafa. 10 5. Structure of the Session Description Lines
5. Structure of the Session Description Lines
5.1 The Origin Line 5.1 The Origin Line
The origin line for an ATM-based session is structured as follows: The origin line for an ATM-based session is structured as follows:
o=<username> <sessionID> <version> <networkType> o=<username> <sessionID> <version> <networkType>
<addressType> <address> <addressType> <address>
The <username> is set to "-". The <username> is set to "-".
The <sessionID> can be set to one of the following: The <sessionID> can be set to one of the following:
* an NTP timestamp referring to the moment when the SDP session * an NTP timestamp referring to the moment when the SDP session
descriptor was created. descriptor was created.
* a Call ID, connection ID or context ID that uniquely * a Call ID, connection ID or context ID that uniquely identifies
identifies the session within the scope of the ATM node. the session within the scope of the ATM node. Since calls can
Since calls can comprise multiple connections (sessions), comprise multiple connections (sessions), call IDs are
call IDs are generally not suitable for this purpose. generally not suitable for this purpose.
NTP time stamps can be represented as decimal or hex integers. NTP time stamps can be represented as decimal or hex integers. The
The part of the NTP timestamp that refers to an integer number part of the NTP timestamp that refers to an integer number of seconds
of seconds is sufficient. This is a 32-bit field is sufficient. This is a 32-bit field
On the other hand, call IDs, connection IDs and context IDs can be On the other hand, call IDs, connection IDs and context IDs can be
can be 32 hex digits long. can be 32 hex digits long.
The <sessionID> field is represented as a decimal or hex number of The <sessionID> field is represented as a decimal or hex number of up
up to 32 digits. A "0x" prefix is used before the hex representation. to 32 digits. A "0x" prefix is used before the hex representation.
The <version> refers to the version of the SDP session descriptor 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 (not that of the SDP protocol). This is can be set to one of the
following: following:
* 0. * 0.
* an NTP timestamp referring to the moment when the SDP session * an NTP timestamp referring to the moment when the SDP session
descriptor was modified. If the SDP session descriptor has not descriptor was modified. If the SDP session descriptor has not
been modified by an intermediate entity (such as an MGC), been modified by an intermediate entity (such as an MGC), then
then the <version> timestamp will be the same as the <sessionId> the <version> timestamp will be the same as the <sessionId>
timestamp, if any. As with the <sessionId>, only the integer part timestamp, if any. As with the <sessionId>, only the integer
of the NTP timestamp is used. part of the NTP timestamp is used.
When equated to the integer part of an NTP timestamp, the <version> field
is 10 digits wide. This is more restricted than [1], which allows unlimited
size. As in [1], the most significant digit is non-zero when an NTP
timestamp is used.
The <networkType> in SDP session descriptions for ATM applications When equated to the integer part of an NTP timestamp, the <version>
should be assigned the string value "ATM" or wildcarded to a "$" or "-". field is 10 digits wide. This is more restricted than [1], which
allows unlimited size. As in [1], the most significant digit is
non-zero when an NTP timestamp is used.
The <addressType> and <address> parameters are identical to The <networkType> in SDP session descriptions for ATM applications
those for the connection information ('c') line (Section 5.3). Each of should be assigned the string value "ATM" or wildcarded to a "$" or
"-".
Rajesh Kumar, Mohamed Mostafa. 11 The <addressType> and <address> parameters are identical to those
these parameters can be wildcarded per the conventions described for the connection information ('c') line (Section 5.3). Each of
for the 'c' line in Section 5.3. These parameters should not me omitted these parameters can be wildcarded per the conventions described for
the 'c' line in Section 5.3. These parameters should not me omitted
since this would violate SDP syntax [1]. since this would violate SDP syntax [1].
As with the 'c' line, SDP parsers are not expected to check the consistency As with the 'c' line, SDP parsers are not expected to check the
of <networkType> with <addressType>, <address> pairs. The <addressType> consistency of <networkType> with <addressType>, <address> pairs.
and <address> need to be consistent with each other. The <addressType> and <address> need to be consistent with each
other.
5.2 The Session Name Line 5.2 The Session Name Line
In general, the session name line is structured as follows: In general, the session name line is structured as follows:
s=<sessionName> s=<sessionName>
For ATM-based sessions, the <sessionName> parameter is set to a "-". For ATM-based sessions, the <sessionName> parameter is set to a "-".
The resulting line is: The resulting line is:
s=- s=-
5.3 The Connection Information Line 5.3 The Connection Information Line
In general, the connection information line [1] is structured as follows: In general, the connection information line [1] is structured as
follows:
c=<networkType> <addressType> <address> c=<networkType> <addressType> <address>
For ATM networks, additional values of <networkType>, <addressType> For ATM networks, additional values of <networkType>, <addressType>
and <address> are defined, over and above those listed in [1]. The and <address> are defined, over and above those listed in [1]. The
ABNF syntax (Section 9) for ATM SDP does not limit the ways in which ABNF syntax (Section 9) for ATM SDP does not limit the ways in which
<networkType> can be combined with <addressType>, <address> pairs. <networkType> can be combined with <addressType>, <address> pairs.
However, some combinations will not be valid in However, some combinations will not be valid in certain applications,
certain applications, while others will never be valid. Invalid while others will never be valid. Invalid combinations should be
combinations should be rejected by application-specific functions, and rejected by application-specific functions, and not by generic
not by generic parsers. The ABNF syntax does limit the ways in which parsers. The ABNF syntax does limit the ways in which <addressType>
<addressType> and <address> can be paired. and <address> can be paired.
For ATM networks, the value of <networkType> should be set to "ATM". For ATM networks, the value of <networkType> should be set to "ATM".
Further, this may be wildcarded to "$" or "-". If this is done, an Further, this may be wildcarded to "$" or "-". If this is done, an
node using ATM as the basic transport mechanism will select a node using ATM as the basic transport mechanism will select a value
value of "ATM". A node that interfaces with multiple network types of "ATM". A node that interfaces with multiple network types ("IN",
("IN", "ATM" etc.) that include ATM can also choose a value of "ATM". "ATM" etc.) that include ATM can also choose a value of "ATM".
When the SDP description is built by a node such as a media gateway, When the SDP description is built by a node such as a media gateway,
the <address> refers to the address of the node building the SDP the <address> refers to the address of the node building the SDP
description. When this description is forwarded to another node, it still description. When this description is forwarded to another node, it
contains the original node's address. When the media gateway still contains the original node's address. When the media gateway
controller builds part or all of the SDP description, the local descriptor controller builds part or all of the SDP description, the local
contains the address of the local node, while the descriptor contains the address of the local node, while the remote
remote descriptor contains the address of the remote node. descriptor contains the address of the remote node. If the <address>
If the <address> and/or <addressType> are irrelevant or are and/or <addressType> are irrelevant or are known by other means, they
known by other means, they can be set to a "$" or a "-", as described can be set to a "$" or a "-", as described below.
below.
Rajesh Kumar, Mohamed Mostafa. 12 Additionally, in all contexts, the 'm' line can have an ATM address
Additionally, in all contexts, the 'm' line can have an ATM address in the in the <virtualConnectionId> subparameter which, if present, is the
<virtualConnectionId> subparameter which, if present, is the remote address if the 'c' line address is local, and vice versa.
remote address if the 'c' line address is local, and vice versa.
For ATM networks, the <addressType> can be NSAP, E164 or GWID (ALIAS). For ATM networks, the <addressType> can be NSAP, E164 or GWID
For ATM networks, the <address> syntax depends on the syntax of (ALIAS). For ATM networks, the <address> syntax depends on the
the <addressType>. SDP parsers should check the consistency syntax of the <addressType>. SDP parsers should check the
of <addressType> with <address>. consistency of <addressType> with <address>.
NSAP: If the addressType is NSAP, the address is expressed in NSAP: If the addressType is NSAP, the address is expressed in the
the standard dotted hex form. This is a string of 40 hex digits, standard dotted hex form. This is a string of 40 hex digits, with
with dots after the 2nd, 6th, 10th, 14th, 18th, 22nd, 26th, 30th, dots after the 2nd, 6th, 10th, 14th, 18th, 22nd, 26th, 30th, 34th and
34th and 38th digits. The last octet of the NSAP address is the 38th digits. The last octet of the NSAP address is the 'selector'
'selector' field that is available for non-standard use. An example field that is available for non-standard use. An example of a line
of a c line with an NSAP address is: with an NSAP address is:
c=ATM NSAP 47.0091.8100.0000.0060.3e64.fd01.0060.3e64.fd01.00 c=ATM NSAP 47.0091.8100.0000.0060.3e64.fd01.0060.3e64.fd01.00
A "0x" prefix shall not be used in this case since this is always in A "0x" prefix shall not be used in this case since this is always in
hexadecimal format. hexadecimal format.
E164: If the addressType is E164, the address is expressed as E164: If the addressType is E164, the address is expressed as a
a decimal number with up to 15 digits. For example: decimal number with up to 15 digits. For example:
c=ATM E164 9738294382 c=ATM E164 9738294382
The use of E.164 numbers in the B-ISDN context is defined in ITU E.191. The use of E.164 numbers in the B-ISDN context is defined in ITU
There is a disparity between the ATM forum and the ITU E.191. There is a disparity between the ATM forum and the ITU in the
in the use of E.164 numbers for ATM addressing. The ATM forum (e.g. UNI 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 Signaling 4.0) allows only International Format E.164 numbers, while
the ITU (e.g. Q.2931) allows private numbering plans. Since the goal the ITU (e.g., Q.2931) allows private numbering plans. Since the
of this SDP specification is to interoperate with all bearer signaling goal of this SDP specification is to interoperate with all bearer
protocols, it allows the use of numbers that do not conform to the signaling protocols, it allows the use of numbers that do not conform
E.164 International Format. However, to maximize overall consistency, to the E.164 International Format. However, to maximize overall
network administrators can restrict the provisioning of numbers to the consistency, network administrators can restrict the provisioning of
E.164 International Format. numbers to the E.164 International Format.
GWID (ALIAS): If the addressType is GWID, it means that the address is a GWID (ALIAS): If the addressType is GWID, it means that the address
Gateway Identifier or Node Alias. This may or may not be globally unique. is a Gateway Identifier or Node Alias. This may or may not be
In this format, the address is expressed as an alphanumeric string globally unique. In this format, the address is expressed as an
("A"-"Z", "a"-"z", "0" - "9",".","-","_"). For example: alphanumeric string ("A"-"Z", "a"-"z", "0" - "9",".","-","_"). For
example:
c=ATM GWID officeABCmgx101vism12 c=ATM GWID officeABCmgx101vism12
Since these SDP conventions can be used for more than gateways, the 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, string "ALIAS" can be used instead of "GWID" in the 'c' line. Thus,
the example above is equivalent to: the example above is equivalent to:
c=ATM ALIAS officeABCmgx101vism12 c=ATM ALIAS officeABCmgx101vism12
An example of a GWID (ALIAS)is the CLLI code used for telecom An example of a GWID (ALIAS)is the CLLI code used for telecom
equipment. For all practical purposes, it should be adequate for the
Rajesh Kumar, Mohamed Mostafa. 13
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 GWID (ALIAS) to be a variable length string with a maximum size of 32
characters. characters.
The connection information line is always present in an SDP session The connection information line is always present in an SDP session
descriptor. However, each of the parameters on this line can be wildcarded descriptor. However, each of the parameters on this line can be
to a "$" or a "-", independently of whether other parameters on this line wildcarded to a "$" or a "-", independently of whether other
are wildcarded or not. Not all syntactically legal wildcard combinations parameters on this line are wildcarded or not. Not all syntactically
are meaningful in a particular application. legal wildcard combinations are meaningful in a particular
application.
Examples of meaningful wildcard combinations in the ATM context are: Examples of meaningful wildcard combinations in the ATM context are:
c=- - - c=- - -
c=$ $ $ c=$ $ $
c=ATM - - c=ATM - -
c=ATM $ $ c=ATM $ $
c=ATM <addressType> - c=ATM <addressType> -
c=ATM <addressType> $ c=ATM <addressType> $
Specifying the ATM address type without specifying the ATM address Specifying the ATM address type without specifying the ATM address is
is useful when the recipient is asked to select an ATM address of useful when the recipient is asked to select an ATM address of a
a certain type (NSAP, E.164 etc.). certain type (NSAP, E.164 etc.).
Examples of syntactically legal wildcard combinations of dubious utility Examples of syntactically legal wildcard combinations of dubious
are: utility are:
c=- $ - c=- $ -
c=- $ $ c=- $ $
c=- <addressType> - c=- <addressType> -
c=$ <addressType> $ c=$ <addressType> $
c=- <addressType> <address> c=- <addressType> <address>
c=$ <addressType> <address> c=$ <addressType> <address>
Note that <addressType> and/or <address> should not omitted Note that <addressType> and/or <address> should not omitted without
without being set to a "-" or "$" since this would violate basic being set to a "-" or "$" since this would violate basic SDP syntax
SDP syntax [1]. [1].
5.4 The Timestamp Line 5.4 The Timestamp Line
The timestamp line for an SDP session descriptor is structured as The timestamp line for an SDP session descriptor is structured as
follows: follows:
t= <startTime> <stopTime> t= <startTime> <stopTime>
Per Ref. [49], NTP time stamps use a 32 bit unsigned
representation of seconds, and a 32 bit unsigned representation of
fractional seconds. For ATM-based sessions, the <startTime>parameter can
be made equal to the NTP timestamp referring to the moment when
the SDP session descriptor was created. 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.
When equated to the integer part of an NTP timestamp, the <startTime>
Rajesh Kumar, Mohamed Mostafa. 14 Per Ref. [49], NTP time stamps use a 32 bit unsigned representation
field is 10 digits wide. This is more restricted than [1], which of seconds, and a 32 bit unsigned representation of fractional
allows unlimited size. As in [1], the most significant digit is seconds. For ATM-based sessions, the <startTime>parameter can be
non-zero when an NTP timestamp is used. made equal to the NTP timestamp referring to the moment when the SDP
session descriptor was created. 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. When equated to
the integer part of an NTP timestamp, the <startTime> field is 10
digits wide. This is more restricted than [1], which allows
unlimited size. As in [1], the most significant digit is non-zero
when an NTP timestamp is used.
The <stopTime> parameter is set to 0 for ATM-based SDP descriptors. The <stopTime> parameter is set to 0 for ATM-based SDP descriptors.
5.5 Media Information Line for ATM connections 5.5 Media Information Line for ATM connections
The general format of the media information line adapted for AAL1 The general format of the media information line adapted for AAL1 and
and AAL5 applications is: AAL5 applications is:
m=<media> <virtualConnectionId> <transport> <format list>
The general format of the media information line adapted for AAL2 m=<media> <virtualConnectionId> <transport> <format list>
applications is:
m=<media> <virtualConnectionId> <transport#1> <format list#1> The general format of the media information line adapted for AAL2
<transport#2> <format list#2> ... <transport#M> <format list#M> applications is:
Note that <virtualConnectionId> is equivalent to <port> in [1]. m=<media> <virtualConnectionId> <transport#1> <format list#1>
<transport#2> <format list#2> ... <transport#M> <format list#M>
The subparameter <media> can take on all the values defined in [1]. Note that <virtualConnectionId> is equivalent to <port> in [1].
These are: "audio", "video", "application", "data" and "control".
When the <transport> parameter has more than one value in the 'm' The subparameter <media> can take on all the values defined in [1].
line, the <transport> <format list> pairs can be arranged in These are: "audio", "video", "application", "data" and "control".
preferential order.
5.5.1 The Virtual Connection ID When the <transport> parameter has more than one value in the 'm'
line, the <transport> <format list> pairs can be arranged in
preferential order.
The <virtualConnectionId> in AAL1 and AAL5 applications can be in 5.5.1 The Virtual Connection ID
one of the following formats:
* <ex_vcci> In applications in which the media-level part of a session descriptor
* <addressType>-<address>/<ex_vcci> is bound to an ATM virtual circuit, the <virtualConnectionId> can be
* <address>/<ex_vcci> in one of the following formats:
* <ex_bcg>/<ex_vcci>
* <ex_portId>/<ex_vpi>/<ex_vci>
* <ex_bcg>/<ex_vpi>/<ex_vci>
* <ex_vpci>/<ex_vci>
* <addressType>-<address>/<ex_vpci>/<ex_vci>
* <address>/<ex_vpci>/<ex_vci>
The <virtualConnectionId> in AAL2 applications can be in one of the * <ex_vcci>
following formats: * <addressType>-<address>/<ex_vcci>
* <address>/<ex_vcci>
* <ex_bcg>/<ex_vcci>
* <ex_portId>/<ex_vpi>/<ex_vci>
* <ex_bcg>/<ex_vpi>/<ex_vci>
* <ex_vpci>/<ex_vci>
* <addressType>-<address>/<ex_vpci>/<ex_vci>
* <address>/<ex_vpci>/<ex_vci>
* <ex_vcci>/<ex_cid> In applications in which the media-level part of a session descriptor
* <addressType>-<address>/<ex_vcci>/<ex_cid> is bound to a subchannel within an ATM virtual circuit, the
* <address>/<ex_vcci>/<ex_cid> <virtualConnectionId> can be in one of the following formats:
* <ex_bcg>/<ex_vcci>/<ex_cid>
* <ex_portId>/<ex_vpi>/<ex_vci>/<ex_cid>
* <ex_bcg>/<ex_vpi>/<ex_vci>/<ex_cid>
Rajesh Kumar, Mohamed Mostafa. 15 * <ex_vcci>/<ex_cid>
* <ex_vpci>/<ex_vci>/<ex_cid> * <addressType>-<address>/<ex_vcci>/<ex_cid>
* <addressType>-<address>/<ex_vpci>/<ex_vci>/<ex_cid> * <address>/<ex_vcci>/<ex_cid>
* <address>/<ex_vpci>/<ex_vci>/<ex_cid> * <ex_bcg>/<ex_vcci>/<ex_cid>
* <ex_portId>/<ex_vpi>/<ex_vci>/<ex_cid>
* <ex_bcg>/<ex_vpi>/<ex_vci>/<ex_cid>
* <ex_vpci>/<ex_vci>/<ex_cid>
* <addressType>-<address>/<ex_vpci>/<ex_vci>/<ex_cid>
* <address>/<ex_vpci>/<ex_vci>/<ex_cid>
Here, Here,
<ex_vcci> = VCCI-<vcci> <ex_vcci> = VCCI-<vcci>
<ex_vpci> = VPCI-<vpci> <ex_vpci> = VPCI-<vpci>
<ex_bcg> = BCG-<bcg> <ex_bcg> = BCG-<bcg>
<ex_portId> = PORT-<portId> <ex_portId> = PORT-<portId>
<ex_vpi> = VPI-<vpi> <ex_vpi> = VPI-<vpi>
<ex_vci> = VCI-<vci> <ex_vci> = VCI-<vci>
<ex_cid> = CID-<cid> <ex_cid> = CID-<cid>
The <vcci>, <vpi>, <vci>, <vpci> and <cid> are decimal numbers The <vcci>, <vpi>, <vci>, <vpci> and <cid> are decimal numbers or
or hexadecimal numbers. An "0x" prefix is used before their values hexadecimal numbers. An "0x" prefix is used before their values when
when they are in the hex format. they are in the hex format.
The <portId> is always a hexadecimal number. An "0x" prefix is not used
with it.
The <addressType> and <address> are identical The <portId> is always a hexadecimal number. An "0x" prefix is not
to their definitions above for the connection information line with used with it.
the difference that this address refers to the remote peer in the
media information line. Since the <virtualConnectionId>, as defined
here, is meant for use in ATM networks, the values of <addressType>
and <address> in the <virtualConnectionId> are limited to ATM-specific
values.
The <vpi>, <vci> and <cid> have their usual ATM connotation. The The <addressType> and <address> are identical to their definitions
<vpi> is an 8 or 12 bit field. The <vci> is a 16-bit field. The <cid> above for the connection information line with the difference that
is an 8-bit field. this address refers to the remote peer in the media information line.
Since the <virtualConnectionId>, as defined here, is meant for use in
ATM networks, the values of <addressType> and <address> in the
<virtualConnectionId> are limited to ATM-specific values.
The <vpci> is a 16-bit field defined in Section 4.5.16 of ITU The <vpi>, <vci> and <cid> are the Virtual Path Identifier, Virtual
Q.2931 [Ref. 15]. The <vpci> is similar to the <vpi>,except for its Circuit Identifier and Channel Identifier respectively. The <vpi> is
width and the fact that it retains its value across VP crossconnects. an 8 or 12 bit field. The <vci> is a 16-bit field. The <cid> is an
In some applications, the size of the <vpci> is the same as the size of 8-bit field ([8] and [11]). For AAL1 applications, it corresponds to
the <vpi> (8 or 12 bits). In this case, the most significant 8 or 4 bits the channel number defined in Annex C of [8].
are ignored.
The <vcci> is a 16-bit field defined in ITU Recommendation Q.2941.2 [32]. The <vpci> is a 16-bit field defined in Section 4.5.16 of ITU Q.2931
The <vcci> is similar to the <vci>, except for the fact that it retains [Ref. 15]. The <vpci> is similar to the <vpi>, except for its width
its value across VC crossconnects. and the fact that it retains its value across VP crossconnects. In
some applications, the size of the <vpci> is the same as the size of
the <vpi> (8 or 12 bits). In this case, the most significant 8 or 4
bits are ignored.
In general, <vpci> and <vcci> values are unique between a The <vcci> is a 16-bit field defined in ITU Recommendation Q.2941.2
pair of nodes. When they are unique between a pair of nodes [32]. The <vcci> is similar to the <vci>, except for the fact that
but not unique within a network, they need to be qualified, it retains its value across VC crossconnects.
at any node, by the ATM address of the remote node.
These parameters can be pre-provisioned or signaled. When signaled, the
<vpci> is encapsulated in the connection identifier information element of
SVC signaling messages. The <vcci> is encapsulated in the Generic
Information Transport (GIT) information element of SVC signaling messages.
In an ATM node pair, either node can assign <vcci> values and signal it to
Rajesh Kumar, Mohamed Mostafa. 16 In general, <vpci> and <vcci> values are unique between a pair of
the other end via SVC signaling. A glare avoidance scheme is defined in [32] nodes. When they are unique between a pair of nodes but not unique
and [44].This mechanism works in SVC applications. A different glare within a network, they need to be qualified, at any node, by the ATM
address of the remote node. These parameters can be pre-provisioned
or signaled. When signaled, the <vpci> is encapsulated in the
connection identifier information element of SVC signaling messages.
The <vcci> is encapsulated in the Generic Information Transport (GIT)
information element of SVC signaling messages. In an ATM node pair,
either node can assign <vcci> values and signal it to the other end
via SVC signaling. A glare avoidance scheme is defined in [32] and
[44]. This mechanism works in SVC applications. A different glare
avoidance technique is needed when a pool of existing PVCs/SPVCs is avoidance technique is needed when a pool of existing PVCs/SPVCs is
dynamically assigned to calls. One such scheme for glare reduction is the dynamically assigned to calls. One such scheme for glare reduction
assignment of <vcci> values from different ends of the <vcci> range, using is the assignment of <vcci> values from different ends of the <vcci>
the lowest or highest available value as applicable. range, using the lowest or highest available value as applicable.
When <vpci> and <vcci> values are pre-provisioned, administrations have the When <vpci> and <vcci> values are pre-provisioned, administrations
option of provisioning them uniquely in a network. In this have the option of provisioning them uniquely in a network. In this
case, the ATM address of the far end is not needed to qualify these case, the ATM address of the far end is not needed to qualify these
parameters. parameters.
In the AAL2 context, the definition of a VCC implies that there is no In the AAL2 context, the definition of a VCC implies that there is no
CID-level switching between its ends. If either end can assign <cid> CID-level switching between its ends. If either end can assign <cid>
values, then a glare reduction mechanism is needed. One such scheme for values, then a glare reduction mechanism is needed. One such scheme
glare reduction is the assignment of <cid> values from different ends for glare reduction is the assignment of <cid> values from different
of the <cid> range, using the lowest or highest available value as ends of the <cid> range, using the lowest or highest available value
applicable. as applicable.
The <portId> parameter is used to identify the physical trunk port The <portId> parameter is used to identify the physical trunk port on
on an ATM module. It can be represented as a hexadecimal number of an ATM module. It can be represented as a hexadecimal number of up
up to 32 hex digits. to 32 hex digits.
In some applications, it is meaningful to bundle a set of connections 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> between a pair of ATM nodes into a bearer connection group. The
subparameter is an eight bit field that allows the bundling of up <bcg> subparameter is an eight bit field that allows the bundling of
to 255 VPCs or VCCs. up to 255 VPCs or VCCs.
In some applications, it is necessary to wildcard the <virtualConnectionId> In some applications, it is necessary to wildcard the
parameter, or some elements of this parameter. The "$" wildcard character <virtualConnectionId> parameter, or some elements of this parameter.
can be substituted for the entire <virtualConnectionId> parameter, or some The "$" wildcard character can be substituted for the entire
of its terms. In the latter case, the constant strings that <virtualConnectionId> parameter, or some of its terms. In the latter
qualify the terms in the <virtualConnectionId> are retained. The case, the constant strings that qualify the terms in the
concatenation <addressType>-<address> can be wildcarded in the <virtualConnectionId> are retained. The concatenation
following ways: <addressType>-<address> can be wildcarded in the following ways:
* The entire concatenation, <addressType>-<address>, is * The entire concatenation, <addressType>-<address>, is replaced
replaced with a "$". with a "$".
* <address> is replaced with a "$", but <addressType> is * <address> is replaced with a "$", but <addressType> is not.
not.
Examples of wildcarding the <virtualConnectionId> in the AAL1 and AAL5 Examples of wildcarding the <virtualConnectionId> in the AAL1 and
contexts are: $, VCCI-$, BCG-100/VPI-20/VCI-$. Examples of AAL5 contexts are: $, VCCI-$, BCG-100/VPI-20/VCI-$. Examples of
wildcarding the <virtualConnectionId> in the AAL2 context are: $, wildcarding the <virtualConnectionId> in the AAL2 context are: $,
VCCI-40/CID-$, BCG-100/VPI-20/VCI-120/CID-$, NSAP-$/VCCI-$/CID-$, VCCI-40/CID-$, BCG-100/VPI-20/VCI-120/CID-$, NSAP-$/VCCI-$/CID-$,
$/VCCI-$/CID-$. $/VCCI-$/CID-$.
It is also permissible to set the entire <virtualConnectionId> parameter It is also permissible to set the entire <virtualConnectionId>
to a "-" indicating its irrelevance. parameter to a "-" indicating its irrelevance.
Rajesh Kumar, Mohamed Mostafa. 17 5.5.2 The Transport Parameter
5.5.2 The Transport Parameter
The <transport> parameter indicates the method used to encapsulate the The <transport> parameter indicates the method used to encapsulate
service payload. These methods are not defined in this document, which the service payload. These methods are not defined in this document,
refers to existing ATMF and ITU-T standards, which, in turn, might which refers to existing ATMF and ITU-T standards, which, in turn,
refer to other standards. For ATM applications, the following might refer to other standards. For ATM applications, the following
<transport> values are defined: <transport> values are defined:
Table 1: List of Transport Parameter values used in SDP in the ATM context Table 1: List of Transport Parameter values used in SDP in the ATM
+---------------------------------------------------------------------+ context
| | Controlling Document for |
| Transport | Encapsulation of Service Payload |
+------------------------+--------------------------------------------+
| AAL1/ATMF | af-vtoa-0078.000 [7] |
+------------------------+--------------------------------------------+
| AAL1/ITU | ITU-T H.222.1 [51] |
+------------------------+--------------------------------------------+
| AAL5/ATMF | af-vtoa-0083.000 [46] |
+------------------------+--------------------------------------------+
| AAL5/ITU | ITU-T H.222.1 [51] |
+------------------------+--------------------------------------------+
| AAL2/ATMF | af-vtoa-0113.000 [44] and |
| | af-vmoa-0145.000 [52] |
+------------------------+--------------------------------------------+
| AAL2/ITU | ITU-T I.366.2 [13] |
+------------------------+--------------------------------------------+
| AAL1/custom | Corporate document or |
| AAL2/custom | application-specific interoperability |
| AAL5/custom | statement. |
+------------------------+--------------------------------------------+
| AAL1/<corporateName> | |
| AAL2/<corporateName> | |
| AAL5/<corporateName> | |
| AAL1/IEEE:<oui> | Corporate document |
| AAL2/IEEE:<oui> | |
| AAL5/IEEE:<oui> | |
+------------------------+--------------------------------------------+
| RTP/AVP | Annex C of H.323 [45] |
+------------------------+--------------------------------------------+
In H.323 Annex C applications [45], the <transport> parameter has a +---------------------------------------------------------------------+
value of "RTP/AVP". This is because these applications use the RTP | | Controlling Document for |
protocol [2] and audio/video profile [3]. The fact that RTP is carried | Transport | Encapsulation of Service Payload |
directly over AAL5 per [45] can be indicated explicitly via the aalApp +------------------------+--------------------------------------------+
media attribute. | AAL1/ATMF | af-vtoa-0078.000 [7] |
+------------------------+--------------------------------------------+
| AAL1/ITU | ITU-T H.222.1 [51] |
+------------------------+--------------------------------------------+
| AAL5/ATMF | af-vtoa-0083.000 [46] |
+------------------------+--------------------------------------------+
| AAL5/ITU | ITU-T H.222.1 [51] |
+------------------------+--------------------------------------------+
| AAL2/ATMF | af-vtoa-0113.000 [44] and |
| | af-vmoa-0145.000 [52] |
+------------------------+--------------------------------------------+
| AAL2/ITU | ITU-T I.366.2 [13] |
+------------------------+--------------------------------------------+
| AAL1/custom | Corporate document or |
| AAL2/custom | application-specific interoperability |
| AAL5/custom | statement. |
+------------------------+--------------------------------------------+
| AAL1/<corporateName> | |
| AAL2/<corporateName> | |
| AAL5/<corporateName> | |
| AAL1/IEEE:<oui> | Corporate document |
| AAL2/IEEE:<oui> | |
| AAL5/IEEE:<oui> | |
+------------------------+--------------------------------------------+
| RTP/AVP | Annex C of H.323 [45] |
+------------------------+--------------------------------------------+
A value of "AAL1/custom", "AAL2/custom" or "AAL5/custom" for the In H.323 Annex C applications [45], the <transport> parameter has a
<transport> parameter can indicate non-standard or semi-standard value of "RTP/AVP". This is because these applications use the RTP
encapsulation schemes defined by a corporation or a multi-vendor protocol [2] and audio/video profile [3]. The fact that RTP is
agreement. Since there is no standard administration of this carried directly over AAL5 per [45] can be indicated explicitly via
convention, care should be taken to preclude inconsistencies the aalApp media attribute.
within the scope of a deployment.
Rajesh Kumar, Mohamed Mostafa. 18 A value of "AAL1/custom", "AAL2/custom" or "AAL5/custom" for the
The use of <transport> values "AAL1/<corporateName>", <transport> parameter can indicate non-standard or semi-standard
"AAL2/<corporateName>", "AAL5/<corporateName>", "AAL1/IEEE:<oui>", encapsulation schemes defined by a corporation or a multi-vendor
"AAL2/IEEE:<oui>" and "AAL5/IEEE:<oui>" is similar. These indicate agreement. Since there is no standard administration of this
non-standard transport mechanisms or AAL2 profiles which should convention, care should be taken to preclude inconsistencies within
be used consistently within the scope of an application or deployment. the scope of a deployment.
The parameter <corporateName> is the registered, globally unique name
of a corporation(e.g. Cisco, Telcordia etc.). The parameter <oui>
is the hex representation of a three-octet field identical to the OUI
maintained by the IEEE. Since this is always represented in hex, the "0x"
prefix shall not be used. Leading zeros can be omitted. For
example, "IEEE:00000C" and "IEEE:C" both refer to
Cisco Systems, Inc.
5.5.3 The Format List for AAL1 and AAL5 applications The use of <transport> values "AAL1/<corporateName>",
"AAL2/<corporateName>", "AAL5/<corporateName>", "AAL1/IEEE:<oui>",
"AAL2/IEEE:<oui>" and "AAL5/IEEE:<oui>" is similar. These indicate
non-standard transport mechanisms or AAL2 profiles which should be
used consistently within the scope of an application or deployment.
The parameter <corporateName> is the registered, globally unique name
of a corporation (e.g., Cisco, Telcordia etc.). The parameter <oui>
is the hex representation of a three-octet field identical to the OUI
maintained by the IEEE. Since this is always represented in hex, the
"0x" prefix shall not be used. Leading zeros can be omitted. For
example, "IEEE:00000C" and "IEEE:C" both refer to Cisco Systems, Inc.
In the AAL1 and AAL5 contexts, the <format list> is a list of payload 5.5.3 The Format List for AAL1 and AAL5 applications
types:
<payloadType#1> <payloadType#2>...<payloadType#n> In the AAL1 and AAL5 contexts, the <format list> is a list of payload
types:
In most AAL1 and AAL5 applications, the ordering of payload types <payloadType#1> <payloadType#2>...<payloadType#n>
In most AAL1 and AAL5 applications, the ordering of payload types
implies a preference (preferred payload types before less favored implies a preference (preferred payload types before less favored
ones). The payload type can be statically assigned or dynamically ones). The payload type can be statically assigned or dynamically
mapped. Although the transport is not the same, SDP in the ATM mapped. Although the transport is not the same, SDP in the ATM
context leverages the encoding names and payload types registered context leverages the encoding names and payload types registered
with IANA [31] for RTP. Encoding names not listed in [31] use a "X-" with IANA [31] for RTP. Encoding names not listed in [31] use a "X-"
prefix. Encodings that are not statically mapped to payload types in prefix. Encodings that are not statically mapped to payload types in
[31] are to be dynamically mapped at the time of connection [31] are to be dynamically mapped at the time of connection
establishment to payload types in the decimal range 96-127. establishment to payload types in the decimal range 96-127. The SDP
The SDP 'atmmap' attribute (similar to 'rtpmap') is used for this 'atmmap' attribute (similar to 'rtpmap') is used for this purpose.
purpose.
In addition to listing the IANA-registered encoding names and In addition to listing the IANA-registered encoding names and payload
payload types found in [31], Table 2 defines a few types found in [31], Table 2 defines a few non-standard encoding
non-standard encoding names(with "X-" prefixes). names(with "X-" prefixes).
5.5.4 The Format List for AAL2 applications 5.5.4 The Format List for AAL2 applications
In the AAL2 context, the <format list> is a list of AAL2 profile In the AAL2 context, the <format list> is a list of AAL2 profile
types: types:
<profile#1> <profile#2>...<profile#n> <profile#1> <profile#2>...<profile#n>
In most applications, the ordering of profiles implies In most applications, the ordering of profiles implies a preference
a preference (preferred profiles before less favored ones). (preferred profiles before less favored ones). The <profile>
The <profile> parameter is expressed as a decimal number in the parameter is expressed as a decimal number in the range 1-255.
range 1-255.
Rajesh Kumar, Mohamed Mostafa. 19 5.5.5 Media information line construction
5.5.5 Media information line construction
Using the parameter definitions above, the 'm' for AAL1-based audio Using the parameter definitions above, the 'm' for AAL1-based audio
media can be constructed as follows: media can be constructed as follows:
m=audio <virtualConnectionId> AAL1/ATMF <payloadType#1> m=audio <virtualConnectionId> AAL1/ATMF <payloadType#1>
<payloadType#2>...<payloadType #n> <payloadType#2>...<payloadType #n>
Note that only those payload types, whether statically mapped or
dynamically assigned, that are consistent with af-vtoa-78 [7] can be used
in this construction.
Backwards compatibility note: The transport value "AAL1/AVP" used in Note that only those payload types, whether statically mapped or
previous versions of this document should be considered equivalent to dynamically assigned, that are consistent with af-vtoa-78 [7] can be
the value "AAL1/ATMF" defined above. "AAL1/AVP" is unsuitable because used in this construction.
the AVP profile is closely tied to RTP.
An example 'm' line use for audio media over AAL1 is: Backwards compatibility note: The transport value "AAL1/AVP" used in
previous versions of this document should be considered equivalent to
the value "AAL1/ATMF" defined above. "AAL1/AVP" is unsuitable
because the AVP profile is closely tied to RTP.
m=audio VCCI-27 AAL1/ATMF 0 An example 'm' line use for audio media over AAL1 is:
This indicates the use of an AAL1 VCC with VCCI=24 to carry PCMU audio m=audio VCCI-27 AAL1/ATMF 0
that is encapsulated according to ATMF's af-vtoa-78 [7].
Another example of the use of the 'm' line use for audio media over AAL1 This indicates the use of an AAL1 VCC with VCCI=24 to carry PCMU
is: audio that is encapsulated according to ATMF's af-vtoa-78 [7].
m=audio $ AAL1/ATMF 0 8 Another example of the use of the 'm' line use for audio media over
AAL1 is:
This indicates that any AAL1 VCC may be used. If it exists already, then m=audio $ AAL1/ATMF 0 8
its selection is subject to glare rules. The audio media on this VCC
is encapsulated according to ATMF's af-vtoa-78 [7]. The encodings to be
used are either PCMU or PCMA, in preferential order.
The 'm' for AAL5-based audio media can be constructed as This indicates that any AAL1 VCC may be used. If it exists already,
follows: then its selection is subject to glare rules. The audio media on
this VCC is encapsulated according to ATMF's af-vtoa-78 [7]. The
encodings to be used are either PCMU or PCMA, in preferential order.
The 'm' for AAL5-based audio media can be constructed as follows:
m=audio <virtualConnectionId> AAL5/ATMF <payloadType#1> m=audio <virtualConnectionId> AAL5/ATMF <payloadType#1>
<payloadType#2>...<payloadType #n> <payloadType#2>...<payloadType #n>
An example 'm' line use for audio media over AAL5 is: An example 'm' line use for audio media over AAL5 is:
m=audio PORT-2/VPI-6/$ AAL5/ITU 9 15 m=audio PORT-2/VPI-6/$ AAL5/ITU 9 15
implies that any VCI on VPI= 6 of trunk port #2 may be used. The identities implies that any VCI on VPI= 6 of trunk port #2 may be used. The
of the terms in the virtual connection ID are implicit in the application identities of the terms in the virtual connection ID are implicit in
context. The audio media on this VCC is encapsulated according to ITU-T the application context. The audio media on this VCC is encapsulated
H.222.1 [51]. The encodings to be used are either ITU-T G.722 or ITU-T according to ITU-T H.222.1 [51]. The encodings to be used are either
G.728 (LD-CELP), in preferential order. ITU-T G.722 or ITU-T G.728 (LD-CELP), in preferential order.
The 'm' for AAL5-based H.323 Annex C audio [45] can be constructed as The 'm' for AAL5-based H.323 Annex C audio [45] can be constructed as
follows: follows:
Rajesh Kumar, Mohamed Mostafa. 20 m=audio <virtualConnectionId> RTP/AVP <payloadType#1>
m=audio <virtualConnectionId> RTP/AVP <payloadType#1> <payloadType#2>...<payloadType #n>
<payloadType#2>...<payloadType #n>
For example:
m=audio PORT-9/VPI-3/VCI-$ RTP/AVP 2 96 For example:
a=rtpmap:96 X-G727-32
a=aalType:AAL5
a=aalApp:itu_h323c - -
implies that any VCI on VPI= 3 of trunk port #9 may be used. This VC m=audio PORT-9/VPI-3/VCI-$ RTP/AVP 2 96
encapsulates RTP packets directly on AAL5 per [45]. The 'rtpmap' (rather a=rtpmap:96 X-G727-32
than the 'atmmap') attribute is used to dynamically map the payload type a=aalType:AAL5
of 96 into the codec name X-G727-32 (Table 2). This name represents 32 a=aalApp:itu_h323c - -
kbps EADPCM.
The 'm' line for AAL5-based video media can be constructed as follows: implies that any VCI on VPI= 3 of trunk port #9 may be used. This VC
encapsulates RTP packets directly on AAL5 per [45]. The 'rtpmap'
(rather than the 'atmmap') attribute is used to dynamically map the
payload type of 96 into the codec name X-G727-32 (Table 2). This
name represents 32 kbps EADPCM.
The 'm' line for AAL5-based video media can be constructed as
follows:
m=video <virtualConnectionId> AAL5/ITU <payloadType#1> m=video <virtualConnectionId> AAL5/ITU <payloadType#1>
<payloadType#2>...<payloadType #n> <payloadType#2>...<payloadType #n>
In this case, the use of AAL5/ITU as the transport points to H.222.1 In this case, the use of AAL5/ITU as the transport points to H.222.1
as the controlling standard [51]. An example 'm' line use for video media as the controlling standard [51]. An example 'm' line use for video
is: media is:
m=video PORT-9/VPI-3/VCI-$ AAL5/ITU 33
This indicates that any VCI on VPI= 3 of trunk port #9 may be used. m=video PORT-9/VPI-3/VCI-$ AAL5/ITU 33
The video media on this VCC is encapsulated according to ITU-T
H.222.1 [51]. The encoding scheme is an MPEG 2 transport stream ("MP2T"
in Table 1). This is statically mapped per [31] to a payload type of 33.
Using the parameter definitions in the previous subsections, the media This indicates that any VCI on VPI= 3 of trunk port #9 may be used.
information line for AAL2-based audio media can be constructed as follows: The video media on this VCC is encapsulated according to ITU-T
H.222.1 [51]. The encoding scheme is an MPEG 2 transport stream
("MP2T" in Table 1). This is statically mapped per [31] to a payload
type of 33.
m=<media> <virtualConnectionId> <transport#1> <format list#1> Using the parameter definitions in the previous subsections, the
<transport#2> <format list#2> ... <transport#M> <format list#M> media information line for AAL2-based audio media can be constructed
as follows:
where <format list#i> has the form <profile#i_1>...<profile#i_N> m=<media> <virtualConnectionId> <transport#1> <format list#1>
<transport#2> <format list#2> ... <transport#M> <format list#M>
Unlike the 'm' line for AAL1 or AAL5 applications, the 'm' line for AAL2 where <format list#i> has the form <profile#i_1>...<profile#i_N>
applications can have multiple <transport> parameters, each followed by Unlike the 'm' line for AAL1 or AAL5 applications, the 'm' line for
a <format list>. This is because it is possible to consider definitions AAL2 applications can have multiple <transport> parameters, each
from multiple sources (ATMF, ITU and non-standard documents) when selecting followed by a <format list>. This is because it is possible to
AAL2 profile to be bound to a connection. consider definitions from multiple sources (ATMF, ITU and non-
standard documents) when selecting AAL2 profile to be bound to a
connection.
In most applications, the ordering of profiles implies a preference In most applications, the ordering of profiles implies a preference
(preferred profiles before less favored ones). Therefore, there can be (preferred profiles before less favored ones). Therefore, there can
multiple instances of the same <transport> value in the same 'm' line. be multiple instances of the same <transport> value in the same 'm'
line.
An example 'm' line use for audio media over AAL2 is: An example 'm' line use for audio media over AAL2 is:
Rajesh Kumar, Mohamed Mostafa. 21 m=audio VCCI-27/CID-19 AAL2/ITU 7 AAL2/custom 100 AAL2/ITU 1
m=audio VCCI-27/CID-19 AAL2/ITU 7 AAL2/custom 100 AAL2/ITU 1
This indicates the use of CID #19 on VCCI #27 to carry audio. It provides This indicates the use of CID #19 on VCCI #27 to carry audio. It
a preferential list of profiles for this connection: profile AAL2/ITU 7 provides a preferential list of profiles for this connection: profile
defined in [13], AAL2/custom 100 defined in an application-specific or AAL2/ITU 7 defined in [13], AAL2/custom 100 defined in an
interoperability document and profile AAL2/ITU 1 defined in [13]. application-specific or interoperability document and profile
AAL2/ITU 1 defined in [13].
Another example of the use of the 'm' line use for audio media over AAL2 Another example of the use of the 'm' line use for audio media over
is: AAL2 is:
m=audio VCCI-$/CID-$ AAL2/ATMF 6 8 m=audio VCCI-$/CID-$ AAL2/ATMF 6 8
This indicates that any AAL2 CID may be used, subject to any applicable This indicates that any AAL2 CID may be used, subject to any
glare avoidance/reduction rules. The profiles that can be bound to this applicable glare avoidance/reduction rules. The profiles that can be
connection are AAL2/ATMF 6 defined in af-vtoa-0113.000 [44] and AAL2/ATMF 8 bound to this connection are AAL2/ATMF 6 defined in af-vtoa-0113.000
defined in af-vmoa-0145.000 [52]. These sources use non-overlapping [44] and AAL2/ATMF 8 defined in af-vmoa-0145.000 [52]. These sources
profile number ranges. The profiles they define fall under the <transport> use non-overlapping profile number ranges. The profiles they define
category "AAL2/ATMF". This application does not order profiles fall under the <transport> category "AAL2/ATMF". This application
preferentially. This rule is known a priori. It is not embedded in the 'm' does not order profiles preferentially. This rule is known a priori.
line. It is not embedded in the 'm' line.
Another example of the use of the 'm' line use for audio media over AAL2 Another example of the use of the 'm' line use for audio media over
is: AAL2 is:
m=audio VCCI-20/CID-$ AAL2/xyzCorporation 11 m=audio VCCI-20/CID-$ AAL2/xyzCorporation 11
AAL2 VCCs in this application are single-CID VCCs. Therefore, it is possible AAL2 VCCs in this application are single-CID VCCs. Therefore, it is
to wildcard the CID. The single-CID VCC with VCCI=20 is selected. The AAL2 possible to wildcard the CID. The single-CID VCC with VCCI=20 is
profile to be used is AAL2/xyzCorporation 11 defined by xyzCorporation. selected. The AAL2 profile to be used is AAL2/xyzCorporation 11
defined by xyzCorporation.
In some applications, an "-" can be used in lieu of: In some applications, an "-" can be used in lieu of:
- <format list>
- <transport> and <format list>
- <format list>
- <transport> and <format list>
This implies that these parameters are irrelevant or are known by This implies that these parameters are irrelevant or are known by
other means (such as defaults). For example: other means (such as defaults). For example:
m=audio VCCI-234 - - m=audio VCCI-234 - -
a=aalType:AAL1 a=aalType:AAL1
indicates the use of VCCI=234 with AAL1 adaptation and unspecified encoding. indicates the use of VCCI=234 with AAL1 adaptation and unspecified
encoding.
In another example application, the'aal2sscs3662' attribute can indicate In another example application, the 'aal2sscs3662' attribute can
<faxDemod> = "on" and any other competing options as "off", and the indicate <faxDemod> = "on" and any other competing options as "off",
<aalType> attribute can indicate AAL2. Thus: and the <aalType> attribute can indicate AAL2. Thus:
m=audio VCCI-123/CID-5 - - m=audio VCCI-123/CID-5 - -
a=aalType:AAL2 a=aalType:AAL2
a=aal2sscs3662:audio off off on off on off off off - - - a=aal2sscs3662:audio off off on off on off off off - - -
Besides indicating an audio medium, a VCCI of 123 and a CID of 5, Besides indicating an audio medium, a VCCI of 123 and a CID of 5, the
'm' line indicates an unspecified profile. The media attribute lines
Rajesh Kumar, Mohamed Mostafa. 22 indicate an adaptation layer of AAL2, and the use of the audio SAP
the 'm' line indicates an unspecified profile. The media attribute lines [13] to carry demodulated facsimile.
indicate an adaptation layer of AAL2, and the use of the audio SAP [13]
to carry demodulated facsimile.
The media information line for "data" media has one of the following The media information line for "data" media has one of the following
the following formats: the following formats:
m=data <virtualConnectionId> - - m=data <virtualConnectionId> - -
m=data - - - m=data - - -
The data could be circuit emulation data carried over AAL1 or AAL2, The data could be circuit emulation data carried over AAL1 or AAL2,
or packet data carried over AAL5. Media attribute lines, rather than or packet data carried over AAL5. Media attribute lines, rather than
the 'm' line, are used to indicate the adaptation type for the data the 'm' line, are used to indicate the adaptation type for the data
media. Examples of the representation of data media are listed below. media. Examples of the representation of data media are listed
below.
m=data PORT-7/VPI-6/VCI-$ - - m=data PORT-7/VPI-6/VCI-$ - -
a=aalApp:AAL5_SSCOP- - a=aalApp:AAL5_SSCOP- -
implies that any VCI on VPI= 6 of trunk port #7 may be used. This VC implies that any VCI on VPI= 6 of trunk port #7 may be used. This VC
uses SSCOP on AAL5 to transport data. uses SSCOP on AAL5 to transport data.
m=data PORT-7/VPI-6/VCI-50 - - m=data PORT-7/VPI-6/VCI-50 - -
a=aalType:AAL1_SDT a=aalType:AAL1_SDT
a=sbc:6 a=sbc:6
implies that VCI 50 on VPI 6 on port 7 uses structured AAL1 to transfer implies that VCI 50 on VPI 6 on port 7 uses structured AAL1 to
6 x 64 kbps circuit emulation data. This may be alternately represented transfer 6 x 64 kbps circuit emulation data. This may be alternately
as: represented as:
m=data PORT-7/VPI-6/VCI-50 - - m=data PORT-7/VPI-6/VCI-50 - -
b=AS:384 b=AS:384
a=aalType:AAL1_SDT a=aalType:AAL1_SDT
The following lines: The following lines:
m=data VCCI-123/CID-5 - - m=data VCCI-123/CID-5 - -
a=aalType:AAL2 a=aalType:AAL2
a=sbc:2 a=sbc:2
imply that CID 5 of VCCI 123 is used to transfer 2 x 64 kbps imply that CID 5 of VCCI 123 is used to transfer 2 x 64 kbps circuit
circuit emulation data. emulation data.
In the AAL1 context, it is also permissible to represent circuit In the AAL1 context, it is also permissible to represent circuit mode
mode data as an "audio" codec. If this is done, the codec types used data as an "audio" codec. If this is done, the codec types used are
are X-CCD or X-CCD-CAS. These encoding names are dynamically X-CCD or X-CCD-CAS. These encoding names are dynamically mapped into
mapped into payload types through the 'atmmap' attribute. For example: payload types through the 'atmmap' attribute. For example:
m=audio VCCI-27 AAL1/AVP 98 m=audio VCCI-27 AAL1/AVP 98
a=atmmap:98 X-CCD a=atmmap:98 X-CCD
a=sbc:6 a=sbc:6
implies that AAL1 VCCI=27 is used for 6 x 64 transmission. implies that AAL1 VCCI=27 is used for 6 x 64 transmission.
Rajesh Kumar, Mohamed Mostafa. 23 In the AAL2 context, the X-CCD codec can be assigned a profile type
In the AAL2 context, the X-CCD codec can be assigned a profile and number. Even though it is not possible to construct a profile
type and number. Even though it is not possible to construct table as described in ITU I.366.2 for this "codec", it is preferable
a profile table as described in ITU I.366.2 for this "codec", to adopt the common AAL2 profile convention in its case. An example
it is preferable to adopt the common AAL2 profile convention in its AAL2 profile mapping for the X-CCD codec could be as follows:
case. An example AAL2 profile mapping for the X-CCD codec could
be as follows:
PROFILE TYPE PROFILE NUMBER "CODEC" (ONLY ONE) PROFILE TYPE PROFILE NUMBER "CODEC" (ONLY ONE)
"custom" 200 X-CCD "custom" 200 X-CCD
The profile does not identify the number of subchannels ('n' in nx64). The profile does not identify the number of subchannels ('n' in
This is known by other means such as the 'sbc' media attribute line. nx64). This is known by other means such as the 'sbc' media
attribute line.
For example, the media information line: For example, the media information line:
m=audio $ AAL2/custom 200
a=sbc:6 m=audio $ AAL2/custom 200
a=sbc:6
implies 384 kbps circuit emulation using AAL2 adaptation. implies 384 kbps circuit emulation using AAL2 adaptation.
It is not necessary to define a profile with the X-CCD-CAS codec, since It is not necessary to define a profile with the X-CCD-CAS codec,
this method of CAS transport [7] is not used in AAL2 applications. since this method of CAS transport [7] is not used in AAL2
applications.
5.6 The Media Attribute Lines 5.6 The Media Attribute Lines
In an SDP line sequence, the media information line 'm' is In an SDP line sequence, the media information line 'm' is followed
followed by one or more media attribute or 'a' lines. Media by one or more media attribute or 'a' lines. Media attribute lines
attribute lines are per the format below: are per the format below:
a=<attribute>:<value> a=<attribute>:<value>
or or
a=<value> a=<value>
In general, media attribute lines are optional except when needed to In general, media attribute lines are optional except when needed to
qualify the media information line. This qualification is necessary qualify the media information line. This qualification is necessary
when the "m" line for an AAL1 or AAL5 session specifies a payload when the "m" line for an AAL1 or AAL5 session specifies a payload
type that needs to be dynamically mapped. The 'atmmap' media type that needs to be dynamically mapped. The 'atmmap' media
attribute line defined below is used for this purpose. attribute line defined below is used for this purpose.
In attribute lines, subparameters that are meant to be left In attribute lines, subparameters that are meant to be left
unspecified are set to a "-". These are generally inapplicable or, if unspecified are set to a "-". These are generally inapplicable or,
applicable, are known by other means such as provisioning. In some if applicable, are known by other means such as provisioning. In
cases, a media attribute line with all parameters set to "-" carries some cases, a media attribute line with all parameters set to "-"
no information and should be preferably omitted. In other cases, carries no information and should be preferably omitted. In other
such as the 'lij' media attribute line, the very presence of the cases, such as the 'lij' media attribute line, the very presence of
media attribute line conveys meaning. 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
Rajesh Kumar, Mohamed Mostafa. 24 There are no restrictions placed by RFC 2327 [1] regarding the order
must not contradict each other or the other SDP lines. Inconsistencies of 'a' lines with respect to other 'a' lines. However, these lines
are not to be ignored and should be flagged as errors. Repeated media must not contradict each other or the other SDP lines.
attribute lines can carry additional information. These should not Inconsistencies are not to be ignored and should be flagged as
be inconsistent with each other. errors. Repeated media attribute lines can carry additional
information. These should not be inconsistent with each other.
Applications will selectively use the optional media attribute Applications will selectively use the optional media attribute lines
lines listed below. This is meant to be an exhaustive list for listed below. This is meant to be an exhaustive list for describing
describing the general attributes of ATM bearer networks. the general attributes of ATM bearer networks.
The base specification for SDP, rfc2327 [1], allows the definition The base specification for SDP, RFC 2327 [1], allows the definition f
of new attributes. In keeping with this spirit, some of the attributes new attributes. In keeping with this spirit, some of the attributes
defined in this document can also be used in SDP descriptions of IP defined in this document can also be used in SDP descriptions of IP
and other non-ATM sessions. For example, the 'vsel', 'dsel' and 'fsel' nd other non-ATM sessions. For example, the 'vsel', 'dsel' and
attributes defined below refer generically to codecs. These can be 'fsel' attributes defined below refer generically to codec-s. These
used for service-specific codec negotiation and assignment in non-ATM can be bed for service-specific codec negotiation and assignment in
as well as ATM applications. non-ATM s well as ATM applications.
SDP media attributes defined in this document for use in the ATM SDP media attributes defined in this document for use in the ATM
context are classified as: context are classified as:
* ATM bearer connection attributes (Section 5.6.1) * ATM bearer connection attributes (Section 5.6.1)
* AAL attributes (Section 5.6.2) * AAL attributes (Section 5.6.2)
* Service attributes (Section 5.6.3). * Service attributes (Section 5.6.3).
* Miscellaneous media attributes, that cannot be classified as * Miscellaneous media attributes, that cannot be classified as
ATM, AAL or service attributes (Section 5.6.4). ATM, AAL or service attributes (Section 5.6.4).
In addition to these, the SDP attributes defined in [1] can also In addition to these, the SDP attributes defined in [1] can also be
be used in the ATM context. Examples are: used in the ATM context. Examples are:
* The attributes defined in RFC2327 which allow indication of * The attributes defined in RFC 2327 which allow indication of
the direction in which a session is active. These are the direction in which a session is active. These are
a=sendonly, a=recvonly, a=sendrecv, a=inactive. a=sendonly, a=recvonly, a=sendrecv, a=inactive.
* The 'Ptime' attribute defined in RFC2327. It indicates the * The 'Ptime' attribute defined in RFC 2327. It indicates the
packet period. It is not recommended that this attribute be used packet period. It is not recommended that this attribute be
in ATM applications since packet period information is provided with used in ATM applications since packet period information is
other parameters e.g. the profile type and number in the 'm' line, provided with other parameters (e.g., the profile type and
and the 'vsel', 'dsel' and 'fsel' attributes. Also, for AAL1 number in the 'm' line, and the 'vsel', 'dsel' and 'fsel'
applications, 'ptime' is not applicable and should be flagged as an attributes). Also, for AAL1 applications, 'ptime' is not
error. If used in AAL2 and AAL5 applications, 'ptime' should be applicable and should be flagged as an error. If used in AAL2
consistent with the rest of the SDP description. and AAL5 applications, 'ptime' should be consistent with the
rest of the SDP description.
* The 'fmtp' attribute used to designate format-specific * The 'fmtp' attribute used to designate format-specific
parameters. parameters.
5.6.1 ATM bearer connection attributes 5.6.1 ATM bearer connection attributes
The following is a summary list of the SDP media attributes that can The following is a summary list of the SDP media attributes that can
be used to describe ATM bearer connections. These are detailed in be used to describe ATM bearer connections. These are detailed in
subsequent subsections. subsequent subsections.
* The 'eecid' attribute. This stands for 'end-to-end connection * The 'eecid' attribute. This stands for 'end-to-end connection
identifier'. It provides a means of correlating service-level
Rajesh Kumar, Mohamed Mostafa. 25 connections with underlying ATM bearer connections. In the
identifier'. It provides a means of correlating service-level Q.1901 [36] context, the eecid is synonymous with the bnc-id
connections with underlying ATM bearer connections. (backbone network connection identifier).
In the Q.1901 [36] context, the eecid is synonymous with the
bnc-id (backbone network connection identifier).
* The 'aalType' attribute. This is used to indicate the nature * The 'aalType' attribute. This is used to indicate the nature
of the ATM adaptation layer (AAL). of the ATM adaptation layer (AAL).
* The 'capability' attribute, which indicates the ATM transfer * The 'capability' attribute, which indicates the ATM transfer
capability (ITU nomenclature), synonymous with the ATM Service capability (ITU nomenclature), synonymous with the ATM Service
Category (ATMF nomenclature). Category (ATMF nomenclature).
* The 'qosClass' attribute, which indicates the QoS class of the * The 'qosClass' attribute, which indicates the QoS class of the
ATM bearer connection. ATM bearer connection.
* The 'bcob' attribute, which indicates the broadband connection * The 'bcob' attribute, which indicates the broadband connection
oriented bearer class, and whether end-to-end timing is oriented bearer class, and whether end-to-end timing is
required. required.
* The 'stc' attribute, which indicates susceptibility to * The 'stc' attribute, which indicates susceptibility to
clipping. clipping.
* The 'upcc' attribute, which indicates the user plane connection * The 'upcc' attribute, which indicates the user plane connection
configuration. configuration.
* The 'atmQOSparms' attribute, which is * The 'atmQOSparms' attribute, which is used to describe certain
used to describe certain key ATM QoS parameters. key ATM QoS parameters.
* The 'atmTrfcDesc' attribute, which is * The 'atmTrfcDesc' attribute, which is used to describe ATM
used to describe ATM traffic descriptor parameters. traffic descriptor parameters.
* The 'abrParms' attribute, which is * The 'abrParms' attribute, which is used to describe ABR-
used to describe ABR-specific parameters. These parameters specific parameters. These parameters are per the UNI 4.0
are per the UNI 4.0 signaling specification [5]. signaling specification [5].
* The 'abrSetup' attribute, which is used to indicate the * The 'abrSetup' attribute, which is used to indicate the ABR
ABR parameters needed during call/connection establishment. parameters needed during call/connection establishment.
* The 'bearerType' attribute, which is used to indicate * The 'bearerType' attribute, which is used to indicate whether
whether the underlying bearer is an ATM PVC/SPVC, an ATM SVC, the underlying bearer is an ATM PVC/SPVC, an ATM SVC, or a
or an AAL2 CID connection within an existing ATM SVC/PVC/SPVC. subchannel within an existing ATM SVC/PVC/SPVC.
* The 'lij' attribute, which is used to indicate the * The 'lij' attribute, which is used to indicate the presence of
presence of a connection that uses the Leaf-initiated-join a connection that uses the Leaf-initiated-join capability
capability described in UNI 4.0 [5], and to optionally described in UNI 4.0 [5], and to optionally describe parameters
describe parameters associated with this capability. associated with this capability.
* The 'anycast' attribute, which is used to * The 'anycast' attribute, which is used to indicate the
indicate the applicability of the anycast function described applicability of the anycast function described in UNI 4.0 [5],
in UNI 4.0 [5], and to optionally qualify it with certain and to optionally qualify it with certain parameters.
parameters.
Rajesh Kumar, Mohamed Mostafa. 26 * The 'cache' attribute, which is used to enable SVC caching and
* The 'cache' attribute, which is used to enable to specify an inactivity timer for SVC release.
SVC caching and to specify an inactivity timer for SVC release.
* The 'bearerSigIE' attribute, which can be used to represent * The 'bearerSigIE' attribute, which can be used to represent ITU
ITU Q-series information elements in bit-map form. This is useful Q-series information elements in bit-map form. This is useful
in describing parameters that are not closely coupled to the in describing parameters that are not closely coupled to the
ATM and AAL layers. Examples are the B-HLI and B-LLI IEs specified ATM and AAL layers. Examples are the B-HLI and B-LLI IEs
in ITU Q.2931 [15], and the user-to-user information specified in ITU Q.2931 [15], and the user-to-user information
element described in ITU Q.2957 [48]. element described in ITU Q.2957 [48].
5.6.1.1 The 'eecid' attribute 5.6.1.1 The 'eecid' attribute
The 'eecid' attribute is synonymous with the 4-byte'bnc-id' The 'eecid' attribute is synonymous with the 4-byte 'bnc-id'
parameter used by T1SI, the ATM forum and the ITU (Q.1901) parameter used by T1SI, the ATM forum and the ITU (Q.1901)
standardization effort. The term 'eecid' stands for 'end-to-end standardization effort. The term 'eecid' stands for 'end-to-end
connection identifier', while 'bnc-id' stands for 'backbone network connection identifier', while 'bnc-id' stands for 'backbone network
connection identifier'. The name "backbone" is slightly misleading connection identifier'. The name "backbone" is slightly misleading
since it refers to the entire ATM network including the ATM edge and since it refers to the entire ATM network including the ATM edge and
ATM core networks. In Q.1901 terminology, an ATM "backbone" ATM core networks. In Q.1901 terminology, an ATM "backbone" connects
connects TDM or analog edges. TDM or analog edges.
While the term 'bnc-id' might be used in the bearer signaling plane 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 and in an ISUP (Q.1901) call control plane, SDP session descriptors
use the neutral term 'eecid'. This provides a common SDP baseline use the neutral term 'eecid'. This provides a common SDP baseline
for applications that use ISUP (Q.1901) and applications that use for applications that use ISUP (Q.1901) and applications that use
SIP/SIP+. SIP/SIP+.
Section 5.6.6 depicts the use of the eecid in call establishment Section 5.6.6 depicts the use of the eecid in call establishment
procedures. In these procedures, the eecid is used to correlate procedures. In these procedures, the eecid is used to correlate
service-level calls with SVC set-up requests. service-level calls with SVC set-up requests.
In the forward SVC establishment model, the call-terminating gateway In the forward SVC establishment model, the call-terminating gateway
selects an eecid and transmits it via SDP to the call-originating selects an eecid and transmits it via SDP to the call-originating
gateway. The call originating gateway transmits this eecid to the gateway. The call originating gateway transmits this eecid to the
call terminating gateway via the bearer set-up message (SVC set-up call terminating gateway via the bearer set-up message (SVC set-up or
or Q.2630.1 establish request). Q.2630.1 establish request).
In the backward SVC establishment model, the call-originating gateway In the backward SVC establishment model, the call-originating gateway
selects an eecid and transmits it via SDP to the call-terminating selects an eecid and transmits it via SDP to the call-terminating
gateway. The call terminating gateway transmits this eecid to the gateway. The call terminating gateway transmits this eecid to the
call originating gateway via the bearer set-up message (SVC set-up call originating gateway via the bearer set-up message (SVC set-up or
or Q.2630.1 establish request). Q.2630.1 establish request).
The value of the eecid attribute values needs to be unique within The value of the eecid attribute values needs to be unique within the
the node terminating the SVC set-up but not across multiple node terminating the SVC set-up but not across multiple nodes.
nodes. Hence, the SVC-terminating gateway has complete control Hence, the SVC-terminating gateway has complete control over using
over using and releasing values of this parameter. The eecid and releasing values of this parameter. The eecid attribute is used
attribute is used to correlate, one-to-one, received bearer set-up to correlate, one-to-one, received bearer set-up requests with
requests with service-level call control signaling. service-level call control signaling.
Within an SDP session description, the eecid attribute is used as Within an SDP session description, the eecid attribute is used as
follows: follows:
Rajesh Kumar, Mohamed Mostafa. 27 a=eecid:<eecid>
a=eecid:<eecid>
where <eecid> consists of up to 8 hex digits (equivalent to 4 where <eecid> consists of up to 8 hex digits (equivalent to 4
octets). Since this is always represented in hex, the "0x" octets). Since this is always represented in hex, the "0x" prefix
prefix shall not be used. shall not be used.
Within the text representation of the <eecid> parameter, hex digits Within the text representation of the <eecid> parameter, hex digits
to the left are more significant than hex digits to the right to the left are more significant than hex digits to the right
(Section 2.2). (Section 2.2).
This SDP document does not specify how the eecid (synonymous This SDP document does not specify how the eecid (synonymous with
with bnc-id) is to be communicated through bearer signaling bnc-id) is to be communicated through bearer signaling (Q.931, UNI,
(Q.931, UNI, PNNI, AINI, IISP, proprietary signaling equivalent, PNNI, AINI, IISP, proprietary signaling equivalent, Q.2630.1). This
Q.2630.1). This is a task of these bearer signaling protocols. is a task of these bearer signaling protocols. However, the
However, the following informative statements are made to following informative statements are made to convey a sense of the
convey a sense of the interoperability that is a goal of interoperability that is a goal of current standardization efforts:
current standardization efforts:
- ITU Q.2941.3 and the ATMF each recommend the use of the - ITU Q.2941.3 and the ATMF each recommend the use of the GIT IE for
GIT IE for carrying the eecid (synonymous with bnc-id) carrying the eecid (synonymous with bnc-id) in the set-up message
in the set-up message of ATM signaling protocols (Q.2931, of ATM signaling protocols (Q.2931, UNI 4.0, PNNI, AINI, IISP).
UNI 4.0, PNNI, AINI, IISP). The coding for carrying the eecid (bnc-id) The coding for carrying the eecid (bnc-id) in the GIT IE is
in the GIT IE is defined in ITU Q.2941.3 and accepted by the ATM forum. defined in ITU Q.2941.3 and accepted by the ATM forum.
- Another alternate method is to use the called party - Another alternate method is to use the called party subaddress IE.
subaddress IE. In some networks, this might be considered In some networks, this might be considered a protocol violation
a protocol violation and is not the recommended means of carrying and is not the recommended means of carrying the eecid (bnc-id).
the eecid (bnc-id). The GIT IE is the preferred method of The GIT IE is the preferred method of transporting the eecid
transporting the eecid (bnc-id) in ATM signaling messages. (bnc-id) in ATM signaling messages.
- The establish request (ERQ) message of the Q.2630.1 [37] - The establish request (ERQ) message of the Q.2630.1 [37] signaling
signaling protocol can use the SUGR (Served User Generated protocol can use the SUGR (Served User Generated Reference) IE to
Reference) IE to transport the eecid (bnc-id). transport the eecid (bnc-id).
The node assigning the eecid can release and re-use it when it The node assigning the eecid can release and re-use it when it
receives a Q.2931 [15] set-up message or a Q.2630.1 [37] receives a Q.2931 [15] set-up message or a Q.2630.1 [37] establish
establish request message containing the eecid. request message containing the eecid.
However, in both cases (backward and forward models), However, in both cases (backward and forward models), it is
it is recommended that this eecid be retained until the connection recommended that this eecid be retained until the connection
terminates. Since the eecid space is large enough, it is not terminates. Since the eecid space is large enough, it is not
necessary to release it as soon as possible. necessary to release it as soon as possible.
5.6.1.2 The 'aalType' attribute 5.6.1.2 The 'aalType' attribute
When present, the 'aalType' attribute is used to indicate When present, the 'aalType' attribute is used to indicate the ATM
the ATM adaptation layer. If this information is redundant adaptation layer. If this information is redundant with the 'm'
with the 'm' line, it can be omitted. The format of the line, it can be omitted. The format of the 'aalType' media attribute
'aalType' media attribute line is as follows: line is as follows:
Rajesh Kumar, Mohamed Mostafa. 28 a=aalType: <aalType>
a=aalType: <aalType>
Here, <aalType> can take on the following string values: Here, <aalType> can take on the following string values: "AAL1",
"AAL1", "AAL1_SDT", "AAL1_UDT", "AAL2", "AAL3/4", "AAL5" "AAL1_SDT", "AAL1_UDT", "AAL2", "AAL3/4", "AAL5" and
and "USER_DEFINED_AAL". Note that "AAL3/4" and "USER DEFINED AAL" "USER_DEFINED_AAL". Note that "AAL3/4" and "USER DEFINED AAL" are
are not addressed in this document. not addressed in this document.
5.6.1.3 The 'capability' attribute 5.6.1.3 The 'capability' attribute
When present, the 'capability' attribute indicates the ATM Transfer When present, the 'capability' attribute indicates the ATM Transfer
Capability described in ITU I.371 [28], equivalent to the ATM Service Capability described in ITU I.371 [28], equivalent to the ATM Service
Category described in the UNI 4.1 Traffic Management specification [6]. Category described in the UNI 4.1 Traffic Management specification
[6].
The 'capability' media attribute line is structured in one of The 'capability' media attribute line is structured in one of the
the following ways: following ways:
a=capability:<asc> <subtype> a=capability:<asc> <subtype>
a=capability:<atc> <subtype> a=capability:<atc> <subtype>
Possible values of the <asc> are enumerated below: Possible values of the <asc> are enumerated below:
"CBR", "nrt-VBR", "rt-VBR", "UBR", "ABR", "GFR" "CBR", "nrt-VBR", "rt-VBR", "UBR", "ABR", "GFR"
Possible values of the <atc> are enumerated below: Possible values of the <atc> are enumerated below:
"DBR","SBR","ABT/IT","ABT/DT","ABR" "DBR","SBR","ABT/IT","ABT/DT","ABR"
Some applications might use non-standard <atc> and <asc> values not Some applications might use non-standard <atc> and <asc> values not
listed above. Equipment designers will need to agree on the meaning and listed above. Equipment designers will need to agree on the meaning
implications of non-standard transfer capabilities / service capabilities. and implications of non-standard transfer capabilities / service
capabilities.
The <subtype> field essentially serves as a subscript to the <asc> The <subtype> field essentially serves as a subscript to the <asc>
and <atc> fields. In general, it can take on any integer value, or the and <atc> fields. In general, it can take on any integer value, or
"-" value indicating that it does not apply or that the underlying data is the "-" value indicating that it does not apply or that the
to be known by other means, such as provisioning. underlying data is to be known by other means, such as provisioning.
For an <asc> value of CBR and an <atc> value of DBR, the <subtype> For an <asc> value of CBR and an <atc> value of DBR, the <subtype>
field can be assigned values from Table 4-6 of ITU Q.2931 [15]. These are: field can be assigned values from Table 4-6 of ITU Q.2931 [15].
These are:
<asc>/<atc> <subtype> Meaning <asc>/<atc> <subtype> Meaning
"CBR"/"DBR" 1 Voiceband signal transport "CBR"/"DBR" 1 Voiceband signal transport
(ITU G.711, G.722, I.363) (ITU G.711, G.722, I.363)
"CBR"/"DBR" 2 Circuit transport (ITU I.363) "CBR"/"DBR" 2 Circuit transport (ITU I.363)
"CBR"/"DBR" 4 High-quality audio signal transport "CBR"/"DBR" 4 High-quality audio signal transport
(ITU I.363) (ITU I.363)
"CBR"/"DBR" 5 Video signal transport (ITU I.363) "CBR"/"DBR" 5 Video signal transport (ITU I.363)
Note that [15] does not define a <subtype> value of 3. Note that [15] does not define a <subtype> value of 3.
For other values of the <asc> and <atc> parameters, the following For other values of the <asc> and <atc> parameters, the following
Rajesh Kumar, Mohamed Mostafa. 29
values can be assigned to the <subtype> field, based on [6] and [28]. values can be assigned to the <subtype> field, based on [6] and [28].
<asc>/<atc> <subtype> Meaning <asc>/<atc> <subtype> Meaning
nrt-VBR 1 nrt-VBR.1 nrt-VBR 1 nrt-VBR.1
nrt-VBR 2 nrt-VBR.2 nrt-VBR 2 nrt-VBR.2
nrt-VBR 3 nrt-VBR.3 nrt-VBR 3 nrt-VBR.3
rt-VBR 1 rt-VBR.1 rt-VBR 1 rt-VBR.1
rt-VBR 2 rt-VBR.2 rt-VBR 2 rt-VBR.2
rt-VBR 3 rt-VBR.3 rt-VBR 3 rt-VBR.3
UBR 1 UBR.1 UBR 1 UBR.1
UBR 2 UBR.2 UBR 2 UBR.2
GFR 1 GFR.1 GFR 1 GFR.1
GFR 2 GRR.2 GFR 2 GRR.2
SBR 1 SBR1 SBR 1 SBR1
SBR 2 SBR2 SBR 2 SBR2
SBR 3 SBR3 SBR 3 SBR3
It is beyond the scope of this specification to examine the It is beyond the scope of this specification to examine the
equivalence of some of the ATMF and ITU definitions. These need to equivalence of some of the ATMF and ITU definitions. These need to
be recognized from the ATMF and ITU source specifications and exploited, be recognized from the ATMF and ITU source specifications and
as much as possible, to simplify ATM node design. exploited, as much as possible, to simplify ATM node design.
When the bearer connection is a single AAL2 CID connection within a When the bearer connection is a single AAL2 CID connection within a
multiplexed AAL2 VC, the 'capability' attribute does not apply. multiplexed AAL2 VC, the 'capability' attribute does not apply.
5.6.1.4 The 'qosClass' attribute 5.6.1.4 The 'qosClass' attribute
When present, the 'qosClass' attribute indicates the QoS class When present, the 'qosClass' attribute indicates the QoS class
specified in ITU I.2965.1 [34]. specified in ITU I.2965.1 [34].
The 'qosClass' media attribute line is structured as follows: The 'qosClass' media attribute line is structured as follows:
a=qosClass:<qosClass> a=qosClass:<qosClass>
Here, <qosClass> is an integer in the range 0 - 5. Here, <qosClass> is an integer in the range 0 - 5.
<qosClass> Meaning <qosClass> Meaning
0 Default QoS 0 Default QoS
1 Stringent 1 Stringent
2 Tolerant 2 Tolerant
3 Bi-level 3 Bi-level
4 Unbounded 4 Unbounded
5 Stringent bi-level 5 Stringent bi-level
5.6.1.5 The 'bcob' attribute 5.6.1.5 The 'bcob' attribute
When present, the 'bcob' attribute represents the broadband
Rajesh Kumar, Mohamed Mostafa. 30 When present, the 'bcob' attribute represents the broadband
connection oriented bearer class defined in [5], [15] connection oriented bearer class defined in [5], [15] and [33]. It
and [33]. It can also be used to indicate whether end-to-end can also be used to indicate whether end-to-end timing is required.
timing is required.
The 'bcob' media attribute line is structured as follows: The 'bcob' media attribute line is structured as follows:
a=bcob:<bcob> <eetim> a=bcob:<bcob> <eetim>
Here, <bcob> is the decimal or hex representation of a 5-bit field. Here, <bcob> is the decimal or hex representation of a 5-bit field.
The following values are currently defined: The following values are currently defined:
<bcob> Meaning <bcob> Meaning
0x01 BCOB-A 0x01 BCOB-A
0x03 BCOB-C 0x03 BCOB-C
0x05 Frame relaying bearer service 0x05 Frame relaying bearer service
0x10 BCOB-X 0x10 BCOB-X
0x18 BCOB-VP (transparent VP service) 0x18 BCOB-VP (transparent VP service)
The <eetim> parameter can be assigned a value of "on" or "off" The <eetim> parameter can be assigned a value of "on" or "off"
depending on whether end-to-end timing is required or not (Table depending on whether end-to-end timing is required or not (Table 4-8
4-8 of [15]). of [15]).
Either of these parameters can be left unspecified by setting it Either of these parameters can be left unspecified by setting it to a
to a "-". A 'bcob' media attribute line with all parameters set to "-". A 'bcob' media attribute line with all parameters set to "-"
"-" carries no information and should be omitted. carries no information and should be omitted.
5.6.1.6 The 'stc' attribute 5.6.1.6 The 'stc' attribute
When present, the 'stc' attribute represents susceptibility When present, the 'stc' attribute represents susceptibility to
to clipping. The 'stc' media attribute line is structured as clipping. The 'stc' media attribute line is structured as follows:
follows:
a=stc:<stc> a=stc:<stc>
Here, <stc> is the decimal equivalent of a 2-bit field. Currently, Here, <stc> is the decimal equivalent of a 2-bit field. Currently,
all values are unused and reserved with the following exceptions: all values are unused and reserved with the following exceptions:
<stc> value Binary Equivalent Meaning <stc> value Binary Equivalent Meaning
0 00 Not susceptible to clipping 0 00 Not susceptible to clipping
1 01 Susceptible to clipping 1 01 Susceptible to clipping
Rajesh Kumar, Mohamed Mostafa. 31 5.6.1.7 The 'upcc' attribute
5.6.1.7 The 'upcc' attribute
When present, the 'upcc' attribute represents the user plane When present, the 'upcc' attribute represents the user plane
connection configuration. The 'upcc' media attribute line is connection configuration. The 'upcc' media attribute line is
structured as follows: structured as follows:
a=upcc:<upcc> a=upcc:<upcc>
Here, <upcc> is the decimal equivalent of a 2-bit field. Currently, Here, <upcc> is the decimal equivalent of a 2-bit field. Currently,
all values are unused and reserved with the following exceptions: all values are unused and reserved with the following exceptions:
<upcc> value Binary Equivalent Meaning <upcc> value Binary Equivalent Meaning
0 00 Point to point 0 00 Point to point
1 01 Point to multipoint 1 01 Point to multipoint
5.6.1.8 The 'atmQOSparms' attribute 5.6.1.8 The 'atmQOSparms' attribute
When present, the 'atmQOSparms' attribute is used to describe When present, the 'atmQOSparms' attribute is used to describe certain
certain key ATM QoS parameters. key ATM QoS parameters.
The 'atmQOSparms' media attribute line is structured as follows: The 'atmQOSparms' media attribute line is structured as follows:
a=atmQOSparms:<directionFlag><cdvType><acdv><ccdv><eetd><cmtd><aclr> a=atmQOSparms:<directionFlag><cdvType><acdv><ccdv><eetd><cmtd><aclr>
The <directionFlag> can be assigned the following string values: "f", The <directionFlag> can be assigned the following string values: "f",
"b" and "fb". "f" and "b" indicate the forward and backward "b" and "fb". "f" and "b" indicate the forward and backward
directions respectively. "fb" refers to both directions (forward and directions respectively. "fb" refers to both directions (forward and
backward). Conventions for the forward and backward directions backward). Conventions for the forward and backward directions are
are per section 2.3. per section 2.3.
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 The <cdvType> parameter can take on the string values of "PP" and
and cumulative CDVs respectively. These are expressed in units "2P". These refer to the peak-to-peak and two-point CDV as defined
of microseconds and represented as the decimal equivalent in UNI 4.0 [5] and ITU Q.2965.2 [35] respectively.
of a 24-bit field. 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 transit delay parameters, <eetd> and <cmtd>, refer to the The CDV parameters, <acdv> and <ccdv>, refer to the acceptable and
end-to-end and cumulative transit delays respectively in cumulative CDVs respectively. These are expressed in units of
milliseconds. These are represented as the decimal equivalents microseconds and represented as the decimal equivalent of a 24-bit
of 16-bit fields. These parameters are defined in Q.2965.2 [35], field. These use the cell loss ratio, <aclr>, as the "alpha"
UNI 4.0 [5] and Q.2931 [15]. quantiles defined in the ATMF TM 4.1 specification [6] and in ITU
I.356 [47].
The <aclr> parameter refers to forward and backward acceptable The transit delay parameters, <eetd> and <cmtd>, refer to the end-
cell loss ratios. This is the ratio between the number of cells to-end and cumulative transit delays respectively in milliseconds.
lost and the number of cells transmitted. It is expressed as the decimal These are represented as the decimal equivalents of 16-bit fields.
These parameters are defined in Q.2965.2 [35], UNI 4.0 [5] and Q.2931
[15].
Rajesh Kumar, Mohamed Mostafa. 32 The <aclr> parameter refers to forward and backward acceptable cell
equivalent of an 8-bit field. This field expresses an order of loss ratios. This is the ratio between the number of cells lost and
magnitude n, where n is an integer in the range 1-15. The Cell Loss the number of cells transmitted. It is expressed as the decimal
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. Ratio takes on the value 10 raised to the power of minus n.
The <directionFlag> is always specified. Except for the <directionFlag>, The <directionFlag> is always specified. Except for the
the remaining parameters can be set to "-" to indicate that they are <directionFlag>, the remaining parameters can be set to "-" to
not specified, inapplicable or implied. However, there must be some indicate that they are not specified, inapplicable or implied.
specified parameters for the line to be useful in an SDP description. However, there must be some specified parameters for the line to be
useful in an SDP description.
There can be several 'atmQOSparms' lines in an SDP description. There can be several 'atmQOSparms' lines in an SDP description.
An example use of these attributes for an rt-VBR, single-CID AAL2 An example use of these attributes for an rt-VBR, single-CID AAL2
voice VC is: voice VC is:
a=atmQOSparms:f PP 8125 3455 32000 - 11 a=atmQOSparms:f PP 8125 3455 32000 - 11
a=atmQOSparms:b PP 4675 2155 18000 - 12 a=atmQOSparms:b PP 4675 2155 18000 - 12
This implies a forward acceptable peak-to-peak CDV of 8.125 ms, a 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 backward acceptable peak-to-peak CDV of 4.675 ms, forward cumulative
cumulative peak-to-peak CDV of 3.455 ms, a backward cumulative peak-to-peak CDV of 3.455 ms, a backward cumulative peak-to-peak CDV
peak-to-peak CDV of 2.155 ms, a forward end-to-end of 2.155 ms, a forward end-to-end transit delay of 32 ms, a backward
transit delay of 32 ms, a backward end-to-end end-to-end transit delay of 18 ms, an unspecified forward cumulative
transit delay of 18 ms, an unspecified forward cumulative transit delay, an unspecified backward cumulative transit delay, a
transit delay, an unspecified backward cumulative transit forward cell loss ratio of 10 raised to minus 11 and a backward cell
delay, a forward cell loss ratio of 10 raised to minus 11 and a loss ratio of 10 to the minus 12.
backward cell loss ratio of 10 to the minus 12.
An example of specifying the same parameters for the forward An example of specifying the same parameters for the forward and
and backward directions is: backward directions is:
a=atmQOSparms:fb PP 8125 3455 32000 - 11 a=atmQOSparms:fb PP 8125 3455 32000 - 11
This implies a forward and backward acceptable peak-to-peak CDV of This implies a forward and backward acceptable peak-to-peak CDV of
8.125 ms, a forward and backward cumulative peak-to-peak CDV of 3.455 ms, 8.125 ms, a forward and backward cumulative peak-to-peak CDV of 3.455
a forward and backward end-to-end transit delay of 32 ms, ms, a forward and backward end-to-end transit delay of 32 ms, an
an unspecified cumulative transit delay in the forward and unspecified cumulative transit delay in the forward and backward
backward directions, and a cell loss ratio of 10 raised to minus directions, and a cell loss ratio of 10 raised to minus 11 in the
11 in the forward and backward directions. forward and backward directions.
5.6.1.9 The 'atmTrfcDesc' attribute 5.6.1.9 The 'atmTrfcDesc' attribute
When present, the 'atmTrfcDesc' attribute is used to indicate When present, the 'atmTrfcDesc' attribute is used to indicate ATM
ATM traffic descriptor parameters. There can be several 'atmTrfcDesc' traffic descriptor parameters. There can be several 'atmTrfcDesc'
lines in an SDP description. lines in an SDP description.
The 'atmTrfcDesc' media attribute line is structured as follows: The 'atmTrfcDesc' media attribute line is structured as follows:
a=atmTrfcDesc:<directionFlag><clpLvl>
<pcr><scr><mbs><cdvt><mcr><mfs><fd><te>
The <directionFlag> can be assigned the following string values: "f", a=atmTrfcDesc:<directionFlag><clpLvl>
"b" and "fb". "f" and "b" indicate the forward and backward <pcr><scr><mbs><cdvt><mcr><mfs><fd><te>
Rajesh Kumar, Mohamed Mostafa. 33 The <directionFlag> can be assigned the following string values: "f",
directions respectively. "fb" refers to both directions (forward and "b" and "fb". "f" and "b" indicate the forward and backward
backward). Conventions for the forward and backward directions directions respectively. "fb" refers to both directions (forward and
are per section 2.3. backward). Conventions for the forward and backward directions are
per section 2.3.
The <directionFlag> is always specified. Except for the <directionFlag>, The <directionFlag> is always specified. Except for the
the remaining parameters can be set to "-" to indicate that they are <directionFlag>, the remaining parameters can be set to "-" to
not specified, inapplicable or implied. However, there must be some indicate that they are not specified, inapplicable or implied.
specified parameters for the line to be useful in an SDP description. However, there must be some specified parameters for the line to be
useful in an SDP description.
The <clpLvl> (CLP level) parameter indicates whether the rates and The <clpLvl> (CLP level) parameter indicates whether the rates and
bursts described in these media attribute lines apply to CLP bursts described in these media attribute lines apply to CLP values
values of 0 or (0+1). It can take on the following string values: of 0 or (0+1). It can take on the following string values: "0",
"0", "0+1" and "-". If rates and bursts for both <clpLvl> values are to "0+1" and "-". If rates and bursts for both <clpLvl> values are to
be described, then it is necessary to use two separate be described, then it is necessary to use two separate media
media attribute lines for each direction in the same session attribute lines for each direction in the same session descriptor.
descriptor. If the <clpLvl> parameter is set to "-", then it If the <clpLvl> parameter is set to "-", then it implies that the CLP
implies that the CLP parameter is known by other means such as default, parameter is known by other means such as default, MIB provisioning
MIB provisioning etc. etc.
The meaning, units and applicability of the remaining parameters The meaning, units and applicability of the remaining parameters are
are per [6] and [28]: per [6] and [28]:
Rajesh Kumar, Mohamed Mostafa. 34
PARAMETER MEANING UNITS APPLICABILITY PARAMETER MEANING UNITS APPLICABILITY
<pcr> PCR Cells/ CBR, rt-VBR, nrt-VBR, <pcr> PCR Cells/ CBR, rt-VBR, nrt-VBR,
second ABR, UBR, GFR; second ABR, UBR, GFR;
CLP=0,0+1 CLP=0,0+1
<scr> SCR Cells/ rt-VBR, nrt-VBR; <scr> SCR Cells/ rt-VBR, nrt-VBR;
second CLP=0,0+1 second CLP=0,0+1
<mbs> MBS Cells rt-VBR, nrt-VBR, <mbs> MBS Cells rt-VBR, nrt-VBR,
GFR; GFR;
CLP=0,0+1 CLP=0,0+1
<cdvt> CDVT Microsec. CBR, rt-VBR, nrt-VBR, <cdvt> CDVT Microsec. CBR, rt-VBR, nrt-VBR,
ABR, UBR, GFR; ABR, UBR, GFR;
CLP=0,0+1 CLP=0,0+1
<mcr> MCR Cells/ ABR,GFR; <mcr> MCR Cells/ ABR,GFR;
second CLP=0+1 second CLP=0+1
<mfs> MFS Cells GFR; <mfs> MFS Cells GFR;
CLP=0,0+1 CLP=0,0+1
<fd> Frame "on"/"off" CBR, rt-VBR, nrt-VBR, <fd> Frame "on"/"off" CBR, rt-VBR, nrt-VBR,
Discard ABR, UBR, GFR; Discard ABR, UBR, GFR;
Allowed CLP=0+1 Allowed CLP=0+1
<te> CLP "on"/"off" CBR, rt-VBR, nrt-VBR, <te> CLP "on"/"off" CBR, rt-VBR, nrt-VBR,
tagging ABR, UBR, GFR; tagging ABR, UBR, GFR;
Enabled CLP=0 Enabled CLP=0
<fd> indicates that frame discard is permitted. It can take on the string <fd> indicates that frame discard is permitted. It can take on the
values of "on" or "off". Note that, in the GFR case, frame discard string values of "on" or "off". Note that, in the GFR case, frame
is always enabled. Hence, this subparameter can be set to "-" in discard is always enabled. Hence, this subparameter can be set to
the case of GFR. Since the <fd> parameter is independent "-" in the case of GFR. Since the <fd> parameter is independent of
of CLP, it is meaningful in the case when <clpLvl> = "0+1". CLP, it is meaningful in the case when <clpLvl> = "0+1". It should
It should be set to "-" for the case when <clpLvl> = "0". be set to "-" for the case when <clpLvl> = "0".
<te> (tag enable) indicates that CLP tagging is allowed. <te> (tag enable) indicates that CLP tagging is allowed. These can
These can take on the string values of "on" or "off". take on the string values of "on" or "off". Since the <te> parameter
Since the <te> parameter applies only to cells with applies only to cells with a CLP of 0, it is meaningful in the case
a CLP of 0, it is meaningful in the case when <clpLvl> = "0". when <clpLvl> = "0". It should be set to "-" for the case when
It should be set to "-" for the case when <clpLvl> = "0+1". <clpLvl> = "0+1".
An example use of these media attribute lines for an rt-VBR, An example use of these media attribute lines for an rt-VBR, single-
single-CID AAL2 voice VC is: CID AAL2 voice VC is:
Rajesh Kumar, Mohamed Mostafa. 35 a=atmTrfcDesc:f 0+1 200 100 20 - - - on -
a=atmTrfcDesc:f 0+1 200 100 20 - - - on - a=atmTrfcDesc:f 0 200 80 15 - - - - off
a=atmTrfcDesc:f 0 200 80 15 - - - - off a=atmTrfcDesc:b 0+1 200 100 20 - - - on -
a=atmTrfcDesc:b 0+1 200 100 20 - - - on - a=atmTrfcDesc:b 0 200 80 15 - - - - off
a=atmTrfcDesc:b 0 200 80 15 - - - - off
This implies a forward and backward PCR of 200 cells per second This implies a forward and backward PCR of 200 cells per second all
all cells regardless of CLP, forward and backward PCR of 200 cells cells regardless of CLP, forward and backward PCR of 200 cells per
per second for cells with CLP=0, a forward and backward SCR of 100 second for cells with CLP=0, a forward and backward SCR of 100 cells
cells per second for all cells regardless of CLP, a forward and per second for all cells regardless of CLP, a forward and backward
backward SCR of 80 cells per second for cells with CLP=0, SCR of 80 cells per second for cells with CLP=0, a forward and
a forward and backward MBS of 20 cells for all cells regardless backward MBS of 20 cells for all cells regardless of CLP, a forward
of CLP, a forward and backward MBS of 15 cells for cells with and backward MBS of 15 cells for cells with CLP=0, an unspecified
CLP=0, an unspecified CDVT which can be known by other means, CDVT which can be known by other means, and an MCR and MFS which are
and an MCR and MFS which are unspecified because they are unspecified because they are inapplicable. Frame discard is enabled
inapplicable. Frame discard is enabled in both the forward and in both the forward and backward directions. Tagging is not enabled
backward directions. Tagging is not enabled in either direction. in either direction.
The <pcr>, <scr>, <mbs>, <cdvt>, <mcr> and <mfs> are represented as The <pcr>, <scr>, <mbs>, <cdvt>, <mcr> and <mfs> are represented as
decimal integers, with range as defined in Section 6. See section 2.2 decimal integers, with range as defined in Section 6. See section
regarding the omission of leading zeros in decimal representations. 2.2 regarding the omission of leading zeros in decimal
representations.
5.6.1.10 The 'abrParms' attribute 5.6.1.10 The 'abrParms' attribute
When present, the 'abrParms' attribute is used to indicate the When present, the 'abrParms' attribute is used to indicate the '
'additional' ABR parameters specified in the UNI additional' ABR parameters specified in the UNI 4.0 signaling
4.0 signaling specification [5]. There can be several 'abrParms' specification [5]. There can be several 'abrParms' lines in an SDP
lines in an SDP description. description.
The 'abrParms' media attribute line is structured as follows: The 'abrParms' media attribute line is structured as follows:
a=abrParms:<directionFlag><nrm><trm><cdf><adtf> a=abrParms:<directionFlag><nrm><trm><cdf><adtf>
The <directionFlag> can be assigned the following string values: "f", The <directionFlag> can be assigned the following string values: "f",
"b" and "fb". "f" and "b" indicate the forward and backward "b" and "fb". "f" and "b" indicate the forward and backward
directions respectively. "fb" refers to both directions (forward and directions respectively. "fb" refers to both directions (forward and
backward). Conventions for the forward and backward directions backward). Conventions for the forward and backward directions are
are per section 2.3. per section 2.3.
The <directionFlag> is always specified. Except for the <directionFlag>, The <directionFlag> is always specified. Except for the
the remaining parameters can be set to "-" to indicate that they are <directionFlag>, the remaining parameters can be set to "-" to
not specified, inapplicable or implied. However, there must be some indicate that they are not specified, inapplicable or implied.
specified parameters for the line to be useful in an SDP description. However, there must be some specified parameters for the line to be
useful in an SDP description.
These parameters are mapped into the ABR service parameters in These parameters are mapped into the ABR service parameters in [6] in
[6] in the manner described below. These parameters can be the manner described below. These parameters can be represented in
represented in SDP as decimal integers, with fractions permitted SDP as decimal integers, with fractions permitted for some. Details
for some. Details of the meaning, units and applicability of of the meaning, units and applicability of these parameters are in
these parameters are in [5] and [6]. [5] and [6].
In SDP, these parameters are represented as the decimal or hex In SDP, these parameters are represented as the decimal or hex
equivalent of the binary fields mentioned below. equivalent of the binary fields mentioned below.
Rajesh Kumar, Mohamed Mostafa. 36 +-----------+----------------------------------+-----------------------+
+-----------+----------------------------------+-----------------------+ | PARAMETER | MEANING | FIELD SIZE |
| PARAMETER | MEANING | FIELD SIZE | +-----------+----------------------------------+-----------------------+
+-----------+----------------------------------+-----------------------+ | <nrm> | Maximum number of cells per | 3 bits |
| <nrm> | Maximum number of cells per | 3 bits | | | forward Resource Management cell | |
| | forward Resource Management cell | | +-----------+----------------------------------+-----------------------+
+-----------+----------------------------------+-----------------------+ | <trm> | Maximum time between | 3 bits |
| <trm> | Maximum time between | 3 bits | | | forward Resource Management cells| |
| | forward Resource Management cells| | +-----------+----------------------------------+-----------------------+
+-----------+----------------------------------+-----------------------+ | <cdf> | Cutoff Decrease Factor | 3 bits |
| <cdf> | Cutoff Decrease Factor | 3 bits | +-----------+----------------------------------+-----------------------+
+-----------+----------------------------------+-----------------------+ | <adtf> | Allowed Cell Rate Decrease | 10 bits |
| <adtf> | Allowed Cell Rate Decrease | 10 bits | | | Time Factor | |
| | Time Factor | | +-----------+----------------------------------+-----------------------+
+-----------+----------------------------------+-----------------------+
-----------+----------------------------------+-----------------------+
5.6.1.11 The 'abrSetup' attribute 5.6.1.11 The 'abrSetup' attribute
When present, the 'abrSetup' attribute is used to indicate the When present, the 'abrSetup' attribute is used to indicate the ABR
ABR parameters needed during call/connection establishment (Section parameters needed during call/connection establishment (Section
10.1.2.2 of the UNI 4.0 signaling specification [5]). This line 10.1.2.2 of the UNI 4.0 signaling specification [5]). This line is
is structured as follows: structured as follows:
a=abrSetup:<ficr><bicr><ftbe><btbe><crmrtt><frif><brif><frdf><brdf> a=abrSetup:<ficr><bicr><ftbe><btbe><crmrtt><frif><brif><frdf><brdf>
These parameters are defined as follows: These parameters are defined as follows:
Rajesh Kumar, Mohamed Mostafa. 37 +-----------+----------------------------------+-----------------------+
+-----------+----------------------------------+-----------------------+ | PARAMETER | MEANING | REPRESENTATION |
| PARAMETER | MEANING | REPRESENTATION | +-----------+----------------------------------+-----------------------+
+-----------+----------------------------------+-----------------------+ | <ficr> | Forward Initial Cell Rate | Decimal equivalent |
| <ficr> | Forward Initial Cell Rate | Decimal equivalent | | | (Cells per second) | of 24-bit field |
| | (Cells per second) | of 24-bit field | +-----------+----------------------------------+-----------------------+
+-----------+----------------------------------+-----------------------+ | <bicr> | Backward Initial Cell Rate | Decimal equivalent |
| <bicr> | Backward Initial Cell Rate | Decimal equivalent | | | (Cells per second) | of 24-bit field |
| | (Cells per second) | of 24-bit field | +-----------+----------------------------------+-----------------------+
+-----------+----------------------------------+-----------------------+ | <ftbe> | Forward transient buffer | Decimal equivalent |
| <ftbe> | Forward transient buffer | Decimal equivalent | | | exposure (Cells) | of 24-bit field |
| | exposure (Cells) | of 24-bit field | +-----------+----------------------------------+-----------------------+
+-----------+----------------------------------+-----------------------+ | <btbe> | Backward transient buffer | Decimal equivalent |
| <btbe> | Backward transient buffer | Decimal equivalent | | | exposure (Cells) | of 24-bit field |
| | exposure (Cells) | of 24-bit field | +-----------+----------------------------------+-----------------------+
+-----------+----------------------------------+-----------------------+ | <crmrtt> | Cumulative RM round-trip time | Decimal equivalent |
| <crmrtt> | Cumulative RM round-trip time | Decimal equivalent | | | (Microseconds) | of 24-bit field |
| | (Microseconds) | of 24-bit field | +-----------+----------------------------------+-----------------------+
+-----------+----------------------------------+-----------------------+ | <frif> | Forward rate increase factor | Decimal integer |
| <frif> | Forward rate increase factor | Decimal integer | | | (used to derive cell count) | 0 -15 |
| | (used to derive cell count) | 0 -15 | +-----------+----------------------------------+-----------------------+
+-----------+----------------------------------+-----------------------+ | <brif> | Backward rate increase factor | Decimal integer |
| <brif> | Backward rate increase factor | Decimal integer | | | (used to derive cell count) | 0 -15 |
| | (used to derive cell count) | 0 -15 | +-----------+----------------------------------+-----------------------+
+-----------+----------------------------------+-----------------------+ | <frdf> | Forward rate decrease factor | Decimal integer |
| <frdf> | Forward rate decrease factor | Decimal integer | | | (used to derive cell count) | 0 -15 |
| | (used to derive cell count) | 0 -15 | +-----------+----------------------------------+-----------------------+
+-----------+----------------------------------+-----------------------+ | <brdf> | Backward rate decrease factor | Decimal integer |
| <brdf> | Backward rate decrease factor | Decimal integer | | | (used to derive cell count) | 0 -15 |
| | (used to derive cell count) | 0 -15 | +-----------+----------------------------------+-----------------------+
+-----------+----------------------------------+-----------------------+
See Section 2.3 for a definition of the terms 'forward' and 'backward'. -----------+----------------------------------+-----------------------+
See Section 2.3 for a definition of the terms 'forward' and
'backward'.
If any of these parameters in the 'abrSetup' media attribute line If any of these parameters in the 'abrSetup' media attribute line is
is not specified, is inapplicable or is implied, then it is set to h not specified, is inapplicable or is implied, then it is set to h "-
"-". ".
5.6.1.12 The 'bearerType' attribute 5.6.1.12 The 'bearerType' attribute
When present, the 'bearerType' attribute is used to indicate When present, the 'bearerType' attribute is used to indicate whether
whether the underlying bearer is an ATM PVC/SPVC, an ATM SVC, the underlying bearer is an ATM PVC/SPVC, an ATM SVC, or a subchannel
or an AAL2 CID connection within an existing ATM PVC/SPVC. within an existing ATM SVC/PVC/SPVC. Additionally, for ATM SVCs and
Additionally, for ATM SVCs and AAL2 CID connections, the AAL2 CID connections, the 'bearerType' attribute can be used to
'bearerType' attribute can be used to indicate whether the indicate whether the media gateway initiates connection set-up via
media gateway initiates connection set-up via bearer signaling bearer signaling (Q.2931-based or Q.2630.1 based). The format of the
(Q.2931-based or Q.2630.1 based). The format of the 'bearerType' 'bearerType' media attribute line is as follows:
media attribute line is as follows:
a=bearerType: <bearerType> <localInitiation> a=bearerType: <bearerType> <localInitiation>
The <bearerType> field can take on the following string values: The <bearerType> field can take on the following string values:
Rajesh Kumar, Mohamed Mostafa. 38 "PVC", "SVC", "CID", with semantics as defined above. Here, "PVC"
"PVC", "SVC", "CID", with semantics as defined above. Here, "PVC"
includes both the PVC and SPVC cases. includes both the PVC and SPVC cases.
In the case when the underlying bearer is a PVC/SPVC, or a CID In the case when the underlying bearer is a PVC/SPVC, or a CID
assigned by the MGC rather than through bearer signaling, the assigned by the MGC rather than through bearer signaling, the
<localInitiation> flag can be omitted or set to "-". In the <localInitiation> flag can be omitted or set to "-". In the case
case when bearer signaling is used, this flag can be omitted when bearer signaling is used, this flag can be omitted when it is
when it is known by default or by other means whether the media known by default or by other means whether the media gateway
gateway initiates the connection set-up via bearer signaling. Only initiates the connection set-up via bearer signaling. Only when this
when this is to be indicated explicitly that the <localInitiation> is to be indicated explicitly that the <localInitiation> flag takes
flag takes on the values of "on" or "off". An "on" value indicates on the values of "on" or "off". An "on" value indicates that the
that the media gateway is responsible for initiating connection set-up media gateway is responsible for initiating connection set-up via
via bearer signaling (SVC signaling or Q.2630.1 signaling), bearer signaling (SVC signaling or Q.2630.1 signaling), an "off"
an "off" value indicates otherwise. value indicates otherwise.
5.6.1.13 The 'lij' attribute 5.6.1.13 The 'lij' attribute
When present, the 'lij' attribute is used to indicate When present, the 'lij' attribute is used to indicate the presence of
the presence of a connection that uses the Leaf-initiated-join a connection that uses the Leaf-initiated-join capability described
capability described in UNI 4.0 [5], and to optionally describe in UNI 4.0 [5], and to optionally describe parameters associated with
parameters associated with this capability. The format of the this capability. The format of the 'lij' media attribute line is as
'lij' media attribute line is as follows: follows:
a=lij: <sci><lsn> a=lij: <sci><lsn>
The <sci> (screening indication) is a 4-bit field expressed as a 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 decimal or hex integer. It is defined in the UNI 4.0 signaling
specification [5]. It is possible that the values of this field will specification [5]. It is possible that the values of this field will
be defined later by the ATMF and/or ITU. Currently, all values are be defined later by the ATMF and/or ITU. Currently, all values are
reserved with the exception of 0, which indicates a 'Network Join reserved with the exception of 0, which indicates a 'Network Join
without Root Notification'. without Root Notification'.
The <lsn> (leaf sequence number) is a 32-bit field expressed as a 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 decimal or hex integer. Per the UNI 4.0 signaling specification [5],
is used by a joining leaf to associate messages and responses during it is used by a joining leaf to associate messages and responses
LIJ (leaf initiated join) procedures. 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.6.1.14 The 'anycast' attribute Each of these fields can be set to a "-" when the intention is to not
specify them in an SDP descriptor.
When present, the 'anycast' attribute line is used to indicate 5.6.1.14 The 'anycast' attribute
the applicability of the anycast function described in UNI
4.0 [5]. Optional parameters to qualify this function are
provided. The format of the 'anycast' attribute is:
a=anycast: <atmGroupAddress> <cdStd> <conScpTyp> <conScpSel> When present, the 'anycast' attribute line is used to indicate the
applicability of the anycast function described in UNI 4.0 [5].
Optional parameters to qualify this function are provided. The format
of the 'anycast' attribute is:
The <atmGroupAddress> is per Annex 5 of UNI 4.0 [5]. Within a=anycast: <atmGroupAddress> <cdStd> <conScpTyp> <conScpSel>
an SDP descriptor, it can be represented in one of the formats
Rajesh Kumar, Mohamed Mostafa. 39 The <atmGroupAddress> is per Annex 5 of UNI 4.0 [5]. Within an SDP
(NSAP, E.164, GWID/ALIAS) described elsewhere in this document. 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 The remaining subparameters mirror the connection scope selection
information element in UNI 4.0 [5]. Their meaning and representation information element in UNI 4.0 [5]. Their meaning and representation
is as shown below: is as shown below:
PARAMETER MEANING REPRESENTATION 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 <cdStd> Coding standard for the Decimal or hex
Definition: UNI 4.0 [5] equivalent of 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 4 bits
<conScpSel> Connection scope selection Decimal or hex <conScpSel> Connection scope selection Decimal or hex
Definition: UNI 4.0 [5] equivalent of Definition: UNI 4.0 [5] equivalent of
8 bits 8 bits
Currently, all values of <cdStd> and <conScpTyp> are reserved with Currently, all values of <cdStd> and <conScpTyp> are reserved with
the exception of <cdStd> = 3 (ATMF coding standard) and <conScpTyp> = 1 the exception of <cdStd> = 3 (ATMF coding standard) and <conScpTyp> =
(connection scope type of 'organizational'). 1 (connection scope type of 'organizational').
Each of these fields can be set to a "-" when the intention Each of these fields can be set to a "-" when the intention is to not
is to not specify them in an SDP descriptor. specify them in an SDP descriptor.
5.6.1.15 The 'cache' attribute 5.6.1.15 The 'cache' attribute
This attribute is used to enable SVC caching. This attribute This attribute is used to enable SVC caching. This attribute has the
has the following format: following format:
a=cache:<cacheEnable><cacheTimer> a=cache:<cacheEnable><cacheTimer>
The <cacheEnable> flag indicates whether caching is enabled or The <cacheEnable> flag indicates whether caching is enabled or not,
not, corresponding to the string values of "on" and "off" corresponding to the string values of "on" and "off" respectively.
respectively.
The <cacheTimer> indicates the period of inactivity following which The <cacheTimer> indicates the period of inactivity following which
the SVC is to be released by sending an SVC release message into the SVC is to be released by sending an SVC release message into the
the network. This is specified as the decimal or hex equivalent of network. This is specified as the decimal or hex equivalent of a
a 32-bit field, indicating the timeout in seconds. As usual, leading 32-bit field, indicating the timeout in seconds. As usual, leading
zeros can be omitted. For instance, zeros can be omitted. For instance,
a=cache:on 7200 a=cache:on 7200
implies that the cached SVC is to be deleted if it is idle for 2 hours. implies that the cached SVC is to be deleted if it is idle for 2
hours.
The <cacheTimer> can be set to "-" if it is inapplicable or implied. The <cacheTimer> can be set to "-" if it is inapplicable or implied.
Rajesh Kumar, Mohamed Mostafa. 40
5.6.1.16 The 'bearerSigIE' attribute 5.6.1.16 The 'bearerSigIE' attribute
ATM signaling standards provide 'escape mechanisms' to ATM signaling standards provide 'escape mechanisms' to represent,
represent, signal and negotiate higher-layer parameters. Examples signal and negotiate higher-layer parameters. Examples are the B-HLI
are the B-HLI and B-LLI IEs specified in ITU Q.2931 [15], and and B-LLI IEs specified in ITU Q.2931 [15], and the user-to-user
the user-to-user information element described in ITU Q.2957 [48]. information element described in ITU Q.2957 [48].
The 'bearerSigIE'(bearer signaling information element) attribute is The 'bearerSigIE'(bearer signaling information element) attribute is
defined to allow a similar escape mechanism that can be used with defined to allow a similar escape mechanism that can be used with
these ATM SDP conventions. The format of this media attribute line these ATM SDP conventions. The format of this media attribute line
is as follows: is as follows:
a=bearerSigIE: <bearerSigIEType> <bearerSigIELng> <bearerSigIEVal> a=bearerSigIE: <bearerSigIEType> <bearerSigIELng> <bearerSigIEVal>
When an 'bearerSigIE' media attribute line is present, all its When an 'bearerSigIE' media attribute line is present, all its
subparameters are mandatory. The "0x" prefix is not used since these are subparameters are mandatory. The "0x" prefix is not used since these
always represented in hex. are always represented in hex.
The <bearerSigIEType> is represented as exactly 2 hex digits. It is the The <bearerSigIEType> is represented as exactly 2 hex digits. It is
unique IE identifier as defined in the ITU Q-series standards. Leading the unique IE identifier as defined in the ITU Q-series standards.
zeros are not omitted. Some pertinent values are 7E (User-user IE Leading zeros are not omitted. Some pertinent values are 7E (User-
per ITU Q.2957 [48]), 5F (B-LLI IE) and 5D (B-HLI IE). B-LLI and B-HLI, user IE per ITU Q.2957 [48]), 5F (B-LLI IE) and 5D (B-HLI IE). B-LLI
which stand for Broadband Low-layer Information and Broadband and B-HLI, which stand for Broadband Low-layer Information and
High-layer Information respectively, are defined in ITU Q.2931 [15]. Broadband High-layer Information respectively, are defined in ITU
Both of these refer to layers above the ATM adaptation layer. Q.2931 [15]. Both of these refer to layers above the ATM adaptation
layer.
The <bearerSigIELng> consists of 1-4 hex digits. It is the length of The <bearerSigIELng> consists of 1-4 hex digits. It is the length of
the information element in octets. Leading zeros may be omitted. the information element in octets. Leading zeros may be omitted.
The <bearerSigIEVal> is the value of the information element, represented The <bearerSigIEVal> is the value of the information element,
as a hexadecimal bit map. Although the size of this bit map is network/ represented as a hexadecimal bit map. Although the size of this bit
service dependent, setting an upper bound of 256 octets (512 hex digits) map is network/ service dependent, setting an upper bound of 256
is adequate. Since this a bit map, leading zeros should not be octets (512 hex digits) is adequate. Since this a bit map, leading
omitted. The number of hex digits in this bit map is even. zeros should not be omitted. The number of hex digits in this bit map
is even.
5.6.2 ATM Adaptation Layer (AAL) attributes 5.6.2 ATM Adaptation Layer (AAL) attributes
The following is a summary list of the SDP media attributes that can The following is a summary list of the SDP media attributes that can
be used to describe the ATM Adaptation Layer (AAL). These are detailed in be used to describe the ATM Adaptation Layer (AAL). These are
subsequent subsections. detailed in subsequent subsections.
* The 'aalApp' attribute, which is used to point to the * The 'aalApp' attribute, which is used to point to the
controlling standard for an application layer above the ATM controlling standard for an application layer above the ATM
adaptation layer. adaptation layer.
* The 'cbrRate' attribute, which represents * The 'cbrRate' attribute, which represents the CBR rate octet
the CBR rate octet defined in Table 4-6 of ITU Q.2931 [15]. defined in Table 4-6 of ITU Q.2931 [15].
* The 'sbc' attribute, which denotes the * The 'sbc' attribute, which denotes the subchannel count in the
subchannel count in the case of n x 64 clear channel case of n x 64 clear channel communication.
communication.
Rajesh Kumar, Mohamed Mostafa. 41 * The 'clkrec' attribute, which indicates the clock recovery
* The 'clkrec' attribute, which indicates the clock recovery method for AAL1 unstructured data transfer (UDT).
method for AAL1 unstructured data transfer (UDT).
* The 'fec' attribute, which indicates the use of * The 'fec' attribute, which indicates the use of forward error
forward error correction. correction.
* The 'prtfl' attribute, which indicates indicate the fill * The 'prtfl' attribute, which indicates indicate the fill level
level of partially filled cells. of partially filled cells.
* The 'structure' attribute, which is used to indicate * The 'structure' attribute, which is used to indicate the
the presence or absence of AAL1 structured data transfer (SDT), presence or absence of AAL1 structured data transfer (SDT), and
and the size of the SDT blocks. the size of the SDT blocks.
* The 'cpsSDUsize' attribute, which is used to indicate the * The 'cpsSDUsize' attribute, which is used to indicate the
maximum size of the CPCS SDU payload. maximum size of the CPCS SDU payload.
* The 'aal2CPS' attribute, which is used to * The 'aal2CPS' attribute, which is used to indicate that an AAL2
indicate that an AAL2 CPS sublayer as defined in CPS sublayer as defined in ITU I.363.2 [13] is associated with
ITU I.363.2 [13] is associated with the VCC referred to in the the VCC referred to in the 'm' line. Optionally, it can be
'm' line. Optionally, it can be used to indicate selected used to indicate selected CPS options and parameter values for
CPS options and parameter values for this VCC. this VCC.
* The 'aal2CPSSDUrate' attribute, which is used to place * The 'aal2CPSSDUrate' attribute, which is used to place an upper
an upper bound on the SDU bit rate for an AAL2 CID. bound on the SDU bit rate for an AAL2 CID.
* The 'aal2sscs3661unassured' attribute, which is used * The 'aal2sscs3661unassured' attribute, which is used to
to indicate the presence of an AAL2 SSCS sublayer with indicate the presence of an AAL2 SSCS sublayer with unassured
unassured transmission as defined in ITU I.366.1 [12]. transmission as defined in ITU I.366.1 [12]. Optionally, it
Optionally, it can be used to indicate selected options and can be used to indicate selected options and parameter values
parameter values for this SSCS. for this SSCS.
* The 'aal2sscs3661assured' attribute, which is used * The 'aal2sscs3661assured' attribute, which is used to indicate
to indicate the presence of an AAL2 SSCS sublayer with the presence of an AAL2 SSCS sublayer with assured transmission
assured transmission as defined in ITU I.366.1 [12]. as defined in ITU I.366.1 [12]. Optionally, it can be used to
Optionally, it can be used to indicate selected options and indicate selected options and parameter values for this SSCS.
parameter values for this SSCS.
* The 'aal2sscs3662' attribute, which is used to * The 'aal2sscs3662' attribute, which is used to indicate the
indicate the presence of an AAL2 SSCS sublayer as defined presence of an AAL2 SSCS sublayer as defined in ITU I.366.2.
in ITU I.366.2. Optionally, it can be used to indicate Optionally, it can be used to indicate selected options and
selected options and parameter values for this SSCS. parameter values for this SSCS.
* The 'aal5sscop' attribute, which is used to * The 'aal5sscop' attribute, which is used to indicate the
indicate the existence of an SSCOP protocol layer over existence of an SSCOP protocol layer over an AAL5 CPS layer,
an AAL5 CPS layer, and the parameters which pertain to and the parameters which pertain to this SSCOP layer.
this SSCOP layer.
5.6.2.1 The 'aalApp' attribute 5.6.2.1 The 'aalApp' attribute
When present, the 'aalApp' attribute is used to point to the When present, the 'aalApp' attribute is used to point to the
controlling standard for an application layer above the ATM adaptation controlling standard for an application layer above the ATM
layer. The format of the 'aalApp' media attribute line is as follows: adaptation layer. The format of the 'aalApp' media attribute line is
as follows:
Rajesh Kumar, Mohamed Mostafa. 42 a=aalApp: <appClass> <oui> <appId>
a=aalApp: <appClass> <oui> <appId>
If any of the subparameters, <appClass>, <oui> or <appId>, is meant If any of the subparameters, <appClass>, <oui> or <appId>, is meant
to be left, unspecified, it is set to "-". However, an 'aalApp' attribute to be left, unspecified, it is set to "-". However, an 'aalApp'
line with all subparameters set to "-" carries no information and attribute line with all subparameters set to "-" carries no
should be omitted. information and should be omitted.
The <appClass>, or application class, field can take on the The <appClass>, or application class, field can take on the string
string values listed below. values listed below.
This list is not exhaustive. An "X-" prefix should be used with This list is not exhaustive. An "X-" prefix should be used with
<appClass> values not listed here. <appClass> values not listed here.
<appClass> Meaning <appClass> Meaning
"itu_h323c" Annex C of H.323 which specifies direct "itu_h323c" Annex C of H.323 which specifies direct
RTP on AAL5 [45]. RTP on AAL5 [45].
"af83" af-vtoa-0083.001, which specifies "af83" af-vtoa-0083.001, which specifies
variable size AAL5 PDUs with PCM voice variable size AAL5 PDUs with PCM voice
and a null SSCS [46]. and a null SSCS [46].
"AAL5_SSCOP" SSCOP as defined in ITU Q.2110 [43] "AAL5_SSCOP" SSCOP as defined in ITU Q.2110 [43]
running over an AAL5 CPS [21]. running over an AAL5 CPS [21].
No information is provided regarding No information is provided regarding
any layers above SSCOP such as Service any layers above SSCOP such as Service
Specific Coordination Function (SSCF) Specific Coordination Function (SSCF)
layers. layers.
"itu_i3661_unassured" SSCS with unassured transmission, "itu_i3661_unassured" SSCS with unassured transmission,
per ITU I.366.1 [12]. per ITU I.366.1 [12].
"itu_i3661_assured" SSCS with assured transmission, "itu_i3661_assured" SSCS with assured transmission,
per ITU I.366.1 [12]. This uses SSCOP [43]. per ITU I.366.1 [12]. This uses SSCOP [43].
"itu_i3662" SSCS per ITU I.366.2 [13]. "itu_i3662" SSCS per ITU I.366.2 [13].
"itu_i3651" Frame relay SSCS per ITU I.365.1 [39]. "itu_i3651" Frame relay SSCS per ITU I.365.1 [39].
"itu_i3652" Service-specific coordination function, "itu_i3652" Service-specific coordination function,
as defined in ITU I.365.2, for Connection as defined in ITU I.365.2, for Connection
Oriented Network Service (SSCF-CONS) [40]. Oriented Network Service (SSCF-CONS) [40].
This uses SSCOP [43]. This uses SSCOP [43].
"itu_i3653" Service-specific coordination function, "itu_i3653" Service-specific coordination function,
as defined in ITU I.365.3, for Connection as defined in ITU I.365.3, for Connection
Oriented Transport Service (SSCF-COTS) [41]. Oriented Transport Service (SSCF-COTS) [41].
This uses SSCOP [43]. This uses SSCOP [43].
"itu_i3654" HDLC Service-specific coordination function, "itu_i3654" HDLC Service-specific coordination function,
as defined in ITU I.365.4 [42]. as defined in ITU I.365.4 [42].
Rajesh Kumar, Mohamed Mostafa. 43 "FRF5" Use of the FRF.5 frame relay standard [53],
"FRF5" Use of the FRF.5 frame relay standard [53], which references ITU I.365.1 [39].
which references ITU I.365.1 [39].
"FRF8" Use of the FRF.8.1 frame relay standard [54]. "FRF8" Use of the FRF.8.1 frame relay standard [54].
This implies a null SSCS and the mapping of This implies a null SSCS and the mapping of
the frame relay header into the ATM header. the frame relay header into the ATM header.
"FRF11" Use of the FRF.11 frame relay standard [55]. "FRF11" Use of the FRF.11 frame relay standard [55].
"itu_h2221" Use of the ITU standard H.222.1 for audiovisual "itu_h2221" Use of the ITU standard H.222.1 for
communication over AAL5 [51]. audiovisual communication over AAL5 [51].
The <oui>, or Organizationally Unique Identifier, refers to the organization The <oui>, or Organizationally Unique Identifier, refers to the
responsible for defining the <appId>, or Application Identifier. The <oui> is organization responsible for defining the <appId>, or Application
maintained by the IEEE. One of its uses is in 802 MAC addresses. It is a three- Identifier. The <oui> is maintained by the IEEE. One of its uses is
octet field represented as one to six hex digits. Since this is always in 802 MAC addresses. It is a three-octet field represented as one
represented in hex, the "0x" prefix is not used. Leading zeros may be omitted. to six hex digits. Since this is always represented in hex, the "0x"
prefix is not used. Leading zeros may be omitted.
The <appId> subparameter refers to the application ID, a hex number consisting The <appId> subparameter refers to the application ID, a hex number
of up to 8 digits. Leading zeros may be omitted. The "0x" prefix is not used, consisting of up to 8 digits. Leading zeros may be omitted. The
since the representation is always hexadecimal. Currently, the only "0x" prefix is not used, since the representation is always
organization that has defined application identifiers is the ATM forum. These hexadecimal. Currently, the only organization that has defined
have been defined in the context of AAL2 ([44], [52], Section 5 of [61]). application identifiers is the ATM forum. These have been defined in
Within SDP, these can be used with <appClass> = itu_i3662. The <oui> value for the context of AAL2 ([44], [52], Section 5 of [61]). Within SDP,
the ATM forum is 0x00A03E. these can be used with <appClass> = itu_i3662. The <oui> value for
the ATM forum is 0x00A03E.
In the following example, the aalApp media attribute line is used to In the following example, the aalApp media attribute line is used to
indicate 'Loop Emulation Service using CAS (POTS only) without the indicate 'Loop Emulation Service using CAS (POTS only) without the
Emulated Loop Control Protocol (ELCP) [52]. The Application ID is defined Emulated Loop Control Protocol (ELCP) [52]. The Application ID is
by the ATM forum [61]. The SSCS used is per ITU I.366.2 [13]. defined by the ATM forum [61]. The SSCS used is per ITU I.366.2
[13].
a=aalApp:itu_i3662 A03E A a=aalApp:itu_i3662 A03E A
If leading zeros are not dropped, this can be represented as: If leading zeros are not dropped, this can be represented as:
a=aalApp:itu_i3662 00A03E 0000000A a=aalApp:itu_i3662 00A03E 0000000A
Since application identifiers have been specified only in the context of the Since application identifiers have been specified only in the context
AAL2 SSCS defined in ITU I.366.2 [13],the <appClass> can be set to '-' without of the AAL2 SSCS defined in ITU I.366.2 [13],the <appClass> can be
ambiguity. The aalApp media attribute line can be reduced to: set to '-' without ambiguity. The aalApp media attribute line can be
reduced to:
a=aalApp:- A03E A a=aalApp:- A03E A
or or
a=aalApp:- 00A03E 0000000A a=aalApp:- 00A03E 0000000A
5.6.2.2 The 'cbrRate' attribute 5.6.2.2 The 'cbrRate' attribute
When present, the 'cbrRate' attribute is used to represent the CBR When present, the 'cbrRate' attribute is used to represent the CBR
rate octet defined in Table 4-6 of ITU Q.2931 [15]. The format of
this media attribute line is:
Rajesh Kumar, Mohamed Mostafa. 44 a=cbrRate: <cbrRate>
rate octet defined in Table 4-6 of ITU Q.2931 [15]. The format
of this media attribute line is:
a=cbrRate: <cbrRate>
Here, <cbrRate> is represented as exactly two hex digits. The "0x" Here, <cbrRate> is represented as exactly two hex digits. The "0x"
prefix is omitted since this parameter is always represented in prefix is omitted since this parameter is always represented in hex.
hex. Values currently defined by the ITU are: Values currently defined by the ITU are:
+------------+-----------------------------------------------+ +------------+-----------------------------------------------+
| VALUE | MEANING | | VALUE | MEANING |
| (hex) | | | (hex) | |
+------------+-----------------------------------------------+ +------------+-----------------------------------------------+
| 01 | 64 kbps | | 01 | 64 kbps |
+------------+-----------------------------------------------+ +------------+-----------------------------------------------+
| 04 | 1544 kbps | | 04 | 1544 kbps |
+------------+-----------------------------------------------+ +------------+-----------------------------------------------+
| 05 | 6312 kbps | | 05 | 6312 kbps |
+------------+-----------------------------------------------+ +------------+-----------------------------------------------+
| 06 | 32064 kbps | | 06 | 32064 kbps |
+------------+-----------------------------------------------+ +------------+-----------------------------------------------+
| 07 | 44736 kbps | | 07 | 44736 kbps |
+------------+-----------------------------------------------+ +------------+-----------------------------------------------+
| 08 | 97728 kbps | | 08 | 97728 kbps |
+------------+-----------------------------------------------+ +------------+-----------------------------------------------+
| 10 | 2048 kbps | | 10 | 2048 kbps |
+------------+-----------------------------------------------+ +------------+-----------------------------------------------+
| 11 | 8448 kbps | | 11 | 8448 kbps |
+------------+-----------------------------------------------+ +------------+-----------------------------------------------+
| 12 | 34368 kbps | | 12 | 34368 kbps |
+------------+-----------------------------------------------+ +------------+-----------------------------------------------+
| 13 | 139264 kbps | | 13 | 139264 kbps |
+------------+-----------------------------------------------+ +------------+-----------------------------------------------+
| 40 | n x 64 kbps | | 40 | n x 64 kbps |
+------------+-----------------------------------------------+ +------------+-----------------------------------------------+
| 41 | n x 8 kbps | | 41 | n x 8 kbps |
+------------+-----------------------------------------------+ +------------+-----------------------------------------------+
It is preferable that the cbrRate attribute be omitted rather It is preferable that the cbrRate attribute be omitted rather than
than set to an unspecified value of "-", since it conveys no set to an unspecified value of "-", since it conveys no information
information in the latter case. in the latter case.
5.6.2.3 The 'sbc' attribute 5.6.2.3 The 'sbc' attribute
The 'sbc' media attribute line denotes the subchannel count and The 'sbc' media attribute line denotes the subchannel count and is
is meaningful only in the case of n x 64 clear channel communication. meaningful only in the case of n x 64 clear channel communication. A
A clear n x 64 channel can use AAL1 (ATM forum af-vtoa-78) or AAL2 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, adaptation (ITU I.366.2). Although no such standard definition
it is also possible to use AAL5 for this purpose. An n x 64 clear channel exists, it is also possible to use AAL5 for this purpose. An n x 64
is represented by the encoding names of "X-CCD" and "X-CCD-CAS" in clear channel is represented by the encoding names of "X-CCD" and
Table 2. "X-CCD-CAS" in Table 2.
Rajesh Kumar, Mohamed Mostafa. 45
The format of the 'sbc' media attribute line is as follows: The format of the 'sbc' media attribute line is as follows:
a=sbc:<sbc> a=sbc:<sbc>
Here, <sbc> can be expressed as a decimal or hex integer. This Here, <sbc> can be expressed as a decimal or hex integer. This
attribute indicates the number of DS0s in a T1 or E1 frame that are attribute indicates the number of DS0s in a T1 or E1 frame that are
aggregated for transmitting clear channel data. For T1-based aggregated for transmitting clear channel data. For T1-based
applications, it can take on integral values in the inclusive range applications, it can take on integral values in the inclusive range
[1...24]. For E1-based applications, it can take on integral values in [1...24]. For E1-based applications, it can take on integral values
the inclusive range [1...31]. When omitted, other means are to be used in the inclusive range [1...31]. When omitted, other means are to be
to determine the subchannel count. used to determine the subchannel count.
Use of the 'sbc' attribute provides a direct way to indicate the Use of the 'sbc' attribute provides a direct way to indicate the
number of 64 kbps subchannels bundled into an n x 64 clear number of 64 kbps subchannels bundled into an n x 64 clear channel.
channel. An alternate mechanism to indicate this exists within An alternate mechanism to indicate this exists within the SDP
the SDP bandwidth information, or 'b', line [1]. In this case, bandwidth information, or 'b', line [1]. In this case, instead of
instead of specifying the number of subchannels, the aggregate specifying the number of subchannels, the aggregate bandwidth in kbps
bandwidth in kbps is specified. The syntax of the 'b' line, copied is specified. The syntax of the 'b' line, copied verbatim from [1],
verbatim from [1], is as follows: is as follows:
b=<modifier>:<bandwidth-value> b=<modifier>:<bandwidth-value>
In the case of n x 64 clear channels, the <modifier> is assigned a In the case of n x 64 clear channels, the <modifier> is assigned a
text string value of "AS", indicating that the 'b' line is application- text string value of "AS", indicating that the 'b' line is
specific. The <bandwidth-value> parameter, which is a decimal number application-specific. The <bandwidth-value> parameter, which is a
indicating the bandwidth in kbps, is limited to one of the decimal number indicating the bandwidth in kbps, is limited to one of
following values in the n x 64 clear channel application context: the following values in the n x 64 clear channel application context:
64, 128, 192, 256, 320, 384, 448, 512, 576, 640, 704, 768, 832, 64, 128, 192, 256, 320, 384, 448, 512, 576, 640, 704, 768, 832,
896, 960, 1024, 1088, 1152, 1216, 1280, 1344, 1408, 1472, 1600, 896, 960, 1024, 1088, 1152, 1216, 1280, 1344, 1408, 1472, 1600,
1664, 1728, 1792, 1856, 1920, 1984 1664, 1728, 1792, 1856, 1920, 1984
Thus, for n x 64 circuit mode data service, Thus, for n x 64 circuit mode data service,
a=sbc:6 a=sbc:6
is equivalent to is equivalent to
b=AS:384 b=AS:384
The media attribute line The media attribute line
a=sbc:2 a=sbc:2
is equivalent to is equivalent to
b=AS:128 b=AS:128
Rajesh Kumar, Mohamed Mostafa. 46 5.6.2.4 The 'clkrec' attribute
5.6.2.4 The 'clkrec' attribute
When present, the 'clkrec' attribute is used to indicate When present, the 'clkrec' attribute is used to indicate the clock
the clock recovery method. This attribute is meaningful in the recovery method. This attribute is meaningful in the case of AAL1
case of AAL1 unstructured data transfer (UDT). The format of the unstructured data transfer (UDT). The format of the 'clkrec' media
'clkrec' media attribute line is as follows: attribute line is as follows:
a=clkrec:<clkrec> a=clkrec:<clkrec>
The <clkrec> field can take on the following string values: "NULL", The <clkrec> field can take on the following string values: "NULL",
"SRTS" or "ADAPTIVE". SRTS and adaptive clock recovery are defined in "SRTS" or "ADAPTIVE". SRTS and adaptive clock recovery are defined
ITU I.363.1 [10]. "NULL" indicates that the stream (e.g. T1/E1) 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, encapsulated in ATM is synchronous to the ATM network or is retimed,
before AAL1 encapsulation, via slip buffers. before AAL1 encapsulation, via slip buffers.
5.6.2.5 The 'fec' attribute 5.6.2.5 The 'fec' attribute
When present, the 'fec' attribute is used to indicate the use of When present, the 'fec' attribute is used to indicate the use of
forward error correction. Currently, there exists a forward error forward error correction. Currently, there exists a forward error
correction method defined for AAL1 in ITU I.363.1 [10]. The format of the correction method defined for AAL1 in ITU I.363.1 [10]. The format
'fec' media attribute line is as follows: of the 'fec' media attribute line is as follows:
a=fec:<fecEnable> a=fec:<fecEnable>
The <fecEnable> flag indicates the presence of absence of Forward The <fecEnable> flag indicates the presence of absence of Forward
Error Correction. It can take on the string values of "NULL", Error Correction. It can take on the string values of "NULL",
"LOSS_SENSITIVE" and "DELAY_SENSITIVE". An "NULL" value implies disabling "LOSS_SENSITIVE" and "DELAY_SENSITIVE". An "NULL" value implies
this capability. FEC can be enabled differently for delay-sensitive disabling this capability. FEC can be enabled differently for
and loss-sensitive connections. delay-sensitive and loss-sensitive connections.
5.6.2.6 The 'prtfl' attribute 5.6.2.6 The 'prtfl' attribute
When present, the 'prtfl' attribute is used to indicate the fill When present, the 'prtfl' attribute is used to indicate the fill
level of cells. When this attribute is absent, then level of cells. When this attribute is absent, then other means
other means (such as provisionable defaults) are used to determine (such as provisionable defaults) are used to determine the presence
the presence and level of partial fill. and level of partial fill.
This attribute indicates the number of non-pad payload This attribute indicates the number of non-pad payload octets, not
octets, not including any AAL SAR or convergence sublayer octets. For including any AAL SAR or convergence sublayer octets. For example,
example, in some AAL1 applications that use partially filled cells with in some AAL1 applications that use partially filled cells with
padding at the end, this attribute indicates the number of leading padding at the end, this attribute indicates the number of leading
payload octets not including any AAL overhead. payload octets not including any AAL overhead.
The format of the 'prtfl' media attribute line is as follows: The format of the 'prtfl' media attribute line is as follows:
a=prtfl:<partialFill> a=prtfl:<partialFill>
Here, <partialFill> can be expressed as a decimal or a hex integer. Here, <partialFill> can be expressed as a decimal or a hex integer.
In general, permitted values are integers in the range 1 - 48
inclusive. However, this upper bound is different for different
adaptations since the AAL overhead, if any, is different. If the specified
partial fill is greater than or equal to the maximum fill, then complete
Rajesh Kumar, Mohamed Mostafa. 47 In general, permitted values are integers in the range 1 - 48
fill is used. Using a 'partial' fill of 48 always disables partial fill. inclusive. However, this upper bound is different for different
adaptations since the AAL overhead, if any, is different. If the
specified partial fill is greater than or equal to the maximum fill,
then complete fill is used. Using a 'partial' fill of 48 always
disables partial fill.
In the AAL1 context, this media attribute line applies uniformly to In the AAL1 context, this media attribute line applies uniformly to
both P and non-P cells. In AAL1 applications that do not distinguish both P and non-P cells. In AAL1 applications that do not distinguish
between P and non-P cells, a value of 47 indicates complete fill (i.e. the between P and non-P cells, a value of 47 indicates complete fill
absence of partial fill). In AAL1 applications that distinguish between P (i.e., the absence of partial fill). In AAL1 applications that
and non-P cells, a value of 46 indicates no padding in P-cells and a distinguish between P and non-P cells, a value of 46 indicates no
padding of one in non-P cells. padding in P-cells and a padding of one in non-P cells.
If partial fill is enabled (i.e there is padding in at least some If partial fill is enabled (i.e there is padding in at least some
cells), then AAL1 structures must not be split across cell boundaries. cells), then AAL1 structures must not be split across cell
These shall fit in any cell. Hence, boundaries. These shall fit in any cell. Hence, their size shall be
their size shall be less than or equal to the partial fill less than or equal to the partial fill size. Further, the partial
size. Further, the partial fill size is preferably fill size is preferably an integer multiple of the structure size.
an integer multiple of the structure size. If not, then the If not, then the partial fill size stated in the SDP description
partial fill size stated in the SDP description shall be shall be truncated to an integer multiple (e.g., a partial fill size
truncated to an integer multiple (e.g. a partial fill size of of 40 is truncated to 36 to support six 6 x 64 channels).
40 is truncated to 36 to support six 6 x 64 channels).
5.6.2.7 The 'structure' attribute 5.6.2.7 The 'structure' attribute
This attribute applies to AAL1 connections only. When present, This attribute applies to AAL1 connections only. When present, the '
the 'structure' attribute is used to indicate the presence or structure' attribute is used to indicate the presence or absence of
absence of structured data transfer (SDT), and the size in octets structured data transfer (SDT), and the size in octets of the SDT
of the SDT blocks. The format of the 'structure' media attribute line blocks. The format of the 'structure' media attribute line is as
is as follows: follows:
a=structure: <structureEnable> <blksz> a=structure: <structureEnable> <blksz>
where the <structureEnable> flag indicates the presence of absence of SDT. where the <structureEnable> flag indicates the presence of absence of
It can take on the values of "on" or "off". An "on" value implies SDT. It can take on the values of "on" or "off". An "on" value
AAL1 structured data transfer (SDT), while an "off" value implies implies AAL1 structured data transfer (SDT), while an "off" value
AAL1 unstructured data transfer (UDT). implies AAL1 unstructured data transfer (UDT).
The block size field, <blksz>, is an optional 16-bit field [15] The block size field, <blksz>, is an optional 16-bit field [15] that
that can be represented in decimal or hex. It is set to can be represented in decimal or hex. It is set to a "-" when not
a "-" when not applicable, as in the case of unstructured data transfer applicable, as in the case of unstructured data transfer (UDT). For
(UDT). For SDT, it can be set to a "-" when <blksz> is known SDT, it can be set to a "-" when <blksz> is known by other means.
by other means. For instance, af-vtoa-78 [7] fixes the structure size for For instance, af-vtoa-78 [7] fixes the structure size for n x 64
n x 64 service, with or without CAS. The theoretical maximum value of service, with or without CAS. The theoretical maximum value of
<blksz> is 65,535, although most services use much less. <blksz> is 65,535, although most services use much less.
5.6.2.8 The 'cpsSDUsize' attribute 5.6.2.8 The 'cpsSDUsize' attribute
When present, the 'cpsSDUsize' attribute is used to When present, the 'cpsSDUsize' attribute is used to indicate the
indicate the maximum size of the CPCS SDU payload. There can be maximum size of the CPCS SDU payload. There can be several '
several 'cpsSDUsize' lines in an SDP description. cpsSDUsize' lines in an SDP description.
The format of this media attribute line is as follows: The format of this media attribute line is as follows:
a=cpsSDUsize:<directionFlag><cpcs> a=cpsSDUsize:<directionFlag><cpcs>
Rajesh Kumar, Mohamed Mostafa. 48 The <directionFlag> can be assigned the following string values: "f",
The <directionFlag> can be assigned the following string values: "f", "b" and "fb". "f" and "b" indicate the forward and backward
"b" and "fb". "f" and "b" indicate the forward and backward directions respectively. "fb" refers to both directions (forward and
directions respectively. "fb" refers to both directions (forward and backward). Conventions for the forward and backward directions are
backward). Conventions for the forward and backward directions per section 2.3.
are per section 2.3.
The <cpcs> fields is a 16-bit integer that can be represented in The <cpcs> fields is a 16-bit integer that can be represented in
decimal or in hex. The meaning and values of these fields are as decimal or in hex. The meaning and values of these fields are as
follows: follows:
Application Field Meaning Values Application Field Meaning Values
AAL5 <cpcs> Maximum CPCS-SDU size 1- 65,535 AAL5 <cpcs> Maximum CPCS-SDU size 1- 65,535
AAL2 <cpcs> Maximum CPCS-SDU size 45 or 64 AAL2 <cpcs> Maximum CPCS-SDU size 45 or 64
5.6.2.9 The 'aal2CPS' attribute 5.6.2.9 The 'aal2CPS' attribute
When present, the 'aal2CPS' attribute is used to describe When present, the 'aal2CPS' attribute is used to describe parameters
parameters associated with the AAL2 CPS layer. associated with the AAL2 CPS layer.
The format of the 'aal2CPS' media attribute line is as follows: The format of the 'aal2CPS' media attribute line is as follows:
a=aal2CPS:<cidLowerLimit><cidUpperLimit><timerCU> <simplifiedCPS> a=aal2CPS:<cidLowerLimit><cidUpperLimit><timerCU> <simplifiedCPS>
Each of these fields can be set to a "-" when the intention is to not Each of these fields can be set to a "-" when the intention is to not
specify them in an SDP descriptor. specify them in an SDP descriptor.
The <cidLowerLimit> and <cidUpperLimit> can be assigned integer The <cidLowerLimit> and <cidUpperLimit> can be assigned integer
values between 8 and 255 [11], with the limitation that <cidUpperLimit> values between 8 and 255 [11], with the limitation that
be greater than or equal to <cidLowerLimit>. For instance, for POTS <cidUpperLimit> be greater than or equal to <cidLowerLimit>. For
applications based on [52], <cidLowerLimit> and <cidUpperLimit> instance, for POTS applications based on [52], <cidLowerLimit> and
can have values of 16 and 223 respectively. <cidUpperLimit> can have values of 16 and 223 respectively.
The <timerCU> integer represents the "combined use" timerCU defined in The <timerCU> integer represents the "combined use" timerCU defined
ITU I.363.2. This timer is represented as an integer number of microseconds. in ITU I.363.2. This timer is represented as an integer number of
It is represented as the decimal integer equivalent of 32 bits. microseconds. It is represented as the decimal integer equivalent of
32 bits.
The <simplifiedCPS> parameter can be assigned the values "on" or "off". When The <simplifiedCPS> parameter can be assigned the values "on" or
it is "on", the AAL2 CPS simplification described in [52] is adopted. Under "off". When it is "on", the AAL2 CPS simplification described in
this simplification, each ATM cell contains exactly on AAL2 packet. If [52] is adopted. Under this simplification, each ATM cell contains
necessary, octets at the end of the cell are padded with zeros. Since the exactly on AAL2 packet. If necessary, octets at the end of the cell
<timerCU> value in this context is always 0, it can be set to "-". are padded with zeros. Since the <timerCU> value in this context is
always 0, it can be set to "-".
5.6.2.10 The 'aal2CPSSDUrate' attribute 5.6.2.10 The 'aal2CPSSDUrate' attribute
When present, the 'aal2CPSSDUrate' attribute is used to place an upper When present, the 'aal2CPSSDUrate' attribute is used to place an
bound on the SDU bit rate for an AAL2 CID. This is useful for upper bound on the SDU bit rate for an AAL2 CID. This is useful for
limiting the bandwidth used by a CID, specially if the CID is used limiting the bandwidth used by a CID, specially if the CID is used
for frame mode data defined in [13], or with the SSSAR defined in for frame mode data defined in [13], or with the SSSAR defined in
[12]. The format of this media attribute line is as follows:
Rajesh Kumar, Mohamed Mostafa. 49 a=aal2CPSSDUrate: <fSDUrate><bSDUrate>
[12]. The format of this media attribute line is as follows:
a=aal2CPSSDUrate: <fSDUrate><bSDUrate>
The fSDUrate and bSDUrate are the maximum forward and backward SDU The fSDUrate and bSDUrate are the maximum forward and backward SDU
rates in bits/second. These are represented as rates in bits/second. These are represented as decimal integers,
decimal integers, with range as defined in Section 6. If any with range as defined in Section 6. If any of these parameters in
of these parameters in these media attribute lines is not these media attribute lines is not specified, is inapplicable or is
specified, is inapplicable or is implied, then it is set to "-". implied, then it is set to "-".
5.6.2.11 The 'aal2sscs3661unassured' attribute 5.6.2.11 The 'aal2sscs3661unassured' attribute
When present, the 'aal2sscs3661unassured' attribute is used to indicate When present, the 'aal2sscs3661unassured' attribute is used to
the options that pertain to the unassured transmission SSCS defined indicate the options that pertain to the unassured transmission SSCS
in ITU I.366.1 [12]. This SSCS can be selected via the aalApp defined in ITU I.366.1 [12]. This SSCS can be selected via the
attribute defined below, or by virtue of the presence of the aalApp attribute defined below, or by virtue of the presence of the '
'aal2sscs3661unassured' attribute. The format of this aal2sscs3661unassured' attribute. The format of this media attribute
media attribute line is as follows: line is as follows:
a=aal2sscs3661unassured: <ted> <rastimer> <fsssar> <bsssar> a=aal2sscs3661unassured: <ted> <rastimer> <fsssar> <bsssar>
Each of these fields can be set to a "-" when the intention is to not Each of these fields can be set to a "-" when the intention is to not
specify them in an SDP descriptor. specify them in an SDP descriptor.
The <ted> flag indicates the presence or absence of transmission The <ted> flag indicates the presence or absence of transmission
error detection as defined in I.366.1. It can be assigned the error detection as defined in I.366.1. It can be assigned the values
values of "on" or "off". An "on" value indicates presence of of "on" or "off". An "on" value indicates presence of the
the capability. capability.
The <rastimer> subparameter indicates the SSSAR reassembly timer The <rastimer> subparameter indicates the SSSAR reassembly timer in
in microseconds. It is represented as the decimal equivalent of microseconds. It is represented as the decimal equivalent of 32
32 bits. bits.
The <fsssar> and <bsssar> fields are 24-bit integers that The <fsssar> and <bsssar> fields are 24-bit integers that can be
can be represented in decimal or in hex. The meaning and values of represented in decimal or in hex. The meaning and values of the
the <fsssar> and <bsssar> fields are as follows: <fsssar> and <bsssar> fields are as follows:
Field Meaning Values Field Meaning Values
<fsssar> Maximum SSSAR-SDU size 1- 65,568 <fsssar> Maximum SSSAR-SDU size 1- 65,568
forward direction forward direction
<bsssar> Maximum SSSAR-SDU size 1- 65,568 <bsssar> Maximum SSSAR-SDU size 1- 65,568
backward direction backward direction
If present, the SSTED (Service-Specific Transmission Error If present, the SSTED (Service-Specific Transmission Error Detection)
Detection) sublayer is above the SSSAR (Service-Specific Segmentation sublayer is above the SSSAR (Service-Specific Segmentation and
and Reassembly) sublayer [12]. Since the maximum size of the Reassembly) sublayer [12]. Since the maximum size of the SSTED-SDUs
SSTED-SDUs can be derived from the maximum SSSAR-SDU size, it need can be derived from the maximum SSSAR-SDU size, it need not be
not be specified separately. specified separately.
Rajesh Kumar, Mohamed Mostafa. 50
5.6.2.12 The 'aal2sscs3661assured' attribute 5.6.2.12 The 'aal2sscs3661assured' attribute
When present, the 'aal2sscs3661assured' attribute is used to indicate When present, the 'aal2sscs3661assured' attribute is used to indicate
the options that pertain to the assured transmission SSCS defined the options that pertain to the assured transmission SSCS defined in
in ITU I.366.1 [12] on the basis of ITU Q.2110 [43]. This SSCS can be ITU I.366.1 [12] on the basis of ITU Q.2110 [43]. This SSCS can be
selected via the aalApp attribute defined below, or by virtue selected via the aalApp attribute defined below, or by virtue of the
of the presence of the 'aal2sscs3661assured' attribute. The format of presence of the 'aal2sscs3661assured' attribute. The format of this
this media attribute line is as follows: media attribute line is as follows:
a=aal2sscs3661assured: <rastimer> <fsssar> <bsssar> <fsscopsdu> a=aal2sscs3661assured: <rastimer> <fsssar> <bsssar> <fsscopsdu>
<bsscopsdu><fsscopuu> <bsscopuu> <bsscopsdu><fsscopuu> <bsscopuu>
Each of these fields can be set to a "-" when the intention is to not Each of these fields can be set to a "-" when the intention is to not
specify them in an SDP descriptor. specify them in an SDP descriptor.
The <rastimer> subparameter indicates the SSSAR reassembly timer The <rastimer> subparameter indicates the SSSAR reassembly timer in
in microseconds. It is represented as the decimal equivalent of microseconds. It is represented as the decimal equivalent of 32
32 bits. bits.
The <fsssar> and <bsssar> fields are 24-bit integers that The <fsssar> and <bsssar> fields are 24-bit integers that can be
can be represented in decimal or in hex. The <fsscopsdu>, represented in decimal or in hex. The <fsscopsdu>, <bsscopsdu>,
<bsscopsdu>, <fsscopuu> and <bsscopuu> fields are 16-bit integers <fsscopuu> and <bsscopuu> fields are 16-bit integers that can be
that can be represented in decimal or in hex. The meaning and values represented in decimal or in hex. The meaning and values of these
of these fields is as follows: fields is as follows:
Field Meaning Values Field Meaning Values
<fsssar> Maximum SSSAR-SDU size 1- 65,568 <fsssar> Maximum SSSAR-SDU size 1- 65,568
forward direction forward direction
<bsssar> Maximum SSSAR-SDU size 1- 65,568 <bsssar> Maximum SSSAR-SDU size 1- 65,568
backward direction backward direction
<fsscopsdu> Maximum SSCOP-SDU size 1- 65,528 <fsscopsdu> Maximum SSCOP-SDU size 1- 65,528
forward direction forward direction
<bsscopsdu> Maximum SSCOP-SDU size 1- 65,528 <bsscopsdu> Maximum SSCOP-SDU size 1- 65,528
backward direction backward direction
<fsscopuu> Maximum SSCOP-UU field 1- 65,524 <fsscopuu> Maximum SSCOP-UU field 1- 65,524
size, forward direction size, forward direction
<bsscopuu> Maximum SSCOP-UU field 1- 65,524 <bsscopuu> Maximum SSCOP-UU field 1- 65,524
size, backward direction size, backward direction
The SSTED (Service-Specific Transmission Error Detection) sublayer The SSTED (Service-Specific Transmission Error Detection) sublayer is
is above the SSSAR (Service-Specific Segmentation and Reassembly) above the SSSAR (Service-Specific Segmentation and Reassembly)
sublayer [12]. The SSADT (Service-Specific Assured Data Transfer) sublayer [12]. The SSADT (Service-Specific Assured Data Transfer)
sublayer is above the SSTED sublayer. Since the maximum size of sublayer is above the SSTED sublayer. Since the maximum size of the
the SSTED-SDUs and SSADT-SDUs can be derived from the maximum SSTED-SDUs and SSADT-SDUs can be derived from the maximum SSSAR-SDU
SSSAR-SDU size, they need not be specified separately. size, they need not be specified separately.
Rajesh Kumar, Mohamed Mostafa. 51 The SSCOP protocol defined in [43] is used by the Assured Data
The SSCOP protocol defined in [43] is used by the Assured Data Transfer service defined in [12]. In the context of the ITU I.366.1
Transfer service defined in [12]. In the context of the ITU I.366.1 SSCS, it is possible to use the 'aal2sscs3661assured' attribute to
SSCS, it is possible to use the 'aal2sscs3661assured' attribute to limit limit the maximum sizes of the SSCOP SDUs and UU (user-to-user)
the maximum sizes of the SSCOP SDUs and UU (user-to-user) fields in fields in either direction. Note that it is necessary for the
either direction. Note that it is necessary for the parameters on the parameters on the 'aal2sscs3661assured' media attribute line to be
'aal2sscs3661assured' media attribute line to be consistent with each consistent with each other.
other.
5.6.2.13 The 'aal2sscs3662' attribute 5.6.2.13 The 'aal2sscs3662' attribute
When present, the 'aal2sscs3662' attribute is used to indicate When present, the 'aal2sscs3662' attribute is used to indicate the
the options that pertain to the SSCS defined in ITU I.366.2 [13]. options that pertain to the SSCS defined in ITU I.366.2 [13]. This
This SSCS can be selected via the aalApp attribute defined below, SSCS can be selected via the aalApp attribute defined below, or by
or by the presence of the 'aal2sscs3662' attribute. the presence of the 'aal2sscs3662' attribute.
The format of this media attribute line is as follows: The format of this media attribute line is as follows:
a=aal2sscs3662: <sap> <circuitMode> <frameMode> <faxDemod>
<cas> <dtmf> <mfall> <mfr1> <mfr2>
<PCMencoding> <fmaxFrame> <bmaxFrame>
Each of these fields can be set to a "-" when the intention a=aal2sscs3662: <sap> <circuitMode> <frameMode> <faxDemod>
is to not specify them in an SDP descriptor. Additionally, the values <cas> <dtmf> <mfall> <mfr1> <mfr2>
of these fields need to be consistent with each other. Inconsistencies <PCMencoding> <fmaxFrame> <bmaxFrame>
should be flagged as errors.
The <sap> field can take on the following string values: "AUDIO" Each of these fields can be set to a "-" when the intention is to not
and "MULTIRATE". These correspond to the audio and multirate specify them in an SDP descriptor. Additionally, the values of these
Service Access Points (SAPs) defined in ITU I.366.2. fields need to be consistent with each other. Inconsistencies should
be flagged as errors.
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.
For the multirate SAP, the following parameters on the aal2sscs3662 For the multirate SAP, the following parameters on the aal2sscs3662
attribute line do not apply: <faxDemod>,<cas>, <dtmf>, <mfall>, attribute line do not apply: <faxDemod>,<cas>, <dtmf>, <mfall>,
<mfr1>, <mfr2> and <PCMencoding>. These are set to "-" for the <mfr1>, <mfr2> and <PCMencoding>. These are set to "-" for the
multirate SAP. multirate SAP.
The <circuitMode> flag indicates whether the transport of circuit The <circuitMode> flag indicates whether the transport of circuit
mode data is enabled or disabled, corresponding to the string mode data is enabled or disabled, corresponding to the string values
values of "on" and "off" respectively. For the multirate SAP, it of "on" and "off" respectively. For the multirate SAP, it cannot
cannot have a value of "off". For the audio SAP, it can be assigned have a value of "off". For the audio SAP, it can be assigned a value
a value of "on", "off" or "-". Note that the <sbc> attribute, defined of "on", "off" or "-". Note that the <sbc> attribute, defined
elsewhere in this document, can be used to specify the number of elsewhere in this document, can be used to specify the number of 64
64 kbps subchannels bundled into a circuit mode data channel. kbps subchannels bundled into a circuit mode data channel.
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 The <frameMode> flag indicates whether the transport of frame mode
and remodulation are enabled or disabled, corresponding to the data is enabled or disabled, corresponding to the string values of
string values of "on" and "off" respectively. "on" and "off" respectively.
The <cas> flag indicates whether the transport of Channel The <faxDemod> flag indicates whether facsimile demodulation and
remodulation are enabled or disabled, corresponding to the string
values of "on" and "off" respectively.
Rajesh Kumar, Mohamed Mostafa. 52 The <cas> flag indicates whether the transport of Channel Associated
Associated Signaling (CAS) bits in AAL2 type 3 packets is enabled Signaling (CAS) bits in AAL2 type 3 packets is enabled or disabled,
or disabled, corresponding to the string values of "on" and "off" corresponding to the string values of "on" and "off" respectively.
respectively.
The <dtmf> flag indicates whether the transport of DTMF dialled The <dtmf> flag indicates whether the transport of DTMF dialled
digits in AAL2 type 3 packets is enabled or disabled, corresponding digits in AAL2 type 3 packets is enabled or disabled, corresponding
to the string values of "on" and "off" respectively. to the string values of "on" and "off" respectively.
The <mfall> flag indicates whether the transport of MF dialled The <mfall> flag indicates whether the transport of MF dialled digits
digits in AAL2 type 3 packets is enabled or disabled, corresponding in AAL2 type 3 packets is enabled or disabled, corresponding to the
to the string values of "on" and "off" respectively. This flag string values of "on" and "off" respectively. This flag enables MF
enables MF dialled digits in a generic manner, without specifying dialled digits in a generic manner, without specifying type (e.g.,
type (e.g. R1, R2 etc.). R1, R2 etc.).
The <mfr1> flag indicates whether the transport, in AAL2 type 3 The <mfr1> flag indicates whether the transport, in AAL2 type 3
packets, of MF dialled digits for signaling system R1 is enabled packets, of MF dialled digits for signaling system R1 is enabled or
or disabled, corresponding to the string values of "on" and "off" disabled, corresponding to the string values of "on" and "off"
respectively. respectively.
The <mfr2> flag indicates whether the transport, in AAL2 type 3 The <mfr2> flag indicates whether the transport, in AAL2 type 3
packets, of MF dialled digits for signaling system R2 is enabled packets, of MF dialled digits for signaling system R2 is enabled or
or disabled, corresponding to the string values of "on" and "off" disabled, corresponding to the string values of "on" and "off"
respectively. respectively.
The <PCMencoding> field indicates whether PCM encoding, if used, The <PCMencoding> field indicates whether PCM encoding, if used, is
is based on the A-law or the Mu-law. This can be used to qualify based on the A-law or the Mu-law. This can be used to qualify the '
the 'generic PCM' codec stated in some of the AAL2 profiles. The generic PCM' codec stated in some of the AAL2 profiles. The
<PCMencoding> field can take on the string values of "PCMA" <PCMencoding> field can take on the string values of "PCMA" and
and "PCMU". "PCMU".
The <fmaxFrame> and <bmaxFrame> fields are 16-bit integers that The <fmaxFrame> and <bmaxFrame> fields are 16-bit integers that can
can be represented in decimal or in hex. The meaning and values of be represented in decimal or in hex. The meaning and values of the
the <fmaxFrame> and <bmaxFrame> fields are as follows: <fmaxFrame> and <bmaxFrame> fields are as follows:
Field Meaning Values Field Meaning Values
<fmaxFrame> Maximum length of a 1- 65,535 <fmaxFrame> Maximum length of a 1- 65,535
frame mode data unit, frame mode data unit,
forward direction forward direction
<bmaxFrame> Maximum length of a 1- 65,535 <bmaxFrame> Maximum length of a 1- 65,535
frame mode data unit, frame mode data unit,
backward direction backward direction
5.6.2.14 The 'aal5sscop' attribute 5.6.2.14 The 'aal5sscop' attribute
When present, the 'aal5sscop' attribute is used to indicate the When present, the 'aal5sscop' attribute is used to indicate the
existence of an SSCOP [43] protocol layer over an AAL5 CPS existence of an SSCOP [43] protocol layer over an AAL5 CPS layer
layer [21], and the parameters which pertain to this SSCOP layer. [21], and the parameters which pertain to this SSCOP layer. SSCOP
SSCOP over AAL5 can also be selected via the aalApp attribute over AAL5 can also be selected via the aalApp attribute defined
defined below. The format of the 'aal5sscop' media attribute below. The format of the 'aal5sscop' media attribute line is as
line is as follows: follows:
Rajesh Kumar, Mohamed Mostafa. 53 a=aal5sscop: <fsscopsdu> <bsscopsdu> <fsscopuu> <bsscopuu>
a=aal5sscop: <fsscopsdu> <bsscopsdu> <fsscopuu> <bsscopuu>
Each of these fields can be set to a "-" when the intention is to not Each of these fields can be set to a "-" when the intention is to not
specify them in an SDP descriptor. specify them in an SDP descriptor.
The representation, meaning and values of the <fsscopsdu>, <bsscopsdu>, The representation, meaning and values of the <fsscopsdu>,
<fsscopuu> and <bsscopuu> fields are identical to those for the <bsscopsdu>, <fsscopuu> and <bsscopuu> fields are identical to those
'aal2sscs3661assured' media attribute line (Section 5.6.2.12). Note that it for the 'aal2sscs3661assured' media attribute line (Section
is necessary for the parameters on the 'aal5sscop' media attribute 5.6.2.12). Note that it is necessary for the parameters on the '
line to be consistent with each other. aal5sscop' media attribute line to be consistent with each other.
5.6.3 Service attributes 5.6.3 Service attributes
The following is a summary list of the SDP media attributes that can The following is a summary list of the SDP media attributes that can
be used to describe the services that use the ATM Adaptation Layer (AAL). be used to describe the services that use the ATM Adaptation Layer
These attributes are detailed in subsequent subsections. (AAL). These attributes are detailed in subsequent subsections.
* The 'atmmap' attribute. In the AAL1 and AAL5 contexts, this is
used to dynamically map payload types into codec strings.
* The 'silenceSupp' attribute, used to indicate the use of * The 'atmmap' attribute. In the AAL1 and AAL5 contexts, this is
of voice activity detection for silence suppression, and to used to dynamically map payload types into codec strings.
optionally parameterize the silence suppression function.
* The 'ecan' attribute, used to indicate the use of * The 'silenceSupp' attribute, used to indicate the use of of
of echo cancellation, and to parameterize the this function. voice activity detection for silence suppression, and to
optionally parameterize the silence suppression function.
* The 'gc' attribute, used to indicate the use of * The 'ecan' attribute, used to indicate the use of of echo
of gain control, and to parameterize the this function. cancellation, and to parameterize the this function.
* The 'profileDesc' attribute, which can be used to describe * The 'gc' attribute, used to indicate the use of of gain
AAL2 profiles. Although any AAL2 profile can be so described, control, and to parameterize the this function.
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 * The 'profileDesc' attribute, which can be used to describe AAL2
3-tuples for voice service. Each 3-tuple indicates a codec, profiles. Although any AAL2 profile can be so described, this
an optional packet length and an optional packetization attribute is useful for describing, at connection establishment
period. This complements the 'm' line information and should time, custom profiles that might not be known to the far end.
be consistent with it. This attribute applies in the AAL2 context only.
* The 'dsel' attribute, which indicates a prioritized list of * The 'vsel' attribute, which indicates a prioritized list of 3-
3-tuples for voiceband data service. Each 3-tuple indicates a tuples for voice service. Each 3-tuple indicates a codec, an
codec, an optional packet length and an optional packetization optional packet length and an optional packetization period.
period. This complements the 'm' line information and should This complements the 'm' line information and should be
be consistent with it. consistent with it.
* The 'fsel' attribute, which indicates a prioritized list of * The 'dsel' attribute, which indicates a prioritized list of 3-
3-tuples for facsimile service. Each 3-tuple indicates a 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. 54 * The 'fsel' attribute, which indicates a prioritized list of 3-
codec, an optional packet length and an optional packetization tuples for facsimile service. Each 3-tuple indicates a codec,
period. This complements the 'm' line information and should an optional packet length and an optional packetization period.
be consistent with it. This complements the 'm' line information and should be
consistent with it.
* The 'onewaySel' attribute, which indicates a prioritized list of * The 'onewaySel' attribute, which indicates a prioritized list
3-tuples for one direction of an asymmetric connection. Each 3-tuple of 3-tuples for one direction of an asymmetric connection.
indicates a codec, an optional packet length and an Each 3-tuple indicates a codec, an optional packet length and
optional packetization period. This complements the 'm' an optional packetization period. This complements the 'm'
line information and should be consistent with it. line information and should be consistent with it.
* The 'codecconfig' attribute, which is used to represent the * The 'codecconfig' attribute, which is used to represent the
contents of the single codec information element (IE) defined contents of the single codec information element (IE) defined
in ITU Q.765.5 [57]. in ITU Q.765.5 [57].
* The 'isup_usi' attribute which is used to represent the bearer * The 'isup_usi' attribute which is used to represent the bearer
capability information element defined in Section 4.5.5 of capability information element defined in Section 4.5.5 of ITU
ITU Q.931 [59], and reiterated as the user service Q.931 [59], and reiterated as the user service information
information element (IE) in Section 3.57 of ITU Q.763 [60]. element (IE) in Section 3.57 of ITU Q.763 [60].
* The 'uiLayer1_Prot' attribute, which is used to represent * The 'uiLayer1_Prot' attribute, which is used to represent the '
the 'User Information Layer 1 protocol' field within the User Information Layer 1 protocol' field within the bearer
bearer capability information element defined in Section capability information element defined in Section 4.5.5 of ITU
4.5.5 of ITU Q.931 [59]. Q.931 [59].
5.6.3.1 The 'atmmap' attribute 5.6.3.1 The 'atmmap' attribute
The 'atmmap' attribute is defined on the basis of the 'rtpmap' The 'atmmap' attribute is defined on the basis of the 'rtpmap'
attribute used in RFC2327. attribute used in RFC 2327.
a=atmmap:<payloadType> <encodingName> a=atmmap:<payloadType> <encodingName>
The 'atmmap' attribute is used to dynamically map encoding names The 'atmmap' attribute is used to dynamically map encoding names into
into payload types. This is necessary for those encoding names which payload types. This is necessary for those encoding names which have
have not been assigned a static payload type through IANA [31]. Payload not been assigned a static payload type through IANA [31]. Payload
types and encoding techniques that have been registered with IANA types and encoding techniques that have been registered with IANA for
for RTP are retained for AAL1 and AAL5. RTP are retained for AAL1 and AAL5.
The range of statically defined payload types is in the range The range of statically defined payload types is in the range 0-95.
0-95. All static assignments of payload types to codecs are All static assignments of payload types to codecs are listed in [31].
listed in [31]. The range of payload types defined dynamically The range of payload types defined dynamically via the 'atmmap'
via the 'atmmap' attribute is 96-127. attribute is 96-127.
In addition to reiterating the payload types and encoding In addition to reiterating the payload types and encoding names in
names in [31], Table 2 defines non-standard encoding names [31], Table 2 defines non-standard encoding names (with "X-"
(with "X-" prefixes). Note that [31], rather than Table 2, prefixes). Note that [31], rather than Table 2, is the authoritative
is the authoritative list of standard codec names and payload list of standard codec names and payload types in the ATM context.
types in the ATM context.
Rajesh Kumar, Mohamed Mostafa. 55
Table 2: Encoding Names and Payload Types Table 2: Encoding Names and Payload Types
|---------------------|--------------|---------------------------| |---------------------|--------------|---------------------------|
| Encoding Technique | Encoding Name| Payload type | | Encoding Technique | Encoding Name| Payload type |
|---------------------|--------------|---------------------------| |---------------------|--------------|---------------------------|
| PCM - Mu law | "PCMU" | 0 (Statically Mapped) | | PCM - Mu law | "PCMU" | 0 (Statically Mapped) |
|---------------------|--------------|---------------------------| |---------------------|--------------|---------------------------|
| 32 kbps ADPCM | "G726-32" | 2 (Statically Mapped) | | 32 kbps ADPCM | "G726-32" | 2 (Statically Mapped) |
|---------------------|--------------|---------------------------| |---------------------|--------------|---------------------------|
|Dual rate 5.3/6.3kbps| "G723" | 4 (Statically Mapped) | |Dual rate 5.3/6.3kbps| "G723" | 4 (Statically Mapped) |
|---------------------|--------------|---------------------------| |---------------------|--------------|---------------------------|
| PCM- A law | "PCMA" | 8 (Statically Mapped) | | PCM- A law | "PCMA" | 8 (Statically Mapped) |
skipping to change at line 2856 skipping to change at page 61, line 35
| kbps - high rate | | | | kbps - high rate | | |
|---------------------|--------------|---------------------------| |---------------------|--------------|---------------------------|
| Dual rate 5.3/6.3 |"X-G7231-L" | None, map dynamically | | Dual rate 5.3/6.3 |"X-G7231-L" | None, map dynamically |
| kbps - low rate | | | | kbps - low rate | | |
|---------------------|--------------|---------------------------| |---------------------|--------------|---------------------------|
| Dual rate 5.3/6.3 |"X-G7231a-H" | None, map dynamically | | Dual rate 5.3/6.3 |"X-G7231a-H" | None, map dynamically |
| kbps - high rate w/ | | | | kbps - high rate w/ | | |
| ITU-defined silence | | | | ITU-defined silence | | |
| suppression | | | | suppression | | |
|----------------------------------------------------------------| |----------------------------------------------------------------|
Rajesh Kumar, Mohamed Mostafa. 56
+---------------------+--------------+---------------------------+ +---------------------+--------------+---------------------------+
| Dual rate 5.3/6.3 |"X-G7231a-L" | None, map dynamically | | Dual rate 5.3/6.3 |"X-G7231a-L" | None, map dynamically |
| kbps - high rate w/ | | | | kbps - high rate w/ | | |
| ITU-defined silence | | | | ITU-defined silence | | |
| suppression | | | | suppression | | |
|---------------------|--------------|---------------------------| |---------------------|--------------|---------------------------|
| 16 kbps EADPCM | "X-G727-16" | None, map dynamically | | 16 kbps EADPCM | "X-G727-16" | None, map dynamically |
|---------------------|--------------|---------------------------| |---------------------|--------------|---------------------------|
| 24 kbps EADPCM | "X-G727-24" | None, map dynamically | | 24 kbps EADPCM | "X-G727-24" | None, map dynamically |
|---------------------|--------------|---------------------------| |---------------------|--------------|---------------------------|
skipping to change at line 2886 skipping to change at page 62, line 16
|per af-vtoa-78 [7] | | | |per af-vtoa-78 [7] | | |
|---------------------|--------------|---------------------------| |---------------------|--------------|---------------------------|
|GSM Full Rate | "GSM" | 3 (Statically Mapped) | |GSM Full Rate | "GSM" | 3 (Statically Mapped) |
|---------------------|--------------|---------------------------| |---------------------|--------------|---------------------------|
|GSM Half Rate | "GSM-HR" | None, map dynamically | |GSM Half Rate | "GSM-HR" | None, map dynamically |
|---------------------|--------------|---------------------------| |---------------------|--------------|---------------------------|
|GSM-Enhanced Full Rate "GSM-EFR" | None, map dynamically | |GSM-Enhanced Full Rate "GSM-EFR" | None, map dynamically |
|---------------------|--------------|---------------------------| |---------------------|--------------|---------------------------|
|GSM-Enhanced Half Rate "GSM-EHR" | None, map dynamically | |GSM-Enhanced Half Rate "GSM-EHR" | None, map dynamically |
|---------------------|--------------|---------------------------| |---------------------|--------------|---------------------------|
|Group 3 fax demod. "X-FXDMOD-3" | None, map dynamically | |Group 3 fax demod. | "X-FXDMOD-3" | None, map dynamically |
|---------------------|--------------|---------------------------| |---------------------|--------------|---------------------------|
| Federal Standard | "1016" | 1 (Statically Mapped) | | Federal Standard | "1016" | 1 (Statically Mapped) |
| FED-STD 1016 CELP | | | | FED-STD 1016 CELP | | |
|---------------------|--------------|---------------------------| |---------------------|--------------|---------------------------|
| DVI4, 8 KHz [3] | "DVI4" | 5 (Statically Mapped) | | DVI4, 8 KHz [3] | "DVI4" | 5 (Statically Mapped) |
|---------------------|--------------|---------------------------| |---------------------|--------------|---------------------------|
| DVI4, 16 KHz [3] | "DVI4" | 6 (Statically Mapped) | | DVI4, 16 KHz [3] | "DVI4" | 6 (Statically Mapped) |
|---------------------|--------------|---------------------------| |---------------------|--------------|---------------------------|
| LPC [3], Linear | "LPC" | 7 (Statically Mapped) | | LPC [3], Linear | "LPC" | 7 (Statically Mapped) |
| Predictive Coding | | | | Predictive Coding | | |
skipping to change at line 2910 skipping to change at page 62, line 40
| Double channel | | | | Double channel | | |
|---------------------|--------------|---------------------------| |---------------------|--------------|---------------------------|
| L16 [3], Sixteen | "L16" | 11 (Statically Mapped) | | L16 [3], Sixteen | "L16" | 11 (Statically Mapped) |
| Bit Linear PCM, | | | | Bit Linear PCM, | | |
| Single channel | | | | Single channel | | |
|---------------------|--------------|---------------------------| |---------------------|--------------|---------------------------|
| QCELP [3] | "QCELP" | 12 (Statically Mapped) | | QCELP [3] | "QCELP" | 12 (Statically Mapped) |
|---------------------|--------------|---------------------------| |---------------------|--------------|---------------------------|
| MPEG1/MPEG2 audio | "MPA" | 14 (Statically Mapped) | | MPEG1/MPEG2 audio | "MPA" | 14 (Statically Mapped) |
|---------------------|--------------|---------------------------| |---------------------|--------------|---------------------------|
Rajesh Kumar, Mohamed Mostafa. 57
+---------------------+--------------+---------------------------+ +---------------------+--------------+---------------------------+
| DVI4, 11.025 KHz[3] | "DVI4" | 16 (Statically Mapped) | | DVI4, 11.025 KHz[3] | "DVI4" | 16 (Statically Mapped) |
|---------------------|--------------|---------------------------| |---------------------|--------------|---------------------------|
| DVI4, 22.05 KHz [3] | "DVI4" | 17 (Statically Mapped) | | DVI4, 22.05 KHz [3] | "DVI4" | 17 (Statically Mapped) |
|---------------------|--------------|---------------------------| |---------------------|--------------|---------------------------|
| MPEG1/MPEG2 video | "MPV" | 32 (Statically Mapped) | | MPEG1/MPEG2 video | "MPV" | 32 (Statically Mapped) |
|---------------------|--------------|---------------------------| |---------------------|--------------|---------------------------|
| MPEG 2 audio/video | "MP2T" | 33 (Statically Mapped) | | MPEG 2 audio/video | "MP2T" | 33 (Statically Mapped) |
| transport stream | | | | transport stream | | |
|---------------------|--------------|---------------------------| |---------------------|--------------|---------------------------|
skipping to change at line 2963 skipping to change at page 63, line 43
| Adaptive Multirate | "HR-AMR" | None, map dynamically | | Adaptive Multirate | "HR-AMR" | None, map dynamically |
|-Half Rate (3GPP)[58]| | | |-Half Rate (3GPP)[58]| | |
|---------------------|--------------|---------------------------| |---------------------|--------------|---------------------------|
| Adaptive Multirate | "UMTS-AMR" | None, map dynamically | | Adaptive Multirate | "UMTS-AMR" | None, map dynamically |
|- UMTS(3GPP) [58] | | | |- UMTS(3GPP) [58] | | |
|---------------------|--------------|---------------------------| |---------------------|--------------|---------------------------|
| Adaptive Multirate | "AMR" | None, map dynamically | | Adaptive Multirate | "AMR" | None, map dynamically |
|- Generic [58] | | | |- Generic [58] | | |
|---------------------|--------------|---------------------------| |---------------------|--------------|---------------------------|
Rajesh Kumar, Mohamed Mostafa. 58 5.6.3.2 The 'silenceSupp' attribute
5.6.3.2 The 'silenceSupp' attribute
When present, the 'silenceSupp' attribute is used to indicate When present, the 'silenceSupp' attribute is used to indicate the use
the use or non-use of silence suppression. or non-use of silence suppression. The format of the 'silenceSupp'
The format of the 'silenceSupp' media attribute line is media attribute line is as follows:
as follows:
a=silenceSupp: <silenceSuppEnable> <silenceTimer> <suppPref> <sidUse> a=silenceSupp: <silenceSuppEnable> <silenceTimer> <suppPref> <sidUse>
<fxnslevel> <fxnslevel>
If any of the parameters in the silenceSupp media attribute line If any of the parameters in the silenceSupp media attribute line is
is not specified, is inapplicable or is implied, then it is set to not specified, is inapplicable or is implied, then it is set to "-".
"-".
The <silenceSuppEnable> can take on values of "on" or "off". If it The <silenceSuppEnable> can take on values of "on" or "off". If it
is "on", then silence suppression is enabled. is "on", then silence suppression is enabled.
The <silenceTimer> is a 16-bit field which can be represented in The <silenceTimer> is a 16-bit field which can be represented in
decimal or hex. Each increment (tick) of this timer represents decimal or hex. Each increment (tick) of this timer represents a
a millisecond. The maximum value of this timer is between 1 and 3 millisecond. The maximum value of this timer is between 1 and 3
minutes. This timer represents the time-lag before silence minutes. This timer represents the time-lag before silence
suppression kicks in. Even though this can, theoretically, be suppression kicks in. Even though this can, theoretically, be as low
as low as 1 ms, most DSP algorithms take more than that to as 1 ms, most DSP algorithms take more than that to detect silence.
detect silence. Setting <silenceTimer> to a large value (say Setting <silenceTimer> to a large value (say 1 minute> is equivalent
1 minute> is equivalent to disabling silence suppression to disabling silence suppression within a call. However, idle
within a call. However, idle channel suppression between calls channel suppression between calls on the basis of silence suppression
on the basis of silence suppression is still operative in is still operative in non-switched, trunking applications if
non-switched, trunking applications if <silenceSuppEnable> = "on" <silenceSuppEnable> = "on" and <silenceTimer> is a large value.
and <silenceTimer> is a large value.
The <suppPref> specifies the preferred silence suppression The <suppPref> specifies the preferred silence suppression method
method that is preferred or already selected. It can that is preferred or already selected. It can take on the string
take on the string values of "standard" and "custom". If values of "standard" and "custom". If its value is "standard", then
its value is "standard", then a standard method (e.g. ITU-defined) a standard method (e.g., ITU-defined) is preferred to custom methods
is preferred to custom methods if such a standard if such a standard is defined. Otherwise, a custom method may be
is defined. Otherwise, a custom method may be used. If used. If <suppPref> is set to "custom", then a custom method, if
<suppPref> is set to "custom", then a custom method, if
available, is preferred to the standard method. available, is preferred to the standard method.
The <sidUse> indicates whether SIDs (Silence Insertion The <sidUse> indicates whether SIDs (Silence Insertion Descriptors)
Descriptors) are to be used, and whether they use fixed comfort are to be used, and whether they use fixed comfort noise or sampled
noise or sampled background noise. It can take on the background noise. It can take on the string values of "No SID",
string values of "No SID", "Fixed Noise", "Sampled Noise". "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:
Rajesh Kumar, Mohamed Mostafa. 59
+-----------------------+---------------------+
| <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)|
+-----------------------+---------------------+
In addition to the decimal representation of <fxnslevel>, a If the value of <sidUse> is "Fixed Noise", then <fxnslevel> provides
hex representation, preceded by a "0x" prefix, is also allowed. its level. It can take on integer values in the range 0-127, as
follows:
5.6.3.3 The 'ecan' attribute +-----------------------+---------------------+
| <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)|
+-----------------------+---------------------+
When present, the 'ecan' attribute s is used to indicate In addition to the decimal representation of <fxnslevel>, a hex
the use or non-use of echo cancellation. There can be several representation, preceded by a "0x" prefix, is also allowed.
'ecan' lines in an SDP description.
The format of the 'ecan' media attribute line is 5.6.3.3 The 'ecan' attribute
as follows:
a=ecan:<directionFlag><ecanEnable><ecanType> When present, the 'ecan' attribute s is used to indicate the use or
non-use of echo cancellation. There can be several 'ecan' lines in
an SDP description.
The <directionFlag> can be assigned the following string values: "f", The format of the 'ecan' media attribute line is as follows:
"b" and "fb". "f" and "b" indicate the forward and backward
directions respectively. "fb" refers to both directions (forward and
backward). Conventions for the forward and backward directions
are per section 2.3.
The <directionFlag> is always specified. Except for the <directionFlag>, a=ecan:<directionFlag><ecanEnable><ecanType>
the remaining parameters can be set to "-" to indicate that they are
not specified, inapplicable or implied. However, there must be some
specified parameters for the line to be useful in an SDP description.
If the 'ecan' media attribute lines is not present, The <directionFlag> can be assigned the following string values: "f",
then means other than the SDP descriptor must be used to determine "b" and "fb". "f" and "b" indicate the forward and backward
the applicability and nature of echo cancellation for a connection directions respectively. "fb" refers to both directions (forward and
direction. Examples of such means are MIB provisioning, the local backward). Conventions for the forward and backward directions are
connection options structure in MGCP etc. per section 2.3.
The <ecanEnable> parameter can take on values of "on" or "off". If it The <directionFlag> is always specified. Except for the
is "on", then echo cancellation is enabled. If it is "off", <directionFlag>, the remaining parameters can be set to "-" to
then echo cancellation is disabled. indicate that they are not specified, inapplicable or implied.
However, there must be some specified parameters for the line to be
useful in an SDP description.
The <ecanType> parameter can take on the string values "G165" and "G168" If the 'ecan' 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 for a connection direction. Examples
of such means are MIB provisioning, the local connection options
structure in MGCP etc.
Rajesh Kumar, Mohamed Mostafa. 60 The <ecanEnable> parameter can take on values of "on" or "off". If
respectively. it is "on", then echo cancellation is enabled. If it is "off", then
echo cancellation is disabled.
When SDP is used with some media gateway control protocols such as MGCP The <ecanType> parameter can take on the string values "G165" and
and Megaco [26], there exist means outside SDP descriptions to specify "G168" respectively.
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.6.3.4 The 'gc' attributes 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.
When present, the 'gc' attribute is used to indicate 5.6.3.4 The 'gc' attributes
the use or non-use of gain control. There can be several
'gc' lines in an SDP description.
The format of the 'gc' media attribute line is as When present, the 'gc' attribute is used to indicate the use or non-
follows: use of gain control. There can be several 'gc' lines in an SDP
description.
a=gc:<directionFlag><gcEnable><gcLvl> The format of the 'gc' media attribute line is as follows:
The <directionFlag> can be assigned the following string values: "f", a=gc:<directionFlag><gcEnable><gcLvl>
"b" and "fb". "f" and "b" indicate the forward and backward
directions respectively. "fb" refers to both directions (forward and
backward). Conventions for the forward and backward directions
are per section 2.3.
The <directionFlag> is always specified. Except for the <directionFlag>, The <directionFlag> can be assigned the following string values: "f",
the remaining parameters can be set to "-" to indicate that they are "b" and "fb". "f" and "b" indicate the forward and backward
not specified, inapplicable or implied. However, there must be some directions respectively. "fb" refers to both directions (forward and
specified parameters for the line to be useful in an SDP description. backward). Conventions for the forward and backward directions are
per section 2.3.
If the 'gc' media attribute lines is not present, The <directionFlag> is always specified. Except for the
then means other than the SDP descriptor must be used to determine <directionFlag>, the remaining parameters can be set to "-" to
the applicability and nature of gain control for a connection indicate that they are not specified, inapplicable or implied.
direction. Examples of such means are MIB provisioning, the local However, there must be some specified parameters for the line to be
connection options structure in MGCP etc. useful in an SDP description.
The <gcEnable> parameter can take on values of "on" or "off". If it If the 'gc' media attribute lines is not present, then means other
is "on", then gain control is enabled. If it is "off", then than the SDP descriptor must be used to determine the applicability
gain control is disabled. and nature of gain control for a connection direction. Examples of
such means are MIB provisioning, the local connection options
structure in MGCP etc.
The <gcLvl> parameter is represented as the decimal or hex The <gcEnable> parameter can take on values of "on" or "off". If it
equivalent of a 16-bit binary field. A value of 0xFFFF implies is "on", then gain control is enabled. If it is "off", then gain
automatic gain control. Otherwise, this number indicates the control is disabled.
number of decibels of inserted loss. The upper bound, 65,535 dB
(0xFFFE) of inserted loss, is a large number and is a
carryover from Megaco [26]. In practical applications, the inserted loss
is much lower.
When SDP is used with some media gateway control protocols such as MGCP The <gcLvl> parameter is represented as the decimal or hex equivalent
and Megaco [26], there exist means outside SDP descriptions to specify of a 16-bit binary field. A value of 0xFFFF implies automatic gain
the gain control properties of a connection. Nevertheless, this control. Otherwise, this number indicates the number of decibels of
inserted loss. The upper bound, 65,535 dB (0xFFFE) of inserted loss,
is a large number and is a carryover from Megaco [26]. In practical
applications, the inserted loss is much lower.
Rajesh Kumar, Mohamed Mostafa. 61 When SDP is used with some media gateway control protocols such as
media attribute line is included for completeness. As a result, the MGCP and Megaco [26], there exist means outside SDP descriptions to
SDP can be used for describing gain control in applications specify the gain control properties of a connection. Nevertheless,
where alternate means for this are unavailable. 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.6.3.5 The 'profileDesc' attribute 5.6.3.5 The 'profileDesc' attribute
There is one 'profileDesc' media attribute line for each AAL2 There is one 'profileDesc' media attribute line for each AAL2 profile
profile that is intended to be described. The 'profileDesc' media that is intended to be described. The 'profileDesc' media attribute
attribute line is structured as follows: line is structured as follows:
a=profileDesc: <aal2transport> <profile> <uuiCodeRange#1> a=profileDesc: <aal2transport> <profile> <uuiCodeRange#1>
<encodingName#1> <packetLength#1> <packetTime#1> <encodingName#1> <packetLength#1> <packetTime#1>
<uuiCodeRange#2> <encodingName#2> <packetLength#2> <uuiCodeRange#2> <encodingName#2> <packetLength#2>
<packetTime#2>... <uuiCodeRange#N> <encodingName#N> <packetTime#2>... <uuiCodeRange#N> <encodingName#N>
<packetLength#N> <packetTime#N> <packetLength#N> <packetTime#N>
Here, <aal2transport> can have those values of <transport> (Table 1) that Here, <aal2transport> can have those values of <transport> (Table 1)
pertain to AAL2. These are: that pertain to AAL2. These are:
AAL2/ATMF AAL2/ATMF
AAL2/ITU AAL2/ITU
AAL2/custom AAL2/custom
AAL2/<corporateName> AAL2/<corporateName>
AAL2/IEEE:<oui> AAL2/IEEE:<oui>
The parameter <profile> is identical to its definition for the 'm' The parameter <profile> is identical to its definition for the 'm'
line (Section 5.5.4). line (Section 5.5.4).
The profile elements (rows in the profile tables of ITU I.366.2 or 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> AF-VTOA-0113) are represented as four-tuples following the <profile>
parameter in the 'profileDesc' media attribute line. If a member of 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 one of these four-tuples is not specified or is implied, then it is
set to "-". set to "-".
The <uuiCodeRange> parameter is represented by D1-D2, where D1 and The <uuiCodeRange> parameter is represented by D1-D2, where D1 and D2
D2 are decimal integers in the range 0 through 15. are decimal integers in the range 0 through 15.
The <encodingName> parameter can take one of the values in column 2 The <encodingName> parameter can take one of the values in column 2
of Table 2. Additionally, it can take on the following descriptor of Table 2. Additionally, it can take on the following descriptor
strings: "PCMG", "SIDG" and "SID729". These stand for generic PCM, strings: "PCMG", "SIDG" and "SID729". These stand for generic PCM,
generic SID and G.729 SID respectively. generic SID and G.729 SID respectively.
The <packetLength> is a decimal integer representation of the AAL2 The <packetLength> is a decimal integer representation of the AAL2
packet length in octets. packet length in octets.
The <packetTime> is a decimal integer representation of the AAL2 The <packetTime> is a decimal integer representation of the AAL2
packetization interval in microseconds. packetization interval in microseconds.
For instance, the 'profileDesc' media attribute line below defines For instance, the 'profileDesc' media attribute line below defines
the AAL2/custom 100 profile. This profile is reproduced in the Table 3 the AAL2/custom 100 profile. This profile is reproduced in the Table
below. For a description of the parameters in this profile such as 3 below. For a description of the parameters in this profile such as
Rajesh Kumar, Mohamed Mostafa. 62
M and the sequence number interval, see ITU I.366.2 [13]. M and the sequence number interval, see ITU I.366.2 [13].
a=profileDesc:AAL2/custom 100 0-7 PCMG 40 5000 0-7 SIDG 1 5000 8-15 a=profileDesc:AAL2/custom 100 0-7 PCMG 40 5000 0-7 SIDG 1 5000 8-15
G726-32 40 10000 8-15 SIDG 1 5000 G726-32 40 10000 8-15 SIDG 1 5000
If the <packetTime> parameter is to be omitted or implied, then the If the <packetTime> parameter is to be omitted or implied, then the
same profile can be represented as follows: same profile can be represented as follows:
a=profileDesc:AAL2/custom 100 0-7 PCMG 40 - 0-7 SIDG 1 - 8-15 a=profileDesc:AAL2/custom 100 0-7 PCMG 40 - 0-7 SIDG 1 - 8-15
G726-32 40 - 8-15 SIDG 1 - G726-32 40 - 8-15 SIDG 1 -
If a gateway has a provisioned or hard coded definition of a If a gateway has a provisioned or hard coded definition of a profile,
profile, then any definition provided via the 'profileDesc' line then any definition provided via the 'profileDesc' line overrides it.
overrides it. The exception to this rule is with regard to standard The exception to this rule is with regard to standard profiles such
profiles such as ITU-defined profiles and ATMF-defined profiles. In as ITU-defined profiles and ATMF-defined profiles. In general, these
general, these should not be defined via a 'profileDesc' media should not be defined via a 'profileDesc' media attribute line. If
attribute line. If they are, then the definition needs to be they are, then the definition needs to be consistent with the
consistent with the standard definition else the SDP session standard definition else the SDP session descriptor should be
descriptor should be rejected with an appropriate error code. rejected with an appropriate error code.
Table 3: Example of a custom AAL2 profile Table 3: Example of a custom AAL2 profile
|---------------------------------------------------------------| |---------------------------------------------------------------|
| UUI | Packet |Encoding | | |Packet|Seq.No. | | UUI | Packet |Encoding | | |Packet|Seq.No. |
| Code | Length |per ITU |Description of | M |Time |Interval| | Code | Length |per ITU |Description of | M |Time |Interval|
|point |(octets)|I.366.2 | Algorithm | |(ms) |(ms) | |point |(octets)|I.366.2 | Algorithm | |(ms) |(ms) |
|Range | | 2/99 | | | | | |Range | | 2/99 | | | | |
| | | version | | | | | | | | version | | | | |
|---------------------------------------------------------------| |---------------------------------------------------------------|
| 0-7 | 40 | Figure | PCM, G.711-64,| 1 | 5 | 5 | | 0-7 | 40 | Figure | PCM, G.711-64,| 1 | 5 | 5 |
| | | B-1 | generic | | | | | | | B-1 | generic | | | |
|------|--------|---------|---------------|-----|------|--------| |------|--------|---------|---------------|-----|------|--------|
skipping to change at line 3212 skipping to change at page 68, line 45
| 0-7 | 1 | Figure | Generic SID | 1 | 5 | 5 | | 0-7 | 1 | Figure | Generic SID | 1 | 5 | 5 |
| | | I-1 | | | | | | | | I-1 | | | | |
|------|--------|---------|---------------|-----|------|--------| |------|--------|---------|---------------|-----|------|--------|
| 8-15 | 40 | Figure | ADPCM, | 2 | 10 | 5 | | 8-15 | 40 | Figure | ADPCM, | 2 | 10 | 5 |
| | | E-2 | G.726-32 | | | | | | | E-2 | G.726-32 | | | |
|------|--------|---------|---------------|-----|------|--------| |------|--------|---------|---------------|-----|------|--------|
| 8-15 | 1 | Figure | Generic SID | 1 | 5 | 5 | | 8-15 | 1 | Figure | Generic SID | 1 | 5 | 5 |
| | | I-1 | | | | | | | | I-1 | | | | |
|------|--------|---------|---------------|-----|------|--------| |------|--------|---------|---------------|-----|------|--------|
5.6.3.6 The 'vsel' attribute 5.6.3.6 The 'vsel' attribute
The 'vsel' attribute indicates a prioritized list of one or more The 'vsel' attribute indicates a prioritized list of one or more 3-
3-tuples for voice service. Each 3-tuple indicates a codec, an optional tuples for voice service. Each 3-tuple indicates a codec, an
packet length and an optional packetization period. This complements the 'm' optional packet length and an optional packetization period. This
line information and should be consistent with it. complements the 'm' line information and should be consistent with
it.
The 'vsel' attribute refers to all directions of a connection. The 'vsel' attribute refers to all directions of a connection. For a
For a bidirectional connection, these are the forward and backward bidirectional connection, these are the forward and backward
directions. For a unidirectional connection, this can be either the directions. For a unidirectional connection, this can be either the
backward or forward direction.
Rajesh Kumar, Mohamed Mostafa. 63 The 'vsel' attribute is not meant to be used with bidirectional
backward or forward direction. connections that have asymmetric codec configurations described in a
The 'vsel' attribute is not meant to be used with bidirectional single SDP descriptor. For these, the 'onewaySel' attribute (section
connections that have asymmetric codec configurations 5.6.3.9) should be used. See section 5.6.3.9 for the requirement to
described in a single SDP descriptor. For these, the not use the 'vsel' and 'onewaySel' attributes in the same SDP
'onewaySel' attribute (section 5.6.3.9) should be used. See section 5.6.3.9 descriptor.
for the requirement to not use the 'vsel' and 'onewaySel' attributes
in the same SDP descriptor.
The 'vsel' line is structured as follows: The 'vsel' line is structured as follows:
a=vsel:<encodingName #1> <packetLength #1><packetTime #1> a=vsel:<encodingName #1> <packetLength #1><packetTime #1>
<encodingName #2> <packetLength #2><packetTime #2> <encodingName #2> <packetLength #2><packetTime #2>
... ...
<encodingName #N> <packetLength #N><packetTime #N> <encodingName #N> <packetLength #N><packetTime #N>
where the <encodingName> parameter can take one of the values in column 2 of where the <encodingName> parameter can take one of the values in
Table 2. The <packetLength> is a decimal integer representation of the column 2 of Table 2. The <packetLength> is a decimal integer
packet length in octets. The <packetTime> is a decimal integer representation of the packet length in octets. The <packetTime> is a
representation of the packetization interval in microseconds. The parameters decimal integer representation of the packetization interval in
<packetLength> and <packetTime> can be set to "-" when not needed. Also, microseconds. The parameters <packetLength> and <packetTime> can be
the entire 'vsel' media attribute line can be omitted when not needed. set to "-" when not needed. Also, the entire 'vsel' media attribute
line can be omitted when not needed.
For example, For example,
a=vsel:G729 10 10000 G726-32 40 10000 a=vsel:G729 10 10000 G726-32 40 10000
indicates first preference of G.729 or G.729a (both are interoperable) as indicates first preference of G.729 or G.729a (both are
the voice encoding scheme. A packet length of 10 octets and a packetization interoperable) as the voice encoding scheme. A packet length of 10
interval of 10 ms are associated with this codec. G726-32 is the second octets and a packetization interval of 10 ms are associated with this
preference stated in this line, with an associated packet length of 40 codec. G726-32 is the second preference stated in this line, with an
octets and a packetization interval of 10 ms. If the packet length and associated packet length of 40 octets and a packetization interval of
packetization interval are intended to be omitted, then this media attribute 10 ms. If the packet length and packetization interval are intended
line becomes to be omitted, then this media attribute line becomes
a=vsel:G729 - - G726-32 - - a=vsel:G729 - - G726-32 - -
The media attribute line The media attribute line
a=vsel:G726-32 40 10000 a=vsel:G726-32 40 10000
indicates preference for or selection of 32 kbps ADPCM with a packet indicates preference for or selection of 32 kbps ADPCM with a packet
length of 40 octets and a packetization interval of 10 ms. length of 40 octets and a packetization interval of 10 ms.
This media attribute line can be used in ATM as well as non-ATM contexts. This media attribute line can be used in ATM as well as non-ATM
Within the ATM context, it can be applied to the AAL1, AAL2 and AAL5 contexts. Within the ATM context, it can be applied to the AAL1,
adaptations. The <packetLength> and <packetTime> are not meaningful AAL2 and AAL5 adaptations. The <packetLength> and <packetTime> are
in the AAL1 case and should be set to "-". In the AAL2 case, not meaningful in the AAL1 case and should be set to "-". In the
this line determines the use of some or all of the rows in AAL2 case, this line determines the use of some or all of the rows in
a given profile table. If multiple 3-tuples are present, they a given profile table. If multiple 3-tuples are present, they can
can indicate a hierarchical assignment of some rows in that indicate a hierarchical assignment of some rows in that profile to
profile to voice service e.g. row A preferred to row B etc. voice service (e.g., row A preferred to row B etc.). If multiple
If multiple profiles are present on the 'm' line, the profile profiles are present on the 'm' line, the profile qualified by this
attribute is the first profile. If a single profile that has been
Rajesh Kumar, Mohamed Mostafa. 64 selected for a connection is indicated in the 'm' line, the 'vsel'
qualified by this attribute is the first attribute qualifies the use, for voice service, of codecs within that
profile. If a single profile that has been selected for a connection profile.
is indicated in the 'm' line, the 'vsel' attribute qualifies the
use, for voice service, of codecs within that profile.
With most of the encoding names in Figure 2, the packet length With most of the encoding names in Figure 2, the packet length and
and packetization period can be derived from each other. One of them packetization period can be derived from each other. One of them can
can be set to "-" without a loss of information. There are some be set to "-" without a loss of information. There are some
exceptions such as the IANA-registered encoding names G723, DVI4 and exceptions such as the IANA-registered encoding names G723, DVI4 and
L16 for which this is not true. Therefore, there is a need to L16 for which this is not true. Therefore, there is a need to retain
retain both the packet length and packetization period in the both the packet length and packetization period in the definition of
definition of the 'vsel' line. the 'vsel' line.
5.6.3.7 The 'dsel' attribute 5.6.3.7 The 'dsel' attribute
The 'dsel' attribute indicates a prioritized list of The 'dsel' attribute indicates a prioritized list of one or more 3-
one or more 3-tuples for voiceband data service. The <fxIncl> tuples for voiceband data service. The <fxIncl> flag indicates
flag indicates whether this definition of voiceband data whether this definition of voiceband data includes fax ("on" value)
includes fax ("on" value) or not ("off" value). If <fxIncl> is or not ("off" value). If <fxIncl> is "on", then the 'dsel' line must
"on", then the 'dsel' line must be consistent with any 'fsel' line be consistent with any 'fsel' line in the session description. In
in the session description. In this case, an error event is generated this case, an error event is generated in the case of inconsistency.
in the case of inconsistency. Each 3-tuple indicates a codec, Each 3-tuple indicates a codec, an optional packet length and an
an optional packet length and an optional packetization optional packetization period. This complements the 'm' line
period. This complements the 'm' line information and should information and should be consistent with it.
be consistent with it.
The 'dsel' attribute refers to all directions of a connection. The 'dsel' attribute refers to all directions of a connection. For a
For a bidirectional connection, these are the forward and backward bidirectional connection, these are the forward and backward
directions. For a unidirectional connection, this can be either the directions. For a unidirectional connection, this can be either the
backward or forward direction. backward or forward direction.
The 'dsel' attribute is not meant to be used with bidirectional The 'dsel' attribute is not meant to be used with bidirectional
connections that have asymmetric codec configurations connections that have asymmetric codec configurations described in a
described in a single SDP descriptor. For these, the single SDP descriptor. For these, the 'onewaySel' attribute (section
'onewaySel' attribute (section 5.6.3.9) should be used. See section 5.6.3.9 5.6.3.9) should be used. See section 5.6.3.9 for the requirement to
for the requirement to not use the 'dsel' and 'onewaySel' attributes not use the 'dsel' and 'onewaySel' attributes in the same SDP
in the same SDP descriptor. descriptor.
The 'dsel' line is structured as follows: The 'dsel' line is structured as follows:
a=dsel:<fxIncl> <encodingName #1> <packetLength #1><packetTime #1> a=dsel:<fxIncl> <encodingName #1> <packetLength #1><packetTime #1>
<encodingName #2> <packetLength #2><packetTime #2> <encodingName #2> <packetLength #2><packetTime #2>
... ...
<encodingName #N> <packetLength #N><packetTime #N> <encodingName #N> <packetLength #N><packetTime #N>
where the <encodingName> parameter can take one of the values in where the <encodingName> parameter can take one of the values in
column 2 of Table 2. The <packetLength> and <packetTime> column 2 of Table 2. The <packetLength> and <packetTime> parameters
parameters are per their definition, above, for the 'vsel' are per their definition, above, for the 'vsel' media attribute line.
media attribute line. The parameters <packetLength> and <packetTime>) The parameters <packetLength> and <packetTime>) can be set to "-"
can be set to "-" when not needed. The <fxIncl> flag is presumed to be when not needed. The <fxIncl> flag is presumed to be "off" if it is
"off" if it is set to "-". Also, the entire 'dsel' media attribute line set to "-". Also, the entire 'dsel' media attribute line can be
can be omitted when not needed. omitted when not needed.
Rajesh Kumar, Mohamed Mostafa. 65
For example, For example,
a=dsel:- G726-32 20 5000 PCMU 40 5000 a=dsel:- G726-32 20 5000 PCMU 40 5000
indicates that this line does not address facsimile, and that the indicates that this line does not address facsimile, and that the
first preference for the voiceband data codes is 32 kbps ADPCM, first preference for the voiceband data codes is 32 kbps ADPCM, while
while the second preference is PCMU. The packet length the second preference is PCMU. The packet length and the
and the packetization interval associated with G726-32 are 20 octets and packetization interval associated with G726-32 are 20 octets and 5 ms
5 ms respectively. For PCMU, they are 40 octets and 5 ms respectively. respectively. For PCMU, they are 40 octets and 5 ms respectively.
This media attribute line can be used in ATM as well as non-ATM contexts. This media attribute line can be used in ATM as well as non-ATM
Within the ATM context, it can be applied to the AAL1, AAL2 and AAL5 contexts. Within the ATM context, it can be applied to the AAL1,
adaptations. The <packetLength> and <packetTime> are not meaningful AAL2 and AAL5 adaptations. The <packetLength> and <packetTime> are
in the AAL1 case and should be set to "-". In the AAL2 case, not meaningful in the AAL1 case and should be set to "-". In the
this line determines the use of some or all of the rows in AAL2 case, this line determines the use of some or all of the rows in
a given profile table. If multiple 3-tuples are present, they a given profile table. If multiple 3-tuples are present, they can
can indicate a hierarchical assignment of some rows in that indicate a hierarchical assignment of some rows in that profile to
profile to voiceband data service e.g. row A preferred to row B etc. voiceband data service (e.g., row A preferred to row B etc.) If
If multiple profiles are present on the 'm' line, the profile multiple profiles are present on the 'm' line, the profile qualified
qualified by this attribute is the first by this attribute is the first profile. If a single profile that has
profile. If a single profile that has been selected for a connection been selected for a connection is indicated in the 'm' line, the '
is indicated in the 'm' line, the 'dsel' attribute qualifies the dsel' attribute qualifies the use, for voiceband data service, of
use, for voiceband data service, of codecs within that profile. codecs within that profile.
With most of the encoding names in Figure 2, the packet length With most of the encoding names in Figure 2, the packet length and
and packetization period can be derived from each other. One of them packetization period can be derived from each other. One of them can
can be set to "-" without a loss of information. There are some be set to "-" without a loss of information. There are some
exceptions such as the IANA-registered encoding names G723, DVI4 and exceptions such as the IANA-registered encoding names G723, DVI4 and
L16 for which this is not true. Therefore, there is a need to L16 for which this is not true. Therefore, there is a need to retain
retain both the packet length and packetization period in the both the packet length and packetization period in the definition of
definition of the 'dsel' line. the 'dsel' line.
5.6.3.8 The 'fsel' attribute 5.6.3.8 The 'fsel' attribute
The 'fsel' attribute indicates a prioritized list of The 'fsel' attribute indicates a prioritized list of one or more 3-
one or more 3-tuples for facsimile service. If an 'fsel' line tuples for facsimile service. If an 'fsel' line is present, any '
is present, any 'dsel' line with <fxIncl> set to "on" in the session dsel' line with <fxIncl> set to "on" in the session description must
description must be consistent with it. In this case, be consistent with it. In this case, an error event is generated in
an error event is generated in the case of inconsistency. the case of inconsistency. Each 3-tuple indicates a codec, an
Each 3-tuple indicates a codec, an optional packet length and an optional packet length and an optional packetization period. This
optional packetization period. This complements the 'm' line information complements the 'm' line information and should be consistent with
and should be consistent with it. it.
The 'fsel' attribute refers to all directions of a connection. The 'fsel' attribute refers to all directions of a connection. For a
For a bidirectional connection, these are the forward and backward bidirectional connection, these are the forward and backward
directions. For a unidirectional connection, this can be either the directions. For a unidirectional connection, this can be either the
backward or forward direction. backward or forward direction.
The 'fsel' attribute is not meant to be used with bidirectional The 'fsel' attribute is not meant to be used with bidirectional
connections that have asymmetric codec configurations described in a connections that have asymmetric codec configurations described in a
single SDP descriptor. For these, the 'onewaySel' attribute --single SDP descriptor. For these, the 'onewaySel' attribute
(section 5.6.3.9) should be used. See section 5.6.3.9 for the
Rajesh Kumar, Mohamed Mostafa. 66
(section 5.6.3.9) should be used. See section 5.6.3.9 for the
requirement to not use the 'fsel' and 'onewaySel' attributes in the requirement to not use the 'fsel' and 'onewaySel' attributes in the
same SDP descriptor. same SDP descriptor.
The 'fsel' line is structured as follows: The 'fsel' line is structured as follows:
a=fsel:<encodingName #1> <packetLength #1><packetTime #1> a=fsel:<encodingName #1> <packetLength #1><packetTime #1>
<encodingName #2> <packetLength #2><packetTime #2> <encodingName #2> <packetLength #2><packetTime #2>
... ...
<encodingName #N> <packetLength #N><packetTime #N> <encodingName #N> <packetLength #N><packetTime #N>
where the <encodingName> parameter can take one of the values in where the <encodingName> parameter can take one of the values in
column 2 of Table 2. The <packetLength> and <packetTime> column 2 of Table 2. The <packetLength> and <packetTime> parameters
parameters are per their definition, above, for the 'vsel' are per their definition, above, for the 'vsel' media attribute line.
media attribute line. The parameters <packetLength> and <packetTime> can The parameters <packetLength> and <packetTime> can be set to "-" when
be set to "-" when not needed. Also, the entire 'fsel' media attribute not needed. Also, the entire 'fsel' media attribute line can be
line can be omitted when not needed. omitted when not needed.
For example, For example,
a=fsel:FXDMOD-3 - - a=fsel:FXDMOD-3 - -
indicates demodulation and remodulation of ITU-T group 3 fax at the indicates demodulation and remodulation of ITU-T group 3 fax at the
gateway. gateway.
a=fsel:PCMU 40 5000 G726-32 20 5000 a=fsel:PCMU 40 5000 G726-32 20 5000
indicates a first and second preference of Mu-law PCM and 32 kbps indicates a first and second preference of Mu-law PCM and 32 kbps
ADPCM as the facsimile encoding scheme. The packet length ADPCM as the facsimile encoding scheme. The packet length and the
and the packetization interval associated with G726-32 are 20 octets and packetization interval associated with G726-32 are 20 octets and 5 ms
5 ms respectively. For PCMU, they are 40 octets and 5 ms respectively. respectively. For PCMU, they are 40 octets and 5 ms respectively.
This media attribute line can be used in ATM as well as non-ATM contexts. This media attribute line can be used in ATM as well as non-ATM
Within the ATM context, it can be applied to the AAL1, AAL2 and AAL5 contexts. Within the ATM context, it can be applied to the AAL1,
adaptations. The <packetLength> and <packetTime> are not meaningful AAL2 and AAL5 adaptations. The <packetLength> and <packetTime> are
in the AAL1 case and should be set to "-". In the AAL2 case, not meaningful in the AAL1 case and should be set to "-". In the
this line determines the use of some or all of the rows in AAL2 case, this line determines the use of some or all of the rows in
a given profile table. If multiple 3-tuples are present, they a given profile table. If multiple 3-tuples are present, they can
can indicate a hierarchical assignment of some rows in that indicate a hierarchical assignment of some rows in that profile to
profile to facsimile service e.g. row A preferred to row B etc. facsimile service (e.g., row A preferred to row B etc.). If multiple
If multiple profiles are present on the 'm' line, the profile profiles are present on the 'm' line, the profile qualified by this
qualified by this attribute is the first attribute is the first profile. If a single profile that has been
profile. If a single profile that has been selected for a connection selected for a connection is indicated in the 'm' line, the 'fsel'
is indicated in the 'm' line, the 'fsel' attribute qualifies the attribute qualifies the use, for facsimile service, of codecs within
use, for facsimile service, of codecs within that profile. that profile.
With most of the encoding names in Figure 2, the packet length With most of the encoding names in Figure 2, the packet length and
and packetization period can be derived from each other. One of them packetization period can be derived from each other. One of them can
can be set to "-" without a loss of information. There are some be set to "-" without a loss of information. There are some
exceptions such as the IANA-registered encoding names G723, DVI4 and exceptions such as the IANA-registered encoding names G723, DVI4 and
L16 for which this is not true. Therefore, there is a need to L16 for which this is not true. Therefore, there is a need to retain
both the packet length and packetization period in the definition of
Rajesh Kumar, Mohamed Mostafa. 67 the 'fsel' line.
retain both the packet length and packetization period in the
definition of the 'fsel' line.
5.6.3.9 The 'onewaySel' attribute 5.6.3.9 The 'onewaySel' attribute
The 'onewaySel' (one way select) attribute can be used The 'onewaySel' (one way select) attribute can be used with
with connections that have asymmetric codec configurations. connections that have asymmetric codec configurations. There can be
There can be several 'onewaySel' lines in an SDP description. several 'onewaySel' lines in an SDP description. The 'onewaySel'
The 'onewaySel' line is structured as follows: line is structured as follows:
a=onewaySel:<serviceType> <directionFlag> a=onewaySel:<serviceType> <directionFlag>
<encodingName #1> <packetLength #1><packetTime #1> <encodingName #1> <packetLength #1><packetTime #1>
<encodingName #2> <packetLength #2><packetTime #2> <encodingName #2> <packetLength #2><packetTime #2>
... ...
<encodingName #N> <packetLength #N><packetTime #N> <encodingName #N> <packetLength #N><packetTime #N>
The <serviceType> parameter can be assigned the following string values: The <serviceType> parameter can be assigned the following string
"v", "d", "f", "df" and "all". These indicate voice, voiceband data values: "v", "d", "f", "df" and "all". These indicate voice,
(fax not included), fax, voiceband data (fax included) and voiceband data (fax not included), fax, voiceband data (fax included)
all services respectively. and all services respectively.
The <directionFlag> can be assigned the following string values: "f",
"b" and "fb". "f" and "b" indicate the forward and backward
directions respectively. "fb" refers to both directions (forward and
backward) and shall not be used with the 'onewaySel' line. Conventions
for the forward and backward directions are per section 2.3.
Following <directionFlag>, there is a prioritized list of one or more The <directionFlag> can be assigned the following string values: "f",
3-tuples. Each 3-tuple indicates a codec, an optional "b" and "fb". "f" and "b" indicate the forward and backward
packet length and an optional packetization period. This complements the 'm' directions respectively. "fb" refers to both directions (forward and
line information and should be consistent with it. backward) and shall not be used with the 'onewaySel' line.
Conventions for the forward and backward directions are per section
2.3.
Within each 3-tuple, the <encodingName> parameter can take one of Following <directionFlag>, there is a prioritized list of one or more
the values in column 2 of Table 2. The <packetLength> is a decimal 3-tuples. Each 3-tuple indicates a codec, an optional packet length
integer representation of the packet length in octets. The <packetTime> and an optional packetization period. This complements the 'm' line
is a decimal integer representation of the packetization information and should be consistent with it.
interval in microseconds.
The 'onewaySel' attribute must not be used in SDP descriptors that have Within each 3-tuple, the <encodingName> parameter can take one of the
one or more of the following attributes: 'vsel', 'dsel', 'fsel'. If it is values in column 2 of Table 2. The <packetLength> is a decimal
present, then command containing the SDP description may be rejected. An integer representation of the packet length in octets. The
alternate response to such an ill-formed SDP descriptor might the selective <packetTime> is a decimal integer representation of the packetization
ignoring of some attributes, which must be coordinated interval in microseconds.
via an application-wide policy.
The <serviceType>, <directionFlag> and <encodingName> parameters may The 'onewaySel' attribute must not be used in SDP descriptors that
not be set to "-". However, the parameters <packetLength> and have one or more of the following attributes: 'vsel', 'dsel', 'fsel'.
<packetTime> can be set to "-" when not needed. If it is present, then command containing the SDP description may be
rejected. An alternate response to such an ill-formed SDP descriptor
might the selective ignoring of some attributes, which must be
coordinated via an application-wide policy.
For example, The <serviceType>, <directionFlag> and <encodingName> parameters may
not be set to "-". However, the parameters <packetLength> and
<packetTime> can be set to "-" when not needed.
a=onewaySel:v f G729 10 10000 For example,
Rajesh Kumar, Mohamed Mostafa. 68 a=onewaySel:v f G729 10 10000
a=onewaySel:v b G726-32 40 10000 a=onewaySel:v b G726-32 40 10000
indicates that for voice service, the codec to be used in the forward indicates that for voice service, the codec to be used in the forward
direction is G.729 or G.729a (both are interoperable), and the codec to direction is G.729 or G.729a (both are interoperable), and the codec
be used in the backward direction is G726-32. A packet length of to be used in the backward direction is G726-32. A packet length of
10 octets and a packetization interval of 10 ms are associated with 10 octets and a packetization interval of 10 ms are associated with
the G.729/G.729a codec. A packet length of 40 octets and a the G.729/G.729a codec. A packet length of 40 octets and a
packetization interval of 10 ms are associated with the G726-32 codec. packetization interval of 10 ms are associated with the G726-32
codec.
For example, For example,
a=onewaySel:d f G726-32 20 5000 a=onewaySel:d f G726-32 20 5000
a=onewaySel:d b PCMU 40 5000 a=onewaySel:d b PCMU 40 5000
indicates that for voiceband service (fax not included), the codec to be indicates that for voiceband service (fax not included), the codec to
used in the forward direction is G726-32), and the codec to be used in the forward direction is G726-32), and the codec to be
be used in the backward direction is PCMU. A packet length of used in the backward direction is PCMU. A packet length of 20 octets
20 octets and a packetization interval of 5 ms are associated with and a packetization interval of 5 ms are associated with the G726-32
the G726-32 codec. A packet length of 40 octets and a codec. A packet length of 40 octets and a packetization interval of
packetization interval of 5 ms are associated with the PCMU codec. 5 ms are associated with the PCMU codec.
This media attribute line can be used in ATM as well as non-ATM contexts. This media attribute line can be used in ATM as well as non-ATM
Within the ATM context, it can be applied to the AAL1, AAL2 and AAL5 contexts. Within the ATM context, it can be applied to the AAL1,
adaptations. The <packetLength> and <packetTime> are not meaningful AAL2 and AAL5 adaptations. The <packetLength> and <packetTime> are
in the AAL1 case and should be set to "-". In the AAL2 case, not meaningful in the AAL1 case and should be set to "-". In the
these lines determine the use of some or all of the rows in AAL2 case, these lines determine the use of some or all of the rows
a given profile table. If multiple 3-tuples are present, they in a given profile table. If multiple 3-tuples are present, they can
can indicate a hierarchical assignment of some rows in that indicate a hierarchical assignment of some rows in that profile to
profile to voice service e.g. row A preferred to row B etc. voice service (e.g., row A preferred to row B etc.). If multiple
If multiple profiles are present on the 'm' line, the profile profiles are present on the 'm' line, the profile qualified by this
qualified by this attribute is the first attribute is the first profile.
profile.
With most of the encoding names in Figure 2, the packet length With most of the encoding names in Figure 2, the packet length and
and packetization period can be derived from each other. One of them packetization period can be derived from each other. One of them can
can be set to "-" without a loss of information. There are some be set to "-" without a loss of information. There are some
exceptions such as the IANA-registered encoding names G723, DVI4 and exceptions such as the IANA-registered encoding names G723, DVI4 and
L16 for which this is not true. Therefore, there is a need to L16 for which this is not true. Therefore, there is a need to retain
retain both the packet length and packetization period in the both the packet length and packetization period in the definition of
definition of the 'onewaySel' line. the 'onewaySel' line.
5.6.3.10 The 'codecconfig' attribute 5.6.3.10 The 'codecconfig' attribute
When present, the 'codecconfig' attribute is used to represent the When present, the 'codecconfig' attribute is used to represent the
contents of the single codec information element (IE) defined in [57]. contents of the single codec information element (IE) defined in
The contents of this IE are: a single-octet Organizational Identifier [57]. The contents of this IE are: a single-octet Organizational
(OID) field, followed by a single-octet Codec Type field, followed by Identifier (OID) field, followed by a single-octet Codec Type field,
zero or more octets of a codec configuration bit-map. The semantics of followed by zero or more octets of a codec configuration bit-map.
the codec configuration bit-map are specific to the organization The semantics of the codec configuration bit-map are specific to the
[57, 58]. The 'codecconfig' attribute is represented as follows: organization [57, 58]. The 'codecconfig' attribute is represented as
follows:
a=codecconfig:<q7655scc> a=codecconfig:<q7655scc>
Rajesh Kumar, Mohamed Mostafa. 69
The <q7655scc> (Q.765.5 single codec IE contents) parameter is The <q7655scc> (Q.765.5 single codec IE contents) parameter is
represented as a string of hex digits. The number of hex digits is represented as a string of hex digits. The number of hex digits is
even (range 4 -32). The "0x" prefix shall be omitted since this value even (range 4 -32). The "0x" prefix shall be omitted since this
is always hexadecimal. As with other hex values [Section 2.2], value is always hexadecimal. As with other hex values [Section 2.2],
digits to the left are more significant than digits to the right. digits to the left are more significant than digits to the right.
Leading zeros shall not be omitted. Leading zeros shall not be omitted.
An example of the use of this media attribute is: An example of the use of this media attribute is:
a=codecconfig:01080C a=codecconfig:01080C
The first octet indicates an Organizational Identifier of 0x01 The first octet indicates an Organizational Identifier of 0x01 (the
(the ITU-T). Using ITU Q.765.5 [57], the second octet (0x08) indicates ITU-T). Using ITU Q.765.5 [57], the second octet (0x08) indicates a
a codec type of G.726 (ADPCM). The last octet, 0x0C indicates that codec type of G.726 (ADPCM). The last octet, 0x0C indicates that 16
16 kbps and 24 kbps rates are NOT supported, while the 32 kbps and kbps and 24 kbps rates are NOT supported, while the 32 kbps and 40
40 kbps rates ARE supported. kbps rates ARE supported.
5.6.3.11 The 'isup_usi' attribute 5.6.3.11 The 'isup_usi' attribute
When present, the 'isup_usi' attribute is used to represent the bearer When present, the 'isup_usi' attribute is used to represent the
capability information element defined in Section 4.5.5 of ITU Q.931[59] bearer capability information element defined in Section 4.5.5 of ITU
(excluding the information element identifier and length). This information Q.931 [59] (excluding the information element identifier and length).
element is reiterated as the user service information element (IE) This information element is reiterated as the user service
in Section 3.57 of ITU Q.763 [60]. The 'isup_usi' attribute is information element (IE) in Section 3.57 of ITU Q.763 [60]. The '
represented as follows: isup_usi' attribute is represented as follows:
a=isup_usi:<isupUsi> a=isup_usi:<isupUsi>
The <isupUsi> parameter is represented as a string of hex The <isupUsi> parameter is represented as a string of hex digits.
digits. The number of hex digits is even (allowed range 4 -24). The number of hex digits is even (allowed range 4 -24). The "0x"
The "0x" prefix shall be omitted since this value prefix shall be omitted since this value is always hexadecimal. As
is always hexadecimal. As with other hex values [Section 2.2], with other hex values [Section 2.2], digits to the left are more
digits to the left are more significant than digits to the right. significant than digits to the right. Leading zeros shall not be
Leading zeros shall not be omitted. omitted.
5.6.3.12 The 'uiLayer1_Prot' attribute 5.6.3.12 The 'uiLayer1_Prot' attribute
When present, the 'uiLayer1_Prot' attribute is used to represent the When present, the 'uiLayer1_Prot' attribute is used to represent the
'User Information Layer 1 protocol' field within the bearer 'User Information Layer 1 protocol' field within the bearer
capability information element defined in Section 4.5.5 of [59], and capability information element defined in Section 4.5.5 of [59], and
reiterated as the user service information element (IE) in Section 3.57 reiterated as the user service information element (IE) in Section
of [60]. The 'User Information Layer 1 protocol' field consists of 3.57 of [60]. The 'User Information Layer 1 protocol' field consists
the five least significant bits of Octet 5 of this information of the five least significant bits of Octet 5 of this information
element. element.
Within SDP, the 'uiLayer1_Prot' attribute is represented as follows: Within SDP, the 'uiLayer1_Prot' attribute is represented as follows:
a='uiLayer1_Prot':<uiLayer1Prot> a='uiLayer1_Prot':<uiLayer1Prot>
The <uiLayer1Prot> parameter is represented as a string of two hex The <uiLayer1Prot> parameter is represented as a string of two hex
digits. The "0x" prefix shall be omitted since this value digits. The "0x" prefix shall be omitted since this value is always
hexadecimal. As with other hex values [Section 2.2], digits to the
Rajesh Kumar, Mohamed Mostafa. 70 left are more significant than digits to the right. These hex digits
is always hexadecimal. As with other hex values [Section 2.2], are constructed from an octet with three leading '0' bits and last
digits to the left are more significant than digits to the right. five bits equal to the 'User Information Layer 1 protocol' field
These hex digits are constructed from an octet with three leading described above. As specified in [59] and [26], bit 5 of this field
'0' bits and last five bits equal to the 'User Information Layer is the most significant bit. The resulting values of the
1 protocol' field described above. As specified in [59] and [26], <uiLayer1Prot> parameter are as follows:
bit 5 of this field is the most significant bit. The resulting values
of the <uiLayer1Prot> parameter are as follows:
VALUE MEANING VALUE MEANING
0x01 CCITT standardized rate adaption V.110 and X.30 0x01 CCITT standardized rate adaption V.110 and X.30
0x02 Recommendation G.711 Mu-law 0x02 Recommendation G.711 Mu-law
0x03 Recommendation G.711 A-law 0x03 Recommendation G.711 A-law
0x04 Recommendation G.721 32 kbps ADPCM and Recommendation I.460 0x04 Recommendation G.721 32 kbps ADPCM and Recommendation I.460
0x05 Recommendations H.221 and H.242 0x05 Recommendations H.221 and H.242
0x06 Recommendation H.223 and H.245 0x06 Recommendation H.223 and H.245
0x07 Non-ITU-T standardized rate adaption 0x07 Non-ITU-T standardized rate adaption
0x08 ITU-T standardized rate adaption V.120 0x08 ITU-T standardized rate adaption V.120
0x09 CCITT standardized rate adaption X.31 HDLC flag stuffing 0x09 CCITT standardized rate adaption X.31 HDLC flag stuffing
5.6.4 Miscellaneous media attributes 5.6.4 Miscellaneous media attributes
The 'chain' media attribute line, which is used to chain consecutive The 'chain' media attribute line, which is used to chain consecutive
SDP descriptions, cannot be classified as an ATM, AAL or service SDP descriptions, cannot be classified as an ATM, AAL or service
attribute. It is detailed in the following subsection. attribute. It is detailed in the following subsection.
5.6.4.1 The 'chain' attribute 5.6.4.1 The 'chain' attribute
The start of an SDP descriptor is marked by a 'v' line. In some The start of an SDP descriptor is marked by a 'v' line. In some
applications, consecutive SDP descriptions are alternative descriptions applications, consecutive SDP descriptions are alternative
of the same session. In others, these describe different layers of the descriptions of the same session. In others, these describe
same connection (e.g. IP, ATM, frame relay). This is useful when these different layers of the same connection (e.g., IP, ATM, frame relay).
connectivity at these layers are established at the same time e.g. an This is useful when these connectivity at these layers are
IP-based session over an ATM SVC. To distinguish between the established at the same time (e.g., an IP-based session over an ATM
alternation and concatenation of SDP descriptions, a 'chain' attribute SVC). To distinguish between the alternation and concatenation of
can be used in the case of concatenation. SDP descriptions, a 'chain' attribute can be used in the case of
concatenation.
When present, the 'chain' attribute binds an SDP description to the When present, the 'chain' attribute binds an SDP description to the
next or previous SDP description. The next or previous description is next or previous SDP description. The next or previous description
separated from the current one by a 'v' line. It is not necessary that is separated from the current one by a 'v' line. It is not necessary
this description also have a 'chain' media attribute line. that this description also have a 'chain' media attribute line.
Chaining averts the need to set up a single SDP description for a Chaining averts the need to set up a single SDP description for a
session that is simultaneously created at multiple layers. It allows session that is simultaneously created at multiple layers. It allows
the SDP descriptors for different layers to remain simple and clean. the SDP descriptors for different layers to remain simple and clean.
Chaining is not needed in the Megaco context, where it is possible to Chaining is not needed in the Megaco context, where it is possible to
create separate terminations for the different layers of a connection. create separate terminations for the different layers of a
connection.
The 'chain' media attribute line has the following format: The 'chain' media attribute line has the following format:
a=chain:<chainPointer> a=chain:<chainPointer>
Rajesh Kumar, Mohamed Mostafa. 71
The <chainPointer> field can take on the following string values: The <chainPointer> field can take on the following string values:
"NEXT", "PREVIOUS" and "NULL". The value "NULL" is not equivalent to "NEXT", "PREVIOUS" and "NULL". The value "NULL" is not equivalent to
omitting the chain attribute from a description since it expressly omitting the chain attribute from a description since it expressly
precludes the possibility of chaining. If the 'chain' attribute is precludes the possibility of chaining. If the 'chain' attribute is
absent in an SDP description, chaining can still be realized by the absent in an SDP description, chaining can still be realized by the
presence of a chain media attribute line in the previous or next presence of a chain media attribute line in the previous or next
description. description.
5.6.5 Use of the second media-level part in H.323 Annex C applications 5.6.5 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 Section 4 mentions that H.323 annex C applications have a second
part for the ATM session description. This is used to convey information about media level part for the ATM session description. This is used to
the RTCP stream. Although the RTP stream is encapsulated in AAL5 with no convey information about the RTCP stream. Although the RTP stream is
intervening IP layer, the RTCP stream is sent to an IP address and RTCP port. encapsulated in AAL5 with no intervening IP layer, the RTCP stream is
This media level part has the following format: sent to an IP address and RTCP port. This media-level part has the
following format:
m= control <rtcpPortNum> H323c - m= control <rtcpPortNum> H323c -
c= IN IP4 <rtcpIPaddr> c= IN IP4 <rtcpIPaddr>
Consistency with rfc2327 is maintained in the location and format of these Consistency with RFC 2327 is maintained in the location and format of
lines. The <fmt list> in the 'm' line is set to "-". The 'c' line in the second these lines. The <fmt list> in the 'm' line is set to "-". The 'c'
media-level part pertains to RTCP only. line in the second media-level part pertains to RTCP only.
The <rtcpPortNum> and <rtcpIPaddr> subparameters indicate the port number The <rtcpPortNum> and <rtcpIPaddr> subparameters indicate the port
and IP address on which the media gateway is prepared to receive RTCP packets. number and IP address on which the media gateway is prepared to
receive RTCP packets.
Any of the subparameters on these lines can be set to "-" if they are known by Any of the subparameters on these lines can be set to "-" if they are
other means. known by other means.
The range and format of the <rtcpPortNum> and <rtcpIPaddr> subparameters is per The range and format of the <rtcpPortNum> and <rtcpIPaddr>
[1]. The <rtcpPortNum> is a decimal number between 1024 and 65535. It is an odd subparameters is per [1]. The <rtcpPortNum> is a decimal number
number. If an even number in this range is specified, the next odd number is between 1024 and 65535. It is an odd number. If an even number in
used. The <rtcpIPaddr> is expressed in the usual dotted decimal IP address this range is specified, the next odd number is used. The
representation, from 0.0.0.0 to 255.255.255.255. <rtcpIPaddr> is expressed in the usual dotted decimal IP address
representation, from 0.0.0.0 to 255.255.255.255.
5.6.6 Use of the eecid media attribute in call establishment procedures 5.6.6 Use of the eecid media attribute in call establishment
procedures
This informative section supplements the definition of the eecid This informative section supplements the definition of the eecid
attribute (Section 5.6.1.1) by describing example procedures for its use. attribute (Section 5.6.1.1) by describing example procedures for its
These procedures assume a bearer-signaling mechanism for connection set-up use. These procedures assume a bearer-signaling mechanism for
that is independent of service-level call control. These procedures are connection set-up that is independent of service-level call control.
independent of the media gateway control protocol (MGCP, Megaco, SIP etc.), These procedures are independent of the media gateway control
the protocol used between media gateway controllers (ITU Q.1901, SIP protocol (MGCP, Megaco, SIP etc.), the protocol used between media
etc.) and the protocol used for bearer connection set-up (Q.2931, UNI, PNNI, gateway controllers (ITU Q.1901, SIP etc.) and the protocol used for
AINI, IISP, Q.2630.1 etc.). bearer connection set-up (Q.2931, UNI, PNNI, AINI, IISP, Q.2630.1
etc.).
Rajesh Kumar, Mohamed Mostafa. 72
Inter-MGC Inter-MGC
+---------+ Protocol +---------+ +---------+ Protocol +---------+
| MGC |------------------| MGC | | MGC |------------------| MGC |
+---------+ +---------+ +---------+ +---------+
| | | |
|Media Gateway |Media Gateway |Media Gateway |Media Gateway
|Control Protocol |Control Protocol |Control Protocol |Control Protocol
| | | |
+------------+ (ATM Network) +------------+ +------------+ (ATM Network) +------------+
|Originating |------------------|Terminating | |Originating |------------------|Terminating |
|Media | Bearer Setup |Media | |Media | Bearer Setup |Media |
|Gateway | Protocol |Gateway | |Gateway | Protocol |Gateway |
+------------+ +------------+ +------------+ +------------+
In the diagram above, the originating media gateway originates the service- In the diagram above, the originating media gateway originates the
level call. The terminating media gateway terminates it. In the forward bearer service-level call. The terminating media gateway terminates it. In
connection set-up model, the originating media gateway initiates bearer the forward bearer connection set-up model, the originating media
connection set-up. In the backward bearer connection set-up model, the gateway initiates bearer connection set-up. In the backward bearer
terminating gateway initiates bearer connection set-up. connection set-up model, the terminating gateway initiates bearer
connection set-up.
Example use of the Backward Bearer Connection Set-up Model: Example use of the Backward Bearer Connection Set-up Model:
(1) The originating media gateway controller (OMGC) initiates service-level
call establishment by sending the appropriate control message to the
originating media gateway (OMG).
(2) The originating media gateway (OMG) provides its NSAP address and an eecid (1) The originating media gateway controller (OMGC) initiates
value to the OMGC, using the following SDP description: service-level call establishment by sending the appropriate
control message to the originating media gateway (OMG).
(2) The originating media gateway (OMG) provides its NSAP address
and an eecid value to the OMGC, using the following SDP
description:
v=0 v=0
o=- 2873397496 0 ATM NSAP o=- 2873397496 0 ATM NSAP
47.0091.8100.0000.0060.3E64.FD01.0060.3E64.FD01.00 47.0091.8100.0000.0060.3E64.FD01.0060.3E64.FD01.00
s=- s=-
c=ATM NSAP c=ATM NSAP
47.0091.8100.0000.0060.3E64.FD01.0060.3E64.FD01.00 47.0091.8100.0000.0060.3E64.FD01.0060.3E64.FD01.00
t=0 0 t=0 0
m=audio $ AAL2/ITU 8 m=audio $ AAL2/ITU 8
a=eecid:B3D58E32 a=eecid:B3D58E32
(3) The originating media gateway controller (OMGC) signals (3) The originating media gateway controller (OMGC) signals the
the terminating media gateway controller (TMGC) through terminating media gateway controller (TMGC) through the
the appropriate mechanism (ISUP with Q.1901 extensions, SIP etc.). appropriate mechanism (ISUP with Q.1901 extensions, SIP etc.).
It provides the TMGC with the NSAP address and the eecid provided It provides the TMGC with the NSAP address and the eecid
by the OMG. provided by the OMG.
(4) The TMGC sends the appropriate control message to the TMG. This
includes the session descriptor received from the OMG. This
descriptor contains the NSAP address of the OMG and the EECID
assigned by the OMG. Additionally, the TMGC instructs the TMG
to set up an SVC to the OMG. It also requests the TMG to notify
the TMGC when SVC set-up is complete. Depending on the control
Rajesh Kumar, Mohamed Mostafa. 73 (4) The TMGC sends the appropriate control message to the TMG. This
protocol used, this can be done through a variety of means. includes the session descriptor received from the OMG. This
In the Megaco context, the request to set-up an SVC (not the descriptor contains the NSAP address of the OMG and the EECID
notification request for the SVC set-up event) can be made through assigned by the OMG. Additionally, the TMGC instructs the TMG
the following local descriptor: to set up an SVC to the OMG. It also requests the TMG to notify
the TMGC when SVC set-up is complete. Depending on the control
protocol used, this can be done through a variety of means. In
the Megaco context, the request to set-up an SVC (not the
notification request for the SVC set-up event) can be made
through the following local descriptor:
v=0 v=0
o=- 2873397497 0 ATM - - o=- 2873397497 0 ATM - -
s=- s=-
c=ATM - - c=ATM - -
t=0 0 t=0 0
m=audio $ - - m=audio $ - -
a=bearerType:SVC on a=bearerType:SVC on
The 'bearerType' attribute indicates that an SVC is to be used and The 'bearerType' attribute indicates that an SVC is to be used and
that the <localInitiation> flag is on i.e. the SVC is to be set up that the <localInitiation> flag is on i.e., the SVC is to be set up
by the TMG. by the TMG.
(5) The TMG acknowledges the control message from the TMGC. It returns (5) The TMG acknowledges the control message from the TMGC. It
the following SDP descriptor with the acknowledge: returns the following SDP descriptor with the acknowledge:
v=0 v=0
o=- 2873397498 0 ATM NSAP o=- 2873397498 0 ATM NSAP
47.0091.8100.0000.0040.2A74.EB03.0020.4421.2A04.00 47.0091.8100.0000.0040.2A74.EB03.0020.4421.2A04.00
s=- s=-
c=ATM NSAP c=ATM NSAP
47.0091.8100.0000.0040.2A74.EB03.0020.4421.2A04.00 47.0091.8100.0000.0040.2A74.EB03.0020.4421.2A04.00
t=0 0 t=0 0
m=audio $ AAL2/ITU 8 m=audio $ AAL2/ITU 8
The NSAP address information provided in this descriptor is not needed. The NSAP address information provided in this descriptor is not
It can be omitted (by setting it to "- -"). needed. It can be omitted (by setting it to "- -").
(6) The TMG sends an SVC set-up message to the OMG. Within the GIT (6) The TMG sends an SVC set-up message to the OMG. Within the GIT
information element, it includes eecid (B3D58E32) received from information element, it includes eecid (B3D58E32) received from
the OMG. the OMG.
(7) The OMG uses the eecid to correlate the SVC set-up request with (7) The OMG uses the eecid to correlate the SVC set-up request with
service-level control message received before from the OMGC. service-level control message received before from the OMGC.
(8) The OMG returns an SVC connect message to the TMG. On receiving (8) The OMG returns an SVC connect message to the TMG. On receiving
this message, the TMG sends an event notification to the TMGC this message, the TMG sends an event notification to the TMGC
indicating successful SVC set-up. indicating successful SVC set-up.
Note that, for this example, the "v=", "o=", "s=" and "t=" lines can be Note that, for this example, the "v=", "o=", "s=" and "t=" lines
omitted in the Megaco context. can be omitted in the Megaco context.
Example use of the Forward Bearer Connection Set-up Model: Example use of the Forward Bearer Connection Set-up Model:
(1) The originating media gateway controller (OMGC) initiates service-level (1) The originating media gateway controller (OMGC) initiates
call establishment by sending the appropriate control message to the service-level call establishment by sending the appropriate
originating media gateway (OMG). controlsmessage to the originating media gateway (OMG).
Rajesh Kumar, Mohamed Mostafa. 74 (2) The originating media gateway (OMG) provides its NSAP address to
(2) The originating media gateway (OMG) provides its NSAP address the OMGC, using the following SDP description:
to the OMGC, using the following SDP description:
v=0 v=0
o=- 2873397496 0 ATM NSAP o=- 2873397496 0 ATM NSAP
47.0091.8100.0000.0060.3E64.FD01.0060.3E64.FD01.00 47.0091.8100.0000.0060.3E64.FD01.0060.3E64.FD01.00
s=- s=-
c=ATM NSAP c=ATM NSAP
47.0091.8100.0000.0060.3E64.FD01.0060.3E64.FD01.00 47.0091.8100.0000.0060.3E64.FD01.0060.3E64.FD01.00
t=0 0 t=0 0
m=audio $ AAL2/ITU 8 m=audio $ AAL2/ITU 8
The NSAP address information provided in this descriptor is not needed. The NSAP address information provided in this descriptor is not
It can be omitted (by setting it to "- -"). needed. It can be omitted (by setting it to "- -").
(3) The originating media gateway controller (OMGC) signals (3) The originating media gateway controller (OMGC) signals the
the terminating media gateway controller (TMGC) through terminating media gateway controller (TMGC) through the
the appropriate mechanism (ISUP with Q.1901 extensions, SIP etc.). appropriate mechanism (ISUP with Q.1901 extensions, SIP etc.).
Although this is not necessary, it can provide the TMGC with the Although this is not necessary, it can provide the TMGC with the
NSAP address provided by the OMG. NSAP address provided by the OMG.
(4) The TMGC sends the appropriate control message to the TMG. This (4) The TMGC sends the appropriate control message to the TMG. This
includes the session descriptor received from the OMG. This includes the session descriptor received from the OMG. This
descriptor contains the NSAP address of the OMG. descriptor contains the NSAP address of the OMG.
(5) The TMG acknowledges the control message from the TMGC. Along with (5) The TMG acknowledges the control message from the TMGC. Along
the acknowledgement, it provides an SDP descriptor with a locally with the acknowledgement, it provides an SDP descriptor with a
assigned eecid. locally assigned eecid.
v=0 v=0
o=- 2873397714 0 ATM NSAP o=- 2873397714 0 ATM NSAP
47.0091.8100.0000.0040.2A74.EB03.0020.4421.2A04.00 47.0091.8100.0000.0040.2A74.EB03.0020.4421.2A04.00
s=- s=-
c=ATM NSAP c=ATM NSAP
47.0091.8100.0000.0040.2A74.EB03.0020.4421.2A04.00 47.0091.8100.0000.0040.2A74.EB03.0020.4421.2A04.00
t=0 0 t=0 0
m=audio $ AAL2/ITU 8 m=audio $ AAL2/ITU 8
a=eecid:B3D58E32 a=eecid:B3D58E32
(6) The terminating media gateway controller (TMGC) signals the
originating media gateway controller (OMGC) through the
appropriate mechanism (ISUP with Q.1901 extensions, SIP etc.).
It provides the OMGC with the NSAP address and the eecid
provided by the TMG.
(6) The terminating media gateway controller (TMGC) signals (7) The OMGC sends the appropriate control message to the OMG. This
the originating media gateway controller (OMGC) through includes the session descriptor received from the TMG. This
the appropriate mechanism (ISUP with Q.1901 extensions, SIP etc.). descriptor contains the NSAP address of th