Chapter 7: Improving and Maintaining Voice Quality

Cisco Press

1 2 3 4 5 6 Page 5
Page 5 of 6

Once the ICPIF or delay or loss value is calculated, it is stored in a fallback cache where it remains until the cache ages out or overflows. Until an entry ages out, probes are sent periodically for that particular destination. This time interval is configurable.

To configure PSTN Fallback, use the following global configuration mode command:

call fallback active

This command enables a call request to fallback to alternate dial peers in case of network congestion. The active keyword enables a call request to fall back to alternate dial peers in case of network congestion.

Configuring Resource Availability Check

User-selected thresholds allow you to configure call admission thresholds for local resources and end-to-end memory and CPU resources. You can configure two thresholds, high and low, for each global or interface-related resource. The specified call treatment is triggered when the current value of a resource goes beyond the configured high and remains in effect until the current resource value falls below the configured low.

You can select how the call should be treated when local resources are not available to handle the call. For example, when the current resource value for any one of the configured triggers for call threshold exceeds the configured threshold, you have the following call treatment choices:

  • TDM hairpinning—Hairpins (that is, redirects) the calls through the POTS dial peer

  • Reject—Disconnects the call

  • Play message or tone—Plays a configured message or tone to the user

To configure resource availability checking, use the following global configuration mode command:

call threshold global trigger-name low value high value [busyout][treatment]

This command enables a trigger and defines associated parameters to allow or disallow new calls on the router. Action is enabled when the trigger value exceeds the value specified by the high keyword and is disabled when the trigger value drops below the value specified by the low keyword.

Table 7-8 shows the call threshold command options.

Table 7-8 call threshold Commands

Command

Description

trigger-name

Can be one of the following:

  • cpu-5sec—CPU utilization in the last 5 seconds

  • cpu-avg—Average CPU utilization

  • io-mem—I/O memory utilization

  • proc-mem—Processor memory utilization

  • total-calls—Total number of calls

  • total-mem—Total memory utilization

low value

Value of low threshold; range is from 1 to 100 percent for utilization triggers and from 1 to 10,000 for total calls

high value

Value of high threshold; range is from 1 to 100 percent for utilization triggers and from 1 to 10,000 for total calls

busyout

(Optional) Busies out the T1 or E1 channels if the resource is not available

treatment

(Optional) Applies call treatment from the session application if the resource is not available

To configure call treatment, use the following global configuration mode command:

call treatment {on | action action [value]| cause-code cause-code | isdn-reject

value}

This command configures how calls should be processed when local resources are unavailable.

Table 7-9 shows the call treatment command options.

To configure resource availability checking for interface resources, enter the following global configuration mode command:

call threshold interface interface-name interface number int-calls low value high 
value

This command allows threshold values to be configured for total numbers of voice calls placed through a particular interface. This command is used to allow or disallow admission for new calls on the router.

Table 7-10 shows the call threshold interface command options.

Table 7-9 call treatment Commands

Command

Description

on

Enables call treatment from the default session application.

action action

Specifies the action to be taken when call treatment is triggered.

The action argument can be one of the following:

  • hairpin—Specifies the hairpinning action.

  • playmsg—Specifies that the gateway play the selected message. The optional value argument specifies the audio file to play, in URL format.

  • reject—Specifies whether the call should be disconnected and the ISDN cause code passed.

cause-code cause-code

Specifies the reason for disconnection to the caller.

The cause-code argument can be one of the following:

  • busy—Indicates that the gateway is busy.

  • no-qos—Indicates that the gateway cannot provide QoS.

  • no-resource—Indicates that the gateway has no resources available.

isdn-reject value

Applies to ISDN interfaces only and specifies the ISDN reject cause code. The value argument ranges from 34 through 47 (ISDN cause code for rejection).

Table 7-10 call threshold interface Commands

Command

Description

interface-name

Specifies the interface used in making call admission decisions. Types of interfaces and their numbers depend on the configured interfaces.

interface-number

Specifies the number of calls through the interface that triggers a call admission decision.

