idnits 2.17.1 draft-ietf-mmusic-sdp-mux-attributes-02.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- == There are 2 instances of lines with non-RFC2606-compliant FQDNs in the document. == There are 1 instance of lines with non-RFC6890-compliant IPv4 addresses in the document. If these are example addresses, they should be changed. -- The document has examples using IPv4 documentation addresses according to RFC6890, but does not use any IPv6 documentation addresses. Maybe there should be IPv6 examples, too? Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == Line 1714 has weird spacing: '...nalysis of | ...' == The document seems to lack the recommended RFC 2119 boilerplate, even if it appears to use RFC 2119 keywords -- however, there's a paragraph with a matching beginning. Boilerplate error? (The document does seem to have the reference to RFC 2119 which the ID-Checklist requires). -- The exact meaning of the all-uppercase expression 'MAY NOT' is not defined in RFC 2119. If it is intended as a requirements expression, it should be rewritten using one of the combinations defined in RFC 2119; otherwise it should not be all-uppercase. == The expression 'MAY NOT', while looking like RFC 2119 requirements text, is not defined in RFC 2119, and should not be used. Consider using 'MUST NOT' instead (if that is what you mean). Found 'MAY NOT' in this paragraph: For multiplexing several DCCP-in-UDP encapsulations on the same UDP port, with no RTP traffic on the same port implies collapsing several DCCP port spaces together. This MAY or MAY NOT work depending on the nature of DCCP encapsulations and ports choses thus rendering it to be very application dependant. -- The document date (July 03, 2014) is 3584 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) == Unused Reference: 'ACK-NACK' is defined on line 2666, but no explicit reference was found in the text == Unused Reference: 'CCM' is defined on line 2671, but no explicit reference was found in the text ** Obsolete normative reference: RFC 4566 (Obsoleted by RFC 8866) == Outdated reference: A later version (-07) exists of draft-dhesikan-tsvwg-rtcweb-qos-02 == Outdated reference: A later version (-54) exists of draft-ietf-mmusic-sdp-bundle-negotiation-03 -- Obsolete informational reference (is this intentional?): RFC 4091 (Obsoleted by RFC 5245) -- Obsolete informational reference (is this intentional?): RFC 4572 (Obsoleted by RFC 8122) -- Obsolete informational reference (is this intentional?): RFC 4583 (Obsoleted by RFC 8856) -- Obsolete informational reference (is this intentional?): RFC 5245 (Obsoleted by RFC 8445, RFC 8839) -- Obsolete informational reference (is this intentional?): RFC 5285 (Obsoleted by RFC 8285) Summary: 1 error (**), 0 flaws (~~), 10 warnings (==), 8 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group S. Nandakumar 3 Internet-Draft Cisco 4 Intended status: Standards Track July 03, 2014 5 Expires: January 4, 2015 7 A Framework for SDP Attributes when Multiplexing 8 draft-ietf-mmusic-sdp-mux-attributes-02 10 Abstract 12 The Session Description Protocol (SDP) provides mechanisms to 13 describe attributes of multimedia sessions and of individual media 14 streams (e.g., Real-time Transport Protocol (RTP) sessions) within a 15 multimedia session. In the RTCWeb WG, there is a need to use a 16 single 5-tuple for sending and receiving media associated with 17 multiple media descriptions ("m=" lines). Such a requirement has 18 raised concerns over the semantic implications of the SDP attributes 19 associated with the RTP Media Streams multiplexed over a single 20 transport layer flow. 22 The scope of this specification is to provide a framework for 23 analyzing the multiplexing characteristics of SDP attributes. The 24 specification also categorizes existing attributes based on the 25 framework described herein. 27 Status of This Memo 29 This Internet-Draft is submitted in full conformance with the 30 provisions of BCP 78 and BCP 79. 32 Internet-Drafts are working documents of the Internet Engineering 33 Task Force (IETF). Note that other groups may also distribute 34 working documents as Internet-Drafts. The list of current Internet- 35 Drafts is at http://datatracker.ietf.org/drafts/current/. 37 Internet-Drafts are draft documents valid for a maximum of six months 38 and may be updated, replaced, or obsoleted by other documents at any 39 time. It is inappropriate to use Internet-Drafts as reference 40 material or to cite them other than as "work in progress." 42 This Internet-Draft will expire on January 4, 2015. 44 Copyright Notice 46 Copyright (c) 2014 IETF Trust and the persons identified as the 47 document authors. All rights reserved. 49 This document is subject to BCP 78 and the IETF Trust's Legal 50 Provisions Relating to IETF Documents 51 (http://trustee.ietf.org/license-info) in effect on the date of 52 publication of this document. Please review these documents 53 carefully, as they describe your rights and restrictions with respect 54 to this document. Code Components extracted from this document must 55 include Simplified BSD License text as described in Section 4.e of 56 the Trust Legal Provisions and are provided without warranty as 57 described in the Simplified BSD License. 59 Table of Contents 61 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 4 62 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 5 63 3. Motivation . . . . . . . . . . . . . . . . . . . . . . . . . 5 64 4. SDP Attribute Analysis Framework . . . . . . . . . . . . . . 6 65 4.1. Category: NORMAL . . . . . . . . . . . . . . . . . . . . 6 66 4.2. Category: NOT RECOMMENDED . . . . . . . . . . . . . . . . 7 67 4.3. Category: IDENTICAL . . . . . . . . . . . . . . . . . . . 7 68 4.4. Category: SUM . . . . . . . . . . . . . . . . . . . . . . 8 69 4.5. Category: TRANSPORT . . . . . . . . . . . . . . . . . . . 8 70 4.6. Category: INHERIT . . . . . . . . . . . . . . . . . . . . 9 71 4.7. Category: IDENTICAL-PER-PT . . . . . . . . . . . . . . . 10 72 4.8. Category: SPECIAL . . . . . . . . . . . . . . . . . . . . 10 73 5. Analysis of Existing Attributes . . . . . . . . . . . . . . . 11 74 5.1. RFC4566 - SDP: Session Description Protocol . . . . . . . 11 75 5.2. RFC4585 - RTP/AVPF . . . . . . . . . . . . . . . . . . . 12 76 5.3. RFC5761 - Multiplexing RTP and RTCP . . . . . . . . . . . 13 77 5.4. RFC4574 - SDP Label Attribute . . . . . . . . . . . . . . 13 78 5.5. RFC5432 - QoS Mechanism Selection in SDP . . . . . . . . 13 79 5.6. RFC4568 - SDP Security Descriptions . . . . . . . . . . . 14 80 5.7. RFC5762 - RTP over DCCP . . . . . . . . . . . . . . . . . 14 81 5.8. RFC6773 - DCCP-UDP Encapsulation . . . . . . . . . . . . 15 82 5.9. RFC5506 - Reduced-Size RTCP in RTP Profile . . . . . . . 16 83 5.10. RFC6787 - Media Resource Control Protocol Version 2 . . . 16 84 5.11. RFC5245 - Interactive Connectivity Establishment (ICE) . 17 85 5.12. RFC5285 - RTP Header Extensions . . . . . . . . . . . . . 18 86 5.13. RFC3605 - RTCP attribute in SDP . . . . . . . . . . . . . 19 87 5.14. RFC5576 - Source-Specific SDP Attributes . . . . . . . . 19 88 5.15. RFC6236 - Image Attributes in SDP . . . . . . . . . . . . 20 89 5.16. RFC6285 - Rapid Acquisition of Multicast RTP Sessions . . 21 90 5.17. RFC6230 - Media Control Channel Framework . . . . . . . . 21 91 5.18. RFC6364 - SDP Elements for FEC Framework . . . . . . . . 22 92 5.19. RFC4796 - Content Attribute . . . . . . . . . . . . . . . 22 93 5.20. RFC3407 - SDP Simple Capability Declaration . . . . . . . 23 94 5.21. RFC6284 - Port Mapping between Unicast and Multicast RTP 95 Sessions . . . . . . . . . . . . . . . . . . . . . . . . 23 96 5.22. RFC6714 - MSRP-CEMA . . . . . . . . . . . . . . . . . . . 24 97 5.23. RFC4583 - SDP Format for BFCP Streams . . . . . . . . . . 24 98 5.24. RFC5547 - SDP Offer/Answer for File Transfer . . . . . . 25 99 5.25. RFC6489 - SDP and RTP Media Loopback Extension . . . . . 25 100 5.26. RFC5760 - RTCP with Unicast Feedback . . . . . . . . . . 26 101 5.27. RFC3611 - RTCP XR . . . . . . . . . . . . . . . . . . . . 26 102 5.28. RFC5939 - SDP Capability Negotiation . . . . . . . . . . 27 103 5.29. RFC6871- SDP Media Capabilities Negotiation . . . . . . . 27 104 5.30. RFC4567 - Key Management Extensions for SDP and RTSP . . 28 105 5.31. RFC4572 - Comedia over TLS in SDP . . . . . . . . . . . . 28 106 5.32. RFC4570 - SDP Source Filters . . . . . . . . . . . . . . 29 107 5.33. RFC6128 - RTCP Port for Multicast Sessions . . . . . . . 29 108 5.34. RFC6189 - ZRTP . . . . . . . . . . . . . . . . . . . . . 30 109 5.35. RFC4145 - Connection-Oriented Media . . . . . . . . . . . 31 110 5.36. RFC5159 - OMA BCAST SDP Attributes . . . . . . . . . . . 31 111 5.37. RFC6193 - Media Description for IKE in SDP . . . . . . . 32 112 5.38. RFC6064 - SDP and RTSP Extensions for 3GPP . . . . . . . 33 113 5.39. RFC3108 - ATM SDP . . . . . . . . . . . . . . . . . . . . 35 114 5.40. 3GPP TS 24.182 . . . . . . . . . . . . . . . . . . . . . 36 115 5.41. 3GPP TS 24.183 . . . . . . . . . . . . . . . . . . . . . 37 116 5.42. 3GPP TS 24.229 . . . . . . . . . . . . . . . . . . . . . 37 117 5.43. ITU T.38 . . . . . . . . . . . . . . . . . . . . . . . . 38 118 5.44. ITU-T H.248.15 . . . . . . . . . . . . . . . . . . . . . 39 119 5.45. RFC4975 - The Message Session Relay Protocol . . . . . . 40 120 5.46. Historical . . . . . . . . . . . . . . . . . . . . . . . 41 121 6. bwtype Attribute Analysis . . . . . . . . . . . . . . . . . . 42 122 6.1. RFC4566 - SDP: Session Description Protocol . . . . . . . 42 123 6.2. RFC3556 - SDP Bandwidth Modifiers for RTCP Bandwidth . . 42 124 6.3. RFC3890 - Bandwidth Modifier for SDP . . . . . . . . . . 43 125 7. rtcp-fb Attribute Analysis . . . . . . . . . . . . . . . . . 44 126 7.1. RFC4585 - RTP/AVPF . . . . . . . . . . . . . . . . . . . 44 127 7.2. RFC5104 - Codec Control Messages in AVPF . . . . . . . . 45 128 7.3. RFC6285 - Unicast-Based RAMS . . . . . . . . . . . . . . 45 129 7.4. RFC6679 - ECN for RTP over UDP/IP . . . . . . . . . . . . 45 130 7.5. RFC6642 - Third-Party Loss Report . . . . . . . . . . . . 46 131 7.6. RFC5104 - Codec Control Messages in AVPF . . . . . . . . 46 132 8. group Attribute Analysis . . . . . . . . . . . . . . . . . . 47 133 8.1. RFC5888 - SDP Grouping Framework . . . . . . . . . . . . 47 134 8.2. RFC3524 - Mapping Media Streams to Resource Reservation 135 Flows . . . . . . . . . . . . . . . . . . . . . . . . . . 47 136 8.3. RFC4091 - ANAT Semantics . . . . . . . . . . . . . . . . 48 137 8.4. RFC5956 - FEC Grouping Semantics in SDP . . . . . . . . . 48 138 8.5. RFC5583 - Signaling Media Decoding Dependency in SDP . . 49 139 9. ssrc-group Attribute Analysis . . . . . . . . . . . . . . . . 49 140 9.1. RFC5576 - Source-Specific SDP Attributes . . . . . . . . 49 141 10. QoS Mechanism Token Analysis . . . . . . . . . . . . . . . . 50 142 10.1. RFC5432 - QoS Mechanism Selection in SDP . . . . . . . . 50 143 11. k= Attribute Analysis . . . . . . . . . . . . . . . . . . . . 50 144 11.1. RFC4566 SDP: Session Description Protocol . . . . . . . 50 146 12. content Atribute Analysis . . . . . . . . . . . . . . . . . . 50 147 12.1. RFC4796 . . . . . . . . . . . . . . . . . . . . . . . . 50 148 13. Payload Formats . . . . . . . . . . . . . . . . . . . . . . . 51 149 13.1. RFC5109 - RTP Payload Format for Generic FEC . . . . . . 51 150 14. Multiplexing Media Streams and DSCP Markings . . . . . . . . 52 151 14.1. Option A . . . . . . . . . . . . . . . . . . . . . . . . 52 152 14.2. Option B . . . . . . . . . . . . . . . . . . . . . . . . 53 153 15. Multiplexing Considerations for Encapsulating Attributes . . 53 154 15.1. RFC3407 - cpar Attribute Analysis . . . . . . . . . . . 53 155 15.2. RFC5939 Analysis . . . . . . . . . . . . . . . . . . . . 54 156 15.2.1. Recommendations . . . . . . . . . . . . . . . . . . 54 157 15.2.1.1. Recommendation-1: Transport Capability Analysis 55 158 15.2.1.2. Recommendation-2: Attribute Capability Analysis 55 159 15.2.1.3. Recommendation-3: Sescap Attribute Analysis . . 56 160 15.2.1.4. Recommendation-4: Capability Extension 161 Attributes . . . . . . . . . . . . . . . . . . . 56 162 15.3. RFC6871 Analysis . . . . . . . . . . . . . . . . . . . . 56 163 15.3.1. Recommendation-5: Attribute Capability Under Shared 164 Payload Type . . . . . . . . . . . . . . . . . . . . 56 165 15.4. Recommendation-6: Offer/Answer Negotiation Expectations 57 166 16. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 59 167 17. Security Considerations . . . . . . . . . . . . . . . . . . . 60 168 18. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 60 169 19. Change Log . . . . . . . . . . . . . . . . . . . . . . . . . 61 170 20. References . . . . . . . . . . . . . . . . . . . . . . . . . 62 171 20.1. Normative References . . . . . . . . . . . . . . . . . . 62 172 20.2. Informative References . . . . . . . . . . . . . . . . . 62 173 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 68 175 1. Introduction 177 Real-Time Communication Web (RTCWeb) framework requires Real-time 178 Transport Protocol (RTP) as the media transport protocol and Session 179 Description Protocol (SDP) [RFC4566] for describing and negotiating 180 multi-media communication sessions. 182 SDP defines several attributes for capturing characteristics that 183 apply to the individual media descriptions (described by "m=" lines") 184 and the overall multimedia session. Typically different media types 185 (audio, video etc) described using different media descriptions 186 represent separate RTP Sessions that are carried over individual 187 transport layer flows. However in the IETF RTCWEB WG, a need to use 188 a single 5-tuple for sending and receiving media associated with 189 multiple SDP media descriptions ("m=" lines) has been identified. 190 This would e.g. allow the usage of a single set of Interactive 191 Connectivity Establishment (ICE) [RFC5245] candidates for multiple 192 media descriptions. This in turn has made necessary to understand 193 the interpretation and usage of the SDP attributes defined for the 194 multiplexed media descriptions. 196 Given the number of SDP attributes registered with the IANA [IANA] 197 and possibility of new attributes being defined in the future, there 198 is need for generic future-proof framework to analyze these 199 attributes for their applicability in the transport multiplexing use- 200 cases. 202 The document starts with providing the motivation for requiring such 203 a framework. This is followed by introduction to the SDP attribute 204 analysis framework/procedures, following which several sections 205 applies the framework to the SDP attributes registered with the IANA 206 [IANA] 208 2. Terminology 210 The key words "MUST", "MUST NOT", "REQUIRED", "SHOULD", "SHOULD NOT", 211 "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be 212 interpreted as described in [RFC2119]. 214 3. Motivation 216 The time and complications of setting up ICE [RFC5245] and DTLS-SRTP 217 [RFC5763] transports for use by RTP, and conservation of ports, forms 218 an requirement to try and reduce the number of transport level flows 219 needed. This has resulted in the definition of ways, such as, 220 [I-D.ietf-mmusic-sdp-bundle-negotiation] and 221 [I-D.ietf-avt-multiplexing-rtp] to multiplex RTP over a single 222 transport flow in order to preserve network resources such as port 223 numbers. This imposes further restrictions on applicability of these 224 SDP attributes as they are defined today. 226 The specific problem is that there are attribute combinations which 227 make sense when specified on independent m-lines -- as with classical 228 SDP -- that do not make sense when those m-lines are then multiplexed 229 over the same transport. To give an obvious example, ICE permits 230 each m=line to have an independently specified ice-ufrag attribute. 231 However, if the media from multiple m-lines is multiplexed over the 232 same ICE component, then the meaning of media-level ice-ufrag 233 attributes becomes muddled. 235 As of today there are close to 250 SDP attributes registered with the 236 IANA [IANA] and more will be added in the future. There is no 237 clearly defined procedure to establish the validity/applicability of 238 these attribute when used with transport multiplexing. 240 4. SDP Attribute Analysis Framework 242 Attributes in an SDP session description can be defined at the 243 session-level and media-level. These attributes could be 244 semantically grouped as noted below. 246 o Attributes related to media content such as media type, encoding 247 schemes, payload types. 249 o Attributes specifying media transport characteristics like RTP/ 250 RTCP port numbers, network addresses, QOS. 252 o Metadata description attributes capturing session timing and 253 origin information. 255 o Attributes establishing relationships between media streams such 256 as grouping framework 258 With the above semantic grouping as the reference, the proposed 259 framework classifies each attribute into one of the following 260 categories: 262 4.1. Category: NORMAL 264 Attributes that can be independently specified when multiplexing and 265 retain their original semantics. 267 In the example given below, the direction and label attributes are 268 independently specified for audio and video m=lines. These 269 attributes are not impacted by multiplexing these media streams over 270 a single transport layer flow. 272 v=0 273 o=alice 2890844526 2890844527 IN IP4 host.atlanta.example.com 274 s= 275 c=IN IP4 host.atlanta.example.com 276 t=0 0 277 m=audio 49172 RTP/AVP 99 278 a=sendonly 279 a=label:1 280 a=rtpmap:99 iLBC/8000 281 m=video 49172 RTP/AVP 31 282 a=recvonly 283 a=label:2 284 a=rtpmap:31 H261/90000 286 4.2. Category: NOT RECOMMENDED 288 Attributes that are recommended against multiplexing since their 289 usage under multiplexing might lead to incorrect behavior. 291 Example: Multiplexing media descriptions having attribute zrtp-hash 292 defined with the media descriptions lacking it, would either 293 complicate the handling of multiplexed streams or might fail 294 multiplexing altogether. 296 v=0 297 o=bob 2890844527 2890844527 IN IP4 client.biloxi.example.com 298 s= 299 c=IN IP4 client.biloxi.example.com 300 t=0 0 301 m=audio 3456 RTP/AVP 97 // with zrtp 302 a=rtpmap:97 iLBC/8000 303 304 a=zrtp-hash:1.10 fe30efd02423cb054e50efd0248742ac7a52c8f91bc2 305 df881ae642c371ba46df 306 307 m=video 34567 RTP/AVP 31 //without zrtp 308 a=rtpmap:31 H261/90000 310 4.3. Category: IDENTICAL 312 Attributes that MUST be identical across all the media descriptions 313 being multiplexed. 315 Attributes such as rtcp-mux fall into this category. Since RTCP 316 reporting is done per RTP Session, RTCP Multiplexing MUST to enabled 317 for both the audio and video m=lines in the example below if they are 318 transported over a single 5-tuple. 320 v=0 321 o=bob 2890844527 2890844527 IN IP4 client.biloxi.example.com 322 s= 323 c=IN IP4 client.biloxi.example.com 324 t=0 0 325 m=audio 34567 RTP/AVP 97 326 a=rtcp-mux 327 m=video 34567 RTP/AVP 31 328 a=rtpmap:31 H261/90000 329 a=rtcp-mux 331 4.4. Category: SUM 333 Attributes can be set as they are normally used but software using 334 them in a multiplex case, MUST apply the sum of all the attributes 335 being multiplexed instead of trying to use each one. This is 336 typically used for bandwidth or other rate limiting attributes to the 337 underlining transport. 339 The software parsing the SDP sample below, should use the aggregate 340 Application Specific (AS) bandwidth value from the individual media 341 descriptions to determine the AS value for the multiplexed session. 342 Thus the calculated AS value would be 256+64 bytes for the given 343 example. 345 v=0 346 o=mhandley 2890844526 2890842807 IN IP4 126.16.64.4 347 c=IN IP4 client.biloxi.example.com 348 t=0 0 349 m=audio 49170 RTP/AVP 0 350 b=AS:64 351 m=video 51372 RTP/AVP 31 352 b=AS:256 354 4.5. Category: TRANSPORT 356 Attributes that can be set normally for multiple items in a 357 multiplexed group but the software MUST pick just one of the 358 attribute of the given type for use. The one chosen is the attribute 359 associated with the "m=" line that represents the information being 360 used for the transport of the RTP. 362 In the example below, "a=crypto" attribute is defined for both the 363 audio and the video m=lines. The video media line's a=crypto 364 attribute is chosen since its mid value (bar) appears first in the 365 a=group:BUNDLE line. This is due to BUNDLE grouping semantic 366 [I-D.ietf-mmusic-sdp-bundle-negotiation] which mandates the values 367 from m=line corresponding to the mid appearing first on the 368 a=group:BUNDLE line to be considered for setting up the RTP 369 Transport. 371 v=0 372 o=alice 2890844526 2890844527 IN IP4 host.atlanta.example.com 373 s= 374 c=IN IP4 host.atlanta.example.com 375 t=0 0 376 a=group:BUNDLE bar foo 377 m=audio 49172 RTP/AVP 99 378 a=mid:foo 379 a=crypto:1 AES_CM_128_HMAC_SHA1_80 380 inline:d0RmdmcmVCspeEc3QGZiNWpVLFJhQX1cfHAwJSoj|2^20|1:32 381 a=rtpmap:99 iLBC/8000 382 m=video 51374 RTP/AVP 31 383 a=mid:bar 384 a=crypto:1 AES_CM_128_HMAC_SHA1_80 385 inline:EcGZiNWpFJhQXdspcl1ekcmVCNWpVLcfHAwJSoj|2^20|1:32 386 a=rtpmap:96 H261/90000 388 4.6. Category: INHERIT 390 Attributes that encapsulate other SDP attributes and their 391 multiplexing characteristics are inherited from the attributes they 392 encapsulate. Such attributes as of today, are defined in [RFC3407], 393 [RFC5939] and [RFC6871] as part of a generic framework for indicating 394 and negotiating transport, media and media format related 395 capabilities in the SDP. 397 v=0 398 o=alice 2890844526 2890844527 IN IP4 host.atlanta.example.com 399 s= 400 c=IN IP4 host.atlanta.example.com 401 t=0 0 402 m=video 3456 RTP/AVP 100 403 a=rtpmap:100 VP8/90000 404 a=fmtp:100 max-fr=30;max-fs=8040 405 a=sqn: 0 406 a=cdsc: 1 video RTP/AVP 100 407 a=cpar: a=rtcp-mux 408 m=video 3456 RTP/AVP 101 409 a=rtpmap:101 VP8/90000 410 a=fmtp:100 max-fr=15;max-fs=1200 411 a=cdsc: 2 video RTP/AVP 101 412 a=cpar: a=rtcp-mux 414 In the above example , the category IDENTICAL is inherited for the 415 cpar encapsulated rtcp-mux attribute. 417 4.7. Category: IDENTICAL-PER-PT 419 Attributes that define the RTP payload configuration on per Payload 420 Type basis and MUST have identical values across all the media 421 descriptions for a given RTP Payload Type when repeated. 423 In the SDP example below, Payload Types 96 and 97 are repeated across 424 all the video m= lines and all the payload specific parameters (ex: 425 rtpmap, fmtp) are identical. 427 v=0 428 o=alice 2890844526 2890844527 IN IP4 host.atlanta.example.com 429 s= 430 c=IN IP4 host.atlanta.example.com 431 t=0 0 432 a=group:BUNDLE cam1, cam2 433 m = video 96 97 434 a=mid:cam1 435 a=rtpmap:96 H264/90000 436 a=fmtp:96 profile-level-id=42400d; max-fs=3600; max-fps=3000; 437 max-mbps=108000; max-br=1000 438 a=rtpmap:97 H264/90000 439 a=fmtp:97 profile-level-id=42400a; max-fs=240; max-fps=3000; 440 max-mbps=7200; max-br=200 441 m = video 96 97 442 a=mid:cam2 443 a=rtpmap:96 H264/90000 444 a=fmtp:96 profile-level-id=42400d; max-fs=3600; max-fps=3000; 445 max-mbps=108000; max-br=1000 446 a=rtpmap:97 H264/90000 447 a=fmtp:97 profile-level-id=42400a; max-fs=240; max-fps=3000; 448 max-mbps=7200; max-br=200 450 4.8. Category: SPECIAL 452 Attributes where the text in the source draft must be consulted for 453 further handling when multiplexed. 455 As an example, for the attribute extmap, the specification defining 456 the extension MUST be referred to understand the multiplexing 457 implications. 459 5. Analysis of Existing Attributes 461 This section analyzes attributes listed in IANA [IANA] grouped under 462 the IETF document that defines them. The "Level" column indicates 463 whether the attribute is currently specified as: 465 o S -- Session level 467 o M -- Media level 469 o B -- Both 471 o SR -- Source-level (for a single SSRC) 473 5.1. RFC4566 - SDP: Session Description Protocol 475 RFC4566 [RFC4566] defines the Session Description Protocol (SDP) that 476 is intended for describing multimedia sessions for the purposes of 477 session announcement, session invitation, and other forms of 478 multimedia session initiation 480 +------------+--------------------------+-------+-------------------+ 481 | Attr Name | Notes | Level | Category | 482 +------------+--------------------------+-------+-------------------+ 483 | sendrecv | Not impacted | B | NORMAL | 484 | | | | | 485 | sendonly | Not impacted | B | NORMAL | 486 | | | | | 487 | recvonly | Not impacted | B | NORMAL | 488 | | | | | 489 | inactive | Not impacted | B | NORMAL | 490 | | | | | 491 | cat | Not impacted | S | NORMAL | 492 | | | | | 493 | ptime | The attribute value must | M | IDENTICAL-PER-PT | 494 | | be same for a given | | | 495 | | codec configuration | | | 496 | | | | | 497 | maxptime | The attribute value must | M | IDENTICAL-PER-PT | 498 | | be same for a given | | | 499 | | codec configuration | | | 500 | | | | | 501 | orient | Not Impacted | M | NORMAL | 502 | | | | | 503 | framerate | The attribute value must | M | IDENTICAL-PER-PT | 504 | | be same for a given | | | 505 | | codec configuration | | | 506 | | | | | 507 | quality | Not Impacted | M | NORMAL | 508 | | | | | 509 | rtpmap | The attribute value must | M | IDENTICAL-PER-PT | 510 | | be same for a given | | | 511 | | codec configuration | | | 512 | | | | | 513 | fmtp | The attribute value must | M | IDENTICAL-PER-PT | 514 | | be same for a given | | | 515 | | codec configuration | | | 516 | | | | | 517 | keywds | Not impacted | S | NORMAL | 518 | | | | | 519 | type | Not Impacted | S | NORMAL | 520 | | | | | 521 | tool | Not Impacted | S | NORMAL | 522 | | | | | 523 | charset | Not Impacted | S | NORMAL | 524 | | | | | 525 | sdplang | Not Impacted | B | NORMAL | 526 | | | | | 527 | lang | Not Impacted | B | NORMAL | 528 | | | | | 529 +------------+--------------------------+-------+-------------------+ 531 RFC4566 Attribute Analysis 533 5.2. RFC4585 - RTP/AVPF 535 RFC4585 [RFC4585] defines an extension to the Audio-visual Profile 536 (AVP) that enables receivers to provide, statistically, more 537 immediate feedback to the senders and thus allows for short-term 538 adaptation and efficient feedback-based repair mechanisms to be 539 implemented. 541 +----------+-------------------------------------+-------+----------+ 542 | Attr | Notes | Level | Category | 543 | Name | | | | 544 +----------+-------------------------------------+-------+----------+ 545 | rtcp-fb | The combination of a particular | M | NORMAL | 546 | | Payload Type along with the m=line | | | 547 | | identify the scope and | | | 548 | | applicability of a given RTCP | | | 549 | | feedback to a particular RTP | | | 550 | | Stream. | | | 551 | | | | | 552 +----------+-------------------------------------+-------+----------+ 554 RFC4585 Attribute Analysis 556 Since RTCP feedback attributes are Payload Type (PT) scoped, the 557 usage of identical Payload Type values across multiplexed m=lines is 558 described in [I-D.ietf-mmusic-sdp-bundle-negotiation]. 560 5.3. RFC5761 - Multiplexing RTP and RTCP 562 RFC5761 [RFC5761] discusses issues that arise when multiplexing RTP 563 data packets and RTP Control Protocol (RTCP) packets on a single UDP 564 port. It describes when such multiplexing is and is not appropriate, 565 and it explains how the Session Description Protocol (SDP) can be 566 used to signal multiplexed sessions. 568 +-----------+----------------------------------+-------+------------+ 569 | Name | Notes | Level | Category | 570 +-----------+----------------------------------+-------+------------+ 571 | rtcp-mux | RTP and RTCP Multiplexing affect | M | IDENTICAL | 572 | | the entire RTP Session | | | 573 | | | | | 574 +-----------+----------------------------------+-------+------------+ 576 RFC5761 Attribute Analysis 578 5.4. RFC4574 - SDP Label Attribute 580 RFC4574 [RFC4574] defines a new Session Description Protocol (SDP) 581 media-level attribute: "label". The "label" attribute carries a 582 pointer to a media stream in the context of an arbitrary network 583 application that uses SDP. The sender of the SDP document can attach 584 the "label" attribute to a particular media stream or streams. The 585 application can then use the provided pointer to refer to each 586 particular media stream in its context. 588 +--------+---------------+-------+----------+ 589 | Name | Notes | Level | Category | 590 +--------+---------------+-------+----------+ 591 | label | Not Impacted | M | NORMAL | 592 | | | | | 593 +--------+---------------+-------+----------+ 595 RFC4574 Attribute Analysis 597 5.5. RFC5432 - QoS Mechanism Selection in SDP 599 RFC5432 [RFC5432] defines procedures to negotiate QOS mechanisms 600 using the Session Description Protocol (SDP) offer/answer model. 602 +----------------+-------------------------------+-------+----------+ 603 | Name | Notes | Level | Category | 604 +----------------+-------------------------------+-------+----------+ 605 | qos-mech-send | A single DSCP code point per | B | NORMAL | 606 | | flow being multiplexed | | | 607 | | doesn't impact multiplexing | | | 608 | | since QOS mechanisms are | | | 609 | | signaled/scoped per flow. | | | 610 | | | | | 611 | qos-mech-recv | A single DSCP code point per | B | NORMAL | 612 | | flow being multiplexed | | | 613 | | doesn't impact multiplexing | | | 614 | | since QOS mechanisms are | | | 615 | | signaled/scoped per flow. | | | 616 | | | | | 617 +----------------+-------------------------------+-------+----------+ 619 RFC5432 Attribute Analysis 621 Multiplexing consideration when multiple DSCP code points are defined 622 per flow can be found in Section 14 624 5.6. RFC4568 - SDP Security Descriptions 626 RFC4568 [RFC4568] defines a Session Description Protocol (SDP) 627 cryptographic attribute for unicast media streams. The attribute 628 describes a cryptographic key and other parameters that serve to 629 configure security for a unicast media stream in either a single 630 message or a roundtrip exchange. 632 +--------+---------------------------------------+-------+----------+ 633 | Name | Notes | Level | Category | 634 +--------+---------------------------------------+-------+----------+ 635 | crypto | Refer to section 6.2.5 of [I-D.ietf-m | M | SPECIAL | 636 | | music-sdp-bundle-negotiation] | | | 637 | | | | | 638 +--------+---------------------------------------+-------+----------+ 640 RFC4568 Attribute Analysis 642 If the multiplexing scheme cannot ensure unique SSRCs across all the 643 media lines, multiplexing MUST NOT be performed. 645 5.7. RFC5762 - RTP over DCCP 647 The Real-time Transport Protocol (RTP) is a widely used transport for 648 real-time multimedia on IP networks. The Datagram Congestion Control 649 Protocol (DCCP) is a transport protocol that provides desirable 650 services for real-time applications. RFC5762 [RFC5762] specifies a 651 mapping of RTP onto DCCP, along with associated signaling, such that 652 real-time applications can make use of the services provided by DCCP 654 +--------------------+---------------------+---------+--------------+ 655 | Name | Notes | Current | Category | 656 +--------------------+---------------------+---------+--------------+ 657 | dccp-service-code | If RFC6773 is not | M | NOT | 658 | | being used in | | RECOMMENDED | 659 | | addition to | | | 660 | | RFC5762, the port | | | 661 | | in the m= line is a | | | 662 | | DCCP port. DCCP | | | 663 | | being a connection | | | 664 | | oriented protocol, | | | 665 | | does not allow | | | 666 | | multiple | | | 667 | | connections on the | | | 668 | | same 5-tuple. | | | 669 | | | | | 670 +--------------------+---------------------+---------+--------------+ 672 RFC5762 Attribute Analysis 674 If RFC6773 is being used in addition to RFC5762 and provided that 675 DCCP-in-UDP layer has additional demultiplexing, then it may be 676 possible to use different DCCP service codes for each DCCP flow, 677 given each uses a different DCCP port. Although doing so might 678 conflict with the media type of the m= line. None of this is 679 standardized yet and it wouldn't work as explained. Hence 680 multiplexing MUST NOT be performed even in this alternate scenario. 682 5.8. RFC6773 - DCCP-UDP Encapsulation 684 RFC6773 [RFC6773] document specifies an alternative encapsulation of 685 the Datagram Congestion Control Protocol (DCCP), referred to as DCCP- 686 UDP. This encapsulation allows DCCP to be carried through the 687 current generation of Network Address Translation (NAT) middle boxes 688 without modification of those middle boxes 689 +------------+-------------------------------+-------+--------------+ 690 | Name | Notes | Level | Category | 691 +------------+-------------------------------+-------+--------------+ 692 | dccp-port | Multiplexing MUST NOT be | M | NOT | 693 | | performed due to potential | | RECOMMENDED | 694 | | conflict between the port | | | 695 | | used for DCCP | | | 696 | | en/decapsulation and the RTP. | | | 697 | | | | | 698 +------------+-------------------------------+-------+--------------+ 700 RFC6773 Attribute Analysis 702 Since RFC6773 is about tunnelling DCCP in UDP, with the UDP port 703 being the port of the DCCP en-/de-capsulation service. This 704 encapsulation allows arbitrary DCCP packets to be encapsulated and 705 the DCCP port choosen MAY conflict with the port chosen for the RTP 706 traffic. 708 For multiplexing several DCCP-in-UDP encapsulations on the same UDP 709 port, with no RTP traffic on the same port implies collapsing several 710 DCCP port spaces together. This MAY or MAY NOT work depending on the 711 nature of DCCP encapsulations and ports choses thus rendering it to 712 be very application dependant. 714 5.9. RFC5506 - Reduced-Size RTCP in RTP Profile 716 RFC5506 [RFC5506] discusses benefits and issues that arise when 717 allowing Real-time Transport Protocol (RTCP) packets to be 718 transmitted with reduced size. 720 +-------------+--------------------------------+-------+------------+ 721 | Name | Notes | Level | Category | 722 +-------------+--------------------------------+-------+------------+ 723 | rtcp-rsize | Reduced size RTCP affects the | M | IDENTICAL | 724 | | entire RTP Session | | | 725 | | | | | 726 +-------------+--------------------------------+-------+------------+ 728 RFC5506 Attribute Analysis 730 5.10. RFC6787 - Media Resource Control Protocol Version 2 732 The Media Resource Control Protocol Version 2 (MRCPv2) allows client 733 hosts to control media service resources such as speech synthesizers, 734 recognizers, verifiers, and identifiers residing in servers on the 735 network. MRCPv2 is not a "stand-alone" protocol -- it relies on 736 other protocols, such as the Session Initiation Protocol (SIP), to 737 coordinate MRCPv2 clients and servers and manage sessions between 738 them, and the Session Description Protocol (SDP) to describe, 739 discover, and exchange capabilities. It also depends on SIP and SDP 740 to establish the media sessions and associated parameters between the 741 media source or sink and the media server. Once this is done, the 742 MRCPv2 exchange operates over the control session established above, 743 allowing the client to control the media processing resources on the 744 speech resource server. RFC6787 [RFC6787] defines attributes for 745 this purpose. 747 +-----------+---------------+-------+----------+ 748 | Name | Notes | Level | Category | 749 +-----------+---------------+-------+----------+ 750 | resource | Not Impacted | M | NORMAL | 751 | | | | | 752 | channel | Not Impacted | M | NORMAL | 753 | | | | | 754 +-----------+---------------+-------+----------+ 756 RFC6787 Attribute Analysis 758 5.11. RFC5245 - Interactive Connectivity Establishment (ICE) 760 RFC5245 [RFC5245] describes a protocol for Network Address 761 Translator(NAT) traversal for UDP-based multimedia sessions 762 established with the offer/answer model. This protocol is called 763 Interactive Connectivity Establishment (ICE). ICE makes use of the 764 Session Traversal Utilities for NAT (STUN) protocol and its 765 extension,Traversal Using Relay NAT (TURN). ICE can be used by any 766 protocol utilizing the offer/answer model, such as the Session 767 Initiation Protocol (SIP). 769 +--------------------+-------------------------+-------+------------+ 770 | Name | Notes | Level | Category | 771 +--------------------+-------------------------+-------+------------+ 772 | ice-lite | Not Impacted | S | NORMAL | 773 | | | | | 774 | ice-options | Not Impacted | S | NORMAL | 775 | | | | | 776 | ice-pwd | ice-pwd MUST be the one | B | TRANSPORT | 777 | | that corresponds to the | | | 778 | | m=line chosen for | | | 779 | | setting up the | | | 780 | | underlying transport | | | 781 | | flow | | | 782 | | | | | 783 | ice-ufrag | ice-ufrag MUST be the | B | TRANSPORT | 784 | | one that corresponds to | | | 785 | | the m=line chosen for | | | 786 | | setting up the | | | 787 | | underlying transport | | | 788 | | flow | | | 789 | | | | | 790 | candidate | ice candidate MUST be | M | TRANSPORT | 791 | | the one that | | | 792 | | corresponds to the | | | 793 | | m=line chosen for | | | 794 | | setting up the | | | 795 | | underlying transport | | | 796 | | flow | | | 797 | | | | | 798 | remote-candidates | ice remote candidate | M | TRANSPORT | 799 | | MUST be the one that | | | 800 | | corresponds to the | | | 801 | | m=line chosen for | | | 802 | | setting up the | | | 803 | | underlying transport | | | 804 | | flow | | | 805 | | | | | 806 +--------------------+-------------------------+-------+------------+ 808 RFC5245 Attribute Analysis 810 5.12. RFC5285 - RTP Header Extensions 812 RFC5285 [RFC5285] provides a general mechanism to use the header 813 extension feature of RTP (the Real-Time Transport Protocol). It 814 provides the option to use a small number of small extensions in each 815 RTP packet, where the universe of possible extensions is large and 816 registration is de-centralized. The actual extensions in use in a 817 session are signaled in the setup information for that session. 819 +---------+--------------------------------------+-------+----------+ 820 | Name | Notes | Level | Category | 821 +---------+--------------------------------------+-------+----------+ 822 | extmap | Specific RTP extension document MUST | B | SPECIAL | 823 | | be referred | | | 824 | | | | | 825 +---------+--------------------------------------+-------+----------+ 827 RFC5285 Attribute Analysis 829 5.13. RFC3605 - RTCP attribute in SDP 831 Originally, SDP assumed that RTP and RTCP were carried on consecutive 832 ports. However, this is not always true when NATs are involved. 833 [RFC3605] specifies an early mechanism to indicate the RTCP port. 835 +-------+--------------------------------------+-------+------------+ 836 | Name | Notes | Level | Category | 837 +-------+--------------------------------------+-------+------------+ 838 | rtcp | Identical attribute value MUST be | M | IDENTICAL | 839 | | used since the RTCP port affects the | | | 840 | | entire RTP session. | | | 841 | | | | | 842 +-------+--------------------------------------+-------+------------+ 844 RFC3605 Attribute Analysis 846 5.14. RFC5576 - Source-Specific SDP Attributes 848 RFC5576 [RFC5576] defines a mechanism to describe RTP media sources, 849 which are identified by their synchronization source (SSRC) 850 identifiers, in SDP, to associate attributes with these sources, and 851 to express relationships among sources. It also defines several 852 source-level attributes that can be used to describe properties of 853 media sources. 855 +----------------+----------------------+-------+-------------------+ 856 | Name | Notes | Level | Category | 857 +----------------+----------------------+-------+-------------------+ 858 | ssrc | Refer to Notes below | M | NORMAL | 859 | | | | | 860 | ssrc-group | Refer to section | M | SPECIAL | 861 | | Section 9 for | | | 862 | | specific analysis of | | | 863 | | the grouping | | | 864 | | semantics | | | 865 | | | | | 866 | cname | Not Impacted [Open | SR | NORMAL | 867 | | Issues: what are the | | | 868 | | rules for CNAME | | | 869 | | duplication across | | | 870 | | sessions?] | | | 871 | | | | | 872 | previous-ssrc | Refer to notes below | SR | NORMAL | 873 | | | | | 874 | fmtp | The attribute value | SR | IDENTICAL-PER-PT | 875 | | must be same for a | | | 876 | | given codec | | | 877 | | configuration | | | 878 | | | | | 879 +----------------+----------------------+-------+-------------------+ 881 RFC5576 Attribute Analysis 883 If SSRCs are repeated across m=lines being multiplexed, they MUST all 884 represent the same underlying RTP Source. For more details on 885 implications of SSRC values with in the context of multiplexing 886 please refer to [I-D.ietf-mmusic-sdp-bundle-negotiation] 888 5.15. RFC6236 - Image Attributes in SDP 890 RFC6236 [RFC6236] proposes a new generic session setup attribute to 891 make it possible to negotiate different image attributes such as 892 image size. A possible use case is to make it possible for a low-end 893 hand-held terminal to display video without the need to rescale the 894 image,something that may consume large amounts of memory and 895 processing power. The document also helps to maintain an optimal 896 bitrate for video as only the image size that is desired by the 897 receiver is transmitted. 899 +------------+--------------------------+-------+-------------------+ 900 | Name | Notes | Level | Category | 901 +------------+--------------------------+-------+-------------------+ 902 | imageattr | The attribute value must | M | IDENTICAL-PER-PT | 903 | | be same for a given | | | 904 | | codec configuration | | | 905 | | | | | 906 +------------+--------------------------+-------+-------------------+ 908 RFC6236 Attribute Analysis 910 5.16. RFC6285 - Rapid Acquisition of Multicast RTP Sessions 912 RFC6285 [RFC6285] describes a method using the existing RTP and RTP 913 Control Protocol (RTCP) machinery that reduces the acquisition delay. 914 In this method, an auxiliary unicast RTP session carrying the 915 Reference Information to the receiver precedes or accompanies the 916 multicast stream. This unicast RTP flow can be transmitted at a 917 faster than natural bitrate to further accelerate the acquisition. 918 The motivating use case for this capability is multicast applications 919 that carry real-time compressed audio and video. 921 +---------------+-------------------+-------+------------------+ 922 | Name | Notes | Level | Category | 923 +---------------+-------------------+-------+------------------+ 924 | rams-updates | Not recommended | M | NOT RECOMMENDED | 925 | | | | | 926 +---------------+-------------------+-------+------------------+ 928 RFC6285 Attribute Analysis 930 5.17. RFC6230 - Media Control Channel Framework 932 RFC6230 [RFC6230] describes a framework and protocol for application 933 deployment where the application programming logic and media 934 processing are distributed. This implies that application 935 programming logic can seamlessly gain access to appropriate resources 936 that are not co-located on the same physical network entity. The 937 framework uses the Session Initiation Protocol (SIP) to establish an 938 application-level control mechanism between application servers and 939 associated external servers such as media servers. 941 +---------+-----------------+-------+----------+ 942 | Name | Notes | Level | Category | 943 +---------+-----------------+-------+----------+ 944 | cfw-id | Not Applicable | M | NORMAL | 945 | | | | | 946 +---------+-----------------+-------+----------+ 948 RFC6230 Attribute Analysis 950 5.18. RFC6364 - SDP Elements for FEC Framework 952 RFC6364 [RFC6364] specifies the use of the Session Description 953 Protocol (SDP) to describe the parameters required to signal the 954 Forward Error Correction (FEC) Framework Configuration Information 955 between the sender(s) and receiver(s). This document also provides 956 examples that show the semantics for grouping multiple source and 957 repair flows together for the applications that simultaneously use 958 multiple instances of the FEC Framework. 960 +------------------+-------+-------+----------+ 961 | Name | Notes | Level | Category | 962 +------------------+-------+-------+----------+ 963 | fec-source-flow | | M | SPECIAL | 964 | | | | | 965 | fec-repair-flow | | M | SPECIA: | 966 | | | | | 967 | repair-window | | M | SPECIAL | 968 | | | | | 969 +------------------+-------+-------+----------+ 971 RFC6364 Attribute Analysis 973 5.19. RFC4796 - Content Attribute 975 RFC4796 [RFC4796] defines a new Session Description Protocol (SDP) 976 media-level attribute, 'content'. The 'content' attribute defines 977 the content of the media stream to a more detailed level than the 978 media description line. The sender of an SDP session description can 979 attach the 'content' attribute to one or more media streams. The 980 receiving application can then treat each media stream differently 981 (e.g., show it on a big or small screen) based on its content. 983 +----------+---------------+-------+----------+ 984 | Name | Notes | Level | Category | 985 +----------+---------------+-------+----------+ 986 | content | Not Impacted | M | NORMAL | 987 | | | | | 988 +----------+---------------+-------+----------+ 990 RFC4796 Attribute Analysis 992 5.20. RFC3407 - SDP Simple Capability Declaration 994 RFC3407 [RFC3407] defines a set of Session Description Protocol (SDP) 995 attributes that enables SDP to provide a minimal and backwards 996 compatible capability declaration mechanism. 998 +----------+------------------------+-------+----------+ 999 | Name | Notes | Level | Category | 1000 +----------+------------------------+-------+----------+ 1001 | sqn | Not Impacted | B | NORMAL | 1002 | | | | | 1003 | cdsc | Not Impacted. | B | NORMAL | 1004 | | | | | 1005 | cpar | Refer to Section 15 | B | INHERIT | 1006 | | | | | 1007 | cparmin | Refer to notes below | B | SPECIAL | 1008 | | | | | 1009 | cparmax | Refer to notes below | B | SPECIAL | 1010 | | | | | 1011 +----------+------------------------+-------+----------+ 1013 RFC3407 Attribute Analysis 1015 Since the attributes (a=cparmin and a=cparmax) defines minimum and 1016 maximum numerical values associated with the attributed described in 1017 a=cpar, it is recommended to consult the document defining the 1018 attribute for dealing under media stream multiplexing. 1020 5.21. RFC6284 - Port Mapping between Unicast and Multicast RTP Sessions 1022 RFC6284 [RFC6284] presents a port mapping solution that allows RTP 1023 receivers to choose their own ports for an auxiliary unicast session 1024 in RTP applications using both unicast and multicast services. The 1025 solution provides protection against denial-of-service or packet 1026 amplification attacks that could be used to cause one or more RTP 1027 packets to be sent to a victim client 1028 +------------------+-------------------------+-------+--------------+ 1029 | Name | Notes | Level | Category | 1030 +------------------+-------------------------+-------+--------------+ 1031 | portmapping-req | Not recommended, if | M | NOT | 1032 | | port mapping is | | RECOMMENDED | 1033 | | required by the | | | 1034 | | application | | | 1035 | | | | | 1036 +------------------+-------------------------+-------+--------------+ 1038 RFC6284 Attribute Analysis 1040 5.22. RFC6714 - MSRP-CEMA 1042 RFC6714 [RFC6714] defines a Message Session Relay Protocol (MSRP) 1043 extension, Connection Establishment for Media Anchoring (CEMA). 1044 Support of this extension is OPTIONAL. The extension allows middle 1045 boxes to anchor the MSRP connection, without the need for middle 1046 boxes to modify the MSRP messages; thus, it also enables secure end- 1047 to-end MSRP communication in networks where such middle boxes are 1048 deployed. This document also defines a Session Description Protocol 1049 (SDP) attribute, 'msrp-cema', that MSRP endpoints use to indicate 1050 support of the CEMA extension. 1052 +------------+---------------+-------+----------+ 1053 | Name | Notes | Level | Category | 1054 +------------+---------------+-------+----------+ 1055 | msrp-cema | Not Impacted | M | NORMAL | 1056 | | | | | 1057 +------------+---------------+-------+----------+ 1059 RFC6714 Attribute Analysis 1061 5.23. RFC4583 - SDP Format for BFCP Streams 1063 RFC4583 [RFC4583] document specifies how to describe Binary Floor 1064 Control Protocol (BFCP) streams in Session Description Protocol (SDP) 1065 descriptions. User agents using the offer/answer model to establish 1066 BFCP streams use this format in their offers and answers 1067 +------------+---------------------------------+-------+------------+ 1068 | Name | Notes | Level | Category | 1069 +------------+---------------------------------+-------+------------+ 1070 | floorctrl | Must be repeated across all the | M | IDENTICAL | 1071 | | multiplexed m=lines | | | 1072 | | | | | 1073 | confid | Not Impacted | M | NORMAL | 1074 | | | | | 1075 | userid | Not Impacted | M | NORMAL | 1076 | | | | | 1077 | floorid | The floorid MUST be globally | M | NORMAL | 1078 | | unique | | | 1079 | | | | | 1080 +------------+---------------------------------+-------+------------+ 1082 RFC4583 Attribute Analysis 1084 5.24. RFC5547 - SDP Offer/Answer for File Transfer 1086 RFC5547 [RFC5547] provides a mechanism to negotiate the transfer of 1087 one or more files between two endpoints by using the Session 1088 Description Protocol (SDP) offer/answer model specified in [RFC3264]. 1090 +----------------------+---------------+-------+----------+ 1091 | Name | Notes | Level | Category | 1092 +----------------------+---------------+-------+----------+ 1093 | file-selector | Not Impacted | M | NORMAL | 1094 | | | | | 1095 | file-transfer-id | Not Impacted | M | NORMAL | 1096 | | | | | 1097 | file-disposition | Not Impacted | M | NORMAL | 1098 | | | | | 1099 | file-date | Not Impacted | M | NORMAL | 1100 | | | | | 1101 | file-iconfile-range | Not Impacted | M | NORMAL | 1102 | | | | | 1103 +----------------------+---------------+-------+----------+ 1105 RFC5547 Attribute Analysis 1107 5.25. RFC6489 - SDP and RTP Media Loopback Extension 1109 [MEDIA_LOOPBACK] adds new SDP media types and attributes, which 1110 enable establishment of media sessions where the media is looped back 1111 to the transmitter. Such media sessions will serve as monitoring and 1112 troubleshooting tools by providing the means for measurement of more 1113 advanced VoIP, Real-time Text and Video over IP performance metrics. 1115 +------------------------------+----------------+-------+----------+ 1116 | Name | Notes | Level | Category | 1117 +------------------------------+----------------+-------+----------+ 1118 | loopback rtp-pkt-loopback | Not Impacted | M | NORMAL | 1119 | | | | | 1120 | loopback rtp-media-loopback | Not Impacted | M | NORMAL | 1121 | | | | | 1122 | loopback-source | Not Impacted | M | NORMAL | 1123 | | | | | 1124 | loopback-mirror | Not Impacted | M | NORMAL | 1125 | | | | | 1126 +------------------------------+----------------+-------+----------+ 1128 An Extension to the Session Description Protocol (SDP) and Real-time 1129 Transport Protocol (RTP) for Media Loopback 1131 5.26. RFC5760 - RTCP with Unicast Feedback 1133 RFC5760 [RFC5760] specifies an extension to the Real-time Transport 1134 Control Protocol (RTCP) to use unicast feedback to a multicast 1135 sender. The proposed extension is useful for single-source multicast 1136 sessions such as Source-Specific Multicast (SSM) communication where 1137 the traditional model of many-to-many group communication is either 1138 not available or not desired. 1140 +---------------+------------------------------+-------+------------+ 1141 | Name | Notes | Level | Category | 1142 +---------------+------------------------------+-------+------------+ 1143 | rtcp-unicast | The attribute MUST be | M | IDENTICAL | 1144 | | reported across all m=lines | | | 1145 | | multiplexed | | | 1146 | | | | | 1147 +---------------+------------------------------+-------+------------+ 1149 RFC5760 Attribute Analysis 1151 5.27. RFC3611 - RTCP XR 1153 RFC3611 [RFC3611] defines the Extended Report (XR) packet type for 1154 the RTP Control Protocol (RTCP), and defines how the use of XR 1155 packets can be signaled by an application if it employs the Session 1156 Description Protocol (SDP). 1158 +----------+---------------+-------+----------+ 1159 | Name | Notes | Level | Category | 1160 +----------+---------------+-------+----------+ 1161 | rtcp-xr | Not Impacted | B | NORMAL | 1162 | | | | | 1163 +----------+---------------+-------+----------+ 1165 RFC3611 Attribute Analysis 1167 5.28. RFC5939 - SDP Capability Negotiation 1169 RFC5939 [RFC5939] defines a general SDP Capability Negotiation 1170 framework. It also specifies how to provide attributes and transport 1171 protocols as capabilities and negotiate them using the framework. 1172 Extensions for other types of capabilities (e.g., media types and 1173 media formats) may be provided in other documents. 1175 +-------+-------------------------------+-------+----------+ 1176 | Name | Notes | Level | Category | 1177 +-------+-------------------------------+-------+----------+ 1178 | pcfg | Refer to section Section 15 | M | INHERIT | 1179 | | | | | 1180 | acfg | Refer to section Section 15 | M | INHERIT | 1181 | | | | | 1182 | csup | Not Impacted | B | NORMAL | 1183 | | | | | 1184 | creq | Not Impacted | B | NORMAL | 1185 | | | | | 1186 | acap | Refer to section Section 15 | B | INHERIT | 1187 | | | | | 1188 | tcap | Refer to section Section 15 | B | INHERIT | 1189 | | | | | 1190 +-------+-------------------------------+-------+----------+ 1192 RFC5939 Attribute Analysis 1194 5.29. RFC6871- SDP Media Capabilities Negotiation 1196 Session Description Protocol (SDP) capability negotiation provides a 1197 general framework for indicating and negotiating capabilities in SDP. 1198 The base framework defines only capabilities for negotiating 1199 transport protocols and attributes. [RFC6871] extends the framework 1200 by defining media capabilities that can be used to negotiate media 1201 types and their associated parameters. 1203 +---------+------------------------------+-------+----------+ 1204 | Name | Notes | Level | Category | 1205 +---------+------------------------------+-------+----------+ 1206 | rmcap | Refer to section Section 15 | B | INHERIT | 1207 | | | | | 1208 | omcap | Refer to section Section 15 | B | INHERIT | 1209 | | | | | 1210 | mfcap | Refer to section Section 15 | B | INHERIT | 1211 | | | | | 1212 | mscap | Refer to section Section 15 | B | INHERIT | 1213 | | | | | 1214 | lcfg | Not Impacted | B | NORMAL | 1215 | | | | | 1216 | sescap | Refer to section Section 15 | S | INHERIT | 1217 | | | | | 1218 +---------+------------------------------+-------+----------+ 1220 Session Description Protocol (SDP) Media Capabilities Negotiation 1222 5.30. RFC4567 - Key Management Extensions for SDP and RTSP 1224 RFC4567 [RFC4567] defines general extensions for Session Description 1225 Protocol (SDP) and Real Time Streaming Protocol (RTSP) to carry 1226 messages, as specified by a key management protocol, in order to 1227 secure the media. These extensions are presented as a framework, to 1228 be used by one or more key management protocols. As such, their use 1229 is meaningful only when complemented by an appropriate key management 1230 protocol. 1232 +-----------+----------------------------------+-------+------------+ 1233 | Name | Notes | Level | Category | 1234 +-----------+----------------------------------+-------+------------+ 1235 | key-mgmt | Key management protocol MUST be | B | IDENTICAL | 1236 | | identical across all the m=lines | | | 1237 | | | | | 1238 +-----------+----------------------------------+-------+------------+ 1240 RFC4567 Attribute Analysis 1242 5.31. RFC4572 - Comedia over TLS in SDP 1244 RFC4572 [RFC4572] specifies how to establish secure connection- 1245 oriented media transport sessions over the Transport Layer Security 1246 (TLS) protocol using the Session Description Protocol (SDP). It 1247 defines a new SDP protocol identifier, 'TCP/TLS'. It also defines 1248 the syntax and semantics for an SDP 'fingerprint' attribute that 1249 identifies the certificate that will be presented for the TLS 1250 session. This mechanism allows media transport over TLS connections 1251 to be established securely, so long as the integrity of session 1252 descriptions is assured. 1254 +--------------+-------------------------------+-------+------------+ 1255 | Name | Notes | Level | Category | 1256 +--------------+-------------------------------+-------+------------+ 1257 | fingerprint | Fingerprint value from the | B | TRANSPORT | 1258 | | m=line defining the | | | 1259 | | underlying transport is | | | 1260 | | chosen | | | 1261 | | | | | 1262 +--------------+-------------------------------+-------+------------+ 1264 RFC4572 Attribute Analysis 1266 5.32. RFC4570 - SDP Source Filters 1268 RFC4570 [RFC4570] describes how to adapt the Session Description 1269 Protocol (SDP) to express one or more source addresses as a source 1270 filter for one or more destination "connection" addresses. It 1271 defines the syntax and semantics for an SDP "source-filter" attribute 1272 that may reference either IPv4 or IPv6 address(es) as either an 1273 inclusive or exclusive source list for either multicast or unicast 1274 destinations. In particular, an inclusive source-filter can be used 1275 to specify a Source-Specific Multicast (SSM) session 1277 +----------------+-----------------------------+-------+------------+ 1278 | Name | Notes | Level | Category | 1279 +----------------+-----------------------------+-------+------------+ 1280 | source-filter | The attribute MUST be | B | IDENTICAL | 1281 | | repeated across all m=lines | | | 1282 | | multiplexed | | | 1283 | | | | | 1284 +----------------+-----------------------------+-------+------------+ 1286 RFC4570 Attribute Analysis 1288 5.33. RFC6128 - RTCP Port for Multicast Sessions 1290 The Session Description Protocol (SDP) has an attribute that allows 1291 RTP applications to specify an address and a port associated with the 1292 RTP Control Protocol (RTCP) traffic. In RTP-based source-specific 1293 multicast (SSM) sessions, the same attribute is used to designate the 1294 address and the RTCP port of the Feedback Target in the SDP 1295 description. However, the RTCP port associated with the SSM session 1296 itself cannot be specified by the same attribute to avoid ambiguity, 1297 and thus, is required to be derived from the "m=" line of the media 1298 description. Deriving the RTCP port from the "m=" line imposes an 1299 unnecessary restriction. RFC6128 [RFC6128] removes this restriction 1300 by introducing a new SDP attribute. 1302 +-----------------+----------------------------+-------+------------+ 1303 | Name | Notes | Level | Category | 1304 +-----------------+----------------------------+-------+------------+ 1305 | multicast-rtcp | Multicast RTCP port MUST | B | IDENTICAL | 1306 | | be identical across all | | | 1307 | | the m=lines | | | 1308 | | | | | 1309 +-----------------+----------------------------+-------+------------+ 1311 RFC6128 Attribute Analysis 1313 5.34. RFC6189 - ZRTP 1315 RFC6189 [RFC6189] defines ZRTP, a protocol for media path Diffie- 1316 Hellman exchange to agree on a session key and parameters for 1317 establishing unicast Secure Real-time Transport Protocol (SRTP) 1318 sessions for Voice over IP (VoIP) applications. 1320 +------------+-------------------------------+-------+--------------+ 1321 | Name | Notes | Level | Category | 1322 +------------+-------------------------------+-------+--------------+ 1323 | zrtp-hash | Complicates if all the | M | NOT | 1324 | | m=lines are not authenticated | | RECOMMENDED | 1325 | | as given in the example below | | | 1326 | | | | | 1327 +------------+-------------------------------+-------+--------------+ 1329 RFC6189 Attribute Analysis 1331 Example: Multiplexing media descriptions having attribute zrtp-hash 1332 defined with the media descriptions lacking it, would either 1333 complicate the handling of multiplexed stream or fail multiplexing. 1335 v=0 1336 o=bob 2890844527 2890844527 IN IP4 client.biloxi.example.com 1337 s= 1338 c=IN IP4 client.biloxi.example.com 1339 t=0 0 1340 m=audio 3456 RTP/AVP 97 1341 a=rtpmap:97 iLBC/8000 1342 1343 a=zrtp-hash:1.10 fe30efd02423cb054e50efd0248742ac7a52c8f91bc2 1344 df881ae642c371ba46df 1345 1346 m=video 34567 RTP/AVP 31 1347 a=rtpmap:31 H261/90000 1349 5.35. RFC4145 - Connection-Oriented Media 1351 RFC4145 [RFC4145] describes how to express media transport over TCP 1352 using the Session Description Protocol (SDP). It defines the SDP 1353 'TCP' protocol identifier, the SDP 'setup' attribute, which describes 1354 the connection setup procedure, and the SDP 'connection' attribute, 1355 which handles connection reestablishment. 1357 +-------------+--------------------------------+-------+------------+ 1358 | Name | Notes | Level | Category | 1359 +-------------+--------------------------------+-------+------------+ 1360 | setup | MUST be identical across all | B | IDENTICAL | 1361 | | m=lines | | | 1362 | | | | | 1363 | connection | MUST be identical across all | B | IDENTICAL | 1364 | | m=lines | | | 1365 | | | | | 1366 +-------------+--------------------------------+-------+------------+ 1368 RFC4145 Attribute Analysis 1370 5.36. RFC5159 - OMA BCAST SDP Attributes 1372 RFC5159 [RFC5159] provides descriptions of Session Description 1373 Protocol (SDP) attributes used by the Open Mobile Alliance's 1374 Broadcast Service and Content Protection specification. 1376 +---------------------+---------------+-------+----------+ 1377 | Name | Notes | Level | Category | 1378 +---------------------+---------------+-------+----------+ 1379 | bcastversion | Not Impacted | S | NORMAL | 1380 | | | | | 1381 | stkmstream | Not Impacted | B | NORMAL | 1382 | | | | | 1383 | SRTPAuthentication | Not Impacted | M | NORMAL | 1384 | | | | | 1385 | SRTPROCTxRate | Not Impacted | M | NORMAL | 1386 | | | | | 1387 +---------------------+---------------+-------+----------+ 1389 RFC5159 Attribute Analysis 1391 5.37. RFC6193 - Media Description for IKE in SDP 1393 RFC6193 [RFC6193] specifies how to establish a media session that 1394 represents a virtual private network using the Session Initiation 1395 Protocol for the purpose of on-demand media/application sharing 1396 between peers. It extends the protocol identifier of the Session 1397 Description Protocol (SDP) so that it can negotiate use of the 1398 Internet Key Exchange Protocol (IKE) for media sessions in the SDP 1399 offer/answer model. 1401 +-------------------+--------------------------+-------+------------+ 1402 | Name | Notes | Level | Category | 1403 +-------------------+--------------------------+-------+------------+ 1404 | ike-setup | Attribute MUST be | B | IDENTICAL | 1405 | | identical across all the | | | 1406 | | m=lines | | | 1407 | | | | | 1408 | psk-fingerprint | Attribute MUST be | B | IDENTICAL | 1409 | | identical across all the | | | 1410 | | m=lines | | | 1411 | | | | | 1412 | ike-esp | Attribute MUST be | B | IDENTICAL | 1413 | | identical across all the | | | 1414 | | m=lines | | | 1415 | | | | | 1416 | ike-esp-udpencap | Attribute MUST be | B | IDENTICAL | 1417 | | identical across all the | | | 1418 | | m=lines | | | 1419 | | | | | 1420 +-------------------+--------------------------+-------+------------+ 1422 RFC6193 Attribute Analysis 1424 With the above SDP constraints, a session multiplexed with multiple 1425 m=lines will use only one IPSec association for all of the m= lines. 1427 5.38. RFC6064 - SDP and RTSP Extensions for 3GPP 1429 The Packet-switched Streaming Service (PSS) and the Multimedia 1430 Broadcast/Multicast Service (MBMS) defined by 3GPP use the Session 1431 Description Protocol (SDP) and Real Time Streaming Protocol (RTSP) 1432 with some extensions. RFC6064 [RFC6064] provides information about 1433 these extensions and registers the RTSP and SDP extensions with IANA. 1435 +--------------------------+--------------+-------+-----------------+ 1436 | Name | Notes | Level | Category | 1437 +--------------------------+--------------+-------+-----------------+ 1438 | X-predecbufsize | Refer to | M | NOT RECOMMENDED | 1439 | | notes below | | | 1440 | | | | | 1441 | X-initpredecbufperiod | Refer to | M | NOT RECOMMENDED | 1442 | | notes below | | | 1443 | | | | | 1444 | X-initpostdecbufperiod | Refer to | M | NOT RECOMMENDED | 1445 | | notes below | | | 1446 | | | | | 1447 | X-decbyterate | Refer to | M | NOT RECOMMENDED | 1448 | | notes below | | | 1449 | | | | | 1450 | 3gpp-videopostdecbufsize | Refer to | M | NOT RECOMMENDED | 1451 | | notes below | | | 1452 | | | | | 1453 | framesize | The | M | IDENTICAL-PER- | 1454 | | attribute | | PT | 1455 | | value must | | | 1456 | | be same for | | | 1457 | | a given | | | 1458 | | codec config | | | 1459 | | uration | | | 1460 | | | | | 1461 | 3GPP-Integrity-Key | Refer to | S | NOT RECOMMENDED | 1462 | | notes below | | | 1463 | | | | | 1464 | 3GPP-SRTP-Config | Refer to | M | NOT RECOMMENDED | 1465 | | notes below | | | 1466 | | | | | 1467 | alt,alt-default-id | Refer to | M | NOT RECOMMENDED | 1468 | | notes below | | | 1469 | | | | | 1470 | alt-group | Refer to | M | NOT RECOMMENDED | 1471 | | notes below | | | 1472 | | | | | 1473 | 3GPP-Adaptation-Support | Refer to | M | NOT RECOMMENDED | 1474 | | notes below | | | 1475 | | | | | 1476 | 3GPP-Asset-Informatio | Refer to | B | NOT RECOMMENDED | 1477 | | notes below | | | 1478 | | | | | 1479 | mbms-mode | Refer to | B | NOT RECOMMENDED | 1480 | | notes below | | | 1481 | | | | | 1482 | mbms-flowid | MRefer to | M | NOT RECOMMENDED | 1483 | | notes below | | | 1484 | | | | | 1485 | mbms-repair | Refer to | B | NOT RECOMMENDED | 1486 | | notes below | | | 1487 | | | | | 1488 | 3GPP-QoE- | Refer to | M | NOT RECOMMENDED | 1489 | Metrics:Corruption | notes below | | | 1490 | duration | | | | 1491 | | | | | 1492 | 3GPP-QoE- | Refer to | M | NOT RECOMMENDED | 1493 | Metrics:Rebuffering | notes below | | | 1494 | duration | | | | 1495 | | | | | 1496 | 3GPP-QoE-Metrics:Initial | Refer to | M | NOT RECOMMENDED | 1497 | buffering duration | notes below | | | 1498 | | | | | 1499 | 3GPP-QoE- | Refer to | M | NOT RECOMMENDED | 1500 | Metrics:Successive loss | notes below | | | 1501 | of RTP packets | | | | 1502 | | | | | 1503 | 3GPP-QoE-Metrics:Frame | Refer to | M | NOT RECOMMENDED | 1504 | rate deviation | notes below | | | 1505 | | | | | 1506 | 3GPP-QoE-Metrics:Jitter | Refer to | M | NOT RECOMMENDED | 1507 | duration | notes below | | | 1508 | | | | | 1509 | 3GPP-QoE-Metrics:Content | Refer to | B | NOT RECOMMENDED | 1510 | Switch Time | notes below | | | 1511 | | | | | 1512 | 3GPP-QoE-Metrics:Average | Refer to | M | NOT RECOMMENDED | 1513 | Codec Bitrat | notes below | | | 1514 | | | | | 1515 | 3GPP-QoE-Metrics:Codec | Refer to | M | NOT RECOMMENDED | 1516 | Information | notes below | | | 1517 | | | | | 1518 | 3GPP-QoE-Metrics:Buffer | Refer to | M | NOT RECOMMENDED | 1519 | Status | notes below | | | 1520 | | | | | 1521 +--------------------------+--------------+-------+-----------------+ 1523 RFC6064 Attribute Analysis 1525 [RFC6064] defines SDP attributes that are applicable in the 1526 declarative usage of SDP alone. For purposes of this document, only 1527 the Offer/Answer usage of SDP is considered as mandated by 1528 [I-D.ietf-mmusic-sdp-bundle-negotiation]. 1530 5.39. RFC3108 - ATM SDP 1532 RFC3108 [RFC3108] describes conventions for using the Session 1533 Description Protocol (SDP) described for controlling ATM Bearer 1534 Connections, and any associated ATM Adaptation Layer (AAL) 1536 +------------------------+--------------+-------+----------+ 1537 | Name | Notes | Level | Category | 1538 +------------------------+--------------+-------+----------+ 1539 | aalType | Not Impacted | B | NORMAL | 1540 | eecid | Not Impacted | B | NORMAL | 1541 | aalType | Not Impacted | B | NORMAL | 1542 | capability | Not Impacted | B | NORMAL | 1543 | qosClass | Not Impacted | B | NORMAL | 1544 | bcob | Not Impacted | B | NORMAL | 1545 | stc | Not Impacted | B | NORMAL | 1546 | upcc | Not Impacted | B | NORMAL | 1547 | atmQOSparms | Not Impacted | B | NORMAL | 1548 | atmTrfcDesc | Not Impacted | B | NORMAL | 1549 | abrParms | Not Impacted | B | NORMAL | 1550 | abrSetup | Not Impacted | B | NORMAL | 1551 | bearerType | Not Impacted | B | NORMAL | 1552 | lij | Not Impacted | B | NORMAL | 1553 | anycast | Not Impacted | B | NORMAL | 1554 | cache | Not Impacted | B | NORMAL | 1555 | bearerSigIE | Not Impacted | B | NORMAL | 1556 | aalApp | Not Impacted | B | NORMAL | 1557 | cbrRate | Not Impacted | B | NORMAL | 1558 | sbc | Not Impacted | B | NORMAL | 1559 | clkrec | Not Impacted | B | NORMAL | 1560 | fec | Not Impacted | B | NORMAL | 1561 | prtfl | Not Impacted | B | NORMAL | 1562 | structure | Not Impacted | B | NORMAL | 1563 | cpsSDUsize | Not Impacted | B | NORMAL | 1564 | aal2CPS | Not Impacted | B | NORMAL | 1565 | aal2CPSSDUrate | Not Impacted | B | NORMAL | 1566 | aal2sscs3661unassured | Not Impacted | B | NORMAL | 1567 | aal2sscs3661assured | Not Impacted | B | NORMAL | 1568 | aal2sscs3662 | Not Impacted | B | NORMAL | 1569 | aal5sscop | Not Impacted | B | NORMAL | 1570 | atmmap | Not Impacted | B | NORMAL | 1571 | silenceSupp | Not Impacted | B | NORMAL | 1572 | ecan | Not Impacted | B | NORMAL | 1573 | gc | Not Impacted | B | NORMAL | 1574 | profileDesc | Not Impacted | B | NORMAL | 1575 | vsel | Not Impacted | B | NORMAL | 1576 | dsel | Not Impacted | B | NORMAL | 1577 | fsel | Not Impacted | B | NORMAL | 1578 | onewaySel | Not Impacted | B | NORMAL | 1579 | codecconfig | Not Impacted | B | NORMAL | 1580 | isup_usi | Not Impacted | B | NORMAL | 1581 | isup_usi | Not Impacted | B | NORMAL | 1582 | chain | Not Impacted | B | NORMAL | 1583 | | | | | 1584 +------------------------+--------------+-------+----------+ 1586 RFC3108 Attribute Analysis 1588 RFC3108 describes conventions for using the Session Description 1589 Protocol (SDP) for characterizing ATM bearer connections using an 1590 AAL1, AAL2 or AAL5 adaptation layers. For AAL1, AAL2 and AAL5, 1591 bearer connections can be used to transport single media streams. In 1592 addition, for AAL1 and AAL2, multiple media streams may be 1593 multiplexed into a bearer connection. For all adaptation types 1594 (AAL1, AAL2 and AAL5), bearer connections may be bundled into a 1595 single media group. In all cases addressed by RFC3108, a real-time 1596 media stream (voice, video, voiceband data, pseudo-wire and others) 1597 or a multiplex of media streams is mapped directly into an ATM 1598 connection. RFC3108 does not address cases where ATM serves as a 1599 low-level transport pipe for IP packets which in turn may carry one 1600 or more real-time (e.g. VoIP) media sessions with a life-cycle 1601 different from that of the underlying ATM transport. 1603 5.40. 3GPP TS 24.182 1605 3GPP TS 24.182 [R3GPPTS24.182] specifies IP multimedia subsystem 1606 Custom Alerting tones 1607 +-------------+----------------------------------+-------+----------+ 1608 | Name | Notes | Level | Category | 1609 +-------------+----------------------------------+-------+----------+ 1610 | g.3gpp.cat | Usage defined for the IP | M | NORMAL | 1611 | | Multimedia Subsystem | | | 1612 | | | | | 1613 +-------------+----------------------------------+-------+----------+ 1615 3GPP TS 24.182 Attribute Analysis 1617 5.41. 3GPP TS 24.183 1619 3GPP TS 24.183 [R3GPPTS24.183]specifies IP multimedia subsystem 1620 Custom Ringing Signal 1622 +-------------+----------------------------------+-------+----------+ 1623 | Name | Notes | Level | Category | 1624 +-------------+----------------------------------+-------+----------+ 1625 | g.3gpp.crs | Usage defined for the IP | M | NORMAL | 1626 | | Multimedia Subsystem | | | 1627 | | | | | 1628 +-------------+----------------------------------+-------+----------+ 1630 3GPP TS 24.183 Attribute Analysis 1632 5.42. 3GPP TS 24.229 1634 3GPP TS 24.229 [R3GPPTS24.229]IP multimedia call control protocol 1635 based on Session Initial protocol and Session Description Protocol. 1637 +------------------+---------------------------+-------+------------+ 1638 | Name | Notes | Level | Category | 1639 +------------------+---------------------------+-------+------------+ 1640 | secondary-realm | Per media-level attribute | M | TRANSPORT | 1641 | | MUST be used per | | | 1642 | | underlying transport | | | 1643 | | | | | 1644 | visited-realm | Per media-level attribute | M | TRANSPORT | 1645 | | MUST be used per | | | 1646 | | underlying transport | | | 1647 | | | | | 1648 | omr-m-cksum | Not Impacted | M | NORMAL | 1649 | | | | | 1650 | omr-s-cksum | Not Impacted | M | NORMAL | 1651 | | | | | 1652 | omr-m-att | Not Impacted | M | NORMAL | 1653 | | | | | 1654 | omr-s-bw | Not Impacted | M | NORMAL | 1655 | | | | | 1656 | omr-s-bw | Not Impacted | M | NORMAL | 1657 | | | | | 1658 | omr-m-att | Not Impacted | M | NORMAL | 1659 | | | | | 1660 | omr-codecs | Not Impacted | M | NORMAL | 1661 | | | | | 1662 +------------------+---------------------------+-------+------------+ 1664 3GPP TS 24.229 Attribute Analysis 1666 5.43. ITU T.38 1668 ITU T.38[T.38] defines procedures for real-time Group 3 facsimile 1669 communications over IP networks. 1671 +------------------------+---------------+-------+----------+ 1672 | Name | Notes | Level | Category | 1673 +------------------------+---------------+-------+----------+ 1674 | T38FaxVersion | Not Impacted | S | NORMAL | 1675 | | | | | 1676 | T38MaxBitRate | Not Impacted | S | NORMAL | 1677 | | | | | 1678 | T38FaxFillBitRemoval | Not Impacted | S | NORMAL | 1679 | | | | | 1680 | T38FaxTranscodingMMR | Not Impacted | S | NORMAL | 1681 | | | | | 1682 | T38FaxTranscodingJBIG | Not Impacted | S | NORMAL | 1683 | | | | | 1684 | T38FaxRateManagement | Not Impacted | S | NORMAL | 1685 | | | | | 1686 | T38FaxMaxBuffer | Not Impacted | S | NORMAL | 1687 | | | | | 1688 | T38FaxMaxDatagram | Not Impacted | S | NORMAL | 1689 | | | | | 1690 | T38FaxUdpEC | Not Impacted | S | NORMAL | 1691 | | | | | 1692 +------------------------+---------------+-------+----------+ 1694 Historic Attribute Analysis 1696 The ITU T.38 attributes are clearly unaffected by multiplexing and 1697 are specific to the working of the fax protocol itself. 1699 5.44. ITU-T H.248.15 1701 ITU-T H.248.15 [H.248.15] defines Gateway Control Protocol SDP H.248 1702 package attribute 1703 +-----------+------------------------------------+-------+----------+ 1704 | Name | Notes | Level | Category | 1705 +-----------+------------------------------------+-------+----------+ 1706 | h248item | It is also only applicable for | B | SPECIAL | 1707 | | signaling the inclusion of H.248 | | | 1708 | | extension packages to a gateway | | | 1709 | | via the local and remote | | | 1710 | | descriptors. The attribute itself | | | 1711 | | is unaffected by multiplexing, but | | | 1712 | | the packaged referenced in a | | | 1713 | | specific use of the attribute may | | | 1714 | | be impacted. Further analysis of | | | 1715 | | each package is needed to | | | 1716 | | determine if there is an issue. | | | 1717 | | This is only a concern in | | | 1718 | | environments using a decomposed | | | 1719 | | server/gateway with H.248 signaled | | | 1720 | | between them. The ITU-T will need | | | 1721 | | to do further analysis of various | | | 1722 | | packages when they specify how to | | | 1723 | | signal the use of multiplexing to | | | 1724 | | a gateway. | | | 1725 | | | | | 1726 +-----------+------------------------------------+-------+----------+ 1728 Historic Attribute Analysis 1730 5.45. RFC4975 - The Message Session Relay Protocol 1732 RFC4975 [RFC4975] the Message Session Relay Protocol, a protocol for 1733 transmitting a series of related instant messages in the context of a 1734 session. Message sessions are treated like any other media stream 1735 when set up via a rendezvous or session creation protocol such as the 1736 Session Initiation Protocol. 1738 +-----------------------+---------------+-------+----------+ 1739 | Name | Notes | Level | Category | 1740 +-----------------------+---------------+-------+----------+ 1741 | accept-types | Not Impacted | M | NORMAL | 1742 | | | | | 1743 | accept-wrapped-types | Not Impacted | M | NORMAL | 1744 | | | | | 1745 | max-size | Not Impacted | M | NORMAL | 1746 | | | | | 1747 | path | Not Impacted | M | NORMAL | 1748 | | | | | 1749 +-----------------------+---------------+-------+----------+ 1751 RFC4975 Attribute Analysis 1753 5.46. Historical 1755 This section specifies analysis for the attributes that are included 1756 for historic usage alone by the [IANA]. 1758 +---------------------+--------------+---------------+--------------+ 1759 | Name | Notes | Level | Category | 1760 +---------------------+--------------+---------------+--------------+ 1761 | rtpred1 | Historic | Not-Applcable | NOT | 1762 | | attributes. | | RECOMMENDED | 1763 | | | | | 1764 | rtpred2 | Historic | Not-Applcable | NOT | 1765 | | attributes. | | RECOMMENDED | 1766 | | | | | 1767 | PSCid | Not | Not-Applcable | TBD | 1768 | | Applicable | | | 1769 | | | | | 1770 | bc_service | Not | Not-Applcable | TBD | 1771 | | Applicable | | | 1772 | | | | | 1773 | bc_program | Not | Not-Applcable | TBD | 1774 | | Applicable | | | 1775 | | | | | 1776 | bc_service_package | Not | Not-Applcable | TBD | 1777 | | Applicable | | | 1778 | | | | | 1779 +---------------------+--------------+---------------+--------------+ 1781 Unknowns Attribute Analysis 1783 6. bwtype Attribute Analysis 1785 This section specifies handling of specific bandwidth attributes when 1786 used in multiplexing scenarios. 1788 6.1. RFC4566 - SDP: Session Description Protocol 1790 +------------+-----------------------------------+-------+----------+ 1791 | Name | Notes | Level | Category | 1792 +------------+-----------------------------------+-------+----------+ 1793 | bwtype:CT | Aggregate bandwidth for the | S | NORMAL | 1794 | | conference | | | 1795 | | | | | 1796 | bwtype:AS | As a session attribute, it | B | NORMAL | 1797 | | specifies the session aggregate | | | 1798 | | unless media-level b=RR and/or | | | 1799 | | b=RS attributes are used. Under | | | 1800 | | this interpretation the | | | 1801 | | multiplexing scheme has no impact | | | 1802 | | and thus NORMAL category applies. | | | 1803 | | | | | 1804 | bwtype:AS | For the media level usage,the | B | SUM | 1805 | | aggregate of individual bandwidth | | | 1806 | | values is considered. | | | 1807 | | | | | 1808 +------------+-----------------------------------+-------+----------+ 1810 RFC4566 bwtype Analysis 1812 6.2. RFC3556 - SDP Bandwidth Modifiers for RTCP Bandwidth 1814 RFC3556 [RFC3556] defines an extension to the Session Description 1815 Protocol (SDP) to specify two additional modifiers for the bandwidth 1816 attribute. These modifiers may be used to specify the bandwidth 1817 allowed for RTP Control Protocol (RTCP) packets in a Real-time 1818 Transport Protocol (RTP) session 1819 +------------+--------------------------------+-------+-------------+ 1820 | Name | Notes | Level | Category | 1821 +------------+--------------------------------+-------+-------------+ 1822 | bwtype:RS | Session level usage represents | B | NORMAL,SUM | 1823 | | session aggregate and media | | | 1824 | | level usage indicates SUM of | | | 1825 | | the individual values while | | | 1826 | | multiplexing | | | 1827 | | | | | 1828 | bwtype:RR | Session level usage represents | B | NORMAL,SUM | 1829 | | session aggregate and media | | | 1830 | | level usage indicates SUM of | | | 1831 | | the individual values while | | | 1832 | | multiplexing | | | 1833 | | | | | 1834 +------------+--------------------------------+-------+-------------+ 1836 RFC3556 bwtype Analysis 1838 6.3. RFC3890 - Bandwidth Modifier for SDP 1840 RFC3890 [RFC3890] defines a Session Description Protocol (SDP) 1841 Transport Independent Application Specific Maximum (TIAS) bandwidth 1842 modifier that does not include transport overhead; instead an 1843 additional packet rate attribute is defined. The transport 1844 independent bit-rate value together with the maximum packet rate can 1845 then be used to calculate the real bit-rate over the transport 1846 actually used. 1848 +--------------+---------------------------------+-------+----------+ 1849 | Name | Notes | Level | Category | 1850 +--------------+---------------------------------+-------+----------+ 1851 | bwtype:TIAS | The usage of TIAS is not | B | SPECIAL | 1852 | | clearly defined Offer/Answer | | | 1853 | | usage. | | | 1854 | | | | | 1855 | maxprate | The usage of TIAS and maxprate | B | SPECIAL | 1856 | | is not well defined under | | | 1857 | | multiplexing | | | 1858 | | | | | 1859 +--------------+---------------------------------+-------+----------+ 1861 RFC3890 bwtype Analysis 1863 The intention of TIAS is that the media level bit-rate is multiplied 1864 with the known per-packet overhead for the selected transport and the 1865 maxprate value to determine the worst case bit-rate from the 1866 transport to more accurately capture the required usage. Summing 1867 TIAS values independently across m=lines and multiplying the computed 1868 sum with maxprate and the per-packet overhead would inflate the value 1869 significantly. Instead performing multiplication and adding the 1870 individual values is a more appropriate usage. This still ignores 1871 the fact that this is a send side declaration, and not intended for 1872 receiver negotiation. 1874 7. rtcp-fb Attribute Analysis 1876 This section analyzes rtcp-fb SDP attributes [RTCP-FB]. 1878 7.1. RFC4585 - RTP/AVPF 1880 RFC4585 [RFC4585] defines an extension to the Audio-visual Profile 1881 (AVP) that enables receivers to provide, statistically, more 1882 immediate feedback to the senders and thus allows for short-term 1883 adaptation and efficient feedback-based repair mechanisms to be 1884 implemented. 1886 +----------+-----------------------------------+-------+------------+ 1887 | Attr | Notes | Level | Category | 1888 | Name | | | | 1889 +----------+-----------------------------------+-------+------------+ 1890 | ack rpsi | Not Impacted | M | NORMAL | 1891 | | | | | 1892 | ack app | Feedback parameters MUST be | M | SPECIAL | 1893 | | handled in the app specific way | | | 1894 | | when multiplexed | | | 1895 | | | | | 1896 | nack | Not Impacted | M | NORMAL | 1897 | | | | | 1898 | nack pli | Not Impacted | M | NORMAL | 1899 | | | | | 1900 | nack sli | Not Impacted | M | NORMAL | 1901 | | | | | 1902 | nack | Not Impacted | M | NORMAL | 1903 | rpsi | | | | 1904 | | | | | 1905 | nack app | Feedback parameters MUST be | M | SPECIAL | 1906 | | handled in the app specific way | | | 1907 | | when multiplexed | | | 1908 | | | | | 1909 | trr-int | This attribute applies to RTP | M | IDENTICAL | 1910 | | Session as a whole | | | 1911 | | | | | 1912 +----------+-----------------------------------+-------+------------+ 1914 RFC4585 Attribute Analysis 1916 7.2. RFC5104 - Codec Control Messages in AVPF 1918 RFC5104 [RFC5104] specifies a few extensions to the messages defined 1919 in the Audio-Visual Profile with Feedback (AVPF). They are helpful 1920 primarily in conversational multimedia scenarios where centralized 1921 multipoint functionalities are in use. However, some are also usable 1922 in smaller multicast environments and point-to-point calls. 1924 +-----------+--------------+-------+----------+ 1925 | Attr Name | Notes | Level | Category | 1926 +-----------+--------------+-------+----------+ 1927 | ccm | Not Impacted | M | Normal | 1928 | | | | | 1929 +-----------+--------------+-------+----------+ 1931 RFC5104 Attribute Analysis 1933 7.3. RFC6285 - Unicast-Based RAMS 1935 +-----------+---------------+-------+----------+ 1936 | Name | Notes | Level | Category | 1937 +-----------+---------------+-------+----------+ 1938 | nack rai | Not Impacted | M | NORMAL | 1939 | | | | | 1940 +-----------+---------------+-------+----------+ 1942 RFC6285 Attribute Analysis 1944 7.4. RFC6679 - ECN for RTP over UDP/IP 1946 RFC6679 [RFC6679] specifies how Explicit Congestion Notification 1947 (ECN) can be used with the Real-time Transport Protocol (RTP) running 1948 over UDP, using the RTP Control Protocol (RTCP) as a feedback 1949 mechanism. It defines a new RTCP Extended Report (XR) block for 1950 periodic ECN feedback, a new RTCP transport feedback message for 1951 timely reporting of congestion events, and a Session Traversal 1952 Utilities for NAT (STUN) extension used in the optional 1953 initialization method using Interactive Connectivity Establishment 1954 (ICE) 1955 +------------------+---------------------------+-------+------------+ 1956 | Name | Notes | Level | Category | 1957 +------------------+---------------------------+-------+------------+ 1958 | ecn-capable-rtp | ECN markup are enabled at | M | IDENTICAL | 1959 | | the RTP Session level | | | 1960 | | | | | 1961 | nack ecn | This attribute enables | M | IDENTICAL | 1962 | | ECN at the RTP session | | | 1963 | | level | | | 1964 | | | | | 1965 +------------------+---------------------------+-------+------------+ 1967 RFC6679 Attribute Analysis 1969 7.5. RFC6642 - Third-Party Loss Report 1971 In a large RTP session using the RTP Control Protocol (RTCP) feedback 1972 mechanism defined in RFC 4585 [RFC4585], a feedback target may 1973 experience transient overload if some event causes a large number of 1974 receivers to send feedback at once. This overload is usually avoided 1975 by ensuring that feedback reports are forwarded to all receivers, 1976 allowing them to avoid sending duplicate feedback reports. However, 1977 there are cases where it is not recommended to forward feedback 1978 reports, and this may allow feedback implosion. RFC6642 [RFC6642] 1979 memo discusses these cases and defines a new RTCP Third-Party Loss 1980 Report that can be used to inform receivers that the feedback target 1981 is aware of some loss event, allowing them to suppress feedback. 1982 Associated Session Description Protocol (SDP) signaling is also 1983 defined. 1985 +-------------+---------------+-------+----------+ 1986 | Name | Notes | Level | Category | 1987 +-------------+---------------+-------+----------+ 1988 | nack tllei | Not Impacted | M | NORMAL | 1989 | | | | | 1990 | nack pslei | Not Impacted | M | NORMAL | 1991 | | | | | 1992 +-------------+---------------+-------+----------+ 1994 RFC6642 Attribute Analysis 1996 7.6. RFC5104 - Codec Control Messages in AVPF 1997 +------------+--------------+-------+----------+ 1998 | Attr Name | Notes | Level | Category | 1999 +------------+--------------+-------+----------+ 2000 | ccm fir | Not Impacted | M | NORMAL | 2001 | | | | | 2002 | ccm tmmbr | Not Impacted | M | NORMAL | 2003 | | | | | 2004 | ccm tstr | Not Impacted | M | NORMAL | 2005 | | | | | 2006 | ccm vbcm | Not Impacted | M | NORMAL | 2007 | | | | | 2008 +------------+--------------+-------+----------+ 2010 RFC5104 Attribute Analysis 2012 8. group Attribute Analysis 2014 This section analyzes SDP "group" semantics [GROUP-SEM]. 2016 8.1. RFC5888 - SDP Grouping Framework 2018 RFC5888 [RFC5888] defines a framework to group "m" lines in the 2019 Session Description Protocol (SDP) for different purposes. 2021 +------------+---------------+-------+----------+ 2022 | Name | Notes | Level | Category | 2023 +------------+---------------+-------+----------+ 2024 | group:LS | Not Impacted | S | NORMAL | 2025 | | | | | 2026 | group:FID | Not Impacted | S | NORMAL | 2027 | | | | | 2028 +------------+---------------+-------+----------+ 2030 RFC5888 Attribute Analysis 2032 8.2. RFC3524 - Mapping Media Streams to Resource Reservation Flows 2034 RFC3524 [RFC3524] defines an extension to the Session Description 2035 Protocol (SDP) grouping framework. It allows requesting a group of 2036 media streams to be mapped into a single resource reservation flow. 2037 The SDP syntax needed is defined, as well as a new "semantics" 2038 attribute called Single Reservation Flow (SRF). 2040 +------------+---------------+-------+----------+ 2041 | Name | Notes | Level | Category | 2042 +------------+---------------+-------+----------+ 2043 | group:SRF | Not Impacted | S | NORMAL | 2044 | | | | | 2045 +------------+---------------+-------+----------+ 2047 RFC3524 Attribute Analysis 2049 8.3. RFC4091 - ANAT Semantics 2051 RFC4091 [RFC4091] defines the Alternative Network Address Types 2052 (ANAT) semantics for the Session Description Protocol (SDP) grouping 2053 framework. The ANAT semantics allow alternative types of network 2054 addresses to establish a particular media stream. 2056 +-------------+---------------------------+-------+-----------------+ 2057 | Name | Notes | Level | Category | 2058 +-------------+---------------------------+-------+-----------------+ 2059 | group:ANAT | ANAT semantics is | S | NOT RECOMMENDED | 2060 | | obseleted | | | 2061 | | | | | 2062 +-------------+---------------------------+-------+-----------------+ 2064 RFC4091 Attribute Analysis 2066 8.4. RFC5956 - FEC Grouping Semantics in SDP 2068 RFC5956 [RFC5956] defines the semantics for grouping the associated 2069 source and FEC-based (Forward Error Correction) repair flows in the 2070 Session Description Protocol (SDP). The semantics defined in the 2071 document are to be used with the SDP Grouping Framework (RFC 5888). 2072 These semantics allow the description of grouping relationships 2073 between the source and repair flows when one or more source and/or 2074 repair flows are associated in the same group, and they provide 2075 support for additive repair flows. SSRC-level (Synchronization 2076 Source) grouping semantics are also defined in this document for 2077 Real-time Transport Protocol (RTP) streams using SSRC multiplexing. 2079 +---------------+---------------+-------+----------+ 2080 | Name | Notes | Level | Category | 2081 +---------------+---------------+-------+----------+ 2082 | group:FEC-FR | Not Impacted | S | NORMAL | 2083 | | | | | 2084 +---------------+---------------+-------+----------+ 2086 RFC5956 Attribute Analysis 2088 8.5. RFC5583 - Signaling Media Decoding Dependency in SDP 2090 RFC5583 [RFC5583] defines semantics that allow for signaling the 2091 decoding dependency of different media descriptions with the same 2092 media type in the Session Description Protocol (SDP). This is 2093 required, for example, if media data is separated and transported in 2094 different network streams as a result of the use of a layered or 2095 multiple descriptive media coding process. 2097 +--------+------------------------------+-------+-------------------+ 2098 | Name | Notes | Level | Category | 2099 +--------+------------------------------+-------+-------------------+ 2100 | depend | The attribute value must be | M | IDENTICAL-PER-PT | 2101 | lay | same for a given codec | | | 2102 | | configuration | | | 2103 | | | | | 2104 | depend | The attribute value must be | M | IDENTICAL-PER-PT | 2105 | mdc | same for a given codec | | | 2106 | | configuration | | | 2107 | | | | | 2108 +--------+------------------------------+-------+-------------------+ 2110 RFC5583 Attribute Analysis 2112 The usage of identical Payload Type values across multiplexed m=lines 2113 is described in [I-D.ietf-mmusic-sdp-bundle-negotiation]. 2115 9. ssrc-group Attribute Analysis 2117 This section analyzes "ssrc-group" semantics [SSRC-GROUP]. 2119 9.1. RFC5576 - Source-Specific SDP Attributes 2121 +---------+---------------+-------+----------+ 2122 | Name | Notes | Level | Category | 2123 +---------+---------------+-------+----------+ 2124 | FID | Not Impacted | M | NORMAL | 2125 | | | | | 2126 | FEC | Not Impacted | M | NORMAL | 2127 | | | | | 2128 | FEC-FR | Not Impacted | M | NORMAL | 2129 | | | | | 2130 +---------+---------------+-------+----------+ 2132 RFC5576 Attribute Analysis 2134 10. QoS Mechanism Token Analysis 2136 This section analyzes QoS tokes specified with SDP[QOS]. 2138 10.1. RFC5432 - QoS Mechanism Selection in SDP 2140 +-------+----------------------------------------+-------+----------+ 2141 | Name | Notes | Level | Category | 2142 +-------+----------------------------------------+-------+----------+ 2143 | rsvp | Not Impacted, since QOS mechanisms are | B | NORMAL | 2144 | | applied per flow. | | | 2145 | | | | | 2146 | nsis | Not Impacted, since QOS mechanisms are | B | NORMAL | 2147 | | applied per flow. | | | 2148 | | | | | 2149 +-------+----------------------------------------+-------+----------+ 2151 RFC5432 Attribute Analysis 2153 11. k= Attribute Analysis 2155 11.1. RFC4566 SDP: Session Description Protocol 2157 +------+------------------------------------+-------+---------------+ 2158 | Name | Notes | Level | Category | 2159 +------+------------------------------------+-------+---------------+ 2160 | k= | It is NOT recommended to use this | S | NOT | 2161 | | attribute | | RECOMMENDED | 2162 | | | | | 2163 +------+------------------------------------+-------+---------------+ 2165 RFC4566 Attribute Analysis 2167 12. content Atribute Analysis 2169 12.1. RFC4796 2170 +------------------+---------------+-------+----------+ 2171 | Name | Notes | Level | Category | 2172 +------------------+---------------+-------+----------+ 2173 | content:slides | Not Impacted | M | NORMAL | 2174 | | | | | 2175 | content:speaker | Not Impacted | M | NORMAL | 2176 | | | | | 2177 | content:main | Not Impacted | M | NORMAL | 2178 | | | | | 2179 | content:sl | Not Impacted | M | NORMAL | 2180 | | | | | 2181 | content:alt | Not Impacted | M | NORMAL | 2182 | | | | | 2183 +------------------+---------------+-------+----------+ 2185 RFC4796 Attribute Analysis 2187 13. Payload Formats 2189 13.1. RFC5109 - RTP Payload Format for Generic FEC 2191 RFC5109 [RFC5109] describes a payload format for generic Forward 2192 Error Correction (FEC) for media data encapsulated in RTP. It is 2193 based on the exclusive-or (parity) operation. The payload format 2194 allows end systems to apply protection using various protection 2195 lengths and levels, in addition to using various protection group 2196 sizes to adapt to different media and channel characteristics. It 2197 enables complete recovery of the protected packets or partial 2198 recovery of the critical parts of the payload depending on the packet 2199 loss situation. 2201 +---------------------+----------------------+-------+--------------+ 2202 | Name | Notes | Level | Category | 2203 +---------------------+----------------------+-------+--------------+ 2204 | audio/ulpfec | Not recommended for | M | NOT | 2205 | | multiplexing due to | | RECOMMENDED | 2206 | | reuse of SSRCs | | | 2207 | | | | | 2208 | video/ulpfec | Not recommended for | M | NOT | 2209 | | multiplexing due to | | RECOMMENDED | 2210 | | reuse of SSRCs | | | 2211 | | | | | 2212 | text/ulpfec | Not recommended for | M | NOT | 2213 | | multiplexing due to | | RECOMMENDED | 2214 | | reuse of SSRCs | | | 2215 | | | | | 2216 | application/ulpfec | Not recommended for | M | NOT | 2217 | | multiplexing due to | | RECOMMENDED | 2218 | | reuse of SSRCs | | | 2219 | | | | | 2220 +---------------------+----------------------+-------+--------------+ 2222 RFC5109 Payload Format Analysis 2224 Draft draft-lennox-payload-ulp-ssrc-mux proposes a simple fix to make 2225 it possible to use ULP with multiplexing and ULP is allowed when used 2226 with that. 2228 14. Multiplexing Media Streams and DSCP Markings 2230 Note: This section does not yet have WG consensus but is included as 2231 a proposal to the WG. There are two options being proposed, A and B. 2232 The authors suggest A. 2234 14.1. Option A 2236 This section provides two rules for multiplexing multiple media 2237 streams with DSCP markings over a single 5-tuple. 2239 Rule 1: Media Streams with markings from different service classes 2240 MUST NOT be multiplexed. For example, a media stream with DSCP 2241 Marking EF MUST NOT be multiplexed with a media stream marked with 2242 AF class. Likewise, a media stream with DSCP marking AF3x MUST 2243 NOT be multiplexed with a media stream marked with AF4x. 2245 Rule 2: Media Streams that belong to the same service class, even 2246 with different drop precedence, MAY be multiplexed. Thus media 2247 streams that all belong to the EF group or all that belong to the 2248 AF4X class can be multiplexed. 2250 For WebRTC applications following the advice in 2251 [I-D.dhesikan-tsvwg-rtcweb-qos], the above rules end up allowing the 2252 audio and video to be multiplexed in many, but not all, cases. 2254 14.2. Option B 2256 Media Streams MAY be multiplexed regardless of what the setting of 2257 the DSCP Per Hop Behavior group (PHB). 2259 15. Multiplexing Considerations for Encapsulating Attributes 2261 This sections deals with recommendations for defining the 2262 multiplexing characteristics of the SDP attributes that encapsulate 2263 other SDP attributes/parameters. Such attributes as of today, for 2264 example, are defined in [RFC3407], [RFC5939] and [RFC6871] as part of 2265 a generic framework for indicating and negotiating transport, media 2266 and media format related capabilities in the SDP. 2268 The behavior of such attributes under multiplexing is in turn defined 2269 by the multiplexing behavior of the attributes they encapsulate which 2270 are made known once the Offer/Answer negotiation process is 2271 completed. 2273 15.1. RFC3407 - cpar Attribute Analysis 2275 RFC3407 capability parameter attribute (a=cpar) encapsulates b= 2276 (bandwidth) or an a= attribute. For bandwidth attribute 2277 encapsulation, the category SUM is inherited. For the case of a= 2278 attribute, the category corresponding to the SDP attribute being 2279 referenced is inherited. 2281 v=0 2282 o=alice 2890844526 2890844527 IN IP4 host.atlanta.example.com 2283 s= 2284 c=IN IP4 host.atlanta.example.com 2285 t=0 0 2286 m=video 3456 RTP/AVP 100 2287 a=rtpmap:100 VP8/90000 2288 a=sqn: 0 2289 a=cdsc: 1 video RTP/AVP 100 2290 a=cpar: a=rtcp-mux 2291 m=video 3456 RTP/AVP 101 2292 a=rtpmap:101 VP8/90000 2293 a=fmtp:100 max-fr=15;max-fs=1200 2294 a=cdsc: 2 video RTP/AVP 101 2295 a=cpar: a=rtcp-mux 2297 In the above example ,the category IDENTICAL is inherited for the 2298 cpar encapsulated rtcp-mux attribute. 2300 15.2. RFC5939 Analysis 2302 [RFC5939] defines a general SDP capability negotiation framework. It 2303 also specifies how to provide transport protocols and SDP attributes 2304 as capabilities and negotiate them using the framework. 2306 For this purpose, [RFC5939] defines the following 2308 o A set of capabilities for the session and its associated media 2309 stream components, supported by each side. The attribute 2310 ("a=acap") defines how to list an attribute name and its 2311 associated value (if any) as a capability. The attribute 2312 ("a=tcap") that defines how to list transport protocols (e.g., 2313 "RTP/AVP") as capabilities. 2315 o A set of potential configurations indicating which combinations of 2316 those capabilities can be used for the session and its associated 2317 media stream components. Potential configurations are not ready 2318 for use. Instead, they provide an alternative that may be used, 2319 subject to further negotiation. 2321 o An actual configuration for the session and its associated media 2322 stream components, that specifies which combinations of session 2323 parameters and media stream components can be used currently and 2324 with what parameters. Use of an actual configuration does not 2325 require any further negotiation. 2327 o A negotiation process that takes the set of actual and potential 2328 configurations (combinations of capabilities) as input and 2329 provides the negotiated actual configurations as output. 2331 15.2.1. Recommendations 2333 This section provides recommendations for entities generating and 2334 processing SDP under the generic capability negotiation framework as 2335 defined in [RFC5939] under the context of media stream multiplexing. 2337 These recommendations are provided for the purposes of enabling the 2338 Offerer to make sure that the generated potential configurations 2339 between the multiplexed streams can (easily) be negotiated to be 2340 consistent between those streams. 2342 15.2.1.1. Recommendation-1: Transport Capability Analysis 2344 When a transport capability is proposed as a potential configuration 2345 under a given media description, it is recommended that all the media 2346 descriptions under multiplexing have the same potential configuration 2347 number for the given transport capability. 2349 a=tcap:1 RTP/SAVPF 2350 a=tcap:2 RTP/SAVP 2351 a=group:BUNDLE audio video 2352 m= audio 2353 a=mid:audio 2354 a=pcfg:1 t=1 2355 a=pcfg:2 2356 m= video 2357 a=mid:video 2358 a=pcfg:1 t=1 2359 a=pcfg:2 t=2 2361 In the example above, the potential configurations that Offer 2362 transport protocol capability of RTP/SAVPF has the same configuration 2363 number "1" in both the audio and video media descriptions. 2365 15.2.1.2. Recommendation-2: Attribute Capability Analysis 2367 For attribute capabilities which are offered as potential 2368 configurations that encapsulate attributes whose value MUST be 2369 IDENTICAL under multiplexing, it is recommended that all the media 2370 descriptions under multiplexing have the same potential configuration 2371 number for the given attribute capability. 2373 a=acap:1 a=rtcp-mux 2374 a=acap:2 a=crypto:1 AES_CM_128_HMAC_SHA1_80 2375 inline:EcGZiNWpFJhQXdspcl1ekcmVCNWpVLcfHAwJSoj|2^20|1:32 2376 a=group:BUNDLE audio video 2377 m= audio 49172 RTP/AVP 99 2378 a=mid:audio 2379 a=pcfg:1 a=1 2380 a=pcfg:2 2381 m= video 560024 RTP/AVP 100 2382 a=mid:video 2383 a=pcfg:1 a=1 2384 a=pcfg:2 a=2 2386 In the example above, the potential configuration number 1 is 2387 repeated while referring to attribute capability a=rtcp-mux, since 2388 the behavior is IDENTICAL for the attribute a=rtcp-mux under 2389 multiplexing. 2391 15.2.1.3. Recommendation-3: Sescap Attribute Analysis 2393 It is recommended that any bundled media descriptions/configurations 2394 are also acceptable combinations of media streams/configurations as 2395 specified by "sescap" attribute. 2397 15.2.1.4. Recommendation-4: Capability Extension Attributes 2399 Since it is nearly impossible to define a generic mechanism for 2400 various capability extensions , this document does't provide 2401 procedures for dealing with the capability extension attributes. 2402 However, Section Section 15.3 provide analysis of media capability 2403 extension attributes as defined in [RFC6871]. 2405 15.3. RFC6871 Analysis 2407 [RFC6871] extends capability negotiation framework described in 2408 [RFC5939] by defining media capabilities that can be used to indicate 2409 and negotiate media types and their associated format parameters. 2411 Building upon the analysis from the previous section, following 2412 recommendation is provided for dealing with the attributes defined in 2413 [RFC6871] under multiplexing 2415 15.3.1. Recommendation-5: Attribute Capability Under Shared Payload 2416 Type 2418 For attribute capabilities which are offered as potential 2419 configurations that encapsulate attributes whose value MUST be 2420 IDENTICAL-PER-PT under multiplexing, it is recommended that all the 2421 media descriptions under multiplexing have the same potential 2422 configuration number for the given attribute capability 2424 The attributes (a=rmcap, a=mfcap) follow the above recommendations 2425 under mutliplexing 2426 v=0 2427 o=- 25678 753849 IN IP4 192.0.2.1 2428 s= 2429 c=IN IP4 192.0.2.1 2430 t=0 0 2431 a=creq:med-v0 2432 m=audio 54322 RTP/AVP 96 2433 a=rtpmap:96 AMR-WB/16000/1 2434 a=fmtp:96 mode-change-capability=1; max-red=220; 2435 mode-set=0,2,4,7 2436 a=rmcap:1,3 audio AMR-WB/16000/1 2437 a=rmcap:2 audio AMR/8000/1 2438 a=mfcap:1,2 mode-change-capability=1 2439 a=mfcap:3 mode-change-capability=2 2440 a=pcfg:1 m=1 pt=1:96 2441 a=pcfg:2 m=2 pt=2:97 2442 a=pcfg:3 m=3 pt=3:98 2444 m=audio 54322 RTP/AVP 96 2445 a=rtpmap:96 AMR-WB/16000/1 2446 a=fmtp:96 mode-change-capability=1; max-red=220; 2447 mode-set=0,2,4,7 2448 a=rmcap:4 audio AMR/8000/1 2449 a=rmcap:5 audio OPUS/48000/2 2450 a=mfcap:5 minptime=40 2451 a=mfcap:4 mode-change-capability=1 2452 a=pcfg:1 m=4 pt=4:97 2453 a=pcfg:4 m=5 pt=5:101 2455 In the example above, the potential configuration number 1 is 2456 repeated when referring to media and media format capability used for 2457 the Payload Type 97. This implies that both the media capability 2 2458 and 4 along with their media format capabilities MUST refer to the 2459 same Codec configuration , as per the definition of IDENTICAL-PER-PT 2461 15.4. Recommendation-6: Offer/Answer Negotiation Expectations 2463 For attributes encapsulated via "a=acap", "a=omcap", "a=mscap" 2464 capability attributes and presented as part of potential/actual 2465 configurations during the Offer/Answer negotiation prodecure, the 2466 negotiation MUST ensure that the multiplexing behavior of these 2467 capabilities inherit from the behavior of the attribute being 2468 encapsulated. 2470 Example 1: Below SDP example captures the following aspects. 2472 o The Offerer offers audio and video streams with several different 2473 RTP profiles (AVP, SAVP, SAVPF) as potential configurations. 2475 o Valid Answer that corresponds to the SDP answer where the Answerer 2476 accepts RTP/SAVPF as the default profile for both the media 2477 streams. In this scenario both the media streams can be 2478 successfully multiplexed. 2480 o Invalid Answer wherein the Answerer accepts the profile RTP/SAVPF 2481 for the audio stream and RTP/AVPF for the video stream. This 2482 scenario results in the failure of the multiplexing as defined in 2483 the section 7.2 of the BUNDLE specification [I-D.ietf-mmusic-sdp- 2484 bundle-negotiation]. 2486 2487 v=0 2488 o=- 25678 753849 IN IP4 192.0.2.1 2489 s= 2490 t=0 0 2491 c=IN IP4 192.0.2.1 2492 m=audio 3456 RTP/AVP 98 2493 a=tcap:1 RTP/SAVPF 2494 a=rtpmap:98 OPUS/48000/2 2495 a=pcfg:1 t=1 2496 m=video 51372 RTP/AVP 101 2497 a=rtpmap:101 H264/90000 2498 a=tcap:2 RTP/SAVPF RTP/AVPF 2499 a=pcfg:2 t=2|3 2501 2502 v=0 2503 o=- 24351 621814 IN IP4 192.0.2.2 2504 s= 2505 m=audio 3456 RTP/SAVPF 98 2506 a=rtpmap:98 OPUS/48000/2 2507 a=acfg:1 t=1 2509 m=video 51372 RTP/SAVPF 101 2510 a=rtpmap:101 H264/90000 2511 a=acfg:2 t=2 2513 2514 v=0 2515 o=- 24351 621814 IN IP4 192.0.2.2 2516 s= 2517 m=audio 3456 RTP/SAVPF 98 2518 a=rtpmap:98 OPUS/48000/2 2519 a=acfg:1 t=1 2521 m=video 51372 RTP/AVPF 101 2522 a=rtpmap:101 H264/90000 2523 a=acfg:2 t=3 2525 16. IANA Considerations 2527 IANA shall register categories from this specification by expanding 2528 the Session Description Protocol (SDP) Parameters table with a column 2529 listing categories against each SDP parameter. 2531 +---------------------+ 2532 | Category | 2533 +---------------------+ 2534 | NORMAL | 2535 +---------------------+ 2536 | NOT RECOMMENDED | 2537 +---------------------+ 2538 | IDENTICAL | 2539 +---------------------+ 2540 | TRANSPORT | 2541 +---------------------+ 2542 | INHERIT | 2543 ----------------------+ 2544 | IDENTICAL-PER-PT | 2545 +---------------------+ 2546 | SPECIAL | 2547 ---------------------- 2549 17. Security Considerations 2551 All the attributes which involve security key needs a careful review 2552 to ensure two-time pad vulnerability is not created. 2554 18. Acknowledgments 2556 I would like to thank Cullen Jennings for suggesting the categories, 2557 contributing text and reviewing the draft. I would also link to 2558 thank Magnus, Christer, Jonathan Lennox, Bo Burman, and Dan on 2559 suggesting structural changes helping improve the document 2560 readability. 2562 I would like also to thank following experts on their inputs and 2563 reviews as listed - Flemming Andreasen(5.20,5.28,5.29,15), Rohan 2564 Mahy(5.45), Eric Burger(5.22),Christian Huitema(5.13), Christer 2565 Holmberg(5.17,5.22,5.40,5.41), Richard Ejzak (5.36,5.42,5.43,5.44), 2566 Colin Perkins(5.7,5.8), Magnus westerlund(5.2,5.3,5.9,5.26, 2567 5.27,6.1,6.2,6.3,8.3,7), Roni Evens(5.12,5.27,8.4), Subha 2568 Dhesikan(5.5,12.1,14), Dan Wing(5.6,5.11,5.30,5.34,5.37), Ali C 2569 Begen(5.1,5.16,5.18,5.21,5.33,8.2,8.4,13.1), Bo Burman (7.2,7.6), 2570 Charles Eckel(5.14,5.23,5.24,9.1,8.5), Paul Kyzivat(5.24), Ian 2571 Johansson(5.15), Saravanan Shanmugham(5.10), Paul E Jones(5.25), 2572 Rajesh Kumar(5.39), Jonathan Lennox(5.31,5,14,11.1), Mo 2573 Zanaty(5.4,5.19,8.1,8.3,8.5,12.1), Christian Huitema (5.13), Qin Wu 2574 (5.38 PM-Dir review). 2576 19. Change Log 2578 [RFC EDITOR NOTE: Please remove this section when publishing] 2580 Changes from draft-ietf-mmusic-sdp-mux-attributes-01 2582 o Updated section 15 to provide detailed recommendation on dealing 2583 with encapsulating attributes. Also updated sections 5.20, 5.28, 2584 5.29 to refer to Section 15. 2586 o Added new categories IDENTICAL-PER-PT and INHERIT 2588 o Updated Sections 16 to add the new categories. 2590 o Updated Sections 5.1, 5.14, 5.15, 5.38, 8.5 to reflect the 2591 category IDENTICAL-PER-PT. 2593 o Reformatted section 4 to add individual categories to their own 2594 sections. 2596 Changes from draft-ietf-mmusic-sdp-mux-attributes-00 2598 o Added Section 15 to provide recommendations on multiplexing SDP 2599 encapsulating attributes. Also updated sections 5.20, 5.28, 5.29 2600 to refer to Section 15. 2602 o Updated Section 5.38 to incorporate PM-dir review inputs from Qin 2603 Wu 2605 o Updated Sections 5.2,5.14,8.5 to refer to BUNDLE draft for more 2606 clarity. 2608 o Fixed few nits regarding sentence clarity and fill-in the NOTES 2609 section where information was lacking. 2611 Changes from draft-nandakumar-mmusic-mux-attributes-05 2613 o Renamed the document to be a WG document. 2615 o Added Section 14. 2617 o Updated Open Issues based on IETF88 discussions. 2619 Changes from draft-nandakumar-mmusic-mux-attributes-04 2621 o Added few OPEN ISSUES that needs to be discussed. 2623 o Updated sections 5.10,5.23,5,24,5,25,7.2,9.1,5.12,5.27,8.4, 2624 5.44,5.11,5.4,5.19,10.1,10.5,5.21,10.4,15.1 2626 o Updated Table Column name Current to Level and improved TRANSPORT 2627 category explanation on suggestions form Dan Wing. 2629 o Grouped all the rtcp-fb attribute analysis under a single section 2630 as suggested by Magnus/ 2632 Changes from draft-nandakumar-mmusic-mux-attributes-03 2634 o Maintenance change to clean up grammatical nits and wordings. 2636 Changes from draft-nandakumar-mmusic-mux-attributes-02 2638 o Updated Sections 5.3,5.5,5.6,5.7,5.9,5.8,5.11,5.13,5.22,5.34, 2639 5.37,5.40,5.41,5.42,5.43,5.44,5.45,6.1,6.2,6.3,8,3,12.1 based on 2640 the inputs from the respective RFC Authors. 2642 Changes from draft-nandakumar-mmusic-mux-attributes-01 2644 o Replaced Category BAD with NOT RECOMMENDED. 2646 o Added Category TBD. 2648 o Updated IANA Consideration Section. 2650 Changes from draft-nandakumar-mmusic-mux-attributes-00 2652 o Added new section for dealing with FEC payload types. 2654 20. References 2656 20.1. Normative References 2658 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 2659 Requirement Levels", BCP 14, RFC 2119, March 1997. 2661 [RFC4566] Handley, M., Jacobson, V., and C. Perkins, "SDP: Session 2662 Description Protocol", RFC 4566, July 2006. 2664 20.2. Informative References 2666 [ACK-NACK] 2667 "S Description Protocol (SDP) RTCP ACK/NACK Feedback 2668 attributes", . 2671 [CCM] "S Description Protocol (SDP) RTCP-FB Codec Control 2672 Messages", . 2675 [GROUP-SEM] 2676 "S Description Protocol (SDP) "group" semantics", 2677 . 2680 [H.248.15] 2681 "Gateway control protocol: SDP H.248 package attribute", 2682 . 2684 [I-D.dhesikan-tsvwg-rtcweb-qos] 2685 Dhesikan, S., Druta, D., Jones, P., and J. Polk, "DSCP and 2686 other packet markings for RTCWeb QoS", draft-dhesikan- 2687 tsvwg-rtcweb-qos-02 (work in progress), July 2013. 2689 [I-D.ietf-avt-multiplexing-rtp] 2690 El-Khatib, K., Luo, G., Bochmann, G., and Pinjiang. Feng, 2691 "Multiplexing Scheme for RTP Flows between Access 2692 Routers", http://tools.ietf.org/html/ 2693 draft-ietf-avt-multiplexing-rtp-01 (work in progress), 2694 October 1999. 2696 [I-D.ietf-mmusic-sdp-bundle-negotiation] 2697 Holmberg, C., Alvestrand, H., and C. Jennings, 2698 "Multiplexing Negotiation Using Session Description 2699 Protocol (SDP) Port Numbers", draft-ietf-mmusic-sdp- 2700 bundle-negotiation-03 (work in progress), February 2013. 2702 [IANA] "S Description Protocol (SDP) Parameters", 2703 . 2706 [MEDIA_LOOPBACK] 2707 Kaplan, H., Hedayat, K., Venna, N., Jones, P., and N. 2708 Stratton, "An Extension to the Session Description 2709 Protocol (SDP) and Real-time Transport Protocol (RTP) for 2710 Media Loopback", 6489 (work in progress), January 2013. 2712 [QOS] "S Description Protocol (SDP) QoS Mechanism Tokens", 2713 . 2716 [R3GPPTS24.182] 2717 "IP Multimedia Subsystem (IMS) Customized Alerting Tones 2718 (CAT); Protocol specification", 2719 . 2721 [R3GPPTS24.183] 2722 "IP Multimedia Subsystem (IMS) Customized Ringing Signal 2723 (CRS); Protocol specification", 2724 . 2726 [R3GPPTS24.229] 2727 "IP multimedia call control protocol based on Session 2728 Initiation Protocol (SIP) and Session Description Protocol 2729 (SDP);", 2730 . 2732 [RFC3108] Kumar, R. and M. Mostafa, "Conventions for the use of the 2733 Session Description Protocol (SDP) for ATM Bearer 2734 Connections", RFC 3108, May 2001. 2736 [RFC3264] Rosenberg, J. and H. Schulzrinne, "An Offer/Answer Model 2737 with Session Description Protocol (SDP)", RFC 3264, June 2738 2002. 2740 [RFC3407] Andreasen, F., "S Description Protocol (SDP) Simple 2741 Capability Declaration", RFC 3407, October 2002. 2743 [RFC3524] Camarillo, G. and A. Monrad, "Mapping of Media Streams to 2744 Resource Reservation Flows", RFC 3524, April 2003. 2746 [RFC3556] Casner, S., "S Description Protocol (SDP) Bandwidth 2747 Modifiers for RTP Control Protocol (RTCP) Bandwidth", RFC 2748 3556, July 2003. 2750 [RFC3605] Huitema, C., "Real Time Control Protocol (RTCP) attribute 2751 in Session Description Protocol (SDP)", RFC 3605, October 2752 2003. 2754 [RFC3611] Friedman, T., Caceres, R., and A. Clark, "RTP Control 2755 Protocol Extended Reports (RTCP XR)", RFC 3611, November 2756 2003. 2758 [RFC3890] Westerlund, M., "A Transport Independent Bandwidth 2759 Modifier for the Session Description Protocol (SDP)", RFC 2760 3890, September 2004. 2762 [RFC4091] Camarillo, G. and J. Rosenberg, "The Alternative Network 2763 Address Types (ANAT) Semantics for the Session Description 2764 Protocol (SDP) Grouping Framework", RFC 4091, June 2005. 2766 [RFC4145] Yon, D. and G. Camarillo, "TCP-Based Media Transport in 2767 the Session Description Protocol (SDP)", RFC 4145, 2768 September 2005. 2770 [RFC4567] Arkko, J., Lindholm, F., Naslund, M., Norrman, K., and E. 2771 Carrara, "Key Management Extensions for Session 2772 Description Protocol (SDP) and Real Time Streaming 2773 Protocol (RTSP)", RFC 4567, July 2006. 2775 [RFC4568] Andreasen, F., Baugher, M., and D. Wing, "S Description 2776 Protocol (SDP) Security Descriptions for Media Streams", 2777 RFC 4568, July 2006. 2779 [RFC4570] Quinn, B. and R. Finlayson, "S Description Protocol (SDP) 2780 Source Filters", RFC 4570, July 2006. 2782 [RFC4572] Lennox, J., "Connection-Oriented Media Transport over the 2783 Transport Layer Security (TLS) Protocol in the Session 2784 Description Protocol (SDP)", RFC 4572, July 2006. 2786 [RFC4574] Levin, O. and G. Camarillo, "The Session Description 2787 Protocol (SDP) Label Attribute", RFC 4574, August 2006. 2789 [RFC4583] Camarillo, G., "S Description Protocol (SDP) Format for 2790 Binary Floor Control Protocol (BFCP) Streams", RFC 4583, 2791 November 2006. 2793 [RFC4585] Ott, J., Wenger, S., Sato, N., Burmeister, C., and J. Rey, 2794 "Extended RTP Profile for Real-time Transport Control 2795 Protocol (RTCP)-Based Feedback (RTP/AVPF)", RFC 4585, July 2796 2006. 2798 [RFC4796] Hautakorpi, J. and G. Camarillo, "The Session Description 2799 Protocol (SDP) Content Attribute", RFC 4796, February 2800 2007. 2802 [RFC4975] Campbell, B., Mahy, R., and C. Jennings, "The Message 2803 Session Relay Protocol (MSRP)", RFC 4975, September 2007. 2805 [RFC5104] Wenger, S., Chandra, U., Westerlund, M., and B. Burman, 2806 "Codec Control Messages in the RTP Audio-Visual Profile 2807 with Feedback (AVPF)", RFC 5104, February 2008. 2809 [RFC5109] Li, A., "RTP Payload Format for Generic Forward Error 2810 Correction", RFC 5109, December 2007. 2812 [RFC5159] Dondeti, L. and A. Jerichow, "S Description Protocol (SDP) 2813 Attributes for Open Mobile Alliance (OMA) Broadcast 2814 (BCAST) Service and Content Protection", RFC 5159, March 2815 2008. 2817 [RFC5245] Rosenberg, J., "Interactive Connectivity Establishment 2818 (ICE): A Protocol for Network Address Translator (NAT) 2819 Traversal for Offer/Answer Protocols", RFC 5245, July 2820 2006. 2822 [RFC5285] Singer, D. and H. Desineni, "A General Mechanism for RTP 2823 Header Extensions", RFC 5285, July 2008. 2825 [RFC5432] Polk, J., Dhesikan, S., and G. Camarillo, "Quality of 2826 Service (QoS) Mechanism Selection in the Session 2827 Description Protocol (SDP)", RFC 5432, March 2009. 2829 [RFC5506] Johansson, I., "Support for Reduced-Size Real-Time 2830 Transport Control Protocol (RTCP): Opportunities and 2831 Consequences", RFC 5506, April 2009. 2833 [RFC5547] Garcia-Martin, M., Isomaki, M., Camarillo, G., Loreto, S., 2834 and P. Kyzivat, "A Session Description Protocol (SDP) 2835 Offer/Answer Mechanism to Enable File Transfer", RFC 5547, 2836 May 2009. 2838 [RFC5576] Lennox, J., Ott, J., and T. Schierl, "Source-Specific 2839 Media Attributes in the Session Description Protocol 2840 (SDP)", RFC 5576, June 2009. 2842 [RFC5583] Schierl, T. and S. Wenger, "Signaling Media Decoding 2843 Dependency in the Session Description Protocol (SDP)", RFC 2844 5583, July 2009. 2846 [RFC5760] Ott, J., Chesterfield, J., and E. Schooler, "RTP Control 2847 Protocol (RTCP) Extensions for Single-Source Multicast 2848 Sessions with Unicast Feedback", RFC 5760, February 2010. 2850 [RFC5761] Perkins, C. and M. Westerlund, "Multiplexing RTP Data and 2851 Control Packets on a Single Port", RFC 5761, April 2010. 2853 [RFC5762] Perkins, C., "RTP and the Datagram Congestion Control 2854 Protocol (DCCP)", RFC 5762, April 2010. 2856 [RFC5763] Fischl, J., Tschofenig, H., and E. Rescorla, "Framework 2857 for Establishing a Secure Real-time Transport Protocol 2858 (SRTP) Security Context Using Datagram Transport Layer 2859 Security (DTLS)", RFC 5763, May 2010. 2861 [RFC5888] Camarillo, G. and H. Schulzrinne, "The Session Description 2862 Protocol (SDP) Grouping Framework", RFC 5888, June 2010. 2864 [RFC5939] Andreasen, F., "S Description Protocol (SDP) Capability 2865 Negotiation", RFC 5939, September 2010. 2867 [RFC5956] Begen, A., "Forward Error Correction Grouping Semantics in 2868 the Session Description Protocol", RFC 5956, September 2869 2010. 2871 [RFC6064] Westerlund, M. and P. Frojdh, "SDP and RTSP Extensions 2872 Defined for 3GPP Packet-Switched Streaming Service and 2873 Multimedia Broadcast/Multicast Service", RFC 6064, January 2874 2011. 2876 [RFC6128] Begen, A., "RTP Control Protocol (RTCP) Port for Source- 2877 Specific Multicast (SSM) Sessions", RFC 6128, February 2878 2011. 2880 [RFC6189] Zimmermann, P., Johnston, A., and J. Callas, "ZRTP: Media 2881 Path Key Agreement for Unicast Secure RTP", RFC 6189, 2882 April 2011. 2884 [RFC6193] Saito, M., Wing, D., and M. Toyama, "Media Description for 2885 the Internet Key Exchange Protocol (IKE) in the Session 2886 Description Protocol (SDP)", RFC 6193, April 2011. 2888 [RFC6230] Boulton, C., Melanchuk, T., and S. McGlashan, "Media 2889 Control Channel Framework", RFC 6230, May 2011. 2891 [RFC6236] Johansson, I. and K. Jung, "Negotiation of Generic Image 2892 Attributes in the Session Description Protocol (SDP)", RFC 2893 6236, May 2011. 2895 [RFC6284] Begen, A., Wing, D., and T. Van Caenegem, "Port Mapping 2896 between Unicast and Multicast RTP Sessions", RFC 6284, 2897 June 2011. 2899 [RFC6285] Ver Steeg, B., Begen, A., Van Caenegem, T., and Z. Vax, 2900 "Unicast-Based Rapid Acquisition of Multicast RTP 2901 Sessions", RFC 6285, June 2011. 2903 [RFC6364] Begen, A., "S Description Protocol Elements for the 2904 Forward Error Correction (FEC) Framework", RFC 6364, 2905 October 2011. 2907 [RFC6642] Wu, Q., Xia, F., and R. Even, "RTP Control Protocol (RTCP) 2908 Extension for a Third-Party Loss Report", RFC 6642, June 2909 2012. 2911 [RFC6679] Westerlund, M., Johansson, I., Perkins, C., O'Hanlon, P., 2912 and K. Carlberg, "Explicit Congestion Notification (ECN) 2913 for RTP over UDP", RFC 6679, August 2012. 2915 [RFC6714] Holmberg, C., Blau, S., and E. Burger, "Connection 2916 Establishment for Media Anchoring (CEMA) for the Message 2917 Session Relay Protocol (MSRP)", RFC 6714, August 2012. 2919 [RFC6773] Phelan, T., Fairhurst, G., and C. Perkins, "DCCP-UDP: A 2920 Datagram Congestion Control Protocol UDP Encapsulation for 2921 NAT Traversal", RFC 6773, November 2012. 2923 [RFC6787] Burnett, D. and S. Shanmugham, "Media Resource Control 2924 Protocol Version 2 (MRCPv2)", RFC 6787, November 2012. 2926 [RFC6871] Gimlan, R., Evan, R., and F. Andreasen, "Session 2927 Description Protocol (SDP) Media Capabilities 2928 Negotiation", RFC 6871, Febrauary 2013. 2930 [RTCP-FB] "S Description Protocol (SDP) RTCP Feedback attributes", 2931 . 2934 [SSRC-GROUP] 2935 "S Description Protocol (SDP) "ssrc-group" semantics", 2936 . 2939 [T.38] "Procedures for real-time Group 3 facsimile communication 2940 over IP networks", . 2942 Author's Address 2944 Suhas Nandakumar 2945 Cisco 2946 170 West Tasman Drive 2947 San Jose, CA 95134 2948 USA 2950 Email: snandaku@cisco.com