RFC 3482

Number Portability in the Global Switched Telephone Network (GSTN): An Overview

๐Ÿ“… published February 2003, from ietf

Number Portability in the GSTN: An Overview ๐Ÿ’–๐ŸŽ€

okay so bestie, this RFC is by M. Foster, T. McGarry, and J. Yu from NeuStar, Inc. ๐Ÿงš It's an Informational doc, so it's sharing info for the Internet community, not setting a standard. It came out in February 2003, and it's RFC 3482. The title block doesn't list any obsoletes or updates, so it's not replacing or changing anything else. ๐Ÿซถ

Status of This Memo โœจ

this memo gives info to the Internet community. it does NOT specify an Internet standard of any kind, so don't go treating it like one ๐Ÿ™…โ€โ™€๏ธ distribution of this memo is unlimited, so share it with everyone ๐ŸŒธ

Copyright (C) The Internet Society (2003). All Rights Reserved. ๐Ÿ’…

Abstract ๐Ÿฆ‹

okay so this doc is an overview of E.164 telephone number portability (NP) in the Global Switched Telephone Network (GSTN). NP is basically a regulatory must-have that's trying to make local phone service more competitive by letting people keep their phone number when they switch providers ๐Ÿ“žโœจ

here's the lowkey genius part: NP turns a dialed E.164 number from a hierarchical physical routing address into a virtual address. so the network has to translate the virtual one into the physical one, transparently ๐Ÿง  there are also a bunch of regulatory rules that set the parameters for NP, and most of them aren't tied to any specific network tech. so making NP behave the way those rules say, and making it work with the existing GSTN NP setups, are topics that matter a lot for lots of IP telephony work-in-progress at the IETF ๐ŸŽ€

Table of Contents ๐ŸŒˆ

   1.  Introduction .................................................  2
   2.  Abbreviations and Acronyms ...................................  4
   3.  Types of Number Portability ..................................  6
   4.  Service Provider Number Portability Schemes ..................  7
       4.1   All Call Query (ACQ) ...................................  8
       4.2   Query on Release (QoR) .................................  9
       4.3   Call Dropback .......................................... 10
       4.4   Onward Routing (OR) .................................... 11
       4.5   Comparisons of the Four Schemes ........................ 11
   5.  Database Queries in the NP Environment ....................... 13
       5.1   U.S. and Canada ........................................ 13
       5.2   Europe ................................................. 14
   6.  Call Routing in the NP Environment ........................... 15
       6.1   U.S. and Canada ........................................ 16
       6.2   Europe ................................................. 17
   7.  NP Implementations for Geographic E.164 Numbers .............. 19
   8.  Number Conservation Method Enabled By NP ..................... 22
       8.1   Block Pooling .......................................... 22
       8.2   ITN Pooling ............................................ 23
   9.  Potential Implications ....................................... 23
   10. Security Considerations ...................................... 27
   11. IANA Considerations .......................................... 27
   12. Normative References ......................................... 27
   13. Informative References ....................................... 28
   14. Acknowledgement .............................................. 29
   15. Authors' Addresses ........................................... 29
   16. Full Copyright Statement ..................................... 30

1. Introduction ๐Ÿ’ซ

