rfc8866v5.txt   rfc8866.txt 
skipping to change at line 118 skipping to change at line 118
6.13. framerate (Frame Rate) 6.13. framerate (Frame Rate)
6.14. quality 6.14. quality
6.15. fmtp (Format Parameters) 6.15. fmtp (Format Parameters)
7. Security Considerations 7. Security Considerations
8. IANA Considerations 8. IANA Considerations
8.1. The "application/sdp" Media Type 8.1. The "application/sdp" Media Type
8.2. Registration of SDP Parameters with IANA 8.2. Registration of SDP Parameters with IANA
8.2.1. Registration Procedure 8.2.1. Registration Procedure
8.2.2. Media Types ("media") 8.2.2. Media Types ("media")
8.2.3. Transport Protocols (<proto>) 8.2.3. Transport Protocols (<proto>)
8.2.4. Attribute Names ("att-field") 8.2.4. Attribute Names (<attribute-name>)
8.2.5. Bandwidth Specifiers (<bwtype>) 8.2.5. Bandwidth Specifiers (<bwtype>)
8.2.6. Network Types (<nettype>) 8.2.6. Network Types (<nettype>)
8.2.7. Address Types (<addrtype>) 8.2.7. Address Types (<addrtype>)
8.3. Encryption Key Access Methods (OBSOLETE) 8.3. Encryption Key Access Methods (OBSOLETE)
9. SDP Grammar 9. SDP Grammar
10. Summary of Changes from RFC 4566 10. Summary of Changes from RFC 4566
11. References 11. References
11.1. Normative References 11.1. Normative References
11.2. Informative References 11.2. Informative References
Acknowledgements Acknowledgements
skipping to change at line 967 skipping to change at line 967
k=<method> k=<method>
k=<method>:<encryption key> k=<method>:<encryption key>
The "k=" line (key-field) is obsolete and MUST NOT be used. It is The "k=" line (key-field) is obsolete and MUST NOT be used. It is
included in this document for legacy reasons. One MUST NOT include a included in this document for legacy reasons. One MUST NOT include a
"k=" line in an SDP, and MUST discard it if it is received in an SDP. "k=" line in an SDP, and MUST discard it if it is received in an SDP.
5.13. Attributes ("a=") 5.13. Attributes ("a=")
a=<attribute> a=<attribute-name>
a=<attribute>:<value> a=<attribute-name>:<attribute-value>
Attributes are the primary means for extending SDP. Attributes may Attributes are the primary means for extending SDP. Attributes may
be defined to be used as session-level attributes, media-level be defined to be used as session-level attributes, media-level
attributes, or both. (Attribute scopes in addition to media-level attributes, or both. (Attribute scopes in addition to media-level
and session-level scopes may also be defined in extensions to this and session-level scopes may also be defined in extensions to this
document, e.g., [RFC5576] and [RFC8864].) document, e.g., [RFC5576] and [RFC8864].)
A media description may contain any number of "a=" lines (attribute- A media description may contain any number of "a=" lines (attribute-
fields) that are media description specific. These are referred to fields) that are media description specific. These are referred to
as media-level attributes and add information about the media as media-level attributes and add information about the media
description. Attribute-fields can also be added before the first description. Attribute-fields can also be added before the first
media description; these session-level attributes convey additional media description; these session-level attributes convey additional
information that applies to the session as a whole rather than to information that applies to the session as a whole rather than to
individual media descriptions. individual media descriptions.
Attribute-fields may be of two forms: Attribute-fields may be of two forms:
* A property attribute is simply of the form "a=<attribute>". These * A property attribute is simply of the form "a=<attribute-name>".
are binary attributes, and the presence of the attribute conveys These are binary attributes, and the presence of the attribute
that the attribute is a property of the session. An example might conveys that the attribute is a property of the session. An
be "a=recvonly". example might be "a=recvonly".
* A value attribute is of the form "a=<attribute>:<value>". For * A value attribute is of the form "a=<attribute-name>:<attribute-
example, a whiteboard could have the value attribute value>". For example, a whiteboard could have the value attribute
"a=orient:landscape". "a=orient:landscape".
Attribute interpretation depends on the media tool being invoked. Attribute interpretation depends on the media tool being invoked.
Thus receivers of session descriptions should be configurable in Thus receivers of session descriptions should be configurable in
their interpretation of session descriptions in general and of their interpretation of session descriptions in general and of
attributes in particular. attributes in particular.
Attribute names MUST use the US-ASCII subset of ISO-10646/UTF-8. Attribute names MUST use the US-ASCII subset of ISO-10646/UTF-8.
Attribute values are octet strings, and MAY use any octet value Attribute values are octet strings, and MAY use any octet value
skipping to change at line 1930 skipping to change at line 1930
Author/Change controller: Author/Change controller:
Authors of RFC 8866 Authors of RFC 8866
IETF MMUSIC working group delegated from the IESG IETF MMUSIC working group delegated from the IESG
8.2. Registration of SDP Parameters with IANA 8.2. Registration of SDP Parameters with IANA
This document specifies IANA parameter registries for six named SDP This document specifies IANA parameter registries for six named SDP
subfields. Using the terminology in the SDP specification Augmented subfields. Using the terminology in the SDP specification Augmented
Backus-Naur Form (ABNF), they are "media", <proto>, "att-field", Backus-Naur Form (ABNF), they are "media", <proto>, <attribute-name>,
<bwtype>, <nettype>, and <addrtype>. <bwtype>, <nettype>, and <addrtype>.
This document also replaces and updates the definitions of all those This document also replaces and updates the definitions of all those
parameters previously defined by [RFC4566]. parameters previously defined by [RFC4566].
IANA: Please change all references to RFC4566 in these registries to IANA: Please change all references to RFC4566 in these registries to
instead refer to this document. instead refer to this document.
The contact name and email address for all parameters registered in The contact name and email address for all parameters registered in
this document is: this document is:
skipping to change at line 1956 skipping to change at line 1956
+======+==========+================+===========+ +======+==========+================+===========+
| Type | SDP Name | [other fields] | Reference | | Type | SDP Name | [other fields] | Reference |
+======+==========+================+===========+ +======+==========+================+===========+
Table 3: Common format for SDP registries Table 3: Common format for SDP registries
8.2.1. Registration Procedure 8.2.1. Registration Procedure
A specification document that defines values for SDP "media", A specification document that defines values for SDP "media",
<proto>, "att-field", <bwtype>, <nettype>, and <addrtype> parameters <proto>, <attribute-name>, <bwtype>, <nettype>, and <addrtype>
MUST include the following information: parameters MUST include the following information:
* Contact name * Contact name
* Contact email address * Contact email address
* Name being defined (as it will appear in SDP) * Name being defined (as it will appear in SDP)
* Type of name ("media", <proto>, <bwtype>, <nettype>, or * Type of name ("media", <proto>, <bwtype>, <nettype>, or
<addrtype>) <addrtype>)
skipping to change at line 2059 skipping to change at line 2059
that a new one be registered through the IETF process [RFC6838] by that a new one be registered through the IETF process [RFC6838] by
production of, or reference to, a Standards Track RFC that defines production of, or reference to, a Standards Track RFC that defines
the format. the format.
For other protocols, formats MAY be registered according to the rules For other protocols, formats MAY be registered according to the rules
of the associated <proto> specification. of the associated <proto> specification.
Registrations of new formats MUST specify which transport protocols Registrations of new formats MUST specify which transport protocols
they apply to. they apply to.
8.2.4. Attribute Names ("att-field") 8.2.4. Attribute Names (<attribute-name>)
Attribute-field names ("att-field") MUST be registered with IANA and Attribute-field names (<attribute-name>) MUST be registered with IANA
documented to avoid any issues due to conflicting attribute and documented to avoid any issues due to conflicting attribute
definitions under the same name. (While unknown attributes in SDP definitions under the same name. (While unknown attributes in SDP
are simply ignored, conflicting ones that fragment the protocol are a are simply ignored, conflicting ones that fragment the protocol are a
serious problem.) serious problem.)
The format of the attribute registry is: The format of the attribute registry is:
+======+==========+=============+==============+===========+ +======+==========+=============+==============+===========+
| Type | SDP Name | Usage Level | Mux Category | Reference | | Type | SDP Name | Usage Level | Mux Category | Reference |
+======+==========+=============+==============+===========+ +======+==========+=============+==============+===========+
skipping to change at line 2091 skipping to change at line 2091
+===========+=======+=============+===========+=====================+ +===========+=======+=============+===========+=====================+
| attribute | setup | session, | TRANSPORT | [RFC4145] [RFC8859] | | attribute | setup | session, | TRANSPORT | [RFC4145] [RFC8859] |
| | | media, | | [MSRP-DATACHANNEL] | | | | media, | | [MSRP-DATACHANNEL] |
| | | dcsa | | | | | | dcsa | | |
| | | (msrp) | | | | | | (msrp) | | |
+-----------+-------+-------------+-----------+---------------------+ +-----------+-------+-------------+-----------+---------------------+
Table 5: Attribute registry example Table 5: Attribute registry example
This one registry combines all of the previous usage-level-specific This one registry combines all of the previous usage-level-specific
"att-field" registries, including updates made by [RFC8859]. IANA is <attribute-name> registries, including updates made by [RFC8859].
requested to do the necessary reformatting. IANA is requested to do the necessary reformatting.
Section 6 of this document replaces the initial set of attribute Section 6 of this document replaces the initial set of attribute
definitions made by [RFC4566]. IANA is requested to update the definitions made by [RFC4566]. IANA is requested to update the
registry accordingly. registry accordingly.
Documents can define new attributes and can also extend the Documents can define new attributes and can also extend the
definitions of previously defined attributes. definitions of previously defined attributes.
8.2.4.1. New Attributes 8.2.4.1. New Attributes
New attribute registrations are accepted according to the New attribute registrations are accepted according to the
"Specification Required" policy of [RFC8126], provided that the "Specification Required" policy of [RFC8126], provided that the
specification includes the following information: specification includes the following information:
* Contact name * Contact name
* Contact email address * Contact email address
* Attribute name: the name of the attribute that will appear in SDP. * Attribute name: the name of the attribute that will appear in SDP.
This MUST conform to the definition of "att-field". This MUST conform to the definition of <attribute-name>.
* Attribute syntax: for a value attribute (see Section 5.13), an * Attribute syntax: for a value attribute (see Section 5.13), an
ABNF definition of the attribute value <att-value> syntax (see ABNF definition of the attribute value <attribute-value> syntax
Section 9) MUST be provided. The syntax MUST follow the rule form (see Section 9) MUST be provided. The syntax MUST follow the rule
per Section 2.2 of [RFC5234] and [RFC7405]. This SHALL define the form per Section 2.2 of [RFC5234] and [RFC7405]. This SHALL
allowable values that the attribute might take. It MAY also define the allowable values that the attribute might take. It MAY
define an extension method for the addition of future values. For also define an extension method for the addition of future values.
a property attribute, the ABNF definition is omitted as the For a property attribute, the ABNF definition is omitted as the
property attribute takes no values. property attribute takes no values.
* Attribute semantics: for a value attribute, a semantic description * Attribute semantics: for a value attribute, a semantic description
of the values that the attribute might take MUST be provided. The of the values that the attribute might take MUST be provided. The
usage of a property attribute is described under Purpose below. usage of a property attribute is described under Purpose below.
* Attribute value: the name of an ABNF syntax rule defining the * Attribute value: the name of an ABNF syntax rule defining the
syntax of the value. Absence of a rule name indicates that the syntax of the value. Absence of a rule name indicates that the
attribute takes no values. Enclosing the rule name in "[" and "]" attribute takes no values. Enclosing the rule name in "[" and "]"
indicates that a value is optional. indicates that a value is optional.
skipping to change at line 2173 skipping to change at line 2173
attribute usage level. They should not choose only "session" when attribute usage level. They should not choose only "session" when
the attribute can have different values when media is disaggregated, the attribute can have different values when media is disaggregated,
i.e., when each "m=" section has its own IP address on a different i.e., when each "m=" section has its own IP address on a different
endpoint. In that case, the attribute type chosen should be endpoint. In that case, the attribute type chosen should be
"session, media" or "media" (depending on desired semantics). The "session, media" or "media" (depending on desired semantics). The
default rule is that for all new SDP attributes that can occur both default rule is that for all new SDP attributes that can occur both
in session and media level, the media level overrides the session in session and media level, the media level overrides the session
level. When this is not the case for a new SDP attribute, it MUST be level. When this is not the case for a new SDP attribute, it MUST be
explicitly stated. explicitly stated.
IANA has registered the initial set of attribute names ("att-field" IANA has registered the initial set of attribute names (<attribute-
values) with definitions as in Section 6 of this memo (these name> values) with definitions as in Section 6 of this memo (these
definitions replace those in [RFC4566]). definitions replace those in [RFC4566]).
8.2.4.2. Updates to Existing Attributes 8.2.4.2. Updates to Existing Attributes
Updated attribute registrations are accepted according to the Updated attribute registrations are accepted according to the
"Specification Required" policy of [RFC8126]. "Specification Required" policy of [RFC8126].
The Designated Expert reviewing the update is requested to evaluate The Designated Expert reviewing the update is requested to evaluate
whether the update is compatible with the prior intent and use of the whether the update is compatible with the prior intent and use of the
attribute, and whether the new document is of sufficient maturity and attribute, and whether the new document is of sufficient maturity and
skipping to change at line 2467 skipping to change at line 2467
%s"base64:" base64 / %s"base64:" base64 /
%s"uri:" uri %s"uri:" uri
; NOTE: These names are case-sensitive. ; NOTE: These names are case-sensitive.
base64 = *base64-unit [base64-pad] base64 = *base64-unit [base64-pad]
base64-unit = 4base64-char base64-unit = 4base64-char
base64-pad = 2base64-char "==" / 3base64-char "=" base64-pad = 2base64-char "==" / 3base64-char "="
base64-char = ALPHA / DIGIT / "+" / "/" base64-char = ALPHA / DIGIT / "+" / "/"
; sub-rules of 'a=' ; sub-rules of 'a='
attribute = (att-field ":" att-value) / att-field attribute = (attribute-name ":" attribute-value) / attribute-name
att-field = token attribute-name = token
att-value = byte-string attribute-value = byte-string
; sub-rules of 'm=' ; sub-rules of 'm='
media = token media = token
;typically "audio", "video", "text", "image" ;typically "audio", "video", "text", "image"
;or "application" ;or "application"
fmt = token fmt = token
;typically an RTP payload type for audio ;typically an RTP payload type for audio
;and video media ;and video media
skipping to change at line 2628 skipping to change at line 2628
* Changed the mechanism and documentation required for registering * Changed the mechanism and documentation required for registering
new attributes (Section 8.2.4.1). new attributes (Section 8.2.4.1).
* Tightened up IANA registration procedures for extensions. Removed * Tightened up IANA registration procedures for extensions. Removed
phone number and long-form name (Section 8.2). phone number and long-form name (Section 8.2).
* Expanded the IANA <nettype> registry to identify valid <addrtype> * Expanded the IANA <nettype> registry to identify valid <addrtype>
subfields (Section 8.2.6). subfields (Section 8.2.6).
* Reorganized the several IANA att-field registries into a single * Reorganized the several IANA <attribute-name> registries into a
registry (Section 8.2.4). single registry (Section 8.2.4).
* Revised ABNF syntax (Section 9) for clarity. Backward * Revised ABNF syntax (Section 9) for clarity. Backward
compatibility is maintained with a few exceptions: compatibility is maintained with a few exceptions:
- Revised the syntax of time descriptions ("t=", "r=", "z=") to - Revised the syntax of time descriptions ("t=", "r=", "z=") to
remove ambiguities. Clarified that "z=" only modifies the remove ambiguities. Clarified that "z=" only modifies the
immediately preceding "r=" lines. Made "z=" without a immediately preceding "r=" lines. Made "z=" without a
preceding "r=" a syntax error (Section 5.11). (This is preceding "r=" a syntax error (Section 5.11). (This is
incompatible with certain aberrant usage.) incompatible with certain aberrant usage.)
 End of changes. 16 change blocks. 
31 lines changed or deleted 31 lines changed or added

This html diff was produced by rfcdiff 1.45. The latest version is available from http://tools.ietf.org/tools/rfcdiff/