draft-ietf-tram-alpn-07.txt   draft-ietf-tram-alpn-08.txt 
TRAM P. Patil TRAM P. Patil
Internet-Draft T. Reddy Internet-Draft T. Reddy
Intended status: Standards Track G. Salgueiro Intended status: Informational G. Salgueiro
Expires: May 2, 2015 Cisco Expires: May 29, 2015 Cisco
M. Petit-Huguenin M. Petit-Huguenin
Impedance Mismatch Impedance Mismatch
October 29, 2014 November 25, 2014
Application Layer Protocol Negotiation (ALPN) labels for Session Application Layer Protocol Negotiation (ALPN) Labels for Session
Traversal Utilities for NAT (STUN) Usages Traversal Utilities for NAT (STUN) Usages
draft-ietf-tram-alpn-07 draft-ietf-tram-alpn-08
Abstract Abstract
Application Layer Protocol Negotiation (ALPN) labels for Session Application Layer Protocol Negotiation (ALPN) labels for Session
Traversal Utilities for NAT (STUN) usages, such as Traversal Using Traversal Utilities for NAT (STUN) usages, such as Traversal Using
Relays around NAT (TURN) and NAT discovery, are defined in this Relays around NAT (TURN) and NAT discovery, are defined in this
document to allow an application layer negotiate STUN usages within document to allow an application layer to negotiate STUN usages
the Transport Layer Security (TLS) connection. ALPN protocol within the Transport Layer Security (TLS) connection. ALPN protocol
identifiers defined in this document apply to both TLS and Datagram identifiers defined in this document apply to both TLS and Datagram
Transport Layer Security (DTLS). Transport Layer Security (DTLS).
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
provisions of BCP 78 and BCP 79. provisions of BCP 78 and BCP 79.
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 2, 2015. This Internet-Draft will expire on May 29, 2015.
Copyright Notice Copyright Notice
Copyright (c) 2014 IETF Trust and the persons identified as the Copyright (c) 2014 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
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. ALPN Labels for STUN . . . . . . . . . . . . . . . . . . . . 2 2. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 3
3. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 3 3. Security Considerations . . . . . . . . . . . . . . . . . . . 3
4. Security Considerations . . . . . . . . . . . . . . . . . . . 3 4. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 3
5. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 3 5. References . . . . . . . . . . . . . . . . . . . . . . . . . 4
6. References . . . . . . . . . . . . . . . . . . . . . . . . . 4 5.1. Normative References . . . . . . . . . . . . . . . . . . 4
6.1. Normative References . . . . . . . . . . . . . . . . . . 4 5.2. Informative References . . . . . . . . . . . . . . . . . 4
6.2. Informative References . . . . . . . . . . . . . . . . . 4
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 4 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 4
1. Introduction 1. Introduction
STUN can be securely transported using TLS-over-TCP (referred to as STUN can be securely transported using TLS-over-TCP (referred to as
TLS [RFC5246]), as specified in [RFC5389], or TLS-over-UDP (referred TLS [RFC5246]), as specified in [RFC5389], or TLS-over-UDP (referred
to as DTLS [RFC6347]), as specified in [RFC7350]. to as DTLS [RFC6347]), as specified in [RFC7350].
ALPN [RFC7301] enables an endpoint to positively identify an ALPN [RFC7301] enables an endpoint to positively identify an
application protocol in TLS/DTLS and distinguish it from other TLS/ application protocol in TLS/DTLS and distinguish it from other TLS/
DTLS protocols. With ALPN, the client sends the list of supported DTLS protocols. With ALPN, the client sends the list of supported
application protocols as part of the TLS/DTLS ClientHello message. application protocols as part of the TLS/DTLS ClientHello message.
The server chooses a protocol and sends the selected protocol as part The server chooses a protocol and sends the selected protocol as part
of the TLS/DTLS ServerHello message. Application protocol of the TLS/DTLS ServerHello message. Application protocol
negotiation can thus be accomplished within the TLS/DTLS handshake, negotiation can thus be accomplished within the TLS/DTLS handshake,
without adding network round-trips. without adding network round-trips.
STUN protocol usages, such as TURN [RFC5766], can be used to identify STUN protocol usages, such as TURN [RFC5766], can be used to identify
the purpose of a flow without initiating a session. the purpose of a flow without initiating a session.
This document defines entries in the "Application Layer Protocol This document proposes the following ALPN labels to identify STUN
Negotiation (ALPN) Protocol IDs" registry established by [RFC7301] to
identify STUN protocol usages.
2. ALPN Labels for STUN
The document proposes the following ALPN labels to identify STUN
protocol [RFC5389] usages. protocol [RFC5389] usages.
'stun.turn': Label to identify the specific use of STUN over (D)TLS 'stun.turn': Label to identify the specific use of STUN over (D)TLS
for TURN (Section 4.6 of [RFC7350]). for TURN (Section 4.6 of [RFC7350]).
'stun.nat-discovery': Label to identify the specific use of STUN 'stun.nat-discovery': Label to identify the specific use of STUN
over (D)TLS for NAT discovery (Section 4.1 of [RFC7350]). over (D)TLS for NAT discovery (Section 4.1 of [RFC7350]).
3. IANA Considerations 2. IANA Considerations
The following entries are to be added to the "Application Layer The following entries are to be added to the "Application Layer
Protocol Negotiation (ALPN) Protocol IDs" registry established by Protocol Negotiation (ALPN) Protocol IDs" registry established by
[RFC7301]. [RFC7301].
The "stun.turn" label identifies the use of TURN usage (D)TLS: The "stun.turn" label identifies the use of TURN usage (D)TLS:
Protocol: Traversal Using Relays around NAT (TURN) Protocol: Traversal Using Relays around NAT (TURN)
Identification Sequence: 0x73 0x74 0x75 0x6E 0x2E 0x74 0x75 0x72 Identification Sequence: 0x73 0x74 0x75 0x6E 0x2E 0x74 0x75 0x72
skipping to change at page 3, line 35 skipping to change at page 3, line 32
Protocol: NAT discovery using Session Traversal Utilities for NAT Protocol: NAT discovery using Session Traversal Utilities for NAT
(STUN) (STUN)
Identification Sequence: 0x73 0x74 0x75 0x6E 0x2E 0x6e 0x61 0x74 Identification Sequence: 0x73 0x74 0x75 0x6E 0x2E 0x6e 0x61 0x74
0x2d 0x64 0x69 0x73 0x63 0x6f 0x76 0x65 0x72 0x79 ("stun.nat- 0x2d 0x64 0x69 0x73 0x63 0x6f 0x76 0x65 0x72 0x79 ("stun.nat-
discovery") discovery")
Specification: This document (RFCXXXX) Specification: This document (RFCXXXX)
4. Security Considerations 3. Security Considerations
The ALPN STUN protocol identifier does not introduce any specific The ALPN STUN protocol identifier does not introduce any specific
security considerations beyond those detailed in the TLS ALPN security considerations beyond those detailed in the TLS ALPN
Extension specification [RFC7301]. It also does not impact security Extension specification [RFC7301]. It also does not impact security
of TLS/DTLS session establishment nor application data exchange. of TLS/DTLS session establishment nor application data exchange.
5. Acknowledgements 4. Acknowledgements
This work benefited from the discussions and invaluable input by the This work benefited from the discussions and invaluable input by the
various members of the TRAM working group. These include Simon various members of the TRAM working group. These include Simon
Perrault, Paul Kyzivat, Brandon Williams and Andrew Hutton. Special Perrault, Paul Kyzivat, Brandon Williams and Andrew Hutton. Special
thanks to Martin Thomson and Oleg Moskalenko for their constructive thanks to Martin Thomson and Oleg Moskalenko for their constructive
comments, suggestions, and early reviews that were critical to the comments, suggestions, and early reviews that were critical to the
formulation and refinement of this document. formulation and refinement of this document.
6. References Barry Leiba, Stephen Farrell, Adrian Farrel and Richard Barnes
provided useful feedback during IESG review. Thanks to Russ Housley
for his Gen-ART review and Adam Langley for his IETF LC review
comments as TLS expert.
6.1. Normative References The authors would also like to express their gratitude to the TRAM WG
chairs Gonzalo Camarillo and especially Simon Perrault, who also
acted as document shepherd. Lastly, we also want to thank Transport
Area Director Spencer Dawkins for his support and careful reviews.
5. References
5.1. Normative References
[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, August 2008. (TLS) Protocol Version 1.2", RFC 5246, August 2008.
[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,
October 2008. October 2008.
[RFC6347] Rescorla, E. and N. Modadugu, "Datagram Transport Layer [RFC6347] Rescorla, E. and N. Modadugu, "Datagram Transport Layer
Security Version 1.2", RFC 6347, January 2012. Security Version 1.2", RFC 6347, January 2012.
[RFC7301] Friedl, S., Popov, A., Langley, A., and E. Stephan, [RFC7301] Friedl, S., Popov, A., Langley, A., and E. Stephan,
"Transport Layer Security (TLS) Application-Layer Protocol "Transport Layer Security (TLS) Application-Layer Protocol
Negotiation Extension", RFC 7301, July 2014. Negotiation Extension", RFC 7301, July 2014.
[RFC7350] Petit-Huguenin, M. and G. Salgueiro, "Datagram Transport [RFC7350] Petit-Huguenin, M. and G. Salgueiro, "Datagram Transport
Layer Security (DTLS) as Transport for Session Traversal Layer Security (DTLS) as Transport for Session Traversal
Utilities for NAT (STUN)", RFC 7350, August 2014. Utilities for NAT (STUN)", RFC 7350, August 2014.
6.2. Informative References 5.2. Informative References
[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, April 2010. Traversal Utilities for NAT (STUN)", RFC 5766, April 2010.
Authors' Addresses Authors' Addresses
Prashanth Patil Prashanth Patil
Cisco Systems, Inc. Cisco Systems, Inc.
Bangalore Bangalore
 End of changes. 14 change blocks. 
28 lines changed or deleted 31 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/