Cisco Unified Border Element (SP Edition) Configuration Guide: Unified Model
Implementing Transcoding
Downloads: This chapterpdf (PDF - 317.0KB) The complete bookPDF (PDF - 10.42MB) | Feedback

Implementing Transcoding

Table Of Contents

Implementing Transcoding

Contents

Prerequisites for Implementing Transcoding

Restrictions for Implementing Transcoding

Restrictions for Media Gateway-Assisted DMTF Interworking

Information About Transcoding

Transcoding After Rejection

Troubleshooting Tip for Media-timeout Transcoded Call Using a VXSM card

Codec Filtering

Configuring Transcoding After Rejection

Configuring Codec Filtering Transcoding

Configuration Examples for Implementing Transcoding

Verification

Voice Transcoding Per Adjacency Statistics

Configuring the Voice Transcoding Per Adjacency Statistics

Media Gateway-Assisted DTMF Interworking

DTMF Interworking with MGX as Transcoder

Inband DTMF Support—Interworking Without a Transcoder

Configuring Inband DTMF Interworking

Configuring Codecs to Support Inband DTMF


Implementing Transcoding


Transcoding is the process of translating a media stream encoded using one codec into a media stream encoded using another codec. For example, translating a media stream encoded as Pulse Code Modulation u-law (PCMU) into one encoded as ITU-T G.726-32.

The primary reason for transcoding configurations is to configure the capabilities of external media transcoding devices when these devices cannot be discovered automatically. In-band auto-discovery of transcoder capabilities is currently not supported. Therefore, this step must be done when configuring all connections to all current remote transcoding devices.


Note Transcoding configurations can be skipped altogether if the described reason does not apply.


Media gateways are allowed to connect whether or not configuration has been supplied for them. To help avoid configuration errors, the signaling border element (SBE) logs a warning if an incoming connection is received from a media gateway that is not a data border element (DBE) and does not have transcoding configured.


Note This feature is supported in the unified model for Cisco IOS XE Release 2.5 and later.


Cisco Unified Border Element (SP Edition) was formerly known as Integrated Session Border Controller and may be commonly referred to in this document as the session border controller (SBC).

For a complete description of the commands used in this chapter, refer to the Cisco Unified Border Element (SP Edition) Command Reference: Unified Model at:

http://www.cisco.com/en/US/docs/ios/sbc/command/reference/sbcu_book.html.

For information about all Cisco IOS commands, use the Command Lookup Tool at http://tools.cisco.com/Support/CLILookup or a Cisco IOS master commands list.

Feature History for Implementing SBC Transcoding

Release
Modification

Cisco IOS XE Release 2.5

This feature was introduced on the Cisco ASR 1000 Series Aggregation Services Routers.

Cisco IOS XE Release 3.3S

The Voice Transcoding Per Adjacency Statistics feature was added to the Cisco ASR 1000 Series Aggregation Services Routers.


Contents

This chapter contains the following sections:

Prerequisites for Implementing Transcoding

Restrictions for Implementing Transcoding

Restrictions for Media Gateway-Assisted DMTF Interworking

Information About Transcoding

Configuration Examples for Implementing Transcoding

Verification

Voice Transcoding Per Adjacency Statistics

Configuring the Voice Transcoding Per Adjacency Statistics

Media Gateway-Assisted DTMF Interworking

Prerequisites for Implementing Transcoding

The following prerequisites are required to implement SBC transcoding:

Before implementing these features, Cisco Unified Border Element (SP Edition) must already be configured.

All SBE and DBE configurations required to make simple calls must already be configured. Transcoding configurations follow these configurations.

Restrictions for Implementing Transcoding

The following are restrictions of the Implementing Transcoding feature:

The H.323 fast-start calls will be dropped to slow-start procedure if transcoding is required. This can be achieved by the callee side rejecting the fast-start request.

No transcoding support for H.323 to SIP interworked calls.

No transcoding support for H.323 to H.323 interworked calls.

The only codecs supported for H.323 transcoding are G.711 (PCMU and PCMA) and G.729 (with and without annex B).

When audio transcoding is in operation, the SBC does not support sending and receiving RFC 2833 in-band packets to and from the SBC and interworking RFC 2833 packets with out-of-band SIP INFO or SIP NOTIFY Relay messages on the other call leg.

The following are DTMF interworking restrictions when transcoding is used:

Signaling and media DTMF interworking is not supported when transcoding is performed on the call

When audio transcoding is in operation, the SBC does not support sending and receiving RFC 2833 in-band packets to and from the SBC and interworking RFC 2833 packets with out-of-band SIP INFO or SIP NOTIFY Relay messages on the other call leg.

Restrictions for Media Gateway-Assisted DMTF Interworking

Following are the restrictions of the Media Gateway-Assisted DMTF interworking feature:

The SBC supports the use of transcoders, such as a Cisco MGX 8880, only in SIP-SIP calls. DTMF interworking with transcoders are not supported for H.323 calls.

The SBC cannot interwork DTMF with transcoders that cannot pass through DTMF.

When a Cisco MGX 8880 is not used as transcoders, only SIP-SIP calls are supported.

Information About Transcoding

Transcoding is the process of translating a media stream encoded using one codec into a media stream encoded using another codec. For example, translating a media stream encoded as PCMU into one encoded as G.726-32.

Transcoding is supported using external digital signal processor (DSP) hardware. A Cisco MGX 8880 Media Gateway can be used to provide the transcoding function for one or more SBCs.

The SBC supports two types of transcoding:

Transcoding After Rejection

Codec Filtering

Configuring Transcoding After Rejection

Configuring Codec Filtering Transcoding

Transcoding After Rejection

