draft-ietf-rtcweb-transports-16.txt | draft-ietf-rtcweb-transports-17.txt | |||
---|---|---|---|---|
Network Working Group H. Alvestrand | Network Working Group H. Alvestrand | |||
Internet-Draft Google | Internet-Draft Google | |||
Intended status: Standards Track October 4, 2016 | Intended status: Standards Track October 26, 2016 | |||
Expires: April 7, 2017 | Expires: April 29, 2017 | |||
Transports for WebRTC | Transports for WebRTC | |||
draft-ietf-rtcweb-transports-16 | draft-ietf-rtcweb-transports-17 | |||
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 April 7, 2017. | This Internet-Draft will expire on April 29, 2017. | |||
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 26 ¶ | skipping to change at page 2, line 26 ¶ | |||
4.1. Local prioritization . . . . . . . . . . . . . . . . . . 8 | 4.1. Local prioritization . . . . . . . . . . . . . . . . . . 8 | |||
4.2. Usage of Quality of Service - DSCP and Multiplexing . . . 9 | 4.2. Usage of Quality of Service - DSCP and Multiplexing . . . 9 | |||
5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 11 | 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 11 | |||
6. Security Considerations . . . . . . . . . . . . . . . . . . . 11 | 6. Security Considerations . . . . . . . . . . . . . . . . . . . 11 | |||
7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 11 | 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 11 | |||
8. References . . . . . . . . . . . . . . . . . . . . . . . . . 11 | 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 11 | |||
8.1. Normative References . . . . . . . . . . . . . . . . . . 11 | 8.1. Normative References . . . . . . . . . . . . . . . . . . 11 | |||
8.2. Informative References . . . . . . . . . . . . . . . . . 15 | 8.2. Informative References . . . . . . . . . . . . . . . . . 15 | |||
Appendix A. Change log . . . . . . . . . . . . . . . . . . . . . 16 | Appendix A. Change log . . . . . . . . . . . . . . . . . . . . . 16 | |||
A.1. Changes from -00 to -01 . . . . . . . . . . . . . . . . . 16 | A.1. Changes from -00 to -01 . . . . . . . . . . . . . . . . . 16 | |||
A.2. Changes from -01 to -02 . . . . . . . . . . . . . . . . . 17 | A.2. Changes from -01 to -02 . . . . . . . . . . . . . . . . . 16 | |||
A.3. Changes from -02 to -03 . . . . . . . . . . . . . . . . . 17 | A.3. Changes from -02 to -03 . . . . . . . . . . . . . . . . . 17 | |||
A.4. Changes from -03 to -04 . . . . . . . . . . . . . . . . . 17 | A.4. Changes from -03 to -04 . . . . . . . . . . . . . . . . . 17 | |||
A.5. Changes from -04 to -05 . . . . . . . . . . . . . . . . . 18 | A.5. Changes from -04 to -05 . . . . . . . . . . . . . . . . . 17 | |||
A.6. Changes from -05 to -06 . . . . . . . . . . . . . . . . . 18 | A.6. Changes from -05 to -06 . . . . . . . . . . . . . . . . . 17 | |||
A.7. Changes from -06 to -07 . . . . . . . . . . . . . . . . . 18 | A.7. Changes from -06 to -07 . . . . . . . . . . . . . . . . . 18 | |||
A.8. Changes from -07 to -08 . . . . . . . . . . . . . . . . . 18 | A.8. Changes from -07 to -08 . . . . . . . . . . . . . . . . . 18 | |||
A.9. Changes from -08 to -09 . . . . . . . . . . . . . . . . . 19 | A.9. Changes from -08 to -09 . . . . . . . . . . . . . . . . . 18 | |||
A.10. Changes from -09 to -10 . . . . . . . . . . . . . . . . . 19 | A.10. Changes from -09 to -10 . . . . . . . . . . . . . . . . . 18 | |||
A.11. Changes from -10 to -11 . . . . . . . . . . . . . . . . . 19 | A.11. Changes from -10 to -11 . . . . . . . . . . . . . . . . . 18 | |||
A.12. Changes from -11 to -12 . . . . . . . . . . . . . . . . . 19 | A.12. Changes from -11 to -12 . . . . . . . . . . . . . . . . . 19 | |||
A.13. Changes from -12 to -13 . . . . . . . . . . . . . . . . . 19 | A.13. Changes from -12 to -13 . . . . . . . . . . . . . . . . . 19 | |||
A.14. Changes from -13 to -14 . . . . . . . . . . . . . . . . . 19 | A.14. Changes from -13 to -14 . . . . . . . . . . . . . . . . . 19 | |||
A.15. Changes from -14 to -15 . . . . . . . . . . . . . . . . . 19 | A.15. Changes from -14 to -15 . . . . . . . . . . . . . . . . . 19 | |||
A.16. Changes from -15 to -16 . . . . . . . . . . . . . . . . . 20 | A.16. Changes from -15 to -16 . . . . . . . . . . . . . . . . . 19 | |||
A.17. Changes from -16 to -17 . . . . . . . . . . . . . . . . . 20 | ||||
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 20 | Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 20 | |||
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 endpoint" and "WebRTC | this document, including the terms "WebRTC endpoint" and "WebRTC | |||
skipping to change at page 4, line 16 ¶ | skipping to change at page 4, line 16 ¶ | |||
access to ICMP or raw IP. | access to ICMP or raw IP. | |||
The following protocols may be used, but can be implemented by a | The following protocols may be used, but can be implemented by a | |||
WebRTC endpoint, and are therefore not defined as "system-provided | WebRTC endpoint, and are therefore not defined as "system-provided | |||
interfaces": | interfaces": | |||
o TURN - Traversal Using Relays Around NAT, [RFC5766] | o TURN - Traversal Using Relays Around NAT, [RFC5766] | |||
o STUN - Session Traversal Utilities for NAT, [RFC5389] | o STUN - Session Traversal Utilities for NAT, [RFC5389] | |||
o ICE - Interactive Connectivity Establishment, [RFC5245] | o ICE - Interactive Connectivity Establishment, | |||
[I-D.ietf-ice-rfc5245bis] | ||||
o TLS - Transport Layer Security, [RFC5246] | o TLS - Transport Layer Security, [RFC5246] | |||
o DTLS - Datagram Transport Layer Security, [RFC6347]. | o DTLS - Datagram Transport Layer Security, [RFC6347]. | |||
3.2. Ability to use IPv4 and IPv6 | 3.2. Ability to use IPv4 and IPv6 | |||
Web applications running in a WebRTC browser MUST be able to utilize | Web applications running in a WebRTC browser MUST be able to utilize | |||
both IPv4 and IPv6 where available - that is, when two peers have | both IPv4 and IPv6 where available - that is, when two peers have | |||
only IPv4 connectivity to each other, or they have only IPv6 | only IPv4 connectivity to each other, or they have only IPv6 | |||
skipping to change at page 5, line 20 ¶ | skipping to change at page 5, line 20 ¶ | |||
restart, deprecated addresses that are currently in use MAY be | restart, deprecated addresses that are currently in use MAY be | |||
retained. | retained. | |||
3.4. Middle box related functions | 3.4. Middle box related functions | |||
The primary mechanism to deal with middle boxes is ICE, which is an | The primary mechanism to deal with middle boxes is ICE, which is an | |||
appropriate way to deal with NAT boxes and firewalls that accept | appropriate way to deal with NAT boxes and firewalls that accept | |||
traffic from the inside, but only from the outside if it is in | traffic from the inside, but only from the outside if it is in | |||
response to inside traffic (simple stateful firewalls). | response to inside traffic (simple stateful firewalls). | |||
ICE [RFC5245] MUST be supported. The implementation MUST be a full | ICE [I-D.ietf-ice-rfc5245bis] MUST be supported. The implementation | |||
ICE implementation, not ICE-Lite. A full ICE implementation allows | MUST be a full ICE implementation, not ICE-Lite. A full ICE | |||
interworking with both ICE and ICE-Lite implementations when they are | implementation allows interworking with both ICE and ICE-Lite | |||
deployed appropriately. | implementations when they are deployed appropriately. | |||
In order to deal with situations where both parties are behind NATs | In order to deal with situations where both parties are behind NATs | |||
of the type that perform endpoint-dependent mapping (as defined in | of the type that perform endpoint-dependent mapping (as defined in | |||
[RFC5128] section 2.4), TURN [RFC5766] MUST be supported. | [RFC5128] section 2.4), TURN [RFC5766] MUST be supported. | |||
WebRTC browsers MUST support configuration of STUN and TURN servers, | WebRTC browsers MUST support configuration of STUN and TURN servers, | |||
both from browser configuration and from an application. | both from browser configuration and from an application. | |||
Note that there is other work around STUN and TURN sever discovery | Note that there is other work around STUN and TURN sever discovery | |||
and management, including [I-D.ietf-tram-turn-server-discovery] for | and management, including [I-D.ietf-tram-turn-server-discovery] for | |||
skipping to change at page 7, line 6 ¶ | skipping to change at page 7, line 6 ¶ | |||
[I-D.ietf-rtcweb-data-channel], WebRTC endpoints MUST support SCTP | [I-D.ietf-rtcweb-data-channel], WebRTC endpoints MUST support SCTP | |||
over DTLS over ICE. This encapsulation is specified in | 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. | |||
The setup protocol for WebRTC data channels described in | The setup protocol for WebRTC data channels described in | |||
[I-D.ietf-rtcweb-data-protocol] MUST be supported. | [I-D.ietf-rtcweb-data-protocol] MUST be supported. | |||
Note: DTLS-SRTP as defined in [RFC5764] section 6.7.1 defines the | Note: DTLS-SRTP as defined in [RFC5764] section 6.7.1 defines the | |||
interaction between DTLS and ICE ( [RFC5245]). The effect of this | interaction between DTLS and ICE ( [I-D.ietf-ice-rfc5245bis]). The | |||
specification is that all ICE candidate pairs associated with a | effect of this specification is that all ICE candidate pairs | |||
single component are part of the same DTLS association. Thus, there | associated with a single component are part of the same DTLS | |||
will only be one DTLS handshake even if there are multiple valid | association. Thus, there will only be one DTLS handshake even if | |||
candidate pairs. | there are multiple valid candidate pairs. | |||
WebRTC endpoints MUST support multiplexing of DTLS and RTP over the | WebRTC endpoints MUST support multiplexing of DTLS and RTP over the | |||
same port pair, as described in the DTLS-SRTP specification | same port pair, as described in the DTLS-SRTP specification | |||
[RFC5764], section 5.1.2, with clarifications in | [RFC5764], section 5.1.2, with clarifications in | |||
[I-D.ietf-avtcore-rfc5764-mux-fixes]. All application layer protocol | [I-D.ietf-avtcore-rfc5764-mux-fixes]. All application layer protocol | |||
payloads over this DTLS connection are SCTP packets. | payloads over this DTLS connection are SCTP packets. | |||
Protocol identification MUST be supplied as part of the DTLS | Protocol identification MUST be supplied as part of the DTLS | |||
handshake, as specified in [I-D.ietf-rtcweb-alpn]. | handshake, as specified in [I-D.ietf-rtcweb-alpn]. | |||
skipping to change at page 9, line 33 ¶ | skipping to change at page 9, line 33 ¶ | |||
the communication. The sender can attempt to set the DSCP field of | the communication. The sender can attempt to set the DSCP field of | |||
the packet to influence these decisions. | 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. Some examples of such | |||
behaviors are described in [ANRW16]. The detection of these | ||||
conditions is implementation dependent. | conditions is implementation dependent. | |||
A particularly hard problem is when one media transport uses multiple | A particularly hard problem is when one media transport uses multiple | |||
DSCP code points, where one may be blocked and another may be | DSCP code points, where one may be blocked and another may be | |||
allowed. This is allowed even within a single media flow for video | allowed. This is allowed even within a single media flow for video | |||
in [I-D.ietf-tsvwg-rtcweb-qos]. Implementations need to diagnose | in [I-D.ietf-tsvwg-rtcweb-qos]. Implementations need to diagnose | |||
this scenario; one possible implementation is to send initial ICE | this scenario; one possible implementation is to send initial ICE | |||
probes with DSCP 0, and send ICE probes on all the DSCP code points | probes with DSCP 0, and send ICE probes on all the DSCP code points | |||
that are intended to be used once a candidate pair has been selected. | that are intended to be used once a candidate pair has been selected. | |||
If one or more of the DSCP-marked probes fail, the sender will switch | If one or more of the DSCP-marked probes fail, the sender will switch | |||
skipping to change at page 12, line 9 ¶ | skipping to change at page 12, line 9 ¶ | |||
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-avtcore-rfc5764-mux-fixes] | [I-D.ietf-avtcore-rfc5764-mux-fixes] | |||
Petit-Huguenin, M. and G. Salgueiro, "Multiplexing Scheme | Petit-Huguenin, M. and G. Salgueiro, "Multiplexing Scheme | |||
Updates for Secure Real-time Transport Protocol (SRTP) | Updates for Secure Real-time Transport Protocol (SRTP) | |||
Extension for Datagram Transport Layer Security (DTLS)", | Extension for Datagram Transport Layer Security (DTLS)", | |||
draft-ietf-avtcore-rfc5764-mux-fixes-10 (work in | draft-ietf-avtcore-rfc5764-mux-fixes-11 (work in | |||
progress), July 2016. | progress), September 2016. | |||
[I-D.ietf-avtcore-rtp-circuit-breakers] | [I-D.ietf-avtcore-rtp-circuit-breakers] | |||
Perkins, C. and V. Singh, "Multimedia Congestion Control: | Perkins, C. and V. Singh, "Multimedia Congestion Control: | |||
Circuit Breakers for Unicast RTP Sessions", draft-ietf- | Circuit Breakers for Unicast RTP Sessions", draft-ietf- | |||
avtcore-rtp-circuit-breakers-18 (work in progress), August | avtcore-rtp-circuit-breakers-06 (work in progress), July | |||
2016. | 2014. | |||
[I-D.ietf-ice-rfc5245bis] | ||||
Keranen, A., Holmberg, C., and J. Rosenberg, "Interactive | ||||
Connectivity Establishment (ICE): A Protocol for Network | ||||
Address Translator (NAT) Traversal", draft-ietf-ice- | ||||
rfc5245bis-04 (work in progress), June 2016. | ||||
[I-D.ietf-mmusic-ice-dualstack-fairness] | [I-D.ietf-mmusic-ice-dualstack-fairness] | |||
Martinsen, P., Reddy, T., and P. Patil, "ICE Multihomed | Martinsen, P., Reddy, T., and P. Patil, "ICE Multihomed | |||
and IPv4/IPv6 Dual Stack Fairness", draft-ietf-mmusic-ice- | and IPv4/IPv6 Dual Stack Fairness", draft-ietf-mmusic-ice- | |||
dualstack-fairness-02 (work in progress), September 2015. | dualstack-fairness-02 (work in progress), September 2015. | |||
[I-D.ietf-mmusic-sctp-sdp] | [I-D.ietf-mmusic-sctp-sdp] | |||
Holmberg, C., Loreto, S., and G. Camarillo, "Stream | Loreto, S. and G. Camarillo, "Stream Control Transmission | |||
Control Transmission Protocol (SCTP)-Based Media Transport | Protocol (SCTP)-Based Media Transport in the Session | |||
in the Session Description Protocol (SDP)", draft-ietf- | Description Protocol (SDP)", draft-ietf-mmusic-sctp-sdp-07 | |||
mmusic-sctp-sdp-16 (work in progress), February 2016. | (work in progress), July 2014. | |||
[I-D.ietf-rmcat-cc-requirements] | [I-D.ietf-rmcat-cc-requirements] | |||
Jesup, R. and Z. Sarker, "Congestion Control Requirements | Jesup, R., "Congestion Control Requirements For RMCAT", | |||
for Interactive Real-Time Media", draft-ietf-rmcat-cc- | draft-ietf-rmcat-cc-requirements-06 (work in progress), | |||
requirements-09 (work in progress), December 2014. | October 2014. | |||
[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-04 (work in progress), May 2016. | alpn-00 (work in progress), July 2014. | |||
[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-12 (work in | |||
progress), January 2015. | progress), September 2014. | |||
[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-08 (work in progress), September 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-15 | Browser-based Applications", draft-ietf-rtcweb-overview-11 | |||
(work in progress), January 2016. | (work in progress), August 2014. | |||
[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-26 (work in progress), March | draft-ietf-rtcweb-rtp-usage-17 (work in progress), August | |||
2016. | 2014. | |||
[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-08 (work in progress), February 2015. | ietf-rtcweb-security-07 (work in progress), July 2014. | |||
[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-11 (work in progress), March 2015. | rtcweb-security-arch-10 (work in progress), July 2014. | |||
[I-D.ietf-tsvwg-rtcweb-qos] | [I-D.ietf-tsvwg-rtcweb-qos] | |||
Jones, P., Dhesikan, S., Jennings, C., and D. Druta, "DSCP | Dhesikan, S., Jennings, C., Druta, D., Jones, P., and J. | |||
Packet Markings for WebRTC QoS", draft-ietf-tsvwg-rtcweb- | Polk, "DSCP and other packet markings for RTCWeb QoS", | |||
qos-17 (work in progress), May 2016. | draft-ietf-tsvwg-rtcweb-qos-02 (work in progress), June | |||
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-05 (work in progress), July 2014. | |||
[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 User Message Interleaving for the | "Stream Schedulers and a New Data Chunk for the Stream | |||
Stream Control Transmission Protocol", draft-ietf-tsvwg- | Control Transmission Protocol", draft-ietf-tsvwg-sctp- | |||
sctp-ndata-05 (work in progress), March 2016. | ndata-01 (work in progress), July 2014. | |||
[RFC0768] Postel, J., "User Datagram Protocol", STD 6, RFC 768, DOI | [RFC0768] Postel, J., "User Datagram Protocol", STD 6, RFC 768, | |||
10.17487/RFC0768, August 1980, | 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, DOI 10.17487/RFC0793, September 1981, | 793, 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, DOI 10.17487/ | Requirement Levels", BCP 14, RFC 2119, March 1997. | |||
RFC2119, March 1997, | ||||
<http://www.rfc-editor.org/info/rfc2119>. | ||||
[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, DOI 10.17487/RFC4571, July | Oriented Transport", RFC 4571, July 2006. | |||
2006, <http://www.rfc-editor.org/info/rfc4571>. | ||||
[RFC4594] Babiarz, J., Chan, K., and F. Baker, "Configuration | [RFC4594] Babiarz, J., Chan, K., and F. Baker, "Configuration | |||
Guidelines for DiffServ Service Classes", RFC 4594, DOI | Guidelines for DiffServ Service Classes", RFC 4594, August | |||
10.17487/RFC4594, August 2006, | 2006. | |||
<http://www.rfc-editor.org/info/rfc4594>. | ||||
[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 | |||
IPv6", RFC 4941, DOI 10.17487/RFC4941, September 2007, | IPv6", RFC 4941, September 2007. | |||
<http://www.rfc-editor.org/info/rfc4941>. | ||||
[RFC5245] Rosenberg, J., "Interactive Connectivity Establishment | ||||
(ICE): A Protocol for Network Address Translator (NAT) | ||||
Traversal for Offer/Answer Protocols", RFC 5245, DOI | ||||
10.17487/RFC5245, April 2010, | ||||
<http://www.rfc-editor.org/info/rfc5245>. | ||||
[RFC5246] Dierks, T. and E. Rescorla, "The Transport Layer Security | [RFC5246] Dierks, T. and E. Rescorla, "The Transport Layer Security | |||
(TLS) Protocol Version 1.2", RFC 5246, DOI 10.17487/ | (TLS) Protocol Version 1.2", RFC 5246, August 2008. | |||
RFC5246, August 2008, | ||||
<http://www.rfc-editor.org/info/rfc5246>. | ||||
[RFC5389] Rosenberg, J., Mahy, R., Matthews, P., and D. Wing, | [RFC5389] Rosenberg, J., Mahy, R., Matthews, P., and D. Wing, | |||
"Session Traversal Utilities for NAT (STUN)", RFC 5389, | "Session Traversal Utilities for NAT (STUN)", RFC 5389, | |||
DOI 10.17487/RFC5389, October 2008, | October 2008. | |||
<http://www.rfc-editor.org/info/rfc5389>. | ||||
[RFC5764] McGrew, D. and E. Rescorla, "Datagram Transport Layer | [RFC5764] McGrew, D. and E. Rescorla, "Datagram Transport Layer | |||
Security (DTLS) Extension to Establish Keys for the Secure | Security (DTLS) Extension to Establish Keys for the Secure | |||
Real-time Transport Protocol (SRTP)", RFC 5764, DOI | Real-time Transport Protocol (SRTP)", RFC 5764, May 2010. | |||
10.17487/RFC5764, May 2010, | ||||
<http://www.rfc-editor.org/info/rfc5764>. | ||||
[RFC5766] Mahy, R., Matthews, P., and J. Rosenberg, "Traversal Using | [RFC5766] Mahy, R., Matthews, P., and J. Rosenberg, "Traversal Using | |||
Relays around NAT (TURN): Relay Extensions to Session | Relays around NAT (TURN): Relay Extensions to Session | |||
Traversal Utilities for NAT (STUN)", RFC 5766, DOI | Traversal Utilities for NAT (STUN)", RFC 5766, April 2010. | |||
10.17487/RFC5766, April 2010, | ||||
<http://www.rfc-editor.org/info/rfc5766>. | ||||
[RFC6062] Perreault, S., Ed. and J. Rosenberg, "Traversal Using | [RFC6062] Perreault, S. and J. Rosenberg, "Traversal Using Relays | |||
Relays around NAT (TURN) Extensions for TCP Allocations", | around NAT (TURN) Extensions for TCP Allocations", RFC | |||
RFC 6062, DOI 10.17487/RFC6062, November 2010, | 6062, November 2010. | |||
<http://www.rfc-editor.org/info/rfc6062>. | ||||
[RFC6156] Camarillo, G., Novo, O., and S. Perreault, Ed., "Traversal | [RFC6156] Camarillo, G., Novo, O., and S. Perreault, "Traversal | |||
Using Relays around NAT (TURN) Extension for IPv6", RFC | Using Relays around NAT (TURN) Extension for IPv6", RFC | |||
6156, DOI 10.17487/RFC6156, April 2011, | 6156, April 2011. | |||
<http://www.rfc-editor.org/info/rfc6156>. | ||||
[RFC6347] Rescorla, E. and N. Modadugu, "Datagram Transport Layer | [RFC6347] Rescorla, E. and N. Modadugu, "Datagram Transport Layer | |||
Security Version 1.2", RFC 6347, DOI 10.17487/RFC6347, | Security Version 1.2", RFC 6347, January 2012. | |||
January 2012, <http://www.rfc-editor.org/info/rfc6347>. | ||||
[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, DOI 10.17487/RFC6544, | Establishment (ICE)", RFC 6544, March 2012. | |||
March 2012, <http://www.rfc-editor.org/info/rfc6544>. | ||||
[RFC6724] Thaler, D., Ed., 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, DOI 10.17487/RFC6724, September 2012, | (IPv6)", RFC 6724, September 2012. | |||
<http://www.rfc-editor.org/info/rfc6724>. | ||||
[RFC7231] Fielding, R., Ed. and J. Reschke, Ed., "Hypertext Transfer | [RFC7231] Fielding, R. and J. Reschke, "Hypertext Transfer Protocol | |||
Protocol (HTTP/1.1): Semantics and Content", RFC 7231, DOI | (HTTP/1.1): Semantics and Content", RFC 7231, June 2014. | |||
10.17487/RFC7231, June 2014, | ||||
<http://www.rfc-editor.org/info/rfc7231>. | ||||
[RFC7235] Fielding, R., Ed. and J. Reschke, Ed., "Hypertext Transfer | [RFC7235] Fielding, R. and J. Reschke, "Hypertext Transfer Protocol | |||
Protocol (HTTP/1.1): Authentication", RFC 7235, DOI | (HTTP/1.1): Authentication", RFC 7235, June 2014. | |||
10.17487/RFC7235, June 2014, | ||||
<http://www.rfc-editor.org/info/rfc7235>. | ||||
[RFC7639] Hutton, A., Uberti, J., and M. Thomson, "The ALPN HTTP | [RFC7639] Hutton, A., Uberti, J., and M. Thomson, "The ALPN HTTP | |||
Header Field", RFC 7639, DOI 10.17487/RFC7639, August | Header Field", RFC 7639, DOI 10.17487/RFC7639, August | |||
2015, <http://www.rfc-editor.org/info/rfc7639>. | 2015, <http://www.rfc-editor.org/info/rfc7639>. | |||
[RFC7656] Lennox, J., Gross, K., Nandakumar, S., Salgueiro, G., and | [RFC7656] Lennox, J., Gross, K., Nandakumar, S., Salgueiro, G., and | |||
B. Burman, Ed., "A Taxonomy of Semantics and Mechanisms | B. Burman, Ed., "A Taxonomy of Semantics and Mechanisms | |||
for Real-Time Transport Protocol (RTP) Sources", RFC 7656, | for Real-Time Transport Protocol (RTP) Sources", RFC 7656, | |||
DOI 10.17487/RFC7656, November 2015, | DOI 10.17487/RFC7656, November 2015, | |||
<http://www.rfc-editor.org/info/rfc7656>. | <http://www.rfc-editor.org/info/rfc7656>. | |||
8.2. Informative References | 8.2. Informative References | |||
[ANRW16] Barik, R., Welzl, M., and A. Elmokashfi, "How to say that | ||||
you're special: Can we use bits in the IPv4 header?", ACM, | ||||
IRTF, ISOC Applied Networking Research Workshop (ANRW | ||||
2016), Berlin , July 2016. | ||||
[I-D.ietf-rmcat-coupled-cc] | [I-D.ietf-rmcat-coupled-cc] | |||
Islam, S., Welzl, M., and S. Gjessing, "Coupled congestion | Islam, S., Welzl, M., and S. Gjessing, "Coupled congestion | |||
control for RTP media", draft-ietf-rmcat-coupled-cc-03 | control for RTP media", draft-ietf-rmcat-coupled-cc-03 | |||
(work in progress), July 2016. | (work in progress), July 2016. | |||
[I-D.ietf-rtcweb-return] | [I-D.ietf-rtcweb-return] | |||
Schwartz, B. and J. Uberti, "Recursively Encapsulated TURN | Schwartz, B. and J. Uberti, "Recursively Encapsulated TURN | |||
(RETURN) for Connectivity and Privacy in WebRTC", draft- | (RETURN) for Connectivity and Privacy in WebRTC", draft- | |||
ietf-rtcweb-return-01 (work in progress), January 2016. | ietf-rtcweb-return-01 (work in progress), January 2016. | |||
[I-D.ietf-tram-turn-server-discovery] | [I-D.ietf-tram-turn-server-discovery] | |||
Patil, P., Reddy, T., and D. Wing, "TURN Server Auto | Patil, P., Reddy, T., and D. Wing, "TURN Server Auto | |||
Discovery", draft-ietf-tram-turn-server-discovery-09 (work | Discovery", draft-ietf-tram-turn-server-discovery-00 (work | |||
in progress), August 2016. | in progress), July 2014. | |||
[RFC3484] Draves, R., "Default Address Selection for Internet | [RFC3484] Draves, R., "Default Address Selection for Internet | |||
Protocol version 6 (IPv6)", RFC 3484, DOI 10.17487/ | Protocol version 6 (IPv6)", RFC 3484, February 2003. | |||
RFC3484, February 2003, | ||||
<http://www.rfc-editor.org/info/rfc3484>. | ||||
[RFC5014] Nordmark, E., Chakrabarti, S., and J. Laganier, "IPv6 | [RFC5014] Nordmark, E., Chakrabarti, S., and J. Laganier, "IPv6 | |||
Socket API for Source Address Selection", RFC 5014, DOI | Socket API for Source Address Selection", RFC 5014, | |||
10.17487/RFC5014, September 2007, | September 2007. | |||
<http://www.rfc-editor.org/info/rfc5014>. | ||||
[RFC5128] Srisuresh, P., Ford, B., and D. Kegel, "State of Peer-to- | [RFC5128] Srisuresh, P., Ford, B., and D. Kegel, "State of Peer-to- | |||
Peer (P2P) Communication across Network Address | Peer (P2P) Communication across Network Address | |||
Translators (NATs)", RFC 5128, DOI 10.17487/RFC5128, March | Translators (NATs)", RFC 5128, March 2008. | |||
2008, <http://www.rfc-editor.org/info/rfc5128>. | ||||
[RFC7657] Black, D., Ed. and P. Jones, "Differentiated Services | [RFC7657] Black, D., Ed. and P. Jones, "Differentiated Services | |||
(Diffserv) and Real-Time Communication", RFC 7657, DOI | (Diffserv) and Real-Time Communication", RFC 7657, DOI 10 | |||
10.17487/RFC7657, November 2015, | .17487/RFC7657, November 2015, | |||
<http://www.rfc-editor.org/info/rfc7657>. | <http://www.rfc-editor.org/info/rfc7657>. | |||
Appendix A. Change log | Appendix A. Change log | |||
This section should be removed before publication as an RFC. | This section should be removed before publication as an RFC. | |||
A.1. Changes from -00 to -01 | A.1. Changes from -00 to -01 | |||
o Clarified DSCP requirements, with reference to -qos- | o Clarified DSCP requirements, with reference to -qos- | |||
skipping to change at page 20, line 32 ¶ | skipping to change at page 20, line 10 ¶ | |||
#42) | #42) | |||
o Added a note mentioning that rtp-usage requires circut breaker and | o Added a note mentioning that rtp-usage requires circut breaker and | |||
congestion control (issue #43) | congestion control (issue #43) | |||
o Added mention of the "don't discard temporary IPv6 addresses that | o Added mention of the "don't discard temporary IPv6 addresses that | |||
are in use" (issue #44) | are in use" (issue #44) | |||
o Added a reference to draft-ietf-rmcat-coupled-cc (issue #46) | o Added a reference to draft-ietf-rmcat-coupled-cc (issue #46) | |||
A.17. Changes from -16 to -17 | ||||
o Added an informative reference to the "DSCP blackholing" paper | ||||
o Changed the reference for ICE from RFC 5245 to draft-ietf-ice- | ||||
rfc5245bis | ||||
Author's Address | Author's Address | |||
Harald Alvestrand | Harald Alvestrand | |||
Email: harald@alvestrand.no | Email: harald@alvestrand.no | |||
End of changes. 51 change blocks. | ||||
116 lines changed or deleted | 105 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/ |