int-calls

Configures the gateway to use the number of calls through the interface as a threshold.

low value

Enables the specified call treatment until the number of calls through the interface drops below the configured low value. The value argument specifies the number of calls used to make call admission decisions. The range is from 1 to 10,000 calls.

high value

Enables the specified call treatment until the number of calls through the interface exceeds the configured high value. The value argument specifies the number of calls used to make call admission decisions. The range is from 1 to 10,000 calls.

Consider the following examples of the SIP CAC commands:

  • SAA RTR Responder:

  • Router(config)#rtr responder
    
  • PSTN Fallback

  • Router(config)#call fallback active
    
  • Resource availability checking

  • Router(config)#call threshold global total-calls low 5 high 1000 busyout
    Router(config)#call treatment action cause-code 17
    Router(config)#call threshold interface ethernet 0 int-calls low 5 high 2500
    

MGCP CAC

The MGCP VoIP CAC feature enables certain Cisco CAC capabilities on VoIP networks that are managed by MGCP call agents. These capabilities permit a gateway to identify and gracefully refuse calls that are susceptible to poor voice quality.

Poor voice quality on an MGCP voice network can result from transmission artifacts such as echo, from the use of low-quality CODECs, from network congestion and delay, or from overloaded gateways. You can overcome the first two causes of echo by using echo cancellation and better CODEC selection. You can address network congestion, delay, and overloaded gateways by using MGCP VoIP CAC.

Before the release of MGCP VoIP CAC, MGCP voice calls were often established regardless of the availability of resources for those calls in the gateway and the network. MGCP VoIP CAC ensures resource availability by disallowing calls when gateway and network resources are below configured thresholds and by reserving guaranteed bandwidth throughout the network for each completed call.

MGCP VoIP CAC has three components for improving voice quality and reliability:

  • System Resource Check (SRC) CAC evaluates memory and call resources local to the gateway. It is supported in MGCP 1.0 and MGCP 0.1.

  • RSVP CAC allocates bandwidth on the network. RSVP is supported in MGCP 1.0 and MGCP 0.1.

  • Cisco SAA CAC appraises network congestion conditions on the network. It is supported only in MGCP 1.0.

To set thresholds and enable MGCP SRC CAC, use the following command in global configuration mode:

call threshold global trigger-name low value high value treatment

This command enables a resource and defines its parameters. Treatment of attempted calls is enabled when the resource cost goes beyond the high value. Treatment is not disabled until the resource cost drops below the low value. The arguments and keywords are shown in Table 7-11.

Table 7-11 call threshold global Commands

Command

Description

trigger-name

Can be one of the following:

  • cpu-5sec—CPU utilization in the last 5 seconds

  • cpu-avg—Average CPU utilization

  • io-mem—I/O memory utilization

  • proc-mem—Processor memory utilization

  • total-calls—Total number of calls

  • total-mem—Total memory utilization

low value

Value of low threshold; range is from 1 to 100 percent for utilization triggers and from 1 to 10,000 for total calls

high value

Value of high threshold; range is from 1 to 100 percent for utilization triggers and from 1 to 10,000 for total calls

treatment

(Optional) Applies call treatment from the session application if the resource is not available

If network conditions rise above the high threshold value, SRC rejects the call by sending the call agent an MGCP error message with the return code 403. The call agent applies a treatment to the rejected call.

The following sections illustrate the configuration of CAC for an MGCP environment. Specifically, configurations for the following CAC mechanisms are addressed: RSVP CAC, Cisco SAA CAC, and Cisco Unified CallManager CAC.

Configuring RSVP CAC

To configure MGCP RSVP CAC on a media gateway, use the following command in global configuration mode:

ip rsvp bandwidth (interface-kbps [single-flow-kbps])

This command enables RSVP for IP on an interface. RSVP is disabled by default. It should be noted that, in order for RSVP to operate correctly end to end, it must be configured on all routers in the network. The arguments are shown in Table 7-12.

Table 7-12 ip rsvp Bandwidth Commands

Command

