draft-ietf-rtcweb-transports-09.txt   draft-ietf-rtcweb-transports-10.txt 
Network Working Group H. Alvestrand Network Working Group H. Alvestrand
Internet-Draft Google Internet-Draft Google
Intended status: Standards Track July 6, 2015 Intended status: Standards Track October 19, 2015
Expires: January 7, 2016 Expires: April 21, 2016
Transports for WebRTC Transports for WebRTC
draft-ietf-rtcweb-transports-09 draft-ietf-rtcweb-transports-10
Abstract Abstract
This document describes the data transport protocols used by WebRTC, This document describes the data transport protocols used by WebRTC,
including the protocols used for interaction with intermediate boxes including the protocols used for interaction with intermediate boxes
such as firewalls, relays and NAT boxes. such as firewalls, relays and NAT boxes.
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This Internet-Draft is submitted in full conformance with the
skipping to change at page 1, line 32 skipping to change at page 1, line 32
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 January 7, 2016. This Internet-Draft will expire on April 21, 2016.
Copyright Notice Copyright Notice
Copyright (c) 2015 IETF Trust and the persons identified as the Copyright (c) 2015 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 14 skipping to change at page 2, line 14
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Requirements language . . . . . . . . . . . . . . . . . . . . 3 2. Requirements language . . . . . . . . . . . . . . . . . . . . 3
3. Transport and Middlebox specification . . . . . . . . . . . . 3 3. Transport and Middlebox specification . . . . . . . . . . . . 3
3.1. System-provided interfaces . . . . . . . . . . . . . . . 3 3.1. System-provided interfaces . . . . . . . . . . . . . . . 3
3.2. Ability to use IPv4 and IPv6 . . . . . . . . . . . . . . 4 3.2. Ability to use IPv4 and IPv6 . . . . . . . . . . . . . . 4
3.3. Usage of temporary IPv6 addresses . . . . . . . . . . . . 4 3.3. Usage of temporary IPv6 addresses . . . . . . . . . . . . 4
3.4. Middle box related functions . . . . . . . . . . . . . . 4 3.4. Middle box related functions . . . . . . . . . . . . . . 4
3.5. Transport protocols implemented . . . . . . . . . . . . . 5 3.5. Transport protocols implemented . . . . . . . . . . . . . 6
4. Media Prioritization . . . . . . . . . . . . . . . . . . . . 6 4. Media Prioritization . . . . . . . . . . . . . . . . . . . . 6
4.1. Usage of Quality of Service - DSCP and Multiplexing . . . 6 4.1. Local prioritization . . . . . . . . . . . . . . . . . . 7
4.2. Local prioritization . . . . . . . . . . . . . . . . . . 8 4.2. Usage of Quality of Service - DSCP and Multiplexing . . . 8
5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9
6. Security Considerations . . . . . . . . . . . . . . . . . . . 9 6. Security Considerations . . . . . . . . . . . . . . . . . . . 9
7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 9 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 10
8. References . . . . . . . . . . . . . . . . . . . . . . . . . 9 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 10
8.1. Normative References . . . . . . . . . . . . . . . . . . 9 8.1. Normative References . . . . . . . . . . . . . . . . . . 10
8.2. Informative References . . . . . . . . . . . . . . . . . 12 8.2. Informative References . . . . . . . . . . . . . . . . . 12
Appendix A. Change log . . . . . . . . . . . . . . . . . . . . . 12 Appendix A. Change log . . . . . . . . . . . . . . . . . . . . . 13
A.1. Changes from -00 to -01 . . . . . . . . . . . . . . . . . 12 A.1. Changes from -00 to -01 . . . . . . . . . . . . . . . . . 13
A.2. Changes from -01 to -02 . . . . . . . . . . . . . . . . . 13 A.2. Changes from -01 to -02 . . . . . . . . . . . . . . . . . 13
A.3. Changes from -02 to -03 . . . . . . . . . . . . . . . . . 13 A.3. Changes from -02 to -03 . . . . . . . . . . . . . . . . . 14
A.4. Changes from -03 to -04 . . . . . . . . . . . . . . . . . 14 A.4. Changes from -03 to -04 . . . . . . . . . . . . . . . . . 14
A.5. Changes from -04 to -05 . . . . . . . . . . . . . . . . . 14 A.5. Changes from -04 to -05 . . . . . . . . . . . . . . . . . 14
A.6. Changes from -05 to -06 . . . . . . . . . . . . . . . . . 14 A.6. Changes from -05 to -06 . . . . . . . . . . . . . . . . . 15
A.7. Changes from -06 to -07 . . . . . . . . . . . . . . . . . 14 A.7. Changes from -06 to -07 . . . . . . . . . . . . . . . . . 15
A.8. Changes from -07 to -08 . . . . . . . . . . . . . . . . . 15 A.8. Changes from -07 to -08 . . . . . . . . . . . . . . . . . 15
A.9. Changes from -08 to -09 . . . . . . . . . . . . . . . . . 15 A.9. Changes from -08 to -09 . . . . . . . . . . . . . . . . . 15
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 15 A.10. Changes from -09 to -10 . . . . . . . . . . . . . . . . . 15
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 16
1. Introduction 1. Introduction
WebRTC is a protocol suite aimed at real time multimedia exchange WebRTC is a protocol suite aimed at real time multimedia exchange
between browsers, and between browsers and other entities. between browsers, and between browsers and other entities.
WebRTC is described in the WebRTC overview document, WebRTC is described in the WebRTC overview document,
[I-D.ietf-rtcweb-overview], which also defines terminology used in [I-D.ietf-rtcweb-overview], which also defines terminology used in
this document, including the terms "WebRTC device" and "WebRTC this document, including the terms "WebRTC device" and "WebRTC
browser". browser".
skipping to change at page 3, line 38 skipping to change at page 3, line 38
elements described. elements described.
o TCP [RFC0793]. This is used for HTTP/WebSockets, as well as for o TCP [RFC0793]. This is used for HTTP/WebSockets, as well as for
TURN/SSL and ICE-TCP. TURN/SSL and ICE-TCP.
For both protocols, IPv4 and IPv6 support is assumed. For both protocols, IPv4 and IPv6 support is assumed.
For UDP, this specification assumes the ability to set the DSCP code For UDP, this specification assumes the ability to set the DSCP code
point of the sockets opened on a per-packet basis, in order to point of the sockets opened on a per-packet basis, in order to
achieve the prioritizations described in [I-D.ietf-tsvwg-rtcweb-qos] achieve the prioritizations described in [I-D.ietf-tsvwg-rtcweb-qos]
(see Section 4.1) when multiple media types are multiplexed. It does (see Section 4.2) when multiple media types are multiplexed. It does
not assume that the DSCP codepoints will be honored, and does assume not assume that the DSCP codepoints will be honored, and does assume
that they may be zeroed or changed, since this is a local that they may be zeroed or changed, since this is a local
configuration issue. configuration issue.
Platforms that do not give access to these interfaces will not be Platforms that do not give access to these interfaces will not be
able to support a conforming WebRTC implementation. able to support a conforming WebRTC implementation.
This specification does not assume that the implementation will have This specification does not assume that the implementation will have
access to ICMP or raw IP. access to ICMP or raw IP.
skipping to change at page 5, line 45 skipping to change at page 5, line 45
UDP-blocking firewalls without using a TURN server. UDP-blocking firewalls without using a TURN server.
If TCP connections are used, RTP framing according to [RFC4571] MUST If TCP connections are used, RTP framing according to [RFC4571] MUST
be used, both for the RTP packets and for the DTLS packets used to be used, both for the RTP packets and for the DTLS packets used to
carry data channels. carry data channels.
The ALTERNATE-SERVER mechanism specified in [RFC5389] (STUN) section The ALTERNATE-SERVER mechanism specified in [RFC5389] (STUN) section
11 (300 Try Alternate) MUST be supported. 11 (300 Try Alternate) MUST be supported.
The WebRTC implementation MAY support accessing the Internet through The WebRTC implementation MAY support accessing the Internet through
an HTTP proxy. If it does so, it MUST support the "connect" header an HTTP proxy. If it does so, it MUST support the "ALPN" header as
as specified in [I-D.ietf-httpbis-tunnel-protocol]. specified in [RFC7639], and proxy authentication as described in
Section 4.3.6 of [RFC7231] and [RFC7235] MUST also be supported.
3.5. Transport protocols implemented 3.5. Transport protocols implemented
For transport of media, secure RTP is used. The details of the For transport of media, secure RTP is used. The details of the
profile of RTP used are described in "RTP Usage" profile of RTP used are described in "RTP Usage"
[I-D.ietf-rtcweb-rtp-usage]. Key exchange MUST be done using DTLS- [I-D.ietf-rtcweb-rtp-usage]. Key exchange MUST be done using DTLS-
SRTP, as described in [I-D.ietf-rtcweb-security-arch]. SRTP, as described in [I-D.ietf-rtcweb-security-arch].
For data transport over the WebRTC data channel For data transport over the WebRTC data channel
[I-D.ietf-rtcweb-data-channel], WebRTC implementations MUST support [I-D.ietf-rtcweb-data-channel], WebRTC implementations MUST support
SCTP over DTLS over ICE. This encapsulation is specified in SCTP over DTLS over ICE. This encapsulation is specified in
[I-D.ietf-tsvwg-sctp-dtls-encaps]. Negotiation of this transport in [I-D.ietf-tsvwg-sctp-dtls-encaps]. Negotiation of this transport in
SDP is defined in [I-D.ietf-mmusic-sctp-sdp]. The SCTP extension for SDP is defined in [I-D.ietf-mmusic-sctp-sdp]. The SCTP extension for
NDATA, [I-D.ietf-tsvwg-sctp-ndata], MUST be supported. NDATA, [I-D.ietf-tsvwg-sctp-ndata], MUST be supported.
skipping to change at page 6, line 43 skipping to change at page 6, line 47
4. Media Prioritization 4. Media Prioritization
The WebRTC prioritization model is that the application tells the The WebRTC prioritization model is that the application tells the
WebRTC implementation about the priority of media and data flows WebRTC implementation about the priority of media and data flows
through an API. through an API.
The priority associated with a media or data flow is classified as The priority associated with a media or data flow is classified as
"normal", "below normal", "high" or "very high". There are only four "normal", "below normal", "high" or "very high". There are only four
priority levels at the API. priority levels at the API.
The priority settings affect two pieces of behavior: Packet markings The priority settings affect two pieces of behavior: Packet send
and packet send sequence decisions. Each is described in its own sequence decisions and packet markings. Each is described in its own
section below. section below.
4.1. Usage of Quality of Service - DSCP and Multiplexing 4.1. Local prioritization
Local prioritization is applied at the local node, before the packet
is sent. This means that the prioritization has full access to the
data about the individual packets, and can choose differing treatment
based on the stream a packet belongs to.
When an WebRTC implementation has packets to send on multiple streams
(with each media stream and each data channel considered as one
"stream" for this purpose) that are congestion-controlled under the
same congestion controller, the WebRTC implementation SHOULD cause
data to be emitted in such a way that each stream at each level of
priority is being given approximately twice the transmission capacity
(measured in payload bytes) of the level below.
Thus, when congestion occurs, a "very high" priority flow will have
the ability to send 8 times as much data as a "below normal" flow if
both have data to send. This prioritization is independent of the
media type. The details of which packet to send first are
implementation defined.
For example: If there is a very high priority audio flow sending 100
byte packets, and a normal priority video flow sending 1000 byte
packets, and outgoing capacity exists for sending >5000 payload
bytes, it would be appropriate to send 4000 bytes (40 packets) of
audio and 1000 bytes (one packet) of video as the result of a single
pass of sending decisions.
Conversely, if the audio flow is marked normal priority and the video
flow is marked very high priority, the scheduler may decide to send 2
video packets (2000 bytes) and 5 audio packets (500 bytes) when
outgoing capacity exists for sending > 2500 payload bytes.
If there are two very high priority audio flows, each will be able to
send 4000 bytes in the same period where a normal priority video flow
is able to send 1000 bytes.
Two example implementation strategies are:
o When the available bandwidth is known from the congestion control
algorithm, configure each codec and each data channel with a
target send rate that is appropriate to its share of the available
bandwidth.
o When congestion control indicates that a specified number of
packets can be sent, send packets that are available to send using
a weighted round robin scheme across the connections.
Any combination of these, or other schemes that have the same effect,
is valid, as long as the distribution of transmission capacity is
approximately correct.
For media, it is usually inappropriate to use deep queues for
sending; it is more useful to, for instance, skip intermediate frames
that have no dependencies on them in order to achieve a lower
bitrate. For reliable data, queues are useful.
4.2. Usage of Quality of Service - DSCP and Multiplexing
When the packet is sent, the network will make decisions about
queueing and/or discarding the packet that can affect the quality of
the communication. The sender can attempt to set the DSCP field of
the packet to influence these decisions.
Implementations SHOULD attempt to set QoS on the packets sent, Implementations SHOULD attempt to set QoS on the packets sent,
according to the guidelines in [I-D.ietf-tsvwg-rtcweb-qos]. It is according to the guidelines in [I-D.ietf-tsvwg-rtcweb-qos]. It is
appropriate to depart from this recommendation when running on appropriate to depart from this recommendation when running on
platforms where QoS marking is not implemented. platforms where QoS marking is not implemented.
The implementation MAY turn off use of DSCP markings if it detects The implementation MAY turn off use of DSCP markings if it detects
symptoms of unexpected behaviour like priority inversion or blocking symptoms of unexpected behaviour like priority inversion or blocking
of packets with certain DSCP markings. The detection of these of packets with certain DSCP markings. The detection of these
conditions is implementation dependent. (Question: Does there need conditions is implementation dependent.
to be an API knob to turn off DSCP markings? If nobody argues for
it, this parenthesis will be removed.)
All packets carrying data from the SCTP association supporting the All packets carrying data from the SCTP association supporting the
data channels MUST use a single DSCP code point. data channels MUST use a single DSCP code point. The code point used
SHOULD be that recommended by [I-D.ietf-tsvwg-rtcweb-qos] for the
highest priority data channel carried. Note that this means that all
data packets, no matter what their relative priority is, will be
treated the same by the network.
All packets on one TCP connection, no matter what it carries, MUST All packets on one TCP connection, no matter what it carries, MUST
use a single DSCP code point. use a single DSCP code point.
More advice on the use of DSCP code points with RTP is given in More advice on the use of DSCP code points with RTP is given in
[I-D.ietf-dart-dscp-rtp]. [I-D.ietf-dart-dscp-rtp].
There exist a number of schemes for achieving quality of service that There exist a number of schemes for achieving quality of service that
do not depend solely on DSCP code points. Some of these schemes do not depend solely on DSCP code points. Some of these schemes
depend on classifying the traffic into flows based on 5-tuple (source depend on classifying the traffic into flows based on 5-tuple (source
skipping to change at page 8, line 16 skipping to change at page 9, line 37
It MAY choose to support other configurations, such as bundling each It MAY choose to support other configurations, such as bundling each
media type (audio, video or data) into its own 5-tuple (bundling by media type (audio, video or data) into its own 5-tuple (bundling by
media type). media type).
Sending data over multiple 5-tuples is not supported. Sending data over multiple 5-tuples is not supported.
A receiving implementation MUST be able to receive media and data in A receiving implementation MUST be able to receive media and data in
all these configurations. all these configurations.
4.2. Local prioritization
When an WebRTC implementation has packets to send on multiple streams
(with each media stream and each data channel considered as one
"stream" for this purpose) that are congestion-controlled under the
same congestion controller, the WebRTC implementation SHOULD cause
data to be emitted in such a way that each stream at each level of
priority is being given approximately twice the transmission capacity
(measured in payload bytes) of the level below.
Thus, when congestion occurs, a "very high" priority flow will have
the ability to send 8 times as much data as a "below normal" flow if
both have data to send. This prioritization is independent of the
media type. The details of which packet to send first are
implementation defined.
For example: If there is a very high priority audio flow sending 100
byte packets, and a normal priority video flow sending 1000 byte
packets, and outgoing capacity exists for sending >5000 payload
bytes, it would be appropriate to send 4000 bytes (40 packets) of
audio and 1000 bytes (one packet) of video as the result of a single
pass of sending decisions.
Conversely, if the audio flow is marked normal priority and the video
flow is marked very high priority, the scheduler may decide to send 2
video packets (2000 bytes) and 5 audio packets (500 bytes) when
outgoing capacity exists for sending > 2500 payload bytes.
If there are two very high priority audio flows, each will be able to
send 4000 bytes in the same period where a normal priority video flow
is able to send 1000 bytes.
Two example implementation strategies are:
o When the available bandwidth is known from the congestion control
algorithm, configure each codec and each data channel with a
target send rate that is appropriate to its share of the available
bandwidth.
o When congestion control indicates that a specified number of
packets can be sent, send packets that are available to send using
a weighted round robin scheme across the connections.
Any combination of these, or other schemes that have the same effect,
is valid, as long as the distribution of transmission capacity is
approximately correct.
For media, it is usually inappropriate to use deep queues for
sending; it is more useful to, for instance, skip intermediate frames
that have no dependencies on them in order to achieve a lower
bitrate. For reliable data, queues are useful.
5. IANA Considerations 5. IANA Considerations
This document makes no request of IANA. This document makes no request of IANA.
Note to RFC Editor: this section may be removed on publication as an Note to RFC Editor: this section may be removed on publication as an
RFC. RFC.
6. Security Considerations 6. Security Considerations
Security considerations are enumerated in [I-D.ietf-rtcweb-security]. Security considerations are enumerated in [I-D.ietf-rtcweb-security].
skipping to change at page 9, line 45 skipping to change at page 10, line 19
from many RTCWEB WG members. from many RTCWEB WG members.
Special thanks for reviews of earlier versions of this draft go to Special thanks for reviews of earlier versions of this draft go to
Eduardo Gueiros, Magnus Westerlund, Markus Isomaki and Dan Wing; the Eduardo Gueiros, Magnus Westerlund, Markus Isomaki and Dan Wing; the
contributions from Andrew Hutton also deserve special mention. contributions from Andrew Hutton also deserve special mention.
8. References 8. References
8.1. Normative References 8.1. Normative References
[I-D.ietf-httpbis-tunnel-protocol]
Hutton, A., Uberti, J., and M. Thomson, "The Tunnel-
Protocol HTTP Request Header Field", draft-ietf-httpbis-
tunnel-protocol-01 (work in progress), January 2015.
[I-D.ietf-mmusic-sctp-sdp] [I-D.ietf-mmusic-sctp-sdp]
Holmberg, C., Loreto, S., and G. Camarillo, "Stream Holmberg, C., Loreto, S., and G. Camarillo, "Stream
Control Transmission Protocol (SCTP)-Based Media Transport Control Transmission Protocol (SCTP)-Based Media Transport
in the Session Description Protocol (SDP)", draft-ietf- in the Session Description Protocol (SDP)", draft-ietf-
mmusic-sctp-sdp-12 (work in progress), January 2015. mmusic-sctp-sdp-14 (work in progress), March 2015.
[I-D.ietf-rtcweb-alpn] [I-D.ietf-rtcweb-alpn]
Thomson, M., "Application Layer Protocol Negotiation for Thomson, M., "Application Layer Protocol Negotiation for
Web Real-Time Communications (WebRTC)", draft-ietf-rtcweb- Web Real-Time Communications (WebRTC)", draft-ietf-rtcweb-
alpn-00 (work in progress), July 2014. alpn-01 (work in progress), February 2015.
[I-D.ietf-rtcweb-data-channel] [I-D.ietf-rtcweb-data-channel]
Jesup, R., Loreto, S., and M. Tuexen, "WebRTC Data Jesup, R., Loreto, S., and M. Tuexen, "WebRTC Data
Channels", draft-ietf-rtcweb-data-channel-13 (work in Channels", draft-ietf-rtcweb-data-channel-13 (work in
progress), January 2015. progress), January 2015.
[I-D.ietf-rtcweb-data-protocol] [I-D.ietf-rtcweb-data-protocol]
Jesup, R., Loreto, S., and M. Tuexen, "WebRTC Data Channel Jesup, R., Loreto, S., and M. Tuexen, "WebRTC Data Channel
Establishment Protocol", draft-ietf-rtcweb-data- Establishment Protocol", draft-ietf-rtcweb-data-
protocol-09 (work in progress), January 2015. protocol-09 (work in progress), January 2015.
[I-D.ietf-rtcweb-rtp-usage] [I-D.ietf-rtcweb-rtp-usage]
Perkins, C., Westerlund, M., and J. Ott, "Web Real-Time Perkins, C., Westerlund, M., and J. Ott, "Web Real-Time
Communication (WebRTC): Media Transport and Use of RTP", Communication (WebRTC): Media Transport and Use of RTP",
draft-ietf-rtcweb-rtp-usage-22 (work in progress), draft-ietf-rtcweb-rtp-usage-22 (work in progress),
February 2015. February 2015.
[I-D.ietf-rtcweb-security] [I-D.ietf-rtcweb-security]
Rescorla, E., "Security Considerations for WebRTC", draft- Rescorla, E., "Security Considerations for WebRTC", draft-
ietf-rtcweb-security-07 (work in progress), July 2014. ietf-rtcweb-security-08 (work in progress), February 2015.
[I-D.ietf-rtcweb-security-arch] [I-D.ietf-rtcweb-security-arch]
Rescorla, E., "WebRTC Security Architecture", draft-ietf- Rescorla, E., "WebRTC Security Architecture", draft-ietf-
rtcweb-security-arch-10 (work in progress), July 2014. rtcweb-security-arch-11 (work in progress), March 2015.
[I-D.ietf-tsvwg-rtcweb-qos] [I-D.ietf-tsvwg-rtcweb-qos]
Dhesikan, S., Jennings, C., Druta, D., Jones, P., and J. Dhesikan, S., Jennings, C., Druta, D., Jones, P., and J.
Polk, "DSCP and other packet markings for RTCWeb QoS", Polk, "DSCP and other packet markings for RTCWeb QoS",
draft-ietf-tsvwg-rtcweb-qos-03 (work in progress), draft-ietf-tsvwg-rtcweb-qos-03 (work in progress),
November 2014. November 2014.
[I-D.ietf-tsvwg-sctp-dtls-encaps] [I-D.ietf-tsvwg-sctp-dtls-encaps]
Tuexen, M., Stewart, R., Jesup, R., and S. Loreto, "DTLS Tuexen, M., Stewart, R., Jesup, R., and S. Loreto, "DTLS
Encapsulation of SCTP Packets", draft-ietf-tsvwg-sctp- Encapsulation of SCTP Packets", draft-ietf-tsvwg-sctp-
dtls-encaps-09 (work in progress), January 2015. dtls-encaps-09 (work in progress), January 2015.
[I-D.ietf-tsvwg-sctp-ndata] [I-D.ietf-tsvwg-sctp-ndata]
Stewart, R., Tuexen, M., Loreto, S., and R. Seggelmann, Stewart, R., Tuexen, M., Loreto, S., and R. Seggelmann,
"Stream Schedulers and a New Data Chunk for the Stream "Stream Schedulers and User Message Interleaving for the
Control Transmission Protocol", draft-ietf-tsvwg-sctp- Stream Control Transmission Protocol", draft-ietf-tsvwg-
ndata-02 (work in progress), January 2015. sctp-ndata-03 (work in progress), March 2015.
[I-D.martinsen-mmusic-ice-dualstack-fairness] [I-D.martinsen-mmusic-ice-dualstack-fairness]
Martinsen, P., Reddy, T., and P. Patil, "ICE IPv4/IPv6 Martinsen, P., Reddy, T., and P. Patil, "ICE IPv4/IPv6
Dual Stack Fairness", draft-martinsen-mmusic-ice- Dual Stack Fairness", draft-martinsen-mmusic-ice-
dualstack-fairness-02 (work in progress), February 2015. dualstack-fairness-02 (work in progress), February 2015.
[RFC0768] Postel, J., "User Datagram Protocol", STD 6, RFC 768, [RFC0768] Postel, J., "User Datagram Protocol", STD 6, RFC 768, DOI
August 1980. 10.17487/RFC0768, August 1980,
<http://www.rfc-editor.org/info/rfc768>.
[RFC0793] Postel, J., "Transmission Control Protocol", STD 7, RFC [RFC0793] Postel, J., "Transmission Control Protocol", STD 7, RFC
793, September 1981. 793, DOI 10.17487/RFC0793, September 1981,
<http://www.rfc-editor.org/info/rfc793>.
[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, March 1997. Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC4571] Lazzaro, J., "Framing Real-time Transport Protocol (RTP) [RFC4571] Lazzaro, J., "Framing Real-time Transport Protocol (RTP)
and RTP Control Protocol (RTCP) Packets over Connection- and RTP Control Protocol (RTCP) Packets over Connection-
Oriented Transport", RFC 4571, July 2006. Oriented Transport", RFC 4571, July 2006.
[RFC4941] Narten, T., Draves, R., and S. Krishnan, "Privacy [RFC4941] Narten, T., Draves, R., and S. Krishnan, "Privacy
Extensions for Stateless Address Autoconfiguration in Extensions for Stateless Address Autoconfiguration in
skipping to change at page 12, line 17 skipping to change at page 12, line 33
6156, April 2011. 6156, April 2011.
[RFC6544] Rosenberg, J., Keranen, A., Lowekamp, B., and A. Roach, [RFC6544] Rosenberg, J., Keranen, A., Lowekamp, B., and A. Roach,
"TCP Candidates with Interactive Connectivity "TCP Candidates with Interactive Connectivity
Establishment (ICE)", RFC 6544, March 2012. Establishment (ICE)", RFC 6544, March 2012.
[RFC6724] Thaler, D., Draves, R., Matsumoto, A., and T. Chown, [RFC6724] Thaler, D., Draves, R., Matsumoto, A., and T. Chown,
"Default Address Selection for Internet Protocol Version 6 "Default Address Selection for Internet Protocol Version 6
(IPv6)", RFC 6724, September 2012. (IPv6)", RFC 6724, September 2012.
[RFC7231] Fielding, R. and J. Reschke, "Hypertext Transfer Protocol
(HTTP/1.1): Semantics and Content", RFC 7231, June 2014.
[RFC7235] Fielding, R. and J. Reschke, "Hypertext Transfer Protocol
(HTTP/1.1): Authentication", RFC 7235, June 2014.
[RFC7639] Hutton, A., Uberti, J., and M. Thomson, "The ALPN HTTP
Header Field", RFC 7639, DOI 10.17487/RFC7639, August
2015, <http://www.rfc-editor.org/info/rfc7639>.
8.2. Informative References 8.2. Informative References
[I-D.ietf-dart-dscp-rtp] [I-D.ietf-dart-dscp-rtp]
Black, D. and P. Jones, "Differentiated Services Black, D. and P. Jones, "Differentiated Services
(DiffServ) and Real-time Communication", draft-ietf-dart- (DiffServ) and Real-time Communication", draft-ietf-dart-
dscp-rtp-10 (work in progress), November 2014. dscp-rtp-08 (work in progress), October 2014.
[I-D.ietf-rtcweb-overview] [I-D.ietf-rtcweb-overview]
Alvestrand, H., "Overview: Real Time Protocols for Alvestrand, H., "Overview: Real Time Protocols for
Browser-based Applications", draft-ietf-rtcweb-overview-13 Browser-based Applications", draft-ietf-rtcweb-overview-13
(work in progress), November 2014. (work in progress), November 2014.
[RFC3484] Draves, R., "Default Address Selection for Internet [RFC3484] Draves, R., "Default Address Selection for Internet
Protocol version 6 (IPv6)", RFC 3484, February 2003. Protocol version 6 (IPv6)", RFC 3484, February 2003.
[RFC5014] Nordmark, E., Chakrabarti, S., and J. Laganier, "IPv6 [RFC5014] Nordmark, E., Chakrabarti, S., and J. Laganier, "IPv6
skipping to change at page 15, line 18 skipping to change at page 15, line 43
o Deleted "bundle each media type (audio, video or data) into its o Deleted "bundle each media type (audio, video or data) into its
own 5-tuple (bundling by media type)" from MUST support own 5-tuple (bundling by media type)" from MUST support
configuration, since JSEP does not have a means to negotiate this configuration, since JSEP does not have a means to negotiate this
configuration configuration
A.9. Changes from -08 to -09 A.9. Changes from -08 to -09
o Added a clarifying note about DTLS-SRTP and ICE interaction. o Added a clarifying note about DTLS-SRTP and ICE interaction.
A.10. Changes from -09 to -10
o Re-added references to proxy authentication lost in 07-08
transition (Bug #5)
o Rearranged and rephrased text in section 4 about prioritization to
reflect discussions in TSVWG.
o Changed the "Connect" header to "ALPN", and updated reference.
(Bug #6)
Author's Address Author's Address
Harald Alvestrand Harald Alvestrand
Google Google
Email: harald@alvestrand.no Email: harald@alvestrand.no
 End of changes. 29 change blocks. 
95 lines changed or deleted 126 lines changed or added

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