Skype for Business Resource Center
Lync and Skype for Business Resource Center

Skype for Business BLOG

Taming the Dial Plan Spaghetti Monster (By Andrew Prokop)

As appeared on No Jitter, January 11, 2016

By focusing on the network dial plan and number normalization aspects of session management, an enterprise can tame the dial plan beast.

 I have been making and answering telephone calls for over 50 years, and yet I still struggle when it comes to remembering the numbers of most of the people I see and work with on a daily basis. Heck, I couldn't even tell you the telephone numbers of my kids' cell phones.

That's not because I have digit phobia. I was a math major in college and started my programming career living and breathing binary and hexadecimal numbers. However, while I have no problem with alphabetic email addresses, telephone numbers don't want to stay in my head.

Yes, some of that has to do with the fact that it's become too easy to click and tap my way to voice conversations, but it's more than that. Ten consecutive numbers are not easy to hold in my head. Here at Arrow SI, I only have to dial seven digits to reach a coworker, but even that is more than my brain wants to handle. Letters and names, yes. Seemingly random numbers, no.

To make matters worse, the number of digits I have to dial isn't always the same. At home, I can call my next door neighbor's landline using seven digits, but calling his cell phone requires ten. At work, I need to press seven, eight, or nine digits depending on the type of call I am making. I've never made an international call from my office telephone, but I am sure that it will require even more numbers.

A Bowl of Spaghetti

My job regularly has me in front of medium to large enterprises across the country, and one of the most common woes I hear from IT directors is complicated, unwieldy dial plans. Much of that is due to the fact that rather than being one big company technology-wise, many organizations are actually a collection of branch offices and business units that historically made their own decisions when it came to communications technology. Sometimes that's due to having specific needs, but more often it's the result of mergers and acquisitions. Along with the people, processes, and intellectual property involved in a merger, comes telephone systems of all makes, models, and vintages -- and each one of these systems typically comes with its own set of telephone numbers and rules for making calls.

Session Management

The concept of session management traces its roots to the carrier architecture known as IMS(IP Multimedia Subsystem). IMS was designed as a replacement for the older GSM (Global System for Mobile Communications) networks employed by wireless carriers. Built around IETF standards such as SIP, IMS defines the interfaces and protocols used to connect the many different services utilized by mobile communications.

While a comprehensive discussion of session management is beyond the scope of this particular article, it can be thought of as having these seven aspects:

  1. Routing
  2. Policy Management
  3. Network Dial Plan
  4. Call Admission Control
  5. Protocol and Number Normalization
  6. Secure Network Edge
  7. Proactive Voice Quality Monitoring, Reporting, and Notification

Of interest to this discussion are network dial plan and number normalization. By utilizing these two aspects of session management, an enterprise can tame the dial plan spaghetti monster.

Network Dial Plan

A network dial plan is a tool that allows anything to talk to anything. This could be up-to-date Avaya and Cisco systems making and receiving calls to and from an ancient Nortel Option 11 or cutting edge Skype for Business installation. Each system maintains a nodal numbering plan for its locally managed telephones and trunks, and defers to the network dial plan for everything else.

For example, the Nortel Option 11 will assign numbers to its telephones and define the rules used to call between them. The network dial plan comes into play when the Option 11 wants to call a telephone that it doesn't locally manage. For instance, Option 11 station 1234 wants to call station 1234 on the Avaya system. Through the use of steering codes and dialing prefixes, the Option 11 sends the call to the session management layer (typically across a SIP trunk), which, in turn, uses the network dial plan to properly route the call to the Avaya Communication Manager.

E.164 Dialing

Before I go any further, I need to give a quick explanation of E.164. E.164 is an ITU-Trecommendation that defines a numbering plan for the PSTN (Public Switched Telephone Network). E.164 numbers follow a set format for country code and subscriber number. They are easily recognized by a leading "+" (plus sign).

Here is how it works:
  • A telephone number can have a maximum of 15 digits
  • The first part of the telephone number is the country code (one to three digits)
  • The second part is the national destination code (NDC)
  • The last part is the subscriber number (SN)
  • The NDC and SN together are collectively called the national (significant) number

Example E.164 numbers include:

+19524563516 (Bloomington, MN, United States)

+441234123456 (London, United Kingdom)

+821012345678 (South Korea)

+60103171234 (Malaysia)

A comprehensive list of country codes can be found here.

I highly recommend that a network dial plan normalizes all incoming telephone numbers to E.164 formatting. This allows for the application of a consistent set of rules no matter where the number came from or where it is destined to go. The ingress and egress points may still be restricted to the proprietary numbering plan of the source or destination system, but all routing logic will act on the E.164 translations.

Number Adaptation

I previously mentioned session management number adaptation. This is the process of adding and removing numbers before a call is routed outside the session management layer. This is necessary because many legacy telephone systems do not support E.164 formatted numbers. There are even systems that get close to supporting E.164, but cannot handle the leading "+." In those cases, number adaptation can be as simple as dropping the first character of the dialing string. It can also be very involved with numbers both added and deleted before final routing occurs.

Thankfully, most communications vendors have added or are in the process of adding support for E.164 to their products, and there may come a time when number adaptation is no longer required. Until that happens, though, it will be an integral part of any session management layer.


Making it Real

There are a number of enterprise-grade products that perform session management and implement network dial plans. For example, Avaya provides session management through itsSession Manager product, Sonus has its PSX Centralized Routing and Policy Server, Oracle Acme offers up the Enterprise Communications Broker, and AudioCodes is launching theAudioCodes Routing Manager (ARM) in mid-February. However, no matter what product is used, they all define a network dial plan and support number adaptation.

Mischief Managed

I don't want you to think that dial plan management and telephone number consolidation are trivial tasks. They are not. Even with session management, there are a myriad of things to consider, and the translations can often be quite sophisticated. A large system made up of many disparate systems can easily have hundreds of adaptations.

However, attempting to do this at a nodal level is far more complicated, and the maintenance of so many separate dialing plans can overwhelm a telecom department. With E.164 routing rules and a network dial plan you make the vast majority of your changes in one place, and every connected system reaps the benefits.

It's still my dream that one day telephone numbers are a thing of the past and everyone is reachable with an alphabetic email-like address. Until that day, network dial plans and number adaptations will be essential tools to connect people to other people, places, and services.

Along with many other exciting topics, I will be speaking about Session Management duringUnderstanding and Leveraging SIP for Your Enterprise at Enterprise Connect 2016. If this is the kind of discussion that warms the cockles of your geeky heart, make sure you save room for me on your EC16 dance card.

Andrew Prokop writes about all things unified communications on his popular blog, SIP Adventures.

Follow Andrew Prokop on Twitter and LinkedIn!
 Andrew Prokop on LinkedIn



Back to Lync Migration Blog