Internet DRAFT - draft-kaplan-enum-sip-routing

draft-kaplan-enum-sip-routing




Network Working Group                                         H. Kaplan 
Internet Draft                                              Acme Packet 
Intended status: Informational                                  C. Pons 
Expires: April 24, 2012                                             KPN 
                                                              P. Gorman 
                                                          Sprint Nextel 
                                                       October 24, 2011 
    
    
                      Routing SIP Requests with ENUM 
                     draft-kaplan-enum-sip-routing-04 
    
    
Status of this Memo 
    
   This Internet-Draft is submitted to IETF in full conformance with 
   the provisions of BCP 78 and BCP 79. 
    
   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 April 24, 2012.  
    
Copyright and License Notice
    
   Copyright (c) 2010 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 


 
 
Kaplan, et al           Expires April 24, 2011                [Page 1] 
Internet-Draft           ENUM for SIP Routing             October 2011 
 
 
   Section 4.e of the Trust Legal Provisions and are provided without 
   warranty as described in the BSD License. 
    
Abstract
    
   A common ENUM use-case is for hop-by-hop or domain-by-domain 
   "routing" of SIP requests, using private DNS trees and servers.  
   This document describes this use-case, and a mechanism for a source-
   based query/answer mechanism for such. 

    
Table of Contents
    
   1.    Terminology.................................................2 
   2.    Introduction................................................3 
      2.1.   Background.............................................3 
   3.    The Problem.................................................5 
   4.    The Proposed Solution.......................................6 
      4.1.   Generating the ENUM-based DNS Query with Source URI....6 
   5.    Source URI Details..........................................6 
      5.1.   Providing Trunk Group Information in Source URI........7 
   6.    Examples....................................................8 
      6.1.   Basic SIP Scenario.....................................8 
      6.2.   Peering SIP Scenario...................................9 
      6.3.   Transit SIP Scenario..................................10 
      6.4.   Basic PSTN Scenario...................................11 
   7.    Security Considerations....................................11 
   8.    IANA Considerations........................................12 
   9.    Acknowledgments............................................12 
   10.   References.................................................12 
      10.1.  Normative References..................................12 
      10.2.  Informative References................................12 
   Authors' Addresses...............................................13 
   Appendix A. Why ENUM-DNS vs. Other Protocols....................13 
   Appendix B. Alternative Solutions...............................13 
    
    
1. Terminology 
    
   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 
   document are to be interpreted as described in RFC 2119.  The 
   terminology in this document conforms to RFC 2828, "Internet 
   Security Glossary". 
    
   For the purposes of this document and sake of simplicity, only the 
   ENUM/DNS NAPTR URI result for a SIP URI is discussed, but it applies 
   to Tel-URI, and potentially other URIs as well. 
    
 
 
Kaplan, et al            Expires - April 2011                 [Page 2] 
Internet-Draft           ENUM for SIP Routing             October 2011 
 
 
   Source URI: the URI encoded in the EDNS0 Option data field, as 
   described in [draft-edns0-source-info]. 
    
   ENUM Client: a SIP device or PSTN Gateway which generates a DNS 
   query for E.164 number resolution, per [RFC3761] 
    
   ENUM Server: a DNS server which processes DNS queries for E.164 
   number resolution, per [RFC3761], and is deployed specifically for 
   that purpose 
    
   Prefix: in this document, the term "prefix" is just some arbitrary 
   number of the leading digits of an E.164 number, such as the country 
   code, or country plus region, or even including the local exchange 
   portion.  It does not mean additional pre-pended digits used only 
   for internal routing but which are not part of the called/calling 
   number, for which the term "prefix" is also commonly used. 
    
   SSP: SIP Service Provider, as per [RFC5486]. 
    
2. Introduction 
    
   The E.164 number to URI DDDS (ENUM) application provides a mapping 
   from E.164-based "names" to various URIs, including SIP, H.323, and 
   others, as defined in [RFC3761].  The reader is assumed to be 
   familiar with ENUM and its normative documents.   
    
   The goal of this document is to describe one of the common uses of 
   ENUM today: SIP Request Routing.  SIP Routing using ENUM generally 
   works very well, but it is still missing one important capability: 
   source-based queries and results, whereby the resultant routes are 
   based on the source of the SIP requests or PSTN calls.  This source-
   based routing problem is described in this document, as well as the 
   solution, which has been implemented by multiple vendors and is in 
   use. 
    
