draft-ietf-mmusic-rfc2326bis-26.txt   draft-ietf-mmusic-rfc2326bis-27.txt 
MMUSIC Working Group H. Schulzrinne MMUSIC Working Group H. Schulzrinne
Internet-Draft Columbia University Internet-Draft Columbia University
Obsoletes: 2326 (if approved) A. Rao Obsoletes: 2326 (if approved) A. Rao
Intended status: Standards Track Cisco Intended status: Standards Track Cisco
Expires: May 21, 2011 R. Lanphier Expires: September 10, 2011 R. Lanphier
M. Westerlund M. Westerlund
Ericsson AB Ericsson AB
M. Stiemerling (Ed.) M. Stiemerling (Ed.)
NEC NEC
November 17, 2010 March 9, 2011
Real Time Streaming Protocol 2.0 (RTSP) Real Time Streaming Protocol 2.0 (RTSP)
draft-ietf-mmusic-rfc2326bis-26 draft-ietf-mmusic-rfc2326bis-27
Abstract Abstract
This memorandum defines RTSP version 2.0 which obsoletes RTSP version This memorandum defines RTSP version 2.0 which obsoletes RTSP version
1.0 which is defined in RFC 2326. 1.0 which is defined in RFC 2326.
The Real Time Streaming Protocol, or RTSP, is an application-level The Real Time Streaming Protocol, or RTSP, is an application-level
protocol for setup and control of the delivery of data with real-time protocol for setup and control of the delivery of data with real-time
properties. RTSP provides an extensible framework to enable properties. RTSP provides an extensible framework to enable
controlled, on-demand delivery of real-time data, such as audio and controlled, on-demand delivery of real-time data, such as audio and
skipping to change at page 1, line 47 skipping to change at page 1, line 48
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 May 21, 2011. This Internet-Draft will expire on September 10, 2011.
Copyright Notice Copyright Notice
Copyright (c) 2010 IETF Trust and the persons identified as the Copyright (c) 2011 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
carefully, as they describe your rights and restrictions with respect carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
skipping to change at page 8, line 31 skipping to change at page 8, line 31
22.11. RTP-Info header parameters . . . . . . . . . . . . . . . 212 22.11. RTP-Info header parameters . . . . . . . . . . . . . . . 212
22.11.1. Description . . . . . . . . . . . . . . . . . . . . 212 22.11.1. Description . . . . . . . . . . . . . . . . . . . . 212
22.11.2. Registration Rules . . . . . . . . . . . . . . . . . 213 22.11.2. Registration Rules . . . . . . . . . . . . . . . . . 213
22.11.3. Registered Values . . . . . . . . . . . . . . . . . 213 22.11.3. Registered Values . . . . . . . . . . . . . . . . . 213
22.12. Seek-Style Policies . . . . . . . . . . . . . . . . . . 213 22.12. Seek-Style Policies . . . . . . . . . . . . . . . . . . 213
22.12.1. Description . . . . . . . . . . . . . . . . . . . . 213 22.12.1. Description . . . . . . . . . . . . . . . . . . . . 213
22.12.2. Registration Rules . . . . . . . . . . . . . . . . . 213 22.12.2. Registration Rules . . . . . . . . . . . . . . . . . 213
22.12.3. Registered Values . . . . . . . . . . . . . . . . . 214 22.12.3. Registered Values . . . . . . . . . . . . . . . . . 214
22.13. Transport Header Registries . . . . . . . . . . . . . . 214 22.13. Transport Header Registries . . . . . . . . . . . . . . 214
22.13.1. Transport Protocol Specification . . . . . . . . . . 214 22.13.1. Transport Protocol Specification . . . . . . . . . . 214
22.13.2. Transport modes . . . . . . . . . . . . . . . . . . 215 22.13.2. Transport modes . . . . . . . . . . . . . . . . . . 216
22.13.3. Transport Parameters . . . . . . . . . . . . . . . . 216 22.13.3. Transport Parameters . . . . . . . . . . . . . . . . 216
22.14. URI Schemes . . . . . . . . . . . . . . . . . . . . . . 216 22.14. URI Schemes . . . . . . . . . . . . . . . . . . . . . . 216
22.14.1. The rtsp URI Scheme . . . . . . . . . . . . . . . . 216 22.14.1. The rtsp URI Scheme . . . . . . . . . . . . . . . . 216
22.14.2. The rtsps URI Scheme . . . . . . . . . . . . . . . . 217 22.14.2. The rtsps URI Scheme . . . . . . . . . . . . . . . . 217
22.14.3. The rtspu URI Scheme . . . . . . . . . . . . . . . . 218 22.14.3. The rtspu URI Scheme . . . . . . . . . . . . . . . . 218
22.15. SDP attributes . . . . . . . . . . . . . . . . . . . . . 219 22.15. SDP attributes . . . . . . . . . . . . . . . . . . . . . 219
22.16. Media Type Registration for text/parameters . . . . . . 220 22.16. Media Type Registration for text/parameters . . . . . . 220
23. References . . . . . . . . . . . . . . . . . . . . . . . . . 222 23. References . . . . . . . . . . . . . . . . . . . . . . . . . 222
23.1. Normative References . . . . . . . . . . . . . . . . . . 222 23.1. Normative References . . . . . . . . . . . . . . . . . . 222
23.2. Informative References . . . . . . . . . . . . . . . . . 224 23.2. Informative References . . . . . . . . . . . . . . . . . 224
skipping to change at page 23, line 24 skipping to change at page 23, line 24
All the mechanisms specified in this document are described in both All the mechanisms specified in this document are described in both
prose and the Augmented Backus-Naur form (ABNF) described in detail prose and the Augmented Backus-Naur form (ABNF) described in detail
in [RFC5234]. in [RFC5234].
Indented and smaller-type paragraphs are used to provide informative Indented and smaller-type paragraphs are used to provide informative
background and motivation. This is intended to give readers who were background and motivation. This is intended to give readers who were
not involved with the formulation of the specification an not involved with the formulation of the specification an
understanding of why things are the way they are in RTSP. understanding of why things are the way they are in RTSP.
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", "NOT RECOMMENDED", "MAY", and
document are to be interpreted as described in [RFC2119]. "OPTIONAL" in this document are to be interpreted as described in
[RFC2119].
The word, "unspecified" is used to indicate functionality or features The word, "unspecified" is used to indicate functionality or features
that are not defined in this specification. Such functionality that are not defined in this specification. Such functionality
cannot be used in a standardized manner without further definition in cannot be used in a standardized manner without further definition in
an extension specification to RTSP. an extension specification to RTSP.
3.2. Terminology 3.2. Terminology
Aggregate control: The concept of controlling multiple streams using Aggregate control: The concept of controlling multiple streams using
a single timeline, generally maintained by the server. A client, a single timeline, generally maintained by the server. A client,
skipping to change at page 44, line 32 skipping to change at page 44, line 32
x00 status code of that class, with the exception that an x00 status code of that class, with the exception that an
unrecognized response MUST NOT be cached. For example, if an unrecognized response MUST NOT be cached. For example, if an
unrecognized status code of 431 is received by the client, it can unrecognized status code of 431 is received by the client, it can
safely assume that there was something wrong with its request and safely assume that there was something wrong with its request and
treat the response as if it had received a 400 status code. In such treat the response as if it had received a 400 status code. In such
cases, user agents SHOULD present to the user the message body cases, user agents SHOULD present to the user the message body
returned with the response, since that message body is likely to returned with the response, since that message body is likely to
include human-readable information which will explain the unusual include human-readable information which will explain the unusual
status. status.
+------+----------------------------------------+-----------------+ +------+---------------------------------+--------------------------+
| Code | Reason | Method | | Code | Reason | Method |
+------+----------------------------------------+-----------------+ +------+---------------------------------+--------------------------+
| 100 | Continue | all | | 100 | Continue | all |
| | | | | | | |
| | | | | | | |
| 200 | OK | all | | 200 | OK | all |
| | | | | | | |
| | | | | | | |
| 301 | Moved Permanently | all | | 301 | Moved Permanently | all |
| | | | | | | |
| 302 | Found | all | | 302 | Found | all |
| | | | | | | |
| 304 | Not Modified | all | | 304 | Not Modified | all |
| | | | | | | |
| 305 | Use Proxy | all | | 305 | Use Proxy | all |
| | | | | | | |
| | | | | | | |
| 400 | Bad Request | all | | 400 | Bad Request | all |
| | | | | | | |
| 401 | Unauthorized | all | | 401 | Unauthorized | all |
| 402 | Payment Required | all | | 402 | Payment Required | all |
| | | | | | | |
| 403 | Forbidden | all | | 403 | Forbidden | all |
| | | | | | | |
| 404 | Not Found | all | | 404 | Not Found | all |
| | | | | | | |
| 405 | Method Not Allowed | all | | 405 | Method Not Allowed | all |
| | | | | | | |
| 406 | Not Acceptable | all | | 406 | Not Acceptable | all |
| | | | | | | |
| 407 | Proxy Authentication Required | all | | 407 | Proxy Authentication Required | all |
| | | | | | | |
| 408 | Request Timeout | all | | 408 | Request Timeout | all |
| | | | | | | |
| 410 | Gone | all | | 410 | Gone | all |
| | | | | | | |
| 411 | Length Required | all | | 411 | Length Required | all |
| | | | | | | |
| 412 | Precondition Failed | DESCRIBE, SETUP | | 412 | Precondition Failed | DESCRIBE, SETUP |
| | | | | | | |
| 413 | Request Message Body Too Large | all | | 413 | Request Message Body Too Large | all |
| | | | | | | |
| 414 | Request-URI Too Long | all | | 414 | Request-URI Too Long | all |
| | | | | | | |
| 415 | Unsupported Media Type | all | | 415 | Unsupported Media Type | all |
| | | | | | | |
| 451 | Parameter Not Understood | SET_PARAMETER | | 451 | Parameter Not Understood | SET_PARAMETER, |
| | | | | | | GET_PARAMETER |
| 452 | reserved | n/a | | | | |
| | | | | 452 | reserved | n/a |
| 453 | Not Enough Bandwidth | SETUP | | | | |
| | | | | 453 | Not Enough Bandwidth | SETUP |
| 454 | Session Not Found | all | | | | |
| | | | | 454 | Session Not Found | all |
| 455 | Method Not Valid In This State | all | | | | |
| | | | | 455 | Method Not Valid In This State | all |
| 456 | Header Field Not Valid | all | | | | |
| | | | | 456 | Header Field Not Valid | all |
| 457 | Invalid Range | PLAY, PAUSE | | | | |
| | | | | 457 | Invalid Range | PLAY, PAUSE |
| 458 | Parameter Is Read-Only | SET_PARAMETER | | | | |
| | | | | 458 | Parameter Is Read-Only | SET_PARAMETER |
| 459 | Aggregate Operation Not Allowed | all | | | | |
| | | | | 459 | Aggregate Operation Not Allowed | all |
| 460 | Only Aggregate Operation Allowed | all | | | | |
| | | | | 460 | Only Aggregate Operation | all |
| 461 | Unsupported Transport | all | | | Allowed | |
| | | | | | | |
| 462 | Destination Unreachable | all | | 461 | Unsupported Transport | all |
| | | | | | | |
| 463 | Destination Prohibited | SETUP | | 462 | Destination Unreachable | all |
| | | | | | | |
| 464 | Data Transport Not Ready Yet | PLAY | | 463 | Destination Prohibited | SETUP |
| | | | | | | |
| 465 | Notification Reason Unknown | PLAY_NOTIFY | | 464 | Data Transport Not Ready Yet | PLAY |
| | | | | | | |
| 470 | Connection Authorization Required | all | | 465 | Notification Reason Unknown | PLAY_NOTIFY |
| | | | | | | |
| 471 | Connection Credentials not accepted | all | | 470 | Connection Authorization | all |
| | | | | | Required | |
| 472 | Failure to establish secure connection | all | | | | |
| | | | | 471 | Connection Credentials not | all |
| | | | | | accepted | |
| 500 | Internal Server Error | all | | | | |
| | | | | 472 | Failure to establish secure | all |
| 501 | Not Implemented | all | | | connection | |
| | | | | | | |
| 502 | Bad Gateway | all | | | | |
| | | | | 500 | Internal Server Error | all |
| 503 | Service Unavailable | all | | | | |
| | | | | 501 | Not Implemented | all |
| 504 | Gateway Timeout | all | | | | |
| | | | | 502 | Bad Gateway | all |
| 505 | RTSP Version Not Supported | all | | | | |
| | | | | 503 | Service Unavailable | all |
| 551 | Option Not Support | all | | | | |
+------+----------------------------------------+-----------------+ | 504 | Gateway Timeout | all |
| | | |
| 505 | RTSP Version Not Supported | all |
| | | |
| 551 | Option Not Support | all |
+------+---------------------------------+--------------------------+
Table 4: Status codes and their usage with RTSP methods Table 4: Status codes and their usage with RTSP methods
8.2. Response Headers 8.2. Response Headers
The response-header allows the request recipient to pass additional The response-header allows the request recipient to pass additional
information about the response which cannot be placed in the Status- information about the response which cannot be placed in the Status-
Line. This header give information about the server and about Line. This header give information about the server and about
further access to the resource identified by the Request-URI. All further access to the resource identified by the Request-URI. All
headers currently classified as response headers are listed in headers currently classified as response headers are listed in
skipping to change at page 214, line 46 skipping to change at page 214, line 46
of "transport-id" Section 20.2.3. of "transport-id" Section 20.2.3.
o A describing text that explains how the registered value are used o A describing text that explains how the registered value are used
in RTSP. in RTSP.
The registry should be represented as: The protocol ID string, The registry should be represented as: The protocol ID string,
contact person and reference. contact person and reference.
This specification registers the following values: This specification registers the following values:
RTP/AVP: Use of the RTP[RFC3550] protocol for media transport in RTP/AVP: Use of the RTP [RFC3550] protocol for media transport in
combination with the "RTP profile for audio and video combination with the "RTP profile for audio and video
conferences with minimal control"[RFC3551] over UDP. The usage conferences with minimal control" [RFC3551] over UDP. The
is explained in RFC XXXX, Appendix C.1. usage is explained in RFC XXXX, Appendix C.1.
RTP/AVP/UDP: the same as RTP/AVP. RTP/AVP/UDP: the same as RTP/AVP.
RTP/AVPF: Use of the RTP[RFC3550] protocol for media transport in RTP/AVPF: Use of the RTP [RFC3550] protocol for media transport in
combination with the "Extended RTP Profile for RTCP-based combination with the "Extended RTP Profile for RTCP-based
Feedback (RTP/AVPF)" [RFC4585] over UDP. The usage is Feedback (RTP/AVPF)" [RFC4585] over UDP. The usage is
explained in RFC XXXX, Appendix C.1. explained in RFC XXXX, Appendix C.1.
RTP/AVPF/UDP: the same as RTP/AVPF. RTP/AVPF/UDP: the same as RTP/AVPF.
RTP/SAVP: Use of the RTP[RFC3550] protocol for media transport in RTP/SAVP: Use of the RTP [RFC3550] protocol for media transport in
combination with the "The Secure Real-time Transport Protocol combination with the "The Secure Real-time Transport Protocol
(SRTP)" [RFC3711] over UDP. The usage is explained in RFC (SRTP)" [RFC3711] over UDP. The usage is explained in RFC
XXXX, Appendix C.1. XXXX, Appendix C.1.
RTP/SAVP/UDP: the same as RTP/SAVP. RTP/SAVP/UDP: the same as RTP/SAVP.
RTP/SAVPF: Use of the RTP[RFC3550] protocol for media transport in RTP/SAVPF: Use of the RTP[RFC3550] protocol for media transport in
combination with the "[RFC5124] over UDP. The usage is combination with the Extended Secure RTP Profile for Real-time
explained in RFC XXXX, Appendix C.1. Transport Control Protocol (RTCP)-Based Feedback (RTP/SAVPF)
[RFC5124] over UDP. The usage is explained in RFC XXXX,
Appendix C.1.
RTP/SAVPF/UDP: the same as RTP/SAVPF. RTP/SAVPF/UDP: the same as RTP/SAVPF.
RTP/AVP/TCP: Use of the RTP[RFC3550] protocol for media transport in RTP/AVP/TCP: Use of the RTP [RFC3550] protocol for media transport
combination with the "RTP profile for audio and video in combination with the "RTP profile for audio and video
conferences with minimal control"[RFC3551] over TCP. The usage conferences with minimal control" [RFC3551] over TCP. The
is explained in RFC XXXX, Appendix C.2.2. usage is explained in RFC XXXX, Appendix C.2.2.
RTP/AVPF/TCP: Use of the RTP[RFC3550] protocol for media transport RTP/AVPF/TCP: Use of the RTP [RFC3550] protocol for media transport
in combination with the "Extended RTP Profile for RTCP-based in combination with the "Extended RTP Profile for RTCP-based
Feedback (RTP/AVPF)"[RFC4585] over TCP. The usage is explained Feedback (RTP/AVPF)" [RFC4585] over TCP. The usage is
in RFC XXXX, Appendix C.2.2. explained in RFC XXXX, Appendix C.2.2.
RTP/SAVP/TCP: Use of the RTP[RFC3550] protocol for media transport RTP/SAVP/TCP: Use of the RTP [RFC3550] protocol for media transport
in combination with the "The Secure Real-time Transport in combination with the "The Secure Real-time Transport
Protocol (SRTP)" [RFC3711] over TCP. The usage is explained in Protocol (SRTP)" [RFC3711] over TCP. The usage is explained in
RFC XXXX, Appendix C.2.2. RFC XXXX, Appendix C.2.2.
RTP/SAVPF/TCP: Use of the RTP[RFC3550] protocol for media transport RTP/SAVPF/TCP: Use of the RTP [RFC3550] protocol for media transport
in combination with the "Extended Secure RTP Profile for Real- in combination with the "Extended Secure RTP Profile for Real-
time Transport Control Protocol (RTCP)-Based Feedback (RTP/ time Transport Control Protocol (RTCP)-Based Feedback (RTP/
SAVPF)" [RFC5124] over TCP. The usage is explained in RFC SAVPF)" [RFC5124] over TCP. The usage is explained in RFC
XXXX, Appendix C.2.2. XXXX, Appendix C.2.2.
22.13.2. Transport modes 22.13.2. Transport modes
A registry for the transport parameter mode MUST be defined with the A registry for the transport parameter mode MUST be defined with the
following rules: following rules:
skipping to change at page 250, line 48 skipping to change at page 250, line 48
the address and port given by the first address and port pair of the address and port given by the first address and port pair of
the "src_addr" parameter. the "src_addr" parameter.
o RTP and RTCP Packets SHOULD be sent from the corresponding o RTP and RTCP Packets SHOULD be sent from the corresponding
receiver port, i.e. RTCP packets from server should be sent from receiver port, i.e. RTCP packets from server should be sent from
the "src_addr" parameters second address port pair. the "src_addr" parameters second address port pair.
C.1.3. AVPF/UDP C.1.3. AVPF/UDP
The RTP profile "Extended RTP Profile for RTCP-based Feedback (RTP/ The RTP profile "Extended RTP Profile for RTCP-based Feedback (RTP/
AVPF)"[RFC4585] MAY be used as RTP profiles in session using RTP. AVPF)" [RFC4585] MAY be used as RTP profiles in session using RTP.
All that is defined for AVP MUST also apply for AVPF. All that is defined for AVP MUST also apply for AVPF.
The usage of AVPF is indicated by the media initialization protocol The usage of AVPF is indicated by the media initialization protocol
used. In the case of SDP it is indicated by media lines (m=) used. In the case of SDP it is indicated by media lines (m=)
containing the profile RTP/AVPF. That SDP MAY also contain further containing the profile RTP/AVPF. That SDP MAY also contain further
AVPF related SDP attributes configuring the AVPF session regarding AVPF related SDP attributes configuring the AVPF session regarding
reporting interval and feedback messages to be used. This reporting interval and feedback messages to be used. This
configuration MUST be followed. configuration MUST be followed.
C.1.4. SAVP/UDP C.1.4. SAVP/UDP
 End of changes. 19 change blocks. 
123 lines changed or deleted 132 lines changed or added

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