Network Working Group M. Petit-Huguenin Internet-Draft Unaffiliated Intended status: Informational October 31, 2011 Expires: May 3, 2012 Traversal Using Relays around NAT (TURN) Uniform Resource Identifiers draft-petithuguenin-behave-turn-uri-bis-05 Abstract This document defines two URI schemes that can be used to provision the configuration values needed by the resolution mechanism defined in [RFC5928]. Status of this Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. This document may not be modified, and derivative works of it may not be created, except to format it for publication as an RFC or to translate it into languages other than English. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." This Internet-Draft will expire on May 3, 2012. Copyright Notice Copyright (c) 2011 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as Petit-Huguenin Expires May 3, 2012 [Page 1] Internet-Draft TURN URIs October 2011 described in the Simplified BSD License. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Syntax of a TURN or TURNS URI . . . . . . . . . . . . . . . . . 3 3. Security Considerations . . . . . . . . . . . . . . . . . . . . 4 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 4 4.1. TURN URI Registration . . . . . . . . . . . . . . . . . . . 4 4.2. TURNS URI Registration . . . . . . . . . . . . . . . . . . 5 5. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 5 6. References . . . . . . . . . . . . . . . . . . . . . . . . . . 6 6.1. Normative References . . . . . . . . . . . . . . . . . . . 6 6.2. Informative References . . . . . . . . . . . . . . . . . . 6 Appendix A. Release notes . . . . . . . . . . . . . . . . . . . . 6 A.1. Modifications between petithuguenin-05 and petithuguenin-04 . . . . . . . . . . . . . . . . . . . . . 6 A.2. Modifications between petithuguenin-04 and petithuguenin-03 . . . . . . . . . . . . . . . . . . . . . 6 A.3. Modifications between petithuguenin-03 and petithuguenin-02 . . . . . . . . . . . . . . . . . . . . . 6 A.4. Modifications between petithuguenin-02 and petithuguenin-01 . . . . . . . . . . . . . . . . . . . . . 7 A.5. Modifications between petithuguenin-01 and petithuguenin-00 . . . . . . . . . . . . . . . . . . . . . 7 A.6. Design Notes . . . . . . . . . . . . . . . . . . . . . . . 7 A.7. Running Code Considerations . . . . . . . . . . . . . . . . 7 A.8. TODO List . . . . . . . . . . . . . . . . . . . . . . . . . 7 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 7 Petit-Huguenin Expires May 3, 2012 [Page 2] Internet-Draft TURN URIs October 2011 1. Introduction [RFC5928] defines a resolution mechanism to convert a secure flag, an host name or IP address, a eventually empty port, and an eventually empty transport to a list of IP address, port, and TURN transport tuples. To simplify the provisioning of TURN clients, this document defines a TURN and a TURNS URI scheme that can carry the four components needed for the resolution mechanism. 2. Syntax of a TURN or TURNS URI A TURN/TURNS URI has the following ABNF syntax [RFC5234]: turnURI = scheme ":" turn-host [ ":" turn-port ] [ "?transport=" transport ] scheme = "turn" / "turns" transport = "udp" / "tcp" / transport-ext transport-ext = 1*unreserved turn-host = IP-literal / IPv4address / reg-name turn-port = *DIGIT IP-literal = "[" ( IPv6address / IPvFuture ) "]" IPvFuture = "v" 1*HEXDIG "." 1*( unreserved / sub-delims / ":" ) IPv6address = 6( h16 ":" ) ls32 / "::" 5( h16 ":" ) ls32 / [ h16 ] "::" 4( h16 ":" ) ls32 / [ *1( h16 ":" ) h16 ] "::" 3( h16 ":" ) ls32 / [ *2( h16 ":" ) h16 ] "::" 2( h16 ":" ) ls32 / [ *3( h16 ":" ) h16 ] "::" h16 ":" ls32 / [ *4( h16 ":" ) h16 ] "::" ls32 / [ *5( h16 ":" ) h16 ] "::" h16 / [ *6( h16 ":" ) h16 ] "::" h16 = 1*4HEXDIG ls32 = ( h16 ":" h16 ) / IPv4address IPv4address = dec-octet "." dec-octet "." dec-octet "." dec-octet dec-octet = DIGIT ; 0-9 / %x31-39 DIGIT ; 10-99 / "1" 2DIGIT ; 100-199 / "2" %x30-34 DIGIT ; 200-249 / "25" %x30-35 ; 250-255 reg-name = *( unreserved / pct-encoded / sub-delims ) , , and are specified in [RFC3986]. is equal to false if is equal to "turn" and equal Petit-Huguenin Expires May 3, 2012 [Page 3] Internet-Draft TURN URIs October 2011 to false if is equal to "turns". 3. Security Considerations Security considerations for the resolution mechanism are discussed in [RFC5928]. The "turn" and "turns" URI schemes do not introduce any specific security issues beyond the security considerations discussed in [RFC3986]. 4. IANA Considerations This section contains the registration information for the "turn" and "turns" URI Schemes (in accordance with [RFC4395]). 4.1. TURN URI Registration URI scheme name: turn Status: permanent URI scheme syntax: See Section 2. URI scheme semantics: See [RFC5928]. Encoding considerations: There are no encoding considerations beyond those in [RFC3986]. Applications/protocols that use this URI scheme name: The "turn" URI scheme is intended to be used by applications that might need access to a TURN server. Interoperability considerations: N/A Security considerations: See Section 3. Contact: Marc Petit-Huguenin Author/Change controller: The IESG References: This document. [Note to RFC Editor: Replace "This document" with reference to this document] Petit-Huguenin Expires May 3, 2012 [Page 4] Internet-Draft TURN URIs October 2011 4.2. TURNS URI Registration URI scheme name: turns Status: permanent URI scheme syntax: See Section 2. URI scheme semantics: See [RFC5928]. Encoding considerations: There are no encoding considerations beyond those in [RFC3986]. Applications/protocols that use this URI scheme name: The "turns" URI scheme is intended to be used by applications that might need access to a TURN server. Interoperability considerations: N/A Security considerations: See Section 3. Contact: Marc Petit-Huguenin Author/Change controller: The IESG References: This document. [Note to RFC Editor: Replace "This document" with reference to this document] 5. Acknowledgements Thanks to Margaret Wasserman, Magnus Westerlund, Juergen Schoenwaelder, Sean Turner, Ted Hardie, Dave Thaler, Alfred E. Heggestad, Eilon Yardeni, Dan Wing, Alfred Hoenes, and Jim Kleck for their comments, suggestions and questions that helped to improve this document. The and ABNF productions have been copied from the and ABNF productions from [RFC3986]. This document was written with the xml2rfc tool described in [RFC2629]. 6. References Petit-Huguenin Expires May 3, 2012 [Page 5] Internet-Draft TURN URIs October 2011 6.1. Normative References [RFC3986] Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform Resource Identifier (URI): Generic Syntax", STD 66, RFC 3986, January 2005. [RFC5234] Crocker, D. and P. Overell, "Augmented BNF for Syntax Specifications: ABNF", STD 68, RFC 5234, January 2008. [RFC5928] Petit-Huguenin, M., "Traversal Using Relays around NAT (TURN) Resolution Mechanism", RFC 5928, August 2010. 6.2. Informative References [RFC2629] Rose, M., "Writing I-Ds and RFCs using XML", RFC 2629, June 1999. [RFC4395] Hansen, T., Hardie, T., and L. Masinter, "Guidelines and Registration Procedures for New URI Schemes", BCP 35, RFC 4395, February 2006. [I-D.wood-tae-specifying-uri-transports] Wood, L., "Specifying transport mechanisms in Uniform Resource Identifiers", draft-wood-tae-specifying-uri-transports-08 (work in progress), May 2010. Appendix A. Release notes This section must be removed before publication as an RFC. A.1. Modifications between petithuguenin-05 and petithuguenin-04 o Nits. o Fixed schemes registration. A.2. Modifications between petithuguenin-04 and petithuguenin-03 o Fixed references code link. A.3. Modifications between petithuguenin-03 and petithuguenin-02 o Updated RFC references. Petit-Huguenin Expires May 3, 2012 [Page 6] Internet-Draft TURN URIs October 2011 A.4. Modifications between petithuguenin-02 and petithuguenin-01 o Nits. A.5. Modifications between petithuguenin-01 and petithuguenin-00 o Shorten I-D references. A.6. Design Notes o is not used in the URIs because it is deprecated. is not used in the URIs because it is not used to guide the resolution mechanism. o As discussed in Dublin, there is no generic parameters in the URI to prevent compatibity issues. A.7. Running Code Considerations o Reference Implementation of TURN URI parser and resolver (). Marc Petit- Huguenin. Implements version -05. A.8. TODO List o Instead of using a transport parameter perhaps a scheme prefix, as proposed in [I-D.wood-tae-specifying-uri-transports] is better. o Same thing for using a "+s" suffix instead of a "s" suffix for security. Author's Address Marc Petit-Huguenin Unaffiliated Email: petithug@acm.org Petit-Huguenin Expires May 3, 2012 [Page 7]