draft-ietf-mmusic-rid-10.txt   draft-ietf-mmusic-rid-11.txt 
Network Working Group P. Thatcher Network Working Group P. Thatcher
Internet-Draft Google Internet-Draft Google
Updates: 4855 (if approved) M. Zanaty Updates: 4855 (if approved) M. Zanaty
Intended status: Standards Track S. Nandakumar Intended status: Standards Track S. Nandakumar
Expires: September 14, 2017 Cisco Systems Expires: January 20, 2018 Cisco Systems
B. Burman B. Burman
Ericsson Ericsson
A. Roach A. Roach
B. Campen B. Campen
Mozilla Mozilla
March 13, 2017 July 19, 2017
RTP Payload Format Restrictions RTP Payload Format Restrictions
draft-ietf-mmusic-rid-10 draft-ietf-mmusic-rid-11
Abstract Abstract
In this specification, we define a framework for specifying In this specification, we define a framework for specifying
restrictions on RTP streams in the Session Description Protocol. restrictions on RTP streams in the Session Description Protocol.
This framework defines a new "rid" SDP attribute to unambiguously This framework defines a new "rid" SDP attribute to unambiguously
identify the RTP Streams within a RTP Session and restrict the identify the RTP Streams within a RTP Session and restrict the
streams' payload format parameters in a codec-agnostic way beyond streams' payload format parameters in a codec-agnostic way beyond
what is provided with the regular Payload Types. what is provided with the regular Payload Types.
skipping to change at page 1, line 46 skipping to change at page 1, line 46
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on September 14, 2017. This Internet-Draft will expire on January 20, 2018.
Copyright Notice Copyright Notice
Copyright (c) 2017 IETF Trust and the persons identified as the Copyright (c) 2017 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 28 skipping to change at page 2, line 28
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 1. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3
3. Key Words for Requirements . . . . . . . . . . . . . . . . . 4 3. Key Words for Requirements . . . . . . . . . . . . . . . . . 4
4. SDP "a=rid" Media Level Attribute . . . . . . . . . . . . . . 4 4. SDP "a=rid" Media Level Attribute . . . . . . . . . . . . . . 4
5. "a=rid" restrictions . . . . . . . . . . . . . . . . . . . . 6 5. "a=rid" restrictions . . . . . . . . . . . . . . . . . . . . 6
6. SDP Offer/Answer Procedures . . . . . . . . . . . . . . . . . 7 6. SDP Offer/Answer Procedures . . . . . . . . . . . . . . . . . 7
6.1. Generating the Initial SDP Offer . . . . . . . . . . . . 7 6.1. Generating the Initial SDP Offer . . . . . . . . . . . . 8
6.2. Answerer processing the SDP Offer . . . . . . . . . . . . 8 6.2. Answerer processing the SDP Offer . . . . . . . . . . . . 9
6.2.1. "a=rid"-unaware Answerer . . . . . . . . . . . . . . 8 6.2.1. "a=rid"-unaware Answerer . . . . . . . . . . . . . . 9
6.2.2. "a=rid"-aware Answerer . . . . . . . . . . . . . . . 9 6.2.2. "a=rid"-aware Answerer . . . . . . . . . . . . . . . 9
6.3. Generating the SDP Answer . . . . . . . . . . . . . . . . 10 6.3. Generating the SDP Answer . . . . . . . . . . . . . . . . 10
6.4. Offerer Processing of the SDP Answer . . . . . . . . . . 10 6.4. Offerer Processing of the SDP Answer . . . . . . . . . . 11
6.5. Modifying the Session . . . . . . . . . . . . . . . . . . 12 6.5. Modifying the Session . . . . . . . . . . . . . . . . . . 12
7. Use with Declarative SDP . . . . . . . . . . . . . . . . . . 12 7. Use with Declarative SDP . . . . . . . . . . . . . . . . . . 12
8. Interaction with Other Techniques . . . . . . . . . . . . . . 12 8. Interaction with Other Techniques . . . . . . . . . . . . . . 12
8.1. Interaction with VP8 Format Parameters . . . . . . . . . 13 8.1. Interaction with VP8 Format Parameters . . . . . . . . . 13
8.1.1. max-fr - Maximum Framerate . . . . . . . . . . . . . 13 8.1.1. max-fr - Maximum Framerate . . . . . . . . . . . . . 13
8.1.2. max-fs - Maximum Framesize, in VP8 Macroblocks . . . 13 8.1.2. max-fs - Maximum Framesize, in VP8 Macroblocks . . . 14
8.2. Interaction with H.264 Format Parameters . . . . . . . . 14 8.2. Interaction with H.264 Format Parameters . . . . . . . . 14
8.2.1. profile-level-id and max-recv-level - Negotiated Sub- 8.2.1. profile-level-id and max-recv-level - Negotiated Sub-
Profile . . . . . . . . . . . . . . . . . . . . . . . 15 Profile . . . . . . . . . . . . . . . . . . . . . . . 15
8.2.2. max-br / MaxBR - Maximum Video Bitrate . . . . . . . 15 8.2.2. max-br / MaxBR - Maximum Video Bitrate . . . . . . . 15
8.2.3. max-fs / MaxFS - Maximum Framesize, in H.264 8.2.3. max-fs / MaxFS - Maximum Framesize, in H.264
Macroblocks . . . . . . . . . . . . . . . . . . . . . 15 Macroblocks . . . . . . . . . . . . . . . . . . . . . 16
8.2.4. max-mbps / MaxMBPS - Maximum Macroblock Processing 8.2.4. max-mbps / MaxMBPS - Maximum Macroblock Processing
Rate . . . . . . . . . . . . . . . . . . . . . . . . 16 Rate . . . . . . . . . . . . . . . . . . . . . . . . 16
8.2.5. max-smbps - Maximum Decoded Picture Buffer . . . . . 16 8.2.5. max-smbps - Maximum Decoded Picture Buffer . . . . . 16
9. Format Parameters for Future Payloads . . . . . . . . . . . . 16 9. Format Parameters for Future Payloads . . . . . . . . . . . . 16
10. Formal Grammar . . . . . . . . . . . . . . . . . . . . . . . 16 10. Formal Grammar . . . . . . . . . . . . . . . . . . . . . . . 17
11. SDP Examples . . . . . . . . . . . . . . . . . . . . . . . . 18 11. SDP Examples . . . . . . . . . . . . . . . . . . . . . . . . 18
11.1. Many Bundled Streams using Many Codecs . . . . . . . . . 18 11.1. Many Bundled Streams using Many Codecs . . . . . . . . . 18
11.2. Scalable Layers . . . . . . . . . . . . . . . . . . . . 20 11.2. Scalable Layers . . . . . . . . . . . . . . . . . . . . 20
12. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 20 12. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 21
12.1. New SDP Media-Level attribute . . . . . . . . . . . . . 20 12.1. New SDP Media-Level attribute . . . . . . . . . . . . . 21
12.2. Registry for RID-Level Parameters . . . . . . . . . . . 21 12.2. Registry for RID-Level Parameters . . . . . . . . . . . 22
13. Security Considerations . . . . . . . . . . . . . . . . . . . 23 13. Security Considerations . . . . . . . . . . . . . . . . . . . 24
14. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 23 14. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 24
15. References . . . . . . . . . . . . . . . . . . . . . . . . . 23 15. References . . . . . . . . . . . . . . . . . . . . . . . . . 24
15.1. Normative References . . . . . . . . . . . . . . . . . . 23 15.1. Normative References . . . . . . . . . . . . . . . . . . 24
15.2. Informative References . . . . . . . . . . . . . . . . . 24 15.2. Informative References . . . . . . . . . . . . . . . . . 25
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 25 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 26
1. Terminology 1. Terminology
The terms "Source RTP Stream", "Endpoint", "RTP Session", and "RTP The terms "Source RTP Stream", "Endpoint", "RTP Session", and "RTP
Stream" are used as defined in [RFC7656]. Stream" are used as defined in [RFC7656].
[RFC4566] and [RFC3264] terminology is also used where appropriate. [RFC4566] and [RFC3264] terminology is also used where appropriate.
2. Introduction 2. Introduction
skipping to change at page 5, line 17 skipping to change at page 5, line 17
An "a=rid" SDP media attribute specifies restrictions defining a An "a=rid" SDP media attribute specifies restrictions defining a
unique RTP payload configuration identified via the "rid-id" field. unique RTP payload configuration identified via the "rid-id" field.
This value binds the restriction to the RTP Stream identified by its This value binds the restriction to the RTP Stream identified by its
RTP Stream Identifier SDES item [I-D.ietf-avtext-rid]. To be clear, RTP Stream Identifier SDES item [I-D.ietf-avtext-rid]. To be clear,
implementations that use the "a=rid" parameter in SDP MUST support implementations that use the "a=rid" parameter in SDP MUST support
the RtpStreamId SDES item described in [I-D.ietf-avtext-rid]. Such the RtpStreamId SDES item described in [I-D.ietf-avtext-rid]. Such
implementations MUST send it for all streams in an SDP media implementations MUST send it for all streams in an SDP media
description ("m=") that have "a=rid" lines remaining after applying description ("m=") that have "a=rid" lines remaining after applying
the rules in Section 6 and its subsections. the rules in Section 6 and its subsections.
Implementations that use the "a=rid" parameter in SDP and that make
use of redundancy RTP streams [RFC7656], e.g. RTP RTX [RFC4588] or
FEC [RFC5109] [I-D.ietf-payload-flexible-fec-scheme], for any of the
source RTP streams that have "a=rid" lines remaining after applying
the rules in Section 6 and its subsections, MUST support and use
RepairedRtpStreamId SDES item described in [I-D.ietf-avtext-rid] for
those redundancy RTP streams. This provides the binding between the
source RTP stream and the corresponding redundancy RTP stream, by
setting RepairedRtpStreamId value for the redundancy RTP stream to
the RtpStreamId value of the source RTP stream. The redundancy RTP
stream MAY (but need not) have an "a=rid" line of its own, in which
case the RtpStreamId SDES item value will be different from the
corresponding source RTP stream.
The "direction" field identifies the direction of the RTP Stream The "direction" field identifies the direction of the RTP Stream
packets to which the indicated restrictions are applied. It may be packets to which the indicated restrictions are applied. It may be
either "send" or "recv". Note that these restriction directions are either "send" or "recv". Note that these restriction directions are
expressed independently of any "inactive", "sendonly", "recvonly", or expressed independently of any "inactive", "sendonly", "recvonly", or
"sendrecv" attributes associated with the media section. It is, for "sendrecv" attributes associated with the media section. It is, for
example, valid to indicate "recv" restrictions on a "sendonly" example, valid to indicate "recv" restrictions on a "sendonly"
stream; those restrictions would apply if, at a future point in time, stream; those restrictions would apply if, at a future point in time,
the stream were changed to "sendrecv" or "recvonly". the stream were changed to "sendrecv" or "recvonly".
The optional "pt=<fmt-list>" lists one or more PT values that can be The optional "pt=<fmt-list>" lists one or more PT values that can be
skipping to change at page 24, line 28 skipping to change at page 25, line 28
15.2. Informative References 15.2. Informative References
[H264] ITU-T Recommendation H.264, "Advanced video coding for [H264] ITU-T Recommendation H.264, "Advanced video coding for
generic audiovisual services (V9)", February 2014, generic audiovisual services (V9)", February 2014,
<http://www.itu.int/rec/T-REC-H.264-201304-I>. <http://www.itu.int/rec/T-REC-H.264-201304-I>.
[I-D.ietf-mmusic-sdp-bundle-negotiation] [I-D.ietf-mmusic-sdp-bundle-negotiation]
Holmberg, C., Alvestrand, H., and C. Jennings, Holmberg, C., Alvestrand, H., and C. Jennings,
"Negotiating Media Multiplexing Using the Session "Negotiating Media Multiplexing Using the Session
Description Protocol (SDP)", draft-ietf-mmusic-sdp-bundle- Description Protocol (SDP)", draft-ietf-mmusic-sdp-bundle-
negotiation-36 (work in progress), October 2016. negotiation-38 (work in progress), April 2017.
[I-D.ietf-mmusic-sdp-simulcast] [I-D.ietf-mmusic-sdp-simulcast]
Burman, B., Westerlund, M., Nandakumar, S., and M. Zanaty, Burman, B., Westerlund, M., Nandakumar, S., and M. Zanaty,
"Using Simulcast in SDP and RTP Sessions", draft-ietf- "Using Simulcast in SDP and RTP Sessions", draft-ietf-
mmusic-sdp-simulcast-07 (work in progress), January 2017. mmusic-sdp-simulcast-09 (work in progress), July 2017.
[I-D.ietf-payload-flexible-fec-scheme]
Singh, V., Begen, A., Zanaty, M., and G. Mandyam, "RTP
Payload Format for Flexible Forward Error Correction
(FEC)", draft-ietf-payload-flexible-fec-scheme-05 (work in
progress), July 2017.
[RFC4588] Rey, J., Leon, D., Miyazaki, A., Varsa, V., and R.
Hakenberg, "RTP Retransmission Payload Format", RFC 4588,
DOI 10.17487/RFC4588, July 2006,
<http://www.rfc-editor.org/info/rfc4588>.
[RFC5109] Li, A., Ed., "RTP Payload Format for Generic Forward Error
Correction", RFC 5109, DOI 10.17487/RFC5109, December
2007, <http://www.rfc-editor.org/info/rfc5109>.
[RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an [RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an
IANA Considerations Section in RFCs", BCP 26, RFC 5226, IANA Considerations Section in RFCs", RFC 5226, DOI
DOI 10.17487/RFC5226, May 2008, 10.17487/RFC5226, May 2008,
<http://www.rfc-editor.org/info/rfc5226>. <http://www.rfc-editor.org/info/rfc5226>.
[RFC6184] Wang, Y., Even, R., Kristensen, T., and R. Jesup, "RTP [RFC6184] Wang, Y., Even, R., Kristensen, T., and R. Jesup, "RTP
Payload Format for H.264 Video", RFC 6184, DOI 10.17487/ Payload Format for H.264 Video", RFC 6184, DOI 10.17487/
RFC6184, May 2011, RFC6184, May 2011,
<http://www.rfc-editor.org/info/rfc6184>. <http://www.rfc-editor.org/info/rfc6184>.
[RFC6236] Johansson, I. and K. Jung, "Negotiation of Generic Image [RFC6236] Johansson, I. and K. Jung, "Negotiation of Generic Image
Attributes in the Session Description Protocol (SDP)", RFC Attributes in the Session Description Protocol (SDP)", RFC
6236, DOI 10.17487/RFC6236, May 2011, 6236, DOI 10.17487/RFC6236, May 2011,
 End of changes. 14 change blocks. 
24 lines changed or deleted 53 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/