cisco-cucm-regions

Flavours Of A CUCM Region

In this article, we will discover how Cisco Unified Communications Manager version 9 and above behave with the concept of Region.

Here is the call setup in my home lab:

HQ: CIPC phone 1 , extension 1000.

Branch1: CIPC phone 2, extension 2001.

In case you still confuse between a Location and a Region, I suggest you visit this article. And before you read further, remember to fly through my other blog posts under the CCNP Collaboration category.

1. Scenario #1: Both Phones Are in the Default Region

Although phone 1 and phone2 are in different physical locations, I purposefully put both phones in the same region to experience codec selection within a region.

Note that, when I say “I put a phone in region X”, I mean that I configure the device with a device pool that points to that region X.

cisco-cucm-region--2016-08-09 09_09_49
Phone uses Device Pool “HQ_DP”
cisco-cucm-region--2016-08-09 09_11_10
Device Pool “HQ_DP” points to region Default.

We will see the negotiated codec and the one that is finally selected to encode and decode media streams between phones, when both phones are in region Default.

1.1 The CUCM Default region

In Cisco Unified Communications Manager, we have a region called “Default”. The Default region uses:

-a) the default Audio Codec Preference List

-b) the default Maximum Audio Bit Rate

-c) the default Maximum Video Bit Rate

-d) the default Maximum Immersive Video Bit Rate

cisco-cucm-region--2016-08-09 09_15_00

1.1.1 Default Audio Codec Preference List

Since we are putting both phones in the same region, we will focus on the default Audio Codec Preference List within a region; This is determined by a intuitive service parameter, under CallManager Service, called “Default Audio Codec List Within Region“.

cisco-cucm-regions--2016-07-31 16_01_55

This service parameter has two possible values:

  • Factory Default low loss, which is the default value
  • Factory Default lossy

cisco-cucm-region--2016-08-09 09_21_10

The values of the Factory Default low loss codec preference list and the Factory Default low loss audio codec preference list are defined, in CUCM 9+, under Region Information-> Audio Codec Preference List.

cisco-cucm-region--2016-08-09 12_20_48

Here is what the Factory Default low loss audio codec preference list looks like:

cisco-cucm-region--2016-08-09 12_22_48

So CUCM has to choose, among this list, one codec that has a bandwidth which is below the Maximum Audio Bit Rate. The Audio Codec Preference List is one of the criteria of choosing a codec.

1.1.2 Default Maximum Audio Bit Rate

This is the second criterion. The default Maximum Audio Bit Rate for intra-region calls is determined by Service Parameters -> Default Intraregion Maximum Audio Bit Rate, which is 64kbps (G.722, G.711)

cisco-cucm-regions--2016-07-31 16_03_30

So we can have a codec whose bandwidth is at maximum 64kbps in intraregion. But it does not mean that any codec that reaches the 64kbps will be the one.

1.1.3 Advertise G.722 Codec

Let’s see the default behavior regarding G.722. In Enterprise Parameters, the “Advertise G.722 Codec” is by default set to Enabled:

advertise g722 in enterprise parameters configuration

This means that, by default (if G.722 is not disabled in the phone config page), IP phones advertise to CUCM that they support G.722 codec in their capabilities.

And knowing that G.722 appears before G.711 in the Audio Codec Preference List, then the result is: G.722 is used for intra-region communication, if the default values are specified.

And here is the Wireshark trace to support what I’m saying.

cisco-cucm-regions--2016-07-31 16_13_30

Case #2: Both phones In Region R_HQ

Here is the setup for region R_HQ:cisco-cucm-regions--2016-07-31 16_15_08

With both phones being in the same region R_HQ, we get the same result as before.

wireshark capture phones in same region

3. Case #3: Two Phones in Different Regions

We put phone 1 in R_HQ and phone 2 in R_Branch1

Here is the region setup for R_Branch1

regions setup for a site

When we dial from phone 2 to phone 1. The region of Phone2 allows a maximum of 8kbps. The codec that will be chosen will have at maximum a bandwidth of 8kbps. G.729 is an example of such a codec, but it’s not the final word.

CUCM looks at the Audio Codec Preference List. associated with the region. It says “Use System Default (Factory Default low loss)”. In this audio preference list, the first codec whose bandwidth is less than 8kbps is G.729

audio codec preference list

But it seems that endpoints do not support G.729b. So CUCM will choose the next available codec: G.729.

codec displayed in wireshark capture

Leave a Comment