CUCM Class of Service: Partitions, Calling Search Spaces

Published by Keyboard Banger on

class-of-service-partitions-css

We will describe the concept of Class of Service with an example.

Lab setup

HQ is in Pennsylvania, Branch1 is in Arizona.

We have HQ phone with DN 1000. We have a configured emulation of PSTN with a couple of PSTN lines:

  • local lines
  • long distance lines
  • international line
  • emergency line

The concept of local or national line is relative to the calling party. For example, for HQ phones, line 7175438411 is a local PSTN line, while for Branch1 phones the same line is considered long distance.

class-of-service-partitions-css-2016-05-29 07_35_54

We define the following partitions:

  • CorpHQ-internal_PT
  • CorpHQ-Local_PT
  • CorpHQ-LD_PT
  • CorpHQ-International_PT
  • CorpHQ-EMS_PT

And we define Calling Search Spaces (CSS):

  • CorpHQ-Internal_CSS
  • CorpHQ-local_CSS
  • CorpHQ-national_CSS
  • CorpHQ-international_CSS

Here is what each CSS contains in terms of partitions:

Class of service for HQ and Branch 1

We will apply a design principle that says: route at the device, block at the line.

On the device, we set CSS to None. And all the game runs on the line. I mean, we define the permissions and restrictions on the line CSS.

Class of service in the HQ

Line CSS = Internal_CSS

The phone can only call internal lines and emergency line.

Line CSS =CorpHQ-local_CSS

The phone can call internal, emergency and local PSTN lines

class-of-service-partitions-css-2016-05-20 20_31_47

Trying to call a long distance PSTN line

class-of-service-partitions-css-2016-05-20 20_31_07

could not call the LD PSTN line

Line CSS =CorpHQ-national_CSS

the phone can call internal, emergency, local and long-distance PSTN lines.

class-of-service-partitions-css-2016-05-20 20_33_50

Trying to call the international destination; the PSTN access code is 9 and the international access code is 011

class-of-service-partitions-css-2016-05-20 20_34_00

could not call the international line

Line CSS = CorpHQ-international_CSS

the phone can call all lines, internal and external.

Class of service in Branch1

I applied the same logic. And I created the same set of partitions and CSSes for Branch1. I even dreated a separate internal CSS for Branch1 because of emergency line services. I’ll talk about this in a later time.

list of partitions for Branch1:

  • Branch1-internal_PT
  • Branch1-EMS_PT
  • Branch1-local-PT
  • Branch1-LD_PT
  • Branch1-international_PT

List of CSSes for Branch1:

  • Branch1-internal_CSS
  • Branch1-local_CSS
  • Branch1-national_CSS
  • Branch1-international_CSS

Here is a summary of the list of partitions and CSSes I’ve configured:

class-of-service-partitions-css-2016-05-21 16_32_50

list of partitions and CSSes configured for HQ and Branch1

class-of-service-partitions-css-2016-05-21 16_40_46

Branch1 internal CSS

 

class-of-service-partitions-css-2016-05-21 16_41_27

Branch1 local CSS

class-of-service-partitions-css-2016-05-21 16_41_49

Branch1 international CSS

class-of-service-partitions-css-2016-05-21 16_41_39

Branch1 national CSS

Now I’m going to launch a softphone at Branch1 site and make various calls, each time with a different CSS at the line level. I’ll leave the device CSS to none.

Branch1 extension is 2001 and is registered to CUCM at HQ.

line CSS = Branch1-internal_CSS

class-of-service-partitions-css-2016-05-21 17_06_10

branch1 phone is calling HQ phone

line CSS = Branch1-local_CSS

class-of-service-partitions-css-2016-05-21 18_49_22

dialing the local line from Branch1 phone

 

class-of-service-partitions-css-2016-05-21 18_49_46

the call is extended correctly

line CSS = Branch1-national_CSS

class-of-service-partitions-css-2016-05-21 19_11_56

Branch1 phone in Atlanta is trying to call a long distance number

class-of-service-partitions-css-2016-05-21 19_12_07

successful call to a long distance number, relatively to branch1 in Atlanta

line CSS = Branch1-international_CSS

class-of-service-partitions-css-2016-05-21 19_16_23

trying to call an international number, from Branch1 phone

class-of-service-partitions-css-2016-05-21 19_20_57

the call from branch1 phone to the international line is extended successfully

Effect of the gateway CSS on incoming calls

The CSS set on the PSTN gateway must be configured with a CSS that allows for the search of patterns. It is configured under Call Routing Information – Inbound Calls.

class-of-service-partitions-css-2016-05-29 14_39_52

