ENUM WG J. Peterson Internet-Draft NeuStar Expires: August 25, 2003 February 24, 2003 enumservice registration for SIP Addresses-of-Record draft-ietf-enum-sip-00 Status of this Memo This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC2026. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet- Drafts. 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." The list of current Internet-Drafts can be accessed at http:// www.ietf.org/ietf/1id-abstracts.txt. The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. This Internet-Draft will expire on August 25, 2003. Copyright Notice Copyright (C) The Internet Society (2003). All Rights Reserved. Abstract This document registers an ENUM service for SIP (the Session Initiation Protocol), pursuant to the guidelines in RFC2916bis. Specifically, this document focuses on provisioning SIP addresses-of- record in ENUM. Peterson Expires August 25, 2003 [Page 1] Internet-Draft SIP enumservice February 2003 Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. ENUM Service Registration . . . . . . . . . . . . . . . . . . . 3 3. Addresses-of-record in SIP . . . . . . . . . . . . . . . . . . . 4 4. The 'E2U+SIP' enumservice . . . . . . . . . . . . . . . . . . . 6 5. Example of E2U+SIP enumservice . . . . . . . . . . . . . . . . . 6 6. Security Considerations . . . . . . . . . . . . . . . . . . . . 6 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 7 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 8 A. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . 8 References . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 B. To Do . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 Full Copyright Statement . . . . . . . . . . . . . . . . . . . . 9 Peterson Expires August 25, 2003 [Page 2] Internet-Draft SIP enumservice February 2003 1. Introduction ENUM (E.164 Number Mapping, RFC2916 [1]) is a system that uses DNS (Domain Name Service, RFC1034 [4]) to translate telephone numbers, like '+12025332600', into URIs (Uniform Resource Identifiers, RFC2396 [5]), like 'sip:user@sipservice.com'. ENUM exists primarily to facilitate the interconnection of systems that rely on telephone numbers with those that use URIs to route transactions. ENUM is currently under revision in RFC2916bis [2]; this document applies to the revised version of ENUM described in the work-in-progress. SIP (Session Initiation Protocol, RFC3261 [3]) is a text-based application protocol that allows endpoints on the Internet to discover one another in order to exchange context information about a session they would like to share. Common forms of communication that are set up by SIP include Internet telephony, instant messaging, video, Internet gaming and other forms of real-time communications. SIP is a multi-service protocol capable of initiating sessions involving different forms of real-time communications simultaneously. SIP is a protocol that finds the best way for parties to communicate. 2. ENUM Service Registration As defined in [2], the following is a template covering information needed for the registration of the enumservice specified in this document. Enumservice Name: "E2U+SIP" Type(s): "SIP" Subtype(s): N/A URI Scheme(s): "sip:", "sips:" Functional Specification: see Section 4 Security considerations: see Section 6 Intended usage: COMMON Author: Jon Peterson (jon.peterson@neustar.biz) Any other information that the author deems interesting: See Section 3 Peterson Expires August 25, 2003 [Page 3] Internet-Draft SIP enumservice February 2003 3. Addresses-of-record in SIP This document specifies an enumservice field that is appropriate for SIP addresses-of-record URIs. Various other types of URIs can be present in SIP requests. A URI that is associated with a particular SIP user agent (for example, a SIP phone) is commonly known as a SIP contact address. The difference between a contact address and an address-of-record is like the difference between a device and its user. While there is no formal distinction in the syntax of these two forms of addresses, contact addresses are associated with a particular device, and may have a very device-specific form (like sip:10.0.0.1, or sip:user@ua21.sipservice.com). An address-of-record, however, represents a identity of the user, generally a long-term identity, and it does not have a dependency on any device; users can move between devices or even be associated with multiple devices at one time while retaining the same address-of-record. A simple URI, generally of the form 'sip:user@sipservice.com', is used for an address-of-record. When a SIP request is created by a user agent, it populates the address-of-record of its target in its To header field and (generally) Request-URI. The address-of-record of the user that is sending the request populates the From header field of the message; the contact address of the device from which the request is sent is listed in the Contact header field. By sending a registration to a registrar on behalf of its user, a SIP device (i.e. a user agent) can temporarily associate its own contact address with the user's address-of-record. In so doing, the device becomes eligible to receive requests that are sent to the address-of- record. Upon receiving the registration request, the registrar modifies the provisioning data in a SIP location service to create a mapping between the address-of-record for the user and the device where the user can currently be reached. When future requests arrive at the administrative domain of this location service for the user in question, proxy servers ask the location service where to find the user, and will in turn discover the registered contact address(es). A SIP-based follow-me telephony service, for example, would rely on this real-time availability data in order to find the best place to reach the end user without having to cycle through numerous devices from which the user is not currently registered. Note that addresses-of-record can be registered with other addresses-of-record; for example, while at home, a user might elect to register the address-of-record they use as their personal identity under their work address-of-record in order to direct requests for their work identity to whatever devices they might have associated with their Peterson Expires August 25, 2003 [Page 4] Internet-Draft SIP enumservice February 2003 home address-of-record. When a SIP entity (be it a user agent or proxy server) needs to make a forwarding decision for a Request-URI containing an address-of- record, it uses the mechanisms described in the SIP specification (RFC3263) to locate the proper resource in the network. Ordinarily, this entails resolving the domain portion of the URI (sipcarrier.com in the example above) in order to route the call to a proxy server that is responsible for that domain. SIP user agents have specific communications capabilities (such as the ability to initiate voice communications with particular codecs, or support for particular SIP protocol extensions). Because an address-of-record does not represent any particular device or set of devices, an address-of-record does not have capabilities as such. When a SIP user agent sends a request to an address-of-record, it begins a phase of capability negotiation that will eventually discover the best way for the originator to communicate with the target. The originating user agent first expresses capabilities of its own in the request it sends (and preferences for the type of session it would like to initiate). The expression of these capabilities may entail the usage of SDP [10] to list acceptable types of media supported and favored by the client, the inclusion of Required/Supported headers to negotiate compatibility of extensions, and possibly the usage of optional SIP extensions, for example using caller/callee preferences [8] to communicate request handling dispositions. Proxy servers or endpoints subsequently return responses that allow a rich bidirectional capability negotiation process. The process by which SIP endpoints negotiate capabilities can overlap with the primary service provided by NAPTR records: permitting the originating client to select a particular URI for communications based on an ordered list of enumservices. However, ENUM's capability management mechanism is decidedly one-way - the administrator of the telephone number expresses capabilities (in the form of protocol names) and preferences that the client must evaluate without negotiation. Moreover, listing available protocols is not comparable to agreement on session media (down to the codec/interval level) and protocol extension support - it would be difficult to express, in the level of detail necessary to arrange a desired session, the capabilities of a SIP device within a NAPTR service field. Provisioning contact addresses in ENUM rather than addresses-of- record would compromise the SIP capability negotiation and discovery process. Much of the benefit of using a URI comes from the fact that it represents a logical service associated with a user, rather than a device - indeed, if ENUM wished to target particular devices, 'E2IPv4' would be a more appropriate resolution service to define Peterson Expires August 25, 2003 [Page 5] Internet-Draft SIP enumservice February 2003 than 'E2U'. SIP addresses-of-record may use the SIP URI scheme or the SIPS URI scheme. The SIPS URI scheme, when used in an address-of-record, indicates that the user it represents can only be reached over a secure connection (using TLS). 4. The 'E2U+SIP' enumservice Traditionally, the services field of a NAPTR record (as defined in [11]) contains a string that is composed of two subfields: a 'protocol' subfield and a 'resolution service' subfield. ENUM in particular defines an 'E2U' (E.164 to URI) resolution service. This document defines an 'E2U+SIP' enumservice for SIP. The scheme of the URI that will appear in the regexp field of a NAPTR record using the 'E2U+SIP' enumservice may either be 'SIP' or 'SIPS'. This enumservice is best suited to SIP addresses-of-record. When a SIP address-of-record appears in the regexp field of a NAPTR record, there is no need to further qualify the enumservice field with any capability data, since addresses-of-record do not have capabilities. There is also generally no need to have more than one NAPTR record under a single telephone number that points to a SIP address-of- record. Note that the user portion of a SIP URI may contain a telephone number (e.g. 'sip:+12025332600@neustar.biz'). Clients should be careful to avoid infinite loops when recursively performing ENUM queries on URIs that result from an ENUM lookup. 5. Example of E2U+SIP enumservice The following is an example of the use of the enumservice registered by this document in a NAPTR resource record. $ORIGIN 0.0.6.2.3.3.5.2.0.2.1.e164.arpa. IN NAPTR 10 100 "u" "E2U+sip" "!^.*$!sip:jon.peterson@neustar.biz!" . 6. Security Considerations A SIP address-of-record is a canonical address by which a user is known - placing this address in ENUM is comparable to placing an email address or a similar URI in the DNS. Peterson Expires August 25, 2003 [Page 6] Internet-Draft SIP enumservice February 2003 DNS does not make policy decisions about the records that it shares with an inquirer. All DNS records must be assumed to be available to all inquirers at all times. The information provided within an ENUM record set must therefore be considered to be open to the public - which is a cause for some privacy considerations. Unlike a traditional telephone number, the resource identified by a SIP URI may require that callers provide cryptographic credentials for authentication and authorization before a user is alerted. In this respect, ENUM in concert with SIP can actually provide far greater protection from unwanted callers than the existing PSTN, despite the public availability of ENUM records. 7. IANA Considerations This document registers the 'E2U+SIP' enumservice under the enumservice registry described in the IANA considerations in RFC2916bis. Details of the registration are given in Section 2. References [1] Faltstrom, P., "E.164 number and DNS", RFC 2916, September 2000. [2] Faltstrom, P. and M. Mealling, "The E.164 to URI DDDS Application", draft-ietf-enum-rfc2916bis-03 (work in progress), January 2003. [3] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, A., Peterson, J., Sparks, R., Handley, M. and E. Schooler, "SIP: Session Initiation Protocol", RFC 3261, May 2002. [4] Mockapetris, P., "Domain Names - Concepts and Facilities", RFC 1034, November 1987. [5] Berners-Lee, T., Fielding, R. and L. Masinter, "Uniform Resource Identifiers (URI): Generic Syntax", RFC 2396, August 1998. [6] International Telecommunications Union, "Recommendation E.164: The international public telecommunication numbering plan", May 1997, . [7] Vaha-Sipila, A., "URLs for Telephone Calls", RFC 2806, April 2000. [8] Rosenberg, J. and H. Schulzrinne, "SIP Caller Preferences and Callee Capabilities", draft-ietf-sip-callerprefs-05 (work in Peterson Expires August 25, 2003 [Page 7] Internet-Draft SIP enumservice February 2003 progress), November 2001. [9] Mealling, M. and R. Daniel, "The Naming Authority Pointer (NAPTR) DNS Resource Record", RFC 2915, September 2000. [10] Handley, M. and V. Jacobson, "SDP: Session Description Protocol", RFC 2327, April 1998. [11] Mealling, M., "Dynamic Delegation Discovery System (DDDS) Part Three: The Domain Name System (DNS) Database", RFC 3403, October 2002. Author's Address Jon Peterson NeuStar, Inc. 1800 Sutter St Suite 570 Concord, CA 94520 USA Phone: +1 925/363-8720 EMail: jon.peterson@neustar.biz URI: http://www.neustar.biz/ Appendix A. Acknowledgments Thanks to Richard Shockey for comments on the initial draft of this document. Appendix B. To Do This document cannot proceed until RFC2916bis has passed. Peterson Expires August 25, 2003 [Page 8] Internet-Draft SIP enumservice February 2003 Full Copyright Statement Copyright (C) The Internet Society (2003). All Rights Reserved. This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English. The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns. This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Acknowledgement Funding for the RFC Editor function is currently provided by the Internet Society. Peterson Expires August 25, 2003 [Page 9]