The SBC automatically brings the transcoding device into use for any call requiring transcoding between these codecs, as long as the Call Admission Control (CAC) policy configuration does not preclude the transcoder service from being supplied for the call. When a call that requires transcoding is set up, the SBE goes through the following steps:

Receives an initial signaling request from the calling endpoint. This triggers the SBC to perform initial call setup on the incoming and outgoing local media termination points. The SBC then forwards the set up request towards the callee.

Receives a response from the called endpoint that indicates that none of the codecs in the initial request are acceptable. These responses include:

415—Unsupported media type (SIP)

488—Not acceptable here (SIP)

Failure to identify common codec during Terminal Capability Exchange procedure of H.245 protocol.

This triggers the SBC to bring a transcoder into the call that is inserted in the media path between the incoming and outgoing local media terminations. A new request is sent to the called endpoint, indicating the new codec type generated by the transcoder.

SBE may then have to iterate through the list of codecs the transcoder supports until it finds one that is acceptable to the called endpoint. When this is done, the call is connected and media transmission begins.

Figure 40 shows where the transcoder sits in the network, and the path taken by the media in a transcoded call.

Figure 40 Transcoding Configuration


Note Although Figure 40 shows two DBEs, transcoding is possible with a single DBE. With a single DBE, the media flows through the DBE twice, once on its way from the sending endpoint to the transcoder and a second time as it flows from the transcoder to the receiving endpoint.


For the Session Border Controller (SBC) to program the transcoder, it must be registered. The transcoding device acts as an H.248 media gateway, so it needs to be configured with the IP address and port of the SBE or SBC to connect to. The SBE or SBC acts as an H.248 Media Gateway Controller. See the documentation for your transcoder device for notes on how to do this. The documentation for the Cisco MGX 8880 Media Gateway can be found at:

http://www.cisco.com/en/US/docs/switches/wan/mgx/software/mgx_r5.0/data/configuration/guide/scg.html

In addition, the SBE must have the following specific configuration:

An H.248 control address and port must be configured (using the sbe control address ipv4 and sbe control address h248 port commands). By default, this is on port 2944, and it is the address and port to which the transcoder must connect.

An explicit media gateway needs to be configured (using the sbe media-gateway ipv4 command). The explicit media gateway must have its list of supported codecs defined so that the SBC knows which codecs the transcoder can translate between, and it must be identified as a transcoder (using the sbe media-gateway ipv4 codecs and sbe media-gateway ipv4 transcoder commands).

The show sbc sbe media-gateway-associations command can be used to check that the transcoder has correctly registered with the SBE. If this has happened, the transcoder should appear in the list of known media gateways with an active association.

For configuration step information, see the "Configuring Transcoding After Rejection" section.

Troubleshooting Tip for Media-timeout Transcoded Call Using a VXSM card

A Cisco MGX 8880 equipped with one or more Cisco Voice Switch Service Module (VXSM) card sets can operate as a media gateway. In a network where the SBC uses the Cisco MGX 8880 as a transcoding device to act as an H.248 media gateway, some additional configuration is required on the VXSM card for media-timeout to work properly in a transcoded call.

The following additional steps need to be configured on the VXSM card in the Cisco MGX 8880 Media Gateway:


Step 1 Enable the RTCP control with the following command.

InteropMGX.4.VXSM.a > cnfdspparam -control 1

Step 2 Set the RTCP timer control to startRtpOrRtcpPktRcvd with the following command:

InteropMGX.4.VXSM.a >  cnfdspparam -rtcptm 3 

Step 3 Verify that the settings are correct using the following command to show a list of DSP parameters:

InteropMGX.4.VXSM.a > dspdspparam
 
   
======================================================
              List DSP Parameters
======================================================
SID Payload Type             :          decimal
RTCP Control                 :          true                <=== RTCP control enabled
RTCP Interval(milliseconds)  :          5000
RTCP Interval Multiplier     :          5
VAD Adaptive                 :          false
G.711 PLC                    :          none
DTMF Power Level (0.1 dBm)   :          -120
DTMF Power Twist (0.1 dB)    :          0
RTCP Timer Control           :          startRtpOrRtcpPktRcvd <=Timer Control properly set
VQM Control                  :          disable
RTCPXR Control               :          enable
RTCPXR Report Frequency      :          1
VQM Default Minimum Gap      :          16
RTCPXR external R factor     :          127
SES Threshold (ms)           :          50
Voice IPIP mode              :          normal
 
   

For more information on the VXSM card, see the "VXSM as a Transcoding Gateway" chapter in the Cisco Voice Switch Service Module (VXSM) Configuration Guide Release 5.5 at: http://www.cisco.com/en/US/docs/switches/wan/mgx/software/mgx_r5.5/voice/vxsm/configuration/guide/config5.html

Codec Filtering

The SBC allows you to restrict which codecs a particular call, caller and callee are allowed to use by whitelisting certain codecs. Initially all recognized codecs are on the whitelist. If a codec is requested which is absent from the call, caller, or callee codec whitelist, then the call still proceeds, but the forbidden codecs are removed from the offer and media gate configuration.

By supporting caller and callee codec lists, the SBC is able to make more intelligent transcoding decisions. If the codec support of either the calling or the called endpoint is known, then setting the caller and/or callee lists in a CAC policy is appropriate. However it may be that other considerations, such as the source adjacency, will affect the codec decision, in which case the per-call codec list can still be used.

For example, if the caller and callee codec lists are set to 'A and B', then all calls would use codec A. However, if a call had come across a transit network X (as indicated by the source adjacency) that only supported codec B, then the user could have an extra policy matching on source adjacency X, setting the per-call codec list to B. Calls crossing network X would then be forced to use codec B.