okay so this doc is an overview of E.164 telephone number [E164] portability in the GSTN ๐Ÿ“ฑ there are considered to be three types of number portability (NP): service provider number portability (SPNP), location portability (which is NOT the same as terminal mobility, so don't mix them up ๐Ÿ™ˆ), and service portability ๐Ÿฆ‹

SPNP is the star of this doc ๐ŸŒŸ it's a regulatory must-have in lots of countries that are trying to make telephony service more competitive, especially local service. historically, local phone service (compared to long distance or international) got treated like a utility ๐Ÿ  a bunch of countries had already started liberalizing it (privatization, de-regulation, or re-regulation) years ago, but NP itself is pretty recent, showing up around 1995 ๐Ÿ“…

E.164 numbers can be non-geographic or geographic ๐Ÿ—บ๏ธ non-geographic numbers don't reveal location info. geographic E.164 numbers were deliberately designed as hierarchical routing addresses, so you could digit-analyze them to figure out the country, the serving network provider, the serving end-office switch, and the specific line of the called party ๐Ÿงฉ so without NP, a subscriber who wanted to switch providers would end up with a new number, because they'd be served off a different end-office switch run by the new provider. that cost and hassle is seen as a barrier to competition ๐Ÿ˜ค which is why NP got tied up with GSTN infrastructure upgrades that are driven by regulatory directives ๐Ÿ’…

forms of SPNP are deployed, or being deployed, all over the GSTN: the U.S., Canada, Western Europe, Australia, and the Pacific Rim (like Hong Kong) ๐ŸŒ others, like South America (e.g., Brazil), are actively thinking about it ๐Ÿ‘€

implementing NP inside a national telephony infrastructure can mean big changes to numbering administration, network element signaling, call routing and processing, billing, service management, and other stuff too ๐Ÿซ 

so again, NP changes a dialed E.164 number from a hierarchical physical routing address into a virtual address ๐Ÿ”„ NP implementations try to contain the impact on the GSTN and keep NP transparent to subscribers. they do this with a translation function that maps a dialed, potentially ported E.164 address into a network routing address (either a number prefix or another E.164 address) that can be routed hierarchically ๐Ÿ—๏ธ

this is kinda like how network address translation on IP works ๐Ÿง  NAT enables IP address portability by keeping the address change at the edge of the network, so the Classless Inter-Domain Routing (CIDR) blocks in the core can still be route-aggregated by the network service provider out to the rest of the internet ๐ŸŒ

NP splits the historical role of a subscriber's E.164 address into two or more data elements: a dialed (or virtual) address, and a network routing address ๐ŸŽญ those elements have to be available to network elements through an NP translation database, carried by forward call signaling, and recorded on call detail records ๐Ÿ“ and it's not just call processing and routing that's affected, but also Signaling System Number 7 (SS7), also called Common Channel Signaling System Number 7 (C7), messaging โšก a bunch of Transaction Capabilities Application Part (TCAP)-based SS7 messaging sets use an E.164 address as an application-level network element address, in the global title address (GTA) field of the Signaling Connection Control Part (SCCP) message header ๐Ÿงพ so SS7/C7 signaling transfer points (STPs) and gateways need to be able to do n-digit global title translation (GTT), which translates a dialed E.164 address into its network address counterpart via the NP database ๐Ÿ”

there are also various national regulatory constraints that set the parameters for NP implementation, and most of them aren't network-technology specific ๐Ÿ“œ so NP behavior in IP telephony that follows those rules, plus the need to interoperate with existing GSTN NP implementations, are big topics for lots of IP telephony work-in-progress at the IETF ๐Ÿซถ

this doc describes three types of number portability, and the four schemes that have been standardized to support SPNP for geographic E.164 numbers specifically ๐Ÿฆ‹ after that, it gets into the specifics of call routing and database query implementations for a few regions (North America and Europe) and industries (wireless vs. wireline) ๐Ÿ“ก it walks through the Number Portability Database (NPDB) interfaces and the call routing schemes used in North America and Europe, to show the variety of standards that might be implemented worldwide ๐ŸŒ there's a quick look at NP implementations around the world, and number pooling gets a brief mention to show how NP is being pushed further in the U.S. to conserve North American area codes ๐ŸŒธ the conclusion briefly touches on the potential impacts of NP on IP and Telecommunications Interoperability โœจ

2. Abbreviations and Acronyms โœจ

Okay bestie, this is the acronym dictionary, and it is SO long ๐Ÿ˜ญ Here's the whole list, copied exactly so nothing gets lost in translation ๐Ÿซถ

ACQ     All Call Query
AIN     Advanced Intelligent Network
AMPS    Advanced Mobile Phone System
ANSI    American National Standards Institute
API     Application Programming Interface
C7      Common Channel Signaling System Number 7
CDMA    Code Division Multiple Access
CdPA    Called Party Address
CdPN    Called Party Number
CH      Code Holder
CIC     Carrier Identification Code
CIDR    Classless Inter-Domain Routing
CMIP    Common Management Information Protocol
CO      Central Office
CS1     Capability Set 1
CS2     Capability Set 2
DN      Directory Number
DNS     Domain Name System
ENUM    Telephone Number Mapping
ETSI    European Tecommunications Standards Institute
FCI     Forward Call Indicator
GAP     Generic Address Parameter
GMSC    Gateway Mobile Services Switching Center or Gateway Mobile
        Switching Center
GNP     Geographic Number Portability
GSM     Global System for Mobile Communications
GSTN    Global Switched Telephone Network
GTT     Global Title Translation
GW      Gateways
HLR     Home Location Register
IAM     Initial Address Message
IETF    Internet Engineering Task Force
ILNP    Interim LNP
IN      Intelligent Network
INAP    Intelligent Network Application Part
INP     Interim NP
IP      Internet Protocol
IS-41   Interim Standards Number 41
ISDN    Integrated Services Digital Network
ISUP    ISDN User Part
ITN     Individual Telephony Number
ITU     International Telecommunication Union
ITU-TS  ITU-Telecommunication Sector
LDAP    Lightweight Directory Access Protocol
LEC     Local Exchange Carrier
LERG    Local Exchange Routing Guide
LNP     Local Number Portability
LRN     Location Routing Number
MAP     Mobile Application Part
MNP     Mobile Number Portability
MSRN    Mobile Station Roaming Number
MTP     Message Transfer Part
NANP    North American Numbering Plan
NGNP    Non-Geographic Number Portability
NOA     Nature of Address
NP      Number Portability
NPA     Numbering Plan Area
NPDB    Number Portability Database
NRN     Network Routing Number
OR      Onward Routing
OSS     Operation Support System
PCS     Personal Communication Services
PNTI    Ported Number Translation Indicator
PODP    Public Office Dialing Plan
PUC     Public Utility Commission
QoR     Query on Release
RN      Routing Number
RTP     Return to Pivot
SCCP    Signaling Connection Control Part
SCP     Service Control Point
SIP     Session Initiation Protocol
SMR     Special Mobile Radio
SPNP    Service Provider Number Portability
SRF     Signaling Relaying Function
SRI     Send Routing Information
SS7     Signaling System Number 7
STP     Signaling Transfer Point
TCAP    Transaction Capabilities Application Part
TDMA    Time Division Multiple Access
TN      Telephone Number
TRIP    Telephony Routing Information Protocol
URL     Universal Resource Locator
U.S.    United States

3. Types of Number Portability ๐Ÿฆ‹

Okay so there are several types of E.164 numbers (telephone numbers, or just TN) floating around the GSTN, which means there are also several types of E.164 NP. It's giving variety ๐Ÿ’… (this is basically the section E.164 of our group chat ๐Ÿซถ).

First up are the non-geographic E.164 numbers, which are used for service-specific stuff like freephone (800 or 0800). Portability for these is called non-geographic number portability (NGNP). Fun fact: NGNP was deployed in the U.S. in 1986-92 ๐Ÿ•ฐ๏ธ

Geographic number portability (GNP) covers traditional fixed or wireline numbers, plus mobile numbers that are allocated out of geographic number range prefixes. It's called NP or GNP, or in the U.S., local number portability (LNP) ๐ŸŒธ

Number portability lets telephony subscribers in the GSTN keep their phone numbers when they switch service providers or subscribed services, or when they move to a new location. Main character energy ๐Ÿ‘‘

The ability to change the service provider while keeping the same phone number is called service provider portability (SPNP), also known as "operator portability" โœจ

The ability to move the subscriber's fixed service location while keeping the same phone number is called location portability ๐Ÿ“

The ability to change the subscribed services (for example, from the plain old telephone service to Integrated Services Digital Network (ISDN) services) while keeping the same phone number is called service portability. And there's another side to service portability too: letting subscribers enjoy their services the same way when they roam outside their home networks, which is something cellular and wireless networks already do ๐Ÿงš

Then there's mobile number portability (MNP). That's the specific NP implementation in mobile networks, either as part of a broader NP setup in the GSTN or on its own ๐Ÿ“ฑ When LNP and MNP can interoperate, service portability between fixed and mobile service types becomes possible. Iconic ๐Ÿ”ฅ

Right now, SPNP is the main form of NP deployed, because it's what makes local service competition possible ๐Ÿ’œ

You'll also see the terms interim NP (INP) or Interim LNP (ILNP), plus true NP, floating around the GSTN. Interim NP usually means using remote call forwarding-like tricks to forward calls to ported numbers through the donor network to the new service network. These are called interim compared to true NP, which tries to take the donor network, or old service provider, out of the call or signaling path entirely ๐Ÿ™ˆ Honestly, the line between interim and true NP is often a national regulatory matter, based on the technical and operational requirements that country puts on NP.

Some true NP implementations (for example in the U.S., Canada, Spain, Belgium, and Denmark) might create specific requirements for IP telephony. That's because they have to route calls and signal independently of the donor network or the last previous serving network, thanks to regulatory and industry rules ๐ŸŒˆ

4. Service Provider Number Portability Schemes ๐ŸŽ€

Four schemes can support service provider portability, and we'll briefly go through each one below. But first, we need some more vocab ๐Ÿ“š

The donor network is the network that first assigned a telephone number (for example, TN +1-202-533-1234) to a subscriber, out of a number range (for example, +1 202-533) that was administratively assigned to it. The current service provider (new SP), or new serving network, is the network that currently serves the ported number. The old serving network (or old SP) is the network that served the ported number before it moved to the new serving network ๐Ÿฆ‹

A TN can be ported more than once, so the old SP isn't always the donor network. The only time they match is the first time the TN ports away, or when the TN ports back into the donor network and then away again. The new SP and old SP roles are temporary as a TN ports around, but the donor network stays the same for any given TN. It's based on whichever service provider the subtending number range was administratively assigned to ๐Ÿ’… Also, number pooling further splits the donor network's role into two parts: the number range or code holder network, and the block holder network. We'll get to that later.

To keep the illustration simple, all transit networks are ignored ๐Ÿงš The originating or donor network is the one that does the database queries or call redirection, and the dialed directory number (TN) has already been ported out of the donor network.

It's assumed that the old serving network, the new serving network, and the donor network are all different networks. This lets us see which networks are involved in call handling, routing, and database queries for each of the four schemes ๐Ÿ‘€ Also, note that the port (the process of moving the number from one network to another) happens before the call setup, so it's not included in the call steps. Information carried in the signaling messages for each scheme is skipped too, to keep things simple ๐Ÿซถ

4.1 All Call Query (ACQ)

Figure 1 shows the call steps for the ACQ scheme. The steps go like this:

  1. The Originating Network gets a call from the caller and sends a query to a centrally administered Number Portability Database (NPDB). A copy of that database is usually on a network element inside its own network, or it comes through a third party provider ๐Ÿ”
  2. The NPDB returns the routing number associated with the dialed directory number. (We'll talk more about routing numbers in Section 6 ๐ŸŒธ)
  3. The Originating Network uses the routing number to route the call to the new serving network โœจ
+-------------+              +-----------+    Number   +-----------+
| Centralized |              | New Serv. |    ported   | Old Serv. |
|    NPDB     |    +-------->|  Network  |<------------|  Network  |
+-------------+    |         +-----------+             +-----------+
    ^  |           |
    |  |           |
   1|  |         3.|
    |  | 2.        |
    |  |           |
    |  v           |
 +----------+      |         +----------+           +----------+
 |   Orig.  |------+         |   Donor  |           | Internal |
 |  Network |                |  Network |           |   NPDB   |
 +----------+                +----------+           +----------+

              Figure 1 - All Call Query (ACQ) Scheme.

4.2 Query on Release (QoR)

Figure 2 shows the call steps for the QoR scheme. Here's how it goes ๐Ÿ’–

+-------------+              +-----------+    Number   +-----------+
| Centralized |              | New Serv. |    ported   | Old Serv. |
|    NPDB     |              |  Network  |<------------|  Network  |
+-------------+              +-----------+             +-----------+
    ^  |                          ^
    |  | 4.                       |
  3.|  |              5.          |
    |  |   +----------------------+
    |  |   |
    |  v   |
 +----------+      2.        +----------+           +----------+
 |   Orig.  |<---------------|   Donor  |           | Internal |
 |  Network |--------------->|  Network |           |   NPDB   |
 +----------+      1.        +----------+           +----------+

             Figure 2 - Query on Release (QoR) Scheme.
  1. The Originating Network gets a call from the caller and routes the call to the donor network ๐Ÿ“ž
  2. The donor network releases the call and indicates that the dialed directory number has been ported out of that switch ๐Ÿ™…โ€โ™€๏ธ
  3. The Originating Network sends a query to its copy of the centrally administered NPDB ๐Ÿ”
  4. The NPDB returns the routing number associated with the dialed directory number ๐ŸŽ€
  5. The Originating Network uses the routing number to route the call to the new serving network ๐Ÿ’…

4.3 Call Dropback โœจ

Okay bestie, Figure 3 shows the call steps for the Dropback scheme ๐Ÿฆ‹. It's also called "Return to Pivot (RTP)" ๐Ÿ”„ Here's how it goes:

  1. The Originating Network gets the call from the caller and routes it over to the donor network ๐Ÿ“ž
  2. The donor network notices the dialed directory number was ported out of the donor switch, so it checks with an internal network-specific NPDB ๐Ÿ”
  3. The internal NPDB sends back the routing number linked to that dialed directory number ๐Ÿ’Œ
  4. The donor network releases the call and hands over the routing number ๐ŸŽ
  5. The Originating Network uses that routing number to route the call to the new serving network ๐Ÿš€
+-------------+              +-----------+    Number   +-----------+
| Centralized |              | New Serv. |    porting  | Old Serv. |
|    NPDB     |              |  Network  |<------------|  Network  |
+-------------+              +-----------+             +-----------+
                                    /\
                                     |
                           5.        |
            +------------------------+
            |
            |
    +----------+       4.       +----------+     3.    +----------+
    |   Orig.  |<---------------|   Donor  |<----------| Internal |
    |  Network |--------------->|  Network |---------->|   NPDB   |
    +----------+      1.        +----------+    2.     +----------+

                       Figure 3 - Dropback Scheme.

4.4 Onward Routing (OR) ๐ŸŒธ

Figure 4 shows the call steps for the OR scheme, and honestly it's giving a different vibe from Dropback ๐Ÿ’… Here's the sequence:

  1. The Originating Network gets the call from the caller and routes it to the donor network ๐Ÿ“ž
  2. The donor network notices the dialed directory number was ported out of the donor switch, so it checks with an internal network-specific NPDB ๐Ÿ”
  3. The internal NPDB sends back the routing number linked to that dialed directory number ๐Ÿ’Œ
  4. The donor network uses that routing number to route the call to the new serving network ๐Ÿš€ (no release back to the Originating Network here, the donor network just keeps going ๐Ÿ™Œ)
+-------------+              +-----------+    Number   +-----------+
| Centralized |              | New Serv. |    porting  | Old Serv. |
|    NPDB     |              |  Network  |<------------|  Network  |
+-------------+              +-----------+             +-----------+
                                    /\
                                     |
                                   4.|
                                     |
    +----------+                +----------+     3.    +----------+
    |   Orig.  |                |   Donor  |<----------| Internal |
    |  Network |--------------->|  Network |---------->|   NPDB   |
    +----------+      1.        +----------+    2.     +----------+

                  Figure 4 - Onward Routing (OR) Scheme.

4.5 Comparisons of the Four Schemes ๐Ÿ’œ

Okay so, only the ACQ scheme skips the donor network when routing the call to the new serving network of the dialed ported number ๐Ÿ™ˆ The other three schemes all involve call setup to, or signaling with, the donor network. Main character energy for ACQ, fr fr โœจ

Only the OR scheme needs two physical call segments: one from the Originating Network to the donor network, and another from the donor network to the new serving network ๐Ÿงฉ OR is the least efficient when it comes to using network transmission facilities, so it's kinda the messy one ๐Ÿ˜ญ QoR and Dropback set up calls to the donor network first, but then release the call back to the Originating Network, which starts a brand new call to the Current Serving Network ๐Ÿ” For QoR and Dropback, circuits still get reserved one by one between the Originating Network and the donor network when the Originating Network sets up the call toward the donor network. Those circuits then get released one by one when the call is released from the donor network back to the Originating Network ๐Ÿ’… ACQ is the most efficient for switching and transmission facilities, periodt ๐Ÿ‘‘

Both ACQ and QoR involve Centralized NPDBs so the Originating Network can retrieve the routing information ๐ŸŒˆ A Centralized NPDB holds ported number information from multiple networks. That's different from the internal network-specific NPDB used by Dropback and OR, which only holds information about numbers ported out of the donor network ๐ŸŽ€ An internal NPDB can be a stand-alone database containing information about all or some of the ported-out numbers from the donor network. It can also live on the donor switch itself and only contain info about numbers ported out of that switch. In that case, no query to a stand-alone internal NPDB is needed ๐Ÿงš The donor switch for a particular phone number is the switch to which the number range was assigned, from which that phone number was originally assigned ๐Ÿฆ‹

Let's look at an example with the North American Numbering Plan (NANP) ๐Ÿ‡บ๐Ÿ‡ธ Number ranges are usually assigned as central office codes (CO codes), which are six-digit prefixes formatted as NPA+NXX. So a switch serving +1-202-533 would typically serve +1-202-533-0000 through +1-202-533-9999 ๐Ÿ“ In major cities, switches usually host several CO codes. NPA stands for Numbering Plan Area, also known as the area code ๐Ÿ“ฑ It's three digits long and has the format NXX, where N is any digit from 2 to 9 and X is any digit from 0 to 9. In the NPA+NXX format, the NXX part is the office code, which has the same format as the NPA. When an NPA+NXX code is set as "portable" in the Local Exchange Routing Guide (LERG), it becomes a "portable NPA+NXX" code โœจ

Similarly, in other national E.164 numbering plans, number ranges cover a contiguous range of numbers within that range ๐ŸŒ Once any number in that range has ported away from the donor network, every number in that range is considered potentially ported and should be queried in the NPDB ๐Ÿ”

The ACQ scheme has two versions, and both are kinda iconic ๐Ÿ’– In version one, the Originating Network always queries the NPDB when a call comes in from the caller, whether or not the dialed directory number belongs to a portable number range or has at least one number ported out. In version two, the Originating Network checks whether the dialed directory number belongs to a portable number range or has at least one number ported out. If yes, an NPDB query is sent. If not, no NPDB query is sent ๐Ÿซถ Version one performs better when there are many portable number ranges. Version two performs better when there aren't too many portable number ranges, but the trade-off is that every call has to be checked to see whether an NPDB query is needed ๐Ÿค” Version two is similar to the QoR scheme, except QoR uses call setup and relies on the donor network to indicate "number ported out" before launching the NPDB query ๐ŸŽ€

5. Database Queries in the NP Environment ๐ŸŽ€

As mentioned earlier, the ACQ and QoR schemes require a switch to query the NPDB for routing information ๐Ÿ’Œ Various standards have been defined for the switch-to-NPDB interface. The interfaces, along with their protocol stacks, are briefly described below ๐Ÿงฉ The term "NPDB" is used for a stand-alone database that may support just one, some, or all of the interfaces mentioned below. The NPDB query contains the dialed directory number, and the NPDB response contains the routing number. There's definitely other information sent in the query and response too ๐Ÿ™ˆ But the main goal is getting the routing number from the NPDB to the switch for call routing ๐Ÿš€

5.1 U.S. and Canada ๐Ÿ‡บ๐Ÿ‡ธ๐Ÿ‡จ๐Ÿ‡ฆ

One of the following five NPDB interfaces can be used to query an NPDB ๐Ÿ”ฅ

  • a) Advanced Intelligent Network (AIN) using the American National Standards Institute (ANSI) version of the Intelligent Network Application Part (INAP) [ANSI SS] [ANSI DB]. The INAP is carried on top of the protocol stack that includes the (ANSI) Message Transfer Part (MTP) Levels 1 through 3, ANSI SCCP, and ANSI TCAP. This interface can be used by wireline or wireless switches. It's specific to NP implementation in North America, and it's modeled on the Public Office Dialing Plan (PODP) trigger defined in the Advanced Intelligent Network (AIN) 0.1 call model ๐Ÿ’…
  • b) Intelligent Network (IN), which is similar to the one used for querying the 800 databases. The IN protocol is carried on top of the protocol stack that includes the ANSI MTP Levels 1 through 3, ANSI SCCP, and ANSI TCAP. This interface can be used by wireline or wireless switches โœจ
  • c) ANSI IS-41 [IS41] [ISNP], which is carried on top of the protocol stack that includes the ANSI MTP Levels 1 through 3, ANSI SCCP, and ANSI TCAP. This interface can be used by IS-41 based cellular/Personal Communication Services (PCS) wireless switches (e.g., AMPS, TDMA and CDMA). Cellular systems use spectrum in the 800 MHz range, and PCS systems use spectrum in the 1900 MHz range ๐Ÿ“ฑ
  • d) Global System for Mobile Communication Mobile Application Part (GSM MAP) [GSM], which is carried on top of the protocol stack that includes the ANSI MTP Levels 1 through 3, ANSI SCCP, and International Telecommunication Union - Telecommunication Sector (ITU-TS) TCAP. It can be used by PCS1900 wireless switches based on GSM technologies. GSM is a series of wireless standards defined by the European Telecommunications Standards Institute (ETSI) ๐ŸŒธ
  • e) ISUP triggerless translation. NP translations are performed transparently to the switching network by the signaling network (e.g., Signaling Transfer Points (STPs) or signaling gateways). ISUP IAM messages are examined to determine whether the CdPN field has already been translated. If not, an NPDB query is performed, and the appropriate parameters in the IAM message are modified to reflect the results of the translation. The modified IAM message is forwarded by the signaling node on to the designated DPC in a transparent manner to continue call setup. The NPDB can be integrated with the signaling node, accessed via an Application Programming Interface (API) locally, or queried remotely using a proprietary protocol or one of the schemes described above ๐Ÿงš
