IPTEL Working Group James Yu Internet Draft NeuStar, Inc. Expires: September 18, 2004 March 18, 2004 New Parameters for the "tel" URI to Support Number Portability <draft-ietf-iptel-tel-np-00.txt> 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. Copyright Notice Copyright (C) The Internet Society (2004). All rights reserved. ABSTRACT This document defines several new parameters in the "tel" Uniform Resource Locator (URL) to support number portability (NP) for geographical telephone numbers and freephone numbers. The rn parameter carries the routing number for a ported geographical telephone number. The presence of the npdi parameter indicates that NP database dip has been performed on a geographical telephone number. The cic parameter identifies the freephone service provider for a freephone number. James Yu Expired September 18, 2004 [Page 1]
New Parameters for the tel URI to Support March 18, 2004 Number Portability 1. Introduction Number portability (NP)[1] allows the telephony subscribers to keep their telephone numbers when they change service provider (service provider portability), move to a new location (location portability), or change the subscribed services (service portability). The NP implementations in many countries presently support service provider portability for geographic telephone numbers and freephone numbers (e.g., 800 numbers in the North America). It has been identified that NP has impacts on several works-in-progress at the IETF. One impact is the need to carry the NP-related information in the tel URI[2] for protocols such as the Session Initiation Protocol (SIP)[3] and H.323[4] after the NP database dip has been performed. Another impact is for a Voice over IP (VoIP) server to use the NP-related information in a received tel URI to determine routing. A routing number is associated with a geographical telephone number that has been ported out from a donor carrier to another carrier. A donor carrier is the initial carrier where a geographical telephone number was located before ever being ported. A non- ported geographical telephone number does not have any routing number associated with it because the first N digits of the geographical telephone number can be used for routing. A routing number can also be used to indicate the switch or network node that originates a call or service similar to the Jurisdiction Information Parameter in Signaling System Number 7 (SS7) Integrated Services Digital Network User Part (ISUP). The NP database dip indicator is used to inform the downstream servers or switches during call set up that there is no need to perform the NP database dip for a geographical telephone number again. A Carrier Identification Code (CIC) identifies the current freephone service provider for a freephone number. This parameter can be used to carry the pre-subscribed or dialed long distance carrier information; however, that is outside the scope of this document. This document defines several new parameters in the "tel" Uniform Resource Locator (URL)[2] to support NP. Section 2 lists the abbreviations used in this document. Section 3 provides the syntax definition. Section 4 describes the rules for a network node that deals with some or all of the defined parameters in a tel URI. Section 5 provides a few examples to show how those defined parameters are added to a tel URI after retrieving NP-related information from the NP database. 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 RFC2119[5]. James Yu Expired on September 18, 2004 [Page 2]
New Parameters for the tel URI to Support March 18, 2004 Number Portability 2. Abbreviations ANSI American National Standards Institute CIC Carrier Identification Code (also cic) CIP Carrier Identification Parameter FCI Forward Call Indicator GAP Generic Address Parameter IC Identification Code IP Internet Protocol IETF Internet Engineering Task Force IP Internet Protocol ISUP Integrated Services Digital Network User Part JIP Jurisdiction Information Parameter NP Number Portability NPDB Number Portability Database npdi NP database dip indicator rn Routing Number PSTN Public Switched Telephone Network PNTI Ported Number Translation Indicator SIP Session Initiation Protocol SS7 Signaling System Number 7 URL Uniform Resource Locator VoIP Voice over IP 3. Syntax Definition The parameters defined for the tel URI to support NP has the following syntax: rn = *1(routing-number) npdi = *1(npdb-dip-indicator) cic = *1(carrier-id-code) routing-number = "rn=" global-rn / local-rn global-rn = "+" 1*phonedigit-hex local-rn = 1*phonedigit-hex rn-context rn-context = ;rn-context= rn-descriptor rn-descriptor = domainname / global-hex-digits global-hex-digits = "+" 1*3(phonedigit) *phonedigit-hex npdi-dip-indicator = "npdi" carrier-id-code = "cic=" global-cic / local-cic global-cic = "+" 1*phonedigit-hex local-cic = 1*phonedigit-hex cic-context cic-context = ;cic-context= rn-descriptor The routing-number, npdb-dip-indicator or carrier-id-code each can appear in the tel URI at most once. For a global-rn, the routing number information after + MUST begin with a valid E.164[6] country code. James Yu Expired on September 18, 2004 [Page 3]
New Parameters for the tel URI to Support March 18, 2004 Number Portability For a local-rn, the routing number in the rn parameter MUST be meaningful in terms of rn-context. For example, if a national routing number is in the rn parameter, the rn-context MUST contain a valid E.164 country code after + if it is in the global-hex-digits format. For a global-cic, the CIC information after + MUST begin with a valid E.164 country code. For a local-cic, the CIC value in the cic parameter MUST be meaningful in terms of cic-context. For example, if the national CIC value is in the cic parameter, the cic-context SHALL contain a valid E.164 country code after +if it is in the global-hex-digits format. 4. Normative Rules This section discusses how a network node handles a received tel URI that contains one or more of the defined parameters or has accessed an NP database for a freephone number or geographical telephone number and needs to adds some of the defined parameters to a tel URI. In countries where there is no freephone number portability or geographical telephone number portability, the call routing can be based on the leading digits of the freephone number or geographical telephone number. This document does not describe those scenarios. Please note that two accesses to the freephone databases are normally done for routing a call to a freephone number. The first one is done by the originating network that queries a freephone database for the CIC information so that the call can be routed to the serving freephone service provider of the called freephone number. When the call reaches the serving freephone provider, the second database access is performed to map the freephone number to a geographical telephone number and/or internal routing information. This document does not address the case where internal routing information is returned. The first freephone database contains the CIC information for all the active freephone numbers while the second one usually contains mapping information only for those freephone numbers served by a freephone service provider. Because the originating carrier may provide freephone service, its freephone database would contain the CIC information for all the active freephone numbers plus the mapping information for those freephone numbers it serves. This document refers the two database accesses as the first freephone database access and the second freephone database access. James Yu Expired on September 18, 2004 [Page 4]
New Parameters for the tel URI to Support March 18, 2004 Number Portability 4.1 Handling tel URI with Defined Parameter or Parameters If the tel URI contains the npdi parameter, the network node SHALL NOT retrieve the NP-related information for geographical telephone numbers even if it is set to do so. If the tel URI contains the cic parameter whose CIC value is different from the one this network node is associated with, this network node SHALL NOT retrieve the NP-related information for the geographical telephone number or perform the first freephone database access for the freephone number in the tel URI. For the cic and rn parameters and either a freephone number or geographical telephone number, the order of processing is to look for the cic parameter first for call routing. If the CIC information is not useful or the cic parameter does not exist, then the next step is to look for the rn parameter. If the information in the rn parameter is not useful or the rn parameter does not exist, then the freephone number or geographical telephone number is used. When looking for the cic parameter and that parameter exists in the tel URI: - The network node SHALL ignore the cic parameter if it identifies a carrier or service provider associated with that node, or if that parameter contains a code for indicating that a geographic number is supplied (e.g., +1-0110 means local, translated geographical telephone number provided). The network node SHALL remove the cic parameter and look for the rn parameter for making the routing decision. - Otherwise, the network node SHALL make the routing decision based on the CIC. The network node SHALL NOT remove the cic parameter unless it is handing over the call to the carrier or service provider identified by the CIC and the local policies require it to remove the cic parameter. How the call is actually routed based on the CIC value in the cic parameter is outside the scope of this document. When looking for the rn parameter and that parameter exists in the tel URI: - The network node SHALL ignore the rn parameter if the routing number points to this network node or a network this network node is in (e.g., in some countries the routing number gets the call to the serving carrier network where another NP database access is required to locate the serving switch), this network node SHALL remove the rn parameter and look for the freephone number or geographical telephone number for making the routing decision. - Otherwise, the network node SHALL make the routing decision based on the routing number in the rn parameter. How the call is James Yu Expired on September 18, 2004 [Page 5]
New Parameters for the tel URI to Support March 18, 2004 Number Portability actually routed based on the routing number in the rn parameter is outside the scope of this document. When the cic or rn parameter is not used for routing, the network node uses the freephone number or geographical telephone number for making routing decision. It may access the NP database if it is set to do so or may route the call to a designated network node that will access the NP database or may route the call based on the local routing table. How the call is handled at this stage is outside the scope of this document. See Section 4.2 for rules in adding the defined parameter or parameters to the tel URI if the network node is set to access the NP database. 4.2 Adding Defined Parameter or Parameters to the tel URI There are two cases in terms of NP database access. One is for a geographical telephone number and the other is for a freephone number. They are discussed in Sections 4.2.1 and 4.2.2 for a tel URI that is used for routing. Section 4.2.3 discusses a special case where the rn parameter is added to a tel URI that is associated with the first network node that handles the call request from the caller. Section 4.3.4 discusses the addition of the defined parameter or parameters to the tel URI due to protocol conversion. 4.2.1 Retrieving NP-related information for a geographical telephone number When a network node accesses an NP database for a geographical telephone number: - If the network node retrieves a routing number, it SHALL add the rn parameter to the tel URI to carry the routing number information in the global-rn or local-rn format and SHALL add the npdi parameter. - If the network node does not retrieve a routing number (e.g., for a non-ported geographical telephone number), it SHALL add the npdi parameter to the tel URI. The network node SHALL follow the rules described in Section 4.1 for using the information in the tel URI to make the routing decision. 4.2.2 Retrieving NP-related information for a freephone number When a network node performs the first or second freephone database access for a freephone number: James Yu Expired on September 18, 2004 [Page 6]
New Parameters for the tel URI to Support March 18, 2004 Number Portability - If the network node retrieves a CIC that identifies a carrier or service provider associated with that network node, or indicates that a geographic number is supplied (e.g., +1-0110 means local, translated geographical telephone number provided), it would have retrieved a geographical telephone number. The network node SHALL NOT add the cic parameter and SHALL replace the freephone number in the tel URI with the retrieved geographical telephone number in either the global-number or local-number format. Some freephone databases may not return the geographical telephone number but internal routing information in a proprietary format (e.g., switch ID and trunk group ID). That case is outside the scope of this document. - If the network node retrieves a CIC that belongs to another freephone service provider, the network node SHALL add the cic parameter to the tel URI that contains the CIC in the global- cic or local-cic format. The originating carrier may have business agreements with a freephone service provider to return the geographical telephone number in addition to the CIC. When a geographical telephone number is returned, the network node SHALL replace the freephone number in the tel URI with the returned geographical telephone number in either the global-number or local-number format. - If the network node retrieves a geographical telephone number that is the typical case for the second freephone database access, the network node SHALL replace the freephone number in the tel URI with the retrieved geographical telephone number in either the global-number or local-number format. When a geographical telephone number is returned in the response, it is possible that the NP-related information for that geographical telephone number could also be returned. In that case, the network node SHALL add the npdi parameter and SHALL add the rn parameter to contain the routing number in either the global-rn or local-rn format only when the routing number is available. The network node SHALL follow the rules described in Section 4.1 for using the information in the tel URI to make the routing decision. 4.2.3 Adding location information about the caller In SS7 ISUP, the JIP identifies the switch that originates the call and the information in it may be used by the serving carrier to determine the call charge to the caller or by the involved carriers to determine the settlement amount between them. James Yu Expired on September 18, 2004 [Page 7]
New Parameters for the tel URI to Support March 18, 2004 Number Portability A network node that is the first to handle the call request from the caller MAY include the rn parameter to the tel URI associated with the caller, if one exists. 4.2.4 Adding the defined parameter or parameters due to protocol conversion A Public Switched Telephone Network (PSTN) gateway needs to convert between SS7 ISUP and the VoIP protocol such as SIP or H.323. This type of network node SHALL add the corresponding information from the ISUP to the defined parameters to the tel URI for routing and the tel URI associated with the caller and vice versa. Since ISUP support for NP depends on the supporting country, the following discussion applies to a situation when a network node is to map the NP information in the American National Standards Institute (ANSI) ISUP to the NP-related parameters in the tel URI. For a ported geographical telephone number, the network node SHALL convert the routing number in the ISUP Called Party Number parameter to a routing number in either the global-rn or local- rn format and carry it in the "rn" parameter for a tel URI that is used for routing. The network node SHALL convert the phone number that is marked as the "ported number" in the ISUP Generic Address Parameter (GAP) to a phone number in either the global- number or local-number format[2] and put it after "tel:" in the tel URI that is used for routing. For a non-ported geographical telephone number, the network node SHALL convert the phone number in the ISUP Called Party Number parameter to a phone number in either the global-number or local-number format and put it after "tel:" in the tel URI that is used for routing. No rn will appear in the tel URI. The network node SHALL include the npdi parameter in the tel URI that is used for routing when the Ported Number Translation Indicator (PNTI) bit in the Forward Call Indicator (FCI) parameter is set to "1." The network node SHALL include the "cic" parameter in either the global-cic or local-cic format in the tel URI that is used for routing when the ISUP Carrier Identification Parameter (CIP) is present. The network node SHALL include the rn parameter in the tel URI associated with the caller information when the ISUP JIP is present. Mapping NP-related parameters in a tel URI to the NP-related information in the ISUP message depends on the national ISUP implementation and is outside the scope of this document. James Yu Expired on September 18, 2004 [Page 8]
New Parameters for the tel URI to Support March 18, 2004 Number Portability 5. Examples A. A tel URI, tel:+1-800-123-4567, contains a freephone number +1-800-123-4567. Assume that this freephone number is served by a freephone service provide with a CIC +1-6789. After retrieving the NP-related information, the tel URI would be set to tel:+1-800-123-4567;cic=+1-6789 B. A tel URI, tel:+1-800-123-4567;cic=+1-6789, is handled by a network node in the serving freephone service providers network. Assume that the freephone number is mapped to a geographical telephone number +1-202-533-1234. After retrieving the NP-related information, the tel URI would be set to tel:+1-202-533-1234 C. A tel URI, tel:+1-202-533-1234, contains a geographical telephone number +1-202-533-1234. Assume that this geographical telephone number is ported and is associated with a routing number 1-202-544-0000. After retrieving the NP- related information, the tel URI would be set to tel:+1-202-533-1234;rn=+1-202-544-0000;npdi D. A tel URI, tel:+1-202-533-6789, contains a geographical telephone number +1-202-533-6789. Assume that this geographical telephone number is not ported. After accessing the NP database, the tel URI would be set to tel:+1-202-533-6789;npdi 6. Security Considerations In addition to those security implications discussed in the revised tel URI[2], there are new security implications associated with the defined parameters. If the value of the rn or cic in the tel URI is changed illegally when the signaling message carrying the tel URI is en route to the destination entity, the signaling message or call may be routed to the wrong network or network node causing the call setup to be rejected. If the npdi is illegally inserted into the tel URI when the signaling message carrying the tel URI is en route to the destination entity, the call may be routed to the wrong network or network node causing the call setup to be rejected. It is less a problem if the npdi is illegally removed. An additional NPDB James Yu Expired on September 18, 2004 [Page 9]
New Parameters for the tel URI to Support March 18, 2004 Number Portability query may be performed to retrieve the routing number information and have the npdi included again. Protocols carrying the tel URI MAY need to ensure message integrity during the message transfer between two communicating network nodes so as to detect any unauthorized changes to the content of the tel URI and other information. 7. IANA Considerations The fourteen parameters defined in this document are to be registered with IANA as the new parameters to the tel URI[2]. 1. Parameter name rn Applicability used to carry a routing number Mandatory or optional optional Restrictions on syntax see Section 3 Reference to a specification defined in this document 2. Parameter name npdi Applicability its presence indicates that NPDB dip for a geographical telephone number has been performed Mandatory or optional optional Restrictions on syntax see Section 3 Reference to a specification defined in this document 3. Parameter name cic Applicability used to carry a Carrier ID Code Mandatory or optional optional Restrictions on syntax see Section 3 Reference to a specification defined in this document 4. Parameter name routing-number Applicability used to carry a routing number Mandatory or optional optional Restrictions on syntax see Section 3 Reference to a specification defined in this document 5. Parameter name global-rn Applicability used to carry an international routing number with a leading + Mandatory or optional optional Restrictions on syntax see Section 3 Reference to a specification defined in this document James Yu Expired on September 18, 2004 [Page 10]
New Parameters for the tel URI to Support March 18, 2004 Number Portability 6. Parameter name local-rn Applicability used to carry a routing number in the format defined by rn-context Mandatory or optional optional Restrictions on syntax see Section 3 Reference to a specification defined in this document 7. Parameter name rn-context Applicability used to define a routing number in the local- rn format Mandatory or optional optional Restrictions on syntax see Section 3 Reference to a specification defined in this document 8. Parameter name rn-descriptor Applicability used to define a number in the local-rn format or other applicable formats such as the local-cic format Mandatory or optional optional Restrictions on syntax see Section 3 Reference to a specification defined in this document 9. Parameter name global-hex-digits Applicability used to define an international number with a leading + where hex-decimal digit is allowed after a valid E.164 country code Mandatory or optional optional Restrictions on syntax see Section 3 Reference to a specification defined in this document 10. Parameter name npdi-dip-indicator Applicability its presence indicates that NPDB dip for a geographical telephone number has been performed Mandatory or optional optional Restrictions on syntax see Section 3 Reference to a specification defined in this document 11. Parameter name carrier-id-code Applicability used to carry a Carrier ID Code Mandatory or optional optional Restrictions on syntax see Section 3 Reference to a specification defined in this document 12. Parameter name global-cic Applicability used to carry a Carrier ID Code with a leading + Mandatory or optional optional Restrictions on syntax see Section 3 James Yu Expired on September 18, 2004 [Page 11]
New Parameters for the tel URI to Support March 18, 2004 Number Portability Reference to a specification defined in this document 13. Parameter name local-cic Applicability used to carry a Carrier ID Code in the format described by cic-context Mandatory or optional optional Restrictions on syntax see Section 3 Reference to a specification defined in this document 14. Parameter name cic-context Applicability used to define a Carrier ID Code in the local- cic format Mandatory or optional optional Restrictions on syntax see Section 3 Reference to a specification defined in this document 8. Normative References [1] M. Foster, T. McGarry and J. Yu, RFC3482, "Number Portability in the GSTN: An Overview," February 2003. [2] H. Schulzrinne and A. Vaha-Sipila, "The tel URI for Telephone Calls," draft-ietf-iptel-rfc2806bis-04.txt, February 15, 2004. [3] J. Rosenberg, et al., RFC3261, "SIP: Session Initiation Protocol," June 2002. [4] ITU-T Recommendation H.323, "Packet-Based Multimedia Communications Systems," November 2000. [5] Scott Bradner, RFC2119," Key words for use in RFCs to Indicate Requirement Levels," March 1997. [6] ITU-T Recommendation E.164, "The international public telecommunication numbering plan," May 1997. 9. Acknowledgements The author would like to thank Penn Pfautz, Jon Peterson, Jonathan Rosenberg, Henning Schulzrinne, Antti Vaha-Sipila, Flemming Andreasen and Mike Hammer for their discussions and comments. James Yu Expired on September 18, 2004 [Page 12]
New Parameters for the tel URI to Support March 18, 2004 Number Portability 10. Author's Address James Yu NeuStar, Inc. 46000 Center Oak Plaza Sterling, VA 20166 U.S.A. Phone: +1-571-434-5572 Email: james.yu@neustar.biz Full Copyright Statement "Copyright (C) The Internet Society (2004). 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. James Yu Expired on September 18, 2004 [Page 13]