You can also limit the minimum packetization period of each codec, by configuring a value for the lowest acceptable minimum packetization period for each permitted codec. If a session is requested with a packetization period below this limit, the call still proceeds, but SBC increases the packetization period to the configured minimum value.

For configuration step information, see the "Configuring Codec Filtering Transcoding" section.

Configuring Transcoding After Rejection

In this configuration area, the user supplies a configuration for a list of remote media gateways that may need to be managed by the SBE. This is not required when transcoding is not needed.

The primary reason for transcoding configurations is to configure the capabilities of external media transcoding devices when these devices cannot be discovered automatically. In-band auto-discovery of transcoder capabilities is currently not supported. Therefore, this step must be done when configuring all connections to all current remote transcoding devices.


Note Transcoding configurations can be skipped if the described reason does not apply.


By default, media gateways are allowed to connect whether or not configuration has been supplied for them. To help avoid configuration errors, the SBE logs a warning if an incoming connection is received from a media gateway that is not a DBE and does not have transcoding configured.

The basic steps for implementing transcoding are as follows:

1. Configure the IP address, port, and transport protocol for H.248 media gateway controller on SBC. This step may not be required if the Media Gateway Controller has already been configured.

2. Configure the media gateway IP address.

3. Configure the codecs to be transcoded (for example, between ITU-T G.711 ulaw and ITU-T G.729A).

4. Specify the media gateway as a transcoder.

5. Activate SBE.

This task implements transcoding for SBC.

Once configured, the SBC automatically brings the transcoding device into use for any call requiring transcoding between the codecs as long as the call admission control (CAC) policy configuration does not preclude the transcoder service from being supplied for the call using the transcode-deny command (See the Configuring Call Admission Control Policy Sets, CAC Tables, and Global CAC Policy Sets section in the "Implementing Cisco Unified Border Element (SP Edition) Policies" module).


Note In an H.323 adjacency configuration, you must use the h245-tunnel disable command for H.323 FastStart transcoded calls.


SUMMARY STEPS

1. configure terminal

2. sbc service-name

3. sbe

4. control address h248 index index-number

5. port port-number

6. ipv4 ipv4_IP_address

7. transport [transport-type]

8. exit

9. media-gateway ipv4 IPv4-IP-address

10. codecs codec-list

11. transcoder

12. exit

13. activate

14. end

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

configure terminal

Example:

Router# configure terminal

Enables global configuration mode.

Step 2 

sbc service-name

Example:

Router(config)# sbc mysbc

Enters the mode of an SBC service.

Use the service-name argument to define the name of the service.

Step 3 

sbe

Example:

Router(config-sbc)# sbe

Enters the mode of an SBE entity within a SBC service.

Step 4 

control address h248 index index-number

Example:

Router(config-sbc-sbe)# control address h248 index 0

Configures an SBE to use a given IPv4 H.248 control address

Step 5 

port port-number

Example:

Router(config-sbc-sbe-ctrl-h248)# port 2000

Configures an SBE to use a given IPv4 H.248 port for H.248 communications.

Step 6 

ipv4 ipv4-IP-address

Example:

Router(config-sbc-sbe-ctrl-h248)# ipv4 1.1.1.1

Configures an SBE to use a given IPv4 H.248 control address.

Step 7 

transport [transport-type]

Example:

Router(config-sbc-sbe-ctrl-h248)# transport udp

Configures transport type for H.248 communications.

Step 8 

exit

Example:

Router(config-sbc-sbe-ctrl-h248)# exit

Exits the current configuration mode.

Step 9 

media-gateway ipv4 IPv4-IP-address

Example:

Router(config-sbc-sbe)# media-gateway ipv4 10.0.0.1

Configures a media gateway.

Step 10 

codecs codec-list

Example:

Router(config-sbc-sbe-mg)# codecs m=audio 1234 RTP/AVP 0 18,a=rtpmap:0 PCMU/8000,a=rtpmap:18 G729A/8000

Configures the codecs supported by the media gateway. Enters into media gateway codecs configuration mode.

Step 11 

transcoder

Example:

Router(config-sbc-sbe-mg-codecs)# transcoder

Configures the media gateway with transcoder support.

Step 12 

exit

Example:

Router(config-sbc-sbe-mg-codecs)# exit

Exits media gateway codecs configuration mode to the sbe command mode level.

Step 13 

activate

Example:

Router(config-sbc-sbe-mg)# activate

Initiates the SBC service after all SBE address configuration has been successfully committed.

Step 14 

end

Example:

Router(config-sbc)# end

Ends the configuration session.

Configuring Codec Filtering Transcoding

Configure codec filtering transcoding as shown below.

SUMMARY STEPS

1. configure terminal

2. sbc service-name

3. sbe

4. media-gateway ipv4 IPv4_IP_address

5. codecs codec-list

6. transcoder

7. exit

8. cac-policy-set

9. first-cac-table

10. cac-table

11. table-type policy-set

12. entry entry-num

13. caller-codec-list list-name

14. exit

15. exit

16. exit

17. codec-list list-name

18. codec codec-name

19. exit

20. end

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

configure terminal

Example:

Router# configure terminal

Enables global configuration mode.

Step 2 

sbc service-name

Example:

Router(config)# sbc mysbc

Enters the mode of an SBC service.

Use the service-name argument to define the name of the service.

Step 3 

sbe

Example:

Router(config-sbc)# sbe

Enters the mode of an SBE entity within a SBC service.

Step 4 

media-gateway ipv4 IPv4-IP-address

Example:

Router(config-sbc-sbe)# media-gateway ipv4 10.0.0.1

Configures a media gateway.

Step 5 

codecs codec-list

Example:

Router(config-sbc-sbe-mg)# codecs m=audio 1234 RTP/AVP 0 18,a=rtpmap:0 PCMU/8000,a=rtpmap:18 G729A/8000