Wireline switches can choose from (a), (b), or (e). IS-41 based wireless switches can choose from (a), (b), (c), or (e). PCS1900 wireless switches can choose from (a), (b), (d), or (e) ๐Ÿซถ

In the United States, service provider portability will be supported by both wireline and wireless systems. That's not just within each domain, but also across the wireline/wireless boundary ๐Ÿ‡บ๐Ÿ‡ธ However, this is not true in Europe, where service provider portability is usually supported only within the wireline or wireless domain, not across the boundary. That's because of explicit use of service-specific number range prefixes ๐ŸŒ The reason is to avoid caller confusion about call charges. GSM systems in Europe are assigned distinctive destination network codes, and the caller pays a higher charge when calling a GSM directory number ๐Ÿ’€

5.2 Europe

okay bestie, Europe gives you two options for querying an NPDB ๐Ÿ’…๐ŸŒธ

a) Capability Set 1 (CS1) of the ITU-TS INAP [CS1], riding on top of a protocol stack made of ITU-TS MTP Levels 1 through 3, ITU-TS SCCP, and ITU-TS TCAP ๐ŸŽ€

b) Capability Set 2 (CS2) of the ITU-TS INAP [CS2], riding on that same stack: ITU-TS MTP Levels 1 through 3, ITU-TS SCCP, and ITU-TS TCAP โœจ

