Achieving Cisco UCM Class of Service with Partitions


Class of Service within Unified Communication Manager (UCM) is a way of controlling which phone numbers a particular device can call. For example, do you want the phone in the lobby to be able to call a long-distance number?  Normally, we would not want this to be possible, and restricting the phone numbers a particular device can reach is used extensively within most corporations. Cisco Class of Service is achieved by implementing two components that allow great flexibility in this area. These two basic components are called Partitions and Calling Search Spaces.

This series of posts defines these two components and how they interact with each other in a way that everyone can relate. Afterwards you will see how simple and yet flexible this can be when used in many different situations.


What is a Partition? A partition is a container of phone numbers, route patterns, calls park numbers, etc. A partition is just like a phone book. For example, the Dallas partition would contain all the phone numbers of employees in Dallas, the Chicago partition would contain all the phone numbers of employees in Chicago, and the corporate partition would contain all the phone numbers of ALL the employees. So a partition contains a list of phone number or route patterns that are both allowed (routed) and not allowed (blocked). For example, the Long Distance PSTN partition would contain the pattern 9.1XXXXXXXXXX that would match all long-distance numbers that are routable. But there are generally some long-distance numbers that we don’t want to allow, like premium service numbers. Therefore, we need to include a pattern like 9.1900XXXXXXX that will block these numbers in the partition, thus allowing a device to call any long-distance number except for those blocked premium service numbers that begin with 1900. You can see that a partition is basically a group of numbers, containing both routable and blocked numbers that are grouped together.

The only rule with partitions is that each number within a partition must be unique. This simply means that you cannot have the same number or pattern listed more than once in a single partition. But identical numbers are allowed; they just need to be listed in different partitions. For example, notice that the route pattern 911 is listed below in two different partitions. We have two identical patterns, but they are listed in separate partitions. This is perfectly legal.

Here are some partitions and the route patterns that are used frequently.

Local_PSTN_PT:  Used to contain local PSTN numbers that do not incur a charge. These are classified as premium service numbers that can charge back on your monthly phone bill; we want to block these numbers.

LongDistance_PSTN_PT:  Used to contain long-distance numbers you are going to allow or block. This will route all 11-digit numbers except for the premium service numbers (Area code = 900 or NPX=976), which are blocked.

Internal_PT: Are used to contain internal extensions of employees, meet-me conference bridge numbers, etc.

The <None> partition is a special partition. Think of it as the “default” partition. When you create a new extension or route pattern, these are automatically assigned or listed in the <none> partition, unless you specify something else. I will cover the use of this special partition later, but for now you need to be aware that it exists.

Another feature of partitions is that we can control when a partition can be accessed via the time schedule. For example, if you want to restrict access to long-distance calls to normal business hours, you can apply a time schedule to the partition, thus defining the hours that the partition can be accessed.

By creating several Time Schedules, you can define which employees have access to various partitions during the day. Time Schedules are applied to the partitions directly and are composed of one or more time periods.

To achieve the above example of restricting long-distance calls to normal business hours you would need to do the following:

  1. Define a “time period” — for example, “8to5MF” defines a schedule of time from 8 am to 5 pm on Monday through Friday.
  2. Define a “time schedule” — for example, “Normal Business Hours” and it contains the time period “8to5MF”.
  3. Finally, apply the time schedule to the “LongDistance_PSTN_PT” partition.

At this point, you need to test it by placing calls after five pm or on the weekend; if everything was done correctly, the call will be rejected.

You can see that a partition is nothing more than a collection of numbers (i.e., a phone book) that contains routed or blocked numbers, and that we can limit access to, based upon the time of day and day of the week. There is no limit to the number of partitions you can create or how many patterns you can have listed in a single partition.

Reproduced from Global Knowledge White Paper: Unified Communication Manager — Class of Service

Related Courses
CIPT1 – Implementing Cisco Unified Communications IP Telephony Part 1 v8.0
CIPT2 – Implementing Cisco Unified Communications IP Telephony Part 2 v8.0
TVOICE – Troubleshooting UC Systems v8.0

In this article

Join the Conversation