Configures the codecs supported by the media gateway.

Step 6 

transcoder

Example:

Router(config-sbc-sbe-mg-codecs)# transcoder

Configures the media gateway with transcoder support.

Step 7 

exit

Example:

Router(config-sbc-sbe-mg-codecs)# exit

Exits the media gateway configuration mode.

Step 8 

cac-policy-set

Example:

Router(config-sbc-sbe)# cac-policy-set 1

Enters the CAC policy submode.

Step 9 

first-cac-table

Example:

Router(config-sbc-sbe-cacpolicy)# first-cac-table 1

Creates or configures the first admission control table.

Step 10 

cac-table

Example:

Router(config-sbc-sbe-cacpolicy)# cac-table 1

Creates or configures an admission control table.

Step 11 

table-type policy-set

Example:

Router(config-sbc-sbe-cacpolicy-cactable)# table-type policy-set

Configures the Policy Set table type of Call Admission Control (CAC) table.

Step 12 

entry

Example:

Router(config-sbc-sbe-cacpolicy-cactable)# entry 1

Creates or modifies an entry in a table.

Step 13 

caller-codec-list list-name

Example:

Router(config-sbc-sbe-cacpolicy-cactable-entry) # caller-codec-list my_codecs

Lists the codecs which the caller leg of a call is allowed to use.

Step 14 

exit

Example:

Router(config-sbc-sbe-cacpolicy-cactable-entry) # exit

Exits the CAC table entry configuration mode.

Step 15 

exit

Example:

Router(config-sbc-sbe-cacpolicy-cactable)# exit

Exits the CAC table configuration mode.

Step 16 

exit

Example:

Router(config-sbc-sbe-cacpolicy)# exit

Exits the CAC policy configuration mode.

Step 17 

codec-list list-name

Example:

Router(config-sbc-sbe)# codec-list my_codecs

Creates a codec list and enters the Codec list configuration mode

Step 18 

codec codec-name

Example:

Router(config-sbc-sbe-codec-list)# codec PCMU

Adds a codec to a codec list.

Step 19 

exit

Example:

Router(config-sbc-sbe-codec-list)# exit

Exits the Codec list configuration mode.

Step 20 

end

Example:

Router(config-sbc-sbe)# end

Ends the configuration session.

Configuration Examples for Implementing Transcoding

The example below is a configuration of transcoding after rejection.

Router(config)# sbc mySbc
Router(config-sbc)# sbe
Router(config-sbc-sbe)# control address h248 index 1
Router(config-sbc-sbe-ctrl-h248)# port 2000
Router(config-sbc-sbe-ctrl-h248)# ipv4 88.88.133.2
Router(config-sbc-sbe-ctrl-h248)# transport udp
Router(config-sbc-sbe-ctrl-h248)# exit
Router(config-sbc-sbe)# media-gateway ipv4 10.0.0.1
Router(config-sbc-sbe-mg)# codecs m=audio 1234 RTP/AVP 0 18,a=rtpmap:0 
PCMU/8000,a=rtpmap:18 G729A/8000
Router(config-sbc-sbe-mg-codecs)# transcoder
Router(config-sbc-sbe-mg-codecs)# exit
Router(config-sbc-sbe-mg)# activate
Router(config-sbc)# end
 
   

Below is an example of codec filtering transcoding.

Router(config)# ip route 10.0.20.33 255.255.255.255 10.130.10.33
Router(config)# ip route 0.0.0.0 0.0.0.0 10.74.50.114
Router(config)# ip route 0.0.0.0 0.0.0.0 10.130.10.1
 
   
Router(config)# snmp-server community cisco group Network-Monitor
Router(config)# snmp-server community public group Network-Monitor
Router(config)# snmp-server community private group Network-Monitor
 
   
Router# configure terminal
Router(config)# sbc sbc-11
Router(config-sbc)# sbe
Router(config-sbc-sbe)# media-gateway ipv4 10.100.181.2
Router(config-sbc-sbe-mg)# codecs m=audio 20000 RTP/AVP 0 8 18,a=rtpmap:0 
PCMU/8000,a=rtpmap:8 PCMA/8000,a=rtpmap:18 G729/8000
Router(config-sbc-sbe-mg)# transcoder
 
   
Router(config-sbc-sbe)# control address h248 index 1
Router(config-sbc-sbe-ctrl-h248)# ipv4 10.130.10.4
Router(config-sbc-sbe-ctrl-h248)# transport udp
 
   
Router(config-sbc-sbe)# adjacency sip SIPP81
Router(config-sbe-adj-sip)# nat force-off
Router(config-sbc-sbe-adj-sip)# preferred-transport udp
Router(config-sbc-sbe-adj-sip)# redirect-mode pass-through
Router(config-sbe-adj-sip)# authentication nonce timeout 300
Router(config-sbe-adj-sip)# signaling-address ipv4 10.130.10.4
Router(config-sbc-sbe-adj-sip)# signaling-port 5060
Router(config-sbc-sbe-adj-sip)# remote-address ipv4 10.0.244.81 255.255.255.255
Router(config-sbc-sbe-adj-sip)# signaling-peer 10.0.244.81
Router(config-sbc-sbe-adj-sip)# signaling-peer-port 5060
Router(config-sbc-sbe-adj-sip)# dbe-location-id 0
Router(config-sbc-sbe-adj-sip)# reg-min-expiry 3000
Router(config-sbc-sbe-adj-sip)# attach
      