Wireline switches get to choose between (a) and (b) ๐Ÿฆ‹ but ngl, every European implementation so far is built on CS1 ๐Ÿ™ˆ And like I said earlier, number portability in Europe does not go across the wireline/wireless boundary ๐Ÿšง Wireless switches can also use (a) or (b) to query the NPDBs, but only if those NPDBs contain ported wireless directory numbers ๐Ÿ“ฑ The term "Mobile Number Portability (MNP)" is the name for service provider portability over in the GSM networks in Europe ๐ŸŒˆ

In most, if not all, cases in Europe, calls to wireless directory numbers get routed to the wireless donor network first ๐Ÿ’– There, an internal NPDB gets queried to figure out whether the dialed wireless directory number has been ported out or not ๐Ÿ” Since that lookup happens inside the network, the interface to the internal NPDB is not subject to standardization ๐Ÿคทโ€โ™€๏ธ

MNP in Europe can also be supported through the MNP Signaling Relay Function (MNP-SRF) ๐Ÿงš Here, an internal NPDB, or a database integrated at the MNP-SRF, is used to modify the SCCP Called Party Address parameter in the GSM MAP messages so they can be redirected to the wireless serving network ๐Ÿ“ Call routing involving MNP gets explained in Section 6.2 ๐Ÿ‘‘


6. Call Routing in the NP Environment โœจ

This section is all about what happens to the call once the routing information is in hand ๐Ÿ’ซ That info can come from an NPDB query, an internal database lookup at the donor switch, or the Integrated Services Digital Network User Part (ISUP) signaling message (for example, in the Dropback scheme) ๐Ÿ“จ For the ACQ, QoR, and Dropback schemes, the Originating Network is the one holding the routing information and ready to route the call ๐Ÿš€ For the OR scheme, it's the donor network that has the routing info and is ready to route the call ๐ŸŒธ

A bunch of triggering schemes can be used to decide where in the call path the NPDB query happens ๐Ÿงญ In the U.S., there's an "N-1" policy, which basically means that for local calls, the originating local carriers do the query ๐Ÿ“ž Otherwise, the long distance carrier is expected to follow through with the query ๐Ÿ“žโœจ To keep things independent of whatever trigger policy a particular carrier uses, forward call signaling is used to flag that an NPDB query has already been performed ๐Ÿšฉ That flag suppresses any later NP triggers that might show up in downstream switches and downstream networks ๐Ÿ™…โ€โ™€๏ธ This lets the earliest capable network in the call path do the query, without adding extra costs and call setup delays from redundant queries further down the line ๐Ÿ’…๐Ÿ’–

6.1 U.S. and Canada

In the U.S. and Canada, every switch involved in NP gets a ten-digit North American Numbering Plan (NANP) number called a Location Routing Number (LRN) ๐Ÿ‡บ๐Ÿ‡ธ๐Ÿ‡จ๐Ÿ‡ฆ In the NANP, a switch can't be reached unless it has a unique number range (CO code) assigned to it ๐Ÿ“ So the LRN for a switch is always assigned out of a CO code that belongs to that switch ๐ŸŽ€

The LRN assigned to the switch that's currently serving a particular ported telephone number comes back as the network routing address in the NPDB response ๐Ÿฆ‹ The service portability scheme adopted in North America is often called the LRN scheme or method ๐ŸŒˆ

The LRN is a network address for terminating calls served off that switch using ported numbers ๐Ÿ“ฌ The switch operator assigns the LRN using any of the unique CO codes (NPA+NXX) assigned to that switch ๐Ÿ”‘ The LRN is considered a non-dialable address ๐Ÿšซโ˜Ž๏ธ, since the same 10-digit number value might be assigned to a line on that switch ๐Ÿ™ˆ A switch can have more than one LRN ๐Ÿ’œ