A common situation is when we set the Significant Digits to a number of digits, let’s say 4. The gateway CSS must contain partitions that contain the 4 digits. Otherwise, the gateway won’t be able to send the outbound call leg towards CUCM.

Here, we call from PSTN into the company DID number. And we distinguish two scenarios:

scenario 1: gateway CSS is not adequate

We set the gateway CSS to None. Since I carefully designed the partitions and CSS, there is nothing left in the None CSS.

class-of-service-partitions-css-2016-05-29 14_42_02

Save configuration and reset the gateway.

We make the inbound PSTN call.

class-of-service-partitions-css-2016-05-29 14_43_57

The call fails. The gateway received the call, extracted 4 digits and searched within the partitions of the None CSS, for a match. It found nothing. The call could not be expanded.

scenario 2: gateway CSS is adequate

I changed the gateway CSS to one that contains internal partitions. I saved and reset.

class-of-service-partitions-css-2016-05-29 14_46_29

The call from PSTN succeeds.

Testing vanity services and vanity numbers

Vanity service to an on-net destination

let’s assume DN 1003 is the IT Support number for the whole company. We can create a DN 8888 that is translated to 1003. And DN 8888 is put in both HQ partitions and Branch1 partitions. So the HQ phones have their IT Support vanity service and Branch1 phones have also their own IT Support vanity service.

class-of-service-partitions-css-2016-05-29 17_39_30

class-of-service-partitions-css-2016-05-29 17_40_13

class-of-service-partitions-css-2016-05-29 17_40_21

class-of-service-partitions-css-2016-05-29 17_40_29

class-of-service-partitions-css-2016-05-29 17_40_34

Both HQ calling party and Branch1 calling party must be configured with a CSS that contains the vanity partition.

class-of-service-partitions-css-2016-05-29 17_43_18

class-of-service-partitions-css-2016-05-29 17_43_32

class-of-service-partitions-css-2016-05-29 17_43_51

class-of-service-partitions-css-2016-05-29 17_43_59

Vanity service to an off-net destination

Let’s suppose we want to provide to our corporate users the possibility to dial an abbreviated number to reach London Hotel, to book a reservation. This vanity number will be numerically the same; but unique to each site.

The vanity number will be in our example a translation pattern that converts the abbreviated number into a full PSTN number.

class-of-service-partitions-css-2016-05-29 16_01_59

class-of-service-partitions-css-2016-05-29 16_02_08

 

class-of-service-partitions-css-2016-05-29 15_59_15

class-of-service-partitions-css-2016-05-29 16_00_09

We have HQ and Branch1. We create a vanity number in two partitions for the two sites. The partitions will be put into CorpHQ-international_CSS and Branch1-international_CSS.

class-of-service-partitions-css-2016-05-29 16_02_43

class-of-service-partitions-css-2016-05-29 16_03_16

class-of-service-partitions-css-2016-05-29 16_04_59

The calling party number must have the CSS International to be able to benefit from vanity services, in our example.

I dial from Branch1 phone the vanity number 9999 and it is translated into the full international PSTN number.

class-of-service-partitions-css-2016-05-29 16_06_17

class-of-service-partitions-css-2016-05-29 16_06_31

Configuring Private Line Automatic Ringdown PLAR

Let’s say we dedicate a phone to the vanity service we defined before. As soon as the handset is lifted, the London Hotel number must be dialed.

Here is how to do it.

we define a PLAR partition.

class-of-service-partitions-css-2016-05-29 16_56_40

We put the PLAR partition in whatever CSS we want. Since the PLAR function is related to an international number here, we’ll put it in the International CSS of HQ.

class-of-service-partitions-css-2016-05-29 16_57_45

We define a Translation pattern with a blank pattern. We put it into the PLAR partition.

class-of-service-partitions-css-2016-05-29 16_58_43

class-of-service-partitions-css-2016-05-29 17_00_53

The CSS configured under the Translation pattern page must contain the pattern defined in the Called Party Transformation Mask.

class-of-service-partitions-css-2016-05-29 16_59_232

We make sure the line CSS contains the PLAR partition.

class-of-service-partitions-css-2016-05-29 17_02_23

We test PLAR by lifting the handset. It takes a couple of seconds before things work:

class-of-service-partitions-css-2016-05-29 17_03_13

class-of-service-partitions-css-2016-05-29 17_03_36

 

 

 

Categories: CCNP Collaboration

Keyboard Banger

Keyboard Banger is a network engineer from Africa. He has been working in network support and administration since 2008. He started writing study notes about certification exams and technology topics a couple of years ago. When he's not writing articles, he can be found wandering on technical forums.

0 Comments

Leave a Reply

Your email address will not be published. Required fields are marked *