2.1. Background 
    
   When it was originally created, ENUM DNS entries were intended to be 
   under the authority of the entity or person identified by the E.164 
   number, and be something the end user could populate.  For example, 
   for SIP the resultant URI would be the user's global SIP Address-of-
   Record URI, or even a specific SIP Contact URI of the user's SIP 
   User-Agent host.  This model is sometimes called "End User ENUM" or 
   "Public ENUM".  In practice, this model has seen fairly limited 
   deployment or use, for numerous reasons which will not be enumerated 
   in this document. 
    
   Another model called "Infrastructure ENUM" or "Carrier ENUM", 
   described in [RFC5526], changes the authority model of the ENUM DNS 
 
 
Kaplan, et al            Expires - April 2011                 [Page 3] 
Internet-Draft           ENUM for SIP Routing             October 2011 
 
 
   entries to make the registrant be the carrier-of-record, as opposed 
   to the end user.  In the Infrastructure ENUM model, the returned URI 
   was intended to represent a "point of interconnection" into the 
   carrier-of-record's SIP domain, such as an SBE. 
    
   While there are deployments of Infrastructure ENUM, in practice it 
   is not often deployed as originally defined.  The public DNS 
   database cannot reasonably be usable for URIs which represent 
   specific points of interconnection or ingress, because such URIs are 
   rarely usable in a global context; only carriers with direct access 
   to the interconnection points can use such URIs to reach the 
   carrier-of-record, and even then the interconnection points would be 
   different per originating carrier. 
    
   One could use specific DNS "views" for Infrastructure ENUM, to 
   return different answers per querying carrier IP Address range, but 
   that is difficult to accomplish in the public DNS, in a manageable, 
   scalable manner.  A more reasonable URI to return from the public 
   DNS database would be a globally reachable SIP Address-of-Record, 
   but one for which the carrier-of-record is the registrant.  
   Unfortunately, even that type of URI is difficult to use; both 
   because many carriers do not wish to publish such data in a public 
   database, and because in practice few Address-of-Records are 
   actually globally, directly, and publicly reachable over the 
   Internet. 
    
   An alternative model, often called "Private ENUM", is widely 
   deployed.  Private ENUM uses the DNS Protocol, but not the public 
   DNS Database.  Instead, the database either uses a private domain 
   suffix/apex reserved for this purpose and known to all participants, 
   or is provided by local DNS servers which do not tie into the public 
   IANA-based tree, or more commonly both privacy tactics are used.  
   The Private ENUM DNS servers typically reside in a private or 
   restricted IP network, and are only accessible to specific clients.  
   Such Private ENUM clients are typically constrained to be ones owned 
   and managed by the carrier, such as SIP Proxies, Application 
   Servers, PSTN Gateways, Soft-switches, and Session Border 
   Controllers.  
    
   Unlike Infrastructure ENUM, Private ENUM DNS database entries are 
   not registered and populated by the carrier-of-record for a given 
   E.164 number.  Instead, the private database's administrator (the 
   local carrier) directly provisions the entries for all E.164 numbers 
   it cares about, based on various indirect information data sources, 
   and sets the entry URI values relative to their specific "view".   
    
   In some cases the resolved URI still does not represent a point of 
   interconnection, such as when it is just used for Number Portability 
   or Calling Name resolution; in other cases it represents a specific 
 
 
Kaplan, et al            Expires - April 2011                 [Page 4] 
Internet-Draft           ENUM for SIP Routing             October 2011 
 
 
   interconnection point: either for the peering SBE(s) or tandem PSTN 
   Gateway(s).  The interconnection URI identifies either a host, or 
   possibly also a Trunk Group.  When Private ENUM is used for local 
   interconnection point resolution for SIP requests, it is typically 
   described as providing an "ENUM Routing" service, or as "SIP Routing 
   using ENUM", because the private DNS database represents a call 
   routing database.   
    