During call routing and processing, a switch performs an NPDB query to get the LRN associated with the dialed directory number ๐Ÿ”Ž These queries happen for all dialed directory numbers whose NPA+NXX codes are marked as portable NPA+NXX at that switch ๐Ÿญ When the switch formulates the ISUP Initial Address Message (IAM) to send to the next switch, it puts the ten-digit LRN in the ISUP Called Party Number (CdPN) parameter and puts the originally dialed directory number in the ISUP Generic Address parameter (GAP) ๐Ÿ“ฆ A new code in the GAP was defined to show that the address information there is the dialed directory number ๐Ÿ†• There's also a new bit in the ISUP Forward Call Indicator (FCI) parameter, the Ported Number Translation Indicator (PNTI) bit ๐Ÿง  When it's set, it means an NPDB query has already been performed, so all downstream switches skip the NPDB query if the PNTI bit is set ๐Ÿ™…โ€โ™€๏ธโœจ

When the terminating switch gets the IAM and sees the PNTI bit set in the FCI parameter and its own LRN in the CdPN parameter, it pulls the originally dialed directory number out of the GAP ๐Ÿ•ต๏ธโ€โ™€๏ธ Then it uses that dialed directory number to terminate the call ๐ŸŽฏ

Having a dialed directory number with a portable NPA+NXX does not mean the directory number has actually been ported ๐Ÿ™ƒ The NPDBs don't currently store records for non-ported directory numbers ๐Ÿ“š So in that case, the NPDB returns the same dialed directory number instead of an LRN ๐Ÿ” The switch still sets the PNTI bit, but keeps the dialed directory number in the CdPN parameter ๐Ÿ’…

In the real world, the Originating Network isn't always the one doing the NPDB query ๐ŸŒ For example, long distance carriers are usually the ones that query the NPDBs for long distance calls ๐Ÿ“ž In that case, the Originating Network run by the local exchange carrier (LEC) just routes the call to the long distance carrier that's handling it ๐Ÿšš A wireless network acting as the Originating Network can also route the call to the interconnected local exchange carrier network, if it doesn't want to support the NPDB interface at its mobile switches ๐Ÿ“ฑ๐Ÿ’œ

6.2 Europe โœจ

Okay bestie, Europe is where routing numbers get extra glam ๐Ÿ’…. In some European countries, a routing number is prefixed to the dialed directory number ๐ŸŽ€. The ISUP CdPN parameter in the IAM will contain the routing prefix and the dialed directory number. For example, the United Kingdom uses routing prefixes in the format 5XXXXX, and Italy uses C600XXXXX as the routing prefix. The networks use the info in the ISUP CdPN parameter to route the call to the New/Current Serving Network ๐Ÿฆ‹.

The routing prefix can identify either the Current Serving Network or the Current Serving Switch of a ported number ๐ŸŒธ. In the first case, another query to the "internal" NPDB at the Current Serving Network is required to identify the Current Serving Switch before the call gets routed to that switch. This keeps the Current Serving Switch info for a ported number hidden from the other networks, at the cost of one extra NPDB query ๐Ÿ™ˆ. Another routing number, that be meaningful within the Current Serving Network, replaces the previously prefixed routing number in the ISUP CdPN parameter. In the second case, the call goes straight to the Current Serving Switch with no extra NPDB query needed โญ.

When the terminating switch gets the IAM and sees its own routing prefix in the CdPN parameter, it pulls out the originally dialed directory number that comes after the routing prefix, and uses that number to terminate the call ๐Ÿ’œ.

The call routing example above is just one of the three methods that can be used to carry the Directory Number (DN) and the Routing Number (RN) in the ISUP IAM message ๐Ÿ‘‘. On top of that, some other info may be added or modified, as listed in the ETSI 302 097 document [ETSIISUP], which is based on the ITU-T Recommendation Q.769.1 [ITUISUP]. Here are the three methods and the ISUP enhancements for number portability, briefly:

  • a) Two separate parameters, with the CdPN parameter containing the RN and a new Called Directory Number (CdDN) parameter containing the DN. A new value for the Nature of Address (NOA) indicator in the CdPN parameter is defined to show that the RN is in the CdPN parameter. The switches use the CdPN parameter to route the call, just like they do today ๐ŸŽ€.
  • b) Two separate parameters, with the CdPN parameter containing the DN and a new Network Routing Number (NRN) parameter containing the RN. This method requires that the switches use the NRN parameter to route the call ๐Ÿงš.
  • c) A concatenated parameter, with the CdPN parameter containing the RN plus the DN. A new Nature of Address (NOA) indicator in the CdPN parameter is defined to show that the RN is concatenated with the DN in the CdPN parameter. Some countries may not use a new NOA value, because their routing prefix doesn't overlap with the dialed directory numbers. But if the routing prefix does overlap with the dialed directory numbers, a new NOA value must be assigned. For example, Spain uses XXXXXX as the routing prefix to identify the new serving network, and uses a new NOA value of 126 ๐Ÿ“.

There's also a network option to add a new ISUP parameter called the Number Portability Forwarding Information parameter ๐ŸŒˆ. This parameter has a four-bit Number Portability Status Indicator field, which can show whether a number portability query was done for the called directory number, and whether that called directory number is ported or not (if the query was done) โœจ.

Please note: all of the NP enhancements for a ported number can only be used in the country that defined them ๐Ÿšจ. That's because number portability is supported within a nation. Inside each nation, the telecom industry or the regulatory bodies can decide which method or methods to use. Number portability related parameters and coding are usually not passed across national boundaries unless the interconnection agreements allow it. For example, a UK routing prefix can only be used in the UK, and it would cause a routing problem if it showed up outside the UK ๐Ÿ’€.

As mentioned earlier, an originating wireless network can query the NPDB, concatenate the RN with the DN in the CdPN parameter, and route the call directly to the Current Serving Network ๐Ÿ“ฑ.

If NPDBs don't contain info about the wireless directory numbers, the call (whether it came from a wireline or a wireless network) gets routed to the Wireless donor network. There, an internal NPDB is queried to retrieve the RN, which then gets concatenated with the DN in the CdPN parameter ๐Ÿซถ.

There are several ways to realize MNP ๐Ÿ’–. If MNP-SRF is supported, the Gateway Mobile Services Switching Center (GMSC) at the wireless donor network can send the GSM MAP Send Routing Information (SRI) message to the MNP-SRF when it receives a call from the wireline network ๐ŸŒธ. The MNP-SRF interrogates an internal or integrated NPDB for the RN of the MNP-SRF of the wireless Current Serving Network, and prefixes that RN to the dialed wireless directory number in the global title address information in the SCCP Called Party Address (CdPA) parameter. This SRI message is routed to the MNP-SRF of the wireless Current Serving Network, which then responds with an acknowledgement by providing the RN plus the dialed wireless directory number as the Mobile Station Roaming Number (MSRN) ๐Ÿฆ‹.

The GMSC of the wireless donor network formulates the ISUP IAM with the RN plus the dialed wireless directory number in the CdPN parameter, and routes the call to the wireless Current Serving Network. A GMSC of the wireless Current Serving Network receives the call and sends an SRI message to the associated MNP-SRF, where the global title address information of the SCCP CdPA parameter contains only the dialed wireless directory number ๐Ÿงš. The MNP-SRF then replaces the global title address information in the SCCP CdPA parameter with the address information associated with a Home Location Register (HLR) that hosts the dialed wireless directory number, and forwards the message to that HLR after verifying that the dialed wireless directory number is a ported-in number ๐Ÿ”ฅ. The HLR then returns an acknowledgement by providing an MSRN, so the GMSC can route the call to the MSC that currently serves the mobile station associated with the dialed wireless directory number ๐Ÿ‘‘.

Please see [MNP] for details and additional scenarios ๐ŸŽ€.

7. NP Implementations for Geographic E.164 Numbers โœจ

