What Does a Unified Dial Plan Look
Like?
William Bell,
Chesapeake Netcraftsmen
[email protected]
October, 2009
Copyright 2009
Agenda
Dial Plan Elements Overview
An introduction to basic elements of the Cisco Unified
Communications Manager (CUCM) solution
Evolution of a Dial Plan
Using real situations as examples, we will touch on issues with some
common dial plan implementations and how architectures must evolve
Dial Plan Changes in CUCM 7x
Significant features have been introduced with CUCM 7x that facilitate
greater adaptability and scalability within a dial plan
Copyright 2009
Dial Plan Basics
The Cliff Notes Version
Copyright 2009
Call Types and Routing
IP
IP
IP
Site 1
1
OnNet/IntraCluster:
OffNet:
InterCluster:
Alternate Routing:
3
4
IP
Site 2
Destination directory number (DN) is registered
with local CUCM cluster
DN is routed through PSTN
DN exists on another CUCM cluster
Allowing calls to follow alternate paths
4
Copyright 2009
Digit Analysis: Patterns
Pattern
Description
Example
0,1,2,3,4,5,6,7,8,9,*,#
Match exactly one keypad button
Any single digit 0-9
72XX matches 7200 to 7299
[xyz]
Exactly one of any KP buttons in brackets
7[2468]00 matches 7200, 7400,
7600, 7800
[x-z]
Exactly one of any digit between x and z,
inclusive
7[2-5]00 matches 7200, 7300, 7400,
7500
[^x-z]
Any digit that is NOT between x and z,
inclusive
7[^2-8]00 matches 7000, 7100,
7900
One or more digits in the range of 0-9
9! Matches 91, 9123, 91234,
912345678123
Matches zero or more occurrences of
previous digit
91?4105551212 matches
94105551212, 914105551212
Matches one or more occurrences of
previous digit
91+ matches 91, 911, 9111, 91111
\+
The + also is a special character in CUCM
7.x that is used for e.164 dialing strings
+14105551212 is the e.164 number
for station in 410 NPA of the NANP
Numbering plan macro
9.@
5
Copyright 2009
Digit Analysis: More Examples
*2000
An exact match for pattern *2000 (asterisk is a digit!)
2XXX#
Any pattern 2000# to 2999# (the # has to be dialed)
9.911
Matches 9911, the dot . is used for digit manipulation
9.1[2-9]XX[2-9]XXXXXX
Matches long distance dialing strings in NANP
9.[2-8]11
Matches PSTN service codes in NANP
9.[^19]11
Same as above, though less intuitive
9.011!
International dialing prefix for North America, will match any number of digits
after the 011 (e.g. 9.011330856778)
1[2-5]6[189]X
Matches 12610, 12611, 15689, etc.
1[^16789]6[^0234567]X
Invalid. Only one circumflex character is allowed per string
<blank>
Meaning no digits. This is allowed, and will be an immediate match/route.
A PLAR like application
9.1?410[2-9]XXXXXX
Matches 94105551212, 914105551212, and 91111111114105551212
yeah, thats right
\+!
New in CUCM 7x, matches any e.164 number string
6
Copyright 2009
Digit Analysis: Pattern Types
Pattern Type
Description
Device (Directory Number)
Pattern assigned to station line on IP phone, CTI Port,
CTI Route Point
Route Pattern
Pattern used to send calls to any Off Cluster location
Translation Pattern
Similar to Route Patterns in form and function but
keeps call On Cluster
Voicemail Port
Pattern assigned to voicemail port
Message Waiting
Pattern used by voicemail applications to toggle MWI
Hunt Pilot
Patterns used to direct callers to hunt groups/line
groups
Call Pickup
Patterns that link line DNs together and allow users to
grab a call to any DN in their pickup group
Call Park / Directed Call Park
Patterns that allow users to place callers on hold in a
way that can be retrieved by another phone line
Intercom
Like DNs but application specific pattern for intercom
Intercom Translations
Like translation but applied to intercom configs only
7
Copyright 2009
Digit Analysis: Pattern Types (2)
Pattern Type
Description
Conference
Meet me line numbers that users can leverage to open
up multi-party conference lines
Voicemail Pilot
Pilot numbers that are used to control routing of
messages button and allow easier admin of call
forwarding to VM
Transformation Patterns
Used to normalize calling party information when
presented to end station. Objective is to minimize need
for called user to manipulate digits on return calls
Application Dial Rules
Used by applications like Click-to-call widget, CUCM
Assistant, and Web Dialer to manipulate digits to
conform to dial plan
Directory Lookup Dial Rules
Used by Attendant Console application to assist in
mapping an existing directory name to calling party
number
SIP Dial Rules
Used by SIP end points (line side) to enable SIP phones
to be aware of the basic dial plan rules of the CUCM
cluster and process user digits efficiently
8
Copyright 2009
Digit Analysis: Process Example
Configured Patterns
User Action: <offhook
<offhook>
>
CUCM Actions:
Provide Dial Tone
Wait for Off Hook to First Digit
timeout
8111
Might Match
8211
Might Match
8[23]XX
Might Match
8[^4--9]X9
8[^4
Might Match
821
Might Match
82?1
Might Match
8[08[0-4]XX
Might Match
82!
Might Match
Copyright 2009
Digit Analysis: Process Example
Configured Patterns
User Action: dial 8
CUCM Actions:
Break Dial Tone
Wait for interdigit timeout
Digit Analysis: 8
10
8111
Might Match
8211
Might Match
8[23]XX
Might Match
8[^4--9]X9
8[^4
Might Match
821
Might Match
82?1
Might Match
8[08[0-4]XX
Might Match
82!
Might Match
Copyright 2009
Digit Analysis: Process Example
Configured Patterns
User Action: dial 2
CUCM Actions:
Wait for interdigit timeout
Keep Waiting as more digits may
result in a different match
Digit Analysis: 82
11
8111
No Match
8311
No Match
8[23]XX
Might Match
8[^4--9]X9
8[^4
Might Match
821
Might Match
82?1
Might Match
8[08[0-4]XX
Might Match
82!
Match! + More
Copyright 2009
Digit Analysis: Process Example
Configured Patterns
User Action: dial 1
CUCM Actions:
Wait for interdigit timeout
Keep Waiting as more digits may
result in a different match
Digit Analysis: 821
12
8111
No Match
8311
No Match
8[23]XX
Might Match
8[^4--9]X9
8[^4
Might Match
821
Match!
82?1
Match!
8[08[0-4]XX
Might Match
82!
Match! + More
Copyright 2009
Digit Analysis: Process Example
Configured Patterns
User Action: dial 1
CUCM Actions:
Wait for interdigit timeout
Keep Waiting as more digits may
result in a different match
Digit Analysis: 8211
13
8111
No Match
8311
No Match
8[23]XX
Match!
8[^4--9]X9
8[^4
No Match
821
No Match
82?1
No Match
8[08[0-4]XX
Match!
82!
Match! + More
Copyright 2009
Digit Analysis: Process Example
Configured Patterns
User Action: <wait>
CUCM Actions:
Interdigit timeout occurs
Digit Analysis: 8211
Which Pattern is chosen?
8[23]XX
200 Potential Matches
8[08[0-4]XX
500 Potential Matches
82!
100 Potential Matches
8111
No Match
8311
No Match
8[23]XX
Match!
8[^4--9]X9
8[^4
No Match
821
No Match
82?1
No Match
8[08[0-4]XX
Match!
82!
Match! + More
With ! there are number of
matches. However, CUCM only
looks at potential matches given
number of digits dialed!
14
Copyright 2009
Partitions and Calling Search Spaces
Patterns are given context with Partitions and Calling
Search Spaces (CSS)
A Partition (PT) is a container that holds patterns
A CSS is a container that holds Partitions
CSS: MyPhone_CSS
P1
A_PT
8[23]XX
911
9.011!#
P2
B_PT
8[23]XX
8211
8311
P3
C_PT
8[23]XX
9.[2--9]XX[29.[2
9]XX[2-9]XXXXXX
15
Copyright 2009
Partitions and Calling Search Spaces
CSS is assigned to any object that
can Originate or Redirect a call
setup
IP
Partitions are assigned to any object that has a digit
pattern.
Phones
CSS: CSS1
8301
8302
8303
84XX
75XX
76^4X
9.911
9.[2--9]XXXXXX
9.[2
Lines
A_PT
B_PT
Lines
CSS: CSS2
A_PT
B_PT
Route
Patterns
9.1[2--9]XX[29.1[2
9]XX[2-9]XXXXXX
Gateways
CSS: CSS3
B_PT
7630
5000
61XX
62XX
5055
5056
A_PT
B_PT
TP
Translations
Translations
CSS: CSS4
5100
CTI RP/Ports
Special (MML
Call Pickup)
VM Ports
A_PT
16
Copyright 2009
Digit Analysis: CSS+Partitions
Longest Match Wins!
No matter what the partition order is, the
longest digit match wins!
Partition Priority Determines Tie Breaker!
If two patterns present an identical match,
then partition priority plays a role
Line CSS and Device CSS are additive!
The effective CSS when a user goes off
hook to call is the concatenation of the
line level CSS and device level
CSS. Notice what happens
now when we dial 8277.
17
Copyright 2009
<none>
There is a special route partition: <none>
<none> PT is visible from all Calling Search Spaces
There is a special CSS: <none>
<none> CSS contains only the <none> PT
Using the <none> partition can lead to unexpected call
routing behavior
Mixing <none> CSS and partitions is living on
borrowed time
Note that in pre-6x releases, having a Call Forward All
(CFA) CSS of <none> would cause the CUCM
forwarding engine to use the calling partys CSS to
route the call
18
Copyright 2009
I Found a Match, Now What?
Route Patterns use Route Lists (RL) to start selecting a
call path (traditional)
Route Lists contain Route Groups (RG)
Tertiary Route Groups*
Varies by cluster and tenant*
IP
IP Phone
Stations
IP Phone
Outbound
Route
Patterns
Inbound DID
ROUTE GROUP
Gateway
ROUTE GROUP
Gateway
ROUTE GROUP
Gateway
ROUTE GROUP
Gateway
Route List
PRI1
Gway01
PRI2
PRI1
Gway02
Gateways
PRI2
Stations
Route Plan
Egress and ingress call paths use
opposite hunt orders
Features in CUCM 7x will be discussed later
19
Copyright 2009
The Evolution of a Dial Plan
Everything should be made as simple as
possible, but not simpler.
20
Copyright 2009
Case Studies
Case Study: Class of Restriction (COR)
Device Level vs. Line Level COR options, the first evolution taken by
Cisco in their advanced dial plan education series
Case Study: Multi-tenant Dial Plan
What happens when you must provide different tenant groups
completely different abbreviated dialing solutions in a non-uniform dial
plan
Case Study: Dial Plan Hierarchy
Why should one try to put some structure into their dial plan design
21
Copyright 2009
Evolution of a Dial Plan
Case Study: Class of Restriction (COR)
22
Copyright 2009
A Case Study: Class of Restriction (COR)
The traditional Class of Restriction approach was to implicitly block access to digit
patterns by creating COR classes which only included what a user could dial.
Calling Search Spaces
InternalCSS
LocalCSS
Partitions
InternalPT
All Phones
LocalPSTNPT
Local 7d/10d
LongDistanceCSS
PSTN RL
LDPT
PSTN RG
91+10d
InternationalCSS
International
9011!
23
Copyright 2009
A Case Study: Class of Restriction (COR)
This may be fine for a deployment with one site, but what if you have multiple sites
with different gateways, route groups, route lists?
IP
InternalCSS
IP
HQLocalCSS
IP
HQLDCSS
IP
HQIntlCSS
IP
S1LocalCSS
IP
S1LDCSS
IP
S1IntlCSS
InternalPT
HQLocalPT
S1LocalPT
HQLongDistPT
S1LongDistPT
HQIntlPT
S1IntlPT
The CSSs required is a factor of N sites * 3 plus the InternalCSS used by all phones.
5 sites require 16 CSS configurations
10 sites require 31 CSS configurations
24
Copyright 2009
A Case Study: Class of Restriction (COR)
What happens when you have a need to allow local sites to reach their office
attendants by dialing 0? Then you need to have an HQInternalPT and a
S1InternalPT, along with the associated CSS. So, (N*4) CSSs are needed.
IP
HQInternalCSS
IP
HQLocalCSS
IP
HQLDCSS
IP
HQIntlCSS
IP
S1InternalCSS
IP
S1LocalCSS
IP
S1LDCSS
IP
S1IntlCSS
S1_Tenant-Std_PT
HQ_Tenant-Std_PT
HQLocalPT
S1LocalPT
HQLongDistPT
S1LongDistPT
HQIntlPT
S1IntlPT
A deployment with 5 sites has at least 20 CSS configurations
A deployment with 10 sites has at least 40 CSS configurations
What about services that are shared across all sites?
What if you wanted to add Forced Authorization Codes to this solution?
What about Extension Mobility?
25
Copyright 2009
A Solution: Class of Restriction (COR)
Lines Line Level CSS provides COR for All
CL_COR-LD_CSS
CL_COR-Local_CSS
Line CSS and Device CSS
CL_COR-Intl_CSS
Recall the inherent behavior Of
line+device
We reduce the equation to N+3
5 sites have 8 CSS configurations
10 sites have 13 CSS
configurations
CL_Block-Local_PT
CL_Block-LD_PT
CL_Block-Intl_PT
Phones (no cor)
cor)
IP
IP
IP
HQ_User--Std_CSS
HQ_User
HQ_UserHQ_User-Std_CSS
HQ_Tenant--Std_PT
HQ_Tenant
S1_User--Std_CSS
S1_User
S1_Tenant--Std_PT
S1_Tenant
InternalPT
HQ_PSTN--Std_PT
HQ_PSTN
S1_PSTN--Std_PT
S1_PSTN
26
Copyright 2009
A Solution: Class of Restriction (COR)
Line Level COR
Extension Mobility
CL_COR--LD_CSS
CL_COR
User Device Profiles (UDP) are configured with
lines
A UDP line will override device lines when user
logs on
COR follows user profiles
CL_Block--LD_PT
CL_Block
CL_Block--Intl_PT
CL_Block
Phones (no cor)
cor)
IP
IP
HQ_User--Std_CSS
HQ_User
HQ_User--Std_CSS
HQ_User
HQ_Tenant--Std_PT
HQ_Tenant
IP
S1_User--Std_CSS
S1_User
S1_Tenant--Std_PT
S1_Tenant
InternalPT
HQ_PSTN--Std_PT
HQ_PSTN
27
S1_PSTN--Std_PT
S1_PSTN
Copyright 2009
Evolution of a Dial Plan
Case Study: Multi-tenant Dial Plan
28
Copyright 2009
A Case Study: Multi-tenant Dial Plan
Gateway
accepts 5d while
phones are 3d
5 digit
IP
Custom XML
directory app
202-112-3XXX
3d range
overlaps with SiteSiteA, B, C 5d ranges
4 digit
V
x7100
IP
Corporate Directory
views require
modification
x232
x231
Prefix at
gateway or use
translations
IP
Site-A
3 digit
Site-B
4 digit
IP
Exclude ranges
27x and 6xx in
Site--A OR T.320
Site
timer
IP
x65231
x7101
202-112-7XXX
5 digit
5 digit
Site-C
5 digit
IP
x65232
202-116-XXXX
Tactical Fixes
29
Copyright 2009
A Solution: Multi-tenant Dial Plan
Future Challenges
Engineering
Business
Wants a uniform dial plan
Wants to minimize impact on users
Wants to centralize services like VM
Plans to keep expanding
Needs to interoperate with Centrex/PBX
Minimize costs with centralized services
One Aspect of Solution: Variable Length OffNet Dialing (VLOD
(VLOD)) with Flat Addressing
IP
User Dials
Translations
Phone DNs
Phones (no cor)
cor)
SA_User--Std_CSS
SA_User
SA_Tenant--Std_PT
SA_Tenant
One PT
2[^7]XX 2021123xxx
0, [^267]XX,2[^7]XX
2021123260
CL_Tenant--Std_PT
CL_Tenant
27XXX
27XXX,6XXXX*
2021127xxx
2021127260
<other partitions>
*NOTE: We dont have a global translation to
site_A
30
Copyright 2009
A Solution: Multi-tenant Dial Plan
The Ingredients
Directory Number Digit Strings
Use a digit string standard that is
guaranteed unique:
- Site code method 8SSS
8SSSHHHH
HHHH
- NANP method NPANXX
NPANXXHHHH
HHHH
- E.164 method \+! (e.g. +14105551212)
Directory Numbers Assign to a Single PT
Scalability for application features (e.g
(e.g):
):
- Multi
Multi--tenant MWI
- Presence
- Time of Day routing
DN Partition not Directly Visible from
Calling Station
Required if you want to also support local
abbreviated dialing translations and for
other reasons
Translation Patterns are Your Friend
Translations are handy tactical tools and
absolutely necessary when building a
modular and scalable dial plan design
31
Copyright 2009
A Solution: Multi-tenant Dial Plan
Handy Info
Other Considerations
Use Line Labels to trick users
Interoperability and exchanging
Calling, Called, and Redirect party
information with external systems like
Voicemail, nonnon-Cisco PBX, Intercluster
trunk, and Centrex
The Placed Calls directory will use what
was dialed and not the translated
pattern
Learn to use Dialed Number Analysis
(DNA) tool
Call origination points other than IP
Phones (e.g. VM, Contact Center, PSTN)
For private or soft extensions,
consider using leading digit of 0 or 1 in
the NPA or NXX field of a NANP
number: these numbers are excluded
from geographic or service assignment
Corporate Directory(ies
Directory(ies))
32
Copyright 2009
Evolution of a Dial Plan
Case Study: Dial Plan Hierarchy
33
Copyright 2009
A Case Study: Dial Plan Hierarchy
Not a topic that gets adequate attention. Scenario: Each remote site has its own CSS
and Partitions. Phones at a remote site are in RS PT but all sites can see all PTs.
Finally, pattern types/functions are combined in same partitions.
Calling Search Spaces
Partitions
InternalPT
HQ Phones
HQ Hunt Pilots
All VM Patterns
HQCSS
HQ Route Patterns
All CCX Patterns
RemoteSite1PT
RemoteSiteCSS
RS Phones
RS Hunt Pilots
34
RS Route Patterns
Copyright 2009
A Case Study: Dial Plan Hierarchy
Why is this an issue?
There is potential overlapping with route patterns. Admin
inadvertently adds a more specific pattern to allow callers
with LD restriction to call 301 NPA in HQ.
Calling Search Spaces
Partitions
InternalPT
HQ Phones
HQ Hunt Pilots
All VM Patterns
HQCSS
HQ Route Patterns
All CCX Patterns
9.1301[2--9]xxxxxx
9.1301[2
9]xxxxxx
RemoteSite1PT
RemoteSiteCSS
RS Phones
RS Hunt Pilots
RS Route Patterns
9.[2--9]xx[29.[2
9]xx[2-9]
9]xxxxxx
xxxxxx
On the surface, it is nice to have a design which allows for a
single configuration step to override defaults. But what if
you had 5+ sites and you dont want calls to start flowing to
HQ for the 301 NPA?
35
Copyright 2009
A Case Study: Dial Plan Hierarchy
Why is this an issue?
There is potential overlapping between pattern types.
Admin wants a regional sites calls to 411 to route to
internal operator to reduce 411 costs
Calling Search Spaces
Partitions
InternalPT
HQ Phones
HQ Hunt Pilots
All VM Patterns
HQCSS
HQ Route Patterns
All CCX Patterns
9.[2--8]11 or 9.@
9.[2
RemoteSite1PT
RemoteSiteCSS
RS Phones
RS Hunt Pilots
RS Route Patterns
9.411/9.[2--9]xx5551212 operator
9.411/9.[2
Calls to 411 from HQ now flow to remote site. Also, what
happens when that internal operator needs to call 411 for
any reason? What about other regional sites?
36
Copyright 2009
A Case Study: Dial Plan Hierarchy
Why is this an issue?
Configurations on an application may affect the end user
community? Admin decided to use nonnon-DID range of
9XXXX for CCX ports.
Calling Search Spaces
Partitions
InternalPT
HQ Phones
HQ Hunt Pilots
All VM Patterns
HQCSS
HQ Route Patterns
All CCX Patterns
9XXXX
no secondary dial tone
RemoteSite1PT
RemoteSiteCSS
RS Phones
RS Hunt Pilots
RS Route Patterns
no secondary dial tone
Secondary dial tone is provided by CUCM when all patterns
that match a dial digit have this option checked. This option
is only available on Route Patterns and translations.
37
Copyright 2009
A Case Study: Dial Plan Hierarchy
Why is this an issue?
Calling Search Spaces
Configurations for end users may negatively impact
applications. Customer has Unity with failover and has
secondary Unity configured to fail immediate on receiving
calls.
Partitions
8730 to 8799
HQ Phones
InternalPT
HQ Hunt Pilots
All VM Patterns
HQCSS
HQ Route Patterns
IP
IP
CFA
All CCX Patterns
8701 to
8724
Forward: 8724
RemoteSite1PT
RemoteSiteCSS
RS Phones
RS Hunt Pilots
RS Route Patterns
User accidently forwards calls to 8724 (instead of 8754) and
admin reports intermittent Unity failures in the middle of the
day. Something must be wrong with CUCM or Unity, right??
38
Copyright 2009
A Case Study: Dial Plan Hierarchy
Why is this an issue?
Calling Search Spaces
On initial build, admin thought that 7XXX would never be a
supported DID range and assigned this as an internal
extension range. Then one day, a new site comes on and
0xxx, 7xxx, and 9xxx are all that is available.
Partitions
70XX
72XX
InternalPT
HQ Phones
HQ Hunt Pilots
All VM Patterns
HQCSS
HQ Route Patterns
All CCX Patterns
71XX
73XX
RemoteSite1PT
RemoteSiteCSS
RS Phones
RS Hunt Pilots
RS Route Patterns
7[57[5-9]XX
There are options, but just like this slide, none are pretty and
all require some heavy lifting.
39
Copyright 2009
Solution: Dial Plan Hierarchy
At some point in time a dial plan solution has to be more than pushing
digits between plastic. It should enable the business, not restrict it.
First Step: Define Objectives
Meet existing population
needs and support growth
Ability to quickly adapt to
changing business needs
Must account for the most
complex scenario for any given
component
Facilitate easier maintenance
and troubleshooting
40
Copyright 2009
Solution: Dial Plan Hierarchy
External Entities: No direct access to internal
V
5-digit dial
3-digit dial
Application Triggers and
Service Numbers
IP
IP
IP
IP
User Tenants
Application Tenants
41
Copyright 2009
Solution: Dial Plan Hierarchy
A phones view
Station--to
Station
to--Station
Site HQ
Site S1
IP
IP
Device Level CSS
S (No Restrictions)
All Phones in HQ
Tenant Local
All Phones in S1
Tenant Local
Tenant Global
Dial: 0
Dial: 8051234
Custom Services if needed
Private Services
Tenant Controls
Translation Patterns That Deal with
Abbreviated Dialing, 8+site code,
9+NANP, etc.
Corporate Services
Standard Blocking
Tenant Control CSS
Intercluster/Inter PBX Routing
PSTN Local
PSTN Local
Special Routing Rules i.e. ToD
Phone Directory Number
PSTN Global
IP
IP
Public Services
Special Routing Rules i.e. PABX
02025551234
80512344105551234
8051234
42
Copyright 2009
Solution: Dial Plan Hierarchy
A phones view
Station--to
Station
to--PSTN
Line Level COR
Site HQ
(empty)
IP
CL_COR-LD_CSS
IP
All Phones in HQ
Device Level CSS (No
o Restrictions)
BLOCK
91900XXXXXX
91?[2--9]XX976XXXX
91?[2
9976XXXX
Virgin Islands,
Barbados, etc.*
Site S1
Tenant Local
All Phones in S1
Tenant Local
CL_Block-LD_PT
CL_Block-Intl_PT
COR Takes Priority
Tenant Global
Custom Services if needed
Private Services
Corporate Services
Standard Blocking
Intercluster/Inter PBX Routing
PSTN Local
PSTN Local
PSTN Global
9.[2--9]xx[29.[2
9]xx[2-9]
9]xxxxxx
xxxxxx**
**
9.[2--9]xx[29.[2
9]xx[2-9]
9]xxxxxx
xxxxxx
*Keep in mind that NANP
covers more than the US
**CUCM 7x Local Route
Group Consideration
43
Copyright 2009
Solution: Dial Plan Hierarchy
A phones view
Station--to
Station
to--Application
Site HQ
Site S1
IP
IP
Tenant Controls
Translation Patterns That Deal with
Abbreviated Dialing, 8+site code,
9+NANP, etc.
Tenant Control CSS
Special Routing Rules i.e. ToD
Phone Directory Number
Public Services
Special Routing Rules i.e. PABX
Public Services/Apps
MML
VM Pilot/Hunt Pilot
CCX DID
CER Translations
Device Level CS
SS (No Restrictions)
All Phones in HQ
All Phones in S1
Tenant Local
Tenant Local
Tenant Global
Custom Services if needed
Private Services
Private Services/Apps
VM Pilot (messages)
Call Park/Pickup
CCX Trigger
* patterns (vm
(vm xfer)
xfer)
Corporate Services
Standard Blocking
Intercluster/Inter PBX Routing
PSTN Local
PSTN Local
PSTN Global
44
Corporate Services
Custom Redirect
(e.g. 411/5551212)
Services available to
other customer
owned PBX (ICT or
other)
Copyright 2009
Solution: Dial Plan Hierarchy
A phones view
Station--to
Station
to--PBX
Site HQ
Site S1
IP
IP
Tenant Controls
Translation Patterns That Deal with
Abbreviated Dialing, 8+site code,
9+NANP, etc.
Tenant Control CSS
Special Routing Rules i.e. ToD
Phone Directory Number
Public Services
Special Routing Rules i.e. PABX
Device Level CS
SS (No Restrictions)
All Phones in HQ
All Phones in S1
Tenant Local
Tenant Local
Tenant Global
Custom Services if needed
Private Services
Corporate Services
Standard Blocking
Intercluster/Inter PBX Routing
PSTN Local
PSTN Local
PBX Routing NonNon-Shared
Non
Non--shared DID range
TEHO via ICT
ICT patterns/PBX
patterns
Pass calls as dialed
PSTN Global
PBX Routing Shared DP
Shared DID range
with another PBX
Apply Tenant Control
rules
Route
45
Copyright 2009
Solution: Dial Plan Hierarchy
A GW view
IP
Cluster User/Apps
Allow phones to see all
controlled DNs
PSTN Gateways
Same as Phones,
except:
Cannot see PBX routes
(by default)
46
PBX Gateways
Corporate Services
PSTN routing for
tandem access or
TEHO
Also External
Control
Why hide PBX routes
from PBX voice
gateways?
Copyright 2009
Solution: Dial Plan Hierarchy
V
Gateway (PSTN)
Inbound Site1
ICT Inbound From
WAN
Cluster Private
Services
(only tenants on a
single cluster)
Gateway (PSTN)
Inbound Site2
Cluster Tenant Controls
Cluster Public
Services
(VALID NPANXX
Reachable by all
calling parties)
Tenant_1 Patterns
Tenant_2 Patterns
Corporate Private
Services
Application Tenant
Patterns
5-digit or
8SSxxx
Direct/
Redirect to
VM
Application-VM
5-digit dial
Site_C
3-digit dial
Site_A
IP
2025551111
IP
2025552222
202NXXhhhh Tenant
VM Ports
IP
9165551111
IP
We conceptually
group our dial plan
elements.
Everything has a
home.
We configure
patterns to control
access to/from a
tenant
9165552222
Application Tenant
VoiceMail Example
916NXXxxxx Tenant
We define rules for handling calls flowing in,
through, and out of the system and apply them
consistently. In doing so, we find that the core
dial plan stays consistent, only the numbers
change.
47
We leverage flat
addressing for all
applications and
user stations
Copyright 2009
Dial Plan Changes in CUCM 7x
Imagination is more important than knowledge.
Knowledge is limited, imagination encircles the
world
48
Copyright 2009
Dial Plan and CUCM 7x
Local Route Groups
The ability to dictate egress call routing behavior based on physical
location of the calling device provides a key feature to the CUCM 7x
new dial plan approach
Support for E.164 global format with +
dialing
CUCM 7x now supports + dialing from speed dials, applications, call
lists, and directories. This provides CUCM with more options for
integration and interoperability with applications like MS OCS and
future position for end-to-end SIP carrier services
Support for ingress/egress calling and called
party transformations
Used in conjunction with + dialing (or without!), this feature allows for
more granular control on localizing number presentation for ingress
and egress calling
49
Copyright 2009
Dial Plan and CUCM 7x
Local Route Groups
The Concept
Leverage an existing configuration parameter (Device Pool) to
attach sitesite-specific call routing rules
Add a new option to existing configuration parameter (Route
List) that is a pointer to sitesite-specific routing rules
Objective: Endow a single route pattern with the ability to
route calls to different locations based on the device placing
the call
50
Copyright 2009
Dial Plan and CUCM 7x
Local Route Groups
Without Local Route Groups
CSSs
HQ_User--Std_CSS
HQ_User
Route Lists
Partitions
HQ_PSTN--Std_PT
HQ_PSTN
9.1[2--9]xx[29.1[2
9]xx[2-9]xxxxxx
9]xxxxxx
HQ_PSTN_RL
Route Groups
HQ RG
V
S1_User--Std_CSS
S1_User
S1_PSTN--Std_PT
S1_PSTN
9.1[2--9]xx[29.1[2
9]xx[2-9]xxxxxx
9]xxxxxx
S1_PSTN_RL
S1 RG
V
S2_User--Std_CSS
S2_User
S2_PSTN--Std_PT
S2_PSTN
9.1[2--9]xx[29.1[2
9]xx[2-9]xxxxxx
9]xxxxxx
S2_PSTN_RL
S2 RG
V
S3_User--Std_CSS
S3_User
S3_PSTN--Std_PT
S3_PSTN
9.1[2--9]xx[29.1[2
9]xx[2-9]xxxxxx
9]xxxxxx
S3_PSTN_RL
S3 RG
V
51
Copyright 2009
Dial Plan and CUCM 7x
Local Route Groups
With Local Route Groups
CSSs
HQ_User--Std_CSS
HQ_User
Route Groups
Route Lists
Partitions
Primary Choice of Route Group Based
on Calling Devices Device Pool
HQ RG
Secondary path can use
any other route group
S1_User--Std_CSS
S1_User
CL_PSTN--Std_PT
CL_PSTN
9.1[2--9]xx[29.1[2
9]xx[2-9]xxxxxx
9]xxxxxx
CL_Local_RL
S2_User--Std_CSS
S2_User
Local RG
S1 RG
V
S2 RG
V
S3_User--Std_CSS
S3_User
We now have a single pattern and a
single route list that can route to
different route groups based on
location of caller
52
S3 RG
V
Copyright 2009
Dial Plan and CUCM 7x
Local Route Groups
Example: CFUR
Without Local RG
Route Pattern:
91[2--9]xx[291[2
9]xx[2-9]
9]xxxxxx
xxxxxx
IP
RouteList:
RouteList:
HQ_PSTN_RL
Route Group:
HQ_GW_RG
Site 1 WAN Outage
IP
IP
Phone
CFUR: 912025551234
CFUR CSS: HQ_PSTN_CSS
53
Copyright 2009
Dial Plan and CUCM 7x
Local Route Groups
Example: CFUR
With Local RG
Device Pool: HQ_UserHQ_User-Std_DP
Local Route Group:
HQ_GW_RG
Route Pattern:
91[2--9]xx[291[2
9]xx[2-9]
9]xxxxxx
xxxxxx
IP
RouteList:
RouteList:
HQ_PSTN_RL
Route Group:
Standard Local RG
Site 1 WAN Outage
Device Pool: S2_UserS2_User-Std_DP
Local Route Group: S2_GW_RG
IP
IP
Phone
CFUR: 912025551234
CFUR CSS: HQ_PSTN_CSS
54
Copyright 2009
Dial Plan and CUCM 7x
Local Route Groups
More Examples
Call Forwarding In general
Any forwarding that allows off net dialing
can take advantage of local route groups
CER Failure Scenario
Primary and Secondary CER server
offline
- Without LRG: you can only have one
destination one path (i.e. one PSAP)
- With LRG: you can have one
destination site
site--specific path*
Tail End Hop Off (TEHO) with Local Site
Failover
This is possible with or without LRG
However, with LRG you can minimize the
number or route patterns that are
required
*Actually, in CM 4.1 there is a workaround available
55
Copyright 2009
Dial Plan and CUCM 7x
Globalized Format Dialing
ITU
ITU--T E.164 Recommendation
Defines international public telecommunications numbering
plan for PSTN (and other networks)
Maximum 15 digits
E.164 numbers start with a country code and no localized
prefix
United States country code is +1
France country code is +33
E.164 digits may be used in call setup if the ingress
network/switch accepts the digit format
Localized international dialing prefixes still required for
many places (e.g. 011 in North America)
Cisco Unified Communications Manager 7x accepts the
E.164 format
56
Copyright 2009
Dial Plan and CUCM 7x
Globalized Format Dialing
The + Dialing Concept
Users are not asked to enter + digit when dialing and most
Cisco phones dont support + digit entry (7921 and 7925 do)
Applications like ClickClick-to
to--Call and CUCIMOC* or directories
like Corporate Directory, speed dials, Missed Calls, etc. can
use + dialing natively
From an egress point of view:
globalize dialed digit strings prior to routing decision
On egress, localize the pattern to conform with PSTN
From an ingress point of view:
localize ingress patterns prior to routing decision
*Cisco UC Integration for Microsoft Office Communicator
57
Copyright 2009
Dial Plan and CUCM 7x
Globalized Format Dialing
Transformation Patterns
Localized call routing prefixes for National, International, etc.
are still required (i.e. no + dialing in ISDN Q.931 call setup)
Calling number format presented on a phone are typically
dictated by the end user
Number format for calls presented to the gateway for routing
off net are dictated by the gateway and network routing the
call
A mechanism is required to handle transformation of the
E.164 global format to relevant localized patterns
58
Copyright 2009
Dial Plan and CUCM 7x
Globalized Format Dialing
An Example: Egress
Primary Path
Transform MD_CSS
MD Phone
IP
Dial: 94105551000
+1.410!
Strip Pre-dot
+.!\
Strip Pre-dot
MD GW
9.[2--9]xx[29.[2
9]xx[2-9]xxxxxx
9]xxxxxx**
Translations
+14105551000
9.1[2--9]xx[29.1[2
9]xx[2-9]xxxxxx
9]xxxxxx
\+1!
Route Pattern
MD_TEHO_RL
MD_GW_RG
Standard Local RG
NYC Phone
IP
Dial: 914105551000
*What if we used: 91?.[291?.[2-9]xx[29]xx[2-9]xxxxxx
9]xxxxxx
Secondary Path
Transform NYC_CSS
+1.212!
Strip Pre-dot
+.!\
Strip Pre-dot
59
NYC GW
Copyright 2009
Dial Plan and CUCM 7x
Globalized Format Dialing
An Example: Ingress
PSTN Caller
DC GW
Transform Calling Party
Ingress
CLID: 2025551234
DC Phone
DC
Devices
Transform
-In CSS
IP
CA Phone
National
Prefix +1
International
Prefix +
Subscriber
Prefix +1202
IP
Germany
Phone
IP
Display
5551234
Display
2025551234
Display
+12025551234
Call Back
+12025551234
Call Back
+12025551234
Call Back
+12025551234
+1202.!
Strip Pre-dot
+1.!\
Strip Pre-dot
+!
Globalize on Ingress (GW) and Localize on Egress
(Phone). The idea is the user gets the display they are
used to and the ability to call back without Edit Dial
60
Copyright 2009
Dial Plan and CUCM 7x
Globalized Format Dialing
Possible Benefits
Emergency Calling
Corporate wide emergency number that
routes to PSAP number that is localized
to caller
Automated Alternate Routing (AAR)
- AAR calls placed to global numbers
removes need for multiple AAR groups
- Single pattern (\
(\+.!) sufficient for all
phones
- Single AAR CSS for all phones
Tail End Hop Off (TEHO) with Local Site
Failover
- Even more powerful than LRG alone
- Can leverage \+ dialing and
transformations to minimize number of
route patterns required
61
Copyright 2009
Thank you for your time!
Q&A
NetCraftsmen UC Blog:
http://www.netcraftsmen.net/resources/blogs
62
Copyright 2009