3. The Problem 
    
   SIP routing based on private-ENUM resolution has been gaining ground 
   in some large SIP operator networks.  However, a need has arisen to 
   respond with different ENUM responses based on the source 
   originating number or domain of the SIP request.  There are various 
   reasons for this need, a non-exhaustive list of which are itemized 
   as follows: 
    
     . It is often cheaper to route calls from local source prefix 
        numbers to other local prefixes numbers in a given region 
        directly, whereas out-of-region sources going to the same 
        destination numbers of the same carrier may be cheaper or even 
        legally required to be sent through an interexchange or transit 
        provider, or even the PSTN. 
    
     . For interconnection traffic between carriers, where calls 
        coming from a specific region or originating peer need to be 
        routed through specific routes or border elements to the 
        terminating or next-peer, usually due to billing and 
        commercially-related reasons. 
    
     . For specific destination numbers, such as premium rate numbers, 
        where calls towards these specific destination numbers need to 
        be routed based on the originating region or ingress border 
        element, to a specific destination node or a specific border 
        element towards a next-peer, usually due to operational and 
        capacity management issues. 
 
     . For Emergency Services destination numbers, where the 
        originating information may affect the chosen emergency center 
        for a call. 
 
     . To provide "near-end" or "hot-potato" routing, whereby the 
        nearest transit inter-exchange point is selected, instead of 
        the farthest point (which is "far-end" or "cold-potato" 
        routing). 
    
    


 
 
Kaplan, et al            Expires - April 2011                 [Page 5] 
Internet-Draft           ENUM for SIP Routing             October 2011 
 
 
4. The Proposed Solution 
    
   The proposed solution uses a new EDNS0 Option code, defined in 
   [draft-edns0-source-info], to add the source SIP/PSTN URI 
   information into the ENUM DNS query.  For example, the Source URI 
   could be based on the P-Asserted-Identity URI of the SIP request to 
   be routed, possibly including [RFC4904] Trunk-group parameters from 
   the received trunk group, if applicable.  This Source URI info would 
   be used by the responding DNS server to "filter" its response based 
   on the source information as appropriate. 
    
4.1. Generating the ENUM-based DNS Query with Source URI 
    
   When an ENUM client such as a SIP Proxy or PSTN Gateway generates an 
   ENUM-based DNS query following this document's mechanism, it follows 
   [RFC3761] and transforms the target E.164 number into a reverse-
   number dotted-format domain name for the DNS query key.  The domain-
   name suffix is defined by local policy, but SHOULD NOT be 
   "e164.arpa" because this mechanism is for purely private use.   
    
   The ENUM client then appends an EDNS0 OPT pseudo-RR to the query, 
   with the sender's maximum UDP length it can handle, as defined in 
   [RFC2761], as well as the EDNS0 Option-Code reserved by [draft-
   ends0-source-info].  Within the Option-Data field it encodes a SIP 
   or TEL URI, based on the source information of the received SIP 
   request or PSTN call, as defined in the next section. 
    
   If the ENUM client needs to recursively resolve the name, by issuing 
   the DNS query multiple times to different servers, it MUST add the 
   same Source URI to each repeated query. 
    
5. Source URI Details 
    
   In general, the Source URI can contain whatever the administrator 
   wishes it to, since this mechanism is defined for private use only.  
   However, to aid in multi-vendor interoperability, this section 
   provides guidance for reasonable default behavior.  Local policy MAY 
   override behavior defined in this section. 
    
   The Source URI for the EDNS0 Option data field conveys source 
   originator and transit information to the ENUM Server(s), and from a 
   logical perspective the Source URI is a brand new URI constructed by 
   the ENUM client.  In order to construct the Source URI, the client 
   SHOULD use relevant information from the received SIP or PSTN 
   message fields, as described next. 
    
   If the ENUM client received a SIP request which triggered the ENUM 
   query, and the SIP request contained a P-Asserted-Identity header 
   value that it trusts to be accurate, the Source URI SHOULD be based 
 
 
