RFC 4769
IANA Registration for an Enumservice Containing Public Switched Telephone Network (PSTN) Signaling Information
Okay bestie, RFC 4769 πβ¨
Title: IANA Registration for an Enumservice Containing Public Switched Telephone Network (PSTN) Signaling Information π
Authors: J. Livingood (Comcast Cable Communications) and R. Shockey (NeuStar) π
Category: Standards Track, which means it's an official Internet standards track protocol π₯
Date: November 2006 π
Obsoletes / Updates: The title block doesn't list anything this RFC obsoletes or updates π¦
Status of This Memo β¨
This document specifies an Internet standards track protocol for the Internet community, and it requests discussion and suggestions for improvements. For the standardization state and status of this protocol, check the current edition of the "Internet Official Protocol Standards" (STD 1). Distribution of this memo is unlimited πΈ
Copyright Notice π
Copyright (C) The IETF Trust (2006).
Abstract π
Okay so this document registers the Enumservice type "pstn" with the subtype "tel", using the URI scheme 'tel'. It also registers the subtype "sip", using the URI scheme 'sip'. It does all of this through the IANA registration process defined in the ENUM specification, RFC 3761 π§ The whole point is to help route phone calls in countries where number portability exists π±
Table of Contents π
1. Introduction ....................................................3
2. Distribution of Data ............................................4
3. ENUM Service Registration for PSTN ..............................5
3.1. ENUM Service Registration for PSTN with Subtype "tel" ......5
3.2. ENUM Service Registration for PSTN with Subtype "sip" ......5
4. Examples ........................................................6
4.1. Example of a Ported Number, Using a 'tel' URI Scheme .......6
4.2. Example of a Ported Number, Using a 'sip' URI Scheme .......6
4.3. Example of a Non-Ported Number, Using a 'tel' URI Scheme ...7
4.4. Example of a Non-Ported Number, Using a 'sip' URI Scheme ...7
4.5. Example Using a Regular Expression .........................7
5. Implementation Recommendations ..................................7
5.1. Call Processing When Multiple Records Are Returned .........7
5.2. NAPTR Configuration issues .................................8
6. Examples of E2U+pstn in Call Processing .........................8
6.1. Dialed Number Not Available On-Net .........................8
6.2. Dialed Number Available On-Net and on the PSTN .............9
7. Security Considerations .........................................9
8. IANA Considerations ............................................10
9. Acknowledgements ...............................................10
10. References ....................................................10
10.1. Normative References .....................................10
10.2. Informative References ...................................11
1. Introduction π§
Let's start with ENUM (E.164 Number Mapping, RFC 3761 [1]). It's a technology that turns E.164 numbers into domain names. E.164 numbers come from The International Public Telecommunication Numbering Plan, ITU-T Recommendation E.164 [2]. ENUM then uses DNS (Domain Name System, RFC 1034 [3]) delegation through NS records and NAPTR records. The NAPTR part comes from Dynamic Delegation Discovery System (DDDS) Part Three: The Domain Name System (DNS) Database, RFC 3403 [4]. Together these let you look up which services are available for a specific domain name π
This document registers Enumservices according to the guidelines in RFC 3761 [1]. They're used for provisioning in the services field of a NAPTR [4] resource record, to show what kinds of functionality go with an endpoint and/or telephone number π The registration lives inside the DDDS hierarchy (Dynamic Delegation Discovery System [4][5][6][7][8]), and it's meant for the "E2U" DDDS Application defined in RFC 3761 β¨
Number Portability lets phone subscribers keep their numbers when they switch service providers, move somewhere new, or change the services they subscribe to [14]. In lots of countries, like the United States and Canada, the naming and addressing functions on the Public Switched Telephone Network (PSTN) have been abstracted. With a ported number, the dialed number can't be routed directly on the PSTN. It has to be translated into a routing number before the call can complete π Other numbers aren't ported, and they can be routed straight on the PSTN based on the dialed number. Those are usually given out to carriers and other entities in big blocks or pools. Number Portability and other numbering information get distributed in all sorts of ways and formats around the world π
These Enumservices could let service providers put ported numbers, pooled numbers, and blocks of numbers, along with their PSTN contact information, into externally available or highly locally cached ENUM databases. Then those parties could combine all their telephone number lookups into one single ENUM lookup. That makes call routing and network operations way simpler, and the answer you get back is either an on-net (IP-based) response or an off-net (PSTN-based) response π₯
This document registers one Enumservice, "pstn". It indicates PSTN routing data. That includes number portability data, non-ported telephone number data (individually or in number blocks), and other PSTN-oriented data tied to E.164 telephone numbers. Its purpose is to give routing info for telephone numbers that don't designate an endpoint on the public Internet or on a private/peered Internet Protocol (IP) network. So these are numbers that are only routable over the traditional PSTN, even when the call starts on an IP network π The URIs returned by this service may use the TEL URI parameters defined in RFC 4694 [10], and implementations must be prepared to accept them π«Ά
RFC 3761 says a "type" and a "subtype" may be specified for a service. In this set of specs, the convention is that the "type" (the more generic term) defines the service, and the "subtype" defines the URI scheme π¦
When only one URI scheme is associated with a given service, you should assume that another URI scheme might get added to that service later on. That's why the subtype is needed: it identifies the specific Enumservice you mean π
2. Distribution of Data πΈ
The distribution of number portability data is often highly restricted, either by contract or by regulation from a National Regulatory Authority (NRA). So the NAPTR records specified here may or may not be part of the e164.arpa DNS tree π
The authors think it's more likely these records will get distributed on a purely private basis. This NAPTR data could be distributed (a) privately, either inside a service provider's internal network or between one or more parties using a variety of security mechanisms to block general public access, (b) openly available, or (c) distributed by the relevant number portability organization or another industry organization. Option (c) might happen on a national basis and be subject to, or follow, national regulatory policy π
If this data were distributed nationally, the national telephone numbering authority, or some other regulatory body or numbering organization, may have jurisdiction. Such a body may choose to restrict distribution so the data can't pass over that country's national borders π
3. ENUM Service Registration for PSTN π
3.1. ENUM Service Registration for PSTN with Subtype "tel" π
Enumservice Name: "pstn"
Enumservice Type: "pstn"
Enumservice Subtype: "tel"
URI Scheme: 'tel:'
Functional Specification:
These Enumservices say the remote resource identified can be addressed by the associated URI scheme to start a telecommunication session. That session may include two-way voice or other communications, over the PSTN. These URIs may contain number portability data as specified in RFC 4694 [10] π
Security Considerations: See Section 7. π
Intended Usage: COMMON
Authors:
Jason Livingood (jason_livingood@cable.comcast.com) Richard Shockey (richard.shockey@neustar.biz)
Any other information the author deems interesting:
A Number Portability Dip Indicator (npdi) should be used in practice (see examples below in Section 4) β¨
3.2. ENUM Service Registration for PSTN with Subtype "sip" π¦
Enumservice Name: "pstn"
Enumservice Type: "pstn"
Enumservice Subtype: "sip"
URI Scheme: 'sip:'
Functional Specification:
These Enumservices say the remote resource identified can be addressed by the associated URI scheme to start a telecommunication session. That session may include two-way voice or other communications, over the PSTN π
Security Considerations: See Section 7. π
Intended Usage: COMMON
Authors:
Jason Livingood (jason_livingood@cable.comcast.com) Richard Shockey (richard.shockey@neustar.biz)
Any other information the author deems interesting:
A Number Portability Dip Indicator (npdi) should be used in practice (see examples below in Section 4) π§
4. Examples π
The following subsections document several examples for illustrative purposes. These examples shall in no way limit the various forms this Enumservice may take π
4.1. Example of a Ported Number, Using a 'tel' URI Scheme π±
$ORIGIN 3.2.1.0.5.5.5.5.1.2.1.e164.arpa.
NAPTR 10 100 "u" "E2U+pstn:tel"
"!^.*$!tel:+1-215-555-0123;npdi;rn=+1-215-555-0199!".
In this example, a Routing Number (rn) and a Number Portability Dip Indicator (npdi) are used, as shown in RFC 4694 [10]. The npdi field is included to prevent later lookups in legacy-style PSTN databases πΈ
4.2. Example of a Ported Number, Using a 'sip' URI Scheme π¦
$ORIGIN 3.2.1.0.5.5.5.5.1.2.1.e164.arpa.
NAPTR 10 100 "u" "E2U+pstn:sip"
"!^.*$!sip:+1-215-555-0123;npdi;rn=+1-215-555-0199
@gw.example.com;user=phone!".
In this example, a Routing Number (rn) and a Number Portability Dip Indicator (npdi) are used, as shown in RFC 4694 [10]. The npdi field is included to prevent later lookups in legacy-style PSTN databases. The method of converting a tel to a SIP URI is demonstrated in RFC 3261, Section 19.1.6 [11], as well as in RFC 4694, Section 6 [10] π
4.3. Example of a Non-Ported Number, Using a 'tel' URI Scheme π
$ORIGIN 3.2.1.0.5.5.5.5.1.2.1.e164.arpa.
NAPTR 10 100 "u" "E2U+pstn:tel"
"!^.*$!tel:+1-215-555-0123;npdi!".
In this example, a Number Portability Dip Indicator (npdi) is used [10]. The npdi field is included to prevent later lookups in legacy-style PSTN databases π«Ά
4.4. Example of a Non-Ported Number, Using a 'sip' URI Scheme π
$ORIGIN 3.2.1.0.5.5.5.5.1.2.1.e164.arpa.
NAPTR 10 100 "u" "E2U+pstn:sip"
"!^.*$!sip:+1-215-555-0123;npdi@gw.example.com;user=phone!".
In this example, a Number Portability Dip Indicator (npdi) is used [10]. The npdi field is included to prevent later lookups in legacy-style PSTN databases. The method of converting a tel to a SIP URI is demonstrated in RFC 3261, Section 19.1.6 [11], as well as in RFC 4694, Section 6 [10] π
4.5. Example Using a Regular Expression
okay this one is so clever π§ we use a regex so the NAPTR record gets way smaller π
$ORIGIN 3.2.1.0.5.5.5.5.1.2.1.e164.arpa.
NAPTR 10 100 "u" "E2U+pstn:tel"
"!(^.*)$!tel:\1;npdi!".
the tel URI uses "\1", which dynamically swaps in the TN plus the leading +. so for this number that's +1-215-555-0123 β¨ it's giving smart and compact π
5. Implementation Recommendations
5.1. Call Processing When Multiple Records Are Returned
okay so it's pretty likely that you'll get both E2U+sip and E2U+pstn records back for the same query π that could basically give you an on-net record and an off-net pstn record π«Ά one record gives the address on an IP network, and the other gives the address on the PSTN.
same as with any typical ENUM query on the e164.arpa tree, it's up to the app using the ENUM resolver to decide which record(s) to use and which to ignore π implementers should keep this in mind and build logic that picks the right one based on business, network, or other rules. for example, the resolver could be set up to prefer the on-net record, or run whatever other logic the application needs π₯
5.2. NAPTR Configuration issues
it's been suggested that tel URIs might be easier and more efficient to use than SIP URIs πΈ plus, tel URIs can make the NAPTR records a bit smaller. and when you're thinking about adding hundreds of millions of these records to the DNS, that difference could have a big impact on processing and storage for service providers and anyone else using this Enumservice type π
implementers might want to think about using regular expressions to shrink each individual NAPTR π§ this makes a real difference to the overall size of the database. using the example in Section 4.5, above, that works out to 11 bytes per record β¨
6. Examples of E2U+pstn in Call Processing
these examples show how a switch, proxy, or other calling application might use this Enumservice type during call initiation ππ¦
6.1. Dialed Number Not Available On-Net
when the dialed number isn't available on-net, call processing goes like this π
- a) a user connected to a calling application dials an E.164 telephone number:
+1-215-555-0123. - b) the calling application uses the dialed number to form a NAPTR record:
3.2.1.0.5.5.5.5.1.2.1.e164.arpa. - c) the DNS finds an E2U+pstn:tel record and returns a tel URI for the calling application to process:
tel:+1-215-555-0123;npdi. - d) the calling application uses routing logic to figure out which media gateway is closest to this number and routes the call appropriately π
6.2. Dialed Number Available On-Net and on the PSTN
when the dialed number is available on-net and on the PSTN, it goes like this π
- a) a user connected to a calling application dials an E.164 telephone number:
1-215-555-0123. - b) the calling application uses the dialed number to form a NAPTR record:
3.2.1.0.5.5.5.5.1.2.1.e164.arpa. - c) the DNS finds both an E2U+pstn record and an E2U+sip record, since this number happens to be on the IP network of a connected network π
- d) the calling application prioritizes the on-net record first:
sip:+1-215-555-0123;npdi@gw.example.com;user=phone. - e) the calling application sets up the SIP call to
gw.example.com. - f) if the IP call route fails for whatever reason, the calling application may be able to use the E2U+pstn record to invoke a fallback route to a media gateway that's connected to the PSTN π
7. Security Considerations
okay this section is lowkey serious so pay attention bestie π₯Ή DNS, as used by ENUM, is a global, distributed database. if anyone implementing this spec uses e164.arpa or any other publicly available domain to store PSTN Enumservice data, that info would be visible to anyone, anonymously ποΈ it's not totally different from putting a number in a phone book, BUT it makes the data way easier to get at, and there's no sign that anyone looked at it or who did π
third parties harvesting data like this is super common for building target lists for unsolicited info. so someone could totally use it to make a list for unsolicited "telemarketing" calls π΅ lots of countries have do-not-call registries or other legal or regulatory stuff to deal with this kind of abuse.
as noted earlier, carriers, service providers, and other users can simply choose not to publish this in the public e164.arpa tree π«Ά they could instead keep it in an internal ENUM routing database that only trusted parts of their network can query, like softswitches and SIP proxy servers. they could also publish it in a carrier-only branch of the E164.ARPA tree, if one gets created.
even though an E.164 telephone number doesn't seem to reveal as much identity info about a user as a name in the format sip:username@hostname or email:username@hostname, it's still publicly available. so there's still a risk of unwanted communication π±
an analysis of threats specific to ENUM's dependence on the DNS, and how DNSSEC [12] applies to that, is in RFC 3761 [1]. a thorough analysis of threats to the DNS itself is in RFC 3833 [13] π
8. IANA Considerations
this doc registers the 'pstn' Enumservice type and the subtypes "tel" and "sip" under the Enumservice registry described in the IANA considerations in RFC 3761 π§Ύ details are in Section 3 of this document π
9. Acknowledgements
the authors want to thank Lawrence Conroy, Tom Creighton, Jason Gaedtke, Jaime Jimenez, Chris Kennedy, Alexander Mayrhofer, Doug Ranalli, Jonathan Rosenberg, Bob Walter, and James Yu for their helpful discussions and detailed reviews of this doc π«Ά they also thank the IETF's ENUM Working Group for the feedback that helped refine and develop it πΈ
10. References
10.1. Normative References
- [1] Faltstrom, P. and M. Mealling, "The E.164 to Uniform Resource Identifiers (URI) Dynamic Delegation Discovery System (DDDS) Application (ENUM)", RFC 3761, April 2004.
- [2] ITU-T, "The International Public Telecommunication Number Plan", Recommendation E.164, February 2005.
- [3] Mockapetris, P., "Domain names - concepts and facilities", STD 13, RFC 1034, November 1987.
- [4] Mealling, M., "Dynamic Delegation Discovery System (DDDS) Part Three: The Domain Name System (DNS) Database", RFC 3403, October 2002.
- [5] Mealling, M., "Dynamic Delegation Discovery System (DDDS) Part One: The Comprehensive DDDS", RFC 3401, October 2002.
- [6] Mealling, M., "Dynamic Delegation Discovery System (DDDS) Part Two: The Algorithm", RFC 3402, October 2002.
- [7] Mealling, M., "Dynamic Delegation Discovery System (DDDS) Part Four: The Uniform Resource Identifiers (URI)", RFC 3404, October 2002.
- [8] Mealling, M., "Dynamic Delegation Discovery System (DDDS) Part Five: URI.ARPA Assignment Procedures", BCP 65, RFC 3405, October 2002.
- [9] Schulzrinne, H., "The tel URI for Telephone Numbers", RFC 3966, December 2004.
- [10] Yu, J., "Number Portability Parameters for the "tel" Uniform Resource Identifier", RFC 4694, October 2006.
- [11] 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.
10.2. Informative References
- [12] Arends, R., Austein, R., Larson, M., Massey, D., and S. Rose, "Protocol Modifications for the DNS Security Extensions", RFC 4035, March 2005.
- [13] Atkins, D. and R. Austein, "Threat Analysis of the Domain Name System (DNS)", RFC 3833, August 2004.
- [14] Foster, M., McGarry, T., and J. Yu, "Number Portability in the Global Switched Telephone Network (GSTN): An Overview", RFC 3482, February 2003.
Authors' Addresses
Jason Livingood
Comcast Cable Communications
1500 Market Street
Philadelphia, PA 19102
USA
Phone: +1-215-981-7813
EMail: jason_livingood@cable.comcast.com
Richard Shockey
NeuStar
46000 Center Oak Plaza
Sterling, VA 20166
USA
Phone: +1-571-434-5651
EMail: richard.shockey@neustar.biz
Full Copyright Statement
Copyright (C) The IETF Trust (2006). π
This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights.
This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST, AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM 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.
Intellectual Property
The IETF takes no position regarding the validity or scope of any Intellectual Property Rights or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; nor does it represent that it has made any independent effort to identify any such rights. Information on the procedures with respect to rights in RFC documents can be found in BCP 78 and BCP 79.
Copies of IPR disclosures made to the IETF Secretariat and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification can be obtained from the IETF on-line IPR repository at http://www.ietf.org/ipr.
The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology that may be required to implement this standard. Please address the information to the IETF at ietf-ipr@ietf.org.
Acknowledgement
Funding for the RFC Editor function is currently provided by the Internet Society. π·
π¦ where this page comes from
- ietf: rfc4769 2006-11
- π girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms