Internet Engineering Task Force Internet Draft Rajesh Kumar Document: draft-rajeshkumar-mmusic-sdp-atm-02.txt Mohamed Mostafa July 1, 2000 Cisco Systems Expires: January 1, 2001 Conventions for the use of the Session Description Protocol (SDP) for ATM Bearer Connections STATUS OF THIS MEMO This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC2026. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet- Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet- Drafts as reference material or to cite them other than as work in progress. The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. Abstract This document described conventions for using the Session Description Protocol (SDP) described in RFC2327 for controlling ATM Bearer Connections, and any associated ATM Adaptation Layer (AAL). The AALs addressed are Type 1, Type 2 and Type 5. This list of conventions is meant to be exhaustive. Individual applications can use subsets of these conventions. Further, these conventions are meant to comply strictly with the SDP syntax as defined in rfc2327. 1. Introduction SDP will be used in conjunction with a connection handling / device control protocol such as Megaco (H.248) [26], SIP [18] or MGCP [25] to communicate the information needed to set up ATM bearer connections. These connections include voice connections, voiceband data connections, clear channel circuit emulation connections and baseband data connections (such as fax relay, modem relay, SSCOP, frame relay etc.). Rajesh Kumar, Mohamed Mostafa [Page 1] These conventions use standard SDP syntax as defined in rfc2327 to describe the ATM-level and AAL-level connections, addresses and other parameters. In general, parameters associated with layers higher than the ATM adaptation layer are included only if they are tightly coupled to the ATM or AAL layers. Since the syntax conforms to rfc2327, standard SDP parsers should react in a well-defined and safe manner on receiving session descriptions based on the SDP conventions in this document. This is done by extending the values of fields defined in rfc2327 rather than by defining new fields. This is true for all SDP lines except the of the media attribute lines, in which case new attributes are defined. The SDP protocol allows the definition of new attributes in the media attribute lines which are free-form. For the remaining lines, the fact that the field in an SDP descriptor is set to "ATM" should preclude the misinterpretation of extended parameter values by rfc2327-compliant SDP parsers. These conventions are meant to address the following ATM applications: * Applications in which a new SVC is set-up for each service connection. These SVCs could be AAL1 or AAL5 SVCs or single-CID AAL2 SVCs. * Applications in which existing path resources are assigned to service connections. These resources could be AAL1 PVCs (or SPVCs), AAL5 PVCs (or SPVCs), AAL2 single-CID PVCs (or SPVCs), or channels (CIDs) within AAL2 PVCs (or SPVCs) that multiplex multiple CIDs. This document is limited to the case when the network type is ATM. This includes raw RTP encapsulation over AAL5 with no intervening IP layer [46]. It does not address SDP usage for IP, with or without ATM as a lower layer. In some cases, IP connection set-up is independent of lower layers, which are configured prior to it. For example, AAL5 PVCs that connect IP routers can be used for VoIP calls. In other cases, VoIP call set-up is closely tied to ATM-level connection set-up. This might require a chaining of IP and ATM descriptors, as described in section 5.7.39. This document makes no assumptions on who constructs the session descriptions (media gateway, intermediate ATM/AAL2 switch, media gateway controller etc.). This will be different in different applications. Further, it allows the use of one session description for both directions of a connection (as in SIP applications) or the use of separate session descriptions for different directions. It addresses the ATM multicast and anycast capabilities. This document makes no assumptions about how the SDP description will be coded. Although the descriptions shown here are encoded as text, alternate codings are possible: - Binary encoding such as ASN.1. This is an option (in addition to text encoding) in the Megaco context. Rajesh Kumar, Mohamed Mostafa [Page 2] - Use of extended ISUP parameters (Q.1901) to encode the information in SDP descriptors, with conversion to/from binary/text-based SDP encoding when needed. 2. Representation of Certain Fields within SDP description lines This document uses all the syntactic conventions of standard SDP as defined in RFC2327. 2.1 Representation of Extension Attributes The SDP protocol (RFC2327) requires that non-standard attributes and codec names use an "X-" prefix. In this internet draft, the "X-" prefix is used consistently for codec names (Table 1) that have not been registered with IANA. However, this prefix is not used for the extension SDP attributes defined in this document. This has been done to enhance legibility. This document suggests that parsers be flexible in the use of the "X-" prefix convention. They should accept codec names and attribute names with or without the "X-" prefix. 2.2 Representation of Parameter Values Parsers designed to this document should be flexible enough to accommodate decimal and hexadecimal representations. The former do not have a prefix, while the latter should use a 0x prefix. In either case, if the bit field is smaller or larger than the binary equivalent of the SDP representation, then leading 0 bits should be added or removed as needed. Thus, 3 and 0x3 translate into the following five-bit pattern: 0 0011. The SDP representations 0x12 and 18 translate into the following five-bit pattern: 1 0010. Both single-character and multi-character string values are enclosed in double quotes (i.e. "). By contrast, single quotes (i.e. ') are used for emphasizing keywords rather than to refer to characters or strings. 2.3 Directionality Convention This section defined the meaning of the terms 'forward' and 'backward' as used in this document. This is specially applicable to parameters that have a specific direction associated with them. In this document, 'forward' refers to the direction away from the Media Gateway, while 'backward' refers to the direction towards the Media Gateway. This convention must be used in all SDP-based session descriptions regardless of whether underlying bearer is an SVC, a dynamically allocated PVC/SPVC or a dynamically allocated CID. This is regardless of which side originates the service connection. If ATM SVC or AAL2 Q.2630.1 signaling is used, the directionality convention is independent of which side originates the SVC or AAL2 connection. Rajesh Kumar, Mohamed Mostafa [Page 3] This provides a simple way of identifying the direction in which a parameter is applicable, in a manner that is independent of the underlying ATM or AAL2 bearer. This simplicity comes at a price, described below. Note that, the convention used by all ATM/AAL2 signaling specifications (e.g. Q.2931 Section 1.3.3 and Q.2630.1) mandates that forward direction is from the end initiating setup/establishment via bearer signaling towards the end receiving the setup/ establishment request. The backward direction is in the opposite direction. In some cases, the 'forward' and 'backward' directions of the ATM signaling convention might be the exact opposite of the SDP convention described above, requiring the media gateway to perform the necessary translation. An example case in which this is needed is described below. Consider an SDP description sent by a media gateway controller to the gateway originating a service-level call. In the backward SVC call set-up model, this gateway terminates (rather than originates) an SVC call. The media gateway refers to the traffic descriptor (and hence the PCR) in the direction away from this gateway as the forward traffic descriptor and forward PCR. Clearly, this is at odds with ATM SVC signaling which refers to this very PCR as the backward PCR. The gateway needs to be able to perform the required swap of directions. In this example, the media gateway terminating the service level call (and hence originating the SVC call) does not need to perform this swap. 3. Capabilities Provided by SDP conventions To support these applications, the SDP conventions in this document provide the following session establishment capabilities: * Identification by an ATM network element of its own address, in one of several possible formats. A connection peer can initiate SVC set-up to this address. * Identification of the ATM bearer connection that is to be bound to the narrowband telephony connection. This is either a VCC in AAL1/AAL5 applications or a channel (identified by a CID) in AAL2 applications. This is useful in PVC/SPVC applications. Note that the difference between the PVCs and SPVCs is in the way the bearer virtual circuit connection is set up. From the perspective of this document, the terms PVC and SPVC are equivalent. This is because the bearer connection is already set prior to the time when the SDP description is used to bind it to a narrowband telephony connection. * In AAL1/AAL5 applications, declaration of a set of payload types that can be bound to the ATM bearer connection. RTP payload types that have been registered with IANA are re-used for AAL1 or AAL5. In the manner of standard SDP, unregistered payload types are mapped dynamically. Rajesh Kumar, Mohamed Mostafa [Page 4] * In AAL2 applications, declaration of a set of profiles that can be bound to the ATM bearer connection. A mechanism for dynamically defining custom profiles within the SDP session description is included. This allows the use of custom profiles for connections that span multi-network interfaces. * A means of correlating narrowband telephony connections with underlying ATM bearer connections. The backbone network connection identifier or bnc-id specified in ITU Q.BICC standardization work is used for this purpose. In order to provide a common SDP base for applications based on ISUP+/Q.BICC and SIP/SIP+, the neutral term 'eecid' is used in lieu of 'bnc-id' in the SDP session descriptor. * A means of specifying the explicit mapping of one codec type and one packetization period into a service type. Service types are voice, voiceband data and facsimile. This is useful in determining the encoding to use when the connection is upspeeded in response to modem or facsimile tones. * A means of describing the QoS class, ATM transfer capability / service category, broadband bearer class, traffic parameters, CPS parameters and SSCS parameters related the underlying bearer connection. 4. Format of the ATM Session Description The sequence of lines in the session descriptions in this document conforms to rfc2327 [1]. In general, a session description consists of a session-level part followed by zero or more media-level parts. ATM session descriptions consist of a session level part followed by one or two media-level parts. The only two media applicable are the ATM medium and RTCP control (where applicable). Session descriptor with one media-level part v= (protocol version, zero or one line) o= (origin, zero or one line) s= (session name, zero or one line) c= (connection information, one line) t= (timestamp, zero or one line) m= (media information and transport address, one line) b= (bandwidth, zero or one line) k= (encryption key, zero or one line) a= (media attribute, zero or more lines) Session descriptor with two media-level parts (used in h.323 annex C applications) Session-level part v= (protocol version, zero or one line) o= (origin, zero or one line) s= (session name, zero or one line) c= (connection information, one line) t= (timestamp, zero or one line) Rajesh Kumar, Mohamed Mostafa [Page 5] media-level part (audio medium) m= (media information and transport address, one line) b= (bandwidth, zero or one line) k= (encryption key, zero or one line) a= (media attribute, zero or more lines) media-level part (control medium) m= (media information and transport address, one line) c= (connection information for control only, one line) In general, the 'v', 'o', 's', and 't' lines are mandatory. However, in the Megaco [26] context, these lines have been made optional. The 'o', 's', and 't' lines are omitted in most MGCP applications. Note that SDP session descriptors for ATM can contain bandwidth (b=) and encryption key (k=) lines. If used, these lines should strictly conform to the SDP standard (rfc2327). The bandwidth (b=) line is redundant in the ATM context since this information can be expressed with greater precision in the atmFtrfcDesc and atmBtrfcDesc media attribute lines. The encryption key line (k=) can be used to indicate an encryption key for the bearer, and a method to obtain the key. At present, the encryption of ATM and AAL2 bearers has not been conventionalized, unlike the encryption of RTP payloads. Nor has the authentication of ATM or AAL2 bearer signaling. In the ATM and AAL2 contexts, the term 'bearer' can include 'bearer signaling' as well as 'bearer payloads'. The order of lines in an ATM session description is exactly in the rfc2327-conformant order depicted above. However, there is no order of the media attribute ('a') lines with respect to other 'a' lines. The SDP protocol version for session descriptions using these conventions is 0. In conformance with standard SDP, it is strongly recommended that the 'v' line be included at the beginning of each SDP session description. In some contexts such as Megaco, the 'v' line is optional and may be omitted unless several session descriptions are provided in sequence, in which case the 'v' line serves as a delimiter. Depending on the application, sequences of session descriptions might refer to: - Different connections or sessions. - Alternate ways of realizing the same connection or session. The 'o', 's' and 't' lines are included for strict conformance with RFC2327. It is possible that these lines might not carry useful information in some ATM-based narrowband telephony applications. Therefore, some applications might omit these lines, although it is recommended that they not do so. For maximum interoperability, it is preferable that SDP parsers not reject session descriptions that do not contain these lines. 5. Structure of the Session Description Lines 5.1 The Origin Line The origin line for an ATM-based narrowband telephony session is structured as follows: Rajesh Kumar, Mohamed Mostafa [Page 6] o= The is set to "-". The can be set to one of the following: * an NTP timestamp referring to the moment when the SDP session descriptor was created. * a Call ID, connection ID or context ID that uniquely identifies the session within the scope of a media gateway. Since calls can comprise multiple connections (sessions), call IDs are generally not suitable for this purpose. NTP time stamps can be represented as decimal or hex integers. The part of the NTP timestamp that refers to an integer number of seconds is sufficient. Since this is a 32-bit field, the decimal or hex equivalent of a 32-bit field is adequate if NTP time stamps are used for this purpose. On the other hand, call IDs, connection IDs and context IDs can be represented in decimal or hex format, or as a string of alphanumeric characters. The MGCP connection ID can be 32 hex digits long. In general, to cover all cases, the can comprise of up to 32 digits or 34 alphanumeric characters. The additional two characters allow the inclusion of a "0x" prefix when hex numbers are represented alphanumerically. The refers to the version of the SDP session descriptor (not that of the SDP protocol). This is can be set to one of the following: * 0. * an NTP timestamp referring to the moment when the SDP session descriptor was modified. If the SDP session descriptor has not been modified by an intermediate entity (such as an MGC), then the timestamp will be the same as the timestamp, if any. It is adequate to allow up to 32 decimal or hex digits for the . The in SDP session descriptions for ATM applications should be assigned the string value "ATM". The and parameters are identical to those for the connection information ('c') line. Each of these parameters can be set to a "-". However, it is not recommended that these fields be omitted without being set to a "-" since this is not explicitly allowed by standard SDP (rfc2327). It is recognized that some parser-builders follow this practice. Rajesh Kumar, Mohamed Mostafa [Page 7] 5.2 The Session Name Line In general, the session name line is structured as follows: s= For ATM-based narrowband telephony sessions, the parameter is set to a "-". The resulting lines is: s=- It is not recommended that the be omitted without being set to a "-" since this is not explicitly allowed by standard SDP (rfc2327). It is recognized that some parser-builders follow this practice. s=- 5.3 The Connection Information Line The connection information line for ATM-based narrowband telephony sessions is structured as follows: c= The field in the 'c' line should be set to "ATM". When the SDP description is built by a media gateway, the refers to the ATM address of the media gateway building the SDP description. When this description is forwarded to the another gateway, it still contains the original gateway's ATM address. When the media gateway controller builds part or all of the SDP description, the local descriptor contains the ATM address of the local media gateway, while the remote descriptor contains the ATM address of the remote media gateway. Additionally, in all contexts, the 'm' line can have an ATM address in the subparameter which, if present, is the remote address if the 'c' line address is local, and vice versa. The can be NSAP, E164 or GWID (ALIAS). The format depends on the . NSAP: If the ATMaddressType is NSAP, the ATMaddress is expressed as a string of 40 hex characters without the "0x" prefix. As an option, dots can be included after 16-bit fields, with the first dot following an 8-bit field. The last octet of the NSAP address is the 'selector' field that is not used for ATM addressing and is available for non-standard use. The prior six octets of the NSAP are an IEEE 802 MAC address assigned to the gateway. For example: c=ATM NSAP 47.0091.8100.0000.0060.3e64.fd01.0060.3e64.fd01.00 Rajesh Kumar, Mohamed Mostafa [Page 8] E164: If the ATMaddressType is E164, the ATMaddress is expressed as a decimal number with up to 15 digits. For example: c=ATM E164 9738294382 The use of E.164 numbers in the B-ISDN context is defined in ITU E.191. There is a disparity between the ATM forum and the ITU in the use of E.164 numbers for ATM addressing. The ATM forum (e.g. UNI Signaling 4.0) allows only International Format E.164 numbers, while the ITU (e.g. Q.2931) allows private numbering plans. Since the goal of this SDP specification is to interoperate with all bearer signaling protocols, it allows the use of numbers that do not conform to the E.164 International Format. However, to maximize overall consistency, network administrators can restrict the provisioning of numbers to the E.164 International Format. GWID (ALIAS): If the ATMaddressType is GWID meaning that the address is a private Voice Gateway identifier (unique within context of network), the ATMaddress is expressed as alphanumeric string ("A"-"Z", "a"-"z", "0"- "9",".","-","_"). For example: c=ATM GWID officeABCmgx101vism12 Since these SDP conventions can be used for more than gateways, the string "ALIAS" can be used instead of "GWID" in the 'c' line. Thus, the example above is equivalent to: c=ATM ALIAS officeABCmgx101vism12 An example of a GWID (ALIAS)is the CLLI code used for telecom equipment. For all practical purposes, it should be adequate for the GWID (ALIAS) to be a variable length string with a maximum size of 32 characters. Since this identifier is private to a network, some network administrations might restrict it to a smaller size (e.g. 10 characters). The connection information line is always present in an SDP session descriptor. However, if there is no address to transmit, this line can be represented in one of the equivalent ways: c=ATM - - This might be used when the address is known a priori. It is not recommended that or be omitted without being set to a "-" since this is not explicitly allowed by standard SDP (rfc2327). It is recognized that some parser-builders follow this practice. 5.4 The Timestamp Line The timestamp line for an SDP session descriptor is structured as follows: t= Rajesh Kumar, Mohamed Mostafa [Page 9] For ATM-based narrowband telephony sessions, the parameter can be made equal to the NTP timestamp (if any) used for the in the 'o' line. It can also be set to 0 indicating its irrelevance. If it made equal to the NTP timestamp in seconds, the fractional part of the NTP timestamp is omitted. In this case, it is adequate to allow the hex or decimal equivalent of a 32-bit field. Per Ref. [49], NTP time stamps need a 32 bit unsigned representation of seconds, and a 32 bit unsigned representation of fractional seconds. The parameter is set to 0 in the ATM-based narrowband telephony context. 5.5 Media Information Line for AAL1 and AAL5 sessions See Section 6.0 for the representation, in SDP, of the parameters in the media information line. The media information line for AAL1-based narrowband telephony sessions is structured as follows: m=audio AAL1/AVP ... The media information line for AAL5-based narrowband telephony sessions is similar, with the exception that the string "AAL5" replaces the string "AAL1". This is depicted below: m=audio AAL5/AVP ... In most AAL1 and AAL2 applications, the ordering of payload types implies a preference (preferred payload types before less favored ones). Note that it is not possible to make this line identical to the 'm' line in VoAAL2 due to basic differences between the two applications. The parameter can be in one of two basic formats: with explicit designation of subparameter types within the parameter, or with implicit inference of subparameter type from subparameter position in the parameter. With explicit designation of subparameter types, the parameter can be in one of the following formats: * VCCI- * -/VCCI- * BCG-/VCCI- * PORT-/VPI-/VCI- * BCG-/VPI-/VCI- * VPCI-/VCI- Rajesh Kumar, Mohamed Mostafa [Page 10] With implicit inference of subparameter type from subparameter position, the parameter can be in one of the following formats: * * -/ * / * / * // * // * / In the implicit case, the application context and/or the existence and positions of hyphens and slashes is used to differentiate between the various options. Within the SDP media information line, , , , and are decimal numbers (no prefix) or hexadecimal numbers (0x prefix). The and are identical to their definitions above for the connection information line with the difference that this address refers to the remote peer in the media information line. A "$" notation implies 'any'. A "$" can be used in lieu the entire parameter or some or all of its subparameters. The constant strings in the can be retained in the "$" wildcard or omitted consistent with the 'explicit' and 'implicit' formats described above. Note that a "$" can be used in lieu of the concatenation - in the following ways: * The entire concatenation, -, is replaced with a "$". * is replaced with a "$", but is not. There are contexts such as SVC-based applications where there is no need to communicate the parameter across the MGC - MG interface. In these contexts, it is sufficient to use a "$", "$/$" or "$/$/$" for the parameter in both directions of communication. When the network uses PVCs the VCCI values are pre-provisioned. If connections are established via SVCs or SPVCs, the VCCI is selected from the list of available VCCIs. The VCCI can be signaled end-to- end within the Generic Information Transport (GIT) as part of the ITU Recommendation Q.2931 Setup message per ITU Recommendation Q.2941.2. The VCCI glare avoidance scheme defined in [32] and [44] is not adequate for preventing glare when a pool of existing PVCs/SPVCs is dynamically assigned to calls. In this context, a mechanism for glare reduction such as assigning the nearest available values from different ends of the VCCI range is needed. Rajesh Kumar, Mohamed Mostafa [Page 11] The definition of guarantees uniqueness between a pair of ATM nodes. When the MGC communicates with an ATM MG, it can qualify the with the ATM address of the remote node. Network administrations have the option of provisioning the uniquely in a network, or in subnets of the network. In this case, the ATM address of the far end can be omitted. The parameter is used to identify the physical trunk port on a stand-alone gateway or on a multiplexer into which the gateway is plugged as a tributary module. It can be represented as a decimal or hex number of up to 32 digits, or an alphanumeric string of up to 32 characters. In general, to cover all cases, the can comprise of up to 32 digits or 34 alphanumeric characters. The additional two characters allow the inclusion of a "0x" prefix when hex numbers are represented alphanumerically. The and have their usual ATM connotation. In some applications, it is meaningful to use a VPCI, a sixteen bit field, in SDP descriptors. The VPCI is similar to the VPI, except for its width and the fact that it retains its value across VP crossconnects. Normally, the VPCI values are unique within the set of VPs controlled by an SVC/SPVC signaling channel. In some applications, it is meaningful to bundle a set of connections between a pair of ATM nodes into a bearer connection group. The subparameter is an eight bit field that allows the bundling of up to 255 connections. Although RTP encapsulation defined in rfc1889 is not used, the payload type variables are used exactly as defined in rfc1890. Hence, the protocols used for VoAAL1 and VoAAL5 are identified as AAL1/AVP and AAL5/AVP in the media information line. Following the text string "AAL1/AVP" or "AAL5/AVP", there is a list of payload types. The ordering of these payload types (preferred codecs before less favored ones) can indicate preference is some applications. These can be either statically assigned or dynamically mapped payload types. Encodings that are not statically mapped to payload types by IANA [31] are to be dynamically mapped at the time of connection establishment to payload types in the decimal range 96-127. The SDP 'atmmap' attribute (similar to 'rtpmap') is used for this purpose. The following are examples of the use of the media information line in the descriptions of AAL1 narrowband telephony sessions. Example 1: m=audio 27 AAL1/AVP 18 0 96 a=atmmap:96 G727-32 implies that the AAL1 VCCI=27 and that the supported encoding formats are G.729 (or G.729a), PCM Mu-law and 32 kbps G.727. Example 2: m=audio 3/4/50 AAL1/AVP 8 15 Rajesh Kumar, Mohamed Mostafa [Page 12] implies that the AAL1 virtual circuit used has VPI=4, VCI=50 and is on trunk port #3. Further, it implies that the encoding formats are G.711 A-law and G.728. Example 3: m=audio $ AAL1/AVP 8 15 implies that any AAL1 VCC may be used (subject to glare rules). Example 4: m=audio 2/6/$ AAL1/AVP 8 15 implies that any VCI on VPI= 6 of trunk port #2 may be used. In some applications, an "-" can be used in lieu of the . It is also legal to use an "-" instead of the string "AAL1/AVP". In this case, the coding scheme and the adaptation schemes are described elsewhere, or defaulted. Example 5: m=audio 234 - - a=aalType:AAL1 Example 6: m=audio 234 AAL1/AVP - Examples 5 and 6 both indicate an audio medium, a VCCI of 234, AAL1 adaptation and an unspecified codec. 5.6 Media Information Line for AAL2 sessions See Section 6.0 for the representation, in SDP, of the parameters in the media information line. The media information line for AAL2-based narrowband telephony sessions is structured as follows: m=audio ... ... ... In most applications, the ordering of profiles implies a preference (preferred profiles before less favored ones). If so, then there can be multiple instances of the same profile type in the same 'm' line. Note that it is not possible to make this line identical to the 'm' line in Voice-over-AAL1 due to basic differences between the two applications. The parameter can be in one of the following formats: Rajesh Kumar, Mohamed Mostafa [Page 13] * / * -// * /// * /// * // * / The parameter can be in one of two basic formats: with explicit designation of subparameter types within the parameter, or with implicit inference of subparameter type from subparameter position in the parameter. With explicit designation of subparameter types, the parameter can be in one of the following formats: * VCCI-/CID- * -/VCCI-/CID- * BCG-/VCCI-/CID- * PORT-/VPI-/VCI-/CID- * BCG-/VPI-/VCI-/CID- * VPCI-/VCI-/CID- With implicit inference of subparameter type from subparameter position, the parameter can be in one of the following formats: * / * -// * // * // * /// * /// * // In the implicit case, the application context and/or the existence and positions of hyphens and slashes is used to differentiate between the various options. Within the SDP media information line, , , , , and are decimal numbers (no prefix) or hexadecimal numbers (0x prefix). The and are identical to their definitions above for the connection information line with the difference that this address refers to the remote peer in the media information line. A "$" notation implies 'any'. A "$" can be used in lieu the entire parameter or some or all of its subparameters. The constant strings in the can be retained in the "$" wildcard or omitted consistent with the 'explicit' and 'implicit' formats described above. Note that a "$" can be used in lieu of the concatenation - in the following ways: * The entire concatenation, -, is replaced with a "$". * is replaced with a "$", but is not. Rajesh Kumar, Mohamed Mostafa [Page 14] There are contexts such as SVC-based applications where there is no need to communicate the parameter across the media gateway controller - media gateway interface. In these contexts, it is sufficient to use a "$", "$/$", "$/$/$" or "$/$/$/$" for the parameter. When the network uses PVCs the VCCI values are pre-provisioned. If connections are established via single-CID SVCs or S/PVCs, the VCCI is selected from the list of available VCCIs. The VCCI can be signaled end-to-end within the Generic Information Transport (GIT) as part of the ITU Recommendation Q.2931 Setup message per ITU Recommendation Q.2941.2. The VCCI glare avoidance scheme defined in [32] and [44] is not adequate for preventing glare when a pool of existing PVCs/SPVCs is dynamically assigned to calls. In this context, a mechanism for glare reduction such as assigning the nearest available values from different ends of the VCCI range is needed. The definition of guarantees uniqueness between a pair of ATM nodes. When the MGC communicates with an ATM MG, it can qualify the with the ATM address of the remote node. Network administrations have the option of provisioning the uniquely in a network, or in subnets of the network. In this case, the ATM address of the far end can be omitted. If no intermediate subcell switching or multiplexing is involved, identical CIDs within the same VCC are used at both MGs. If intermediate subcell switching or multiplexing is involved, then the CIDs can be different at the two MGs. However, at an MG and at the first-hop AAL2 switch it interfaces to, the same CIDs within the same VCC are used. Since calls can be initiated at either end, CIDs within the same VCC may be assigned at each end, giving rise to the possibility of glare. In this context, a mechanism for glare reduction such as assigning the nearest available values from different ends of the CID range is needed. The parameter is used to identify the physical trunk port on a stand-alone gateway or on a multiplexer into which the gateway is plugged as a tributary module. It can be represented as a decimal or hex number of up to 32 digits, or an alphanumeric string of up to 32 characters. If represented in hex format, the 32 digits do not include the "0x" prefix ("x" is not a digit, anyway). The and have their usual ATM connotation. In some applications, it is meaningful to use a VPCI, a sixteen bit field, in SDP descriptors. The VPCI is similar to the VPI, except for its width and the fact that it retains its value across VP crossconnects. Normally, the VPCI values are unique within the set of VPs controlled by an SVC/SPVC signaling channel. Rajesh Kumar, Mohamed Mostafa [Page 15] In some applications, it is meaningful to bundle a set of connections between a pair of ATM nodes into a bearer connection group. The subparameter is an eight bit field that allows the bundling of up to 255 connections. The parameter indicates the type of profile. It is expressed in the format AAL2/ where identifies the source of the definition of the profile. The can be assigned a string value indicating the source of the subsequent profile numbers until the next field. The following rules apply to the contents of the field: - = "ITU" indicates profiles defined by ITU. Examples: profiles defined in the I.366.2 specification [13]. - = "ATMF" indicates profiles defined by ATM forum. Examples: profiles defined in the AF-VTOA-0113 specification [44]. - = "custom" indicates profiles defined by an organization other than the ITU or ATMF. In multi-vendor networks where this value is used, care should be taken to preclude inconsistent definitions. - = An equipment vendor or service provider can use its registered, globally unique corporate name (e.g. Cisco, Telcordia etc.) as a string value of the . It is suggested that organizations maintain consistent definitions of the advertised AAL2 profiles that bear their corporate name. - The can be based on IEEE Standard 802-1990, Section 5.1, which defines the globally unique, IEEE-administered, three-octet OUIs used in MAC addresses and protocol identifiers. In this case, the field shall be assigned a string value of "IEEE:" concatenated with where is the hex representation of a three-octet field identical to the IEEE OUI. As a hex representation, it can be preceded by a 0x prefix, which can also be omitted. For example, "IEEE:00000C" refers to Cisco Systems, Inc. The parameter is expressed as a decimal number. The value of for profiles of the type AAL2/ITU or AAL2/ATMF are in range 1-255 in accordance with ITU-T I.366.2 Annex P [13] and AF-VTOA- 0113 [44]. For other types of profiles, a range of 1-255 should be adequate. For example, the media information line may look like: m=audio 123/5 AAL2/ITU 1 This media line indicates that the media contains audio. The VCCI for the AAL2 connection is decimal 123 and the CID is decimal 5. The AAL2 connection uses ITU profile 1 as defined in I.366.2 [13]. m=audio $ AAL2/ITU 8 AAL2/custom 100 AAL2/ITU 1 Rajesh Kumar, Mohamed Mostafa [Page 16] implies that any AAL2 VCC may be used (subject to glare rules). If this list is preferentially ordered, then AAL2/ITU 8 has the highest priority. In some applications, an "-" can be used in lieu of the and fields. This is possible when the coding scheme is described elsewhere e.g. when 'aal2_SSCS_3662' attribute indicates = "on" and any other competing options as "off", and the attribute indicates AAL2. An example of the use of the 'm' line in this case is: m=audio 123/5 - - a=aalType:AAL2 a=aal2_SSCS_3662:audio off off on off on off off off - - - Besides indicating an audio medium, a VCCI of 123 and a CID of 5, the 'm' line indicates an unspecified profile. 5.7 The Media Attribute Lines In an SDP line sequence, the media information line 'm' is followed by one or more media attribute or 'a' lines. Media attribute lines are per the format below: a=: or a= In general, media attribute lines are optional except when needed to qualify the media information line. This qualification is necessary when the "m" line for an AAL1 or AAL5 session specifies a payload type that needs to be dynamically mapped. The 'atmmap' media attribute line defined below is used for this purpose. In attribute lines, subparameters that are meant to be left unspecified are set to a "-". These are generally inapplicable or, if applicable, are known by other means such as provisioning. In some cases, a media attribute line with all parameters set to "-" carries no information and should be preferably omitted. In other cases, such as the 'lij' media attribute line, the very presence of the media attribute line conveys meaning. There are no restrictions placed by rfc2327 [1] regarding the order of 'a' lines with respect to other 'a' lines. However, these lines must not contradict each other or the other SDP lines. Inconsistencies are not to be ignored and should be flagged as errors. Repeated lines shall result in the later lines supplanting earlier ones. Applications will selectively use the optional media attribute lines listed below. This is meant to be an exhaustive list for describing the general attributes of ATM bearer networks. However, it is recognized that this list might have overlooked some attributes, which particular applications might need. If these are common enough for general interoperability between vendors (as opposed to innovation and proprietary differentiation by particular vendors), then these should be brought to the attention of the Rajesh Kumar, Mohamed Mostafa [Page 17] IETF MMUSIC working group for incorporation into future releases of this document. * The attributes defined in RFC2327 which allow indication of the direction in which a session is active. These are a=sendonly, a=recvonly, a=sendrecv, a=inactive. * The 'Ptime' attribute defined in RFC2327. It indicates the packet period. The 'ptime' media attribute line should not be used in AAL2 applications, since this information is included in the profiles listed in the 'm' line. This information can also be included in the 'vsel', 'dsel' and 'fsel' lines. If the 'ptime' line is included in AAL2 applications, then it can be ignored or flagged as an error. The latter is preferred for robustness and simplicity. The 'ptime' is not applicable in the AAL1 context, where is should be flagged as an error. In the AAL5 context, the 'Ptime' media attribute line, if used, should be consistent with the 'vsel', 'dsel' and 'fsel' lines, if any. Here, consistency means the ability to yield a non-empty intersection with one of these lines. * The 'atmmap' attribute. In the AAL1 and AAL5 contexts, this is used to dynamically map payload types into codec strings. * The 'eecid' attribute. This stands for 'end-to-end connection identifier'. It provides a means of correlating narrowband telephony connections with underlying ATM bearer connections. In the Q.BICC/ISUP+ context, the eecid is synonymous with the bnc-id (backbone network connection identifier). In the SDP session description, the more general term 'eecid' is used in order to provide a common SDP baseline for ATM telephony applications using Q.BICC/ISUP+ and SIP/SIP+. * The 'aalType' attribute. This is used to indicate the nature of the ATM adaptation layer (AAL). * The 'silenceSupp' attribute, used to indicate the use of of voice activity detection for silence suppression, and to optionally parameterize the silence suppression function. * The 'ecanf' and 'ecanb' attributes, used to indicate the use of of echo cancellation, and to parameterize the this function. * The 'gcf' and 'gcb' attributes, used to indicate the use of of gain control, and to parameterize the this function. * The 'profiledesc' attribute which can be used to describe AAL2 profiles. Although any AAL2 profile can be so described, this attribute is useful for describing, at connection establishment time, custom profiles that might not be known to the far end. This attribute applies in the AAL2 context only. * The 'vsel' attribute which indicates a prioritized list of 3-tuples for voice service. Each 3-tuple indicates a codec, an optional packet length and an optional packetization period. This complements the 'm' line information and should be consistent with it. * The 'dsel' attribute which indicates a prioritized list of 3-tuples for voiceband data service. Each 3-tuple indicates a codec, an optional packet length and an optional packetization period. This complements the 'm' line information and should be consistent with it. Rajesh Kumar, Mohamed Mostafa [Page 18] * The 'fsel' attribute which indicates a prioritized list of 3-tuples for facsimile service. Each 3-tuple indicates a codec, an optional packet length and an optional packetization period. This complements the 'm' line information and should be consistent with it. * The 'capability' attribute which indicates the ATM transfer capability (ITU nomenclature) synonymous with the ATM Service Category (ATMF nomenclature). * The 'qosclass' attribute which indicates the QoS class of the ATM bearer connection. * The 'bcob' attribute which indicates the broadband connection oriented bearer class. * The 'stc' attribute which indicates susceptibility to clipping. * The 'upcc' attribute which indicates susceptibility the user plane connection configuration. * The 'atmQOSfparms' and 'atmQOSbparms' attributes are used to describe certain key ATM QoS parameters in the forward and backward directions respectively. * The 'aal2QOSfparms' and 'aal2QOSbparms' attributes which are placeholders for AAL2-level impairments, yet to be defined. These attributes may be withdrawn if not needed. * The 'atmFtrfcDesc' and 'atmBtrfcDesc' attributes which are used to describe ATM traffic descriptor parameters in the forward and backward directions respectively. * The 'aal2FtrfcDesc' and 'aal2BtrfcDesc' attributes which are placeholders for AAL2-level traffic descriptors, yet to be defined. These attributes may be withdrawn if not needed. * The 'abrFparms' and 'abrBparms' attributes which are used to describe ABR-specific parameters in the forward and backward directions respectively. These parameters are per the UNI 4.0 signaling specification [5]. * The 'clkrec' attribute which indicates the clock recovery method for AAL1 unstructured data transfer (UDT). * The 'fec' attribute which indicates the use of forward error correction. * The 'prtfl' attribute which indicates indicate the fill level of partially filled cells. * The 'bearertype' attribute is used to indicate whether the underlying bearer is an ATM PVC/SPVC, an ATM SVC, or an AAL2 CID connection within an existing ATM PVC/SPVC. * When present, the 'structure' attribute is used to indicate the presence or absence of AAL1 structured data transfer (SDT), and the size of the SDT blocks. * When present, the 'sbc' media attribute line denotes the subchannel count in the case of n x 64 clear channel communication. * When present, the 'fcpssdusize' and 'bcpssdusize' attributes are used to indicate the maximum size of the CPCS SDU payload in the forward and backward directions. * When present, the 'aal2CPS' attribute is used to indicate that an AAL2 CPS sublayer as defined in ITU I.363.2 [13] is associated with VCC referred to in the 'm' line. Optionally, it can be used to indicate selected CPS options and parameter values for this VCC. Rajesh Kumar, Mohamed Mostafa [Page 19] * When present, the 'aal2_sscs_3661' attribute is used to indicate the presence of an AAL2 SSCS sublayer as defined in ITU I.366.1 [12]. Optionally, it can be used to indicate selected options and parameter values for this SSCS. * When present, the 'aal2_SSCS_3662' attribute is used to indicate the presence of an AAL2 SSCS sublayer as defined in ITU I.366.2. Optionally, it can be used to indicate selected options and parameter values for this SSCS. * When present, the 'aal2_sscs_3652' attribute is used to indicate the use, in conjunction with AAL2, of a service-specific coordination function, as defined in ITU I.365.2 [40], for Connection Oriented Network Service (SSCF-CONS). * When present, the 'aal2_sscs_3653' attribute is used to indicate the use, in conjunction with AAL2, of a service-specific coordination function, as defined in ITU I.365.3 [41], for Connection Oriented Transport Service (SSCF-COTS). * When present, the 'AAL5app' attribute is used to indicate the presence of an application that uses AAL5, and to point to the controlling standard for the application layer. * When present, the 'lij' attribute is used to indicate the presence of a connection that uses the Leaf-initiated-join capability described in UNI 4.0 [5], and to optionally describe parameters associated with this capability. * When present, the 'anycast' attribute line is used to indicate the applicability of the anycast function described in UNI 4.0 [5], and to optionally qualify it with certain parameters. * When present, the 'wtp' media attribute line is used to specify the circuit used to deliver a tapped stream. * The 'fmtp' attribute line defined in the SDP standard can be used to describe higher-layer parameters. These that pertain to layers higher than the ATM adaptation layer and that are not closely coupled with the ATM or ATM adaptation layers. Examples are the B-HLI and B-LLI IEs specified in ITU Q.2931 [15], and the user-to-user information element described in ITU Q.2957 [48]. * The 'chain' attribute line is used to chain consecutive SDP descriptions. 5.7.1 The 'atmmap' attribute The 'atmmap' attribute is defined on the basis of the 'rtpmap' attribute used in RFC2327. a=atmmap: The 'atmmap' attribute is used to dynamically map encoding names into payload types. This is necessary for those encoding names which have not been assigned a static payload type through IANA. Payload types and encoding techniques that have been registered with IANA for RTP are retained for narrowband telephony based on AAL1 or AAL5. Rajesh Kumar, Mohamed Mostafa [Page 20] The range of statically defined payload types is in the range 0-95. All static assignments of payload types to codecs are listed in [31]. The range of payload types defined dynamically via the 'atmmap' attribute is 96-127. The encoding names in Table 1 are case-insensitive. Table 1: Encoding Names and Payload Types |---------------------|--------------|---------------------------| | Encoding Technique | Encoding Name| Payload type | |---------------------|--------------|---------------------------| | PCM - Mu law | "PCMU" | 0 (Statically Mapped) | |---------------------|--------------|---------------------------| | 32 kbps ADPCM | "G726-32" | 2 (Statically Mapped) | |---------------------|--------------|---------------------------| |Dual rate 5.3/6.3kbps| "G723" | 4 (Statically Mapped) | |---------------------|--------------|---------------------------| | PCM- A law | "PCMA" | 8 (Statically Mapped) | |---------------------|--------------|---------------------------| | 7 KHz audio coding | "G722" | 9 (Statically Mapped) | | within 64 kbps | | | |---------------------|--------------|---------------------------| | LD-CELP | "G728" | 15 (Statically Mapped) | |---------------------|--------------|---------------------------| | CS-ACELP | "G729" | 18 (Statically Mapped) | |(normal/low-complexity) | | |---------------------|--------------|---------------------------| | Low-complexity | "X-G729a" | None, map dynamically | | CS-ACELP | | | |---------------------|--------------|---------------------------| |Normal | "X-G729b" | None, map dynamically | |CS-ACELP w/ ITU | | | |defined silence | | | |suppression | | | |---------------------|--------------|---------------------------| |Low-complexity | "X-G729ab" | None, map dynamically | |CS-ACELP w/ ITU | | | |defined silence | | | |suppression | | | |---------------------|--------------|---------------------------| | 16 kbps ADPCM | "X-G726-16" | None, map dynamically | |---------------------|--------------|---------------------------| | 24 kbps ADPCM | "X-G726-24" | None, map dynamically | |---------------------|--------------|---------------------------| | 40 kbps ADPCM | "X-G726-40" | None, map dynamically | |---------------------|--------------|---------------------------| | Dual rate 5.3/6.3 |"X-G7231-H" | None, map dynamically | | kbps - high rate | | | |---------------------|--------------|---------------------------| | Dual rate 5.3/6.3 |"X-G7231-L" | None, map dynamically | | kbps - low rate | | | |---------------------|--------------|---------------------------| | Dual rate 5.3/6.3 |"X-G7231a-H" | None, map dynamically | | kbps - high rate w/ | | | | ITU-defined silence | | | | suppression | | | |---------------------|--------------|---------------------------| Rajesh Kumar, Mohamed Mostafa [Page 21] ------------------------------------------------------------------ | Dual rate 5.3/6.3 |"X-G7231a-L" | None, map dynamically | | kbps - high rate w/ | | | | ITU-defined silence | | | | suppression | | | |---------------------|--------------|---------------------------| | 16 kbps EADPCM | "X-G727-16" | None, map dynamically | |---------------------|--------------|---------------------------| | 24 kbps EADPCM | "X-G727-24" | None, map dynamically | |---------------------|--------------|---------------------------| | 32 kbps EADPCM | "X-G727-32" | None, map dynamically | |---------------------|--------------|---------------------------| |n x 64 kbps Clear | "X-CCD" | None, map dynamically | |Channel without CAS | | | |per af-vtoa-78 [7] | | | |---------------------|--------------|---------------------------| |n x 64 kbps Clear | "X-CCD-CAS" | None, map dynamically | |Channel with CAS | | | |per af-vtoa-78 [7] | | | |---------------------|--------------|---------------------------| |GSM Full Rate | "GSM" | 3 (Statically Mapped) | |---------------------|--------------|---------------------------| |GSM Half Rate | "X-GSM-HR" | None, map dynamically | |---------------------|--------------|---------------------------| |GSM-Enhanced Full Rate "X-GSM-EFR" | None, map dynamically | |---------------------|--------------|---------------------------| |GSM-Enhanced Half Rate "X-GSM-EHR" | None, map dynamically | |---------------------|--------------|---------------------------| |Group 3 fax demod. "X-FXDMOD-3" | None, map dynamically | |---------------------|--------------|---------------------------| 5.7.2 The 'eecid' attribute The 'eecid' attribute is synonymous with the 4-byte'bnc-id' parameter used by T1SI, the ATM forum and the ITU (Q.1901) standardization effort. The term 'eecid' stands for 'end-to-end connection identifier', while 'bnc-id' stands for 'backbone network connection identifier'. The name "backbone" is slightly misleading since it refers to the entire ATM network including the ATM edge and ATM core networks. In Q.1901 terminology, an ATM "backbone" connects TDM or analog edges. Rajesh Kumar, Mohamed Mostafa [Page 22] While the term 'bnc-id' might be used in the bearer signaling plane and in an ISUP (Q.1901) call control plane, SDP session descriptors use the neutral term 'eecid'. This provides a common SDP baseline for applications that use ISUP and applications that use SIP/SIP+. In the forward SVC establishment model, the call-originating gateway initiates SVC establishment and transmits an eecid to the call- terminating gateway via SDP. In backward SVC establishment model, the call-originating gateway does not initiate SVC establishment. However, it transmits an eecid to the call-terminating gateway via SDP. The call-terminating gateway initiates SVC establishment. The value of the eecid attribute values needs to be unique within the gateway initiating the SVC set-up but not across multiple gateways. Hence, the SVC-initiating gateway has complete control over using and releasing values of this parameter. The eecid attribute is used to correlate, one-to-one, received SVC SETUP requests with service connection requests from the media gateway controller. In the forward call model, the call-terminating gateway uses the ATM address of the call-originating gateway in the 'c' line of the session description to qualify the eecid. This is because multiple call-originating gateways can sending identical eecids. Within an SDP session description, the eecid attribute is used as follows: a=eecid: where consists of up to 8 hex digits (equivalent to 4 octets). This SDP document does not specify how the eecid (synonymous with bnc-id) is to be communicated through bearer signaling (Q.931, UNI, PNNI, AINI, IISP, proprietary signaling equivalent, Q.2630.1). This is a task of these bearer signaling protocols. However, the following informative statements are made to convey a sense of the interoperability that is a goal of current standardization efforts: - ITU Q.2941.3 and the ATMF each recommend the use of the GIT IE for carrying the eecid (synonymous with bnc-id) in the set-up message of ATM signaling protocols (Q.2931, UNI 4.0, PNNI, AINI, IISP). The coding for carrying the eecid (bnc-id) in the GIT IE is defined in ITU Q.2941.3 and accepted by the ATM forum. - Another alternate method is to use the called party subaddress IE in the backward SVC call establishment model, and the calling party subaddress IE in the forward SVC call establishment model. This might be construed to be a protocol violation and is not the recommended means of carrying the eecid (bnc-id). The GIT IE is the preferred method of transporting the eecid (bnc-id) in ATM signaling messages. Rajesh Kumar, Mohamed Mostafa [Page 23] - The establish request (ERQ) message of the Q.2630.1 [37] signaling protocol can use the SUGR (Served User Generated Reference) IE to transport the eecid (bnc-id). In the backward path set-up model, the call-originating gateway can release and re-use an eecid when it receives Q.2931 set-up or Q.2630.1 establish request from the call-terminating end. In the forward path set-up model, the call-originating gateway can release and re-use an eecid when it receives a Q.2931 [15] connect or Q.2630.1 [37] establish confirm from the call-terminating end. This message need not carry the eecid. The Q.2931 call reference or the Q.2630.1 Destination Signaling Association Identifier (DSAID) points to the eecid. However, in both cases (backward and forward models), it is recommended that this eecid be retained until the connection terminates since it can serve as a handle for applications such as lawful wiretaps (CALEA). 5.7.3 The 'aalType' attribute When present, the 'aalType' attribute is used to indicate the ATM adaptation layer. If this information is redundant with the 'm' line, it can be omitted. The format of the 'aalType' media attribute line is as follows: a=aalType: Here, can take on the following string values: "AAL1", "AAL1_SDT", "AAL1_UDT", "AAL2", "AAL3/4", "AAL5" and "User defined AAL". Note that this document addresses AAL1, AAL2 and AAL5 only. Currently, there are no known narrowband telephony applications or standards that use AAL3/4. 5.7.4 The 'silenceSupp' attribute When present, the 'silenceSupp' attribute is used to indicate the use or non-use of silence suppression. The format of the 'silenceSupp' media attribute line is as follows: a=silenceSupp: If any of the parameters in the silenceSupp media attribute line is not specified, is inapplicable or is implied, then it is set to "-". The can take on values of "on" or "off". If it is "on", then silence suppression is enabled. The is a 16-bit field which can be represented in decimal or hex. Each increment (tick) of this timer represents a millisecond. The maximum value of this timer is between 1 and 3 minutes. This timer represents the time-lag before silence suppression kicks in. Even though this can, theoretically, be as low as 1 ms, most DSP algorithms take more than that to Rajesh Kumar, Mohamed Mostafa [Page 24] detect silence. Setting to a large value (say 1 minute> is equivalent to disabling silence suppression within a call. However, idle channel suppression between calls on the basis of silence suppression is still operative in non-switched, trunking applications if = "on" and is a large value. The specifies the preferred silence suppression method that is preferred or already selected. It can take on the string values of "standard" and "custom". If its value is "standard", then a standard method (e.g. ITU-defined) is preferred to custom methods if such a standard is defined. Otherwise, a custom method may be used. If is set to "custom", then a custom method, if available, is preferred to the standard method. The indicates whether SIDs (Silence Insertion Descriptors) are to be used, and whether they use fixed comfort noise or sampled background noise. It can take on the string values of "No SID", "Fixed Noise", "Sampled Noise". If the value of is "Fixed Noise", then provides its level. It can take on integer values in the range 0-127, as follows: value Meaning 0-29 Reserved 30 -30 dBm0 31 -31 dBm0 . . . . . . 77 -77 dBm0 78 -78 dBm0 79-126 reserved 127 Idle Code (no noise) A hex representation, preceded by a 0x prefix, of is allowed. 5.7.5 The 'ecanf' and 'ecanb' attributes When present, the 'ecanf' and 'ecanb' attributes are used to indicate the use or non-use of echo cancellation in the forward and backward directions respectively. See Section 2.3 for a definition of the terms 'forward' and 'backward'. The format of the 'ecanf' and 'ecanb' media attribute lines is as follows: a=ecanf: a=ecanb: If any of the parameters in the ecanf and ecanb media attribute lines is not specified, is inapplicable or is implied, then it is set to "-". Rajesh Kumar, Mohamed Mostafa [Page 25] If the 'ecanf' or 'ecanb' media attribute lines is not present, then means other than the SDP descriptor must be used to determine the applicability and nature of echo cancellation in that direction. Examples of such means are MIB provisioning, the local connection options structure in MGCP etc. The parameter can take on values of "on" or "off". If it is "on", then echo cancellation is enabled. If it is "off", then echo cancellation is disabled. The parameter can take on the string values "G165" and "G168" respectively. When SDP is used with some media gateway control protocols such as MGCP and Megaco [26], there exist means outside SDP descriptions to specify the echo cancellation properties of a connection. Nevertheless, this media attribute line is included for completeness. As a result, the SDP can be used for describing echo cancellation in applications where alternate means for this are unavailable. 5.7.6 The 'gcf' and 'gcb' attributes When present, the 'gcf' and 'gcb' attributes are used to indicate the use or non-use of gain control in the forward and backward directions respectively. See Section 2.3 for a definition of the terms 'forward' and 'backward'. The format of the 'gcf' and 'gcb' media attribute lines is as follows: a=gcf: a=gcb: If any of the parameters in the gcf and gcb media attribute lines is not specified, is inapplicable or is implied, then it is set to "-". If the 'gcf' or 'gcb' media attribute line is not present, then means other than the SDP descriptor must be used to determine the applicability and nature of gain control in that direction. Examples of such means are MIB provisioning, the local connection options structure in MGCP etc. The parameter can take on values of "on" or "off". If it is "on", then gain control is enabled. If it is "off", then gain control is disabled. The parameter is represented as the decimal or hex equivalent of a 16-bit binary field. A value of 0xFFFF implies automatic gain control. Otherwise, this number indicates the number of decibels of inserted loss. The upper bound, 65,535 dB (0xFFFE) of inserted loss, is an absurdly large number and is a carryover from Megaco [26]. In practical applications, the inserted loss is much lower. Rajesh Kumar, Mohamed Mostafa [Page 26] When SDP is used with some media gateway control protocols such as MGCP and Megaco [26], there exist means outside SDP descriptions to specify the gain control properties of a connection. Nevertheless, this media attribute line is included for completeness. As a result, the SDP can be used for describing gain control in applications where alternate means for this are unavailable. 5.7.7 The 'profiledesc' attribute There is one 'profiledesc' media attribute line for each AAL2 profile that is intended to be described. The 'profiledesc' media attribute line is structured as follows: a=profiledesc: ... Here, and are identical to their definition, above, for the 'm' line. The profile elements (rows in the profile tables of ITU I.366.2 or AF-VTOA-0113) are represented as four-tuples following the parameter in the 'profiledesc' media attribute line. If a member of one of these four-tuples is not specified or is implied, then it is set to "-". The parameter is represented by D1-D2, where D1 and D2 are decimal integers in the range 0 through 15. The parameter can take one of the values in column 2 of Table 1. Additionally, it can take on the following descriptor strings: "PCMG", "SIDG" and "SID729". These stand for generic PCM, generic SID and G.729 SID respectively. The is a decimal integer representation of the AAL2 packet length in octets. The is a decimal integer representation of the AAL2 packetization interval in ms. For instance, the 'profiledesc' media attribute line below defines the AAL2/custom 100 profile. This profile is reproduced in the table below. For a description of the parameters in this profile such as M and the sequence number interval, see ITU I.366.2. a=profiledesc:AAL2/custom 100 0-7 PCMG 40 5 0-7 SIDG 1 5 8-15 G726-32 40 10 8-15 SIDG 1 5 If the parameter is to be omitted or implied, then the same profile can be represented as follows: a=profiledesc:AAL2/custom 100 0-7 PCMG 40 - 0-7 SIDG 1 - 8-15 G726-32 40 - 8-15 SIDG 1 - Rajesh Kumar, Mohamed Mostafa [Page 27] If a gateway has a provisioned or hard coded definition of a profile, then any definition provided via the 'profiledesc' line overrides it. The exception to this rule is with regard to standard profiles such as ITU-defined profiles and ATMF-defined profiles. In general, these should not be defined via a 'profiledesc' media attribute line. If they are, then the definition needs to be consistent with the standard definition else the SDP session descriptor should be rejected with an appropriate error code. |---------------------------------------------------------------| | UUI | Packet |Encoding | | |Packet|Seq.No. | | Code | Length |per ITU |Description of | M |Time |Interval| |point |(octets)|I.366.2 | Algorithm | |(ms) |(ms) | |Range | | 2/99 | | | | | | | | version | | | | | |---------------------------------------------------------------| | 0-7 | 40 | Figure | PCM, G.711-64,| 1 | 5 | 5 | | | | B-1 | generic | | | | |------|--------|---------|---------------|-----|------|--------| | 0-7 | 1 | Figure | Generic SID | 1 | 5 | 5 | | | | I-1 | | | | | |------|--------|---------|---------------|-----|------|--------| | 8-15 | 40 | Figure | ADPCM, | 2 | 10 | 5 | | | | E-2 | G.726-32 | | | | |------|--------|---------|---------------|-----|------|--------| | 8-15 | 1 | Figure | Generic SID | 1 | 5 | 5 | | | | I-1 | | | | | |------|--------|---------|---------------|-----|------|--------| 5.7.8 The 'vsel' attribute The 'vsel' attribute which indicates a prioritized list of one or more 3-tuples for voice service. Each 3-tuple indicates a codec, an optional packet length and an optional packetization period. This complements the 'm' line information and should be consistent with it. The 'vsel' line is structured as follows: a=vsel: ... where the parameter can take one of the values in column 2 of Table 1. The is a decimal integer representation of the packet length in octets. The is a decimal integer representation of the packetization interval in ms. The parameters and can be set to "-" when not needed. Also, the entire 'vsel' media attribute line can be omitted when not needed. Rajesh Kumar, Mohamed Mostafa [Page 28] For example, a=vsel:G729 10 10 G726-32 40 10 indicates first preference of G.729 or G.729a (both are interoperable) as the voice encoding scheme. A packet length of 10 octets and a packetization interval of 10 ms are associated with this codec. G726-32 is the second preference stated in this line, with an associated packet length of 40 octets and a packetization interval of 10 ms. If the packet length and packetization interval are intended to be omitted, then this media attribute line becomes a=vsel:G729 - - G726-32 - - The media attribute line a=vsel:G726-32 40 10 indicates preference for or selection of 32 kbps ADPCM with a packet length of 40 octets and a packetization interval of 10 ms. This media attribute line can be used in the AAL1, AAL2 and AAL5 contexts. In the AAL1 context, it has the very limited utility of indicating whether the codec type is PCMU or PCMA. The and are not meaningful in this case, and should be set to "-". Its greatest utility in AAL2, where it determines the use of some or all of the rows in a given profile table. If multiple 3-tuples are present, they can indicate a hierarchical assignment of some rows in that profile to voice service e.g. row A preferred to row B etc. If multiple profiles are present on the 'm' line, the profile qualified by this attribute is the first (i.e. highest priority) profile. 5.7.9 The 'dsel' attribute The 'dsel' attribute which indicates a prioritized list of one or more 3-tuples for voiceband data service. The flag indicates whether this definition of voiceband data includes fax ("on" value) or not ("off" value). If is "on", then the 'dsel' line must be consistent with any 'fsel' line in the session description. In this case, an error event is generated in the case of inconsistency. Each 3-tuple indicates a codec, an optional packet length and an optional packetization period. This complements the 'm' line information and should be consistent with it. The 'dsel' line is structured as follows: a=dsel: ... where the parameter can take one of the values in column 2 of Table 1. The and parameters are per their definition, above, for the 'vsel' Rajesh Kumar, Mohamed Mostafa [Page 29] media attribute line. The parameters and ) can be set to "-" when not needed. The flag is presumed to be "off" if it is set to "-". Also, the entire 'dsel' media attribute line can be omitted when not needed. For example, a=dsel:- G726-32 20 5 PCMU 40 5 indicates that this line does not address facsimile, and that the first preference for the voiceband data codes is 32 kbps ADPCM, while the second preference is PCMU. The packet length and the packetization interval associated with G726-32 are 20 octets and 5 ms respectively. For PCMU, they are 40 octets and 5 ms respectively. This media attribute line can be used in the AAL1, AAL2 and AAL5 contexts. In the AAL1 context, it has the very limited utility of indicating whether the codec type is PCMU or PCMA. The and are not meaningful in this case, and should be set to "-". Its greatest utility in AAL2, where it determines the use of some or all of the rows in a given profile table. If multiple 3-tuples are present, they can indicate a hierarchical assignment of some rows in that profile to voiceband data service e.g. row A preferred to row B etc. If multiple profiles are present on the 'm' line, the profile qualified by this attribute is the first (i.e. highest priority) profile. 5.7.10 The 'fsel' attribute The 'fsel' attribute which indicates a prioritized list of one or more 3-tuples for facsimile service. If an 'fsel' line is present, any 'dsel' line with set to "on" in the session description must be checked for consistency with it. In this case, an error event is generated in the case of inconsistency. Each 3-tuple indicates a codec, an optional packet length and an optional packetization period. This complements the 'm' line information and should be consistent with it. The 'fsel' line is structured as follows: a=dsel: ... where the parameter can take one of the values in column 2 of Table 1. The and parameters are per their definition, above, for the 'vsel' media attribute line. The parameters and can be set to "-" when not needed. Also, the entire 'fsel' media attribute line can be omitted when not needed. For example, Rajesh Kumar, Mohamed Mostafa [Page 30] a=fsel:FXDMOD-3 - - indicates demodulation and remodulation of ITU-T group 3 fax at the gateway. a=fsel:PCMU 40 5 G726-32 20 5 indicates a first and second preference of Mu-law PCM and 32 kbps ADPCM as the facsimile encoding scheme. The packet length and the packetization interval associated with G726-32 are 20 octets and 5 ms respectively. For PCMU, they are 40 octets and 5 ms respectively. This media attribute line can be used in the AAL1, AAL2 and AAL5 contexts. In the AAL1 context, it has the very limited utility of indicating whether the codec type is PCMU or PCMA. The and are not meaningful in this case, and should be set to "-". Its greatest utility in AAL2, where it determines the use of some or all of the rows in a given profile table. If multiple 3-tuples are present, they can indicate a hierarchical assignment of some rows in that profile to facsimile service e.g. row A preferred to row B etc. If multiple profiles are present on the 'm' line, the profile qualified by this attribute is the first (i.e. highest priority) profile. 5.7.11 The 'capability' attribute When present, the 'capability' attribute indicates the ATM Transfer Capability described in ITU I.371 [28], equivalent to the ATM Service Category described in the UNI 4.1 Traffic Management specification [6]. The 'capability' media attribute line is structured in one of the following ways: a=capability: a=capability: Possible values of the are enumerated below: "CBR", "nrt-VBR", "rt-VBR", "UBR", "ABR", "GFR" Possible values of the are enumerated below: "DBR","SBR","ABT/IT","ABT/DT","ABR" Some applications might use non-standard and values not listed above. Equipment designers will need to agree on the meaning and implications of non-standard transfer capabilities / service capabilities. An example of a a non-standard value is "UBR+", which is UBR with minimum cell rate (MCR). Rajesh Kumar, Mohamed Mostafa [Page 31] The field essentially serves as a subscript to the and fields. In general, it can take on any integer value, or the "-" value indicating that it does not apply or that the underlying data is to be known by other means, such as provisioning. The following combinations are recognized in the ATMF and ITU specifications: Meaning nrt-VBR 1 nrt-VBR.1 nrt-VBR 2 nrt-VBR.2 nrt-VBR 3 nrt-VBR.3 rt-VBR 1 rt-VBR.1 rt-VBR 2 rt-VBR.2 rt-VBR 3 rt-VBR.3 UBR 1 UBR.1 UBR 2 UBR.2 GFR 1 GFR.1 GFR 2 GRR.2 Meaning SBR 1 SBR1 SBR 2 SBR2 SBR 3 SBR3 It is beyond the scope of this specification to examine the equivalence of some of the ATMF and ITU definitions. These need to be recognized from the ATMF and ITU source specifications and exploited, as much as possible, to simplify ATM node design. These string values in the 'capability' attribute are case- insensitive. When the bearer connection is a single AAL2 CID connection within a multiplexed AAL2 VC, the 'capability' attribute does not apply. 5.7.12 The 'qosclass' attribute When present, the 'qosclass' attribute indicates the QoS class specified in ITU I.2965.1 [34]. The 'qosclass' media attribute line is structured as follows: a=qosclass: Here, is an integer in the range 0 - 5. Meaning 0 Default QoS 1 Stringent 2 Tolerant 3 Bi-level 4 Unbounded 5 Stringent bi-level Rajesh Kumar, Mohamed Mostafa [Page 32] 5.7.13 The 'bcob' attribute When present, the 'bcob' attribute represents the broadband connection oriented bearer class defined in ITU Q.2961.2 [33]. The 'bcob' media attribute line is structured as follows: a=bcob: Here, is the decimal or hex representation of a 5-bit field. Currently, all values are unused and reserved with the following exceptions: Meaning 1 BCOB-A 3 BCOB-C 16 BCOB-X 24 BCOB-VP (transparent VP service) 5.7.14 The 'stc' attribute When present, the 'stc' attribute represents susceptibility to clipping. The 'stc' media attribute line is structured as follows: a=stc: Here, is the decimal equivalent of a 2-bit field. Currently, all values are unused and reserved with the following exceptions: value Binary Equivalent Meaning 0 00 Not susceptible to clipping 1 01 Susceptible to clipping 5.7.15 The 'upcc' attribute When present, the 'upcc' attribute represents the user plane connection configuration. The 'upcc' media attribute line is structured as follows: a=upcc: Here, is the decimal equivalent of a 2-bit field. Currently, all values are unused and reserved with the following exceptions: value Binary Equivalent Meaning 0 00 Point to point 1 01 Point to multipoint 5.7.16 The 'atmQOSfparms' and 'atmQOSbparms' attributes When present, the 'atmQOSfparms' and 'atmQOSbparms' attributes are used to describe certain key ATM QoS parameters in the forward and backward directions respectively. See Section Rajesh Kumar, Mohamed Mostafa [Page 33] 2.3 for a definition of the terms 'forward' and 'backward'. The 'atmQOSfparms' and 'atmQOSbparms' media attribute lines are structured as follows: a=atmQOSfparms: a=atmQOSbparms: The 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, and , refer to the acceptable and cumulative CDVs respectively. These are expressed in units of microseconds and represented as the decimal or hex equivalent of 24-bit fields. These use the cell loss ratio, , as the "alpha" quantiles defined in the ATMF TM 4.1 specification [6] and in ITU I.356 [47]. The CTD parameters, and , refer to the acceptable and cumulative CTDs respectively in milliseconds. These are represented as the decimal or hex equivalent of 16-bit fields. These parameters are equivalent to the maximum end-to-end transit delay defined in ATMF TM 4.1 specification [6] and Q.2965.2 [35]. The parameter refers to forward and backward acceptable cell loss ratios. This is the ratio between the number of cells lost and the number of cells transmitted. It is expressed as the decimal or hex equivalent of an 8-bit field. This field expresses an order of magnitude n, where n is an integer in the range 1-15. The Cell Loss Ratio takes on the value 10 raised to the power of minus n. If any of these parameters is not specified, is inapplicable or is implied, then it is set to "-". An example use of these attributes for an rt-VBR, single-CID AAL2 voice VC is: a=atmQOSfparms:pp 8125 3455 32000 - 11 a=atmQOSbparms:pp 4675 2155 18000 - 12 This implies a forward acceptable peak-to-peak CDV of 8.125 ms, a backward acceptable peak-to-peak CDV of 4.675 ms, forward cumulative peak-to-peak CDV of 3.455 ms, a backward cumulative peak-to-peak CDV of 2.155 ms, a forward acceptable maximum cell transfer delay of 32 ms, a backward acceptable maximum cell transfer delay of 18 ms, an unspecified forward cumulative cell transfer delay, an unspecified backward cumulative cell transfer delay, a forward cell loss ratio of 10 raised to minus 11 and a backward cell loss ratio of 10 to the minus 12. In certain applications (such as SIP-based applications), an SDP descriptor might have both the atmQOSfparms and atmQOSbparms attributes. In other applications (such as Megaco-based applications), the remote descriptor can have the atmQOSfparms attribute Rajesh Kumar, Mohamed Mostafa [Page 34] while the local descriptor can have the atmQOSbparms attribute. 5.7.17 The 'aal2QOSfparms' and 'aal2QOSbparms' attributes It is recognized that means of characterizing impairments in AAL2 packet streams are not clearly defined at this time. These AAL2 media attributes will constructed along the line of the 'atmQOSfparms' and 'atmQOSbparms' attributes. 5.7.18 The 'atmFtrfcDesc' and 'atmBtrfcDesc' attributes When present, the 'atmFtrfcDesc' and 'atmBtrfcDesc' attributes are used to indicate ATM traffic descriptor parameters in the forward and backward directions respectively. See Section 2.3 for a definition of the terms 'forward' and 'backward'. The 'atmFtrfcDesc' and 'atmBtrfcDesc' media attribute lines are structured as follows: a=atmFtrfcDesc: a=atmBtrfcDesc: If any of these parameters in these media attribute lines is not specified, is inapplicable or is implied, then it is set to "-". The (CLP level) parameter indicates whether the rates and bursts described in these media attribute lines apply to CLP values of 0, (0+1). It can take on the following string values: "0", "0+1" and "-". If rates and bursts for both values are to be described, then it is necessary to use two separate media attribute lines for each direction in the same session descriptor. If the parameter is set to "-", then it implies that the CLP parameter is not applicable. This is true when the 'atmFtrfcDesc' or 'atmBtrfcDesc' attribute is used to describe an AAL2 CID rather than an ATM VC connection. The meaning, units and applicability of the remaining parameters are per the ATMF TM 4.1 specification [6] and are reiterated below: PARAMETER MEANING UNITS APPLICABILITY PCR Cells/ CBR, rt-VBR, nrt-VBR, second ABR, UBR, GFR; CLP=0,0+1 SCR Cells/ rt-VBR, nrt-VBR; second CLP=0,0+1 MBS Cells rt-VBR, nrt-VBR, GFR; CLP=0,0+1 Rajesh Kumar, Mohamed Mostafa [Page 35] CDVT Microsec. CBR, rt-VBR, nrt-VBR, ABR, UBR, GFR; CLP=0,0+1 MCR Cells/ ABR,GFR; second CLP=0+1 MFS Cells GFR; CLP=0,0+1 Frame "on"/"off" CBR, rt-VBR, nrt-VBR, Discard ABR, UBR, GFR; Allowed CLP=0+1 CLP "on"/"off" CBR, rt-VBR, nrt-VBR, tagging ABR, UBR, GFR; Enabled CLP=0 indicates that frame discard is permitted. It can take on the string values of "on" or "off". Note that, in the GFR case, frame discard is always enabled. Hence, this subparameter can be set to "-" in the case of GFR. Since the parameter is independent of CLP, it is meaningful in the case when = "0+1". It should be set to "-" for the case when = "0". (tag enable) indicates that CLP tagging is allowed. These can take on the string values of "on" or "off". Since the parameter applies only to cells with a CLP of 0, it is meaningful in the case when = "0". It should be set to "-" for the case when = "0+1". An example use of these media attribute lines for an rt-VBR, single-CID AAL2 voice VC is: a=atmFtrfcDesc:0+1 200 100 20 - - - on - a=atmFtrfcDesc:0 200 80 15 - - - - off a=atmBtrfcDesc:0+1 200 100 20 - - - on - a=atmBtrfcDesc:0 200 80 15 - - - - off This implies a forward and backward PCR of 200 cells per second all cells regardless of CLP, forward and backward PCR of 200 cells per second for cells with CLP=0, a forward and backward SCR of 100 cells per second for all cells regardless of CLP, a forward and backward SCR of 80 cells per second for cells with CLP=0, a forward and backward MBS of 20 cells for all cells regardless of CLP, a forward and backward MBS of 15 cells for cells with CLP=0, an unspecified CDVT which can be known by other means, and an MCR and MFS which are unspecified because they are inapplicable. Frame discard is enabled in both the forward and backward directions. Tagging is not enabled in either direction. In certain applications (such as SIP-based applications), an SDP descriptor might have both the atmFtrfcDesc and atmBtrfcDesc attributes. In other applications (such as Megaco-based applications), the remote descriptor can have the atmFtrfcDesc attribute Rajesh Kumar, Mohamed Mostafa [Page 36] while the local descriptor can have the atmBtrfcDesc attribute. 5.7.19 The 'aal2FtrfcDesc' and 'aal2BtrfcDesc' attributes It might be meaningful to construct descriptors for traffic at the AAL2 packet (subcell) level. These can tentatively be named the 'aal2FtrfcDesc' and 'aal2BtrfcDesc' attributes When constructed, these can be similar in some aspects to the 'aal2FtrfcDesc' and 'aal2BtrfcDesc' attributes. 5.7.20 The 'abrFparms' and 'abrBparms' attributes When present, the 'abrFparms' and 'abrBparms' attributes are used to indicate the 'additional' ABR parameters specified in the UNI 4.0 signaling specification [5]. These refer to the forward and backward directions respectively. See Section 2.3 for a definition of the terms 'forward' and 'backward'. The 'abrFparms' and 'abrBparms' media attribute lines are structured as follows: a=abrFparms: a=abrBparms: These parameters are mapped into the ABR service parameters in [6] in the manner described below. These parameters can be represented in SDP as decimal integers, with fractions permitted for some. Details of the meaning, units and applicability of these parameters are in [5] and [6]. If any of these parameters in the 'abrFparms' or 'abrBparms' media attribute lines is not specified, is inapplicable or is implied, then it is set to "-". SDP ATMF SDP REPRESENTATION PARAMETER EQUIVALENT NRM Decimal/hex equivalent of 3 bit field TRM -ditto- CDF -ditto- ADTF Decimal/Hex equivalent of 10 bit field In certain applications (such as SIP-based applications), an SDP descriptor might have both the abrFparms and abrBparms attributes. In other applications (such as Megaco-based applications), the remote descriptor can have the abrFparms attribute while the local descriptor can have the abrBparms attribute. 5.7.21 The 'clkrec' attribute When present, the 'clkrec' attribute is used to indicate the clock recovery method. This attribute is meaningful in the case of AAL1 unstructured data transfer (UDT). The format of the 'clkrec' media attribute line is as follows: a=clcrec: Rajesh Kumar, Mohamed Mostafa [Page 37] The field can take on the following string values: "NULL", "SRTS" or "adaptive". These are defined in ITU I.363.1 [10]. "NULL" indicates that the stream (e.g. T1/E1) encapsulated in ATM is synchronous to the ATM network or is retimed using slip buffers. 5.7.22 The 'fec' attribute When present, the 'fec' attribute is used to indicate the use of forward error correction. Currently, there exists a forward error correction method defined for AAL1 in ITU I.363.1 [10]. The format of the 'fec' media attribute line is as follows: a=fec: The flag indicates the presence of absence of Forward Error Correction. It can take on the string values of "NULL", "loss sensitive" and "delay sensitive". An "NULL" value implies disabling this capability. FEC can be enabled differently for delay-sensitive and loss-sensitive connections. 5.7.23 The 'prtfl' attribute When present, the 'prtfl' attribute is used to indicate the fill level of partially filled cells. This is the number of non-pad payload octets, not including any AAL SAR or convergence sublayer octets. For example, in some AAL1 applications that use partially filled cells with padding at the end, this attribute indicates the number of leading payload octets not including any AAL overhead. The format of the 'prtfl' media attribute line is as follows: a=prtfl: Here, can be expressed as a decimal (no prefix) or hex (0x prefix) integer. In general, permitted values are integers in the range 1 - 46 inclusive. However, this upper bound is different for different adaptations since the AAL overhead is different. In the case of AAL1 SDT used for n x 64 (n>=2) clear channel transmission, this media attribute line applies to both P and non-P cells. A value of 46 indicates no padding in P-cells and a padding of one in non-P cells. If partial fill is enabled, structures shall not be split across cell boundaries and shall fit in any cell. Hence, their size shall be less than or equal to the partial fill size (maximum of 46). Further, the partial fill size is preferably an integer multiple of the structure size. If not, then the partial fill size stated in the SDP description shall be truncated to an integer multiple (e.g. a partial fill size of 40 is truncated to 36 to support six 6 x 64 channels). 5.7.24 The 'bearertype' attribute When present, the 'bearertype' attribute is used to indicate Rajesh Kumar, Mohamed Mostafa [Page 38] whether the underlying bearer is an ATM PVC/SPVC, an ATM SVC, or an AAL2 CID connection within an existing ATM PVC/SPVC. Additionally, for ATM SVCs and AAL2 CID connections, the 'bearertype' attribute can be used to indicate whether the media gateway initiates connection set-up via bearer signaling (Q.2931-based or Q.2630.1 based. The format of the 'bearertype' media attribute line is as follows: a=bearertype: The field can take on the following string values: "PVC", "SVC", "CID", with semantics as defined above. In the case when the underlying bearer is a PVC/SPVC, or a CID assigned by the MGC rather than through bearer signaling, the flag can be omitted or set to "-". In the case when bearer signaling is used, this flag can be omitted when it is known by default or by other means whether the media gateway initiates the connection set-up via bearer signaling. Only when this is to be indicated explicitly that the flag takes on the values of "on" or "off". An "on" value indicates that the media gateway is responsible for initiating connection set-up via bearer signaling (SVC signaling or Q.2630.1 signaling), an "off" value indicates otherwise. 5.7.25 The 'structure' attribute This attribute applies to AAL1 connections only. When present, the 'structure' attribute is used to indicate the presence or absence of structured data transfer (SDT), and the size in octets of the SDT blocks. The format of the 'structure' media attribute line is as follows: a=structure: where the flag indicates the presence of absence of SDT. It can take on the values of "on" or "off". An "on" value implies AAL1 structured data transfer (SDT), while an "off" value implies AAL1 unstructured data transfer (UDT). The block size field, , is an optional 16-bit field (Q.2931) that can be represented in decimal (no prefix) or in hex (0x prefix). It can be omitted or set to a "-" when not applicable, as in the case of unstructured data transfer (UDT). For SDT, it can be omitted or set to a "-" when is known by other means. For instance, af-vtoa-78 [7] fixes the structure size for n x 64 service, with or without CAS. The theoretical maximum value of is 65,535, although most services use much less. 5.7.26 The 'sbc' attribute The 'sbc' media attribute line denotes the subchannel count and is meaningful only in the case of n x 64 clear channel communication. A clear n x 64 channel can use AAL1 (ATM forum af-vtoa-78) or AAL2 adaptation (ITU I.366.2). Although no such standard definition exists, it is also possible to use AAL5 for this purpose. An n x 64 clear channel is represented Rajesh Kumar, Mohamed Mostafa [Page 39] by the encoding names of "X-CCD" and "X-CCD-CAS" in Table 1. The format of the 'sbc' media attribute line is as follows: a=sbc: Here, can be expressed as a decimal (no prefix) or hex (0x prefix) integer. This attribute indicates the number of DS0s in a T1 or E1 frame that are aggregated for transmitting clear channel data. For T1-based applications, it can take on integral values in the inclusive range [1...24]. For E1-based applications, it can take on integral values in the inclusive range [1...31]. When omitted, other means are to be used to determine the subchannel count. 5.7.27 The 'fcpssdusize' and 'bcpssdusize' attributes When present, the 'fcpssdusize' and 'bcpssdusize' attributes are used to indicate the maximum size of the CPCS SDU payload in the forward and backward directions respectively. See section 2.3 for a definition of the terms 'forward' and 'backward'. The format of these media attribute line is as follows: a=fcpssdusize: a=bcpssdusize: The fields is a 16-bit integer that can be represented in decimal (no prefix)or in hex (0x prefix). The meaning and values of these fields are as follows: Application Field Meaning Values AAL5 Maximum CPCS-SDU size 1- 65,535 AAL2 Maximum CPCS-SDU size 45 or 64 In certain applications (such as SIP-based applications), an SDP descriptor might have both the fcpssdusize and bcpssdusize attributes. In other applications (such as Megaco-based applications), the remote descriptor can have the fcpssdusize attribute while the local descriptor can have the bcpssdusize attribute. 5.7.28 The 'aal2CPS' attribute When present, the 'aal2CPS' attribute is used to indicate describe parameters associated with the AAL2 CPS layer. The format of the 'aal2CPS' media attribute line is as follows: a=aal2CPS: Each of these fields can be set to a "-" when the intention is to not specify them in an SDP descriptor. Rajesh Kumar, Mohamed Mostafa [Page 40] The integer can take on values between 1 and 255. It represents the number of channels (CIDs) multiplexed into the AAL2 VCC. It can be represented in decimal (no prefix) or in hex (0x prefix). The integer represents the "combined use" timerCU defined in ITU I.363.2. This timer is represented as an integer number of microseconds. 5.7.29 The 'aal2_sscs_3661' attribute When present, the 'aal2_sscs_3661' attribute is used to indicate the presence of an AAL2 SSCS sublayer as defined in ITU I.366.1 [12]. Optionally, it can be used to indicate selected options and parameter values for this SSCS. The format of the 'aal2_sscs_3661' media attribute line is as follows: a=aal2_sscs_3661: Each of these fields can be set to a "-" when the intention is to not specify them in an SDP descriptor. The flag indicates the presence of absence of assured data transfer as defined in I.366.1. The flag indicates the presence of absence of transmission error detection as defined in I.366.1. Each of these flags can take on the values of "on" or "off". An "on" value indicates presence of the capability. The and fields are 16-bit integers that can be represented in decimal (no prefix)or in hex (0x prefix). The meaning and values of the and fields are as follows: Field Meaning Values Maximum SSSAR-SDU size 1- 65,535 forward direction Maximum SSSAR-SDU size 1- 65,535 backward direction In certain applications (such as SIP-based applications), an SDP descriptor might have an 'aal2_sscs_3661' media attribute line with the and subparameters. In applications (such as Megaco-based applications), the remote descriptor can have the subparameter while the local descriptor can have the subparameter. 5.7.30 The 'aal2_SSCS_3662' attribute When present, the 'aal2_SSCS_3662' attribute is used to indicate the presence of an AAL2 SSCS sublayer as defined in ITU I.366.2 [13]. Optionally, it can be used to indicate selected options and parameter values for this SSCS. Rajesh Kumar, Mohamed Mostafa [Page 41] The format of the 'aal2_SSCS_3662' media attribute line is as follows: a=aal2_SSCS_3662: Each of these fields can be set to a "-" when the intention is to not specify them in an SDP descriptor. The field can take on the following string values: "audio" and "multirate". These correspond to the audio and multirate Service Access Points (SAPs) defined in ITU I.366.2. The flag indicates whether the transport of circuit mode data is enabled or disabled, corresponding to the string values of "on" and "off" respectively. The flag indicates whether the transport of frame mode data is enabled or disabled, corresponding to the string values of "on" and "off" respectively. The flag indicates whether facsimile demodulation and remodulation are enabled or disabled, corresponding to the string values of "on" and "off" respectively. The flag indicates whether the transport of Channel Associated Signaling (CAS) bits in AAL2 type 3 packets is enabled or disabled, corresponding to the string values of "on" and "off" respectively. The flag indicates whether the transport of DTMF dialled digits in AAL2 type 3 packets is enabled or disabled, corresponding to the string values of "on" and "off" respectively. The flag indicates whether the transport of MF dialled digits in AAL2 type 3 packets is enabled or disabled, corresponding to the string values of "on" and "off" respectively. This flag enables MF dialled digits in a generic manner, without specifying type (e.g. R1, R2 etc.). The flag indicates whether the transport, in AAL2 type 3 packets, of MF dialled digits for signaling system R1 is enabled or disabled, corresponding to the string values of "on" and "off" respectively. The flag indicates whether the transport, in AAL2 type 3 packets, of MF dialled digits for signaling system R2 is enabled or disabled, corresponding to the string values of "on" and "off" respectively. The field indicates whether PCM encoding, if used, is based on the A-law or the Mu-law. This can be used to qualify the 'generic PCM' codec stated in some of the AAL2 profiles. The field can take on the string values of "A" and "Mu". Rajesh Kumar, Mohamed Mostafa [Page 42] The and fields are 16-bit integers that can be represented in decimal (no prefix)or in hex (0x prefix). The meaning and values of the and fields are as follows: Field Meaning Values Maximum length of a 1- 65,535 frame mode data unit, forward direction Maximum length of a 1- 65,535 frame mode data unit, backward direction In certain applications (such as SIP-based applications), an SDP descriptor might have an 'aal2_SSCS_3662' media attribute line with the and subparameters. In applications (such as Megaco-based applications), the remote descriptor can have the subparameter while the local descriptor can have the subparameter. 5.7.31 The 'aal2_sscs_3652' attribute When present, the 'aal2_sscs_3652' attribute is used to indicate the use, in conjunction with AAL2, of a service-specific coordination function, as defined in ITU I.365.2 [40], for Connection Oriented Network Service (SSCF-CONS). The format of the 'aal2_sscs_3652' media attribute line is as follows: a=aal2_sscs_3652 5.7.32 The 'aal2_sscs_3653' attribute When present, the 'aal2_sscs_3653' attribute is used to indicate the use, in conjunction with AAL2, of a service-specific coordination function, as defined in ITU I.365.3 [41], for Connection Oriented Transport Service (SSCF-COTS). The format of the 'aal2_sscs_3653' media attribute line is as follows: a=aal2_sscs_3653 5.7.33 The 'AAL5app' attribute When present, the 'AAL5app' attribute is used to indicate the presence of an application that uses AAL5, and to optionally point to the controlling standard for the application layer. The format of the 'AAL5app' media attribute line is as follows: a=AAL5app: The field can take on the string values listed below, along with their meaning. Additionally, it can be set to "-" if the controlling standard for the application is known by other means such as by default or through provisioning. Rajesh Kumar, Mohamed Mostafa [Page 43] Meaning "h323c" Annex C of H.323 which specifies direct RTP on AAL5 [45]. "af83" af-vtoa-0083.001, which specifies variable size AAL5 PDUs with PCM voice and a null SSCS [46]. "assuredSSCOP" SSCOP as defined in ITU Q.2110 [43], assured operation. "nonassuredSSCOP" SSCOP as defined in ITU Q.2110 [43], non-assured operation. "itu_i3651" Frame relay SSCS per ITU I.365.1 [39]. "itu_i3652" Service-specific coordination function, as defined in ITU I.365.2, for Connection Oriented Network Service (SSCF-CONS) [40]. "itu_i3653" Service-specific coordination function, as defined in ITU I.365.3, for Connection Oriented Transport Service (SSCF-COTS) [41]. "FRF11" Use of the FRF.11 frame relay standard to transmit telephony payloads. 5.7.34 The 'lij' attribute When present, the 'lij' attribute is used to indicate the presence of a connection that uses the Leaf-initiated-join capability described in UNI 4.0 [5], and to optionally describe parameters associated with this capability. The format of the 'lij' media attribute line is as follows: a=lij: The (screening indication) is a 4-bit field expressed as a decimal or hex integer. It is defined in the UNI 4.0 signaling specification [5]. It is expected that the values of this field will be defined later by the ATMF and/or ITU. Currently, all values are reserved with the exception of 0, which indicates a 'Network Join without Root Notification'. The (leaf sequence number) is a 32-bit field expressed as a decimal or hex integer. Per the UNI 4.0 signaling specification [5], it is used by a joining leaf to associate messages and responses during LIJ (leaf initiated join) procedures. Each of these fields can be set to a "-" when the intention is to not specify them in an SDP descriptor. 5.7.35 The 'anycast' attribute When present, the 'anycast' attribute line is used to indicate the applicability of the anycast function described in UNI Rajesh Kumar, Mohamed Mostafa [Page 44] 4.0 [5]. Optional parameters to qualify this function are provided. The format of the 'anycast' attribute is: a=anycast: The is per Annex 5 of UNI 4.0 [5]. Within an SDP descriptor, it can be represented in one of the formats (NSAP, E.164, GWID/ALIAS) described elsewhere in this document. The remaining subparameters mirror the connection scope selection information element in UNI 4.0 [5]. Their meaning and representation is as shown below: PARAMETER MEANING REPRESENTATION Coding standard for the Decimal or hex connection scope selection IE equivalent of Definition: UNI 4.0 [5] 2 bits Type of connection scope Decimal or hex Definition: UNI 4.0 [5] equivalent of 4 bits Connection scope selection Decimal or hex Definition: UNI 4.0 [5] equivalent of 8 bits Currently, all values of and are reserved with the exception of = 3 (ATMF coding standard) and = 1 (connection scope type of 'organizational'). Each of these fields can be set to a "-" when the intention is to not specify them in an SDP descriptor. 5.7.36 The 'wtp' attribute This is used for CALEA (lawful wiretap) conformance. It specifies the VCC and/or CID to be used for delivering a tapped stream. An odd-even convention is used. The stream directed towards the tapped party (or towards a party to which the tapped party's call is redirected) is copied into a circuit with an even VCCI (if there are no CIDs or one CID per VCC) or a circuit with an even CID (if there are multiple CIDs per VCC). VCCIs used are 0,2,4... CIDs used are 8, 10, 12 ... The stream from the tapped party (or from a party to which the tapped party's call is redirected) is copied into a circuit with the next odd VCCI (if there are no CIDs or one CID per VCC) or a circuit with the next odd CID (if there are multiple CIDs per VCC). The odd value in the pair is automatically derived by adding 1 to the even value and is not specified in the 'wtp' attribute line. The resulting VCCI values are 1, 3, 5 ... The resulting CID values are 9, 11, 13 ... This attribute has the following format: a=wtp: where is defined in sections above on the 'm' lines for AAL1, AAL5 and AAL2. The wildcarding rules for are applicable. Note that the semantics of the allow specification of the ATM address of the remote delivery site. Rajesh Kumar, Mohamed Mostafa [Page 45] When SVC(s) are used for delivering the tapped streams to another site, all terms in except the ATM address of the remote delivery site are wildcarded. 5.7.37 Specification of Higher-layer attributes This conventions in this ATM SDP document are limited to the ATM and adaptation layers. Parameters associated with layers higher than the ATM adaptation layer are addressed only if these are tightly coupled to the ATM or adaptation layers. ATM signaling standards provide 'escape mechanisms' to represent, signal and negotiate higher-layer parameters. Examples are the B-HLI and B-LLI IEs specified in ITU Q.2931 [15], and the user-to-user information element described in ITU Q.2957 [48]. SDP as described in rfc2327 has a similar mechanism to describe higher-layer parameters. This is the 'fmtp' or the format-specific parameters attribute. This attribute is expressed in the following manner: a=fmtp: It is suggested that applications use this attribute, described in detail in rfc2327 [1], to express higher-layer parameters. Conventions for the use of the 'fmtp' attribute to describe higher-layer information are beyond the scope of the present document. However, it is recognized that in some applications it is necessary to describe higher-layer information within the same SDP descriptor as the ATM and AAL information. 5.7.38 Use of the second media-level part in H.323 Annex C applications Section 4 mentions that H.323 annex C applications have a second media level part for the ATM session description. This is used to convey information about the RTCP stream. Although the RTP stream is encapsulated in AAL5 with no intervening IP layer, the RTCP stream is sent to an IP address and RTCP port. This media level part has the following format: m= m= control H323c - c= IN IP4 Consistency with rfc2327 is maintained in the location and format of these lines. The is set o "-". The 'c' line in the second media-level part pertains to RTCP only. The and subparameters indicate the port number and IP address on which the media gateway is prepared to receive RTCP packets. Since this refers to the RTCP packets and not to RTP packets, the port number is odd. If an even port is specified, then the next odd number is used. Any of the subparameters on these lines can be set to "-" if they are known by other means. The range and format of the and subparameters is per [1]. The 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 is expressed in the usual dotted decimal IP address representation, from 0.0.0.0 to 255.255.255.255, resulting in an alphanumeric Rajesh Kumar, Mohamed Mostafa [Page 46] string of 7 to 15 characters. 5.7.39 Chaining SDP descriptors The start of an SDP descriptor is marked by a 'v' line. In some applications, consecutive SDP descriptions are alternative descriptions of the same session. In others, these describe different layers of the same connection (e.g. IP, ATM, frame relay). This is useful when these connectivity at these layers are established at the same time e.g. an IP-based session over an ATM SVC. To distinguish between the alternation and concatenation of SDP descriptions, a 'chain' attribute can be used in the case of concatenation. When present, the 'chain' attribute binds an SDP description to the next or previous SDP description. The next or previous description is separated from the current one by a 'v' line. It is not necessary that this description also have a 'chain' media attribute line. Chaining averts the need to set up a single SDP description for a session that is simultaneously created at multiple layers. It allows the SDP descriptors for different layers to remain simple and clean. Chaining is not needed in the Megaco context, where it is possible to create separate terminations for the different layers of a connection. The 'chain' media attribute line has the following format: a=chain: The field can take on the following string values: "next", "previous" and "NULL". The value "NULL" is not equivalent to omitting the chain attribute from a description since it expressly precludes the possibility of chaining. If the 'chain' attribute is absent in an SDP description, chaining can still be realized by its presence in the previous or next description. 6.0 List of Parameters with Representations This section provides a list of the parameters used in this document, and the formats used to represent them in SDP descriptions. In the representations of these parameters, string values (including single-character strings) are enclosed in double quotes (" "). Decimal numbers are do not have a prefix, while hex numbers are preceded by a 0x. In general, a "-" value can be used for any field that is not specified, is inapplicable or is implied. PARAMETER MEANING REPRESENTATION User name Constant "-" Session ID Decimal, Hex, or Alphanumeric At most 32 digits or 34 characters. Rajesh Kumar, Mohamed Mostafa [Page 47] Version of Decimal or Hex SDP descriptor At most 32 digits Network type Constant "ATM" ATM address type String values: "NSAP", "E164", "GWID", "ALIAS" ATM address "NSAP": 40 hex digits, optionally dotted "E164": up to 15 decimal digits "GWID": up to 32 characters "ALIAS": up to 32 characters Session name Constant "-" Session start Decimal or hex equivalent time of 32-bit field Session stop Constant "0" time Virtual Circuit Decimal or hex equivalent Connection of 16 bits Identifier Bearer Connection Decimal or hex equivalent Group of 8 bits Port ID Decimal, Hex, or Alphanumeric. At most 32 digits or 34 characters. Virtual Path Decimal or hex equivalent Identifier of 8 or 12 bits Virtual Circuit Decimal or hex equivalent Identifier of 16 bits Virtual Path Decimal or hex equivalent Connection of 16 bits Identifier Channel Decimal or hex equivalent Identifier of 8 bits Payload Decimal integer 0-127 Type Profile String values: Class "ITU", "ATMF", "custom", , "IEEE:" : IEEE-registered OUI Profile Decimal integer 1-255 Rajesh Kumar, Mohamed Mostafa [Page 48] End-to-end Up to 8 hex digits Connection Identifier AAL type String values: "AAL1","AAL1_SDT","AAL1_UDT", "AAL2", "AAL3/4", "AAL5", "User defined AAL" Silence suppression String values: Enable "on", "off" Kick-in timer Decimal or hex representation for silence of 16-bit field suppression Preferred Silence String values: Suppression Method "standard", "custom" SID Use String values: Method "No SID", "Fixed Noise", "Sampled Noise" Fixed Noise Decimal or hex representation Level of a 7-bit field Enable Echo String values: Cancellation "on", "off" Type of Echo String values: Cancellation "G165", "G168" Enable Gain String values: Control "on", "off" Level of inserted Decimal or hex equivalent Loss of 16-bit field UUI code range Decimal integer 0-15 Encoding name String values: "PCMG", "SIDG", "SID729", any value from column 2 of Table 1 Packet length Decimal integer 0-45 Packetization Decimal integer 1-500 Interval Facsimile included String values: "on", "off" ATM service String values: category defined "CBR", "nrt-VBR", "rt-VBR", by the ATMF "UBR", "ABR", "GFR" Rajesh Kumar, Mohamed Mostafa [Page 49] ATM transfer String values: capability "DBR","SBR","ABT/IT","ABT/DT", defined by the "ABR" ITU QoS Class Decimal integer 0-5 Broadband Bearer Decimal or hex representation Class of 5-bit field Susceptibility Decimal equivalent of to clipping a 2-bit field User plane Decimal equivalent of connection a 2-bit field configuration CDV type String values: "pp", "2p" Acceptable CDV Integer or hex equivalent of 24-bit field Cumulative CDV Integer or hex equivalent of 24-bit field Acceptable CTD Integer or hex equivalent of 16-bit field Cumulative CTD Integer or hex equivalent of 16-bit field Acceptable Integer or hex equivalent Cell Loss Ratio of 8-bit field CLP level String values: "0", "0+1" Peak Cells/second Cell Rate Sustained Cells/second Cell Rate Maximum Cells Burst Size CDVT Decimal integer or fraction, range determined by application. Minimum Cells/second Cell Rate Maximum Cells Frame Size Frame Discard String Values: Allowed "on", "off" Rajesh Kumar, Mohamed Mostafa [Page 50] CLP tagging String Values: Enabled "on", "off" NRM Decimal/hex equivalent of 3 bit field TRM - ditto- CDF -ditto- ADTF Decimal/Hex equivalent of 10 bit field Clock Recovery String values: Method "NULL", "SRTS", "adaptive" Forward Error String values: Correction Enable "NULL", "loss sensitive" "delay sensitive" Partial Fill Decimal integer 1-46 or hex equivalent Bearer Type String Values: "PVC", "SVC", "CID" Structure Present String values: "on", "off" Block Size Decimal or hexadecimal equivalent of 16 bits Subchannel Count T1: Decimal integer 1-24 or hex equivalent E1: Decimal integer 1-31 or hex equivalent Maximum AAL5: Decimal or hex CPCS SDU size equivalent of 16 bits AAL2: 45 or 64 Maximum number of Decimal integer 1-255 subcell channels or hex equivalent Timer, combined use Integer decimal; range determined by application Assured Data String values: Transfer Enable "on", "off" Transmission Error String values: Detection Enable "on", "off" Maximum SSSAR-SDU Decimal or hex size, forward equivalent of 16-bit direction field Rajesh Kumar, Mohamed Mostafa [Page 51] Maximum SSSAR-SDU Decimal or hex size, backward equivalent of 16-bit direction field Service Access String values: Point "audio", "multirate" Circuit Mode String values: Enable "on", "off" Frame Mode String values: Enable "on", "off" Fax Demodulation String values: Enable "on", "off" Enable CAS transport String values: via Type 3 packets "on", "off" Enable DTMF transport String values: via Type 3 packets "on", "off" Enable MF transport String values: via Type 3 packets "on", "off" Enable MF (R1) String values: transport via "on", "off" Type 3 packets Enable MF (R2) String values: transport via "on", "off" Type 3 packets PCM encoding String values: " A", " Mu" Maximum length of a Decimal or hex frame mode data unit, equivalent of forward direction 16-bit field Maximum length of a -ditto- frame mode data unit, backward direction Application that uses String values: AAL5 "h323c","af83", "assuredSSCOP", "nonassuredSSCOP", "itu_i3651", "itu_i3652", "itu_i3653", "FRF11" Screening Indication Decimal or hex equivalent of 4 bits. Leaf Sequence Number Decimal or hex equivalent of 32 bits. Rajesh Kumar, Mohamed Mostafa [Page 52] Coding standard for the Decimal or hex connection scope selection equivalent of IE 2 bits Definition: UNI 4.0 [5] Type of connection scope Decimal or hex Definition: UNI 4.0 [5] equivalent of 4 bits Connection scope selection Decimal or hex equivalent Definition: UNI 4.0 [5] of 8 bits RTCP port number for Odd decimal in range 1024 to H.323 Annex C applications 65535 IP address for receipt Dotted decimal, 7-15 chars of RTCP packets Chain pointer String values: "next", "previous", "NULL" 7.0 Examples of ATM session descriptions using SDP An example of a complete AAL1 session description in SDP is: v=0 o=- A3C47F21456789F0 0 ATM NSAP 47.0091.8100.0000.0060.3e64.fd01.0060.3e64.fd01.00 s=- c=ATM NSAP 47.0091.8100.0000.0060.3e64.fd01.0060.3e64.fd01.00 t=0 0 m=audio $ AAL1/AVP 18 0 96 a=atmmap:96 G727-32 a=eecid:B3D58E32 An example of a complete AAL2 session description in SDP is: v=0 o=- A3C47F21456789F0 0 ATM NSAP 47.0091.8100.0000.0060.3e64.fd01.0060.3e64.fd01.00 s=- c=ATM NSAP 47.0091.8100.0000.0060.3e64.fd01.0060.3e64.fd01.00 t=0 0 m=audio $ AAL2/ITU 8 AAL2/custom 100 AAL2/ITU 1 a=eecid:B3E32 The AAL2 session descriptor below is the same as the one above except that it states an explicit preference for a voice codec, a voiceband data codec and a voiceband fax codec. Further, it defines the profile AAL2/custom 100 rather than assume that the far-end is cognizant of the elements of this profile. Rajesh Kumar, Mohamed Mostafa [Page 53] v=0 o=- A3C47F21456789F0 0 ATM NSAP 47.0091.8100.0000.0060.3e64.fd01.0060.3e64.fd01.00 s=- c=ATM NSAP 47.0091.8100.0000.0060.3e64.fd01.0060.3e64.fd01.00 t=0 0 m=audio $ AAL2/ITU 8 AAL2/custom 100 AAL2/ITU 1 a=eecid:B3E32 a=profiledesc:AAL2/custom 100 0-7 PCMG 40 5 0-7 SIDG 1 5 8-15 G726-32 40 10 8-15 SIDG 1 5 a=vsel:G726-32 40 10 a=dsel:PCMU - - a=fsel:G726-32 40 10 8.0 Representation of data media The following encoding names in Table 1 can refer to data as well as audio media: X-CCD and X-CCD-CAS in Table 1. The following encoding names in Table 1 refer to data media: X-FXDMOD-3 in Table 1. In the AAL1 context, X-CCD and X-CCD-CAS can be represented as "audio" codecs that are dynamically mapped into payload types. This is done through the 'atmmap' attribute, as described earlier. For example: m=audio 27 AAL1/AVP 98 a=atmmap:98 X-CCD implies that AAL1 VCCI=27 is used for n x 64 transmission. Currently, AAL1 in unsuitable for transmitting demodulated facsimile because it lacks the bearer plane mechanisms (equivalent to AAL2 type 3 messages) for transmitting control information. In the AAL2 context, these "codecs" can be assigned profile types and numbers. Even though it is not possible to construct profile tables as described in ITU I.366.2 for these "codecs", it is preferable to adopt the common AAL2 profile convention in their case. An example AAL2 profile mapping for these could be as follows: PROFILE TYPE PROFILE NUMBER "CODEC" (ONLY ONE) "custom" 200 X-CCD "custom" 201 X-FXDMOD-3 The profile does not identify the number of subchannels ('n' in nx64). This is known by other means such as the 'sbc' media attribute line. Currently, there is no definition of n x 64 trunking with CAS for AAL2. For example, the media information line: m=audio $ AAL2/custom 200 a=sbc:6 implies a 384 kbps n x 64 circuit using AAL2 adaptation. Rajesh Kumar, Mohamed Mostafa [Page 54] In the case of fax demodulation and remodulation (ITU I.366.2), parameters such as information type, image data size and control type are negotiated in the 'bearer plane' via type 3 messages. There is no need to define several encoding names for these control streams. 9.0 Security Considerations 9.1 Bearer Security At present, standard means of encrypting ATM and AAL2 bearers are not conventionalized in the same manner as means of encrypting RTP payloads. Nor has the authentication of ATM or AAL2 bearer signaling. If and when an ATM or AAL2 bearer encryption convention is conventionalized, the SDP encryption key line (k=) defined in rfc2327 can be used to represent the encryption key and the method of obtaining the key. In the ATM and AAL2 contexts, the term 'bearer' can include 'bearer signaling' as well as 'bearer payloads'. 9.2 Security of the SDP description The SDP session descriptions might originate in untrusted areas such as equipment owned by end-subscribers or located at end-subscriber premises. SDP relies on the security mechanisms of the encapsulating protocol or layers below the encapsulating protocol. Examples of encapsulating protocols are the Session Initiation Protocol (SIP), MGCP and Multimedia Gateway Control Protocol (MEGACO). No additional security mechanisms are needed. SIP, MGCP and MEGACO can use IPSec authentication as described in RFC1826 [Ref. 27]. IPSec encryption can be optionally used with authentication to provide an additional, potentially more expensive level of security. IPSec security associations can be made between equipment located in untrusted areas and equipment located in trusted areas through configured shared secrets or the use of a certificate authority. 10.0 Remaining Tasks In the authors' opinion, the following tasks need to be done to complete the definition of the basic conventions needed to describe ATM connections in SDP. - Adequate representation of AAL2 parameters, such as some of the parameters found in Q.2630.1. - Additional, detailed examples of the use of these SDP conventions. - Address the so-called UBR+ service category. Where is it defined? - Add a table of contents. Rajesh Kumar, Mohamed Mostafa [Page 55] References [1] IETF RFC 2327, 'SDP: Session Description Protocol', April '98, Mark Handley and Van Jacobson. [2] IETF RFC 1889, 'RTP: A Transport Protocol for Real-Time Applications', Jan. 1996. [3] IETF RFC 1890, 'RTP Profile for Audio and Video Conferences with Minimal Control', Jan. 1996. [4] ATMF UNI 3.1 Specification, af-uni-0010.002. Of special interest for this document is Section 5.4.5.5, ATM Adaptation Layer Parameters. [5] ATMF UNI 4.0 Signaling Specification, af-sig-0061.000. [6] ATMF Traffic Management Specification, Version 4.1, af-tm- 0121.000. [7] ATMF Circuit Emulation Service (CES) Interoperability Specification, version 2.0, af-vtoa-0078.000, Jan. 97. [8] ATMF Voice and Telephony over ATM - ATM Trunking using AAL1 for Narrowband Services, version 1.0, af-vtoa-0089.000, July 1997. [9] ATMF Specifications of (DBCES) Dynamic Bandwidth Utilization - in 64kbps Timeslot Trunking over ATM - using CES, af-vtoa- 0085.000, July 1997. [10] ITU-T I.363.1, B-ISDN ATM Adaptation Layer Specification: Type 1 AAL, August 1996. [11] ITU-T I.363.2, B-ISDN ATM Adaptation Layer Specification: Type 2 AAL, Sept. 1997. [12] ITU-T I.366.1, Segmentation and Reassembly Service Specific Convergence Sublayer for AAL Type 2, June 1998. [13] ITU-T I.366.2, AAL Type 2 Reassembly Service Specific Convergence Sublayer for Trunking, Feb. 99. [14] Draft ietf-avt-telephone-tones-05.txt, RTP payloads for Telephone Signal Events, S.B.Petrack, Nov. 17, 1998. [15] ITU-T Q.2931, B-ISDN Application Protocol for Access Signaling. [16] Amendment 1, 2, 3 and 4 to ITU-T Q.2931, B-ISDN Application Protocol for Access Signaling. [17] SAP: Session Announcement Protocol , draft-ietf-mmusic-sap-v2- 04.txt, Mark Handley, Colin Perkins and Edmund Whelan . [18] rfc2543, Handley, M., H. Schulzrinne , Schooler, E. and Rosenberg, J., "Session Initiation Protocol (SIP)", March 1999. Rajesh Kumar, Mohamed Mostafa [Page 56] [19] rfc1349, Type of Service in the Internet Protocol Suite. P. Almquist. July 1992. [20] rfc2474, Definition of the Differentiated Services Field (DS Field) in the IPv4 and IPv6 Headers. K. Nichols, S. Blake, F. Baker, D. Black. December 1998. [21] ITU-T I.363.5, B-ISDN ATM Adaptation Layer Specification: Type 5 AAL, Aug. 1996. [22] ATMF PNNI 1.0, af-pnni-0055.000, March 1996. [23] ietf-avt-rtp-new-05.txt, Oct. 21, 1999, RTP: A Transport Protocol for Real-Time Applications. [24] ietf-avt-profile-new-07.txt, Oct. 21, 1999, RTP Profile for Audio and Video Conferences with Minimal Control. [25] Media Gateway Control Protocol (MGCP), Mauricio Arango, Isaac Elliott, Christian Huitema, Scott Pickett, Version 1.0, RFC2705. [26] draft-ietf-Megaco-merged-00.txt, April, 2000, Media Gateway control (Megaco) protocol, Fernando Cuervo, Nancy Greene, Christian Huitema, Abdallah Rayhan, Brian Rosen, John Segers. [27] IP Authentication Header, R. Atkinson, August 1995, RFC1826. [28] ITU I.371, Traffic Control and Congestion Control in the BISDN. [29] ITU E.191, BISDN Numbering and Addressing. [30] ATM Forum Addressing: Reference Guide, af-ra-0106.000. [31] http://www.isi.edu/in-notes/iana/assignments/rtp-parameters for a list of codecs with static payload types. [32] ITU Q.2941-2, Digital Subscriber Signalling System No. 2 (DSS 2): Generic identifier transport extensions. [33] ITU Q.2961, Digital subscriber signalling system no.2 (DSS 2) - additional traffic parameters. Also, Amendment 2 to Q.2961. [34] ITU Q. 2965.1, Digital subscriber signalling system no.2 (DSS 2) - Support of Quality of Service classes. [35] ITU Q. 2965.2, Digital subscriber signalling system no.2 (DSS 2) - Signalling of individual Quality of Service parameters. [36] ITU Q.1901, Bearer Independent Call Control Protocol. [37] ITU Q.2630.1, AAL type 2 signaling protocol - capability set 1. [38] ITU I.363.5, B-ISDN ATM Adaptation Layer specification: Type 5 AAL. [39] I.365.1,Frame relaying service specific convergence sublayer (FR-SSCS). Rajesh Kumar, Mohamed Mostafa [Page 57] [40] I.365.2, B-ISDN ATM adaptation layer sublayers: service specific coordination function to provide the connection oriented network service. [41] I.365.3, B-ISDN ATM adaptation layer sublayers: service specific coordination function to provide the connection-oriented transport service. [42] I.365.4, B-ISDN ATM adaptation layer sublayers: Service specific convergence sublayer for HDLC applications. [43] Q.2110, B-ISDN ATM adaptation layer - service specific connection oriented protocol (SSCOP). [44] af-vtoa-0113.000, ATM trunking using AAL2 for narrowband services. [45] H.323-2, Packet-based multimedia communications systems. [46] af-vtoa-0083.000, Voice and Telephony Over ATM to the Desktop. [47] I.356, BISDN ATM layer cell transfer performance. [48] ITU Q.2957, Digital Subscriber Signaling System No. 2, User to user signaling. [49] rfc1305, Network Time Protocol, version 3. Acknowledgements The authors wish to thank several colleagues at Cisco and in the industry who have contributed towards the development of these SDP conventions, and who have reviewed, implemented and tested these constructs. Valuable technical ideas that have been incorporated into this internet draft have been provided by Hisham Abdelhamid, David Auerbach, Robert Biskner, Bruce Buffam, Steve Casner, Alex Clemm, Bill Foster, Snehal Karia, Raghu Thirumalai Rajan, Joe Stone, Bruce Thompson, Dan Wing and Ken Young of Cisco, Michael Brown, Rade Gvozdanovic, Graeme Gibbs, Tom-PT Taylor and Sophia Scoggins of Nortel Networks, Brian Rosen, Tim Dwight and Michael Mackey of Marconi, Ed Guy and Petros Mouchtaris of Telcordia, Christian Groves of Ericsson, Charles Eckel of Vovida Networks, Tom Jepsen of Fujitsu and Mahamood Hussain of Hughes Software Systems. The authors also wish to thank the ISC device control group, and the MMUSIC and MEGACO subgroups of the IETF, especially Bill Foster, Jeorg Ott and Brian Rosen for their help in the preparation of this document. If there are names of contributors that have been overlooked, please let the authors know before the document goes on standards track. Rajesh Kumar, Mohamed Mostafa [Page 58] Authors' Addresses Rajesh Kumar Cisco Systems, Inc. M/S SJC01/3 170 West Tasman Drive San Jose, CA 95134-1706 Phone: 1-800-250-4800 Email: rkumar@cisco.com Mohamed Mostafa Cisco Systems, Inc. M/S SJC01/3 170 West Tasman Drive San Jose, CA 95134-1706 Phone: 1-800-250-4800 Email: mmostafa@cisco.com Full Copyright Statement Copyright (C) The Internet Society (March 2, 2000). All Rights Reserved. This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English. The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns. This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE." Rajesh Kumar, Mohamed Mostafa [Page 59]