Kaplan, et al            Expires - April 2011                 [Page 6] 
Internet-Draft           ENUM for SIP Routing             October 2011 
 
 
   on the SIP or TEL URI information in the received P-Asserted-
   Identity header value.  If there was no P-Asserted-Identity header 
   value in the request, or it does not trust the URI to be accurate, 
   then the Source URI MAY be based on local policy; for example, it 
   may be a statically defined or default URI representing the peer, or 
   the policy may be to not use the Source URI mechanism in such a 
   case. 
    
   If the ENUM client received a PSTN message which triggered the ENUM 
   query, such as an IAM, the Source URI SHOULD be a TEL URI of the 
   calling party number. 
    
   The Source URI MAY contain additional information providing routing 
   number (RN) in an 'rn' parameter, and/or carrier identification code 
   (CIC) in a 'cic' parameter, as defined in [RFC4694]. Note that for a 
   SIP URI these would be user parameters, not URI parameters.  Such 
   fields would be used to identify the porting information of the 
   originating number, or the originating carrier.   
    
   Although the most common case will be that the Source URI user name 
   is a phone-number, it need not be the only case and ENUM servers 
   supporting this mechanism MUST support non-phone-number cases as 
   valid ENUM queries.  In other words, it is not a DNS protocol 
   failure to receive such a query, even though the ENUM server may not 
   have an appropriate answer for the query given such source 
   information, and thus return a DNS Not Found response (as it could 
   for phone number Source URI cases that it does not have any entries 
   for). 
    
   If the Source URI's SIP URI user name is a phone number, or it is a 
   TEL URI, the ENUM client MUST NOT encode any visual-separators (the 
   tokens named visual-separator in [RFC3966]) in it.  A Source URI as 
   a SIP URI of a phone number SHOULD contain a 'user' URI parameter of 
   the value 'phone' (i.e., a ";user=phone"); however an ENUM server 
   MAY treat any Source URI user portion as a phone number if it 
   follows the syntax of a TEL URI for such. 
    
   ENUM servers supporting this mechanism MUST ignore unknown fields in 
   the Source URI, such as unknown parameters or embedded headers. 
    
5.1. Providing Trunk Group Information in Source URI 
    
   The Source URI MAY contain trunk group and context information, 
   encoded as the "tgrp" and "trunk-context" parameters within the URI 
   per [RFC4904].  Note that for a SIP URI these would be URI user 
   parameters, not URI parameters.   
    
   By definition, trunk group names are scoped to their trunk-context, 
   and are not global in nature.  In particular, a trunk group name 
 
 
Kaplan, et al            Expires - April 2011                 [Page 7] 
Internet-Draft           ENUM for SIP Routing             October 2011 
 
 
   used by one SSP typically has no meaning to another SSP, and since 
   it defines a specific trunk of the SSP it is not usable by another 
   SSP.  In order for such information in a Source URI to be usable, it 
   needs to be what the local SSP's ENUM server can understand and have 
   policies for.  Therefore, the trunk group information SHOULD 
   identify the PSTN trunk or direct SIP peer trunk from which the 
   SIP/PSTN request was received, and not any trunk group information 
   in the received SIP request.  In other words, the trunk group 
   information conveys the local SSP's defined trunk, not what the 
   previous carrier's trunk name was.   
    
   Note that the previous carrier may be a transit carrier rather than 
   the originating carrier, and thus the trunk group information 
   conveys the transit provider not originating provider. 
    
6. Examples 
    
   The following examples are designed to show various Source URI usage 
   possibilities.  These are not the only possibilities, however. 
    
6.1. Basic SIP Scenario 
    
   In the following example, a SIP UA in the local SSP generates an 
   INVITE to Proxy-1, which performs a private ENUM query using this 
   document's mechanism. 
    
               Local 
               Domain 
          ssp.example.com 
                        +--------+ 
                        |  ENUM  | 
     +---+   +-------+ /| Server | 
     |SIP|-->|  SIP  |/ +--------+ 
     |UA |   |Proxy-1| 
     +---+   +-------+ 
    
   SIP Proxy-1 receives: 
   INVITE sip:+17815551212@ssp.example.com SIP/2.0 
   Via: SIP/2.0/UDP 192.0.10.10:5060;branch=z9hG4bK74b43 
   Max-Forwards: 69 
   To: <sip:+17815551212@ssp.example.com> 
   From: Jenny <sip:7818675309@ssp.example.com>;tag=9fxced76sl 
   Call-ID: 3848276298220188511 
   CSeq: 1 INVITE 
   Contact: <sip:jenny@192.0.1.1> 
   Content-Type: application/sdp 
   Content-Length: ... [SDP omitted from example] 
    

 
 