Router(config-sbc-sbe)# adjacency sip SIPP91
Router(config-sbc-sbe-adj-sip)# nat force-off
Router(config-sbc-sbe-adj-sip)# preferred-transport udp
Router(config-sbc-sbe-adj-sip)# redirect-mode pass-through
Router(config-sbc-sbe-adj-sip)# authentication nonce timeout 300
Router(config-sbc-sbe-adj-sip)# signaling-address ipv4 10.130.10.4
Router(config-sbc-sbe-adj-sip)# signaling-port 5060
Router(config-sbc-sbe-adj-sip)# remote-address ipv4 10.0.244.91 255.255.255.255
Router(config-sbc-sbe-adj-sip)# signaling-peer 10.0.244.91
Router(config-sbc-sbe-adj-sip)# signaling-peer-port 5060
Router(config-sbc-sbe-adj-sip)# dbe-location-id 0
Router(config-sbc-sbe-adj-sip)# reg-min-expiry 3000
Router(config-sbc-sbe-adj-sip)# attach
 
   
Router(config-sbc-sbe)# sip inherit profile preset-core
 
   
Router(config-sbc-sbe)# cac-policy-set 1
Router(config-sbc-sbe-cacpolicy)# first-cac-table table
Router(config-sbc-sbe-cacpolicy)# first-cac-scope call
Router(config-sbc-sbe-cacpolicy)# averaging-period 60
Router(config-sbc-sbe)# cac-table table
Router(config-sbc-sbe-cacpolicy-cactable)# match-type adjacency
Router(config-sbc-sbe-cacpolicy-cactable)# entry 1
Router(config-sbc-sbe-cacpolicy-cactable-entry)# match-value SIPP81
Router(config-sbc-sbe-cacpolicy-cactable-entry)# action cac-complete
Router(config-sbc-sbe-cacpolicy-cactable-entry)# max-bandwidth 64009 Gbps
Router(config-sbc-sbe-cacpolicy-cactable-entry)# max-updates 4294967295
Router(config-sbc-sbe-cacpolicy-cactable-entry)# max-channels 4294967295
Router(config-sbc-sbe-cacpolicy-cactable-entry)# early-media-type full-duplex
Router(config-sbc-sbe-cacpolicy-cactable-entry)# early-media-timeout 0
Router(config-sbc-sbe-cacpolicy-cactable-entry)# caller-codec-list allow711u
Router(config-sbc-sbe-cacpolicy-cactable-entry)# callee-privacy never
Router(config-sbc-sbe-cacpolicy-cactable-entry)# caller-privacy never
Router(config-sbc-sbe-cacpolicy-cactable-entry)# callee-hold-setting standard
Router(config-sbc-sbe-cacpolicy-cactable-entry)# caller-hold-setting standard
Router(config-sbc-sbe-cacpolicy-cactable)# entry 2
Router(config-sbc-sbe-cacpolicy-cactable-entry)# match-value SIPP91
Router(config-sbc-sbe-cacpolicy-cactable-entry)# action cac-complete
Router(config-sbc-sbe-cacpolicy-cactable-entry)# max-bandwidth 64009 Gbps
Router(config-sbc-sbe-cacpolicy-cactable-entry)# max-updates 4294967295
Router(config-sbc-sbe-cacpolicy-cactable-entry)# max-channels 4294967295
Router(config-sbc-sbe-cacpolicy-cactable-entry)# early-media-type full-duplex
Router(config-sbc-sbe-cacpolicy-cactable-entry)# early-media-timeout 0
Router(config-sbc-sbe-cacpolicy-cactable-entry)# callee-codec-list allowg729
Router(config-sbc-sbe-cacpolicy-cactable-entry)# callee-privacy never
Router(config-sbc-sbe-cacpolicy-cactable-entry)# caller-privacy never
Router(config-sbc-sbe-cacpolicy-cactable-entry)# callee-hold-setting standard
Router(config-sbc-sbe-cacpolicy-cactable-entry)# caller-hold-setting standard
Router(config-sbc-sbe-cacpolicy-cactable-entry)# complete
 
   
Router (config-sbc-sbe)# cac-policy-set global 1
 
   
Router (config-sbc-sbe)# retry-limit 3
 
   
Router (config-sbc-sbe)# call-policy-set 1
Router(config-sbc-sbe-rtgpolicy)# first-call-routing-table table
Router(config-sbc-sbe-rtgpolicy-rtgtable)# entry 1
Router(config-sbc-sbe-rtgpolicy-rtgtable-entry)# action complete
Router(config-sbc-sbe-rtgpolicy-rtgtable-entry)# dst-adjacency SIPP91
Router(config-sbc-sbe-rtgpolicy-rtgtable-entry)# match-address 318X
Router(config-sbc-sbe-rtgpolicy-rtgtable-entry)# prefix
Router(config-sbc-sbe-rtgpolicy-rtgtable-entry)# complete
 
   
Router (config-sbc-sbe)# call-policy-set default 1
 
   
Router(config-sbc-sbe)# sip max-connections 2
Router(config-sbc-sbe)# sip timer
Router(config-sbc-sbe-sip-tmr)# tcp-idle-timeout 120000
Router(config-sbc-sbe-sip-tmr)# tls-idle-timeout 3600000
Router(config-sbc-sbe-sip-tmr)# udp-response-linger-period 32000
Router(config-sbc-sbe-sip-tmr)# udp-first-retransmit-interval 500
Router(config-sbc-sbe-sip-tmr)# udp-max-retransmit-interval 4000
Router(config-sbc-sbe-sip-tmr)# invite-timeout 180
 
   
Router (config-sbc-sbe)# codec-list allow711u
Router(config-sbc-sbe-codec-list)# codec PCMU
 
   
Router (config-sbc-sbe)# codec-list allowg729
Router(config-sbc-sbe-codec-list)# codec G729
 
   
Router(config-sbc-sbe)# h323
Router(config-sbc-sbe-h323)# ras timeout arq 5000
Router(config-sbc-sbe-h323)# ras retry arq 2
Router(config-sbc-sbe-h323)# ras timeout brq 3000
Router(config-sbc-sbe-h323)# ras retry brq 2
Router(config-sbc-sbe-h323)# ras timeout drq 3000
Router(config-sbc-sbe-h323)# ras retry drq 2
Router(config-sbc-sbe-h323)# ras timeout grq 5000
Router(config-sbc-sbe-h323)# ras retry grq 2
Router(config-sbc-sbe-h323)# ras timeout rrq 3000
Router(config-sbc-sbe-h323)# ras retry rrq 2
Router(config-sbc-sbe-h323)# ras rrq ttl 60
Router(config-sbc-sbe-h323)# ras timeout urq 3000
Router(config-sbc-sbe-h323)# ras retry urq 1
Router(config-sbc-sbe-h323)# h225 timeout proceeding 10000
Router(config-sbc-sbe-h323)# h225 timeout establishment 180000
Router(config-sbc-sbe-h323)# h225 timeout setup 4000
Router(config-sbc-sbe-h323)# ras rrq keepalive 45000
 
   
Router(config-sbc-sbe)# h323
Router(config-sbc-sbe-adj-h323)# adjacency timeout 30000
 
   
Router(config-sbc-sbe)# blacklist
Router(config-sbc-sbe-blacklist)# global
 
   
Router(config-sbc-sbe)# blacklist
Router(config-sbc-sbe-blacklist)# address-default
 
   
Router(config-sbc-sbe)# redirect-limit 2
Router(config-sbc-sbe)# deact-mode normal
Router (config-sbc-sbe)# activate
 
   
Router(config-sbc)# dbe
Router(config-sbc-dbe)# location-id 0
Router(config-sbc-dbe)# media-timeout 360
Router(config-sbc-dbe)# deact-mode normal
Router (config-sbc-dbe)# activate

