Dial Plan Components
A dial plan is the central part of any telephony solution and defines how calls are routed and interconnected. A dial plan consists of various components, which can be used in various combinations. This section describes the components of a dial plan and how they are used on Cisco IOS gateways.
Defining Dial Plans
Although most people are not acquainted with dial plans by name, they use them daily. A dial plan describes the process of determining how many and which digits are necessary for call routing. If dialed digits match a defined pattern of numbers, the call can processed and forwarded.
Designing dial plans requires knowledge of the network topology, dialing patterns, and traffic routing requirements. There are no dynamic routing protocols for E.164 telephony addresses. VoIP dial plans are statically configured on gateway and gatekeeper platforms.
A dial plan consists of these components:
- Endpoint addressing (numbering plan): Assigning directory numbers to all endpoints and applications (such as voice-mail systems, auto attendants, and conferencing systems) enables you to access internal and external destinations.
- Call routing and path selection: Multiple paths can lead to the same destination. A secondary path can be selected when a primary path is not available. For example, a call can be transparently rerouted over the PSTN during an IP WAN failure.
- Digit manipulation: Manipulation of numbers before routing a call might be required (for example, when a call is rerouted over the PSTN). This can occur before or after the routing decision.
- Calling privileges: Different privileges can be assigned to various devices, granting or denying access to certain destinations. For example, lobby phones might reach only internal destinations, while executive phones could have unrestricted PSTN access.
- Call coverage: You can create special groups of devices to manage incoming calls for a certain service according to different rules (top-down, circular hunt, longest idle, or broadcast). This also ensures that calls are not dropped without being answered.
While these dial plan components can be implemented using a Cisco Unified Communications Manager server, the focus in this book is on implementing these dial plan components on a Cisco IOS router acting as a call agent.
Dial Plan Implementation
Cisco IOS gateways, including Cisco Unified Communications Manager Express and Cisco Unified Survivable Remote Site Telephony (SRST), support all dial plan components. Table 4-6 provides an overview of the methods that Cisco IOS gateways use to implement dial plans.
Table 4-6. Dial Plan Implementation
Dial Plan Component
Cisco IOS Gateway
POTS dial peers for FXS ports, ephone-dn, and voice register directory number
Call routing and path selection
voice translation profile, prefix, digit-strip, forward-digits, and num-exp
Class of Restriction (COR) names and lists
Call hunt, hunt groups, call pickup, call waiting, call forwarding, overlaid directory numbers
Dial Plan Requirements
Figure 4-12 shows a typical dial plan scenario. Calls can be routed via either an IP WAN link or a PSTN link, and routing should work for inbound and outbound PSTN calls, intrasite calls, and intersite calls.
Figure 4-12 Dial Plan Requirements
The dial plan defines the rules that govern how a user reaches any destination. Definitions include the following:
- Extension dialing: Determines how many digits must be dialed to reach an extension
- Extension addressing: Determines how many digits are used to identify extensions
- Dialing privileges: Allows or disallows certain types of calls
- Path selection: Selects one path from several parallel paths
- Automated selection of alternate paths in case of network congestion: For example, using a local carrier for international calls if the preferred international carrier is unavailable
- Blocking of certain numbers: Prevents unwarranted high-cost calls
- Transformation of the called-party number: Allows appropriate digits (that is, DNIS digits) to be presented to the PSTN or a call agent
- Transformation of the calling-party number: Allows appropriate caller-ID information (that is, ANI information) to be presented to a called party
A dial plan suitable for an IP telephony system is not fundamentally different from a dial plan that is designed for a traditional telephony system. However, an IP-based system presents additional possibilities. In an IP environment, telephony users in separate sites can be included in one unified IP-based system. These additional possibilities presented by IP-based systems require you to think about dial plans in new ways.
Endpoint Addressing Considerations
Reachability of internal destinations is provided by assigning directory numbers to all endpoints (such as IP phones, fax machines, and analog phones) and applications (such as voice-mail systems, auto-attendants, and conferencing systems). An example of number assignment is provided in Figure 4-13.
Figure 4-13 Endpoint Addressing
The number of dialable extensions determines the quantity of digits needed to dial extensions. For example, a four-digit abbreviated dial plan cannot accommodate more than 10,000 extensions (from 0000 through 9999). If 0 and 9 are reserved as operator code and external access code, respectively, the number range is further reduced to 8000 (1000 through 8999). If direct inward dialing (DID) is enabled for PSTN calls, the DID numbers are mapped to internal directory numbers.
The most common issue with endpoint addressing is related to the mapping of internal extensions to available DID ranges assigned by the PSTN. When the DID range does not cover the entire internal address scope, an auto-attendant can be used to route calls between the PSTN and the internal network.
One of the biggest challenges when creating an endpoint addressing scheme for a multisite installation is to design a flexible and scalable dial plan that has no impact on the end user. The existing overlapping directory numbers present a typical issue that must be addressed.
Endpoint addressing is primarily managed by a call agent, such as Cisco Unified Communications Manager or Cisco Unified Communications Manager Express.
Call Routing and Path Selection
Call routing and path selection are the dial plan components that define where and how calls should be routed or interconnected. Call routing usually depends on the called number (that is, destination-based call routing is usually performed). This is similar to IP routing, which also relies on destination-based routing. Multiple paths to the same destination might exist, especially in multisite environments (for example, a path using an IP connection or a path using a PSTN connection). Path selection helps you decide which of the available paths should be used.
A voice gateway might be involved with call routing and path selection, depending on the protocol and design that is used. For example, an H.323 gateway will at least route the call between the call leg that points to the call handler and the call leg that points to the PSTN. When a Cisco IOS gateway performs call routing and path selection, the key components that are used are dial peers.
In Figure 4-14, if a user dials an extension number in another location (8-22-2001), the call should be sent over the IP WAN. If the WAN path is unavailable (due to network failure, insufficient bandwidth, or no response), the call should use the local PSTN gateway as a backup and send the call through the PSTN.
Figure 4-14 Path Selection Example
For PSTN-routed calls, digit manipulation should be configured on the gateway to transform the internal numbers to E.164 numbers that can be used in the PSTN.
PSTN Dial Plan Requirements
A PSTN dial plan has three key requirements:
- Inbound call routing: Incoming calls from the PSTN must be routed correctly to their final destination, which might be a directly attached phone or endpoints that are managed by Cisco Unified Communications Manager or Cisco Unified Communications Manager Express. This inbound call routing also includes digit manipulation to ensure that an incoming called number matches the pattern expected by the final destination.
- Outbound call routing: Outgoing calls to the PSTN must be routed to the voice interfaces of the gateway (for example, a T1/E1 or a Foreign Exchange Office [FXO] connection). As with inbound calls, outbound calls might also require digit manipulation to modify a called number according to PSTN requirements. This outbound call routing usually includes stripping of any PSTN access code that might be included in the original called number.
- Correct PSTN calling-party number presentation: An often-neglected aspect is the correct calling number presentation for both inbound and outbound PSTN calls. The calling number for inbound PSTN calls is often left untouched, which might have a negative impact on the end-user experience. The calling number that is presented to the end user should include the PSTN access code and any other identifiers that are required by the PSTN to successfully place a call using that calling number (for example, using the missed calls directory).
Inbound PSTN Calls
Figure 4-15 shows how gateways manage inbound PSTN calls.
Figure 4-15 Inbound PSTN Calls
The site consists of a Cisco Unified Communications Manager Express system with endpoints registered to it, connected to the PSTN over a digital trunk. The DID range of the PSTN trunk is 2005552XXX, and phones use the extension range 1XXX. The processing of an inbound PSTN call occurs in these steps:
- A PSTN user places a call to 1-200-555-2001 (that is, an endpoint with internal extension 1001).
- The call setup message is received by the gateway with a called number of 200-555-2001.
- The gateway modifies the called number to 1001 and routes the call to the voice port that was created when a Cisco Unified IP Phone registered with Cisco Unified Communications Manager Express.
- The phone rings.
Figure 4-16 provides a description of the required number manipulation when a gateway receives an inbound PSTN call.
Figure 4-16 Numbers in Inbound PSTN Calls
Both the called and calling numbers must be transformed:
- The called number can be converted from the public E.164 format to the internal number used for internal dialing. This transformation ensures that the call matches the outbound dial peer that is automatically created at endpoint registration. Directory numbers are commonly configured with their internal extensions.
- The calling number must be presented to the callee in a way that allows callback. Because access codes are commonly used to reach external destinations, a calling number forwarded to the destination should include an access code. Optionally, some region-specific prefixes might have to be added, such as the long-distance prefix in the NANP region, 1.
Outbound PSTN Calls
Figure 4-17 shows the call flow for an outbound call.
Figure 4-17 Outbound PSTN Calls
The site consists of a Cisco Unified Communications Manager Express system with endpoints registered to it, connected to the PSTN over a digital trunk. The access code is 9. The processing of an outbound PSTN call occurs in these steps:
- A user places a call to 9-1-300-555-6001 from the phone with extension 1001.
- The gateway accepts the call and modifies the called number to 1-300-555-6001, stripping off the PSTN access code 9. The gateway also modifies the calling number to 200-555-2001 by prefixing the area code and local code and mapping the four-digit extension to the DID range.
- The gateway sends out a call setup message with the called number set to 1-300-555-6001 and the calling number set to 200-555-2001.
- The PSTN subscriber telephone at 300-555-6001 rings.
Figure 4-18 summarizes the requirements for number manipulation when a gateway processes an outbound PSTN call.
Figure 4-18 Numbers in Outbound PSTN Calls
Both the called and calling numbers must be transformed as follows:
- The called number processing involves the stripping of the access code. Optionally, some region-specific prefixes might have to be added, such as the long-distance prefix in the NANP region, 1.
- The calling number must be converted from the internal extension to the public E.164 format. If the outgoing calling number is not configured on the gateway, the telco operator sets the value to the subscriber number, but this setting might be inaccurate if a DID range is available. For example, the calling number for a call originating from 1002 would be set to 222-555-2000. Setting the calling number is considered a good practice and ensures proper callback functionality.
ISDN Dial Plan Requirements
The type of number (TON) or nature of address indicator (NAI) parameter indicates the scope of the address value, such as whether it is an international number (including the country code) a "national," or domestic number (without country code), and other formats such as "local" format (without an area code). It is relevant for E.164 (regular telephone) numbers.
The TON is carried in ISDN-based environments. Voice gateways must consider the TON when transforming the called and calling numbers for ISDN calls.
ISDN networks impose new number manipulation needs, in addition to the typical requirements for PSTN calls:
- Correct PSTN inbound ANI presentation, depending on TON: Some ISDN networks present the inbound ANI as the shortest dialable number combined with the TON. This treatment of the ANI can be a potential problem, because simply prefixing the PSTN access code might not result in an ANI that can be called back. A potential problem can be solved by proper digit manipulation on gateways.
- Correct PSTN outbound ANI presentation, depending on TON: Some ISDN networks and PBXs might expect a certain numbering plan and TON for both DNIS and ANI. Using incorrect flags might result in incomplete calls or an incorrect DNIS and ANI presentation. Digit manipulation can be used to solve these issues.
In Figure 4-19, three different calls are received at the voice gateway. The first call is received from the local area with a subscriber TON and a seven-digit number. This number only needs to be prefixed with access code 9. The second call, received with a national TON and ten digits, is modified by adding access code 9 and the long-distance number 1, all of which are required for placing calls back to the source of the call. The third call is received from oversees with an international TON. For this call, the access code 9 and 011 must be added to the received number, as a prefix to the country code.
Figure 4-19 Inbound ISDN Calls
Digit manipulation is closely related to call routing and path selection. Digit manipulation is performed for inbound calls to achieve these goals:
- Adjust the called-party number to match internally used patterns
- Present the calling-party number as a dialable number
Digit manipulation is implemented for outbound calls to ensure the following:
- Called number satisfies the internal or PSTN requirements
- Calling number is dialable and provides callback if sufficient PSTN DID is available
Digit manipulation is covered in Chapter 5, "Implementing Dial Plans."
Calling privileges are equivalent to firewalls in networking. They define call permissions by specifying which users can dial given destinations. The two most common areas of deploying calling privileges are as follows:
- Policy-defined rules to reach special endpoints. For example, manager extensions cannot be reached from a lobby phone.
- Billing-related rules that are deployed to control telephony charges. Common examples include the blocking of costly service numbers and restricting international calls.
Calling privileges are referred to as a "Class of Service," but should not be confused with the Layer 2 class of service (CoS) that describes quality of service (QoS) treatment of traffic on Layer 2 switches.
Figure 4-20 illustrates the typical deployment of calling privileges. The internal endpoints are classified into three roles: executive, employee, and lobby. Each role has a set of dialable PSTN destinations that is associated with it. The executives can dial any PSTN number, the employees are allowed to dial any external numbers except international destinations, and the lobby phones permit the dialing of local numbers only.
Figure 4-20 Calling Privileges Example
The deployment of calling privileges is covered in Chapter 5.
Call coverage features are used to ensure that all incoming calls to Cisco Unified Communications Manager Express are answered by someone, regardless of whether the called number is busy or does not answer.
Call coverage can be deployed for two different scopes:
- Individual users: Features such as call waiting and call forwarding increase the chance of a call being answered by giving it another chance for a connection if the dialed user cannot manage the call.
- User groups: Features such as call pickup, call hunt, hunt groups, and overlaid directory numbers provide different ways to distribute the incoming calls to multiple numbers and have them answered by available endpoints.
Call Coverage Features
Cisco voice gateways provide various call coverage features:
- Call forwarding: Calls are automatically diverted to a designated number on busy, no answer, all calls, or only during night-service hours.
- Call hunt: The system automatically searches for an available directory number from a matching group of directory numbers until the call is answered or the hunt is stopped.
- Call pickup: Calls to unstaffed phones can be answered by other phone users using a softkey or by dialing a short code.
- Call waiting: Calls to busy numbers are presented to phone users, giving them the option to answer or let them be forwarded.
- Basic automatic call distribution (B-ACD): Calls to a pilot number are automatically answered by an interactive application that presents callers with a menu of choices before sending them to a queue for a hunt group.
- Hunt groups: Calls are forwarded through a pool of agents until answered or sent to a final number.
- Overlaid ephone-dn: Calls to several numbers can be answered by a single agent or multiple agents.