Kaplan, et al            Expires - April 2011                 [Page 8] 
Internet-Draft           ENUM for SIP Routing             October 2011 
 
 
   Although no P-Asserted-Identity header is received in the request, 
   Proxy-1 authenticates the UA to be authorized for the identity 
   "sip:+17818675309@ssp.example.com", and thus generates a DNS query 
   for the domain: 
       2.1.2.1.5.5.5.1.8.7.1.priv-enum.ssp.example.com 
   with an EDNS0 OPT RR with the appropriate Option-Code for Source 
   URI, and the Option-Data Source URI of: 
       sip:+17818675309@ssp.example.com;user=phone 
    
   The ENUM server looks up the query key for the domain, filters the 
   response based on the Source URI information, and returns the 
   appropriate NAPTR entries. 
    
6.2. Peering SIP Scenario 
    
   In the following example, a SIP INVITE request originates in 
   orig.example.com from a SIP UA for the destination phone number 
   +17815551212, with a P-Asserted-Identity of 
   "sip:+17818675309@orig.example.com", and reaches the local SSP's 
   Proxy-2.  Proxy-2 receives the request over trunk group "tg1-orig-
   ssp" in context "ssp.example.com". 
    
                        | 
        Originating     |         Local 
          Domain        |         Domain 
     orig.example.com   |    ssp.example.com 
                        |              +--------+ 
                        |              |  ENUM  | 
     +---+  +-------+   |   +-------+ /| Server | 
     |SIP|->|  SIP  +------>|  SIP  |/ +--------+ 
     |UA |  |Proxy-1|   |   |Proxy-2| 
     +---+  +-------+   |   +-------+ 
    
   SIP Proxy-2 receives:  
   INVITE sip:+17815551212@ssp.example.com SIP/2.0 
   Via: SIP/2.0/UDP 192.0.10.10:5060;branch=z9hG4bK74b43 
   Max-Forwards: 69 
   To: <sip:+17815551213@ssp.example.com> 
   From: Jenny <sip:7818675309@orig.example.com>;tag=9fxced76sl 
   P-Asserted-Identity: "T. Tutone" <sip:+17818675309@orig.example.com> 
   Call-ID: 3848276298220188511 
   CSeq: 1 INVITE 
   Contact: sip:jenny;tgrp=s1;trunk-context=orig.example.net@192.0.1.1 
   Content-Type: application/sdp 
   Content-Length: ... [SDP omitted from example] 
    
   Proxy-2 generates a DNS query for the domain: 
       2.1.2.1.5.5.5.1.8.7.1.priv-enum.ssp.example.com 

 
 
Kaplan, et al            Expires - April 2011                 [Page 9] 
Internet-Draft           ENUM for SIP Routing             October 2011 
 
 
   with an EDNS0 OPT RR with the appropriate Option-Code for Source 
   URI, and the Option-Data Source URI of: 
       sip:+17818675309;tgrp=tg1-orig-ssp; 
           trunk-context=ssp.example.com@orig.example.com;user=phone 
    
   Note that although the received Contact URI contains trunk group 
   information, this is not what Proxy-2 inserts in the Source URI, 
   since it identifies Proxy-1's trunk info instead of Proxy-2's. 
    
6.3. Transit SIP Scenario 
    
   In the following example, a SIP INVITE request originates in 
   orig.example.com from a SIP UA for the destination phone number 
   +17815551212, with a P-Asserted-Identity of 
   "sip:+17818675309@orig.example.com", goes through a transit carrier 
   trans.example.net, and reaches the local SSP's Proxy-3.  Proxy-3 
   receives the request over trunk "tg1-strans-ssp" in context 
   "ssp.example"com". 
    
                        |                 | 
        Originating     |     Transit     |         Local 
          Domain        |     Domain      |         Domain 
     orig.example.com   |trans.example.net|    ssp.example.com 
                        |                 |              +--------+ 
                        |                 |              |  ENUM  | 
     +---+  +-------+   |    +-------+    |   +-------+ /| Server | 
     |SIP|->|  SIP  +------->|  SIP  +------->|  SIP  |/ +--------+ 
     |UA |  |Proxy-1|   |    |Proxy-2|    |   |Proxy-3| 
     +---+  +-------+   |    +-------+    |   +-------+ 
    
   SIP Proxy-3 receives:  
   INVITE sip:+17815551212@ssp.example.com SIP/2.0 
   Via: SIP/2.0/UDP 192.0.10.10:5060;branch=z9hG4bK74b43 
   Max-Forwards: 69 
   To: <sip:+17815551213@ssp.example.com> 
   From: Jenny <sip:7818675309@orig.example.com>;tag=9fxced76sl 
   P-Asserted-Identity: "T. Tutone" <sip:+17818675309@orig.example.com> 
   Call-ID: 3848276298220188511 
   CSeq: 1 INVITE 
   Contact: sip:jenny;tgrp=s1;trunk-context=trans.example.net@192.0.1.1 
   Content-Type: application/sdp 
   Content-Length: ... [SDP omitted from example] 
    
   Proxy-3 generates a DNS query for the domain: 
       2.1.2.1.5.5.5.1.8.7.1.priv-enum.ssp.example.com 
   with an EDNS0 OPT RR with the appropriate Option-Code for Source 
   URI, and the Option-Data Source URI of: 


 
 
