<encodingName #2> <packetLength #2><packetTime #2>
...
<encodingName #N> <packetLength #N><packetTime #N>
where the <encodingName> parameter can take one of the values in
column 2 of Table 2. The <packetLength> and <packetTime> parameters
are per their definition, above, for the 'vsel' media attribute line.
The parameters <packetLength> and <packetTime>) can be set to "-"
when not needed. The <fxIncl> flag is presumed to be "off" if it is
set to "-". Also, the entire 'dsel' media attribute line can be
omitted when not needed.
For example,
a=dsel:- G726-32 20 5000 PCMU 40 5000
indicates that this line does not address facsimile, and that the
first preference for the voiceband data codes is 32 kbps ADPCM, while
the second preference is PCMU. The packet length and the
packetization interval associated with G726-32 are 20 octets and 5 ms
respectively. For PCMU, they are 40 octets and 5 ms respectively.
This media attribute line can be used in ATM as well as non-ATM
contexts. Within the ATM context, it can be applied to the AAL1,
AAL2 and AAL5 adaptations. The <packetLength> and <packetTime> are
not meaningful in the AAL1 case and should be set to "-". In the
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 can
indicate a hierarchical assignment of some rows in that profile to
voiceband data service (e.g., row A preferred to row B etc.) If
multiple profiles are present on the 'm' line, the profile qualified
by this attribute is the first profile. If a single profile that has
been selected for a connection is indicated in the 'm' line, the '
dsel' attribute qualifies the use, for voiceband data service, of
codecs within that profile.
With most of the encoding names in Figure 2, the packet length and
packetization period can be derived from each other. One of them can
be set to "-" without a loss of information. There are some
exceptions such as the IANA-registered encoding names G723, DVI4 and
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
the 'dsel' line.
5.6.3.8 The 'fsel' attribute
The 'fsel' attribute indicates a prioritized list of one or more 3-
tuples for facsimile service. If an 'fsel' line is present, any '
dsel' line with <fxIncl> set to "on" in the session description must
be consistent with it. In this case, an error event is generated in
the case of inconsistency. Each 3-tuple indicates a codec, an
optional packet length and an optional packetization period. This
complements the 'm' line information and should be consistent with
it.
The 'fsel' attribute refers to all directions of a connection. For a
bidirectional connection, these are the forward and backward
directions. For a unidirectional connection, this can be either the
backward or forward direction.
The 'fsel' attribute is not meant to be used with bidirectional
connections that have asymmetric codec configurations described in a
--single SDP descriptor. For these, the 'onewaySel' attribute
(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
same SDP descriptor.
The 'fsel' line is structured as follows:
a=fsel:<encodingName #1> <packetLength #1><packetTime #1>
<encodingName #2> <packetLength #2><packetTime #2>
...
<encodingName #N> <packetLength #N><packetTime #N>
where the <encodingName> parameter can take one of the values in
column 2 of Table 2. The <packetLength> and <packetTime> parameters
are per their definition, above, for the 'vsel' media attribute line.
The parameters <packetLength> and <packetTime> can be set to "-" when
not needed. Also, the entire 'fsel' media attribute line can be
omitted when not needed.
For example,
a=fsel:FXDMOD-3 - -
indicates demodulation and remodulation of ITU-T group 3 fax at the
gateway.
a=fsel:PCMU 40 5000 G726-32 20 5000
indicates a first and second preference of Mu-law PCM and 32 kbps
ADPCM as the facsimile encoding scheme. The packet length and the
packetization interval associated with G726-32 are 20 octets and 5 ms
respectively. For PCMU, they are 40 octets and 5 ms respectively.
This media attribute line can be used in ATM as well as non-ATM
contexts. Within the ATM context, it can be applied to the AAL1,
AAL2 and AAL5 adaptations. The <packetLength> and <packetTime> are
not meaningful in the AAL1 case and should be set to "-". In the
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 can
indicate a hierarchical assignment of some rows in that profile to
facsimile service (e.g., row A preferred to row B etc.). If multiple
profiles are present on the 'm' line, the profile qualified by this
attribute is the first profile. If a single profile that has been
selected for a connection is indicated in the 'm' line, the 'fsel'
attribute qualifies the use, for facsimile service, of codecs within
that profile.
With most of the encoding names in Figure 2, the packet length and
packetization period can be derived from each other. One of them can
be set to "-" without a loss of information. There are some
exceptions such as the IANA-registered encoding names G723, DVI4 and
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
the 'fsel' line.
5.6.3.9 The 'onewaySel' attribute
The 'onewaySel' (one way select) attribute can be used with
connections that have asymmetric codec configurations. There can be
several 'onewaySel' lines in an SDP description. The 'onewaySel'
line is structured as follows:
a=onewaySel:<serviceType> <directionFlag>
<encodingName #1> <packetLength #1><packetTime #1>
<encodingName #2> <packetLength #2><packetTime #2>
...
<encodingName #N> <packetLength #N><packetTime #N>
The <serviceType> parameter can be assigned the following string
values: "v", "d", "f", "df" and "all". These indicate voice,
voiceband data (fax not included), fax, voiceband data (fax included)
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
3-tuples. 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.
Within each 3-tuple, the <encodingName> parameter can take one of the
values in column 2 of Table 2. The <packetLength> is a decimal
integer representation of the packet length in octets. The
<packetTime> is a decimal integer representation of the packetization
interval in microseconds.
The 'onewaySel' attribute must not be used in SDP descriptors that
have one or more of the following attributes: 'vsel', 'dsel', 'fsel'.
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.
The <serviceType>, <directionFlag> and <encodingName> parameters may
not be set to "-". However, the parameters <packetLength> and
<packetTime> can be set to "-" when not needed.
For example,
a=onewaySel:v f G729 10 10000
a=onewaySel:v b G726-32 40 10000
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 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
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.
For example,
a=onewaySel:d f G726-32 20 5000
a=onewaySel:d b PCMU 40 5000
indicates that for voiceband service (fax not included), the codec to
be used in the forward direction is G726-32), and the codec to be
used in the backward direction is PCMU. A packet length of 20 octets
and a packetization interval of 5 ms are associated with the G726-32
codec. A packet length of 40 octets and a packetization interval of
5 ms are associated with the PCMU codec.
This media attribute line can be used in ATM as well as non-ATM
contexts. Within the ATM context, it can be applied to the AAL1,
AAL2 and AAL5 adaptations. The <packetLength> and <packetTime> are
not meaningful in the AAL1 case and should be set to "-". In the
AAL2 case, these lines determine the use of some or all of the rows
in a given profile table. If multiple 3-tuples are present, they can
indicate a hierarchical assignment of some rows in that profile to
voice service (e.g., row A preferred to row B etc.). If multiple
profiles are present on the 'm' line, the profile qualified by this
attribute is the first profile.
With most of the encoding names in Figure 2, the packet length and
packetization period can be derived from each other. One of them can
be set to "-" without a loss of information. There are some
exceptions such as the IANA-registered encoding names G723, DVI4 and
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
the 'onewaySel' line.
5.6.3.10 The 'codecconfig' attribute
When present, the 'codecconfig' attribute is used to represent the
contents of the single codec information element (IE) defined in
[57]. The contents of this IE are: a single-octet Organizational
Identifier (OID) field, followed by a single-octet Codec Type field,
followed by zero or more octets of a codec configuration bit-map.
The semantics of the codec configuration bit-map are specific to the
organization [57, 58]. The 'codecconfig' attribute is represented as
follows:
a=codecconfig:<q7655scc>
The <q7655scc> (Q.765.5 single codec IE contents) parameter 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 is always hexadecimal. As with other hex values [Section 2.2],
digits to the left are more significant than digits to the right.
Leading zeros shall not be omitted.
An example of the use of this media attribute is:
a=codecconfig:01080C
The first octet indicates an Organizational Identifier of 0x01 (the
ITU-T). Using ITU Q.765.5 [57], the second octet (0x08) indicates a
codec type of G.726 (ADPCM). The last octet, 0x0C indicates that 16
kbps and 24 kbps rates are NOT supported, while the 32 kbps and 40
kbps rates ARE supported.
5.6.3.11 The 'isup_usi' attribute
When present, the 'isup_usi' attribute is used to represent the
bearer capability information element defined in Section 4.5.5 of ITU
Q.931 [59] (excluding the information element identifier and length).
This information element is reiterated as the user service
information element (IE) in Section 3.57 of ITU Q.763 [60]. The '
isup_usi' attribute is represented as follows:
a=isup_usi:<isupUsi>
The <isupUsi> parameter is represented as a string of hex digits.
The number of hex digits is even (allowed range 4 -24). The "0x"
prefix shall be omitted since this value is always hexadecimal. As
with other hex values [Section 2.2], digits to the left are more
significant than digits to the right. Leading zeros shall not be
omitted.
5.6.3.12 The 'uiLayer1_Prot' attribute
When present, the 'uiLayer1_Prot' attribute is used to represent the
'User Information Layer 1 protocol' field within the bearer
capability information element defined in Section 4.5.5 of [59], and
reiterated as the user service information element (IE) in Section
3.57 of [60]. The 'User Information Layer 1 protocol' field consists
of the five least significant bits of Octet 5 of this information
element.
Within SDP, the 'uiLayer1_Prot' attribute is represented as follows:
a='uiLayer1_Prot':<uiLayer1Prot>
The <uiLayer1Prot> parameter is represented as a string of two hex
digits. The "0x" prefix shall be omitted since this value is always
hexadecimal. As with other hex values [Section 2.2], digits to the
left are more significant than digits to the right. These hex digits
are constructed from an octet with three leading '0' bits and last
five bits equal to the 'User Information Layer 1 protocol' field
described above. As specified in [59] and [26], bit 5 of this field
is the most significant bit. The resulting values of the
<uiLayer1Prot> parameter are as follows:
VALUE MEANING
0x01 CCITT standardized rate adaption V.110 and X.30
0x02 Recommendation G.711 Mu-law
0x03 Recommendation G.711 A-law
0x04 Recommendation G.721 32 kbps ADPCM and Recommendation I.460
0x05 Recommendations H.221 and H.242
0x06 Recommendation H.223 and H.245
0x07 Non-ITU-T standardized rate adaption
0x08 ITU-T standardized rate adaption V.120
0x09 CCITT standardized rate adaption X.31 HDLC flag stuffing
5.6.4 Miscellaneous media attributes
The 'chain' media attribute line, which is used to chain consecutive
SDP descriptions, cannot be classified as an ATM, AAL or service
attribute. It is detailed in the following subsection.
5.6.4.1 The 'chain' attribute
The start of an SDP descriptor is marked by a 'v' line. In some
applications, consecutive SDP descriptions are alternative
descriptions of the same session. In others, these describe
different layers of the same connection (e.g., IP, ATM, frame relay).
This is useful when these connectivity at these layers are
established at the same time (e.g., an IP-based session over an ATM
SVC). To distinguish between the alternation and concatenation of
SDP descriptions, a 'chain' attribute can be used in the case of
concatenation.
When present, the 'chain' attribute binds an SDP description to the
next or previous SDP description. The next or previous description
is separated from the current one by a 'v' line. It is not necessary
that this description also have a 'chain' media attribute line.
Chaining averts the need to set up a single SDP description for a
session that is simultaneously created at multiple layers. It allows
the SDP descriptors for different layers to remain simple and clean.
Chaining is not needed in the Megaco context, where it is possible to
create separate terminations for the different layers of a
connection.
The 'chain' media attribute line has the following format:
a=chain:<chainPointer>
The <chainPointer> field can take on the following string values:
"NEXT", "PREVIOUS" and "NULL". The value "NULL" is not equivalent to
omitting the chain attribute from a description since it expressly
precludes the possibility of chaining. If the 'chain' attribute is
absent in an SDP description, chaining can still be realized by the
presence of a chain media attribute line in the previous or next
description.
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 part for the ATM session description. This is used to
convey information about the RTCP stream. Although the RTP stream is
encapsulated in AAL5 with no intervening IP layer, the RTCP stream is
sent to an IP address and RTCP port. This media-level part has the
following format:
m= control <rtcpPortNum> H323c -
c= IN IP4 <rtcpIPaddr>
Consistency with RFC2327 is maintained in the location and format of
these lines. The <fmt list> in the 'm' line is set to "-". The 'c'
line in the second media-level part pertains to RTCP only.
The <rtcpPortNum> and <rtcpIPaddr> subparameters indicate the port
number and IP address on which the media gateway is prepared to
receive RTCP packets.
Any of the subparameters on these lines can be set to "-" if they are
known by other means.
The range and format of the <rtcpPortNum> and <rtcpIPaddr>
subparameters is per [1]. The <rtcpPortNum> is a decimal number
between 1024 and 65535. It is an odd number. If an even number in
this range is specified, the next odd number is used. The
<rtcpIPaddr> is expressed in the usual dotted decimal IP address
representation, from 0.0.0.0 to 255.255.255.255.
5.6.6 Use of the eecid media attribute in call establishment
procedures
This informative section supplements the definition of the eecid
attribute (Section 5.6.1.1) by describing example procedures for its
use. These procedures assume a bearer-signaling mechanism for
connection set-up that is independent of service-level call control.
These procedures are independent of the media gateway control
protocol (MGCP, Megaco, SIP etc.), the protocol used between media
gateway controllers (ITU Q.1901, SIP etc.) and the protocol used for
bearer connection set-up (Q.2931, UNI, PNNI, AINI, IISP, Q.2630.1
etc.).
Inter-MGC
+---------+ Protocol +---------+
| MGC |------------------| MGC |
+---------+ +---------+
| |
|Media Gateway |Media Gateway
|Control Protocol |Control Protocol
| |
+------------+ (ATM Network) +------------+
|Originating |------------------|Terminating |
|Media | Bearer Setup |Media |
|Gateway | Protocol |Gateway |
+------------+ +------------+
In the diagram above, the originating media gateway originates the
service-level call. The terminating media gateway terminates it. In
the forward bearer connection set-up model, the originating media
gateway initiates bearer connection set-up. In the backward bearer
connection set-up model, the terminating gateway initiates bearer
connection set-up.
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 value to the OMGC, using the following SDP
description:
v=0
o=- 2873397496 0 ATM NSAP
47.0091.8100.0000.0060.3E64.FD01.0060.3E64.FD01.00
s=-
c=ATM NSAP
47.0091.8100.0000.0060.3E64.FD01.0060.3E64.FD01.00
t=0 0
m=audio $ AAL2/ITU 8
a=eecid:B3D58E32
(3) The originating media gateway controller (OMGC) signals the
terminating media gateway controller (TMGC) through the
appropriate mechanism (ISUP with Q.1901 extensions, SIP etc.).
It provides the TMGC with the NSAP address and the eecid
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
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
o=- 2873397497 0 ATM - -
s=-
c=ATM - -
t=0 0
m=audio $ - -
a=bearerType:SVC on
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
by the TMG.
(5) The TMG acknowledges the control message from the TMGC. It
returns the following SDP descriptor with the acknowledge:
v=0
o=- 2873397498 0 ATM NSAP
47.0091.8100.0000.0040.2A74.EB03.0020.4421.2A04.00
s=-
c=ATM NSAP
47.0091.8100.0000.0040.2A74.EB03.0020.4421.2A04.00
t=0 0
m=audio $ AAL2/ITU 8
The NSAP address information provided in this descriptor is not
needed. It can be omitted (by setting it to "- -").
(6) The TMG sends an SVC set-up message to the OMG. Within the GIT
information element, it includes eecid (B3D58E32) received from
the OMG.
(7) The OMG uses the eecid to correlate the SVC set-up request with
service-level control message received before from the OMGC.
(8) The OMG returns an SVC connect message to the TMG. On receiving
this message, the TMG sends an event notification to the TMGC
indicating successful SVC set-up.
Note that, for this example, the "v=", "o=", "s=" and "t=" lines
can be omitted in the Megaco context.
Example use of the Forward Bearer Connection Set-up Model:
(1) The originating media gateway controller (OMGC) initiates
service-level call establishment by sending the appropriate
controlsmessage to the originating media gateway (OMG).
(2) The originating media gateway (OMG) provides its NSAP address to
the OMGC, using the following SDP description:
v=0
o=- 2873397496 0 ATM NSAP
47.0091.8100.0000.0060.3E64.FD01.0060.3E64.FD01.00
s=-
c=ATM NSAP
47.0091.8100.0000.0060.3E64.FD01.0060.3E64.FD01.00
t=0 0
m=audio $ AAL2/ITU 8
The NSAP address information provided in this descriptor is not
needed. It can be omitted (by setting it to "- -").
(3) The originating media gateway controller (OMGC) signals the
terminating media gateway controller (TMGC) through the
appropriate mechanism (ISUP with Q.1901 extensions, SIP etc.).
Although this is not necessary, it can provide the TMGC with the
NSAP address 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.
(5) The TMG acknowledges the control message from the TMGC. Along
with the acknowledgement, it provides an SDP descriptor with a
locally assigned eecid.
v=0
o=- 2873397714 0 ATM NSAP
47.0091.8100.0000.0040.2A74.EB03.0020.4421.2A04.00
s=-
c=ATM NSAP
47.0091.8100.0000.0040.2A74.EB03.0020.4421.2A04.00
t=0 0
m=audio $ AAL2/ITU 8
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.
(7) The OMGC sends the appropriate control message to the OMG. This
includes the session descriptor received from the TMG. This
descriptor contains the NSAP address of the TMG and the EECID
assigned by the TMG. Additionally, the OMGC instructs the OMG
to set up an SVC to the TMG. It also requests the OMG to notify
the OMGC 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
o=- 2873397874 0 ATM - -
s=-
c=ATM - -
t=0 0
m=audio $ - -
a=bearerType:SVC on
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
by the TMG.
(8) The OMG acknowledges the control message from the OMGC.
(9) The OMG sends an SVC set-up message to the TMG. Within the GIT
information element, it includes eecid (B3D58E32) received from
the TMG.
(10) The TMG uses the eecid to correlate the SVC set-up request with
the service-level control message received before from the TMGC.
(11) The TMG returns an SVC connect message to the OMG. On receiving
this message, the OMG sends an event notification to the OMGC
indicating successful SVC set-up.
Note that, for this example, the "v=", "o=", "s=" and "t="
lines can be omitted in the Megaco context.
6. List of Parameters with Representations
This section provides a list of the parameters used in this document,
and the formats used to represent them in SDP descriptions. In
general, a "-" value can be used for any field that is not specified,
is inapplicable or is implied.
PARAMETER MEANING REPRESENTATION
<username> User name Constant "-"
<sessionID> Session ID Up to 32 decimal or
hex digits
<version> Version of "0" or 10 decimal digits
SDP descriptor
<networkType> Network type Constant "ATM" for ATM transport
<addressType> Address type String values:
"NSAP", "E164", "GWID",
"ALIAS"
<address> Address "NSAP": 40 hex digits, dotted
"E164": up to 15 decimal digits
"GWID": up to 32 characters
"ALIAS": up to 32 characters
<sessionName> Session name Constant "-"
<startTime> Session start "0" or 10 decimal digits
time
<stopTime> Session stop Constant "0"
time
<vcci> Virtual Circuit Decimal or hex equivalent
Connection of 16 bits
Identifier
<ex_vcci> Explicit "VCCI-" prefixed to <vcci>
representation
of <vcci>
<bcg> Bearer Connection Decimal or hex equivalent
Group of 8 bits
<ex_bcg> Explicit "BCG-" prefixed to <bcg>
representation
of <bcg>
<portId> Port ID Hex number of up to 32 digits
<ex_portId> Explicit "PORT-" prefixed to <portId>
representation
of <portId>
<vpi> Virtual Path Decimal or hex equivalent
Identifier of 8 or 12 bits
<ex_vpi> Explicit "VPI-" prefixed to <vpi>
representation
of <vpi>
<vci> Virtual Circui t Decimal or hex equivalent
Identifier of 16 bits
<ex_vci> Explicit "VCI-" prefixed to <vci>
representation
of <vci>
<vpci> Virtual Path Decimal or hex equivalent
Connection of 16 bits
Identifier
<ex_vpci> Explicit "VPCI-" prefixed to <vpci>
representation
of <vpci>
<cid> Channel Decimal or hex equivalent
Identifier of 8 bits
<ex_cid> Explicit "CID-" prefixed to <cid>
representation
of <cid>
<payloadType> Payload Decimal integer 0-127
Type
<transport> Transport Values listed in
Table 1.
<profile> Profile Decimal integer 1-255
<eecid> End-to-end Up to 8 hex digits
Connection
Identifier
<aalType> AAL type String values:
"AAL1","AAL1_SDT","AAL1_UDT",
"AAL2", "AAL3/4",
"AAL5", "USER_DEFINED_AAL"
<asc> ATM service String values:
category defined "CBR", "nrt-VBR", "rt-VBR",
by the ATMF "UBR", "ABR", "GFR"
<atc> ATM transfer String values:
capability "DBR","SBR","ABT/IT","ABT/DT",
defined by the "ABR"
ITU
<subtype> <asc>/<atc> Decimal integer 1-10
subtype
<qosClass> QoS Class Decimal integer 0-5
<bcob> Broadband Bearer Decimal or hex representation
Class of 5-bit field
<eetim> End-to-end timing String values: "on",
required "off".
<stc> Susceptibility Decimal equivalent of
to clipping a 2-bit field
<upcc> User plane Decimal equivalent of
connection a 2-bit field
configuration
<directionFlag> Direction Flag String values: "f", "b",
"fb"
<cdvType> CDV type String values:
"PP", "2P"
<acdv> Acceptable CDV Decimal equivalent
of 24-bit field
<ccdv> Cumulative CDV Decimal equivalent
of 24-bit field
<eetd> End-to-end transit Decimal equivalent
delay of 16-bit field
<cmtd> Cumulative transit Decimal equivalent
delay of 16-bit field
<aclr> Acceptable Decimal equivalent
Cell Loss Ratio of 8-bit field
<clpLvl> CLP level String values:
"0", "0+1"
<pcr> Peak Decimal
Cell Rate equivalent of a 24-bit field.
<scr> Sustained Decimal
Cell Rate equivalent of a 24-bit field
<mbs> Maximum Decimal
Burst Size equivalent of 16-bit field
<cdvt> CDVT Decimal equivalent of 24-bit
field.
<mcr> Minimum Decimal
Cell Rate equivalent of a 24-bit field
<mfs> Maximum Decimal
Frame Size equivalent of a 16-bit field
<fd> Frame Discard String Values:
Allowed "on", "off"
<te> CLP tagging String Values:
"on", "off"
<nrm> NRM Decimal/hex equivalent
of 3 bit field
<trm> TRM -ditto-
<cdf> CDF -ditto-
<adtf> ADTF Decimal/Hex equivalent
of 10 bit field
<ficr> Forward Initial Decimal equivalent of
Cell Rate 24-bit field
<bicr> Backward Initial Decimal equivalent of
Cell Rate 24-bit field
<ftbe> Forward Transient Decimal equivalent of
Buffer Exposure 24-bit field
<btbe> Backward Transient Decimal equivalent of
Buffer Exposure 24-bit field
<crmrtt> Cumulative RM Decimal equivalent of
round-trip time 24-bit field
(Microseconds)
<frif> Forward rate Decimal integer
increase factor 0 -15
<brif> Backward rate Decimal integer
increase factor 0 -15
<frdf> Forward rate Decimal integer
decrease factor 0 -15
<brdf> Backward rate Decimal integer
decrease factor 0 -15
<bearerType> Bearer Type String Values:
"PVC", "SVC", "CID"
<localInitiation> Local Initiation String values:
"on", "off"
<sci> Screening Indication Decimal or hex
equivalent of 4 bits.
<lsn> Leaf Sequence Number Decimal or hex
equivalent of 32 bits.
<cdStd> Coding standard for Decimal or hex
connection scope equivalent of 2 bits.
selection IE
Definition: UNI 4.0 [5]
<conScpTyp> Type of connection scope Decimal or hex
Definition: UNI 4.0 [5] equivalent of 4 bits
<conScpSel> Connection scope selection Decimal or hex
Definition: UNI 4.0 [5] equivalent of 8 bits
<cacheEnable> Enable SVC caching String values: "on",
"off"
<cacheTimer> Timer for cached SVC Decimal or hex equivalent
deletion of 32-bit field
<bearerSigIEType> Bearer Signaling IE Type 2 hex digits
<bearerSigIELng> Bearer Signaling IE Length 1-4 hex digits
<bearerSigIEVal> Bearer Signaling IE Value Even number of hex
digits, 2-512
<appClass> Application String values:
specification "itu_h323c","af83",
"AAL5_SSCOP",
"itu_i3661_unassured",
"itu_i3661_assured",
"itu_i3662",
"itu_i3651", "itu_i3652",
"itu_i3653", "itu_i3654",
"FRF5", "FRF8","FRF11",
"itu_h2221"
<oui> Organizationally 1 to 6 hex digits
Unique Identifier
<appId> Application Identifier 1 to 8 digits
<cbrRate> CBR Rate Two hex digits.
<sbc> Subchannel Count T1: Decimal integer 1-24
or hex equivalent
E1: Decimal integer 1-31
or hex equivalent
<clkrec> Clock Recovery String values:
Method "NULL", "SRTS",
"ADAPTIVE"
<fecEnable> Forward Error String values:
Correction Enable "NULL", "LOSS_SENSITIVE"
"DELAY_SENSITIVE"
<partialFill> Partial Fill Decimal integer 1-48
or hex equivalent
<structureEnable> Structure Present String values:
"on", "off"
<blksz> Block Size Decimal or hexadecimal
equivalent of 16 bits
<cpcs> Maximum AAL5: Decimal or hex
CPCS SDU size equivalent of 16 bits
AAL2: 45 or 64, decimal
or hex representation
<cidLowerLimit> AAL2 CID lower limit Decimal integer 8-255
or hex equivalent
<cidUpperLimit> AAL2 CID upper limit Decimal integer 8-255
or hex equivalent
<timerCU> Timer, combined use Integer decimal; range
(microseconds) determined by application.
Use decimal equivalent of
32 bits.
<simplifiedCPS> Simplified CPS [52] String values:
"on", "off"
<fSDUrate> Forward SDU rate Decimal equivalent of
(bits per second) 24-bit field
<bSDUrate> Backward SDU rate Decimal equivalent of
(bits per second) 24-bit field
<ted> Transmission Error String values:
Detection Enable "on", "off"
<rastimer> SSSAR reassembly Integer decimal,
(microseconds) Range determined by
application. Use decimal
equivalent of 32 bits.
<fsssar> Maximum SSSAR-SDU Decimal 1- 65568
size, forward or hex equivalent
direction
<bsssar> Maximum SSSAR-SDU Decimal 1- 65568
size, backward or hex equivalent
direction
<fsscopsdu> Maximum SSCOP-SDU Decimal 1- 65528
size, forward or hex equivalent
direction
<bsscopsdu> Maximum SSCOP-SDU Decimal 1- 65528
size, backward or hex equivalent
direction
<fsscopuu> Maximum SSCOP-UU Decimal 1- 65524
field size, forward or hex equivalent
direction
<bsscopuu> Maximum SSCOP-UU Decimal 1- 65524
field size, backward or hex equivalent
direction
<sap> Service Access String values:
Point "AUDIO", "MULTIRATE"
<circuitMode> Circuit Mode String values:
Enable "on", "off"
<frameMode> Frame Mode String values:
Enable "on", "off"
<faxDemod> Fax Demodulation String values:
Enable "on", "off"
<cas> Enable CAS transport String values:
via Type 3 packets "on", "off"
<dtmf> Enable DTMF transport String values:
via Type 3 packets "on", "off"
<mfall> Enable MF transport String values:
via Type 3 packets "on", "off"
<mfr1> Enable MF (R1) String values:
transport via "on", "off"
Type 3 packets
<mfr2> Enable MF (R2) String values:
transport via "on", "off"
Type 3 packets
<PCMencoding> PCM encoding String values:
"PCMA", "PCMU"
<fmaxFrame> Maximum length of a Decimal or hex
frame mode data unit, equivalent of
forward direction 16-bit field
<bmaxFrame> Maximum length of a -ditto-
frame mode data unit,
backward direction
<silenceSuppEnable> Silence suppression String values:
Enable "on", "off"
<silenceTimer> Kick-in timer Decimal or hex representation
for silence of 16-bit field
suppression
<suppPref> Preferred Silence String values:
Suppression Method "standard", "custom"
<sidUse> SID Use String values:
Method "No SID", "Fixed Noise",
"Sampled Noise"
<fxnslevel> Fixed Noise Decimal or hex representation
Level of a 7-bit field
<ecanEnable> Enable Echo String values:
Cancellation "on", "off"
<ecanType> Type of Echo String values:
Cancellation "G165", "G168"
<gcEnable> Enable Gain String values:
Control "on", "off"
<gcLvl> Level of inserted Decimal or hex equivalent
Loss of 16-bit field
<aal2transport> AAL2 transport Values listed in Table 1
that begin with the string
"AAL2"
<uuiCodeRange> UUI code range Decimal integer 0-15
<encodingName> Encoding name String values:
"PCMG", "SIDG", "SID729",
any value from column 2
of Table 2
<packetLength> Packet length Decimal integer 0-45
<packetTime> Packetization Decimal integer 1-65,536
Interval in microsec.
<fxIncl> Facsimile included String values: "on", "off"
<serviceType> Service type String values: "v", "d", "f",
"df", "all"
<q7655scc> Contents of the Even number of hex
Q.765.5 Single digits (4-32)
Codec IE
<isupUsi> ISUP User Service Even number of hex digits
Information (4-24)
<uiLayer1Prot> User Information Two hex digits
Layer 1 Protocol
<chainPointer> Chain pointer String values: "NEXT",
"PREVIOUS", "NULL"
<rtcpPortNum> RTCP port number for Odd decimal in range 1,024 to
H.323 Annex C 65,535.
applications Preferred: Odd number in
the range 49,152 to 65,535
<rtcpIPaddr> IP address for receipt Dotted decimal, 7-15 chars
of RTCP packets
7. Examples of ATM session descriptions using SDP
An example of a complete AAL1 session description in SDP is:
v=0
o=- A3C47F21456789F0 0 ATM NSAP
47.0091.8100.0000.0060.3e64.fd01.0060.3e64.fd01.00
s=-
c=ATM NSAP
47.0091.8100.0000.0060.3e64.fd01.0060.3e64.fd01.00
t=0 0
m=audio $ AAL1/AVP 18 0 96
a=atmmap:96 X-G727-32
a=eecid:B3D58E32
An example of a complete AAL2 session description in SDP is:
v=0
o=- A3C47F21456789F0 0 ATM NSAP
47.0091.8100.0000.0060.3e64.fd01.0060.3e64.fd01.00
s=-
c=ATM NSAP
47.0091.8100.0000.0060.3e64.fd01.0060.3e64.fd01.00
t=0 0
m=audio $ AAL2/ITU 8 AAL2/custom 100 AAL2/ITU 1
a=eecid:B3E32
The AAL2 session descriptor below is the same as the one above except
that it states an explicit preference for a voice codec, a voiceband
data codec and a voiceband fax codec. Further, it defines the
profile AAL2/custom 100 rather than assume that the far-end is
cognizant of the elements of this profile.
v=0
o=- A3C47F21456789F0 0 ATM NSAP
47.0091.8100.0000.0060.3e64.fd01.0060.3e64.fd01.00
s=-
c=ATM NSAP
47.0091.8100.0000.0060.3e64.fd01.0060.3e64.fd01.00
t=0 0
m=audio $ AAL2/ITU 8 AAL2/custom 100 AAL2/ITU 1
a=eecid:B3E32
a=profileDesc:AAL2/custom 100 0-7 PCMG 40 5000 0-7 SIDG 1
5000 8-15 G726-32 40 10000 8-15 SIDG 1 5000
a=vsel:G726-32 40 10000
a=dsel:off PCMU - -
a=fsel:G726-32 40 10000
An example of an SDP session descriptor for an AAL5 switched virtual
circuit for delivering MPEG-2 video:
v=0
o=- A3C47F21456789F0 0 ATM NSAP
47.0091.8100.0000.0060.3e64.fd01.0060.3e64.fd01.00
s=-
c=ATM NSAP 47.0091.8100.0000.0060.3e64.fd01.0060.3e64.fd01.00
t=0 0
m=video $ AAL5/ITU 33
a=eecid:B3E32
a=aalType:AAL5
a=bearerType:SVC on
a=atmTrfcDesc:f 0+1 7816 - - - - - off -
a=atmTrfcDesc:b 0+1 0 - - - - - on -
a=cpsSDUsize:f 20680
a=aalApp:itu_h2221 - -
An example of an SDP session descriptor for an AAL5 permanent virtual
circuit for delivering MPEG-2 video:
v=0
o=- A3C47F21456789F0 0 ATM - -
s=-
c=ATM - -
t=0 0
m=video PORT-$/VPI-0/VCI-$ AAL5/ITU 33
a=bearerType:PVC -
a=atmTrfcDesc:f 0+1 7816 - - - - - off -
a=atmTrfcDesc:b 0+1 0 - - - - - on -
a=cpsSDUsize:f 20680
a=aalApp:itu_h2221 - -
8. Security Considerations
8.1 Bearer Security
At present, standard means of encrypting ATM and AAL2 bearers are not
conventionalized in the same manner as means of encrypting RTP
payloads. Nor has the authentication of ATM or AAL2 bearer
signaling.
The SDP encryption key line (k=) defined in RFC2327 can be used to
represent the encryption key and the method of obtaining the key. In
the ATM and AAL2 contexts, the term 'bearer' can include 'bearer
signaling' as well as 'bearer payloads'.
8.2 Security of the SDP description
The SDP session descriptions might originate in untrusted areas such
as equipment owned by end-subscribers or located at end-subscriber
premises. SDP relies on the security mechanisms of the encapsulating
protocol or layers below the encapsulating protocol. Examples of
encapsulating protocols are the Session Initiation Protocol (SIP),
MGCP and Multimedia Gateway Control Protocol (MEGACO). No additional
security mechanisms are needed. SIP, MGCP and MEGACO can use IPSec
authentication as described in RFC1826 [Ref. 27]. IPSec encryption
can be optionally used with authentication to provide an additional,
potentially more expensive level of security. IPSec security
associations can be made between equipment located in untrusted areas
and equipment located in trusted areas through configured shared
secrets or the use of a certificate authority.
9. ATM SDP Grammar
This appendix provides an Augmented BNF (ABNF) grammar for the ATM
conventions for SDP. ABNF is defined in rfc2234. This is not a
complete ABNF description of SDP. Readers are referred to [1] for an
ABNF description of the SDP base line protocol, and to rfc2848,
rfc2543, rfc2045 and rfc2326 for application-specific conventions for
SDP use. For case conventions, see section 2.4.
; Constant definitions
safe = alpha-numeric / "'" / "-" / "." / "/" / ":" / "?" / DQUOTE /
"#" / "$" / "&" / "*" / ";" / "=" / "@" / "[" / "]" / "^" / "_" /
"`" / "{" / "|" / "}" / "+" / "~"
DQUOTE = %x22 ; double quote
alpha-numeric = ALPHA / DIGIT
ALPHA = "a" / "b" / "c" / "d" / "e" / "f" / "g" / "h" / "i" / "j" /
"k" / "l" / "m" / "n" / "o" / "p" / "q" / "r" / "s" / "t" /
"u" / "v" / "w" / "x" / "y" / "z" /
"A" / "B" / "C" / "D" / "E" / "F" / "G" / "H" / "I" / "J" /
"K" / "L" / "M" / "N" / "O" / "P" / "Q" / "R" / "S" / "T" /
"U" / "V" / "W" / "X" / "Y" / "Z"
DIGIT = "0" / POS-DIGIT
POS-DIGIT = "1" / "2" / "3" / "4" / "5" / "6" / "7" / "8" / "9"
hex-prefix = "0" ("x" / "X")
HEXDIG = DIGIT / "a" / "b" / "c" / "d" / "e" / "f" /
"A" / "B" / "C" / "D" / "E" / "F"
space = %d32
EOL = (CR / LF / CRLF) ; as per Megaco RFC
CR = %d13
LF = %d10
decimal-uchar = DIGIT
/ POS-DIGIT DIGIT
/ ("1" 2*(DIGIT))
/ ("2" ("0"/"1"/"2"/"3"/"4") DIGIT)
/ ("2" "5" ("0"/"1"/"2"/"3"/"4"/"5"))
generic-U8 = (hex-prefix hex-U8) / decimal-uchar
generic-U12 = (hex-prefix hex-U12) / 1*4 (DIGIT)
generic-U16 = (hex-prefix hex-U16) / 1*5(DIGIT)
generic-U24 = (hex-prefix hex-U24) / 1*8(DIGIT)
generic-U32 = (hex-prefix hex-U32) / 1*10(DIGIT)
hex-U8 = 1*2(HEXDIG)
hex-U12 = 1*3(HEXDIG)
hex-U16 = 1*4(HEXDIG)
hex-U24 = 1*6(HEXDIG)
hex-U32 = 1*8(HEXDIG)
generic-U8-or-null = generic-U8 / "-"
generic-U12-or-null = generic-U12 / "-"
generic-U16-or-null = generic-U16 / "-"
generic-U24-or-null = generic-U24 / "-"
generic-U32-or-null = generic-U32 / "-"
decimal-U8-or-null = decimal-uchar / "-"
decimal-U12-or-null = 1*4(DIGIT) / "-"
decimal-U16-or-null = 1*5(DIGIT) / "-"
decimal-U24-or-null = 1*8 (DIGIT) / "-"
decimal-U32-or-null = 1*10(DIGIT) / "-"
on-off-or-null = "on" / "off" / "-"
; ABNF definition of SDP with ATM conventions
SDP-infoset = 1*(announcement)announcement = proto-version
origin-field session-name-field information-field uri-field
email-fields phone-fields connection-field bandwidth-fields
time-fields key-field attribute-fields media-descriptions
proto-version = ["v=" 1*4(DIGIT) EOL] ; use "v=0" for ATM SDP
origin-field = ["o=" username space sess-id space sess-version space
net-type-addr EOL]
username = 1* safe ; for ATM use "-"
sess-id = (1*32 DIGIT) / (hex-prefix 1*32 HEXDIG)
sess-version = (1*10 DIGIT) / (hex-prefix 1*8 HEXDIG)
net-type-addr= nettype space addrtype-addr
netttype = "ATM" / "IN" / "TN" / "-" / "$"
; Other nettype values may be defined in the future in other documents
; Validity of nettype and addrtype-addr combination to be checked at
; application level, not protocol syntax level
addrtype-addr = atm-addrtype-addr / ip-addrtype-addr / tn-addrtype-addr
; ip-addrtype-addr per rfc2327
; tn-addrtype-addr per rfc2848
; ATM address definition
atm-addrtype-addr = atm-nsap-addr / atm-e164-addr / atm-alias-addr
atm-nsap-addr = ("NSAP" / "-" / "$") space (nsap-addr / "-" / "$")
atm-e164-addr = ("E164" / "-" / "$") space (e164-addr / "-" / "$")
atm-alias-addr = ("GWID" / "ALIAS" / "-" / "$") space (alias-addr /
"-" / "$")
nsap-addr = 2(HEXDIG) "." 9(4(HEXDIG) ".") 2(HEXDIG)
e164-addr = 1*15 (DIGIT)
alias-addr = 1*32(alpha-numeric / "-" / "." / "_")
session-name-field = ["s=" text EOL] ; for ATM use "s=-"
text = byte-string
byte-string = 1*(byte-string-char) ; definition per rfc2327
byte-string-char = %x01-09/ %x0B/ %x0C/ %x0E-FF ; all ASCII except
NUL, CR & LF
; Definitions of information-field, uri-field, email-fields,
; phone-fields per rfc2327. These fields are omitted in
; ATM SDP descriptions. If received, they are ignored in the ATM
; context
connection-field = ["c=" c-net-type-addr]
; connection-field required, not optional, in ATM
c-net-type-addr = nettype space c-addrtype-addr
c-addrtype-addr = atm-addrtype-addr / c-ip-addrtype-addr /
tn-addrtype-addr
; atm-addrtype-addr defined above
; c-ip-addrtype-addr per rfc2327
; difference in address usage between 'o' and 'c' lines per rfc2327
; tn-addrtype-addr per rfc2848
bandwidth-fields = *("b=" bwtype ":" bandwidth EOL)
bwtype = 1*(alpha-numeric)
bandwidth = 1*(DIGIT)
time-fields = *( "t=" start-time space stop-time
*(EOL repeat-fields) EOL)
[zone-adjustments EOL]
start-time = time / "0"
stop-time = time / "0" ; always "0" in ATM
time = POS-DIGIT 9*(DIGIT) ; same as rfc2327
; repeat-fields and zone-adjustments per rfc2327, not used in ATM
; Definition of optional key-field per rfc2327
;
attribute-fields = *("a=" attribute EOL)
; SDP descriptors for ATM do not have session-level media attribute
; lines. If these are provided, they should be ignored.
media-descriptions = *(media-description)
media-description = media-field information-field *(connection-field)
bandwidth-fields key-field attribute-fields
; Definitions of information-field per RFC2327. These fields are
; omitted in ATM SDP descriptions. If received, they are ignored in
; the ATM context
;
; In ATM, the connection-field is used in media-description to indicate
; the IP address associated with the RTCP control protocol in H.323.C
; applications. In this case, the connection field is per the RFC2327
; definition for IP v4-based connections. Otherwise, it is not used in
; media-description. If received as part of media-description,
; it is ignored.
;
; Definition of optional bandwidth-fields as above.
: Definition of optional key-field as in RFC2327
media-field = rfc2327-media-field / rfc2848-media-field /
atm-media-field
; rfc2327-media-field and rfc2848-media-field defined in those rfc's
atm-media-field = "m=" media space vcId space transport-fmts EOL