Description

interface-kbps

(Optional) Maximum amount of bandwidth, in kilobits per second, that might be allocated by RSVP flows. The range is from 1 to 10,000,000. This parameter should be configured for the maximum amount of voice bandwidth that this interface is limited to for all calls.

single-flow-kbps

(Optional) Maximum amount of bandwidth, in kilobits per second, that might be allocated to a single flow. The range is from 1 to 10,000,000. This parameter should be configured for the amount of bandwidth for one call.

Configuring Cisco SAA CAC

Cisco SAA is an application-aware synthetic operation agent that monitors network performance by measuring response time, network resource availability, application performance, jitter (interpacket delay variance), connect time, throughput, and packet loss. Performance can be measured between any Cisco device that supports this feature and any remote IP host (server), Cisco routing device, or mainframe host. Performance measurement statistics provided by this feature can be used for troubleshooting, problem analysis, and designing network topologies.

The SAA Responder, enabled using the rtr responder command, is a component embedded in the target Cisco routing device that allows the system to anticipate and respond to SAA request packets. The SAA Responder can listen on any user-defined port for UDP and TCP protocol messages. In client/server terminology, the SAA Responder is a concurrent multiservice server.

The global configuration mode commands to configure Cisco SAA CAC are as follows:

  • call fallback active—Enables a call request to fall back to alternate dial peers in case of network congestion

  • mgcp rtrcac—Enables MGCP SAA CAC

  • rtr responder—Enables the SAA Responder functionality on a Cisco device

The configuration shown in Example 7-6 enables all three types of MGCP VoIP CAC: SRC, RSVP, and SAA. Notice that CAC configuration commands are highlighted in the output. Comments are provided in the example in the lines preceding the CAC commands to help you identify the commands needed for a particular CAC type.

Example 7-6 MGCP CAC Configuration

version 12.2
!
! Output omitted for brevity
!

! The following command is used in MGCP SA Agent CAC.
call fallback active
! The following command is used in MGCP RSVP CAC.
call rsvp-sync
! The following six commands are used in MGCP SRC CAC.
call threshold global cpu-5sec low 55 high 70 treatment
call threshold global cpu-avg low 70 high 80 treatment
call threshold global total-mem low 70 high 80 treatment
call threshold global io-mem low 70 high 80 treatment
call threshold global proc-mem low 70 high 80 treatment
call threshold global total-calls low 10 high 12 treatment
!
! Output omitted for brevity


!
interface FastEthernet0/0
ip address 192.168.1.61 255.255.255.0
duplex auto
speed auto
! The following command is used in MGCP RSVP CAC to configure the bandwidth allocated.
! for VoIP calls through the interface.
ip rsvp bandwidth 512 512
!

! Output omitted for brevity
!
mgcp
mgcp call-agent 10.13.57.88 service-type mgcp version 1.0
mgcp modem passthrough voip mode nse
mgcp modem passthrough voaal2 mode
mgcp package-capability trunk-package
! The following command is used for MGCP SA Agent CAC.
mgcp rtrcac
! The following command is used in MGCP SRC CAC.
mgcp src-cac
no mgcp timer receive-rtcp
!
mgcp profile default
!
dial-peer voice 1 pots
application mgcpapp
port 3/0:1
!
dial-peer voice 2 pots
application mgcpapp
port 3/0:2
!
dial-peer voice 3 pots
application mgcpapp
port 3/1:1
!
dial-peer voice 4 pots
application mgcpapp
port 3/1:2
!
! The following command is used in MGCP SA Agent CAC.
rtr responder
!
! Output omitted for brevity
!
end

Cisco Unified CallManager CAC

While Cisco supports a variety of CAC mechanisms, most of these mechanisms are router-centric. However, in environments containing multiple Cisco Unified CallManager (CCM) clusters, other CAC approaches might be more appropriate. With CCMs, two types of call admission are possible:

Related:
1 2 3 4 5 6 Page 5
Page 5 of 6
SD-WAN buyers guide: Key questions to ask vendors (and yourself)