okay so this part is the tea on who's doing SPNP where around the world ๐ŸŒ๐Ÿ’… the table below is every known implementation, country by country, and it's giving full international drama ๐Ÿ˜ญ

   +-------------+----------------------------------------------------+
   +   Country   +             SPNP Implementation                    +
   +-------------+----------------------------------------------------+
   +  Argentina  + Analyzing operative viability now. Will determine  +
   +             + whether portability should be made obligatory      +
   +             + after a technical solution has been determined.    +
   +-------------+----------------------------------------------------+
   +  Australia  + NP supported by wireline operators since 11/30/99. +
   +             + NP among wireless operators in March/April 2000,   +
   +             + but may be delayed to 1Q01. The access provider    +
   +             + or long distance provider has the obligation to    +
   +             + route the call to the correct destination. The     +
   +             + donor network is obligated to maintain and make    +
   +             + available a register of numbers ported away from   +
   +             + its network.  Telstra uses onward routing via an   +
   +             + on-switch solution.                                +
   +-------------+----------------------------------------------------+
   +-------------+----------------------------------------------------+
   +   Country   +             SPNP Implementation                    +
   +-------------+----------------------------------------------------+
   +   Austria   + Uses onward routing at the donor network.  Routing +
   +             + prefix is "86xx" where "xx" identifies the         +
   +             + recipient network.                                 +
   +-------------+----------------------------------------------------+
   +  Belgium    + ACQ selected by the industry. Routing prefix is    +
   +             + "Cxxxx" where "xxxx" identifies the recipient      +
   +             + switch. Another routing prefix is "C00xx" with "xx"+
   +             + identifying the recipient network.  Plan to use NOA+
   +             + to identify concatenated numbers and abandon the   +
   +             + hexadecimal routing prefix.                        +
   +-------------+----------------------------------------------------+
   +  Brazil     + Considering NP for wireless users.                 +
   +-------------+----------------------------------------------------+
   +  Chile      + There has been discussions lately on NP.           +
   +-------------+----------------------------------------------------+
   +  Colombia   + There was an Article 3.1 on NP to support NP prior +
   +             + to December 31, 1999 when NP became technically    +
   +             + possible. Regulator has not yet issued regulations +
   +             + concerning this matter.                            +
   +-------------+----------------------------------------------------+
   +  Denmark    + Uses ACQ. Routing number not passed between        +
   +             + operators; however, NOA is set to "112" to         +
   +             + indicate "ported number."  QoR can be used based   +
   +             + on bilateral agreements.                           +
   +-------------+----------------------------------------------------+
   +  Finland    + Uses ACQ.  Routing prefix is "1Dxxy" where "xxy"   +
   +             + identifies the recipient network and service type. +
   +-------------+----------------------------------------------------+
   +  France     + Uses onward routing.  Routing prefix is "Z0xxx"    +
   +             + where "xxx" identifies the recipient switch.       +
   +-------------+----------------------------------------------------+
   +  Germany    + The originating network needs to do necessary      +
   +             + rerouting.  Operators decide their own solution(s).+
   +             + Deutsche Telekom uses ACQ.  Routing prefix is      +
   +             + "Dxxx" where "xxx" identifies the recipient        +
   +             + network.                                           +
   +-------------+----------------------------------------------------+
   +  Hong Kong  + Recipient network informs other networks about     +
   +             + ported-in numbers.  Routing prefix is "14x" where  +
   +             + "14x" identifies the recipient network, or a       +
   +             + routing number of "4x" plus 7 or 8 digits is used  +
   +             + where "4x" identifies the recipient network and    +
   +             + the rest of digits identify the called party.      +
   +-------------+----------------------------------------------------+
   +-------------+----------------------------------------------------+
   +   Country   +             SPNP Implementation                    +
   +-------------+----------------------------------------------------+
   +  Ireland    + Operators choose their own solution but use onward +
   +             + routing now. Routing prefix is "1750" as the intra-+
   +             + network routing code (network-specific) and        +
   +             + "1752xxx" to "1759xxx" for GNP where "xxx"         +
   +             + identifies the recipient switch.                   +
   +-------------+----------------------------------------------------+
   +  Italy      + Uses onward routing. Routing prefix is "C600xxxxx" +
   +             + where "xxxxx" identifies the recipient switch.     +
   +             + Telecom Italia uses IN solution and other operators+
   +             + use on-switch solution.                            +
   +-------------+----------------------------------------------------+
   +  Japan      + Uses onward routing.  Donor switch uses IN to get  +
   +             + routing number.                                    +
   +-------------+----------------------------------------------------+
   +  Mexico     + NP is considered in the Telecom law; however, the  +
   +             + regulator (Cofetel) or the new local entrants have +
   +             + started no initiatives on this process.            +
   +-------------+----------------------------------------------------+
   + Netherlands + Operators decide NP scheme to use.  Operators have +
   +             + chosen ACQ or QoR.  KPN implemented IN solution    +
   +             + similar to U.S. solution.  Routing prefix is not   +
   +             + passed between operators.                          +
   +-------------+----------------------------------------------------+
   +  Norway     + OR for short-term and ACQ for long-term.  QoR is   +
   +             + optional. Routing prefix can be "xxx" with NOA=8,  +
   +             + or "142xx" with NOA=3 where "xxx" or "xx"          +
   +             + identifies the recipient network.                  +
   +------------ +----------------------------------------------------+
   +  Peru       + Wireline NP may be supported in 2001.              +
   +-------------+----------------------------------------------------+
   +  Portugal   + No NP today.                                       +
   +-------------+----------------------------------------------------+
   +  Spain      + Uses ACQ.  Telefonica uses QoR within its network. +
   +             + Routing prefix is  "xxyyzz" where "xxyyzz"         +
   +             + identifies the recipient network.  NOA is set to   +
   +             + 126.                                               +
   +-------------+----------------------------------------------------+
   +  Sweden     + Standardized the ACQ but OR for operators without  +
   +             + IN. Routing prefix is "xxx" with NOA=8 or "394xxx" +
   +             + with NOA=3 where "xxx" identifies the recipient    +
   +             + network. But operators decide NP scheme to use.    +
   +             + Telia uses onward routing between operators.       +
   +-------------+----------------------------------------------------+
   +-------------+----------------------------------------------------+
   +   Country   +             SPNP Implementation                    +
   +-------------+----------------------------------------------------+
   + Switzerland + Uses OR now and QoR in 2001.  Routing prefix is    +
   +             + "980xxx" where "xxx" identifies the recipient      +
   +             + network.                                           +
   +-------------+----------------------------------------------------+
   +  UK         + Uses onward routing. Routing prefix is "5xxxxx"    +
   +             + where "xxxxx" identifies the recipient switch. NOA +
   +             + is 126. BT uses the dropback scheme in some parts  +
   +             + of its network.                                    +
   +-------------+----------------------------------------------------+
   +  US         + Uses ACQ.  "Location Routing Number (LRN)" is used +
   +             + in the Called Party Number parameter.  Called party+
   +             + number is carried in the Generic Address Parameter +
   +             + Use a PNTI indicator in the Forward Call Indicator +
   +             + parameter to indicate that NPDB dip has been       +
   +             + performed.                                         +
   +-------------+----------------------------------------------------+

8. Number Conservation Methods Enabled by NP ๐ŸŒธ

okay so beyond just porting numbers, NP also lets number administrators hand out numbering resources to operators in smaller increments ๐ŸŽ€ right now it's super common for numbering resources to go to telephone operators as one big block of consecutive telephone numbers (TNs). For example, in North America each block has 10,000 TNs and is formatted as NXX+0000 to NXX+9999. Operators get assigned a specific NXX, or block, and that operator is called the block holder. Inside that block there are 10,000 TNs with line numbers ranging from 0000 to 9999.

Instead of giving an entire block to one operator, NP lets the administrator assign a sub-block or even an individual telephone number. These are called block pooling and individual telephone number (ITN) pooling, respectively. โœจ

8.1 Block Pooling ๐Ÿงš

