Network Working Group C. Holmberg
Internet-Draft Ericsson
Intended status: Standards Track February 15, 2016
Expires: August 18, 2016
Indicating Exclusive Support of RTP/RTCP Multiplexing using SDP
draft-ietf-mmusic-mux-exclusive-03
Abstract
This document defines a new SDP media-level attribute, 'rtcp-mux-
exclusive', that can be used by an endpoint to indicate exclusive
support of RTP/RTCP multiplexing.
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 August 18, 2016.
Copyright Notice
Copyright (c) 2016 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
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Holmberg Expires August 18, 2016 [Page 1]
Internet-Draft Exclusive RTP/RTCP Mux February 2016
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Conventions . . . . . . . . . . . . . . . . . . . . . . . . . 3
3. SDP rtcp-mux-exclusive Attribute . . . . . . . . . . . . . . 3
4. SDP Offer/Answer Procedures . . . . . . . . . . . . . . . . . 4
4.1. General . . . . . . . . . . . . . . . . . . . . . . . . . 4
4.2. Generating the Initial SDP Offer . . . . . . . . . . . . 4
4.3. Generating the Answer . . . . . . . . . . . . . . . . . . 4
4.4. Offerer Processing of the SDP Answer . . . . . . . . . . 5
4.5. Modifying the Session . . . . . . . . . . . . . . . . . . 5
5. ICE Considerations . . . . . . . . . . . . . . . . . . . . . 6
6. Security Considerations . . . . . . . . . . . . . . . . . . . 6
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6
8. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 6
9. Change Log . . . . . . . . . . . . . . . . . . . . . . . . . 7
10. References . . . . . . . . . . . . . . . . . . . . . . . . . 7
10.1. Normative References . . . . . . . . . . . . . . . . . . 7
10.2. Informative References . . . . . . . . . . . . . . . . . 8
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 8
1. Introduction
[RFC5761] defines how to multiplex RTP and RTCP on a single IP
address and port, referred to as RTP/RTCP multiplexing. [RFC5761]
also defines an Session Description Protocol (SDP) [RFC4566]
attribute, 'rtcp-mux' that can be used by entities to indicate
support, and negotiate usage of, RTP/RTCP multiplexing.
As defined in [RFC5761], if the peer endpoint does not support RTP/
RTCP multiplexing, there must be a fallback to usage of separate
ports for RTP and RTCP.
The RTCWEB WG has defined that support of the fallback mentioned
above is optional. Therefore, there is a need for a mechanism that
allows an endpoint to indicate exclusive support of RTP/RTCP
multiplexing, meaning that endpoint only supports RTP/RTCP
multiplexing and is not able to fallback to usage of separate ports
for RTP and RTCP.
This document defines a new SDP media-level attribute, 'rtcp-mux-
exclusive', that can be used to indicate exclusive support of RTP/
RTCP multiplexing.
The document also describes the Interactive Connectivity
Establishment (ICE) [I-D.ietf-ice-rfc5245bis] considerations when
indicating exclusive support of RTP/RTCP multiplexing.
Holmberg Expires August 18, 2016 [Page 2]
Internet-Draft Exclusive RTP/RTCP Mux February 2016
2. Conventions
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 [RFC2119].
3. SDP rtcp-mux-exclusive Attribute
This section defines a new SDP media-level attribute, 'rtcp-mux-
exclusive'.
Name: rtcp-mux-exclusive
Value: N/A
Usage Level: media
Charset Dependent: no
Syntax:
rtcp-mux-exclusive
Example:
a=rtcp-mux-exclusive
In an SDP offer, the offerer uses the SDP 'rtcp-mux-exclusive'
attribute to indicate exclusive support of RTP/RTCP multiplexing for
the RTP-based media associated with the SDP media description ("m="
line).
In an SDP answer, the 'rtcp-mux-exclusive' attribute indicates that
the answerer supports, and accepts usage of, RTP/RTCP multiplexing
for the RTP-based media associated with the SDP media description
("m=" line).
The usage of the SDP 'rtcp-mux-exclusive' attribute is only defined
for RTP-based media.
The mux category [I-D.ietf-mmusic-sdp-mux-attributes] for the 'rtcp-
mux-exclusive' attribute is 'NORMAL', which means that the attribute
can be associated with an individual media description, even if the
media description is multiplexed with other media descriptions
[I-D.ietf-mmusic-sdp-bundle-negotiation] with which the attribute is
not associated.
Holmberg Expires August 18, 2016 [Page 3]
Internet-Draft Exclusive RTP/RTCP Mux February 2016
The 'rtcp-mux-exclusive' attribute applies to the whole associated
media description. The attribute MUST NOT be defined per source
(using the SDP 'ssrc' attribute [RFC5576]).
The SDP offer/answer [RFC3264] procedures associated with the
attribute are defined in Section 4
4. SDP Offer/Answer Procedures
4.1. General
This section defines the SDP offer/answer [RFC3264] procedures for
indicating exclusive support of, and negotiating usage of, RTP/RTCP
multiplexing.
The procedures in this section apply to individual RTP-based SDP
media descriptions ("m=" lines).
4.2. Generating the Initial SDP Offer
When an offerer sends the initial offer, if the offerer wants to
indicate exclusive RTP/RTCP multiplexing for RTP-based media, the
offerer MUST associate an SDP 'rtcp-mux-exclusive' attribute with the
associated SDP media description ("m=" line).
In addition, if the offerer associates an SDP 'rtcp-mux-exclusive'
attribute with an SDP media description ("m=" line), the offerer MUST
also associate an SDP 'rtcp-mux' attribute with the same SDP media
description ("m=" line), following the procedures in [RFC5761].
If the offerer associates an SDP 'rtcp' attribute [RFC3605] with an
SDP media description ("m=" line), and if the offerer also associates
an SDP 'rtcp-mux-exclusive' attribute with the same SDP media
description ("m=" line), the address and port values of the SDP
'rtcp' attribute MUST match the corresponding values for RTP.
NOTE: This specification does not mandate the usage of the SDP 'rtcp'
attribute for RTP/RTCP multiplexing.
4.3. Generating the Answer
When an answerer receives an offer that contains an SDP 'rtcp-mux-
exclusive' attribute, associated with an RTP-based SDP media
description ("m=" line), if the answerer accepts the usage of RTP/
RTCP multiplexing, the answerer MUST associate an SDP 'rtcp-mux-
exclusive' attribute with the corresponding SDP media description
("m=") in the associated answer. If the answerer does not accept the
usage of RTP/RTCP multiplexing, the answerer MUST either reject the
Holmberg Expires August 18, 2016 [Page 4]
Internet-Draft Exclusive RTP/RTCP Mux February 2016
SDP media description ("m=") by setting the port value to zero in the
associated answer, or reject the whole offer, following the
procedures in [RFC3264].
In addition, if the answerer associates an SDP 'rtcp-mux-exclusive'
attribute with an SDP media description ("m=" line) in the answer,
the answerer MUST also associate an SDP 'rtcp-mux' attribute with the
same SDP media description ("m=" line), following the procedures in
[RFC5761].
4.4. Offerer Processing of the SDP Answer
If an offerer associated an SDP 'rtcp-mux-exclusive' attribute with
an RTP-based SDP media description ("m=" line) in an offer, and if
the corresponding SDP media description ("m=" line) in the associated
answer contains an SDP 'rtcp-mux-exclusive' attribute, and/or an SDP
'rtcp-mux' attribute, the offerer MUST apply the RTP/RTCP
multiplexing procedures [RFC5761] to the associated RTP-based media.
If the corresponding SDP media description ("m=" line) in the
associated answer does not contain an SDP 'rtcp-mux-exclusive'
attribute, nor an SDP 'rtcp-mux' attribute, the offerer MUST either
take appropriate actions in order to disable the associated RTP-based
media, or send a new offer without associating an SDP 'rtcp-mux-
exclusive' attribute with the SDP media description ("m=" line).
NOTE: This document does not mandate specific actions on how to
terminate the RTP media. The offerer might e.g. send a new offer,
where the port value of the SDP media description is set to zero, in
order to terminate the RTP media.
4.5. Modifying the Session
When an offerer sends a subsequent offer, if the offerer and answerer
have previously negotiated usage of RTP/RTCP multiplexing for the
media associated with an RTP-based SDP media description ("m=" line),
the offerer SHOULD associate an SDP 'rtcp-mux-exclusive' attribute
and an SDP 'rtcp-mux' attribute with the corresponding SDP media
description ("m=" line). If the offerer does not associate the
attributes with the corresponding SDP media description ("m=" line)
it is an indication that the offerer no longer wants to use RTP/RTCP
multiplexing, and instead MUST fallback to usage of separate ports
for RTP and RTCP once the offer has been accepted by the answerer.
When an offerer sends a subsequent offer, if the offerer and answerer
have not previously negotiated usage of RTP/RTCP multiplexing for the
media associated with an RTP-based SDP media description ("m=" line),
the offerer MAY indicate exclusive support of RTP/RTCP multiplexing,
Holmberg Expires August 18, 2016 [Page 5]
Internet-Draft Exclusive RTP/RTCP Mux February 2016
following the procedures in Section 4.2. The offerer MUST process
the associated answer following the procedures in Section 4.4.
NOTE: It is RECOMMENDED to not switch between usage of RTP/RTCP
multiplexing and usage of separate ports for RTP and RTCP in a
subsequent offer, unless there is a use-case that mandates it.
5. ICE Considerations
As defined in [I-D.ietf-ice-rfc5245bis], if an entity is aware that
the remote peer supports, and is willing to use, RTP/RTCP
multiplexing, the entity will only provide RTP candidates (component
ID 1). However, only providing RTP candidates does not as such imply
exclusive support of RTP/RTCP multiplexing. RTCP candidates would
not be provided also in cases where RTCP is not supported at all.
Therefore, additional information is needed in order to indicate
support of exclusive RTP/RTCP multiplexing. This document defines
such mechanism using the SDP 'rtcp-mux-exclusive' attributes.
6. Security Considerations
This document does not introduce new security considerations in
additions to those specified in [RFC3605] and [RFC5761].
7. IANA Considerations
This document updates the "Session Description Protocol Parameters"
registry as specified in Section 8.2.2 of [RFC4566]. Specifically,
it adds the SDP 'rtcp-mux-exclusive' attribute to the table for SDP
media level attributes.
Attribute name: rtcp-mux-exclusive
Type of attribute: media-level
Subject to charset: no
Purpose: Indicate exclusive support of RTP/RTCP multiplexing
Appropriate Values:
Contact name: Christer Holmberg
Category: NORMAL
8. Acknowledgments
Thanks to Roman Shpount, Paul Kyzivat, Ari Keranen, Bo Burman and
Tomas Frankkila for their comments and input on the draft.
Holmberg Expires August 18, 2016 [Page 6]
Internet-Draft Exclusive RTP/RTCP Mux February 2016
9. Change Log
[RFC EDITOR NOTE: Please remove this section when publishing]
Changes from draft-ietf-mmusic-rtcp-mux-exclusive-02
o Minor editorial fix.
Changes from draft-ietf-mmusic-rtcp-mux-exclusive-01
o Mux category and source-specific applicability added.
Changes from draft-ietf-mmusic-rtcp-mux-exclusive-00
o Defined new SDP attribute for indicating rtcp-mux-exclusive.
o Updates to RFC 5761 removed.
o IANA considerations added.
Changes from draft-holmberg-mmusic-rtcp-mux-exclusive-03
o Submitted as draft-ietf-mmusic-rtcp-mux-exclusive-00.
Changes from draft-holmberg-mmusic-rtcp-mux-exclusive-02
o Intended status changed to "Standards track".
Changes from draft-holmberg-mmusic-rtcp-mux-exclusive-01
o Clarified that the SDP rtcp attribute may contain the optional IP
address part.
Changes from draft-holmberg-mmusic-rtcp-mux-exclusive-00
o Additional updates to Section 5.1.1 of RFC 5761.
o ICE considerations added.
10. References
10.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997,
<http://www.rfc-editor.org/info/rfc2119>.
Holmberg Expires August 18, 2016 [Page 7]
Internet-Draft Exclusive RTP/RTCP Mux February 2016
[RFC3264] Rosenberg, J. and H. Schulzrinne, "An Offer/Answer Model
with Session Description Protocol (SDP)", RFC 3264,
DOI 10.17487/RFC3264, June 2002,
<http://www.rfc-editor.org/info/rfc3264>.
[RFC4566] Handley, M., Jacobson, V., and C. Perkins, "SDP: Session
Description Protocol", RFC 4566, DOI 10.17487/RFC4566,
July 2006, <http://www.rfc-editor.org/info/rfc4566>.
[RFC5761] Perkins, C. and M. Westerlund, "Multiplexing RTP Data and
Control Packets on a Single Port", RFC 5761,
DOI 10.17487/RFC5761, April 2010,
<http://www.rfc-editor.org/info/rfc5761>.
[I-D.ietf-ice-rfc5245bis]
Keranen, A. and J. Rosenberg, "Interactive Connectivity
Establishment (ICE): A Protocol for Network Address
Translator (NAT) Traversal", draft-ietf-ice-rfc5245bis-00
(work in progress), October 2015.
10.2. Informative References
[RFC3605] Huitema, C., "Real Time Control Protocol (RTCP) attribute
in Session Description Protocol (SDP)", RFC 3605,
DOI 10.17487/RFC3605, October 2003,
<http://www.rfc-editor.org/info/rfc3605>.
[RFC5576] Lennox, J., Ott, J., and T. Schierl, "Source-Specific
Media Attributes in the Session Description Protocol
(SDP)", RFC 5576, DOI 10.17487/RFC5576, June 2009,
<http://www.rfc-editor.org/info/rfc5576>.
[I-D.ietf-mmusic-sdp-mux-attributes]
Nandakumar, S., "A Framework for SDP Attributes when
Multiplexing", draft-ietf-mmusic-sdp-mux-attributes-12
(work in progress), January 2016.
[I-D.ietf-mmusic-sdp-bundle-negotiation]
Holmberg, C., Alvestrand, H., and C. Jennings,
"Negotiating Media Multiplexing Using the Session
Description Protocol (SDP)", draft-ietf-mmusic-sdp-bundle-
negotiation-25 (work in progress), January 2016.
Author's Address
Holmberg Expires August 18, 2016 [Page 8]
Internet-Draft Exclusive RTP/RTCP Mux February 2016
Christer Holmberg
Ericsson
Hirsalantie 11
Jorvas 02420
Finland
Email: christer.holmberg@ericsson.com
Holmberg Expires August 18, 2016 [Page 9]