Kaplan, et al            Expires - April 2011                [Page 10] 
Internet-Draft           ENUM for SIP Routing             October 2011 
 
 
       sip:+17818675309;tgrp=tg1-trans-ssp; 
           trunk-context=ssp.example.com@orig.example.com;user=phone 
    
   Note that although the received Contact URI contains trunk group 
   information, this is not what Proxy-3 inserts in the Source URI, 
   since it identifies Proxy-2's trunk info instead of Proxy-3's. 
    
6.4. Basic PSTN Scenario 
    
   In the following example, a PSTN Gateway in the local SSP receives 
   an IAM message, and performs a private ENUM query using this 
   document's mechanism. 
    
            Local 
            Domain 
       ssp.example.com 
                +--------+ 
                |  ENUM  | 
     +-------+ /| Server | 
     | PSTN  |/ +--------+ 
     |Gateway| 
     +-------+ 
    
   PSTN Gateway receives an IAM with a Called Party Number parameter 
   indicating the international number 17815551212, and a Calling Party 
   Number parameter indicating the international number of 17818675309, 
   over PSTN trunk "tg1-pri" in context "ssp.example.com". 
    
   The Gateway generates a DNS query for the domain: 
       2.1.2.1.5.5.5.1.8.7.1.priv-enum.ssp.example.com 
   with an EDNS0 OPT RR with the appropriate Option-Code for Source 
   URI, and the Option-Data Source URI of: 
       tel:+17818675309;tgrp=tg1-pri;trunk-context=ssp.example.com 
    
   The ENUM server looks up the query key for the domain, filters the 
   response based on the Source URI information, and returns the 
   appropriate NAPTR entries. 
    
7. Security Considerations 
    
   Conveying source information in DNS queries exposes the source 
   information to eavesdropping and modification by intermediaries.  
   Furthermore, DNS has no default authorization nor authentication 
   mechanism for client queries, and thus any device can issue such 
   queries, using any source information it wishes to generate.  
   Therefore, the mechanism described in this document MUST only be 
   used in controlled, restricted environments.  It is not appropriate 
   for the general Internet, and will not function correctly with 
   public Internet DNS servers. 
 
 
Kaplan, et al            Expires - April 2011                [Page 11] 
Internet-Draft           ENUM for SIP Routing             October 2011 
 
 
    
8.   IANA Considerations 
    
   This document makes no request of IANA. 
    
9.   Acknowledgments 
    
   Thanks to Tom Creighton (Comcast), James Yu (Neustar), Nick Russell 
   (Vodafone), and Timothy Dwight (Verizon) for their feedback and 
   support.  Funding for the RFC Editor function is provided by the 
   IETF Administrative Support Activity (IASA). 
 
10.  References 
    
10.1.     Normative References 
 
   [RFC2761]  Vixie, P., "Extension Mechanisms for DNS (EDNS0)", RFC 
   2671, August 1999. 
    
   [RFC3261]  Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, 
   A., Peterson, J., Sparks, R., Handley, M., and E. Schooler, "SIP: 
   Session Initiation Protocol", RFC 3261, June 2002. 
     
   [RFC3761]  Faltstrom, P., Mealling, M., "The E.164 to Uniform 
   Resource Identifiers (URI) Dynamic Delegation Discovery System 
   (DDDS) Application (ENUM)", RFC 3761, April 2004. 
     
   [RFC3966] Schulzrinne, H., "The tel URI for Telephone Numbers", RFC 
   3966, December 2004. 
 