Block pooling is when the number administrator assigns a range of numbers defined by a logical sub-block of the existing block. Using North America as the example again, block pooling would let the administrator assign sub-blocks of 1,000 TNs to multiple operators. So NXX+0000 to NXX+0999 can go to operator A, NXX+1000 to NXX+1999 can go to operator B, NXX-2000 to 2999 can go to operator C, and so on. In this example, block pooling splits one block of 10,000 TNs into ten blocks of 1,000 TNs ๐Ÿ“

Porting the sub-blocks from the block holder is what makes block pooling happen. In the example, operator A is the block holder and also holds the first sub-block, NXX+0000 to NXX+0999. The second sub-block, NXX+1000 to NXX+1999, is ported from operator A to operator B. The third, NXX+2000 to NXX+2999, is ported from operator A to operator C, and so on. NP administrative processes and call processing enable proper and efficient routing ๐Ÿ’œ

From a number administration and NP administration point of view, block pooling brings in a brand new concept: the sub-block holder ๐Ÿ‘‘ Block pooling requires coordination between the number administrator, the NP administrator, the block holder, and the sub-block holder. Block pooling must be implemented in a manner that allows for NP within the sub-blocks. Each TN can have a different serving operator, sub-block holder, and block holder, which is honestly so iconic ๐Ÿฆ‹

8.2. ITN Pooling ๐Ÿ’–

okay so ITN pooling is when the number administrator hands out individual telephone numbers to operators ๐Ÿงš. using the North American example, one block of 10,000 TNs can be split into 10,000 ITNs ๐ŸŽ€. ITN is more commonly deployed in freephone services ๐Ÿ“žโœจ.

in ITN the block doesn't go to an operator. it goes to a central administrator instead ๐Ÿข. the administrator then assigns the ITNs to operators ๐Ÿ’…. NP administrative processes and call processing will enable proper and efficient routing ๐Ÿฆ‹ (this part is giving organized, fr fr).

9. Potential Implications ๐Ÿ”ฅ

there are three general areas of impact to IP telephony works-in-progress with the IETF ๐Ÿ‘‘:

  • Interoperation between NP in GSTN and IP telephony
  • NP implementation or emulation in IP telephony
  • Interconnection to NP administrative environment

bestie, understanding how number portability works in the GSTN is so important for the interworking issues between IP-based networks and the GSTN ๐Ÿซถ. it matters especially when the IP-based network has to route calls to the GSTN ๐Ÿ“ฒ.

as we saw in Section 5, there's a whole variety of standards with different protocol stacks for the switch-to-NPDB interface ๐Ÿ˜ญ. the national versions of those protocol standards make it super complicated in a global environment ๐ŸŒ. if an entity in the IP-based network needs to query those existing NPDBs for routing number information so it can terminate calls to the destination GSTN, it would be an impractical, if not impossible, job for that entity to support all those interface standards to reach NPDBs in many countries ๐Ÿ’€.

there are a few ways to deal with this. one option is to use certain entities in the IP-based networks to handle the NP query, kind of like the International Switches the GSTN uses to interwork different national ISUP variations ๐Ÿงšโ€โ™€๏ธ. this means signaling info tied to the calls gets sent to certain NP-capable networks in the terminating GSTN, and those get routed to the IP entities that support NP functions ๐Ÿฆ‹. those IP entities then query the NPDBs in the terminating country. this limits how many NPDB interfaces certain IP entities need to support ๐Ÿ™Œ. another option is to define a "common" interface that all the NPDBs support, so every IP entity can use that one standardized protocol to query them ๐Ÿ’œ. the existing NPDBs could support this extra interface, or new NPDBs with the same information but the common IP interface could be deployed ๐ŸŒˆ. the candidates for that common interface include ENUM (telephone number mapping) [ENUM], Lightweight Directory Access Protocol (LDAP), and SIP [SIP] (for example, using the SIP redirection capability) โœจ. and of course there's also the option of using an interworking function to convert from one protocol to another ๐Ÿ”.

IP-based networks can handle domestic calls between two GSTNs ๐Ÿ . if the originating GSTN has already done an NPDB query, SIP will need to transport and make use of some of the ISUP signaling information, even though ISUP signaling may be encapsulated in SIP ๐Ÿ“ฆ. also, IP-based networks may perform the NPDB queries as the N-1 carrier ๐Ÿ•ต๏ธโ€โ™€๏ธ. in that case, SIP also needs to carry the NP related information while the call is being routed to the destination GSTN ๐Ÿš€. there are three pieces of NP related information that SIP needs to transport:

  1. the called directory number,
  2. a routing number, and
  3. an NPDB dip indicator.

the NPDB dip indicator is needed so the terminating GSTN won't perform another NPDB dip ๐Ÿ™…โ€โ™€๏ธ. the routing number is needed so it can route the call to the destination network or switch in the destination GSTN ๐Ÿ›ค๏ธ. the called directory number is needed so the terminating GSTN switch can actually terminate the call ๐Ÿ“ž. when the routing number is present, the NPDB dip indicator may not be present, because there are cases where a routing number gets added to route the call even when NP isn't involved ๐Ÿ™ˆ. one issue is how to transport this NP related information via SIP ๐Ÿค”. the SIP Universal Resource Locator (URL) is one mechanism. another, better choice may be to add an extension to the "tel" URL [TEL] that SIP also supports ๐Ÿ’–. see [TELNP] for the proposed extensions to the "tel" URL that support NP and freephone service ๐ŸŽ€. those extensions will be automatically supported by SIP, because they can be carried as the optional parameters in the user portion of the "sip" URL ๐Ÿง.

for a called directory number that belongs to a country that supports NP, and if the IP-based network is expected to perform the NPDB query, the logical step is to do the NPDB dip first ๐Ÿง . that gets the routing number, and then the routing number is used to pick the right IP telephony gateways that can reach the serving switch for the called directory number ๐ŸŽฏ. so if the rn parameter is present in the tel URL or sip URL in the SIP INVITE message, it should be used for making routing decisions instead of the called directory number ๐Ÿ‘‘, as long as no other higher priority routing-related parameters, such as cic (Carrier Identification Code), are present โœจ. if rn (Routing Number) isn't present, then the dialed directory number can be used as the routing number for making routing decisions ๐Ÿ’….

Telephony Routing Information Protocol (TRIP) [TRIP] is a policy driven, inter-administrative domain protocol ๐ŸŒธ. it's used for advertising the reachability of telephony destinations between location servers, and for advertising attributes of the routes to those destinations ๐Ÿ—บ๏ธ. with NP in mind, it's so important to know that, if present, the routing number (not the called directory number) should be used to check against the TRIP tables when making routing decisions ๐Ÿฆ‹.

overlap signaling exists in the GSTN today ๐Ÿ“ถ. for a call routing from the originating GSTN to an IP-based network that involves overlap signaling, NP will impact call processing inside the IP-based networks if they have to deal with that overlap signaling ๐Ÿ˜ฌ. the entities in the IP-based networks that retrieve NP information (like the routing number) must collect a complete called directory number before they retrieve the NP information for a ported number ๐Ÿงฉ. otherwise, the information retrieval won't be successful ๐Ÿ˜ญ. this is an issue for IP-based networks if the originating GSTN doesn't handle overlap signaling by collecting the complete called directory number ๐Ÿ™ƒ.

the IETF ENUM working group is defining how to use the Domain Name System (DNS) to identify available services and/or Internet resources associated with a particular E.164 number ๐ŸŒ. [ENUMPO] outlines the principles for operating a telephone number service that resolves telephone numbers into Internet domain name addresses and service-specific directory discovery ๐Ÿ“š. [ENUMPO] uses a three-level approach ๐Ÿชœ. the first level maps the telephone number delegation tree to the authority the number has been delegated to. the second level provides the requested DNS resource records from a service registrar. the third level provides service specific data from the service provider itself ๐ŸŽ€. NP certainly has to be considered at the first level, because telephony service providers don't "own" or control the telephone numbers in an NP environment, so they may not be the proper entities to hold authority for a given E.164 number ๐Ÿซฃ. on top of that, some countries have a regulatory requirement that the donor network should not be relied on to reach the delegated authority during the DNS process ๐Ÿ™…โ€โ™€๏ธ. the delegated authority for a given E.164 number is most likely an entity designated by the end user who owns or controls that telephone number, or one designated by the service registrar ๐Ÿ‘‘.

