draft-ietf-avtcore-5761-update-06.txt   rfc8035.txt 
Network Working Group C. Holmberg Internet Engineering Task Force (IETF) C. Holmberg
Internet-Draft Ericsson Request for Comments: 8035 Ericsson
Updates: 5761 (if approved) October 13, 2016 Updates: 5761 November 2016
Intended status: Standards Track Category: Standards Track
Expires: April 16, 2017 ISSN: 2070-1721
RTP/RTCP Multiplexing SDP Offer/Answer Clarifications Session Description Protocol (SDP) Offer/Answer Clarifications
draft-ietf-avtcore-5761-update-06.txt for RTP/RTCP Multiplexing
Abstract Abstract
This document updates RFC 5761 by clarifying the SDP offer/answer This document updates RFC 5761 by clarifying the SDP offer/answer
negotiation of RTP and RTCP multiplexing. It makes it clear that an negotiation of RTP and RTP Control Protocol (RTCP) multiplexing. It
answerer can only include an "a=rtcp-mux" attribute in an SDP answer makes it clear that an answerer can only include an "a=rtcp-mux"
if the associated SDP offer contained the attribute. attribute in a Session Description Protocol (SDP) answer if the
associated SDP offer contained the attribute.
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This is an Internet Standards Track document.
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 This document is a product of the Internet Engineering Task Force
and may be updated, replaced, or obsoleted by other documents at any (IETF). It represents the consensus of the IETF community. It has
time. It is inappropriate to use Internet-Drafts as reference received public review and has been approved for publication by the
material or to cite them other than as "work in progress." Internet Engineering Steering Group (IESG). Further information on
Internet Standards is available in Section 2 of RFC 7841.
This Internet-Draft will expire on April 16, 2017. Information about the current status of this document, any errata,
and how to provide feedback on it may be obtained at
http://www.rfc-editor.org/info/rfc8035.
Copyright Notice Copyright Notice
Copyright (c) 2016 IETF Trust and the persons identified as the Copyright (c) 2016 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
skipping to change at page 2, line 19 skipping to change at page 3, line 7
modifications of such material outside the IETF Standards Process. modifications of such material outside the IETF Standards Process.
Without obtaining an adequate license from the person(s) controlling Without obtaining an adequate license from the person(s) controlling
the copyright in such materials, this document may not be modified the copyright in such materials, this document may not be modified
outside the IETF Standards Process, and derivative works of it may outside the IETF Standards Process, and derivative works of it may
not be created outside the IETF Standards Process, except to format not be created outside the IETF Standards Process, except to format
it for publication as an RFC or to translate it into languages other it for publication as an RFC or to translate it into languages other
than English. than English.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Conventions . . . . . . . . . . . . . . . . . . . . . . . . . 2 2. Conventions . . . . . . . . . . . . . . . . . . . . . . . . . 3
3. Update to RFC 5761 . . . . . . . . . . . . . . . . . . . . . 3 3. Update to RFC 5761 . . . . . . . . . . . . . . . . . . . . . 3
3.1. Update to section 5.1.1 . . . . . . . . . . . . . . . . . 3 3.1. Update to Section 5.1.1 . . . . . . . . . . . . . . . . . 4
4. Security Considerations . . . . . . . . . . . . . . . . . . . 5 4. Security Considerations . . . . . . . . . . . . . . . . . . . 6
5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6
6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 5 6. Normative References . . . . . . . . . . . . . . . . . . . . 6
7. Change Log . . . . . . . . . . . . . . . . . . . . . . . . . 5 Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 6
8. Normative References . . . . . . . . . . . . . . . . . . . . 6 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 7
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 6
1. Introduction 1. Introduction
RFC 5761 [RFC5761] specifies how to multiplex RTP data packets and RFC 5761 [RFC5761] specifies how to multiplex RTP data packets and
RTP Control Protocol (RTCP) packets on a single UDP port, and how to RTP Control Protocol (RTCP) packets on a single UDP port, and how to
negotiate usage of such multiplexing using the SDP offer/answer negotiate usage of such multiplexing using the SDP offer/answer
mechanism [RFC3264], using an "a=rtcp-mux" attribute. However, the mechanism [RFC3264] with an "a=rtcp-mux" attribute. However, the
text is unclear on whether an answerer is allowed to include the text is unclear on whether an answerer is allowed to include the
attribute in an answer even if the associated offer did not contain attribute in an answer even if the associated offer did not contain
an attribute. an attribute.
This document updates RFC 5761 [RFC5761] by clarifying that an This document updates RFC 5761 [RFC5761] by clarifying that an
answerer can only include an "a=rtcp-mux" attribute in an answer if answerer can only include an "a=rtcp-mux" attribute in an answer if
the associated offer contained the attribute. It also clarifies that the associated offer contained the attribute. It also clarifies that
the negotiation of RTP and RTCP multiplexing is for usage in both the negotiation of RTP and RTCP multiplexing is for usage in both
directions. directions.
2. Conventions 2. Conventions
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in [RFC2119]. document are to be interpreted as described in [RFC2119].
3. Update to RFC 5761 3. Update to RFC 5761
This section updates section 5.1.1 of RFC 5761 by clarifying that an This section updates Section 5.1.1 of RFC 5761 by clarifying that an
answerer can only include an "a=rtcp-mux" attribute in an answer if answerer can only include an "a=rtcp-mux" attribute in an answer if
the associated offer contained the attribute, and by clarifying that the associated offer contained the attribute, and by clarifying that
the negotiation of RTP and RTCP multiplexing is for usage in both the negotiation of RTP and RTCP multiplexing is for usage in both
directions. directions.
3.1. Update to section 5.1.1 3.1. Update to Section 5.1.1
In this section references to Sections 4 and 8 are to sections in
[RFC5761].
OLD TEXT: In this section, any references to Sections 4 and 8 are to those
sections in [RFC5761].
When the Session Description Protocol (SDP) [8] is used to negotiate OLD TEXT:
RTP sessions following the offer/answer model [9], the "a=rtcp-mux"
attribute (see Section 8) indicates the desire to multiplex RTP and
RTCP onto a single port. The initial SDP offer MUST include this
attribute at the media level to request multiplexing of RTP and RTCP
on a single port. For example:
v=0 When the Session Description Protocol (SDP) [8] is used to negotiate
o=csp 1153134164 1153134164 IN IP6 2001:DB8::211:24ff:fea3:7a2e RTP sessions following the offer/answer model [9], the "a=rtcp-mux"
s=- attribute (see Section 8) indicates the desire to multiplex RTP and
c=IN IP6 2001:DB8::211:24ff:fea3:7a2e RTCP onto a single port. The initial SDP offer MUST include this
t=1153134164 1153137764 attribute at the media level to request multiplexing of RTP and RTCP
m=audio 49170 RTP/AVP 97 on a single port. For example:
a=rtpmap:97 iLBC/8000
a=rtcp-mux
This offer denotes a unicast voice-over-IP session using the RTP/AVP v=0
profile with iLBC coding. The answerer is requested to send both RTP o=csp 1153134164 1153134164 IN IP6 2001:DB8::211:24ff:fea3:7a2e
and RTCP to port 49170 on IPv6 address 2001:DB8::211:24ff:fea3:7a2e. s=-
c=IN IP6 2001:DB8::211:24ff:fea3:7a2e
t=1153134164 1153137764
m=audio 49170 RTP/AVP 97
a=rtpmap:97 iLBC/8000
a=rtcp-mux
If the answerer wishes to multiplex RTP and RTCP onto a single port, This offer denotes a unicast voice-over-IP session using the RTP/AVP
it MUST include a media-level "a=rtcp-mux" attribute in the answer. profile with iLBC coding. The answerer is requested to send both RTP
The RTP payload types used in the answer MUST conform to the rules in and RTCP to port 49170 on IPv6 address 2001:DB8::211:24ff:fea3:7a2e.
Section 4.
If the answer does not contain an "a=rtcp-mux" attribute, the offerer If the answerer wishes to multiplex RTP and RTCP onto a single port,
MUST NOT multiplex RTP and RTCP packets on a single port. Instead, it MUST include a media-level "a=rtcp-mux" attribute in the answer.
it should send and receive RTCP on a port allocated according to the The RTP payload types used in the answer MUST conform to the rules in
usual port-selection rules (either the port pair, or a signalled port Section 4.
if the "a=rtcp:" attribute [10] is also included). This will occur
when talking to a peer that does not understand the "a=rtcp-mux"
attribute.
When SDP is used in a declarative manner, the presence of an "a=rtcp- If the answer does not contain an "a=rtcp-mux" attribute, the offerer
mux" attribute signals that the sender will multiplex RTP and RTCP on MUST NOT multiplex RTP and RTCP packets on a single port. Instead,
the same port. The receiver MUST be prepared to receive RTCP packets it should send and receive RTCP on a port allocated according to the
on the RTP port, and any resource reservation needs to be made usual port-selection rules (either the port pair, or a signalled port
including the RTCP bandwidth. if the "a=rtcp:" attribute [10] is also included). This will occur
when talking to a peer that does not understand the "a=rtcp-mux"
attribute.
NEW TEXT: When SDP is used in a declarative manner, the presence of an
"a=rtcp-mux" attribute signals that the sender will multiplex RTP and
RTCP on the same port. The receiver MUST be prepared to receive RTCP
packets on the RTP port, and any resource reservation needs to be
made including the RTCP bandwidth.
When the Session Description Protocol (SDP) [8] is used to negotiate NEW TEXT:
RTP sessions following the offer/answer model [9], the "a=rtcp-mux"
attribute (see Section 8) indicates the desire to multiplex RTP and
RTCP onto a single port, and the usage is always negotiated for both
directions.
If the offerer wishes to multiplex RTP and RTCP onto a single port, When the Session Description Protocol (SDP) [8] is used to negotiate
the initial SDP offer MUST include the attribute at the media level to RTP sessions following the offer/answer model [9], the "a=rtcp-mux"
request multiplexing of RTP and RTCP on a single port. For example: attribute (see Section 8) indicates the desire to multiplex RTP and
RTCP onto a single port, and the usage is always negotiated for both
directions.
v=0 If the offerer wishes to multiplex RTP and RTCP onto a single port,
o=csp 1153134164 1153134164 IN IP6 2001:DB8::211:24ff:fea3:7a2e the initial SDP offer MUST include the attribute at the media level
s=- to request multiplexing of RTP and RTCP on a single port. For
c=IN IP6 2001:DB8::211:24ff:fea3:7a2e example:
t=1153134164 1153137764
m=audio 49170 RTP/AVP 97
a=rtpmap:97 iLBC/8000
a=rtcp-mux
This offer denotes a unicast voice-over-IP session using the RTP/AVP v=0
profile with iLBC coding. The answerer is requested to send both RTP o=csp 1153134164 1153134164 IN IP6 2001:DB8::211:24ff:fea3:7a2e
and RTCP to port 49170 on IPv6 address 2001:DB8::211:24ff:fea3:7a2e. s=-
c=IN IP6 2001:DB8::211:24ff:fea3:7a2e
t=1153134164 1153137764
m=audio 49170 RTP/AVP 97
a=rtpmap:97 iLBC/8000
a=rtcp-mux
If the offer contains the "a=rtcp-mux" attribute, and if the answerer This offer denotes a unicast voice-over-IP session using the RTP/AVP
wishes to multiplex RTP and RTCP onto a single port, it MUST include a profile with Internet Low Bit Rate Codec (iLBC) coding. The answerer
media-level "a=rtcp-mux" attribute in the answer. The RTP payload is requested to send both RTP and RTCP to port 49170 on IPv6 address
types used in the answer MUST conform to the rules in Section 4. If 2001:DB8::211:24ff:fea3:7a2e.
the offer does not contain the "a=rtcp-mux" attribute the answerer
MUST NOT include an "a=rtcp-mux" attribute in the answer, and the
answerer MUST NOT multiplex RTP and RTCP packets on a single port.
If the answer contains an "a=rtcp-mux" attribute, the offerer and If the offer contains the "a=rtcp-mux" attribute, and if the answerer
answerer MUST multiplex RTP and RTCP packets on a single port. wishes to multiplex RTP and RTCP onto a single port, it MUST include
a media-level "a=rtcp-mux" attribute in the answer. The RTP payload
types used in the answer MUST conform to the rules in Section 4. If
the offer does not contain the "a=rtcp-mux" attribute, the answerer
MUST NOT include an "a=rtcp-mux" attribute in the answer, and the
answerer MUST NOT multiplex RTP and RTCP packets on a single port.
If the answer does not contain an "a=rtcp-mux" attribute, the offerer If the answer contains an "a=rtcp-mux" attribute, the offerer and
and answerer MUST NOT multiplex RTP and RTCP packets on a single port. answerer MUST multiplex RTP and RTCP packets on a single port.
Instead, they should send and receive RTCP on a port allocated
according to the usual port-selection rules (either the port pair, or
a signalled port if the "a=rtcp:" attribute [10] is also included).
This will occur when talking to a peer that does not understand the If the answer does not contain an "a=rtcp-mux" attribute, the offerer
"a=rtcp-mux" attribute. and answerer MUST NOT multiplex RTP and RTCP packets on a single
port. Instead, they should send and receive RTCP on a port allocated
according to the usual port-selection rules (either the port pair, or
a signalled port if the "a=rtcp:" attribute [10] is also included).
This will occur when talking to a peer that does not understand the
"a=rtcp-mux" attribute.
When SDP is used in a declarative manner, the presence of an "a=rtcp- When SDP is used in a declarative manner, the presence of an "a=rtcp-
mux" attribute signals that the sender will multiplex RTP and RTCP on mux" attribute signals that the sender will multiplex RTP and RTCP on
the same port. The receiver MUST be prepared to receive RTCP packets the same port. The receiver MUST be prepared to receive RTCP packets
on the RTP port, and any resource reservation needs to be made on the RTP port, and any resource reservation needs to be made
including the RTCP bandwidth. including the RTCP bandwidth.
4. Security Considerations 4. Security Considerations
The security considerations for RTP and RTCP multiplexing are The security considerations for RTP and RTCP multiplexing are
described in RFC 5761. This specification does not impact those described in RFC 5761. This specification does not impact those
security considerations. security considerations.
5. IANA Considerations 5. IANA Considerations
IANA is requested to add a reference to this document for the add- IANA has added a reference to this document for the att-field (media
field (media level only) registration "rtcp-mux" in Session level only) registration "rtcp-mux" in the "Session Description
Description Protocol (SDP) Parameters registry. Protocol (SDP) Parameters" registry.
6. Acknowledgements
Thanks to Colin Perkins, Magnus Westerlund, Paul Kyzivat, Roni Even
for providing comments on the document. Thomas Belling provided
useful input in the discussions that took place in 3GPP and resulted
in the submission of the document. Elwyn Davies performed the Gen-
ART review. Rick Casarez performed the Ops-Dir review. Alissa
Cooper and Spencer Dawkins provided IESG review comments.
7. Change Log
[RFC EDITOR NOTE: Please remove this section when publishing]
Change from -05
o Changes based on IESG- and Gen-Art reviews:
o - Change of document title.
o - Editorial fix.
Change from -04
o Change of document title.
Change from -03
o Addition to IANA Considerations.
Change from -02
o Editorial change based on Gen-ART review of Elwyn Davis
(https://www.ietf.org/mail-archive/web/gen-art/current/
msg13713.html).
Change from -01
o pre-RFC5378 disclaimer added.
Change from -00
o Editorial changes based on WGLC comments from Roni Even.
8. Normative References 6. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997, DOI 10.17487/RFC2119, March 1997,
<http://www.rfc-editor.org/info/rfc2119>. <http://www.rfc-editor.org/info/rfc2119>.
[RFC3264] Rosenberg, J. and H. Schulzrinne, "An Offer/Answer Model [RFC3264] Rosenberg, J. and H. Schulzrinne, "An Offer/Answer Model
with Session Description Protocol (SDP)", RFC 3264, with Session Description Protocol (SDP)", RFC 3264,
DOI 10.17487/RFC3264, June 2002, DOI 10.17487/RFC3264, June 2002,
<http://www.rfc-editor.org/info/rfc3264>. <http://www.rfc-editor.org/info/rfc3264>.
[RFC5761] Perkins, C. and M. Westerlund, "Multiplexing RTP Data and [RFC5761] Perkins, C. and M. Westerlund, "Multiplexing RTP Data and
Control Packets on a Single Port", RFC 5761, Control Packets on a Single Port", RFC 5761,
DOI 10.17487/RFC5761, April 2010, DOI 10.17487/RFC5761, April 2010,
<http://www.rfc-editor.org/info/rfc5761>. <http://www.rfc-editor.org/info/rfc5761>.
Acknowledgements
Thanks to Colin Perkins, Magnus Westerlund, Paul Kyzivat, and Roni
Even for providing comments on the document. Thomas Belling provided
useful input in the discussions that took place in 3GPP and resulted
in the submission of the document. Elwyn Davies performed the
Gen-ART review. Rick Casarez performed the Ops-Dir review. Alissa
Cooper and Spencer Dawkins provided IESG review comments.
Author's Address Author's Address
Christer Holmberg Christer Holmberg
Ericsson Ericsson
Hirsalantie 11 Hirsalantie 11
Jorvas 02420 Jorvas 02420
Finland Finland
Email: christer.holmberg@ericsson.com Email: christer.holmberg@ericsson.com
 End of changes. 31 change blocks. 
158 lines changed or deleted 123 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/