Verification

Use the following show sbc sbe media-gateway-associations command to display a list of known media gateways with an active association and to verify the operation:

The following example shows the SBC and media communications.

Router# show sbc slt-n2 sbe media-gateway-associations
 
   
SBC Service "slt-n2"
     Media gateway 192.169.125.1:2944
         Gateway Protocol   = megaco
         Transport Protocol = UDP
          Local Address      = 22.46.0.11:2944
 
                Sent            Received        Failed          Retried
    Requests    117             2               1               7
    Replies     2               116             -               0

Voice Transcoding Per Adjacency Statistics

The Voice Transcoding Per Adjacency Statistics feature provides the transcoding statistics to the user for voice calls at both global and adjacency levels. The feature analyzes the consumption of the cards, such as the DSP cards, that provide the transcoding functions.

The transcoding statistics include the following information:

The number of active transcoding media stream for each codec pair over several summary periods at global and adjacency scopes. The statistic also provides a high water mark for the corresponding codec pair.

The number of active transcoding calls both per-adjacency and globally are listed. The statistics can be listed both at global and adjacency scopes for the list of codec pairs.

The statistics display the codec names for the following codecs, if the transcoding call uses any other codecs, the codec name is displayed as Other:

G711A

G711U

G729

GSM

T38

CLEAR

Configuring the Voice Transcoding Per Adjacency Statistics

This task shows how to configure the Voice Transcoding Per Adjacency Statistics feature, list the transcoding statistics as per the scope and summary period, and also reset the transcoding statistics.

SUMMARY STEPS

1. configure terminal

2. sbc sbc-name

3. sbe

4. transcoding-stats enable

5. end

6. show sbc sbc-name sbe transcoding-stats {global | adjacency adjacency-name} {current15mins | current5mins | currentday | currenthour | current-indefinite | previous15mins | previous5mins | previousday | previoushour}

7. clear sbc sbc-name sbe transcoding-stats [global | adjacency adjacency-name] [all | current-indefinite]

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

configure terminal

Example:

Router# configure terminal

Enables global configuration mode.

Step 2 

sbc sbc-name

Example:

Router(config)# sbc mySBC

Enters the SBC service mode. Use the sbc-name argument to define the name of the service.

Step 3 

sbe

Example:

Router(config-sbc)# sbe

Enters the SBE entity mode within a SBC service.

Step 4 

transcoding-stats enable

Example:

Router(config-sbc-sbe)# no transcoding-stats enable

Enables or disables the transcoding related statistics for the SBC.

The following warning is issued and the user needs to confirm y (Yes) or n (No) to enable or disable the transcoding statistics:


Warning This will re-activate the SBC, and existing calls will be impacted[confirm]

By default, the transcoding related statistics for the SBC is enabled.

Step 5 

end

Example:

Router(config-sbc-sbe)# end

Exits the SBE entity mode and enters the Privileged Exec mode.

Step 6 

show sbc sbc-name sbe transcoding-stats {global | adjacency adjacency-name} {current15mins | current5mins | currentday | currenthour | current-indefinite | previous15mins | previous5mins | previousday | previoushour}

Example:

Router# show sbc mySBC sbe transcoding-stats adjacency SIPP current5mins

Lists the voice transcoding statistics for the required scope and summary period.

adjacency—Lists the transcoding statistics for the specified adjacency.

global—Lists the globally scoped statistics for the entire SBC.

current15mins—Lists the statistics for the current 15 minute interval.

current5mins—Lists the statistics for the current 5 min. interval.

currentday—Lists the statistics for the current day from midnight.

currenthour—Lists the statistics for the current hour.

currentindefinite—Lists the statistics for the period since the last explicit reset.

previous15mins—Lists the statistics for the previous 15 minute interval.

previous5mins—Lists the statistics for the previous 5 min. interval.

previousday—Lists the statistics for the previous day.

