Internet DRAFT - draft-lennox-mmusic-sdp-source-selection
draft-lennox-mmusic-sdp-source-selection
MMUSIC J. Lennox
Internet-Draft Vidyo
Intended status: Standards Track H. Schulzrinne
Expires: April 25, 2013 Columbia U.
October 22, 2012
Mechanisms for Media Source Selection in the Session Description
Protocol (SDP)
draft-lennox-mmusic-sdp-source-selection-05
Abstract
Source-specific media attributes in the Session Description Protocol
(SDP) allow endpoints to describe Real-Time Transport Protocol (RTP)
sources within a media stream. This document extends that mechanism
by defining how participants in a multimedia session can request
specific sources from a remote party.
Status of this Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
This Internet-Draft will expire on April 25, 2013.
Copyright Notice
Copyright (c) 2012 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of
Lennox & Schulzrinne Expires April 25, 2013 [Page 1]
Internet-Draft Media Source Selection in SDP October 2012
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3
3. Architecture . . . . . . . . . . . . . . . . . . . . . . . . . 3
4. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
5. The "remote-ssrc" Media Attribute . . . . . . . . . . . . . . 5
6. Remote Source Attributes . . . . . . . . . . . . . . . . . . . 6
6.1. The "recv" Remote Source-Level Attribute . . . . . . . . . 6
6.2. The "framerate" Remote Source Attribute . . . . . . . . . 7
6.3. The "imageattr" Remote Source Attribute . . . . . . . . . 8
6.4. The "priority" Remote Source Attribute . . . . . . . . . . 8
7. Source Attributes . . . . . . . . . . . . . . . . . . . . . . 9
7.1. The "information" Source Attribute . . . . . . . . . . . . 9
7.2. The "sending" Source-Level Attribute . . . . . . . . . . . 9
8. Usage With the Offer/Answer Model . . . . . . . . . . . . . . 10
9. Backward Compatibility . . . . . . . . . . . . . . . . . . . . 11
10. Formal Grammar . . . . . . . . . . . . . . . . . . . . . . . . 12
11. Security Considerations . . . . . . . . . . . . . . . . . . . 13
12. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 13
12.1. New SDP Media-Level Attributes . . . . . . . . . . . . . . 13
12.2. New SDP Source-Level Attributes . . . . . . . . . . . . . 13
12.3. Registry for Remote Source-Level Attributes . . . . . . . 14
13. References . . . . . . . . . . . . . . . . . . . . . . . . . . 15
13.1. Normative References . . . . . . . . . . . . . . . . . . . 15
13.2. Informative References . . . . . . . . . . . . . . . . . . 16
Appendix A. Open issues . . . . . . . . . . . . . . . . . . . . . 16
Appendix B. Changes From Earlier Versions . . . . . . . . . . . . 16
B.1. Changes From Individual Submission Draft -04 . . . . . . . 16
B.2. Changes From Individual Submission Draft -03 . . . . . . . 16
B.3. Changes From Individual Submission Draft -02 . . . . . . . 16
B.4. Changes From Individual Submission Draft -01 . . . . . . . 17
B.5. Changes From Individual Submission Draft -00 . . . . . . . 17
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 17
Lennox & Schulzrinne Expires April 25, 2013 [Page 2]
Internet-Draft Media Source Selection in SDP October 2012
1. Introduction
The source-attribute specification [RFC5576] provides declarative
definitions for Real-Time Protocol (RTP) [RFC3550] media sources in
the Session Description Protocol (SDP) [RFC4566].
In some architectures (such as those described in Section 3), it is
useful to provide the capability for endpoints to request specific
sources of a remote party, asking the sender to selectively enable or
disable them, and to specify characteristics of the sources
requested. To accomplish this, this document defines a new media
attribute, "remote-ssrc", which allows a receiver to indicate that it
wishes to receive a remote source, and also allows it to specify
attributes of the remote source. This document defines several such
remote source attributes: "recv" and "preference" which are
applicable to any media type, and "framerate" and "imageattr" which
are specific to video sources. Currently no attributes are defined
that are specific to audio or other media types.
Additionally, several new declarative ([RFC5576]) source attributes
are defined: "information", providing human-readable information
about a local source, and "sending", which is complementary to the
"recv" remote source attribute.
2. Terminology
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119 [RFC2119] and
indicate requirement levels for compliant implementations.
3. Architecture
The primary use envisioned for this mechanism is for multimedia
conferences controlled by a central system. This is similar to the
topologies described by RTP Topologies [RFC5117] as Topo-Mixer, Topo-
Video-switch-MCU, or Topo-RTCP-terminating-MCU (depending on the
treatment of RTCP), with one crucial difference: rather than only
forwarding either a single media source, or an MCU-mixed media
source, to receivers, the central mixer can instead simultaneously
forward multiple media sources independently to each receiver, as
constrained by available bandwidth.
In this architecture, the conference server can notify each
participant as sources become available in the conference.
Participants can then either explicitly request sources from the
Lennox & Schulzrinne Expires April 25, 2013 [Page 3]
Internet-Draft Media Source Selection in SDP October 2012
server, or allow the server to choose which sources to forward based
on its own criteria and policy. A hybrid mode is also possible, in
which participants explicitly request some sources while allowing the
server to choose others.
Receivers can specify parameters for how they wish to view sources,
e.g., the image size or frame rate in which they will display video
sources. They can also specify priority among sources in case the
server has insufficient bandwidth to send them all.
When the first receiver starts viewing a source, the conference
server tells the sender to start sending it; prior to this, the
sender does not send it. Similarly, when the last receiver stops
viewing a source, the server tells the sender to stop sending it.
For large conferences, sending each conference source over a separate
RTP session, each with its own m= line, would not be practical, due
to issues such as server port consumption, NAT binding exhaustion,
and ICE setup time. Thus, sources of the same media type are instead
sent over a single RTP session, distinguished by their SSRC. This
document defines the source negotiation mechanisms needed in SDP to
enable the mechanisms defined in this architecture.
4. Overview
This mechanism builds upon the declarative source definitions defined
in [RFC5576]. That document defines how to describe individual RTP
sources within an RTP session in SDP. Each source is identified by
its Synchronization Source (SSRC) identifier, and is associated with
its CNAME (canonical-name) SDP attribute.
To enable the architecture defined in Section 3, this document
defines a complementary SDP media attribute which allows the receiver
of some RTP sources to let the the sources' sender know which sources
the receiver would like to receive. This attribute, "remote-ssrc",
is defined in Section 5.
A simple example SDP exchange using this mechanism is shown in
Figure 1 and Figure 2. For brevity, only the relevant portions of
the media sections of the SDP descriptions are given.
m=video 49168 RTP/AVP 96
a=rtpmap:96 H264/90000
a=ssrc:12345 cname:user1@host1.example.com
a=ssrc:67890 cname:user2@host2.example.com
Figure 1: Notification of media sources
Lennox & Schulzrinne Expires April 25, 2013 [Page 4]
Internet-Draft Media Source Selection in SDP October 2012
In Figure 1 an SDP description indicates, using the mechanisms of
[RFC5576], two sources that are available in an RTP session.
m=video 49170 RTP/AVP 96
a=rtpmap:96 H264/90000
a=remote-ssrc:12345 recv:on
a=remote-ssrc:12345 imageattr:* [x=720,y=576]
a=remote-ssrc:12345 framerate:15
Figure 2: Request for a media source.
In Figure 2 an SDP description sent in response requests that a
specific source be sent, with resolution 720 by 576 and a framerate
of 15 frames per second.
5. The "remote-ssrc" Media Attribute
The "remote-ssrc" SDP media-level attribute allows a receiver to
requested a specific a remote source.
a=remote-ssrc:<ssrc-id> <attribute>
a=remote-ssrc:<ssrc-id> <attribute>:<value>
The SDP media attribute "remote-ssrc" indicates a property, known as
a "remote source-level attribute", of a remote media source (RTP
stream) within an RTP session. <ssrc-id> is the synchronization
source ID (SSRC) of the remote source being described, interpreted as
a 32-bit unsigned integer in network byte order and represented in
decimal. <attribute> or <attribute>:<value> represent the source-
level receive attribute specific to the given remote media source.
The source-level receive attribute follows the syntax of the SDP "a="
line. It thus consists either of a single attribute name (a flag),
or an attribute name and value, e.g., "framerate:30". No attributes
of the former type are defined by this document. The order of
multiple "remote-ssrc" media attributes within an SDP message is not
significant.
These remote source IDs correspond to sources in the RTP session that
may be sent by other session members. The author of the SDP message
may have learned about these sources by observing them in the RTP
session (either by receiving RTP packets or seeing RTCP reports about
them), from earlier SDP messages containing "ssrc" attributes
describing the sources, or from other means such as the SIP
conference event package [RFC4575] or the XCON conference event
package [RFC6502].
Lennox & Schulzrinne Expires April 25, 2013 [Page 5]
Internet-Draft Media Source Selection in SDP October 2012
The "remote-ssrc" media attribute may be used for any RTP-based media
transport. It is not defined for other transport protocols.
Though the remote source attributes specified by the "remote-ssrc"
property follow the same syntax as (local) source attributes, they
are defined independently. All remote source attributes MUST be
registered with IANA, using the registry defined in Section 12.3.
Figure 3 in Section 10 gives a formal Augmented Backus-Naur Form
(ABNF) [RFC5234] grammar for the ssrc attribute.
The "remote-ssrc" media attribute does not (itself) depend on the SDP
charset, though specific remote source attributes may be defined to
be.
6. Remote Source Attributes
This section defines several specific remote source-level attributes
that can be applied to RTP sources.
6.1. The "recv" Remote Source-Level Attribute
a=remote-ssrc:<ssrc> recv:<state>
The "recv" remote source attribute indicates whether the author of an
SDP message is interested in receiving a source. A "recv" remote
source attribute with a <state> value of "on" indicates a source that
the author of an SDP message is interested in receiving. Similarly,
a "recv" remote source attribute with a <state> value of "off"
indicates a source that the author of an SDP message is not
interested in receiving. There MUST be at most one "recv" remote
source-level attribute per remote media source. A "recv" attribute
with a <state> value other than "on" or "off" MUST be ignored (for
future extensibility).
If the media stream containing the source has the media attributes
"sendonly" or "inactive", the SDP message MUST NOT list any remote
sources with a "recv" attribute with the <state> "on" for that media
stream.
If "remote-ssrc" attributes are given for a particular remote source,
but "recv" is not specified for it, "recv:on" is the default if the
media stream is "sendrecv" or "recvonly".
If no remote-ssrc attributes at all are listed for a particular
Lennox & Schulzrinne Expires April 25, 2013 [Page 6]
Internet-Draft Media Source Selection in SDP October 2012
remote source, the choice of whether to send it is left at the
sender's discretion. However, for sources associated in with an
"ssrc-group" [RFC5576], any unlisted sources of a group SHOULD be
treated the same as any listed ones if the requests are consistent,
unless the semantics specified for the "ssrc-group" dictates
otherwise.
Figure 4 in Section 10 gives a formal Augmented Backus-Naur Form
(ABNF) [RFC5234] grammar for the "recv" attribute.
Section 8 describes how the "recv" remote source attribute is used
with SDP offer/answer [RFC3264].
The "recv" remote source attribute does not depend on the SDP
charset.
6.2. The "framerate" Remote Source Attribute
a=remote-ssrc:<ssrc> framerate:<frame rate>
The "framerate" remote source-level attribute gives the maximum frame
rate, in frames per second, which the receiver of a video source
would like receive for the video. Higher framerates are likely not
to be useful to the receiver. This attribute is analogous in
function and syntax to the SDP "framerate" media attribute [RFC4566].
Decimal representations of fractional values using the notation
"<integer>.<fraction>" are allowed. The frame rate specified MUST be
greater than zero.
The "framerate" attribute is advisory; a sender MAY send a framerate
other than that requested by the receiver if it is not able to send
the framerate required. The sender SHOULD attempt to come as close
as it can to the requested framerate, subject to other constraints of
the system.
The "framerate" attribute is defined only for video media. There
MUST be at most one "framerate" remote source attribute per remote
media source. The "framerate" requested MUST NOT be inconsistent
with any fmtp parameters specified for the media stream's payload
types.
Figure 5 in Section 10 gives a formal Augmented Backus-Naur Form
(ABNF) [RFC5234] grammar for the "framerate" attribute.
The "framerate" remote source attribute does not depend on the SDP
charset.
Lennox & Schulzrinne Expires April 25, 2013 [Page 7]
Internet-Draft Media Source Selection in SDP October 2012
6.3. The "imageattr" Remote Source Attribute
a=remote-ssrc:<ssrc> imageattr:<PT> <attr_list>
The "imageattr" remote source-level attribute describes the image
resolution and other image characteristics with which a video source
would like receive the video. Larger resolutions are likely not to
be useful to the receiver. It is analogous in function and syntax to
the "recv" portion of the SDP "imageattr" media attribute [RFC6236].
The "imageattr" attribute is advisory; a sender MAY send a resolution
other than that requested by the receiver if it is not able to send
the resolution required. The sender SHOULD attempt to come as close
as it can to the requested resolution, subject to other constraints
of the system.
Different image attributes MAY be defined per payload type defined in
the media stream. The <PT> parameter MAY either be one of the media
formats (RTP payload types) specified for the media stream, or the
character "*" indicating that the "imageattr" attribute applies to
all payload types of the session.
The <attr_list> parameter gives a list of resolutions and image
aspect ratios with which the receiver wishes to display the source.
It is described in detail in [RFC6236].
The "imageattr" attribute is defined only for video media. There
MUST be at most one "imageattr" remote source attribute per payload
type per remote media source. If an "imageattr" attribute is present
with a PT value of "*", it MUST be the only "imageattr" attribute
defined for that remote media source. The "imageattr" requested MUST
NOT be inconsistent with any fmtp parameters specified for the media
stream's payload types.
Figure 6 in Section 10 gives a formal Augmented Backus-Naur Form
(ABNF) [RFC5234] grammar for the "imageattr" attribute.
The "imageattr" remote source attribute does not depend on the SDP
charset.
6.4. The "priority" Remote Source Attribute
a=remote-ssrc:<ssrc> priority:<priority>
Lennox & Schulzrinne Expires April 25, 2013 [Page 8]
Internet-Draft Media Source Selection in SDP October 2012
The "priority" remote source-level attribute gives the relative
priority among the remote sources requested by a receiver. The
<priority> parameter is a non-negative decimal integer indicating
which streams should be given higher preference if the sender
determines that there is insufficient bandwidth (or other resource)
available to transmit all the requested streams. Larger numbers
indicate a greater priority. Priority values MUST be less than 2**31
- 1, but otherwise their specific values have no semantic
significance.
Figure 7 in Section 10 gives a formal Augmented Backus-Naur Form
(ABNF) [RFC5234] grammar for the "priority" attribute.
The "priority" remote source attribute does not depend on the SDP
charset.
7. Source Attributes
This section describes sending source attributes that a sender can
use to describe RTP sources.
7.1. The "information" Source Attribute
a=ssrc:<ssrc> information:<source description>
The "information" source attribute provides textual information about
a source. It is analogous in function and syntax to the SDP "i="
field for session and media information. There MUST be at most one
"information" source attribute per media source. If the "charset"
attribute is present at the session or media level, it specifies the
character set used in the source description. If the "charset"
attribute is not present, the "information" attribute MUST contain
ISO 10646 characters in UTF-8 encoding.
The "information" attribute is intended to provide a free-form human-
readable description of a media source. It is not suitable for
parsing by automata.
Figure 8 in Section 10 gives a formal Augmented Backus-Naur Form
(ABNF) [RFC5234] grammar for the "information" attribute.
7.2. The "sending" Source-Level Attribute
a=ssrc:<ssrc> sending:<state>
Lennox & Schulzrinne Expires April 25, 2013 [Page 9]
Internet-Draft Media Source Selection in SDP October 2012
The "sending" remote source attribute indicates whether the author of
an SDP message is interested in currently actively sending a source,
due to it having been requested by the other party with a "recv"
remote source attribute in an SDP offer/answer exchange. A "sending"
source attribute with a <state> value of "on" indicates a source that
the author of an SDP message is currently actively sending, due to it
having been requested by the other party with a "recv:on" remote
source attribute. Similarly, the "sending" source attribute with a
<state> value of "off" indicates a source that the other party has
rejected with a previous the "recv:off" remote source attribute, or
that the author of the SDP message is no longer interested in
sending. There MUST be at most one "sending" source-level attribute
per media source. Sources which were not listed with "recv-ssrc" in
the previous offer or answer SHOULD NOT have a "sending" attribute
included. The "sending" attribute is only defined in the context of
SDP offer/answer [RFC3264]. A "sending" attribute with a <state>
value other than "on" or "off" MUST be ignored (for future
extensibility).
If the media stream containing the source has the media attributes
"recvonly" or "inactive", the stream MUST NOT list any sources with
the "sending" attribute with the <state> on.
A source that is indicated in an offer or answer with "sending:off"
SHOULD still be considered a member of the RTP session, and thus RTCP
SHOULD be sent for it, unless it has left the RTP session (with an
RTCP BYE message) subsequent to the sending of the offer or answer.
Figure 9 in Section 10 gives a formal Augmented Backus-Naur Form
(ABNF) [RFC5234] grammar for the "sending" attribute.
Further description of how the "sending" source attribute is used
with SDP offer/answer [RFC3264] is given in Section 8.
The "sending" source attribute is not dependent on charset.
8. Usage With the Offer/Answer Model
When used with the SDP Offer/Answer Model [RFC3264], the "remote-
ssrc" attribute MAY be included either in an SDP offer or answer.
Both offers and answers MAY contain both "ssrc" and "remote-ssrc"
media attributes.
If "remote-ssrc" attributes are present in an SDP offer, the answerer
(if it accepts the offer) MUST include all the remotely-requested
active sources in "ssrc" attributes in its answer, except for any
sources which are no longer available when the answer is sent. If
Lennox & Schulzrinne Expires April 25, 2013 [Page 10]
Internet-Draft Media Source Selection in SDP October 2012
"remote-ssrc" attributes are present in an answer, no immediate
update to SDP is necessary; however, if the endpoint subsequently
sends a new SDP offer, it SHOULD include all the remotely-requested
sources from the previous offer/answer exchange, unless those sources
are no longer available. In both cases, remote sources with the
"recv:on" remote source attribute included (implicitly or explicitly)
MUST be listed in the next response -- with the "sending:on" local
source attribute if the sender accepted the request to send the
source, or "sending:off" if the sender does not wish to send the
source. Remote sources with the "recv:off" remote source attribute
MUST have the "sending:off" local source attribute. If the send/recv
mode of the media stream has changed to "recvonly" or "inactive",
sources MUST NOT be listed with the "sending:on" attribute, and thus
all remotely-requested sources MUST be listed as "sending:off"
instead.
If a sender receives a "recv:on" in an answer and does not wish to
send the source, it SHOULD send a updated offer with "sending:off" as
soon as is practical. If a sender wishes to stop sending a source
for which its previous offer or answer had included "sending:on", it
SHOULD send an updated offer with "sending:off" as soon as practical,
and MUST include "sending:off" for the source in its next offer or
answer (assuming the source is still in the session, and it still
wishes not to send the source by the time of the offer or answer).
In general, all participants in an offer/answer exchange SHOULD list
all currently available sources, unless information about available
sources is being provided through some other mechanism, such as the
SIP conference event package [RFC4575] or the XCON conference event
package [RFC6502]. (Because these event packages support partial
updates, whereas SDP does not, source notification through event
packages can be more efficient, where applicable, than SDP can be.)
In the latter case sources that were not explicitly requested in the
most recent SDP offer or answer MAY be omitted.
9. Backward Compatibility
The default behavior, for remote sources which are listed neither as
"recv:on" nor "recv:off", is that whether sources are to be sent is
left to the sender's discretion. This is also the implicit behavior
for standard RTP; thus, a device does not need to know, upon
receiving an SDP message containing no "remote-ssrc" attributes,
whether its peer does not understand the "remote-ssrc" attribute at
all, or is simply choosing to leave source selection up to the
sender's discretion.
Because offer/answer exchanges are required to include "sending"
Lennox & Schulzrinne Expires April 25, 2013 [Page 11]
Internet-Draft Media Source Selection in SDP October 2012
source attributes in response to previous "recv" remote source
attributes, it is possible to determine based on an SDP answer, or on
a subsequent offer/answer exchange, whether the peer understands the
"remote-ssrc" attribute.
10. Formal Grammar
This section gives a formal Augmented Backus-Naur Form (ABNF)
[RFC5234] grammar for each of the new media and source attributes
defined in this document. Grammars for existing session or media
attributes which have been extended to be source attributes are not
included.
remote-ssrc-attr = "remote-ssrc:" ssrc-id SP attribute
; The base definition of "attribute" is in RFC 4566.
; (It is the content of "a=" lines.)
ssrc-id = integer ; 0 .. 2**32 - 1
attribute =/ remote-ssrc-attr
Figure 3: Syntax of the "remote-ssrc" media attribute
recv-attr = "recv:" recv-state
recv-state = "on" / "off" / token
attribute =/ recv-attr
Figure 4: Syntax of the "recv" and "inactive" receive source
attributes
framerate-attr = "framerate:" integer [ "." 1*DIGIT ]
attribute =/ framerate-attr
Figure 5: Syntax of the "framerate" receive source attribute
imageattr-attr = "imageattr:" PT WSP attr_list
; The definition of PT and attr_list are in
; [RFC6236]
attribute =/ imageattr-attr
Figure 6: Syntax of the "imageattr" receive source attribute
Lennox & Schulzrinne Expires April 25, 2013 [Page 12]
Internet-Draft Media Source Selection in SDP October 2012
priority-attr = "priority:" integer
attribute =/ priority-attr
Figure 7: Syntax of the "priority" receive source attribute
information-attr = "information:" text
; The definition of text is in [RFC4566]
attribute =/ information-attr
Figure 8: Syntax of the "information" source attribute
sending-attr = "sending:" sending-state
sending-state = "on" / "off" / token
attribute =/ sending-attr
Figure 9: Syntax of the "sending" and "inactive" source attributes
11. Security Considerations
All the security considerations of RTP [RFC3550] and of SDP [RFC4566]
apply. Explicitly requesting sources of an RTP media stream does not
appear to add further security issues.
12. IANA Considerations
12.1. New SDP Media-Level Attributes
This document defines a new SDP media-level attribute, "remote-ssrc".
This attribute should be registered by IANA under "Session
Description Protocol (SDP) Parameters" under "att-field (media level
only)".
The "remote-ssrc" attribute is used to identify characteristics of
remote media sources within a media stream. Its format is defined in
Section 5.
12.2. New SDP Source-Level Attributes
This document defines two new SDP source-level attributes,
"information" and "sending". These attributes should be registered
Lennox & Schulzrinne Expires April 25, 2013 [Page 13]
Internet-Draft Media Source Selection in SDP October 2012
by IANA under "Session Description Protocol (SDP) Parameters" under
"att-field (source level)". Their format is defined in Section 7.
12.3. Registry for Remote Source-Level Attributes
This specification creates a new IANA registry named "att-field
(remote source level)" within the SDP parameters registry. Remote
source attributes MUST be registered with IANA and documented, under
the same rules as for SDP source-level attributes as specified in
[RFC5576]:
New attribute registrations are accepted according to the
"Specification Required" policy of [RFC5226], provided that the
specification includes the following information:
o contact name, email address, and telephone number
o attribute name (as it will appear in SDP)
o long-form attribute name in English
o whether the attribute value is subject to the charset attribute
o a one-paragraph explanation of the purpose of the attribute
o a specification of appropriate attribute values for this attribute
The above is the minimum that IANA will accept. Attributes that are
expected to see widespread use and interoperability SHOULD be
documented with a standards-track RFC that specifies the attribute
more precisely.
Submitters of registrations should ensure that the specification is
in the spirit of SDP attributes, most notably that the attribute is
platform independent in the sense that it makes no implicit
assumptions about operating systems and does not name specific pieces
of software in a manner that might inhibit interoperability.
Remote source-level attributes which are substantially similar in
semantics to existing source-level, session-level or media-level
attributes SHOULD re-use the same attribute name as those attributes.
Remote source-level attributes SHOULD NOT re-use attribute names of
other level attributes that are unrelated or substantially different.
The initial set of remote source attribute names, with definitions in
Section 6 of this document, is in Figure 10.
Lennox & Schulzrinne Expires April 25, 2013 [Page 14]
Internet-Draft Media Source Selection in SDP October 2012
Type SDP Name Reference
---- ------------------ ---------
att-field (remote source level)
recv [RFCXXXX]
framerate [RFCXXXX]
imageattr [RFCXXXX]
priority [RFCXXXX]
Figure 10: Initial Contents of IANA Remote Source Attribute Registry
(Note to the RFC-Editor: please replace "XXXX" with the number of
this document prior to publication as an RFC.)
13. References
13.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC3264] Rosenberg, J. and H. Schulzrinne, "An Offer/Answer Model
with Session Description Protocol (SDP)", RFC 3264,
June 2002.
[RFC3550] Schulzrinne, H., Casner, S., Frederick, R., and V.
Jacobson, "RTP: A Transport Protocol for Real-Time
Applications", STD 64, RFC 3550, July 2003.
[RFC4566] Handley, M., Jacobson, V., and C. Perkins, "SDP: Session
Description Protocol", RFC 4566, July 2006.
[RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an
IANA Considerations Section in RFCs", BCP 26, RFC 5226,
May 2008.
[RFC5234] Crocker, D. and P. Overell, "Augmented BNF for Syntax
Specifications: ABNF", STD 68, RFC 5234, January 2008.
[RFC5576] Lennox, J., Ott, J., and T. Schierl, "Source-Specific
Media Attributes in the Session Description Protocol
(SDP)", RFC 5576, June 2009.
[RFC6236] Johansson, I. and K. Jung, "Negotiation of Generic Image
Attributes in the Session Description Protocol (SDP)",
RFC 6236, May 2011.
Lennox & Schulzrinne Expires April 25, 2013 [Page 15]
Internet-Draft Media Source Selection in SDP October 2012
13.2. Informative References
[RFC4575] Rosenberg, J., Schulzrinne, H., and O. Levin, "A Session
Initiation Protocol (SIP) Event Package for Conference
State", RFC 4575, August 2006.
[RFC5117] Westerlund, M. and S. Wenger, "RTP Topologies", RFC 5117,
January 2008.
[RFC6502] Camarillo, G., Srinivasan, S., Even, R., and J.
Urpalainen, "Conference Event Package Data Format
Extension for Centralized Conferencing (XCON)", RFC 6502,
March 2012.
Appendix A. Open issues
o Does the model described in Section 8, where sources can be
requested in an an answer and responded to in a subsequent offer
or answer, actually work for all failure cases? Or do we need a
full bi-directional offer/answer exchange?
Appendix B. Changes From Earlier Versions
Note to the RFC-Editor: please remove this section prior to
publication as an RFC.
B.1. Changes From Individual Submission Draft -04
Document refresh; reference updates only.
B.2. Changes From Individual Submission Draft -03
Changed logic to indicate that it is valid to reject a "recv:on"
request with "sending:off", either immediately or at a subsequent
time.
Clarified that sources with "sending:off" are still members of the
RTP session, and so still have RTCP sent for them.
B.3. Changes From Individual Submission Draft -02
Document refresh; reference updates only.
Lennox & Schulzrinne Expires April 25, 2013 [Page 16]
Internet-Draft Media Source Selection in SDP October 2012
B.4. Changes From Individual Submission Draft -01
o Clarified backward compatibility discussion.
o Minor editorial improvements.
B.5. Changes From Individual Submission Draft -00
o The "recv" and "inactive" remote source attributes have been
changed to "recv:on" and "recv:off" respectively. Similarly, the
"send" and "inactive" source attributes have been changed to
"sending:on" and "sending:off".
o Clarified that "imageattr" and "framerate" parameters are
advisory, and MUST NOT be inconsistent with payload type
parameters.
o Tightened some SHOULD requirements to be MUST, and clarified when
others apply.
o Tightened up ABNF grammar (e.g., to eliminate leading 0 values
from integers).
o Added Henning Schulzrinne as co-author.
o Numerous editorial improvements.
Authors' Addresses
Jonathan Lennox
Vidyo, Inc.
433 Hackensack Avenue
Seventh Floor
Hackensack, NJ 07601
US
Email: jonathan@vidyo.com
Henning Schulzrinne
Columbia University Department of Computer Science
450 Computer Science
1214 Amsterdam Ave., Mailcode: 0401
New York, NY 10027
US
Email: hgs@cs.columbia.edu
URI: http://www.cs.columbia.edu/~hgs/
Lennox & Schulzrinne Expires April 25, 2013 [Page 17]