idnits 2.17.1
draft-ietf-mmusic-sdp-mux-attributes-01.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
== 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 (February 14, 2014) is 3724 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 2418, but no explicit
reference was found in the text
== Unused Reference: 'CCM' is defined on line 2423, 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 (~~), 9 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 February 14, 2014
5 Expires: August 18, 2014
7 A Framework for SDP Attributes when Multiplexing
8 draft-ietf-mmusic-sdp-mux-attributes-01
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 August 18, 2014.
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 . . . . . . . . . . . . . . . . . . . . . . . . . 5
62 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 5
63 3. Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . 5
64 4. SDP Attribute Analysis Framework . . . . . . . . . . . . . . . 6
65 5. Analysis of Existing Attributes . . . . . . . . . . . . . . . 9
66 5.1. RFC4566 - SDP: Session Description Protocol . . . . . . . 10
67 5.2. RFC4585 - RTP/AVPF . . . . . . . . . . . . . . . . . . . . 11
68 5.3. RFC5761 - Multiplexing RTP and RTCP . . . . . . . . . . . 11
69 5.4. RFC4574 - SDP Label Attribute . . . . . . . . . . . . . . 12
70 5.5. RFC5432 - QoS Mechanism Selection in SDP . . . . . . . . . 12
71 5.6. RFC4568 - SDP Security Descriptions . . . . . . . . . . . 13
72 5.7. RFC5762 - RTP over DCCP . . . . . . . . . . . . . . . . . 13
73 5.8. RFC6773 - DCCP-UDP Encapsulation . . . . . . . . . . . . . 14
74 5.9. RFC5506 - Reduced-Size RTCP in RTP Profile . . . . . . . . 14
75 5.10. RFC6787 - Media Resource Control Protocol Version 2 . . . 15
76 5.11. RFC5245 - Interactive Connectivity Establishment (ICE) . . 15
77 5.12. RFC5285 - RTP Header Extensions . . . . . . . . . . . . . 17
78 5.13. RFC3605 - RTCP attribute in SDP . . . . . . . . . . . . . 17
79 5.14. RFC5576 - Source-Specific SDP Attributes . . . . . . . . . 17
80 5.15. RFC6236 - Image Attributes in SDP . . . . . . . . . . . . 18
81 5.16. RFC6285 - Rapid Acquisition of Multicast RTP Sessions . . 19
82 5.17. RFC6230 - Media Control Channel Framework . . . . . . . . 19
83 5.18. RFC6364 - SDP Elements for FEC Framework . . . . . . . . . 19
84 5.19. RFC4796 - Content Attribute . . . . . . . . . . . . . . . 20
85 5.20. RFC3407 - SDP Simple Capability Declaration . . . . . . . 20
86 5.21. RFC6284 - Port Mapping between Unicast and Multicast
87 RTP Sessions . . . . . . . . . . . . . . . . . . . . . . . 21
88 5.22. RFC6714 - MSRP-CEMA . . . . . . . . . . . . . . . . . . . 21
89 5.23. RFC4583 - SDP Format for BFCP Streams . . . . . . . . . . 22
90 5.24. RFC5547 - SDP Offer/Answer for File Transfer . . . . . . . 22
91 5.25. RFC6489 - SDP and RTP Media Loopback Extension . . . . . . 23
92 5.26. RFC5760 - RTCP with Unicast Feedback . . . . . . . . . . . 23
93 5.27. RFC3611 - RTCP XR . . . . . . . . . . . . . . . . . . . . 24
94 5.28. RFC5939 - SDP Capability Negotiation . . . . . . . . . . . 24
95 5.29. RFC6781 - SDP Media Capabilities Negotiation . . . . . . . 25
96 5.30. RFC4567 - Key Management Extensions for SDP and RTSP . . . 26
97 5.31. RFC4572 - Comedia over TLS in SDP . . . . . . . . . . . . 26
98 5.32. RFC4570 - SDP Source Filters . . . . . . . . . . . . . . . 27
99 5.33. RFC6128 - RTCP Port for Multicast Sessions . . . . . . . . 27
100 5.34. RFC6189 - ZRTP . . . . . . . . . . . . . . . . . . . . . . 28
101 5.35. RFC4145 - Connection-Oriented Media . . . . . . . . . . . 28
102 5.36. RFC5159 - OMA BCAST SDP Attributes . . . . . . . . . . . . 29
103 5.37. RFC6193 - Media Description for IKE in SDP . . . . . . . . 29
104 5.38. RFC6064 - SDP and RTSP Extensions for 3GPP . . . . . . . . 30
105 5.39. RFC3108 - ATM SDP . . . . . . . . . . . . . . . . . . . . 33
106 5.40. 3GPP TS 24.182 . . . . . . . . . . . . . . . . . . . . . . 34
107 5.41. 3GPP TS 24.183 . . . . . . . . . . . . . . . . . . . . . . 34
108 5.42. 3GPP TS 24.229 . . . . . . . . . . . . . . . . . . . . . . 35
109 5.43. ITU T.38 . . . . . . . . . . . . . . . . . . . . . . . . . 36
110 5.44. ITU-T H.248.15 . . . . . . . . . . . . . . . . . . . . . . 36
111 5.45. RFC4975 - The Message Session Relay Protocol . . . . . . . 37
112 5.46. Historical . . . . . . . . . . . . . . . . . . . . . . . . 38
113 6. bwtype Attribute Analysis . . . . . . . . . . . . . . . . . . 38
114 6.1. RFC4566 - SDP: Session Description Protocol . . . . . . . 39
115 6.2. RFC3556 - SDP Bandwidth Modifiers for RTCP Bandwidth . . . 39
116 6.3. RFC3890 - Bandwidth Modifier for SDP . . . . . . . . . . . 40
117 7. rtcp-fb Attribute Analysis . . . . . . . . . . . . . . . . . . 40
118 7.1. RFC4585 - RTP/AVPF . . . . . . . . . . . . . . . . . . . . 41
119 7.2. RFC5104 - Codec Control Messages in AVPF . . . . . . . . . 41
120 7.3. RFC6285 - Unicast-Based RAMS . . . . . . . . . . . . . . . 42
121 7.4. RFC6679 - ECN for RTP over UDP/IP . . . . . . . . . . . . 42
122 7.5. RFC6642 - Third-Party Loss Report . . . . . . . . . . . . 43
123 7.6. RFC5104 - Codec Control Messages in AVPF . . . . . . . . . 43
124 8. group Attribute Analysis . . . . . . . . . . . . . . . . . . . 44
125 8.1. RFC5888 - SDP Grouping Framework . . . . . . . . . . . . . 44
126 8.2. RFC3524 - Mapping Media Streams to Resource
127 Reservation Flows . . . . . . . . . . . . . . . . . . . . 44
128 8.3. RFC4091 - ANAT Semantics . . . . . . . . . . . . . . . . . 44
129 8.4. RFC5956 - FEC Grouping Semantics in SDP . . . . . . . . . 45
130 8.5. RFC5583 - Signaling Media Decoding Dependency in SDP . . . 45
131 9. ssrc-group Attribute Analysis . . . . . . . . . . . . . . . . 46
132 9.1. RFC5576 - Source-Specific SDP Attributes . . . . . . . . . 46
133 10. QoS Mechanism Token Analysis . . . . . . . . . . . . . . . . . 46
134 10.1. RFC5432 - QoS Mechanism Selection in SDP . . . . . . . . . 46
135 11. k= Attribute Analysis . . . . . . . . . . . . . . . . . . . . 47
136 11.1. RFC4566 SDP: Session Description Protocol . . . . . . . . 47
137 12. content Atribute Analysis . . . . . . . . . . . . . . . . . . 47
138 12.1. RFC4796 . . . . . . . . . . . . . . . . . . . . . . . . . 47
139 13. Payload Formats . . . . . . . . . . . . . . . . . . . . . . . 47
140 13.1. RFC5109 - RTP Payload Format for Generic FEC . . . . . . . 47
141 14. Multiplexing Media Streams and DSCP Markings . . . . . . . . . 48
142 14.1. Option A . . . . . . . . . . . . . . . . . . . . . . . . . 48
143 14.2. Option B . . . . . . . . . . . . . . . . . . . . . . . . . 49
145 15. Multiplexing Considerations for Encapsulating Attributes . . . 49
146 16. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 52
147 17. Security Considerations . . . . . . . . . . . . . . . . . . . 53
148 18. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 53
149 19. Change Log . . . . . . . . . . . . . . . . . . . . . . . . . . 53
150 20. References . . . . . . . . . . . . . . . . . . . . . . . . . . 54
151 20.1. Normative References . . . . . . . . . . . . . . . . . . . 54
152 20.2. Informative References . . . . . . . . . . . . . . . . . . 54
153 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 60
155 1. Introduction
157 Real-Time Communication Web (RTCWeb) framework requires Real-time
158 Transport Protocol (RTP) as the media transport protocol and Session
159 Description Protocol (SDP) [RFC4566] for describing and negotiating
160 multi-media communication sessions.
162 SDP defines several attributes for capturing characteristics that
163 apply to the individual media descriptions (described by "m=" lines")
164 and the overall multimedia session. Typically different media types
165 (audio, video etc) described using different media descriptions
166 represent separate RTP Sessions that are carried over individual
167 transport layer flows. However in the IETF RTCWEB WG, a need to use
168 a single 5-tuple for sending and receiving media associated with
169 multiple SDP media descriptions ("m=" lines) has been identified.
170 This would e.g. allow the usage of a single set of Interactive
171 Connectivity Establishment (ICE) [RFC5245] candidates for multiple
172 media descriptions. This in turn has made necessary to understand
173 the interpretation and usage of the SDP attributes defined for the
174 multiplexed media descriptions.
176 Given the number of SDP attributes registered with the IANA [IANA]
177 and possibility of new attributes being defined in the future, there
178 is need for generic future-proof framework to analyze these
179 attributes for their applicability in the transport multiplexing use-
180 cases.
182 The document starts with providing the motivation for requiring such
183 a framework. This is followed by introduction to the SDP attribute
184 analysis framework/procedures, following which several sections
185 applies the framework to the SDP attributes registered with the IANA
186 [IANA]
188 2. Terminology
190 The key words "MUST", "MUST NOT", "REQUIRED", "SHOULD", "SHOULD NOT",
191 "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be
192 interpreted as described in [RFC2119].
194 3. Motivation
196 The time and complications of setting up ICE [RFC5245] and DTLS-SRTP
197 [RFC5763] transports for use by RTP, and conservation of ports, forms
198 an requirement to try and reduce the number of transport level flows
199 needed. This has resulted in the definition of ways, such as,
200 [I-D.ietf-mmusic-sdp-bundle-negotiation] and
202 [I-D.ietf-avt-multiplexing-rtp] to multiplex RTP over a single
203 transport flow in order to preserve network resources such as port
204 numbers. This imposes further restrictions on applicability of these
205 SDP attributes as they are defined today.
207 The specific problem is that there are attribute combinations which
208 make sense when specified on independent m-lines -- as with classical
209 SDP -- that do not make sense when those m-lines are then multiplexed
210 over the same transport. To give an obvious example, ICE permits
211 each m=line to have an independently specified ice-ufrag attribute.
212 However, if the media from multiple m-lines is multiplexed over the
213 same ICE component, then the meaning of media-level ice-ufrag
214 attributes becomes muddled.
216 As of today there are close to 250 SDP attributes registered with the
217 IANA [IANA] and more will be added in the future. There is no
218 clearly defined procedure to establish the validity/applicability of
219 these attribute when used with transport multiplexing.
221 4. SDP Attribute Analysis Framework
223 Attributes in an SDP session description can be defined at the
224 session-level and media-level. These attributes could be
225 semantically grouped as noted below.
227 o Attributes related to media content such as media type, encoding
228 schemes, payload types.
229 o Attributes specifying media transport characteristics like RTP/
230 RTCP port numbers, network addresses, QOS.
231 o Metadata description attributes capturing session timing and
232 origin information.
233 o Attributes establishing relationships between media streams such
234 as grouping framework
236 With the above semantic grouping as the reference, the proposed
237 framework classifies each attribute into one of the following
238 categories:
239 NORMAL Attributes that can be independently specified when
240 multiplexing and retain their original semantics.
242 In the example given below, the direction and label attributes are
243 independently specified for audio and video m=lines. These
244 attributes are not impacted by multiplexing these media streams
245 over a single transport layer flow.
247 v=0
248 o=alice 2890844526 2890844527 IN IP4 host.atlanta.example.com
249 s=
250 c=IN IP4 host.atlanta.example.com
251 t=0 0
252 m=audio 49172 RTP/AVP 99
253 a=sendonly
254 a=label:1
255 a=rtpmap:99 iLBC/8000
256 m=video 49172 RTP/AVP 31
257 a=recvonly
258 a=label:2
259 a=rtpmap:31 H261/90000
261 NOT RECOMMENDED Attributes that are recommended against multiplexing
262 since their usage under multiplexing might lead to incorrect
263 behavior.
265 Example: Multiplexing media descriptions having attribute zrtp-
266 hash defined with the media descriptions lacking it, would either
267 complicate the handling of multiplexed streams or might fail
268 multiplexing altogether.
270 v=0
271 o=bob 2890844527 2890844527 IN IP4 client.biloxi.example.com
272 s=
273 c=IN IP4 client.biloxi.example.com
274 t=0 0
275 m=audio 3456 RTP/AVP 97 // with zrtp
276 a=rtpmap:97 iLBC/8000
277
278 a=zrtp-hash:1.10 fe30efd02423cb054e50efd0248742ac7a52c8f91bc2
279 df881ae642c371ba46df
280
281 m=video 34567 RTP/AVP 31 //without zrtp
282 a=rtpmap:31 H261/90000
284 IDENTICAL Attributes that MUST be identical across all the media
285 descriptions being multiplexed.
287 Attributes such as rtcp-mux fall into this category. Since RTCP
288 reporting is done per RTP Session, RTCP Multiplexing MUST to
289 enabled for both the audio and video m=lines in the example below
290 if they are transported over a single 5-tuple.
292 v=0
293 o=bob 2890844527 2890844527 IN IP4 client.biloxi.example.com
294 s=
295 c=IN IP4 client.biloxi.example.com
296 t=0 0
297 m=audio 34567 RTP/AVP 97
298 a=rtcp-mux
299 m=video 34567 RTP/AVP 31
300 a=rtpmap:31 H261/90000
301 a=rtcp-mux
303 SUM Attributes can be set as they are normally used but software
304 using them in a multiplex case, MUST apply the sum of all the
305 attributes being multiplexed instead of trying to use each one.
306 This is typically used for bandwidth or other rate limiting
307 attributes to the underlining transport.
309 The software parsing the SDP sample below, should use the
310 aggregate Application Specific (AS) bandwidth value from the
311 individual media descriptions to determine the AS value for the
312 multiplexed session. Thus the calculated AS value would be 256+64
313 bytes for the given example.
315 v=0
316 o=mhandley 2890844526 2890842807 IN IP4 126.16.64.4
317 c=IN IP4 client.biloxi.example.com
318 t=0 0
319 m=audio 49170 RTP/AVP 0
320 b=AS:64
321 m=video 51372 RTP/AVP 31
322 b=AS:256
324 TRANSPORT Attributes that can be set normally for multiple items in
325 a multiplexed group but the software MUST pick just one of the
326 attribute of the given type for use. The one chosen is the
327 attribute associated with the "m=" line that represents the
328 information being used for the transport of the RTP.
330 In the example below, "a=crypto" attribute is defined for both the
331 audio and the video m=lines. The video media line's a=crypto
332 attribute is chosen since its mid value (bar) appears first in the
333 a=group:BUNDLE line. This is due to BUNDLE grouping semantic
334 [I-D.ietf-mmusic-sdp-bundle-negotiation] which mandates the values
335 from m=line corresponding to the mid appearing first on the
336 a=group:BUNDLE line to be considered for setting up the RTP
337 Transport.
339 v=0
340 o=alice 2890844526 2890844527 IN IP4 host.atlanta.example.com
341 s=
342 c=IN IP4 host.atlanta.example.com
343 t=0 0
344 a=group:BUNDLE bar foo
345 m=audio 49172 RTP/AVP 99
346 a=mid:foo
347 a=crypto:1 AES_CM_128_HMAC_SHA1_80
348 inline:d0RmdmcmVCspeEc3QGZiNWpVLFJhQX1cfHAwJSoj|2^20|1:32
349 a=rtpmap:99 iLBC/8000
350 m=video 51374 RTP/AVP 31
351 a=mid:bar
352 a=crypto:1 AES_CM_128_HMAC_SHA1_80
353 inline:EcGZiNWpFJhQXdspcl1ekcmVCNWpVLcfHAwJSoj|2^20|1:32
354 a=rtpmap:96 H261/90000
356 SPECIAL Attributes where the text in the source draft must be
357 consulted for further handling when multiplexed.
359 As an example, for the attribute extmap, the specification
360 defining the extension MUST be referred to understand the
361 multiplexing implications.
363 TBD This category defines attributes that need more information to
364 assign an appropriate category.
366 The idea behind these categories is to provide recommendations for
367 using the attributes under RTP session multiplexing scenarios.
369 Section 5 analyzes attributes listed in IANA [IANA] grouped under the
370 IETF document that defines them. The "Level" column indicates
371 whether the attribute is currently specified as:
373 o S -- Session level
374 o M -- Media level
375 o B -- Both
376 o SR -- Source-level (for a single SSRC)
378 5. Analysis of Existing Attributes
379 5.1. RFC4566 - SDP: Session Description Protocol
381 RFC4566 [RFC4566] defines the Session Description Protocol (SDP) that
382 is intended for describing multimedia sessions for the purposes of
383 session announcement, session invitation, and other forms of
384 multimedia session initiation
386 +------------+----------------+-------+----------+
387 | Attr Name | Notes | Level | Category |
388 +------------+----------------+-------+----------+
389 | sendrecv | Not impacted | B | NORMAL |
390 | | | | |
391 | sendonly | Not impacted | B | NORMAL |
392 | | | | |
393 | recvonly | Not impacted | B | NORMAL |
394 | | | | |
395 | inactive | Not impacted | B | NORMAL |
396 | | | | |
397 | cat | Not impacted | S | NORMAL |
398 | | | | |
399 | ptime | Not Impacted | M | NORMAL |
400 | | | | |
401 | maxptime | Not Impacted | M | NORMAL |
402 | | | | |
403 | orient | Not Impacted | M | NORMAL |
404 | | | | |
405 | framerate | Not Impacted | M | NORMAL |
406 | | | | |
407 | quality | Not Impacted | M | NORMAL |
408 | | | | |
409 | rtpmap | Not Impacted | M | NORMAL |
410 | | | | |
411 | fmtp | Not Impacted | M | NORMAL |
412 | | | | |
413 | keywds | Not impacted | S | NORMAL |
414 | | | | |
415 | type | Not Impacted | S | NORMAL |
416 | | | | |
417 | tool | Not Impacted | S | NORMAL |
418 | | | | |
419 | charset | Not Impacted | S | NORMAL |
420 | | | | |
421 | sdplang | Not Impacted | B | NORMAL |
422 | | | | |
423 | lang | Not Impacted | B | NORMAL |
424 | | | | |
425 +------------+----------------+-------+----------+
426 RFC4566 Attribute Analysis
428 5.2. RFC4585 - RTP/AVPF
430 RFC4585 [RFC4585] defines an extension to the Audio-visual Profile
431 (AVP) that enables receivers to provide, statistically, more
432 immediate feedback to the senders and thus allows for short-term
433 adaptation and efficient feedback-based repair mechanisms to be
434 implemented.
436 +----------+-------------------------------------+-------+----------+
437 | Attr | Notes | Level | Category |
438 | Name | | | |
439 +----------+-------------------------------------+-------+----------+
440 | rtcp-fb | The combination of a particular | M | NORMAL |
441 | | Payload Type along with the m=line | | |
442 | | identify the scope and | | |
443 | | applicability of a given RTCP | | |
444 | | feedback to a particular RTP | | |
445 | | Stream. | | |
446 | | | | |
447 +----------+-------------------------------------+-------+----------+
449 RFC4585 Attribute Analysis
451 Since RTCP feedback attributes are Payload Type (PT) scoped, the
452 usage of identical Payload Type values across multiplexed m=lines is
453 described in [I-D.ietf-mmusic-sdp-bundle-negotiation].
455 5.3. RFC5761 - Multiplexing RTP and RTCP
457 RFC5761 [RFC5761] discusses issues that arise when multiplexing RTP
458 data packets and RTP Control Protocol (RTCP) packets on a single UDP
459 port. It describes when such multiplexing is and is not appropriate,
460 and it explains how the Session Description Protocol (SDP) can be
461 used to signal multiplexed sessions.
463 +-----------+----------------------------------+-------+------------+
464 | Name | Notes | Level | Category |
465 +-----------+----------------------------------+-------+------------+
466 | rtcp-mux | RTP and RTCP Multiplexing affect | M | IDENTICAL |
467 | | the entire RTP Session | | |
468 | | | | |
469 +-----------+----------------------------------+-------+------------+
471 RFC5761 Attribute Analysis
473 5.4. RFC4574 - SDP Label Attribute
475 RFC4574 [RFC4574] defines a new Session Description Protocol (SDP)
476 media-level attribute: "label". The "label" attribute carries a
477 pointer to a media stream in the context of an arbitrary network
478 application that uses SDP. The sender of the SDP document can attach
479 the "label" attribute to a particular media stream or streams. The
480 application can then use the provided pointer to refer to each
481 particular media stream in its context.
483 +--------+---------------+-------+----------+
484 | Name | Notes | Level | Category |
485 +--------+---------------+-------+----------+
486 | label | Not Impacted | M | NORMAL |
487 | | | | |
488 +--------+---------------+-------+----------+
490 RFC4574 Attribute Analysis
492 5.5. RFC5432 - QoS Mechanism Selection in SDP
494 RFC5432 [RFC5432] defines procedures to negotiate QOS mechanisms
495 using the Session Description Protocol (SDP) offer/answer model.
497 +----------------+-------------------------------+-------+----------+
498 | Name | Notes | Level | Category |
499 +----------------+-------------------------------+-------+----------+
500 | qos-mech-send | A single DSCP code point per | B | NORMAL |
501 | | flow being multiplexed | | |
502 | | doesn't impact multiplexing | | |
503 | | since QOS mechanisms are | | |
504 | | signaled/scoped per flow. | | |
505 | | | | |
506 | qos-mech-recv | A single DSCP code point per | B | NORMAL |
507 | | flow being multiplexed | | |
508 | | doesn't impact multiplexing | | |
509 | | since QOS mechanisms are | | |
510 | | signaled/scoped per flow. | | |
511 | | | | |
512 +----------------+-------------------------------+-------+----------+
514 RFC5432 Attribute Analysis
516 Multiplexing consideration when multiple DSCP code points are defined
517 per flow can be found in Section 14
519 5.6. RFC4568 - SDP Security Descriptions
521 RFC4568 [RFC4568] defines a Session Description Protocol (SDP)
522 cryptographic attribute for unicast media streams. The attribute
523 describes a cryptographic key and other parameters that serve to
524 configure security for a unicast media stream in either a single
525 message or a roundtrip exchange.
527 +--------+---------------------------------------+-------+----------+
528 | Name | Notes | Level | Category |
529 +--------+---------------------------------------+-------+----------+
530 | crypto | Refer to section 6.2.5 of | M | SPECIAL |
531 | | [I-D.ietf-mmusic-sdp-bundle-negotiati | | |
532 | | on] | | |
533 | | | | |
534 +--------+---------------------------------------+-------+----------+
536 RFC4568 Attribute Analysis
538 If the multiplexing scheme cannot ensure unique SSRCs across all the
539 media lines, multiplexing MUST NOT be performed.
541 5.7. RFC5762 - RTP over DCCP
543 The Real-time Transport Protocol (RTP) is a widely used transport for
544 real-time multimedia on IP networks. The Datagram Congestion Control
545 Protocol (DCCP) is a transport protocol that provides desirable
546 services for real-time applications. RFC5762 [RFC5762] specifies a
547 mapping of RTP onto DCCP, along with associated signaling, such that
548 real-time applications can make use of the services provided by DCCP
550 +--------------------+---------------------+---------+--------------+
551 | Name | Notes | Current | Category |
552 +--------------------+---------------------+---------+--------------+
553 | dccp-service-code | If RFC6773 is not | M | NOT |
554 | | being used in | | RECOMMENDED |
555 | | addition to | | |
556 | | RFC5762, the port | | |
557 | | in the m= line is a | | |
558 | | DCCP port. DCCP | | |
559 | | being a connection | | |
560 | | oriented protocol, | | |
561 | | does not allow | | |
562 | | multiple | | |
563 | | connections on the | | |
564 | | same 5-tuple. | | |
565 | | | | |
566 +--------------------+---------------------+---------+--------------+
567 RFC5762 Attribute Analysis
569 If RFC6773 is being used in addition to RFC5762 and provided that
570 DCCP-in-UDP layer has additional demultiplexing, then it may be
571 possible to use different DCCP service codes for each DCCP flow,
572 given each uses a different DCCP port. Although doing so might
573 conflict with the media type of the m= line. None of this is
574 standardized yet and it wouldn't work as explained. Hence
575 multiplexing MUST NOT be performed even in this alternate scenario.
577 5.8. RFC6773 - DCCP-UDP Encapsulation
579 RFC6773 [RFC6773] document specifies an alternative encapsulation of
580 the Datagram Congestion Control Protocol (DCCP), referred to as DCCP-
581 UDP. This encapsulation allows DCCP to be carried through the
582 current generation of Network Address Translation (NAT) middle boxes
583 without modification of those middle boxes
585 +------------+-------------------------------+-------+--------------+
586 | Name | Notes | Level | Category |
587 +------------+-------------------------------+-------+--------------+
588 | dccp-port | Multiplexing MUST NOT be | M | NOT |
589 | | performed due to potential | | RECOMMENDED |
590 | | conflict between the port | | |
591 | | used for DCCP | | |
592 | | en/decapsulation and the | | |
593 | | RTP. | | |
594 | | | | |
595 +------------+-------------------------------+-------+--------------+
597 RFC6773 Attribute Analysis
599 Since RFC6773 is about tunnelling DCCP in UDP, with the UDP port
600 being the port of the DCCP en-/de-capsulation service. This
601 encapsulation allows arbitrary DCCP packets to be encapsulated and
602 the DCCP port choosen MAY conflict with the port chosen for the RTP
603 traffic.
605 For multiplexing several DCCP-in-UDP encapsulations on the same UDP
606 port, with no RTP traffic on the same port implies collapsing several
607 DCCP port spaces together. This MAY or MAY NOT work depending on the
608 nature of DCCP encapsulations and ports choses thus rendering it to
609 be very application dependant.
611 5.9. RFC5506 - Reduced-Size RTCP in RTP Profile
613 RFC5506 [RFC5506] discusses benefits and issues that arise when
614 allowing Real-time Transport Protocol (RTCP) packets to be
615 transmitted with reduced size.
617 +-------------+--------------------------------+-------+------------+
618 | Name | Notes | Level | Category |
619 +-------------+--------------------------------+-------+------------+
620 | rtcp-rsize | Reduced size RTCP affects the | M | IDENTICAL |
621 | | entire RTP Session | | |
622 | | | | |
623 +-------------+--------------------------------+-------+------------+
625 RFC5506 Attribute Analysis
627 5.10. RFC6787 - Media Resource Control Protocol Version 2
629 The Media Resource Control Protocol Version 2 (MRCPv2) allows client
630 hosts to control media service resources such as speech synthesizers,
631 recognizers, verifiers, and identifiers residing in servers on the
632 network. MRCPv2 is not a "stand-alone" protocol -- it relies on
633 other protocols, such as the Session Initiation Protocol (SIP), to
634 coordinate MRCPv2 clients and servers and manage sessions between
635 them, and the Session Description Protocol (SDP) to describe,
636 discover, and exchange capabilities. It also depends on SIP and SDP
637 to establish the media sessions and associated parameters between the
638 media source or sink and the media server. Once this is done, the
639 MRCPv2 exchange operates over the control session established above,
640 allowing the client to control the media processing resources on the
641 speech resource server. RFC6787 [RFC6787] defines attributes for
642 this purpose.
644 +-----------+---------------+-------+----------+
645 | Name | Notes | Level | Category |
646 +-----------+---------------+-------+----------+
647 | resource | Not Impacted | M | NORMAL |
648 | | | | |
649 | channel | Not Impacted | M | NORMAL |
650 | | | | |
651 +-----------+---------------+-------+----------+
653 RFC6787 Attribute Analysis
655 5.11. RFC5245 - Interactive Connectivity Establishment (ICE)
657 RFC5245 [RFC5245] describes a protocol for Network Address
658 Translator(NAT) traversal for UDP-based multimedia sessions
659 established with the offer/answer model. This protocol is called
660 Interactive Connectivity Establishment (ICE). ICE makes use of the
661 Session Traversal Utilities for NAT (STUN) protocol and its
662 extension,Traversal Using Relay NAT (TURN). ICE can be used by any
663 protocol utilizing the offer/answer model, such as the Session
664 Initiation Protocol (SIP).
666 +--------------------+-------------------------+-------+------------+
667 | Name | Notes | Level | Category |
668 +--------------------+-------------------------+-------+------------+
669 | ice-lite | Not Impacted | S | NORMAL |
670 | | | | |
671 | ice-options | Not Impacted | S | NORMAL |
672 | | | | |
673 | ice-pwd | ice-pwd MUST be the one | B | TRANSPORT |
674 | | that corresponds to the | | |
675 | | m=line chosen for | | |
676 | | setting up the | | |
677 | | underlying transport | | |
678 | | flow | | |
679 | | | | |
680 | ice-ufrag | ice-ufrag MUST be the | B | TRANSPORT |
681 | | one that corresponds to | | |
682 | | the m=line chosen for | | |
683 | | setting up the | | |
684 | | underlying transport | | |
685 | | flow | | |
686 | | | | |
687 | candidate | ice candidate MUST be | M | TRANSPORT |
688 | | the one that | | |
689 | | corresponds to the | | |
690 | | m=line chosen for | | |
691 | | setting up the | | |
692 | | underlying transport | | |
693 | | flow | | |
694 | | | | |
695 | remote-candidates | ice remote candidate | M | TRANSPORT |
696 | | MUST be the one that | | |
697 | | corresponds to the | | |
698 | | m=line chosen for | | |
699 | | setting up the | | |
700 | | underlying transport | | |
701 | | flow | | |
702 | | | | |
703 +--------------------+-------------------------+-------+------------+
705 RFC5245 Attribute Analysis
707 5.12. RFC5285 - RTP Header Extensions
709 RFC5285 [RFC5285] provides a general mechanism to use the header
710 extension feature of RTP (the Real-Time Transport Protocol). It
711 provides the option to use a small number of small extensions in each
712 RTP packet, where the universe of possible extensions is large and
713 registration is de-centralized. The actual extensions in use in a
714 session are signaled in the setup information for that session.
716 +---------+--------------------------------------+-------+----------+
717 | Name | Notes | Level | Category |
718 +---------+--------------------------------------+-------+----------+
719 | extmap | Specific RTP extension document MUST | B | SPECIAL |
720 | | be referred | | |
721 | | | | |
722 +---------+--------------------------------------+-------+----------+
724 RFC5285 Attribute Analysis
726 5.13. RFC3605 - RTCP attribute in SDP
728 Originally, SDP assumed that RTP and RTCP were carried on consecutive
729 ports. However, this is not always true when NATs are involved.
730 [RFC3605] specifies an early mechanism to indicate the RTCP port.
732 +-------+--------------------------------------+-------+------------+
733 | Name | Notes | Level | Category |
734 +-------+--------------------------------------+-------+------------+
735 | rtcp | Identical attribute value MUST be | M | IDENTICAL |
736 | | used since the RTCP port affects the | | |
737 | | entire RTP session. | | |
738 | | | | |
739 +-------+--------------------------------------+-------+------------+
741 RFC3605 Attribute Analysis
743 5.14. RFC5576 - Source-Specific SDP Attributes
745 RFC5576 [RFC5576] defines a mechanism to describe RTP media sources,
746 which are identified by their synchronization source (SSRC)
747 identifiers, in SDP, to associate attributes with these sources, and
748 to express relationships among sources. It also defines several
749 source-level attributes that can be used to describe properties of
750 media sources.
752 +----------------+-------------------------------+-------+----------+
753 | Name | Notes | Level | Category |
754 +----------------+-------------------------------+-------+----------+
755 | ssrc | Refer to Notes below | M | SPECIAL |
756 | | | | |
757 | ssrc-group | Refer to section Section 9 | M | SPECIAL |
758 | | for specific analysis of the | | |
759 | | grouping semantics | | |
760 | | | | |
761 | cname | Not Impacted [Open Issues: | SR | NORMAL |
762 | | what are the rules for CNAME | | |
763 | | duplication across | | |
764 | | sessions?] | | |
765 | | | | |
766 | previous-ssrc | Refer to notes below | SR | SPECIAL |
767 | | | | |
768 | fmtp | Not Impacted | SR | NORMAL |
769 | | | | |
770 +----------------+-------------------------------+-------+----------+
772 RFC5576 Attribute Analysis
774 If SSRCs are repeated across m=lines being multiplexed, they MUST all
775 represent the same underlying RTP Source. For more details on
776 implications of SSRC values with in the context of multiplexing
777 please refer to [I-D.ietf-mmusic-sdp-bundle-negotiation]
779 5.15. RFC6236 - Image Attributes in SDP
781 RFC6236 [RFC6236] proposes a new generic session setup attribute to
782 make it possible to negotiate different image attributes such as
783 image size. A possible use case is to make it possible for a low-end
784 hand-held terminal to display video without the need to rescale the
785 image,something that may consume large amounts of memory and
786 processing power. The document also helps to maintain an optimal
787 bitrate for video as only the image size that is desired by the
788 receiver is transmitted.
790 +------------+---------------+-------+----------+
791 | Name | Notes | Level | Category |
792 +------------+---------------+-------+----------+
793 | imageattr | Not Impacted | M | NORMAL |
794 | | | | |
795 +------------+---------------+-------+----------+
797 RFC6236 Attribute Analysis
799 5.16. RFC6285 - Rapid Acquisition of Multicast RTP Sessions
801 RFC6285 [RFC6285] describes a method using the existing RTP and RTP
802 Control Protocol (RTCP) machinery that reduces the acquisition delay.
803 In this method, an auxiliary unicast RTP session carrying the
804 Reference Information to the receiver precedes or accompanies the
805 multicast stream. This unicast RTP flow can be transmitted at a
806 faster than natural bitrate to further accelerate the acquisition.
807 The motivating use case for this capability is multicast applications
808 that carry real-time compressed audio and video.
810 +---------------+-------------------+-------+------------------+
811 | Name | Notes | Level | Category |
812 +---------------+-------------------+-------+------------------+
813 | rams-updates | Not recommended | M | NOT RECOMMENDED |
814 | | | | |
815 +---------------+-------------------+-------+------------------+
817 RFC6285 Attribute Analysis
819 5.17. RFC6230 - Media Control Channel Framework
821 RFC6230 [RFC6230] describes a framework and protocol for application
822 deployment where the application programming logic and media
823 processing are distributed. This implies that application
824 programming logic can seamlessly gain access to appropriate resources
825 that are not co-located on the same physical network entity. The
826 framework uses the Session Initiation Protocol (SIP) to establish an
827 application-level control mechanism between application servers and
828 associated external servers such as media servers.
830 +---------+-----------------+-------+----------+
831 | Name | Notes | Level | Category |
832 +---------+-----------------+-------+----------+
833 | cfw-id | Not Applicable | M | NORMAL |
834 | | | | |
835 +---------+-----------------+-------+----------+
837 RFC6230 Attribute Analysis
839 5.18. RFC6364 - SDP Elements for FEC Framework
841 RFC6364 [RFC6364] specifies the use of the Session Description
842 Protocol (SDP) to describe the parameters required to signal the
843 Forward Error Correction (FEC) Framework Configuration Information
844 between the sender(s) and receiver(s). This document also provides
845 examples that show the semantics for grouping multiple source and
846 repair flows together for the applications that simultaneously use
847 multiple instances of the FEC Framework.
849 +------------------+---------------+-------+----------+
850 | Name | Notes | Level | Category |
851 +------------------+---------------+-------+----------+
852 | fec-source-flow | Not Impacted | M | NORMAL |
853 | | | | |
854 | fec-repair-flow | Not Impacted | M | NORMAL |
855 | | | | |
856 | repair-window | Not Impacted | M | NORMAL |
857 | | | | |
858 +------------------+---------------+-------+----------+
860 RFC6364 Attribute Analysis
862 5.19. RFC4796 - Content Attribute
864 RFC4796 [RFC4796] defines a new Session Description Protocol (SDP)
865 media-level attribute, 'content'. The 'content' attribute defines
866 the content of the media stream to a more detailed level than the
867 media description line. The sender of an SDP session description can
868 attach the 'content' attribute to one or more media streams. The
869 receiving application can then treat each media stream differently
870 (e.g., show it on a big or small screen) based on its content.
872 +----------+---------------+-------+----------+
873 | Name | Notes | Level | Category |
874 +----------+---------------+-------+----------+
875 | content | Not Impacted | M | NORMAL |
876 | | | | |
877 +----------+---------------+-------+----------+
879 RFC4796 Attribute Analysis
881 5.20. RFC3407 - SDP Simple Capability Declaration
883 RFC3407 [RFC3407] defines a set of Session Description Protocol (SDP)
884 attributes that enables SDP to provide a minimal and backwards
885 compatible capability declaration mechanism.
887 +----------+----------------------+-------+----------+
888 | Name | Notes | Level | Category |
889 +----------+----------------------+-------+----------+
890 | sqn | Not Impacted | B | NORMAL |
891 | | | | |
892 | csdc | Not Impacted. | B | NORMAL |
893 | | | | |
894 | cpar | Refer to Section 15 | B | SPECIAL |
895 | | | | |
896 | cparmin | Refer to Section 15 | B | SPECIAL |
897 | | | | |
898 | cparmax | Refer to Section 15 | B | SPECIAL |
899 | | | | |
900 +----------+----------------------+-------+----------+
902 RFC3407 Attribute Analysis
904 5.21. RFC6284 - Port Mapping between Unicast and Multicast RTP Sessions
906 RFC6284 [RFC6284] presents a port mapping solution that allows RTP
907 receivers to choose their own ports for an auxiliary unicast session
908 in RTP applications using both unicast and multicast services. The
909 solution provides protection against denial-of-service or packet
910 amplification attacks that could be used to cause one or more RTP
911 packets to be sent to a victim client
913 +------------------+-------------------------+-------+--------------+
914 | Name | Notes | Level | Category |
915 +------------------+-------------------------+-------+--------------+
916 | portmapping-req | Not recommended, if | M | NOT |
917 | | port mapping is | | RECOMMENDED |
918 | | required by the | | |
919 | | application | | |
920 | | | | |
921 +------------------+-------------------------+-------+--------------+
923 RFC6284 Attribute Analysis
925 5.22. RFC6714 - MSRP-CEMA
927 RFC6714 [RFC6714] defines a Message Session Relay Protocol (MSRP)
928 extension, Connection Establishment for Media Anchoring (CEMA).
929 Support of this extension is OPTIONAL. The extension allows middle
930 boxes to anchor the MSRP connection, without the need for middle
931 boxes to modify the MSRP messages; thus, it also enables secure end-
932 to-end MSRP communication in networks where such middle boxes are
933 deployed. This document also defines a Session Description Protocol
934 (SDP) attribute, 'msrp-cema', that MSRP endpoints use to indicate
935 support of the CEMA extension.
937 +------------+---------------+-------+----------+
938 | Name | Notes | Level | Category |
939 +------------+---------------+-------+----------+
940 | msrp-cema | Not Impacted | M | NORMAL |
941 | | | | |
942 +------------+---------------+-------+----------+
944 RFC6714 Attribute Analysis
946 5.23. RFC4583 - SDP Format for BFCP Streams
948 RFC4583 [RFC4583] document specifies how to describe Binary Floor
949 Control Protocol (BFCP) streams in Session Description Protocol (SDP)
950 descriptions. User agents using the offer/answer model to establish
951 BFCP streams use this format in their offers and answers
953 +------------+---------------------------------+-------+------------+
954 | Name | Notes | Level | Category |
955 +------------+---------------------------------+-------+------------+
956 | floorctrl | Must be repeated across all the | M | IDENTICAL |
957 | | multiplexed m=lines | | |
958 | | | | |
959 | confid | Not Impacted | M | NORMAL |
960 | | | | |
961 | userid | Not Impacted | M | NORMAL |
962 | | | | |
963 | floorid | The floorid MUST be globally | M | NORMAL |
964 | | unique | | |
965 | | | | |
966 +------------+---------------------------------+-------+------------+
968 RFC4583 Attribute Analysis
970 5.24. RFC5547 - SDP Offer/Answer for File Transfer
972 RFC5547 [RFC5547] provides a mechanism to negotiate the transfer of
973 one or more files between two endpoints by using the Session
974 Description Protocol (SDP) offer/answer model specified in [RFC3264].
976 +----------------------+---------------+-------+----------+
977 | Name | Notes | Level | Category |
978 +----------------------+---------------+-------+----------+
979 | file-selector | Not Impacted | M | NORMAL |
980 | | | | |
981 | file-transfer-id | Not Impacted | M | NORMAL |
982 | | | | |
983 | file-disposition | Not Impacted | M | NORMAL |
984 | | | | |
985 | file-date | Not Impacted | M | NORMAL |
986 | | | | |
987 | file-iconfile-range | Not Impacted | M | NORMAL |
988 | | | | |
989 +----------------------+---------------+-------+----------+
991 RFC5547 Attribute Analysis
993 5.25. RFC6489 - SDP and RTP Media Loopback Extension
995 [MEDIA_LOOPBACK] adds new SDP media types and attributes, which
996 enable establishment of media sessions where the media is looped back
997 to the transmitter. Such media sessions will serve as monitoring and
998 troubleshooting tools by providing the means for measurement of more
999 advanced VoIP, Real-time Text and Video over IP performance metrics.
1001 +------------------------------+----------------+-------+----------+
1002 | Name | Notes | Level | Category |
1003 +------------------------------+----------------+-------+----------+
1004 | loopback rtp-pkt-loopback | Not Impacted | M | NORMAL |
1005 | | | | |
1006 | loopback rtp-media-loopback | Not Impacted | M | NORMAL |
1007 | | | | |
1008 | loopback-source | Not Impacted | M | NORMAL |
1009 | | | | |
1010 | loopback-mirror | Not Impacted | M | NORMAL |
1011 | | | | |
1012 +------------------------------+----------------+-------+----------+
1014 An Extension to the Session Description Protocol (SDP)
1015 and Real-time Transport Protocol (RTP) for Media Loopback
1017 5.26. RFC5760 - RTCP with Unicast Feedback
1019 RFC5760 [RFC5760] specifies an extension to the Real-time Transport
1020 Control Protocol (RTCP) to use unicast feedback to a multicast
1021 sender. The proposed extension is useful for single-source multicast
1022 sessions such as Source-Specific Multicast (SSM) communication where
1023 the traditional model of many-to-many group communication is either
1024 not available or not desired.
1026 +---------------+------------------------------+-------+------------+
1027 | Name | Notes | Level | Category |
1028 +---------------+------------------------------+-------+------------+
1029 | rtcp-unicast | The attribute MUST be | M | IDENTICAL |
1030 | | reported across all m=lines | | |
1031 | | multiplexed | | |
1032 | | | | |
1033 +---------------+------------------------------+-------+------------+
1035 RFC5760 Attribute Analysis
1037 5.27. RFC3611 - RTCP XR
1039 RFC3611 [RFC3611] defines the Extended Report (XR) packet type for
1040 the RTP Control Protocol (RTCP), and defines how the use of XR
1041 packets can be signaled by an application if it employs the Session
1042 Description Protocol (SDP).
1044 +----------+---------------+-------+----------+
1045 | Name | Notes | Level | Category |
1046 +----------+---------------+-------+----------+
1047 | rtcp-xr | Not Impacted | B | NORMAL |
1048 | | | | |
1049 +----------+---------------+-------+----------+
1051 RFC3611 Attribute Analysis
1053 5.28. RFC5939 - SDP Capability Negotiation
1055 RFC5939 [RFC5939] defines a general SDP Capability Negotiation
1056 framework. It also specifies how to provide attributes and transport
1057 protocols as capabilities and negotiate them using the framework.
1058 Extensions for other types of capabilities (e.g., media types and
1059 media formats) may be provided in other documents.
1061 +-------+-------------------------------+-------+----------+
1062 | Name | Notes | Level | Category |
1063 +-------+-------------------------------+-------+----------+
1064 | pcfg | Refer to section Section 15 | M | SPECIAL |
1065 | | | | |
1066 | acfg | Refer to section Section 15 | M | SPECIAL |
1067 | | | | |
1068 | csup | Not Impacted | B | NORMAL |
1069 | | | | |
1070 | creq | Not Impacted | B | NORMAL |
1071 | | | | |
1072 | acap | Refer to section Section 15 | B | SPECIAL |
1073 | | | | |
1074 | tcap | Refer to section Section 15 | B | SPECIAL |
1075 | | | | |
1076 +-------+-------------------------------+-------+----------+
1078 RFC5939 Attribute Analysis
1080 5.29. RFC6781 - SDP Media Capabilities Negotiation
1082 Session Description Protocol (SDP) capability negotiation provides a
1083 general framework for indicating and negotiating capabilities in SDP.
1084 The base framework defines only capabilities for negotiating
1085 transport protocols and attributes. [RFC6781] extends the framework
1086 by defining media capabilities that can be used to negotiate media
1087 types and their associated parameters.
1089 +---------+------------------------------+-------+----------+
1090 | Name | Notes | Level | Category |
1091 +---------+------------------------------+-------+----------+
1092 | rmcap | Not Impacted | B | NORMAL |
1093 | | | | |
1094 | omcap | Not Impacted | B | NORMAL |
1095 | | | | |
1096 | mfcap | Not Impacted | B | NORMAL |
1097 | | | | |
1098 | mscap | Refer to section Section 15 | B | SPECIAL |
1099 | | | | |
1100 | lcfg | Refer to section Section 15 | B | SPECIAL |
1101 | | | | |
1102 | sescap | Not Impacted | S | NORMAL |
1103 | | | | |
1104 +---------+------------------------------+-------+----------+
1106 draft-ietf-mmusic-sdp-media-capabilities Attribute Analysis
1108 5.30. RFC4567 - Key Management Extensions for SDP and RTSP
1110 RFC4567 [RFC4567] defines general extensions for Session Description
1111 Protocol (SDP) and Real Time Streaming Protocol (RTSP) to carry
1112 messages, as specified by a key management protocol, in order to
1113 secure the media. These extensions are presented as a framework, to
1114 be used by one or more key management protocols. As such, their use
1115 is meaningful only when complemented by an appropriate key management
1116 protocol.
1118 +-----------+----------------------------------+-------+------------+
1119 | Name | Notes | Level | Category |
1120 +-----------+----------------------------------+-------+------------+
1121 | key-mgmt | Key management protocol MUST be | B | IDENTICAL |
1122 | | identical across all the | | |
1123 | | m=lines | | |
1124 | | | | |
1125 +-----------+----------------------------------+-------+------------+
1127 RFC4567 Attribute Analysis
1129 5.31. RFC4572 - Comedia over TLS in SDP
1131 RFC4572 [RFC4572] specifies how to establish secure connection-
1132 oriented media transport sessions over the Transport Layer Security
1133 (TLS) protocol using the Session Description Protocol (SDP). It
1134 defines a new SDP protocol identifier, 'TCP/TLS'. It also defines
1135 the syntax and semantics for an SDP 'fingerprint' attribute that
1136 identifies the certificate that will be presented for the TLS
1137 session. This mechanism allows media transport over TLS connections
1138 to be established securely, so long as the integrity of session
1139 descriptions is assured.
1141 +--------------+-------------------------------+-------+------------+
1142 | Name | Notes | Level | Category |
1143 +--------------+-------------------------------+-------+------------+
1144 | fingerprint | Fingerprint value from the | B | TRANSPORT |
1145 | | m=line defining the | | |
1146 | | underlying transport is | | |
1147 | | chosen | | |
1148 | | | | |
1149 +--------------+-------------------------------+-------+------------+
1151 RFC4572 Attribute Analysis
1153 5.32. RFC4570 - SDP Source Filters
1155 RFC4570 [RFC4570] describes how to adapt the Session Description
1156 Protocol (SDP) to express one or more source addresses as a source
1157 filter for one or more destination "connection" addresses. It
1158 defines the syntax and semantics for an SDP "source-filter" attribute
1159 that may reference either IPv4 or IPv6 address(es) as either an
1160 inclusive or exclusive source list for either multicast or unicast
1161 destinations. In particular, an inclusive source-filter can be used
1162 to specify a Source-Specific Multicast (SSM) session
1164 +----------------+-----------------------------+-------+------------+
1165 | Name | Notes | Level | Category |
1166 +----------------+-----------------------------+-------+------------+
1167 | source-filter | The attribute MUST be | B | IDENTICAL |
1168 | | repeated across all m=lines | | |
1169 | | multiplexed | | |
1170 | | | | |
1171 +----------------+-----------------------------+-------+------------+
1173 RFC4570 Attribute Analysis
1175 5.33. RFC6128 - RTCP Port for Multicast Sessions
1177 The Session Description Protocol (SDP) has an attribute that allows
1178 RTP applications to specify an address and a port associated with the
1179 RTP Control Protocol (RTCP) traffic. In RTP-based source-specific
1180 multicast (SSM) sessions, the same attribute is used to designate the
1181 address and the RTCP port of the Feedback Target in the SDP
1182 description. However, the RTCP port associated with the SSM session
1183 itself cannot be specified by the same attribute to avoid ambiguity,
1184 and thus, is required to be derived from the "m=" line of the media
1185 description. Deriving the RTCP port from the "m=" line imposes an
1186 unnecessary restriction. RFC6128 [RFC6128] removes this restriction
1187 by introducing a new SDP attribute.
1189 +-----------------+----------------------------+-------+------------+
1190 | Name | Notes | Level | Category |
1191 +-----------------+----------------------------+-------+------------+
1192 | multicast-rtcp | Multicast RTCP port MUST | B | IDENTICAL |
1193 | | be identical across all | | |
1194 | | the m=lines | | |
1195 | | | | |
1196 +-----------------+----------------------------+-------+------------+
1198 RFC6128 Attribute Analysis
1200 5.34. RFC6189 - ZRTP
1202 RFC6189 [RFC6189] defines ZRTP, a protocol for media path Diffie-
1203 Hellman exchange to agree on a session key and parameters for
1204 establishing unicast Secure Real-time Transport Protocol (SRTP)
1205 sessions for Voice over IP (VoIP) applications.
1207 +------------+-------------------------------+-------+--------------+
1208 | Name | Notes | Level | Category |
1209 +------------+-------------------------------+-------+--------------+
1210 | zrtp-hash | Complicates if all the | M | NOT |
1211 | | m=lines are not authenticated | | RECOMMENDED |
1212 | | as given in the example | | |
1213 | | below | | |
1214 | | | | |
1215 +------------+-------------------------------+-------+--------------+
1217 RFC6189 Attribute Analysis
1219 Example: Multiplexing media descriptions having attribute zrtp-hash
1220 defined with the media descriptions lacking it, would either
1221 complicate the handling of multiplexed stream or fail multiplexing.
1223 v=0
1224 o=bob 2890844527 2890844527 IN IP4 client.biloxi.example.com
1225 s=
1226 c=IN IP4 client.biloxi.example.com
1227 t=0 0
1228 m=audio 3456 RTP/AVP 97
1229 a=rtpmap:97 iLBC/8000
1230
1231 a=zrtp-hash:1.10 fe30efd02423cb054e50efd0248742ac7a52c8f91bc2
1232 df881ae642c371ba46df
1233
1234 m=video 34567 RTP/AVP 31
1235 a=rtpmap:31 H261/90000
1237 5.35. RFC4145 - Connection-Oriented Media
1239 RFC4145 [RFC4145] describes how to express media transport over TCP
1240 using the Session Description Protocol (SDP). It defines the SDP
1241 'TCP' protocol identifier, the SDP 'setup' attribute, which describes
1242 the connection setup procedure, and the SDP 'connection' attribute,
1243 which handles connection reestablishment.
1245 +-------------+--------------------------------+-------+------------+
1246 | Name | Notes | Level | Category |
1247 +-------------+--------------------------------+-------+------------+
1248 | setup | MUST be identical across all | B | IDENTICAL |
1249 | | m=lines | | |
1250 | | | | |
1251 | connection | MUST be identical across all | B | IDENTICAL |
1252 | | m=lines | | |
1253 | | | | |
1254 +-------------+--------------------------------+-------+------------+
1256 RFC4145 Attribute Analysis
1258 5.36. RFC5159 - OMA BCAST SDP Attributes
1260 RFC5159 [RFC5159] provides descriptions of Session Description
1261 Protocol (SDP) attributes used by the Open Mobile Alliance's
1262 Broadcast Service and Content Protection specification.
1264 +---------------------+---------------+-------+----------+
1265 | Name | Notes | Level | Category |
1266 +---------------------+---------------+-------+----------+
1267 | bcastversion | Not Impacted | S | NORMAL |
1268 | | | | |
1269 | stkmstream | Not Impacted | B | NORMAL |
1270 | | | | |
1271 | SRTPAuthentication | Not Impacted | M | NORMAL |
1272 | | | | |
1273 | SRTPROCTxRate | Not Impacted | M | NORMAL |
1274 | | | | |
1275 +---------------------+---------------+-------+----------+
1277 RFC5159 Attribute Analysis
1279 5.37. RFC6193 - Media Description for IKE in SDP
1281 RFC6193 [RFC6193] specifies how to establish a media session that
1282 represents a virtual private network using the Session Initiation
1283 Protocol for the purpose of on-demand media/application sharing
1284 between peers. It extends the protocol identifier of the Session
1285 Description Protocol (SDP) so that it can negotiate use of the
1286 Internet Key Exchange Protocol (IKE) for media sessions in the SDP
1287 offer/answer model.
1289 +-------------------+--------------------------+-------+------------+
1290 | Name | Notes | Level | Category |
1291 +-------------------+--------------------------+-------+------------+
1292 | ike-setup | Attribute MUST be | B | IDENTICAL |
1293 | | identical across all the | | |
1294 | | m=lines | | |
1295 | | | | |
1296 | psk-fingerprint | Attribute MUST be | B | IDENTICAL |
1297 | | identical across all the | | |
1298 | | m=lines | | |
1299 | | | | |
1300 | ike-esp | Attribute MUST be | B | IDENTICAL |
1301 | | identical across all the | | |
1302 | | m=lines | | |
1303 | | | | |
1304 | ike-esp-udpencap | Attribute MUST be | B | IDENTICAL |
1305 | | identical across all the | | |
1306 | | m=lines | | |
1307 | | | | |
1308 +-------------------+--------------------------+-------+------------+
1310 RFC6193 Attribute Analysis
1312 With the above SDP constraints, a session multiplexed with multiple
1313 m=lines will use only one IPSec association for all of the m= lines.
1315 5.38. RFC6064 - SDP and RTSP Extensions for 3GPP
1317 The Packet-switched Streaming Service (PSS) and the Multimedia
1318 Broadcast/Multicast Service (MBMS) defined by 3GPP use the Session
1319 Description Protocol (SDP) and Real Time Streaming Protocol (RTSP)
1320 with some extensions. RFC6064 [RFC6064] provides information about
1321 these extensions and registers the RTSP and SDP extensions with IANA.
1323 +-------------------------------+------------+-------+--------------+
1324 | Name | Notes | Level | Category |
1325 +-------------------------------+------------+-------+--------------+
1326 | X-predecbufsize | Refer to | M | NOT |
1327 | | notes | | RECOMMENDED |
1328 | | below | | |
1329 | | | | |
1330 | X-initpredecbufperiod | Refer to | M | NOT |
1331 | | notes | | RECOMMENDED |
1332 | | below | | |
1333 | | | | |
1334 | X-initpostdecbufperiod | Refer to | M | NOT |
1335 | | notes | | RECOMMENDED |
1336 | | below | | |
1337 | | | | |
1338 | X-decbyterate | Refer to | M | NOT |
1339 | | notes | | RECOMMENDED |
1340 | | below | | |
1341 | | | | |
1342 | 3gpp-videopostdecbufsize | Refer to | M | NOT |
1343 | | notes | | RECOMMENDED |
1344 | | below | | |
1345 | | | | |
1346 | framesize | Refer to | M | NOT |
1347 | | notes | | RECOMMENDED |
1348 | | below | | |
1349 | | | | |
1350 | 3GPP-Integrity-Key | Refer to | S | NOT |
1351 | | notes | | RECOMMENDED |
1352 | | below | | |
1353 | | | | |
1354 | 3GPP-SRTP-Config | Refer to | M | NOT |
1355 | | notes | | RECOMMENDED |
1356 | | below | | |
1357 | | | | |
1358 | alt,alt-default-id | Refer to | M | NOT |
1359 | | notes | | RECOMMENDED |
1360 | | below | | |
1361 | | | | |
1362 | alt-group | Refer to | M | NOT |
1363 | | notes | | RECOMMENDED |
1364 | | below | | |
1365 | | | | |
1366 | 3GPP-Adaptation-Support | Refer to | M | NOT |
1367 | | notes | | RECOMMENDED |
1368 | | below | | |
1369 | | | | |
1370 | 3GPP-Asset-Informatio | Refer to | B | NOT |
1371 | | notes | | RECOMMENDED |
1372 | | below | | |
1373 | | | | |
1374 | mbms-mode | Refer to | B | NOT |
1375 | | notes | | RECOMMENDED |
1376 | | below | | |
1377 | | | | |
1378 | mbms-flowid | MRefer to | M | NOT |
1379 | | notes | | RECOMMENDED |
1380 | | below | | |
1381 | | | | |
1382 | mbms-repair | Refer to | B | NOT |
1383 | | notes | | RECOMMENDED |
1384 | | below | | |
1385 | | | | |
1386 | 3GPP-QoE-Metrics:Corruption | Refer to | M | NOT |
1387 | duration | notes | | RECOMMENDED |
1388 | | below | | |
1389 | | | | |
1390 | 3GPP-QoE-Metrics:Rebuffering | Refer to | M | NOT |
1391 | duration | notes | | RECOMMENDED |
1392 | | below | | |
1393 | | | | |
1394 | 3GPP-QoE-Metrics:Initial | Refer to | M | NOT |
1395 | buffering duration | notes | | RECOMMENDED |
1396 | | below | | |
1397 | | | | |
1398 | 3GPP-QoE-Metrics:Successive | Refer to | M | NOT |
1399 | loss of RTP packets | notes | | RECOMMENDED |
1400 | | below | | |
1401 | | | | |
1402 | 3GPP-QoE-Metrics:Frame rate | Refer to | M | NOT |
1403 | deviation | notes | | RECOMMENDED |
1404 | | below | | |
1405 | | | | |
1406 | 3GPP-QoE-Metrics:Jitter | Refer to | M | NOT |
1407 | duration | notes | | RECOMMENDED |
1408 | | below | | |
1409 | | | | |
1410 | 3GPP-QoE-Metrics:Content | Refer to | B | NOT |
1411 | Switch Time | notes | | RECOMMENDED |
1412 | | below | | |
1413 | | | | |
1414 | 3GPP-QoE-Metrics:Average | Refer to | M | NOT |
1415 | Codec Bitrat | notes | | RECOMMENDED |
1416 | | below | | |
1417 | | | | |
1418 | 3GPP-QoE-Metrics:Codec | Refer to | M | NOT |
1419 | Information | notes | | RECOMMENDED |
1420 | | below | | |
1421 | | | | |
1422 | 3GPP-QoE-Metrics:Buffer | Refer to | M | NOT |
1423 | Status | notes | | RECOMMENDED |
1424 | | below | | |
1425 | | | | |
1426 +-------------------------------+------------+-------+--------------+
1428 RFC6064 Attribute Analysis
1430 [RFC6064] defines SDP attributes that are applicable in the
1431 declarative usage of SDP alone. For purposes of this document, only
1432 the Offer/Answer usage of SDP is considered as mandated by
1434 [I-D.ietf-mmusic-sdp-bundle-negotiation].
1436 5.39. RFC3108 - ATM SDP
1438 RFC3108 [RFC3108] describes conventions for using the Session
1439 Description Protocol (SDP) described for controlling ATM Bearer
1440 Connections, and any associated ATM Adaptation Layer (AAL)
1442 +------------------------+--------------+-------+----------+
1443 | Name | Notes | Level | Category |
1444 +------------------------+--------------+-------+----------+
1445 | aalType | Not Impacted | B | NORMAL |
1446 | eecid | Not Impacted | B | NORMAL |
1447 | aalType | Not Impacted | B | NORMAL |
1448 | capability | Not Impacted | B | NORMAL |
1449 | qosClass | Not Impacted | B | NORMAL |
1450 | bcob | Not Impacted | B | NORMAL |
1451 | stc | Not Impacted | B | NORMAL |
1452 | upcc | Not Impacted | B | NORMAL |
1453 | atmQOSparms | Not Impacted | B | NORMAL |
1454 | atmTrfcDesc | Not Impacted | B | NORMAL |
1455 | abrParms | Not Impacted | B | NORMAL |
1456 | abrSetup | Not Impacted | B | NORMAL |
1457 | bearerType | Not Impacted | B | NORMAL |
1458 | lij | Not Impacted | B | NORMAL |
1459 | anycast | Not Impacted | B | NORMAL |
1460 | cache | Not Impacted | B | NORMAL |
1461 | bearerSigIE | Not Impacted | B | NORMAL |
1462 | aalApp | Not Impacted | B | NORMAL |
1463 | cbrRate | Not Impacted | B | NORMAL |
1464 | sbc | Not Impacted | B | NORMAL |
1465 | clkrec | Not Impacted | B | NORMAL |
1466 | fec | Not Impacted | B | NORMAL |
1467 | prtfl | Not Impacted | B | NORMAL |
1468 | structure | Not Impacted | B | NORMAL |
1469 | cpsSDUsize | Not Impacted | B | NORMAL |
1470 | aal2CPS | Not Impacted | B | NORMAL |
1471 | aal2CPSSDUrate | Not Impacted | B | NORMAL |
1472 | aal2sscs3661unassured | Not Impacted | B | NORMAL |
1473 | aal2sscs3661assured | Not Impacted | B | NORMAL |
1474 | aal2sscs3662 | Not Impacted | B | NORMAL |
1475 | aal5sscop | Not Impacted | B | NORMAL |
1476 | atmmap | Not Impacted | B | NORMAL |
1477 | silenceSupp | Not Impacted | B | NORMAL |
1478 | ecan | Not Impacted | B | NORMAL |
1479 | gc | Not Impacted | B | NORMAL |
1480 | profileDesc | Not Impacted | B | NORMAL |
1481 | vsel | Not Impacted | B | NORMAL |
1482 | dsel | Not Impacted | B | NORMAL |
1483 | fsel | Not Impacted | B | NORMAL |
1484 | onewaySel | Not Impacted | B | NORMAL |
1485 | codecconfig | Not Impacted | B | NORMAL |
1486 | isup_usi | Not Impacted | B | NORMAL |
1487 | isup_usi | Not Impacted | B | NORMAL |
1488 | chain | Not Impacted | B | NORMAL |
1489 | | | | |
1490 +------------------------+--------------+-------+----------+
1492 RFC3108 Attribute Analysis
1494 RFC3108 describes conventions for using the Session Description
1495 Protocol (SDP) for characterizing ATM bearer connections using an
1496 AAL1, AAL2 or AAL5 adaptation layers. For AAL1, AAL2 and AAL5,
1497 bearer connections can be used to transport single media streams. In
1498 addition, for AAL1 and AAL2, multiple media streams may be
1499 multiplexed into a bearer connection. For all adaptation types
1500 (AAL1, AAL2 and AAL5), bearer connections may be bundled into a
1501 single media group. In all cases addressed by RFC3108, a real-time
1502 media stream (voice, video, voiceband data, pseudo-wire and others)
1503 or a multiplex of media streams is mapped directly into an ATM
1504 connection. RFC3108 does not address cases where ATM serves as a
1505 low-level transport pipe for IP packets which in turn may carry one
1506 or more real-time (e.g. VoIP) media sessions with a life-cycle
1507 different from that of the underlying ATM transport.
1509 5.40. 3GPP TS 24.182
1511 3GPP TS 24.182 [R3GPPTS24.182] specifies IP multimedia subsystem
1512 Custom Alerting tones
1514 +-------------+----------------------------------+-------+----------+
1515 | Name | Notes | Level | Category |
1516 +-------------+----------------------------------+-------+----------+
1517 | g.3gpp.cat | Usage defined for the IP | M | NORMAL |
1518 | | Multimedia Subsystem | | |
1519 | | | | |
1520 +-------------+----------------------------------+-------+----------+
1522 3GPP TS 24.182 Attribute Analysis
1524 5.41. 3GPP TS 24.183
1526 3GPP TS 24.183 [R3GPPTS24.183]specifies IP multimedia subsystem
1527 Custom Ringing Signal
1528 +-------------+----------------------------------+-------+----------+
1529 | Name | Notes | Level | Category |
1530 +-------------+----------------------------------+-------+----------+
1531 | g.3gpp.crs | Usage defined for the IP | M | NORMAL |
1532 | | Multimedia Subsystem | | |
1533 | | | | |
1534 +-------------+----------------------------------+-------+----------+
1536 3GPP TS 24.183 Attribute Analysis
1538 5.42. 3GPP TS 24.229
1540 3GPP TS 24.229 [R3GPPTS24.229]IP multimedia call control protocol
1541 based on Session Initial protocol and Session Description Protocol.
1543 +------------------+---------------------------+-------+------------+
1544 | Name | Notes | Level | Category |
1545 +------------------+---------------------------+-------+------------+
1546 | secondary-realm | Per media-level attribute | M | TRANSPORT |
1547 | | MUST be used per | | |
1548 | | underlying transport | | |
1549 | | | | |
1550 | visited-realm | Per media-level attribute | M | TRANSPORT |
1551 | | MUST be used per | | |
1552 | | underlying transport | | |
1553 | | | | |
1554 | omr-m-cksum | Not Impacted | M | NORMAL |
1555 | | | | |
1556 | omr-s-cksum | Not Impacted | M | NORMAL |
1557 | | | | |
1558 | omr-m-att | Not Impacted | M | NORMAL |
1559 | | | | |
1560 | omr-s-bw | Not Impacted | M | NORMAL |
1561 | | | | |
1562 | omr-s-bw | Not Impacted | M | NORMAL |
1563 | | | | |
1564 | omr-m-att | Not Impacted | M | NORMAL |
1565 | | | | |
1566 | omr-codecs | Not Impacted | M | NORMAL |
1567 | | | | |
1568 +------------------+---------------------------+-------+------------+
1570 3GPP TS 24.229 Attribute Analysis
1572 5.43. ITU T.38
1574 ITU T.38[T.38] defines procedures for real-time Group 3 facsimile
1575 communications over IP networks.
1577 +------------------------+---------------+-------+----------+
1578 | Name | Notes | Level | Category |
1579 +------------------------+---------------+-------+----------+
1580 | T38FaxVersion | Not Impacted | S | NORMAL |
1581 | | | | |
1582 | T38MaxBitRate | Not Impacted | S | NORMAL |
1583 | | | | |
1584 | T38FaxFillBitRemoval | Not Impacted | S | NORMAL |
1585 | | | | |
1586 | T38FaxTranscodingMMR | Not Impacted | S | NORMAL |
1587 | | | | |
1588 | T38FaxTranscodingJBIG | Not Impacted | S | NORMAL |
1589 | | | | |
1590 | T38FaxRateManagement | Not Impacted | S | NORMAL |
1591 | | | | |
1592 | T38FaxMaxBuffer | Not Impacted | S | NORMAL |
1593 | | | | |
1594 | T38FaxMaxDatagram | Not Impacted | S | NORMAL |
1595 | | | | |
1596 | T38FaxUdpEC | Not Impacted | S | NORMAL |
1597 | | | | |
1598 +------------------------+---------------+-------+----------+
1600 Historic Attribute Analysis
1602 The ITU T.38 attributes are clearly unaffected by multiplexing and
1603 are specific to the working of the fax protocol itself.
1605 5.44. ITU-T H.248.15
1607 ITU-T H.248.15 [H.248.15] defines Gateway Control Protocol SDP H.248
1608 package attribute
1609 +-----------+------------------------------------+-------+----------+
1610 | Name | Notes | Level | Category |
1611 +-----------+------------------------------------+-------+----------+
1612 | h248item | It is also only applicable for | B | SPECIAL |
1613 | | signaling the inclusion of H.248 | | |
1614 | | extension packages to a gateway | | |
1615 | | via the local and remote | | |
1616 | | descriptors. The attribute itself | | |
1617 | | is unaffected by multiplexing, but | | |
1618 | | the packaged referenced in a | | |
1619 | | specific use of the attribute may | | |
1620 | | be impacted. Further analysis of | | |
1621 | | each package is needed to | | |
1622 | | determine if there is an issue. | | |
1623 | | This is only a concern in | | |
1624 | | environments using a decomposed | | |
1625 | | server/gateway with H.248 signaled | | |
1626 | | between them. The ITU-T will need | | |
1627 | | to do further analysis of various | | |
1628 | | packages when they specify how to | | |
1629 | | signal the use of multiplexing to | | |
1630 | | a gateway. | | |
1631 | | | | |
1632 +-----------+------------------------------------+-------+----------+
1634 Historic Attribute Analysis
1636 5.45. RFC4975 - The Message Session Relay Protocol
1638 RFC4975 [RFC4975] the Message Session Relay Protocol, a protocol for
1639 transmitting a series of related instant messages in the context of a
1640 session. Message sessions are treated like any other media stream
1641 when set up via a rendezvous or session creation protocol such as the
1642 Session Initiation Protocol.
1644 +-----------------------+---------------+-------+----------+
1645 | Name | Notes | Level | Category |
1646 +-----------------------+---------------+-------+----------+
1647 | accept-types | Not Impacted | M | NORMAL |
1648 | | | | |
1649 | accept-wrapped-types | Not Impacted | M | NORMAL |
1650 | | | | |
1651 | max-size | Not Impacted | M | NORMAL |
1652 | | | | |
1653 | path | Not Impacted | M | NORMAL |
1654 | | | | |
1655 +-----------------------+---------------+-------+----------+
1656 RFC4975 Attribute Analysis
1658 5.46. Historical
1660 This section specifies analysis for the attributes that are included
1661 for historic usage alone by the [IANA].
1663 +---------------------+--------------+---------------+--------------+
1664 | Name | Notes | Level | Category |
1665 +---------------------+--------------+---------------+--------------+
1666 | rtpred1 | Historic | Not-Applcable | NOT |
1667 | | attributes. | | RECOMMENDED |
1668 | | | | |
1669 | rtpred2 | Historic | Not-Applcable | NOT |
1670 | | attributes. | | RECOMMENDED |
1671 | | | | |
1672 | PSCid | Not | Not-Applcable | TBD |
1673 | | Applicable | | |
1674 | | | | |
1675 | bc_service | Not | Not-Applcable | TBD |
1676 | | Applicable | | |
1677 | | | | |
1678 | bc_program | Not | Not-Applcable | TBD |
1679 | | Applicable | | |
1680 | | | | |
1681 | bc_service_package | Not | Not-Applcable | TBD |
1682 | | Applicable | | |
1683 | | | | |
1684 +---------------------+--------------+---------------+--------------+
1686 Unknowns Attribute Analysis
1688 6. bwtype Attribute Analysis
1690 This section specifies handling of specific bandwidth attributes when
1691 used in multiplexing scenarios.
1693 6.1. RFC4566 - SDP: Session Description Protocol
1695 +------------+-----------------------------------+-------+----------+
1696 | Name | Notes | Level | Category |
1697 +------------+-----------------------------------+-------+----------+
1698 | bwtype:CT | Aggregate bandwidth for the | S | NORMAL |
1699 | | conference | | |
1700 | | | | |
1701 | bwtype:AS | As a session attribute, it | B | NORMAL |
1702 | | specifies the session aggregate | | |
1703 | | unless media-level b=RR and/or | | |
1704 | | b=RS attributes are used. Under | | |
1705 | | this interpretation the | | |
1706 | | multiplexing scheme has no impact | | |
1707 | | and thus NORMAL category | | |
1708 | | applies. | | |
1709 | | | | |
1710 | bwtype:AS | For the media level usage,the | B | SUM |
1711 | | aggregate of individual bandwidth | | |
1712 | | values is considered. | | |
1713 | | | | |
1714 +------------+-----------------------------------+-------+----------+
1716 RFC4566 bwtype Analysis
1718 6.2. RFC3556 - SDP Bandwidth Modifiers for RTCP Bandwidth
1720 RFC3556 [RFC3556] defines an extension to the Session Description
1721 Protocol (SDP) to specify two additional modifiers for the bandwidth
1722 attribute. These modifiers may be used to specify the bandwidth
1723 allowed for RTP Control Protocol (RTCP) packets in a Real-time
1724 Transport Protocol (RTP) session
1726 +------------+--------------------------------+-------+-------------+
1727 | Name | Notes | Level | Category |
1728 +------------+--------------------------------+-------+-------------+
1729 | bwtype:RS | Session level usage represents | B | NORMAL,SUM |
1730 | | session aggregate and media | | |
1731 | | level usage indicates SUM of | | |
1732 | | the individual values while | | |
1733 | | multiplexing | | |
1734 | | | | |
1735 | bwtype:RR | Session level usage represents | B | NORMAL,SUM |
1736 | | session aggregate and media | | |
1737 | | level usage indicates SUM of | | |
1738 | | the individual values while | | |
1739 | | multiplexing | | |
1740 | | | | |
1741 +------------+--------------------------------+-------+-------------+
1743 RFC3556 bwtype Analysis
1745 6.3. RFC3890 - Bandwidth Modifier for SDP
1747 RFC3890 [RFC3890] defines a Session Description Protocol (SDP)
1748 Transport Independent Application Specific Maximum (TIAS) bandwidth
1749 modifier that does not include transport overhead; instead an
1750 additional packet rate attribute is defined. The transport
1751 independent bit-rate value together with the maximum packet rate can
1752 then be used to calculate the real bit-rate over the transport
1753 actually used.
1755 +--------------+---------------------------------+-------+----------+
1756 | Name | Notes | Level | Category |
1757 +--------------+---------------------------------+-------+----------+
1758 | bwtype:TIAS | The usage of TIAS is not | B | SPECIAL |
1759 | | clearly defined Offer/Answer | | |
1760 | | usage. | | |
1761 | | | | |
1762 | maxprate | The usage of TIAS and maxprate | B | SPECIAL |
1763 | | is not well defined under | | |
1764 | | multiplexing | | |
1765 | | | | |
1766 +--------------+---------------------------------+-------+----------+
1768 RFC3890 bwtype Analysis
1770 The intention of TIAS is that the media level bit-rate is multiplied
1771 with the known per-packet overhead for the selected transport and the
1772 maxprate value to determine the worst case bit-rate from the
1773 transport to more accurately capture the required usage. Summing
1774 TIAS values independently across m=lines and multiplying the computed
1775 sum with maxprate and the per-packet overhead would inflate the value
1776 significantly. Instead performing multiplication and adding the
1777 individual values is a more appropriate usage. This still ignores
1778 the fact that this is a send side declaration, and not intended for
1779 receiver negotiation.
1781 7. rtcp-fb Attribute Analysis
1783 This section analyzes rtcp-fb SDP attributes [RTCP-FB].
1785 7.1. RFC4585 - RTP/AVPF
1787 RFC4585 [RFC4585] defines an extension to the Audio-visual Profile
1788 (AVP) that enables receivers to provide, statistically, more
1789 immediate feedback to the senders and thus allows for short-term
1790 adaptation and efficient feedback-based repair mechanisms to be
1791 implemented.
1793 +----------+-----------------------------------+-------+------------+
1794 | Attr | Notes | Level | Category |
1795 | Name | | | |
1796 +----------+-----------------------------------+-------+------------+
1797 | ack | Not Impacted | M | NORMAL |
1798 | rpsi | | | |
1799 | | | | |
1800 | ack app | Feedback parameters MUST be | M | SPECIAL |
1801 | | handled in the app specific way | | |
1802 | | when multiplexed | | |
1803 | | | | |
1804 | nack | Not Impacted | M | NORMAL |
1805 | | | | |
1806 | nack | Not Impacted | M | NORMAL |
1807 | pli | | | |
1808 | | | | |
1809 | nack | Not Impacted | M | NORMAL |
1810 | sli | | | |
1811 | | | | |
1812 | nack | Not Impacted | M | NORMAL |
1813 | rpsi | | | |
1814 | | | | |
1815 | nack | Feedback parameters MUST be | M | SPECIAL |
1816 | app | handled in the app specific way | | |
1817 | | when multiplexed | | |
1818 | | | | |
1819 | trr-int | This attribute applies to RTP | M | IDENTICAL |
1820 | | Session as a whole | | |
1821 | | | | |
1822 +----------+-----------------------------------+-------+------------+
1824 RFC4585 Attribute Analysis
1826 7.2. RFC5104 - Codec Control Messages in AVPF
1828 RFC5104 [RFC5104] specifies a few extensions to the messages defined
1829 in the Audio-Visual Profile with Feedback (AVPF). They are helpful
1830 primarily in conversational multimedia scenarios where centralized
1831 multipoint functionalities are in use. However, some are also usable
1832 in smaller multicast environments and point-to-point calls.
1834 +-----------+--------------+-------+----------+
1835 | Attr Name | Notes | Level | Category |
1836 +-----------+--------------+-------+----------+
1837 | ccm | Not Impacted | M | Normal |
1838 | | | | |
1839 +-----------+--------------+-------+----------+
1841 RFC5104 Attribute Analysis
1843 7.3. RFC6285 - Unicast-Based RAMS
1845 +-----------+---------------+-------+----------+
1846 | Name | Notes | Level | Category |
1847 +-----------+---------------+-------+----------+
1848 | nack rai | Not Impacted | M | NORMAL |
1849 | | | | |
1850 +-----------+---------------+-------+----------+
1852 RFC6285 Attribute Analysis
1854 7.4. RFC6679 - ECN for RTP over UDP/IP
1856 RFC6679 [RFC6679] specifies how Explicit Congestion Notification
1857 (ECN) can be used with the Real-time Transport Protocol (RTP) running
1858 over UDP, using the RTP Control Protocol (RTCP) as a feedback
1859 mechanism. It defines a new RTCP Extended Report (XR) block for
1860 periodic ECN feedback, a new RTCP transport feedback message for
1861 timely reporting of congestion events, and a Session Traversal
1862 Utilities for NAT (STUN) extension used in the optional
1863 initialization method using Interactive Connectivity Establishment
1864 (ICE)
1866 +------------------+---------------------------+-------+------------+
1867 | Name | Notes | Level | Category |
1868 +------------------+---------------------------+-------+------------+
1869 | ecn-capable-rtp | ECN markup are enabled at | M | IDENTICAL |
1870 | | the RTP Session level | | |
1871 | | | | |
1872 | nack ecn | This attribute enables | M | IDENTICAL |
1873 | | ECN at the RTP session | | |
1874 | | level | | |
1875 | | | | |
1876 +------------------+---------------------------+-------+------------+
1878 RFC6679 Attribute Analysis
1880 7.5. RFC6642 - Third-Party Loss Report
1882 In a large RTP session using the RTP Control Protocol (RTCP) feedback
1883 mechanism defined in RFC 4585 [RFC4585], a feedback target may
1884 experience transient overload if some event causes a large number of
1885 receivers to send feedback at once. This overload is usually avoided
1886 by ensuring that feedback reports are forwarded to all receivers,
1887 allowing them to avoid sending duplicate feedback reports. However,
1888 there are cases where it is not recommended to forward feedback
1889 reports, and this may allow feedback implosion. RFC6642 [RFC6642]
1890 memo discusses these cases and defines a new RTCP Third-Party Loss
1891 Report that can be used to inform receivers that the feedback target
1892 is aware of some loss event, allowing them to suppress feedback.
1893 Associated Session Description Protocol (SDP) signaling is also
1894 defined.
1896 +-------------+---------------+-------+----------+
1897 | Name | Notes | Level | Category |
1898 +-------------+---------------+-------+----------+
1899 | nack tllei | Not Impacted | M | NORMAL |
1900 | | | | |
1901 | nack pslei | Not Impacted | M | NORMAL |
1902 | | | | |
1903 +-------------+---------------+-------+----------+
1905 RFC6642 Attribute Analysis
1907 7.6. RFC5104 - Codec Control Messages in AVPF
1909 +------------+--------------+-------+----------+
1910 | Attr Name | Notes | Level | Category |
1911 +------------+--------------+-------+----------+
1912 | ccm fir | Not Impacted | M | NORMAL |
1913 | | | | |
1914 | ccm tmmbr | Not Impacted | M | NORMAL |
1915 | | | | |
1916 | ccm tstr | Not Impacted | M | NORMAL |
1917 | | | | |
1918 | ccm vbcm | Not Impacted | M | NORMAL |
1919 | | | | |
1920 +------------+--------------+-------+----------+
1922 RFC5104 Attribute Analysis
1924 8. group Attribute Analysis
1926 This section analyzes SDP "group" semantics [GROUP-SEM].
1928 8.1. RFC5888 - SDP Grouping Framework
1930 RFC5888 [RFC5888] defines a framework to group "m" lines in the
1931 Session Description Protocol (SDP) for different purposes.
1933 +------------+---------------+-------+----------+
1934 | Name | Notes | Level | Category |
1935 +------------+---------------+-------+----------+
1936 | group:LS | Not Impacted | S | NORMAL |
1937 | | | | |
1938 | group:FID | Not Impacted | S | NORMAL |
1939 | | | | |
1940 +------------+---------------+-------+----------+
1942 RFC5888 Attribute Analysis
1944 8.2. RFC3524 - Mapping Media Streams to Resource Reservation Flows
1946 RFC3524 [RFC3524] defines an extension to the Session Description
1947 Protocol (SDP) grouping framework. It allows requesting a group of
1948 media streams to be mapped into a single resource reservation flow.
1949 The SDP syntax needed is defined, as well as a new "semantics"
1950 attribute called Single Reservation Flow (SRF).
1952 +------------+---------------+-------+----------+
1953 | Name | Notes | Level | Category |
1954 +------------+---------------+-------+----------+
1955 | group:SRF | Not Impacted | S | NORMAL |
1956 | | | | |
1957 +------------+---------------+-------+----------+
1959 RFC3524 Attribute Analysis
1961 8.3. RFC4091 - ANAT Semantics
1963 RFC4091 [RFC4091] defines the Alternative Network Address Types
1964 (ANAT) semantics for the Session Description Protocol (SDP) grouping
1965 framework. The ANAT semantics allow alternative types of network
1966 addresses to establish a particular media stream.
1968 +-------------+---------------------------+-------+-----------------+
1969 | Name | Notes | Level | Category |
1970 +-------------+---------------------------+-------+-----------------+
1971 | group:ANAT | ANAT semantics is | S | NOT |
1972 | | obseleted | | RECOMMENDED |
1973 | | | | |
1974 +-------------+---------------------------+-------+-----------------+
1976 RFC4091 Attribute Analysis
1978 8.4. RFC5956 - FEC Grouping Semantics in SDP
1980 RFC5956 [RFC5956] defines the semantics for grouping the associated
1981 source and FEC-based (Forward Error Correction) repair flows in the
1982 Session Description Protocol (SDP). The semantics defined in the
1983 document are to be used with the SDP Grouping Framework (RFC 5888).
1984 These semantics allow the description of grouping relationships
1985 between the source and repair flows when one or more source and/or
1986 repair flows are associated in the same group, and they provide
1987 support for additive repair flows. SSRC-level (Synchronization
1988 Source) grouping semantics are also defined in this document for
1989 Real-time Transport Protocol (RTP) streams using SSRC multiplexing.
1991 +---------------+---------------+-------+----------+
1992 | Name | Notes | Level | Category |
1993 +---------------+---------------+-------+----------+
1994 | group:FEC-FR | Not Impacted | S | NORMAL |
1995 | | | | |
1996 +---------------+---------------+-------+----------+
1998 RFC5956 Attribute Analysis
2000 8.5. RFC5583 - Signaling Media Decoding Dependency in SDP
2002 RFC5583 [RFC5583] defines semantics that allow for signaling the
2003 decoding dependency of different media descriptions with the same
2004 media type in the Session Description Protocol (SDP). This is
2005 required, for example, if media data is separated and transported in
2006 different network streams as a result of the use of a layered or
2007 multiple descriptive media coding process.
2009 +-------------+----------------+-------+----------+
2010 | Name | Notes | Level | Category |
2011 +-------------+----------------+-------+----------+
2012 | depend lay | Not Impacted | M | NORMAL |
2013 | | | | |
2014 | depend mdc | Not Impacted | M | NORMAL |
2015 | | | | |
2016 +-------------+----------------+-------+----------+
2018 RFC5583 Attribute Analysis
2020 The usage of identical Payload Type values across multiplexed m=lines
2021 is described in [I-D.ietf-mmusic-sdp-bundle-negotiation].
2023 9. ssrc-group Attribute Analysis
2025 This section analyzes "ssrc-group" semantics [SSRC-GROUP].
2027 9.1. RFC5576 - Source-Specific SDP Attributes
2029 +---------+---------------+-------+----------+
2030 | Name | Notes | Level | Category |
2031 +---------+---------------+-------+----------+
2032 | FID | Not Impacted | M | NORMAL |
2033 | | | | |
2034 | FEC | Not Impacted | M | NORMAL |
2035 | | | | |
2036 | FEC-FR | Not Impacted | M | NORMAL |
2037 | | | | |
2038 +---------+---------------+-------+----------+
2040 RFC5576 Attribute Analysis
2042 10. QoS Mechanism Token Analysis
2044 This section analyzes QoS tokes specified with SDP[QOS].
2046 10.1. RFC5432 - QoS Mechanism Selection in SDP
2048 +-------+----------------------------------------+-------+----------+
2049 | Name | Notes | Level | Category |
2050 +-------+----------------------------------------+-------+----------+
2051 | rsvp | Not Impacted, since QOS mechanisms are | B | NORMAL |
2052 | | applied per flow. | | |
2053 | | | | |
2054 | nsis | Not Impacted, since QOS mechanisms are | B | NORMAL |
2055 | | applied per flow. | | |
2056 | | | | |
2057 +-------+----------------------------------------+-------+----------+
2059 RFC5432 Attribute Analysis
2061 11. k= Attribute Analysis
2063 11.1. RFC4566 SDP: Session Description Protocol
2065 +------+------------------------------------+-------+---------------+
2066 | Name | Notes | Level | Category |
2067 +------+------------------------------------+-------+---------------+
2068 | k= | It is NOT recommended to use this | S | NOT |
2069 | | attribute | | RECOMMENDED |
2070 | | | | |
2071 +------+------------------------------------+-------+---------------+
2073 RFC4566 Attribute Analysis
2075 12. content Atribute Analysis
2077 12.1. RFC4796
2079 +------------------+---------------+-------+----------+
2080 | Name | Notes | Level | Category |
2081 +------------------+---------------+-------+----------+
2082 | content:slides | Not Impacted | M | NORMAL |
2083 | | | | |
2084 | content:speaker | Not Impacted | M | NORMAL |
2085 | | | | |
2086 | content:main | Not Impacted | M | NORMAL |
2087 | | | | |
2088 | content:sl | Not Impacted | M | NORMAL |
2089 | | | | |
2090 | content:alt | Not Impacted | M | NORMAL |
2091 | | | | |
2092 +------------------+---------------+-------+----------+
2094 RFC4796 Attribute Analysis
2096 13. Payload Formats
2098 13.1. RFC5109 - RTP Payload Format for Generic FEC
2100 RFC5109 [RFC5109] describes a payload format for generic Forward
2101 Error Correction (FEC) for media data encapsulated in RTP. It is
2102 based on the exclusive-or (parity) operation. The payload format
2103 allows end systems to apply protection using various protection
2104 lengths and levels, in addition to using various protection group
2105 sizes to adapt to different media and channel characteristics. It
2106 enables complete recovery of the protected packets or partial
2107 recovery of the critical parts of the payload depending on the packet
2108 loss situation.
2110 +---------------------+----------------------+-------+--------------+
2111 | Name | Notes | Level | Category |
2112 +---------------------+----------------------+-------+--------------+
2113 | audio/ulpfec | Not recommended for | M | NOT |
2114 | | multiplexing due to | | RECOMMENDED |
2115 | | reuse of SSRCs | | |
2116 | | | | |
2117 | video/ulpfec | Not recommended for | M | NOT |
2118 | | multiplexing due to | | RECOMMENDED |
2119 | | reuse of SSRCs | | |
2120 | | | | |
2121 | text/ulpfec | Not recommended for | M | NOT |
2122 | | multiplexing due to | | RECOMMENDED |
2123 | | reuse of SSRCs | | |
2124 | | | | |
2125 | application/ulpfec | Not recommended for | M | NOT |
2126 | | multiplexing due to | | RECOMMENDED |
2127 | | reuse of SSRCs | | |
2128 | | | | |
2129 +---------------------+----------------------+-------+--------------+
2131 RFC5109 Payload Format Analysis
2133 Draft draft-lennox-payload-ulp-ssrc-mux proposes a simple fix to make
2134 it possible to use ULP with multiplexing and ULP is allowed when used
2135 with that.
2137 14. Multiplexing Media Streams and DSCP Markings
2139 Note: This section does not yet have WG consensus but is included as
2140 a proposal to the WG. There are two options being proposed, A and B.
2141 The authors suggest A.
2143 14.1. Option A
2145 This section provides two rules for multiplexing multiple media
2146 streams with DSCP markings over a single 5-tuple.
2147 Rule 1: Media Streams with markings from different service classes
2148 MUST NOT be multiplexed. For example, a media stream with DSCP
2149 Marking EF MUST NOT be multiplexed with a media stream marked with
2150 AF class. Likewise, a media stream with DSCP marking AF3x MUST
2151 NOT be multiplexed with a media stream marked with AF4x.
2153 Rule 2: Media Streams that belong to the same service class, even
2154 with different drop precedence, MAY be multiplexed. Thus media
2155 streams that all belong to the EF group or all that belong to the
2156 AF4X class can be multiplexed.
2158 For WebRTC applications following the advice in
2159 [I-D.dhesikan-tsvwg-rtcweb-qos], the above rules end up allowing the
2160 audio and video to be multiplexed in many, but not all, cases.
2162 14.2. Option B
2164 Media Streams MAY be multiplexed regardless of what the setting of
2165 the DSCP Per Hop Behavior group (PHB).
2167 15. Multiplexing Considerations for Encapsulating Attributes
2169 NOTE: The analysis given below is still Work-In-Progress and will be
2170 updated soon.
2172 This sections deals with recommendations for defining the
2173 multiplexing charactersitics of the SDP attributes that encaspsulate
2174 other SDP attributes. Such attributes as of today, for example, are
2175 defined in [RFC3407], [RFC5939] and [RFC6781] as part of a generic
2176 framework for indicating and negotiating transport, media and media
2177 format related capabilities in the SDP.
2179 The behavior of such attributes under multiplexing is in turn defined
2180 by the multiplexing behavior of the attributes they encapsulate which
2181 are made known once the negotiation process is completed.
2183 Example 1: Below SDP example captures the following aspects.
2184 1. The Offerer offers audio and video streams with several different
2185 RTP profiles (AVP, SAVP, SAVPF) as potential configurations.
2186 2. ANSWER - 1 corresponds to the SDP answer where the Answerer
2187 accepts RTP/SAVPF as the default profile for both the media
2188 streams. In this scenario both the media streams can be
2189 successfully multiplexed.
2190 3. In ANSWER - 2 SDP, the Answerer accepts the profile RTP/SAVPF for
2191 the audio stream and RTP/AVPF for the video stream. This
2192 scenario results in the failure of the multiplexing as defined in
2193 the section 7.2 of the BUNDLE specifcation
2194 [I-D.ietf-mmusic-sdp-bundle-negotiation].
2196 v=0
2197 o=- 25678 753849 IN IP4 192.0.2.1
2198 s=
2199 t=0 0
2200 c=IN IP4 192.0.2.1
2201 m=audio 3456 RTP/AVP 98
2202 a=tcap:1 RTP/SAVPF
2203 a=rtpmap:98 OPUS/48000/2
2204 a=pcfg:1 t=1
2206 m=video 51372 RTP/AVP 101
2207 a=rtpmap:101 H264/90000
2208 a=tcap:2 RTP/SAVPF RTP/AVPF
2209 a=pcfg:2 t=2|3
2211 ANSWER - 1
2212 -----------
2213 v=0
2214 o=- 24351 621814 IN IP4 192.0.2.2
2215 s=
2216 m=audio 3456 RTP/SAVPF 98
2217 a=rtpmap:98 OPUS/48000/2
2218 a=acfg:1 t=1
2220 m=video 51372 RTP/SAVPF 101
2221 a=rtpmap:101 H264/90000
2222 a=acfg:2 t=2
2224 ANSWER - 2
2225 -----------
2226 v=0
2227 o=- 24351 621814 IN IP4 192.0.2.2
2228 s=
2229 m=audio 3456 RTP/SAVPF 98
2230 a=rtpmap:98 OPUS/48000/2
2231 a=acfg:1 t=1
2233 m=video 51372 RTP/AVPF 101
2234 a=rtpmap:101 H264/90000
2235 a=acfg:2 t=3
2237 Example 2: Below SDP example captures the following aspects.
2238 1. Offerer offers use of plain RTP and Secure RTP as alternatives.
2239 For the Secure RTP stream, it can be established using either
2240 DTLS-SRTP or SDP security descriptions
2242 2. ANSWER - 1 corresponds to the SDP answer where the Answerer
2243 accepts DTLS based encryption for both the audio and video
2244 streams. This scenario can lead to successfull multiplexing of
2245 the audio and the video streams.
2246 3. In ANSWER - 2 SDP, the Answerer accepts plain RTP for the audio
2247 stream and DTLS based encryption for the video stream. This
2248 scenario results in unsuccesfull multiplexing of the media
2249 streams since the encryption scheme applies to the entire RTP
2250 Session and cannot be applied to video media stream alone when
2251 multiplexed.
2253 OFFER
2254 -----
2255 v=0
2256 o=- 25678 753849 IN IP4 192.0.2.1
2257 s=
2258 t=0 0
2259 c=IN IP4 192.0.2.1
2260 a=acap:1 setup:actpass
2261 a=acap:2 fingerprint: SHA-1 \
2262 4A:AD:B9:B1:3F:82:18:3B:54:02:12:DF:3E:5D:49:6B:19:E5:7C:AB
2263 a=tcap:1 UDP/TLS/RTP/SAVP RTP/SAVP
2264 m=audio 59000 RTP/AVP 98
2265 a=rtpmap:98 AMR/8000
2266 a=acap:3 crypto:1 AES_CM_128_HMAC_SHA1_32
2267 inline:NzB4d1BINUAvLEw6UzF3WSJ+PSdFcGdUJShpX1Zj|2^20|1:32
2268 a=pcfg:1 t=1 a=1,2
2269 a=pcfg:2 t=2 a=3
2271 m=video 59123 RTP/AVP 100
2272 a=rtpmap:100 VP8/90000
2273 a=pcfg:3 t=1 a=1,2
2275 ANSWER - 1
2276 -----------
2277 v=0
2278 o=- 24351 621814 IN IP4 192.0.2.2
2279 s=
2280 t=0 0
2281 c=IN IP4 192.0.2.2
2283 m=audio 54568 UDP/TLS/RTP/SAVP 98
2284 a=rtpmap:98 AMR/8000
2285 a=acfg:1 t=1 a=1,2
2287 m=video 54968 UDP/TLS/RTP/SAVP 100
2288 a=rtpmap:100 VP8/90000
2289 a=acfg:3 t=1 a=1,2
2291 ANSWER - 2
2292 -----------
2293 v=0
2294 o=- 24351 621814 IN IP4 192.0.2.2
2295 s=
2296 t=0 0
2297 c=IN IP4 192.0.2.2
2298 m=audio 54568 RTP/AVP 98
2299 a=rtpmap:98 AMR/8000
2301 m=video 54968 UDP/TLS/RTP/SAVP 100
2302 a=rtpmap:100 VP8/90000
2303 a=setup:active
2304 a=fingerprint: SHA-1 \
2305 FF:FF:FF:B1:3F:82:18:3B:54:02:12:DF:3E:5D:49:6B:19:E5:7C:AB
2306 a=acfg:3 t=1 a=1,2
2308 In conclusion, the mutliplexing behavior of the encapsulating
2309 attributes are defined based on the multiplexing behavior of the
2310 attributes they encapsulate. Thus care should be taken in
2311 determining if certain combinations of these attributes can be used
2312 in the context of transport multplexing.
2314 16. IANA Considerations
2316 IANA shall register categories from this specification by expanding
2317 the Session Description Protocol (SDP) Parameters table with a column
2318 listing categories against each SDP parameter.
2320 +---------------------+
2321 | Category |
2322 +---------------------+
2323 | NORMAL |
2324 +---------------------+
2325 | NOT RECOMMENDED |
2326 +---------------------+
2327 | IDENTICAL |
2328 +---------------------+
2329 | TRANSPORT |
2330 +---------------------+
2331 | SPECIAL |
2332 ----------------------
2334 17. Security Considerations
2336 All the attributes which involve security key needs a careful review
2337 to ensure two-time pad vulnerability is not created.
2339 18. Acknowledgments
2341 I would like to thank Cullen Jennings for suggesting the categories,
2342 contributing text and reviewing the draft. I would also link to
2343 thank Magnus, Christer and Dan on suggesting structural changes
2344 helping improve the document readability.
2346 I would like also to thank following experts on their inputs and
2347 reviews as listed - Flemming Andreasen(5.20,5.28,5.29,15), Rohan
2348 Mahy(5.45), Eric Burger(5.22),Christian Huitema(5.13), Christer
2349 Holmberg(5.17,5.22,5.40,5.41), Richard Ejzak (5.36,5.42,5.43,5.44),
2350 Colin Perkins(5.7,5.8), Magnus westerlund(5.2,5.3,5.9,5.26,
2351 5.27,6.1,6.2,6.3,8.3,7), Roni Evens(5.12,5.27,8.4), Subha
2352 Dhesikan(5.5,12.1,14), Dan Wing(5.6,5.11,5.30,5.34,5.37), Ali C
2353 Begen(5.1,5.16,5.18,5.21,5.33,8.2,8.4,13.1), Bo Burman (7.2,7.6),
2354 Charles Eckel(5.14,5.23,5.24,9.1,8.5), Paul Kyzivat(5.24), Ian
2355 Johansson(5.15), Saravanan Shanmugham(5.10), Paul E Jones(5.25),
2356 Rajesh Kumar(5.39), Jonathan Lennox(5.31,5,14,11.1), Mo
2357 Zanaty(5.4,5.19,8.1,8.3,8.5,12.1), Christian Huitema (5.13), Qin Wu
2358 (5.38 PM-Dir review).
2360 19. Change Log
2362 [RFC EDITOR NOTE: Please remove this section when publishing]
2364 Changes from draft-ietf-mmusic-sdp-mux-attributes-00
2365 o Added Section 15 to provide recommendations on multiplexing SDP
2366 encapsulating attributes. Also updated sections 5.20, 5.28, 5.29
2367 to refer to Section 15.
2368 o Updated Section 5.38 to incorporate PM-dir review inputs from Qin
2369 Wu
2370 o Updated Sections 5.2,5.14,8.5 to refer to BUNDLE draft for more
2371 clarity.
2372 o Fixed few nits regarding sentence clarity and fill-in the NOTES
2373 section where information was lacking.
2375 Changes from draft-nandakumar-mmusic-mux-attributes-05
2376 o Renamed the document to be a WG document.
2377 o Added Section 14.
2379 o Updated Open Issues based on IETF88 discussions.
2381 Changes from draft-nandakumar-mmusic-mux-attributes-04
2382 o Added few OPEN ISSUES that needs to be discussed.
2383 o Updated sections 5.10,5.23,5,24,5,25,7.2,9.1,5.12,5.27,8.4,
2384 5.44,5.11,5.4,5.19,10.1,10.5,5.21,10.4,15.1
2385 o Updated Table Column name Current to Level and improved TRANSPORT
2386 category explanation on suggestions form Dan Wing.
2387 o Grouped all the rtcp-fb attribute analysis under a single section
2388 as suggested by Magnus/
2390 Changes from draft-nandakumar-mmusic-mux-attributes-03
2391 o Maintenance change to clean up grammatical nits and wordings.
2393 Changes from draft-nandakumar-mmusic-mux-attributes-02
2394 o Updated Sections 5.3,5.5,5.6,5.7,5.9,5.8,5.11,5.13,5.22,5.34,
2395 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
2396 the inputs from the respective RFC Authors.
2398 Changes from draft-nandakumar-mmusic-mux-attributes-01
2399 o Replaced Category BAD with NOT RECOMMENDED.
2400 o Added Category TBD.
2401 o Updated IANA Consideration Section.
2403 Changes from draft-nandakumar-mmusic-mux-attributes-00
2404 o Added new section for dealing with FEC payload types.
2406 20. References
2408 20.1. Normative References
2410 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
2411 Requirement Levels", BCP 14, RFC 2119, March 1997.
2413 [RFC4566] Handley, M., Jacobson, V., and C. Perkins, "SDP: Session
2414 Description Protocol", RFC 4566, July 2006.
2416 20.2. Informative References
2418 [ACK-NACK]
2419 "S Description Protocol (SDP) RTCP ACK/NACK Feedback
2420 attributes", .
2423 [CCM] "S Description Protocol (SDP) RTCP-FB Codec Control
2424 Messages", .
2427 [GROUP-SEM]
2428 "S Description Protocol (SDP) "group" semantics", .
2432 [H.248.15]
2433 "Gateway control protocol: SDP H.248 package attribute",
2434 .
2436 [I-D.dhesikan-tsvwg-rtcweb-qos]
2437 Dhesikan, S., Druta, D., Jones, P., and J. Polk, "DSCP and
2438 other packet markings for RTCWeb QoS",
2439 draft-dhesikan-tsvwg-rtcweb-qos-02 (work in progress),
2440 July 2013.
2442 [I-D.ietf-avt-multiplexing-rtp]
2443 El-Khatib, K., Luo, G., Bochmann, G., and Pinjiang. Feng,
2444 "Multiplexing Scheme for RTP Flows between Access
2445 Routers", Internet-Draft http://tools.ietf.org/html/
2446 draft-ietf-avt-multiplexing-rtp-01, October 1999.
2448 [I-D.ietf-mmusic-sdp-bundle-negotiation]
2449 Holmberg, C., Alvestrand, H., and C. Jennings,
2450 "Multiplexing Negotiation Using Session Description
2451 Protocol (SDP) Port Numbers",
2452 draft-ietf-mmusic-sdp-bundle-negotiation-03 (work in
2453 progress), February 2013.
2455 [IANA] "S Description Protocol (SDP) Parameters", .
2459 [MEDIA_LOOPBACK]
2460 Kaplan, H., Hedayat, K., Venna, N., Jones, P., and N.
2461 Stratton, "An Extension to the Session Description
2462 Protocol (SDP) and Real-time Transport Protocol (RTP) for
2463 Media Loopback", Internet-Draft 6489, January 2013.
2465 [QOS] "S Description Protocol (SDP) QoS Mechanism Tokens", .
2469 [R3GPPTS24.182]
2470 "IP Multimedia Subsystem (IMS) Customized Alerting Tones
2471 (CAT); Protocol specification",
2472 .
2474 [R3GPPTS24.183]
2475 "IP Multimedia Subsystem (IMS) Customized Ringing Signal
2476 (CRS); Protocol specification",
2477 .
2479 [R3GPPTS24.229]
2480 "IP multimedia call control protocol based on Session
2481 Initiation Protocol (SIP) and Session Description Protocol
2482 (SDP);",
2483 .
2485 [RFC3108] Kumar, R. and M. Mostafa, "Conventions for the use of the
2486 Session Description Protocol (SDP) for ATM Bearer
2487 Connections", RFC 3108, May 2001.
2489 [RFC3264] Rosenberg, J. and H. Schulzrinne, "An Offer/Answer Model
2490 with Session Description Protocol (SDP)", RFC 3264,
2491 June 2002.
2493 [RFC3407] Andreasen, F., "S Description Protocol (SDP) Simple
2494 Capability Declaration", RFC 3407, October 2002.
2496 [RFC3524] Camarillo, G. and A. Monrad, "Mapping of Media Streams to
2497 Resource Reservation Flows", RFC 3524, April 2003.
2499 [RFC3556] Casner, S., "S Description Protocol (SDP) Bandwidth
2500 Modifiers for RTP Control Protocol (RTCP) Bandwidth",
2501 RFC 3556, July 2003.
2503 [RFC3605] Huitema, C., "Real Time Control Protocol (RTCP) attribute
2504 in Session Description Protocol (SDP)", RFC 3605,
2505 October 2003.
2507 [RFC3611] Friedman, T., Caceres, R., and A. Clark, "RTP Control
2508 Protocol Extended Reports (RTCP XR)", RFC 3611,
2509 November 2003.
2511 [RFC3890] Westerlund, M., "A Transport Independent Bandwidth
2512 Modifier for the Session Description Protocol (SDP)",
2513 RFC 3890, September 2004.
2515 [RFC4091] Camarillo, G. and J. Rosenberg, "The Alternative Network
2516 Address Types (ANAT) Semantics for the Session Description
2517 Protocol (SDP) Grouping Framework", RFC 4091, June 2005.
2519 [RFC4145] Yon, D. and G. Camarillo, "TCP-Based Media Transport in
2520 the Session Description Protocol (SDP)", RFC 4145,
2521 September 2005.
2523 [RFC4567] Arkko, J., Lindholm, F., Naslund, M., Norrman, K., and E.
2524 Carrara, "Key Management Extensions for Session
2525 Description Protocol (SDP) and Real Time Streaming
2526 Protocol (RTSP)", RFC 4567, July 2006.
2528 [RFC4568] Andreasen, F., Baugher, M., and D. Wing, "S Description
2529 Protocol (SDP) Security Descriptions for Media Streams",
2530 RFC 4568, July 2006.
2532 [RFC4570] Quinn, B. and R. Finlayson, "S Description Protocol (SDP)
2533 Source Filters", RFC 4570, July 2006.
2535 [RFC4572] Lennox, J., "Connection-Oriented Media Transport over the
2536 Transport Layer Security (TLS) Protocol in the Session
2537 Description Protocol (SDP)", RFC 4572, July 2006.
2539 [RFC4574] Levin, O. and G. Camarillo, "The Session Description
2540 Protocol (SDP) Label Attribute", RFC 4574, August 2006.
2542 [RFC4583] Camarillo, G., "S Description Protocol (SDP) Format for
2543 Binary Floor Control Protocol (BFCP) Streams", RFC 4583,
2544 November 2006.
2546 [RFC4585] Ott, J., Wenger, S., Sato, N., Burmeister, C., and J. Rey,
2547 "Extended RTP Profile for Real-time Transport Control
2548 Protocol (RTCP)-Based Feedback (RTP/AVPF)", RFC 4585,
2549 July 2006.
2551 [RFC4796] Hautakorpi, J. and G. Camarillo, "The Session Description
2552 Protocol (SDP) Content Attribute", RFC 4796,
2553 February 2007.
2555 [RFC4975] Campbell, B., Mahy, R., and C. Jennings, "The Message
2556 Session Relay Protocol (MSRP)", RFC 4975, September 2007.
2558 [RFC5104] Wenger, S., Chandra, U., Westerlund, M., and B. Burman,
2559 "Codec Control Messages in the RTP Audio-Visual Profile
2560 with Feedback (AVPF)", RFC 5104, February 2008.
2562 [RFC5109] Li, A., "RTP Payload Format for Generic Forward Error
2563 Correction", RFC 5109, December 2007.
2565 [RFC5159] Dondeti, L. and A. Jerichow, "S Description Protocol (SDP)
2566 Attributes for Open Mobile Alliance (OMA) Broadcast
2567 (BCAST) Service and Content Protection", RFC 5159,
2568 March 2008.
2570 [RFC5245] Rosenberg, J., "Interactive Connectivity Establishment
2571 (ICE): A Protocol for Network Address Translator (NAT)
2572 Traversal for Offer/Answer Protocols", RFC 5245,
2573 July 2006.
2575 [RFC5285] Singer, D. and H. Desineni, "A General Mechanism for RTP
2576 Header Extensions", RFC 5285, July 2008.
2578 [RFC5432] Polk, J., Dhesikan, S., and G. Camarillo, "Quality of
2579 Service (QoS) Mechanism Selection in the Session
2580 Description Protocol (SDP)", RFC 5432, March 2009.
2582 [RFC5506] Johansson, I., "Support for Reduced-Size Real-Time
2583 Transport Control Protocol (RTCP): Opportunities and
2584 Consequences", RFC 5506, April 2009.
2586 [RFC5547] Garcia-Martin, M., Isomaki, M., Camarillo, G., Loreto, S.,
2587 and P. Kyzivat, "A Session Description Protocol (SDP)
2588 Offer/Answer Mechanism to Enable File Transfer", RFC 5547,
2589 May 2009.
2591 [RFC5576] Lennox, J., Ott, J., and T. Schierl, "Source-Specific
2592 Media Attributes in the Session Description Protocol
2593 (SDP)", RFC 5576, June 2009.
2595 [RFC5583] Schierl, T. and S. Wenger, "Signaling Media Decoding
2596 Dependency in the Session Description Protocol (SDP)",
2597 RFC 5583, July 2009.
2599 [RFC5760] Ott, J., Chesterfield, J., and E. Schooler, "RTP Control
2600 Protocol (RTCP) Extensions for Single-Source Multicast
2601 Sessions with Unicast Feedback", RFC 5760, February 2010.
2603 [RFC5761] Perkins, C. and M. Westerlund, "Multiplexing RTP Data and
2604 Control Packets on a Single Port", RFC 5761, April 2010.
2606 [RFC5762] Perkins, C., "RTP and the Datagram Congestion Control
2607 Protocol (DCCP)", RFC 5762, April 2010.
2609 [RFC5763] Fischl, J., Tschofenig, H., and E. Rescorla, "Framework
2610 for Establishing a Secure Real-time Transport Protocol
2611 (SRTP) Security Context Using Datagram Transport Layer
2612 Security (DTLS)", RFC 5763, May 2010.
2614 [RFC5888] Camarillo, G. and H. Schulzrinne, "The Session Description
2615 Protocol (SDP) Grouping Framework", RFC 5888, June 2010.
2617 [RFC5939] Andreasen, F., "S Description Protocol (SDP) Capability
2618 Negotiation", RFC 5939, September 2010.
2620 [RFC5956] Begen, A., "Forward Error Correction Grouping Semantics in
2621 the Session Description Protocol", RFC 5956,
2622 September 2010.
2624 [RFC6064] Westerlund, M. and P. Frojdh, "SDP and RTSP Extensions
2625 Defined for 3GPP Packet-Switched Streaming Service and
2626 Multimedia Broadcast/Multicast Service", RFC 6064,
2627 January 2011.
2629 [RFC6128] Begen, A., "RTP Control Protocol (RTCP) Port for Source-
2630 Specific Multicast (SSM) Sessions", RFC 6128,
2631 February 2011.
2633 [RFC6189] Zimmermann, P., Johnston, A., and J. Callas, "ZRTP: Media
2634 Path Key Agreement for Unicast Secure RTP", RFC 6189,
2635 April 2011.
2637 [RFC6193] Saito, M., Wing, D., and M. Toyama, "Media Description for
2638 the Internet Key Exchange Protocol (IKE) in the Session
2639 Description Protocol (SDP)", RFC 6193, April 2011.
2641 [RFC6230] Boulton, C., Melanchuk, T., and S. McGlashan, "Media
2642 Control Channel Framework", RFC 6230, May 2011.
2644 [RFC6236] Johansson, I. and K. Jung, "Negotiation of Generic Image
2645 Attributes in the Session Description Protocol (SDP)",
2646 RFC 6236, May 2011.
2648 [RFC6284] Begen, A., Wing, D., and T. Van Caenegem, "Port Mapping
2649 between Unicast and Multicast RTP Sessions", RFC 6284,
2650 June 2011.
2652 [RFC6285] Ver Steeg, B., Begen, A., Van Caenegem, T., and Z. Vax,
2653 "Unicast-Based Rapid Acquisition of Multicast RTP
2654 Sessions", RFC 6285, June 2011.
2656 [RFC6364] Begen, A., "S Description Protocol Elements for the
2657 Forward Error Correction (FEC) Framework", RFC 6364,
2658 October 2011.
2660 [RFC6642] Wu, Q., Xia, F., and R. Even, "RTP Control Protocol (RTCP)
2661 Extension for a Third-Party Loss Report", RFC 6642,
2662 June 2012.
2664 [RFC6679] Westerlund, M., Johansson, I., Perkins, C., O'Hanlon, P.,
2665 and K. Carlberg, "Explicit Congestion Notification (ECN)
2666 for RTP over UDP", RFC 6679, August 2012.
2668 [RFC6714] Holmberg, C., Blau, S., and E. Burger, "Connection
2669 Establishment for Media Anchoring (CEMA) for the Message
2670 Session Relay Protocol (MSRP)", RFC 6714, August 2012.
2672 [RFC6773] Phelan, T., Fairhurst, G., and C. Perkins, "DCCP-UDP: A
2673 Datagram Congestion Control Protocol UDP Encapsulation for
2674 NAT Traversal", RFC 6773, November 2012.
2676 [RFC6781] Gimlan, R., Evan, R., and F. Andreasen, "Session
2677 Description Protocol (SDP) Media Capabilities
2678 Negotiation", RFC 6781, Febrauary 2013.
2680 [RFC6787] Burnett, D. and S. Shanmugham, "Media Resource Control
2681 Protocol Version 2 (MRCPv2)", RFC 6787, November 2012.
2683 [RTCP-FB] "S Description Protocol (SDP) RTCP Feedback attributes", <
2684 http://www.iana.org/assignments/sdp-parameters/
2685 sdp-parameters.xml#sdp-parameters-14>.
2687 [SSRC-GROUP]
2688 "S Description Protocol (SDP) "ssrc-group" semantics", .
2692 [T.38] "Procedures for real-time Group 3 facsimile communication
2693 over IP networks", .
2695 Author's Address
2697 Suhas Nandakumar
2698 Cisco
2699 170 West Tasman Drive
2700 San Jose, CA 95134
2701 USA
2703 Email: snandaku@cisco.com