previoushour—Lists the statistics for the previous hour.

Step 7 

clear sbc sbc-name sbe transcoding-stats [global | adjacency adjacency-name] [all | current-indefinite]

Example:

Router# clear sbc mySBC sbe adjacency SIPP all

Clears the transcoding statistics for all or current-indefinite summary period.

adjacency—Clears statistics for the adjacency.

global—Clears the global transcoding statistics.

all—Clears statistics for all summary periods.

currentindefinite—Clear statistics for only the current-indefinite period.

The following example shows the output of the show sbc sbe transcoding-stats adjacency current15mins command:

Router# show sbc mySBC sbe transcoding-stats adjacency SIPP current15mins
 
   
Codec1  Codec2  Transcoded Stream  HWM of TranscodedStream   Last Reset
G711A    G711U         4                       10           2010/09/10 19:27:15   
 
   

Media Gateway-Assisted DTMF Interworking

The SBC enables inband DTMF interworking using media gateway switches such as the MGX 8880. A Cisco MGX 8880 is used with DTMF interworking in the following scenarios:

As a transcoder—DTMF interworking between media plane and signaling is supported.

As an inband DTMF extractor or injector.

The SBC supports two types of media plane DTMF:

RFC2833 (telephone-event)

Inband DTMF—DTMF inband audio stream, such as G.711. To support inband DTMF, MGX performs the following tasks:

Monitors the audio stream.

Extracts the DTMF signal.

Reports or injects the DTMF signal into the voice band, and vice versa.

DTMF Interworking with MGX as Transcoder

When the SBC uses an external transcoder, such as MGX, DTMF interworking is supported for the following:

Between media and signaling in a call.

For both, negotiated transcoding and transcoding provisioned through the use of codec lists.

Between supported media formats, such as RFC2833, and supported SIP signaling formats, such as INFO or NOTIFY.

Inband DTMF Support—Interworking Without a Transcoder

The SBC supports a call or adjacency policy to indicate when an inband DTMF tone is monitored. Monitoring an inband DTMF tone can either be forced, or an optional task in the absence of any other DTMF support.

The SBC enables interworking between any two of the three supported DTMF formats, which include:

Inband

RFC 2833 telephone events

Signaling.

In the event of a failover, active calls using any DTMF interworking option are protected, and the interworking capability is retained on restoration.

The SBC provides a per-adjacency option to enforce an inband DTMF-compatible codec negotiation if no other methods are available for receiving or sending DTMF.

Configuring Inband DTMF Interworking

To configure inband DTMF interworking, perform the following steps.


Note The caller and callee commands have been used in this procedure. In some scenarios, the branch command can be used as an alternative to the caller and callee command pair. The branch command has been introduced in Release 3.5.0. See the "Configuring Directed Nonlimiting CAC Policies" section for information about this command.


SUMMARY STEPS

1. configure terminal

2. sbc service-name

3. sbe

4. cac-policy-set policy-set-id

5. first-cac-scope scope-name

6. first-cac-table table-name

7. cac-table table-name

8. table-type {policy-set | limit {list of limit tables}}

9. entry entry-id

10. cac-scope {list of scope options}

11. callee inband-dtmf-mode {always | inherit | maybe | never}

12. caller inband-dtmf-mode {always | inherit | maybe | never}

13. complete

14. call-policy-set default policy-set-id

15. end

16. show sbc service-name sbe cac-policy-set id table name entry entry

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

configure terminal

Example:

Router# configure terminal

Enables global configuration mode.

Step 2 

sbc service-name

Example:

Router(config)# sbc mysbc

Enters the submode of an SBC service.

Step 3 

sbe

Example:

Router(config-sbc)# sbe

Configures the submode of the SBE entity within an SBC service.

Step 4 

cac-policy-set policy-set-id

Example:

Router(config-sbc-sbe)# cac-policy-set 1

Enters the submode of the CAC policy.

Step 5 

first-cac-scope scope-name

Example:

Router(config-sbc-sbe-cacpolicy)# first-cac-scope global

Configures the scope at which to begin defining limits when performing the admission control stage of policy.

Note The first-cac-scope definition is relevant only if the table type configured by the first-cac-table command is a Limit table. In that case, the scope of the first-cac-table is determined by first-cac-scope. If the first-cac-table is a Policy Set table, the first-cac-scope is ignored, and defaults to Global.

The scope-name argument configures the scope at which limits should be defined initially. Possible scope-name values are:

adj-group

call

category

dst-account

dst-adj-group

dst-adjacency

dst-number

global

src-account

src-adj-group

src-adjacency

src-number

Features can be enabled or disabled per adjacency group through CAC configuration the same way this is done per individual adjacency.

Step 6 

first-cac-table table-name

Example:

Router(config-sbc-sbe-cacpolicy)# first-cac-table first_policy_table

Configures the name of the first policy table to be processed when performing the admission control stage of the policy.

Step 7 

cac-table table-name

Example:

Router(config-sbc-sbe-cacpolicy)# cac-table first_policy_table

Enters the mode for configuration of an admission control table (creating one, if necessary) within the context of an SBE policy set.

Step 8 

table-type {policy-set | limit {list of limit tables}}

Example:

Router(config-sbc-sbe-cacpolicy-cactable)# table-type policy-set

Configures the table type of a CAC table within the context of an SBE policy set.

The list of limit tables argument controls the syntax of the match-value fields of the entries in the table. Possible list of limit tables values are:

account—Compare with name of the account.

adj-group—Compare with name of the adjacency group.

adjacency—Compare with name of the adjacency.

all—No comparison type. All events match this type.

call-priority—Compare with call priority.

category—Compare with number analysis-assigned category.

dst-account—Compare with name of the destination account.

