Revised: March 30, 2012, OL-27011-01
Land-line and cell phone users dial a number to reach each other. Number-based dialing is commonly known as E.164 or PSTN dialing. PSTN numbers have various components such as country codes, area codes, and the destination. PSTN service providers then resolve the dialed numbers as local, long distance, or inter-country numbers and connect the two parties. Similarly, organizations use prefixes such as 9 or 0 for an outside dial tone to differentiate services. Users dial this prefix and then the number they wish to call. Dialing internal numbers within an organization may also use prefixes so that users can dial short numbers and not the entire E.164 number. Some organizations use an abbreviated dial plan, where users in the organization dial a 4 or 5 digit number to reach their colleagues within the same company.
This forms the basis of the dial plan that connects various enterprises, mobile networks, and the PSTN so that people on the respective networks can reach each other. Organizations that are conscious of costs of long distance or international calls can use a numeric dial plan to restrict calls and allow only certain users to dial long distance or international. Similarly, organizations need to have the ability to block unwanted calls such as calls from telemarketing agencies. Organizations should also consider ways to prevent toll fraud when using a number-based dial plan.
Modern Internet communication has been popular since the introduction of e-mail. E-mail addresses provide a way for users to be identified uniquely and are now the new identity. This identity can be used to reach users when they are represented as Uniform Resource Identifiers (URIs). Instant messaging for people to chat with each other uses URIs, and Voice over IP (VoIP) can also use URIs to send calls. The format for a URI is <user-id>@<domain-name>. This format is simple for users and generally easier to remember than a number.
An advanced system is needed to locate the entity represented by the URI, so that calls can be routed to it or the device using it. The system must be able to identify the domain and the servers that represent that domain, as well as being able to service calls. At a minimum, external dependencies such as Domain Name System (DNS) need to be considered. Various VoIP protocols such as H.323 can use Electronic Numbering (ENUM) for this purpose, but this method is not widely used. SIP has made URI dialing more popular due to its origins in web technologies. While different types of dialing methods offer users and enterprises a flexible way to route calls and provide reachability, they require some method to provide good translations between the systems that provide these different types of dialing experiences for users.
Dial Plan Dependencies
When discussing the wide reach of the PSTN, it is important to understand the dependencies of the dial plan:
•E.164-based dial plans can use a variable number of digits. Service providers and telephony systems should be able to accommodate variable-length dialed numbers, and users should be used to dialing those numbers. If there are different lengths of dialed numbers, the way the service provider handles them will be different than how an organization would handle them. Service providers need to normalize the numbers for caller ID, while the organizations have to normalize the numbers for direct inward dialing (DID) or for a country-specific dial plan and thus might have to transform the calling or called numbers.
•Connecting a voice and video system to the rest of the world requires PSTN or IP connectivity to call other devices and to be reachable. IP-based systems need connectivity to the external networks and may use direct peering or some other mechanism to resolve the dial plan through the IP network.
•IP-based networks need different mechanisms to resolve dial plan between them.
–Electronic Numbering (ENUM) is used for number-based calling. ENUM provides a way to translate an E.164 number to a corresponding IP address. The service is provided by a ENUM server. Subscription to the service and network connectivity are needed, and DNS services are also needed.
–DNS Service (SRV) is used for systems supporting URI dialing. The DNS SRV records provide domain name information as well as information on call services such as H.323 or SIP protocols and UDP or TCP types and additional parameters that are useful for call agents. Call agents then use this information to send calls to hosts.
•A single user may have more than one endpoint or device. In such cases the dial plan should be able to reach all of the user's devices when a single number or URI is dialed. Therefore, number-based systems should support shared lines and URI-based systems should support alias.
Number-Based Dial Plan Networks
Numeric dial plan systems are more widely deployed. PSTN and H.323 systems use numbers to reach endpoints. PSTN and IP PBX systems own their dial plan and assign numbers to their endpoints. The H.323 network gets the dial plan from the endpoints because the endpoints own the dial plan and share it with the system so that calls can be routed. Exact or most significant match of dialed digits is used to resolve the dial plan for such systems.
The emergency services network such as the E.911 network in the United States is another type of system that uses numeric dialing. Numeric dialing is used not only to reach the services but also to reach the callers, so that additional information associated with the location of the caller can be used to provide the emergency services.
URI-Based Dial Plan Networks
Software-based video endpoints make it easy to dial URIs. Most applications make it even easier by providing the click-to-call feature. The ease of dialing based on e-mail IDs is very appealing to users. Most deployments use a common directory service such as Lightweight Directory Access Protocol (LDAP) to reference a common identity system that provides e-mail IDs for users to dial each other. Therefore calling outside of the organization's LDAP system has external dependencies.
DNS provides information on domains so that calls can be routed using domains, similar to instant messaging systems. DNS is the most common system that is widely used for business-to-business communications as a common network where information on how to connect to the organizations is available, so that organizations can make external calls to each other.
Call Resolution with Dial Plans
Call agents use the dialed information to make decisions about how to route calls. Common ways of processing numbers for calls use the best match for the digits or the most significant match of the routes that the call agent handles. Endpoints have unique E.164 numbers. Call agents can identify the country-specific information or the prefix information and then make decisions to send calls to respective endpoints or to neighbors who service those dialed numbers. Call agents also need to resolve calls for emergency services and for local calls, so that calls can then be sent to local gateways. In the case of numeric dialing, the concept of local area codes serves as a way to identify calls that need to be sent to local resources or to systems that are not local.
Registering devices with URIs also provides uniqueness for users. Call agents can then identify the destination based on the URI. Multiple servers across multiple locations can service a domain, and therefore the call agents must be able to resolve the domain and then the server that has the registration for a given URI. If a destination location is not available, other methods will be needed for making decisions to resolve calls for emergency services, local IP trunks, or hop-off gateways. In addition, call agents that need to route with URIs for conferencing services should be capable of choosing the conference bridge closest to the participants.
Communicating to the rest of the world means that there should be an interface to the PSTN and the IP network. Gateways that connect to the PSTN through ISDN provide for voice connectivity to the PSTN. The gateways provide key functions of normalizing calling and called numbers when interfacing with a numeric-based PSTN network. Toll fraud prevention should be used for PSTN gateways.
Border elements or IP gateways provide connectivity to an IP-based PSTN either through the service provider or through the public Internet. The gateways provide topology hiding for the internal IP networks and normalization for calls. The gateways need to have additional security measures to prevent denial-of-service attacks and attempts to compromise them.
Call agents perform transformations on the dial plan by transparently changing the calling and called numbers to normalize information of the callers. Transformation is a key function of call agents to standardize user information for calls. It is also important for relaying information for calls that are not answered, so that users can then dial back to the callers once they have time to make the calls. Organizations use transformations to mask their caller IDs or to present callback information to a generic and standardized format. For PSTN calls, organizations use their public numbers for outgoing calls rather than expose the internal numbers of their users. URI-based systems use transformations to normalize calls within their domain and for calls from external organizations.
Some organizations also use DID to oversubscribe internal users to their external ISDN lines. This gives the organization a way to provide endpoints to all its users while choosing appropriate lines for external calls. With URI registration, the concept of oversubscription is limited to the capacity used by calls rather than the number range of the endpoints.
Dial Plan Manipulation
Changing various aspects of the caller or called-party information at various system elements is done to assist call routing. Caller information needs to be manipulated so that information presented to the caller or called party is normalized. It also is useful if the call goes unanswered and the user needs to reference information on missed calls or received calls. In the case of numeric dial plans, these goals are simple to address; however, for URI dialing the call agent must have mechanisms to achieve the desired goals.
Call agents may manipulate caller information to perform call resolution. Call agents can choose to add area codes to change numbers to E.164 format and then route them. Providing such manipulation may require basic pattern matching and replacement functionality. In the case of URI dialing, normalizing the domain may be used so that call agents can process the URI. To provide searching and replacement of alphanumeric content, a more elaborate method using regular expressions is needed. Regular expressions provide greater flexibility for alphanumeric URI formats, but they might not be as simple as numeric dial plan manipulation.
Classes of Restrictions
Organizations typically want to allowing some users to have access to certain services while denying other users access to those same services. The most common cases are for long distance and international dialing restrictions. While restrictions on calls and callers are easy to implement and deploy based on caller number or called number, those restrictions can be complex for URI dialing. Restrictions can also be used to prevent calls to toll-free destinations or from telemarketing agencies. Numeric dial plans can use know number ranges, such as 1-888 collect call numbers, to block calls. With URI dialing, this can be a challenge because restricting calls based on URIs requires a list of restricted URIs that need to be configured through the call agent to define a class-of-restriction policy for calls.