telephony service providers may need ENUM for their network-related services (for example, mapping an E.164 number to an HLR Identifier in wireless networks) ๐Ÿ“ก. if that's the case, their ENUM records must be collocated with those of the telephony subscribers ๐Ÿ—‚๏ธ. then NP will impact ENUM when a telephony subscriber with ENUM service switches telephony service providers ๐Ÿ”„. this is because the ENUM records from the new telephony service provider must replace the ones from the old provider ๐Ÿ˜ค. to avoid that NP impact on ENUM, it is recommended that telephony service providers use a different domain tree for their network-related services ๐ŸŒณ. for example, if e164.arpa is chosen for "end user" ENUM, a domain tree other than e164.arpa should be used for "carrier" ENUM ๐Ÿ’œ.

IP-based networks may also need to support some forms of number portability in the future, if E.164 numbers get assigned to IP-based end users ๐Ÿ”ฎ. one method is to assign a GSTN routing number to each IP-based network domain or entity in an NP-capable country. this may increase the number of digits in the routing number to incorporate the IP entities, and it could impact the existing routing in the GSTN ๐Ÿ˜ตโ€๐Ÿ’ซ. another method is to associate each IP entity with a particular GSTN gateway. at that gateway, the called directory number is then used to locate the IP entity that serves that dialed directory number ๐Ÿ“. yet another method is to assign a special routing number so that a call to an end user currently served by an IP entity gets routed to the nearest GSTN gateway. the called directory number is then used to locate the IP entity that serves that dialed directory number ๐Ÿงญ. a mechanism can be developed or used for the IP-based network to locate the IP entity that serves a particular dialed directory number ๐Ÿ”. many other types of networks use E.164 numbers to identify end users or terminals, so number portability among the GSTN, IP-based networks, and those various other networks may also need to be supported in the future ๐ŸŒˆโœจ.

10. Security Considerations ๐Ÿ›ก๏ธ

okay, this section is serious, so listen up ๐Ÿ˜ค. in the PSTN, NPDB queries are generated by the PSTN switches and carried over the SS7 networks to reach the NPDBs and then back to the switches ๐Ÿ“ก. the SS7 networks are run by telecommunications operators and signaling transport service providers in such a closed environment that it's really hard for hackers to get in ๐Ÿ”.

however, when VoIP operators need NP information and have to launch NP queries from their softswitches, media gateway controllers, or call managers, there would be security concerns if the NP queries and responses are transported over the Internet ๐Ÿšจ. if the routing number or routing prefix in the response gets altered during message transport, the call will be routed to the wrong place ๐Ÿ˜ฑ.

it is recommended that NPDB queries be transported via a secure transport layer, or with added security mechanisms, to ensure data integrity ๐Ÿ”’๐Ÿ’–.

11. IANA Considerations ๐ŸŒธ

this document introduces no new values for IANA registration ๐ŸŽ€.

12. Normative References โœจ

okay bestie, these are the docs the spec leans on the hardest ๐Ÿ“š the ANSI, ITU-T, ETSI, GSM, IS-41 and RFC stuff that you need to actually have on hand ๐Ÿ’…

[ANSI OSS] ANSI Technical Requirements No. 1, "Number Portability -
           Operator Services Switching Systems," April 1999.

[ANSI SS]  ANSI Technical Requirements No. 2, "Number Portability -
           Switching Systems," April 1999.

[ANSI DB]  ANSI Technical Requirements No. 3, "Number Portability
           Database and Global Title Translation," April 1999.

[CS1]      ITU-T Q-series  Recommendations - Supplement 4, "Number
           portability Capability set 1 requirements for service
           provider portability (All call query and onward routing),"
           May 1998.

[CS2]      ITU-T Q-series  Recommendations - Supplement 5, "Number
           portability -Capability set 2 requirements for service
           provider portability (Query on release and Dropback),"
           March 1999.

[E164]     ITU-T Recommendation E.164, "The International Public
           Telecommunications Numbering Plan," 1997.

[ENUM]     Falstrom, P., "E.164 number and DNS", RFC 2916, September
           2000.

[ETSIISUP] ETSI EN 302 097 V.1.2.2, Integrated Services Digital
           Network (ISDN); Signalling System No.7 (SS7); ISDN User
           Part (ISUP); Enhancement for support of Number Portability
           (NP) [ITU-T Recommendation Q.769.1 (2000), modified]

[GSM]      GSM 09.02: "Digital cellular telecommunications system
           (Phase 2+); Mobile Application Part (MAP) specification".

[IS41]     TIA/EIA IS-756 Rev. A, "TIA/EIA-41-D Enhancements for
           Wireless Number Portability Phase II (December 1998),
           "Number Portability Network Support," April 1998.

[ITUISUP]  ITU-T Recommendation Q.769.1, "Signaling System No. 7 -
           ISDN User Part Enhancements for the Support of Number
           Portability," December 1999.

[MNP]      ETSI EN 301 716 (2000-10) European Standard
           (Telecommunications series) Digital cellular
           telecommunications system (Phase 2+); Support of Mobile
           Number Portability (MNP); Technical Realisation; Stage 2;
           (GSM 03.66 Version 7.2.0 Release 1998).

[RFC]      Bradner, S., "The Internet Standards Process -- Revision
           3", BCP 9, RFC 2026, October 1996.

13. Informative References โœจ

these ones are the extra reading, the "ooh that's cool to know" stuff ๐Ÿงš they're not required but they're giving context ๐Ÿซถ

[ENUMPO]   Brown A. and G. Vaudreuil, "ENUM Service Specific
           Provisioning: Principles of Operations", Work in Progress.

[SIP]      Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston,
           A., Peterson, J., Sparks, R., Handley, M. and E. Schooler,
           "SIP:  Session Initiation Protocol", RFC 3461, June 2002.

[TEL]      Schulzrinne, H. and A. Vaha-Sipila, "URIs for Telephone
           Calls", Work in Progress.

[TELNP]    Yu, J., "Extensions to the "tel" URL to support Number
           Portability and Freephone Service", Work in Progress.

[TRIP]     Rosenberg, J., Salama, H. and M. Squire, "Telephony
           Routing Information Protocol (TRIP)", RFC 3219, January
           2002.

14. Acknowledgment ๐Ÿซถ

the authors wanted to give a shoutout to Monika Muench ๐Ÿ’œ for helping them out with info on ISUP and MNP. literally the real MVP ๐Ÿ‘‘

15. Authors' Addresses ๐Ÿ’Œ

here are the people who wrote this, all over at NeuStar, Inc. ๐ŸŒธ

Mark D. Foster
NeuStar, Inc.
46000 Center Oak Plaza
Sterling, VA 20166
United States

Phone: +1-571-434-5410
Fax:   +1-571-434-5401
EMail: mark.foster@neustar.biz


Tom McGarry
NeuStar, Inc.
46000 Center Oak Plaza
Sterling, VA 20166
United States

Phone: +1-571-434-5570
Fax:   +1-571-434-5401
EMail: tom.mcgarry@neustar.biz


James Yu
NeuStar, Inc.
46000 Center Oak Plaza
Sterling, VA 20166
United States

Phone: +1-571-434-5572
Fax:   +1-571-434-5401
EMail: james.yu@neustar.biz

this part is the legal stuff, so I'm keeping the wording exactly as it is so nothing gets lost ๐ŸŽ€

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. thank you, Internet Society ๐Ÿ™๐Ÿ’–

๐Ÿ“ฆ where this page comes from