10.2.     Informative References 
 
   [RFC4904] Gurbani, V., Jennings, C., "Representing Trunk Groups in 
   tel/sip Uniform Resource Identifiers (URIs)", RFC 4904, June 2007. 
    
   [RFC4694] Yu, J., "Number Portability Parameters for the 'tel' URI", 
   RFC 4694, October 2006. 
    
   [RFC5486] Malas, D., Meyer, D., "Session Peering for Multimedia 
   Interconnect (SPEERMINT) Terminology", RFC 5486, March 2009. 
    
   [draft-edns0-source-info] Kaplan, H., Walter, R., Gorman, P., 
   Maharishi, M., "EDNS Option Code for SIP and PSTN Source Reference 
   Info", draft-kaplan-dnsext-enum-sip-source-ref-opt-code-02, March 
   2011. 




 
 
Kaplan, et al            Expires - April 2011                [Page 12] 
Internet-Draft           ENUM for SIP Routing             October 2011 
 
 
 
Authors' Addresses
    
   Hadriel Kaplan
   Acme Packet
   Email: hkaplan@acmepacket.com
 
   Colin Pons
   KPN
   Email: colin.pons@kpn.com
    
   Pierce Gorman
   Sprint Nextel Corporation
   Email: sprint.gorman@sprint.com

Appendix A.    Why ENUM-DNS vs. Other Protocols  
 
   A common question raised in the IETF regarding using DNS for SIP 
   routing is why use DNS to begin with, instead of another database 
   query protocol or even SIP itself (through SIP redirect servers).  
   In the authors' opinions, the following are the major advantages of 
   DNS which are driving the market for Private-ENUM: 
     1. Performance - DNS queries and responses are single-transaction, 
        compact size, efficiently parsed, and can be used over a 
        connectionless transport (UDP).  Compared to SIP Redirect and 
        other protocols, the performance gains can be drastic. 
     2. Scalability - DNS has an underlying database scalability model 
        built into the protocol itself, and taken advantage of by 
        ENUM's naming scheme, which does not natively exist in other 
        database protocols nor for SIP Redirect 
     3. Resiliency - since DNS uses a single request-response 
        transaction model and runs over UDP, it can be deployed using 
        an anycast addressing model 
     4. Interoperability - DNS is a simple, well-understood protocol 
        with significant maturity and developer experience 
     5. Time-to-market - most SIP devices and PSTN gateways already 
        have DNS libraries, and can leverage them for ENUM use fairly 
        quickly 
    
Appendix B.    Alternative Solutions 
    
   Today such source-based routing with ENUM is performed through 
   various means, which are usually cumbersome and error-prone.  These 
   mechanisms typically require the Private ENUM clients and servers to 
   agree on a common scheme, and thus require every SIP Proxy to know 
   and use the same proprietary scheme, which leads to interoperability 
   problems when multiple vendors are used. 
    

 
 
Kaplan, et al            Expires - April 2011                [Page 13] 
Internet-Draft           ENUM for SIP Routing             October 2011 
 
 
   A common example is where the SIP Proxies performing the lookup 
   change the ENUM base domain name suffix based on the source E.164 
   number leading digits, and thus the ENUM-DNS servers have a separate 
   zone per source prefix.  Such a scheme needs to be fixed and common; 
   for example that a 7-digit prefix length always be used for the name 
   suffix, instead of for only specific source or destination numbers; 
   the relevant source prefix cannot be a different length for 
   different numbers, prefixes, or call flows. 
    
   Another example is where the ENUM server returns all possible NAPTR 
   entries in the DNS response, with proprietary indicators in the 
   NAPTR URIs for the client SIP Proxy to choose from, using the SIP 
   source information it has.  The problem with this approach is that 
   the same selection algorithm needs to be supported by all clients, 
   and the DNS response size can grow very, very large.  For example, 
   some routing tables in North America need to have entries for 
   hundreds of source North American Numbering Plan (NANP) area codes 
   and local-exchange prefixes, for the same destination number.  
    






























 
 
Kaplan, et al            Expires - April 2011                [Page 14]