dst-adj-group—Compare with name of the destination adjacency group.

dst-adjacency—Compare with name of the destination adjacency.

dst-prefix—Compare with beginning of the dialed digit string.

event-type—Compare with CAC policy event types.

src-account—Compare with name of the source account.

src-adj-group—Compare with name of the source adjacency group.

src-adjacency—Compare with name of the source adjacency.

src-prefix—Compare with beginning of the calling number string.

Note For Limit tables, the event, message, call matches only a single entry.

Features can be enabled or disabled per adjacency group through CAC configuration the same way this is done per individual adjacencies. The adj-group table type matches with either the source or the destination adjacency group.

When the policy-set keyword is specified, use the cac-scope command to configure the scope within each entry at which limits are applied in a CAC Policy Set table.

Note For Policy Set tables, the event, call or message, is applied to all entries in this table.

Step 9 

entry entry-id

Example:

Router(config-sbc-sbe-cacpolicy-cactable)# entry 1

Enters the mode to create or modify an entry in an admission control table.

Step 10 

cac-scope {list of scope options}

Example:

Router(config-sbc-sbe-cacpolicy-cactable-entry) # cac-scope call

Configures the scope within each entry at which limits are applied in a Policy Set table.

Only per-call scope can be configured when using the codec-restrict-to-list command.

list of scope options—Specifies one of the following strings used to match events:

accountEvents that are from the same account.

adjacencyEvents that are from the same adjacency.

adj-group—Events that are from members of the same adjacency group.

call—Scope limits are per single call.

category—Events that have the same category.

dst-account—Events that are sent to the same account.

dst-adj-group—Events that are sent to the same adjacency group.

dst-adjacency—Events that are sent to the same adjacency.

dst-number—Events that have same destination.

global—Scope limits are global.

src-account—Events that are from the same account.

src-adj-group—Events that are from the same adjacency group.

src-adjacency—Events that are from the same adjacency.

src-number—Events that have the same source number.

sub-category—The limits specified in this scope apply to all the events sent to or received from members of the same subscriber category.

sub-category-pfx—The limits specified in this scope apply to all events sent to or received from members of the same subscriber category prefix.

subscriber—The limits specified in this scope apply to all the events sent to or received from individual subscribers

A device that is registered with a Registrar server.

Step 11 

callee inband-dtmf-mode {always | inherit | maybe | never}

Example:

Router(config-sbc-sbe-cacpolicy-cactable-entry) # callee inband-dtmf-mode always

To configure a DTMF inband mode for the callee side, use the callee inband-dtmf-mode command in the CAC table configuration mode.To deconfigure the DTMF inband mode for the callee side, use the no form of this command.

The callee inband-dtmf-mode specifies one of the following strings:

always—The inband DTMF tones are always in use by an endpoint.

inherit—The inband DTMF mode for an endpoint is not affected by the CAC entry.

maybe—The inband DTMF tones are used by an endpoint unless signaling indicates that an alternative format for a DTMF is in use.

never—An endpoint never uses inband DTMF.

Step 12 

caller inband-dtmf-mode {always | inherit | maybe | never}

Example:

Router(config-sbc-sbe-cacpolicy-cactable-entry) # caller inband-dtmf-mode never

To configure the DTMF inband mode for the caller side, use the caller inband-dtmf-mode command in the CAC table configuration mode.To deconfigure the DTMF inband mode for the caller side, use the no form of this command.

The caller inband-dtmf-mode specifies one of the following strings:

always—The inband DTMF tones are always in use by an endpoint.

inherit—The inband DTMF mode for an endpoint is not affected by the CAC entry.

maybe—The inband DTMF tones are used by an endpoint unless signaling indicates that an alternative format for a DTMF is in use.

never—An endpoint never uses inband DTMF.

Step 13 

complete

Example:

Router(config-sbc-sbe-cacpolicy)# complete

Completes the CAC-policy.

Step 14 

call-policy-set default policy-set-id

Example:

Router(config-sbc-sbe-cacpolicy)# cac-policy-set global 1

Sets the active routing policy set within an SBE entity.

Step 15 

end

Example:

Router(config-sbc-sbe-cacpolicy)# end

Exits the cac-policy-set configuration mode and enters the Privileged EXEC mode.

Step 16 

show sbc service-name sbe cac-policy-set id table name entry entry

Example:

Router# show sbc mysbc sbe cac-policy-set 1 table standard_policy_list entry 1

Displays detailed information, including DTMF interworking, pertaining to a specific entry in a CAC policy table.

Configuring Codecs to Support Inband DTMF

To configure the codecs to support inband DTMF, perform the following tasks:

SUMMARY STEPS

1. configure terminal

2. sbc service-name

3. sbe

4. codec system system-name id

5. options {none | transrate | transcode | inband-dtmf}

6. end

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

configure terminal

Example:

Router# configure terminal

Enables the global configuration mode.

Step 2 

sbc service-name

Example:

Router(config)# sbc mysbc

Enters the submode of an SBC service.

Step 3 

sbe

Example:

Router(config-sbc)# sbe

Configures the submode of the SBE entity within an SBC service.

Step 4 

codec system system id

Example:

Router(config-sbc-sbe)# codec system GSM id 3

Specifies the name of the system, analog-to-digital codec (enCOder/DECoder), and enters the Codec definition mode.

Step 5 

options {none | transrate | transcode | inband-dtmf}

Example:

Router(config-sbc-sbe-codec-def)# options inband-dtmf

Configures the codec that will support voice inband DTMF. The values for the options are:

none

transrate

transcode

inband-dtmf

Step 6 

end

Example:

Router(config-sbc-sbe-cacpolicy)# end

Exits the cac-policy-set configuration mode and enters the Privileged EXEC mode.