Information About Transcoding Resources

Transcoding Support

Transcoding compresses and decompresses voice streams to match endpoint-device capabilities. Transcoding is required when an incoming voice stream is digitized and compressed (by means of a codec) to save bandwidth, and the local device does not support that type of compression.

Cisco CME 3.2 and later versions support transcoding between G.711 and G.729 codecs for the following features:

Call transfer and forward—One leg of a Voice over IP (VoIP)-to-VoIP hairpin call uses G.711 and the other leg uses G.729. A hairpin call is an incoming call that is transferred or forwarded over the same interface from which it arrived.

Cisco Unity Express—An H.323 or SIP call using G.729 is forwarded to Cisco Unity Express. Cisco Unity Express supports only G.711, so G.729 must be transcoded.

Music on hold (MOH)—The phone receiving MOH is part of a system that uses G.729. The G.711 MOH is transcoded into G.729 resulting in a poorer quality sound due to the lower compression of G.729.

Transcoding is facilitated through DSPs, which are located in network modules. All network modules have single inline memory module (SIMM) sockets or packet voice/data modules (PVDM) slots that each hold a Packet Voice DSP Module (PVDM). Each PVDM holds DSPs. A router can have multiple network modules.

Cisco Unified CME routers and external voice routers on the same LAN must be configured with digital signal processors (DSPs) that support transcoding. DSPs reside either directly on a voice network module, such as the NM-HD-2VE, on PVDM2s that are installed in a voice network module, such as the NM-HDV2, or on PVDM2s that are installed directly onto the motherboard, such as on the Cisco 2800 and 3800 series voice gateway routers.

DSPs on the NM-HDV, NM-HDV2, NM-HD-1V, NM-HD-2V, and NM-HD-2VE can be configured for transcoding.

PVDM2-xx on the Cisco 2800 series and the Cisco 3800 series motherboards can also be configured for transcoding.

Figure 13-2 shows an NM-HDV with five SIMM sockets or PVDM slots that each hold a 12-Channel PVDM (PVDM-12). Each PVDM-12 holds three TI 549 DSPs. Each DSP supports four channels.

Figure 13-2 NM-HDV Supports Up to Five PVDMs

Use DSP resources to provide voice termination of the digital voice trunk group or resources for a DSP farm. DSP resources available for transcoding and not used for voice termination are referred to as a DSP farm. Figure 13-3 shows a DSP farm managed by Cisco Unified CME.

Figure 13-3 DSP Farm

Transcoding When a Remote Phone Uses G.729r8

A situation in which transcoding resources may be used is when you use the codec command to select the G.729r8 codec to help save network bandwidth for a remote IP phone. If a conference is initiated, all phones in the conference switch to G.711 mu-law. To allow the phone to retain its G.729r8 codec setting when joined to a conference, you can use the codec g729r8 dspfarm-assist command to specify that this phone’s calls should use the resources of a DSP farm for transcoding. For example, there are two remote phones (A and B) and a local phone (C) that initiates a conference with them. Both A and B are configured to use the G.729r8 codec with the assistance of the DSP-farm transcoder. In the conference, the call leg from C to the conference uses the G.711 mu-law codec, and the call legs from A and B to the Cisco Unified CME router use the G.729r8 codec.

Consider your options carefully when deciding to use the codec g729r8 dspfarm-assist command. The benefit is that it allows calls to use the G.729r8 codec on the call leg between the IP phone and the Cisco Unified CME router, which saves network bandwidth. The disadvantage is that for situations requiring G.711 codecs, such as conferencing and Cisco Unity Express, DSP resources that are possibly scarce are used to transcode the call, and delay is introduced while voice is shuttled to and from the DSP. In addition, the overuse of this feature can mask configuration errors in the codec selection mechanisms involving dial peers and codec lists.

Therefore, we recommend using the codec g729r8 dspfarm-assist command sparingly and only when absolutely required for bandwidth savings or when you know the phone will be participating very little, if at all, in calls that require a G.711 codec.

Because of how Cisco Unified CME uses voice channels with Skinny Client Control Protocol (SCCP) endpoints, you must configure at least two available transcoding sessions when establishing a call that requires transcoding configured with the codec g729r8 dspfarm-assist command. Only one session is used after the voice path is established with transcoding. However, during the SCCP manipulations, a temporary session may be allocated. If this temporary session cannot be allocated, the transcoding request is not honored, and the call continues with the G.711 codec.

If the codec g729r8 dspfarm-assist command is configured for a phone and a DSP resource is not available when needed for transcoding, a phone registered to the local Cisco Unified CME router will use G.711 instead of G.729r8. This is not true for nonSCCP call legs; if DSP resources are not available for the transcoding required for a conference, for example, the conference is not created.

Secure DSP Farm Transcoding

Cisco Unified CME uses the secure transcoding DSP farm capability only in the case described in the “Transcoding When a Remote Phone Uses G.729r8” section. If a call using the codec g729r8 dspfarm-assist command is secure, Cisco Unified CME looks for a secure transcoding resource. If it cannot find one, transcoding is not done. If the call is not secure, Cisco Unified CME looks for a nonsecure transcoding resource. If it cannot find one, Cisco Unified CME looks for a secure transcoding resource. Even if Cisco Unified CME uses a secure transcoding resource, the call is not secure, and a more expensive secure DSP Farm resource is not needed for a nonsecure call because Cisco Unified CME cannot find a less expensive nonsecure transcoder.

Sets the switch back method that the SCCP client uses when the primary or higher priority Cisco Unified CME becomes available again.

graceful —Switchback happens only after all the active sessions have been terminated gracefully.

guard timeout-guard-value —Switchback happens either when the active sessions have been terminated gracefully or when the guard timer expires, whichever happens first. Timeout value is in seconds. Range: 60 to 172800. Default: 7200.

immediate —Switches back to the higher order Cisco Unified CME immediately when the timer expires, whether there is an active connection or not.

Determining the Maximum Number of Transcoder Sessions

To determine the maximum number of transcoder sessions that can occur at one time perform the following steps.

SUMMARY STEPS

1. dspfarm transcoder maximum sessions

2. show sdspfarm sessions

3. show sdspfarm units

4. Determine maximum number of transcoder sessions based on values in steps 2 and 3.

DETAILED STEPS

Step 1 Use the dspfarm transcoder maximum sessions command to set the maximum number of transcoder sessions you have configured.

Step 2 Use the show sdspfarm sessions command to display the number of transcoder sessions that are active.

Step 3 Use the show sdspfarm units command to display the number of DSP farms that are configured.

Step 4 Obtain the maximum number of transcoder sessions by multiplying the number of transcoder sessions from Step 2 (configured in Step 1 using the dspfarm transcoder maximum sessions command) by the number of DSP farms from Step 3.

Setting the Cisco Unified CME Router to Receive IP Phone Messages

To set the Cisco Unified CME router to receive IP phone messages, perform the following steps.

Note You can unregister all active calls’ transcoding streams with the sdspfarm unregister force command.

Prerequisites

Identify the MAC address of the SCCP client interface. For example, if you have the following configuration:

interface FastEthernet 0/0

ip address 10.5.49.160 255.255.0.0

.

.

.

sccp local FastEthernet 0/0

sccp

The show interface FastEthernet 0/0 command will yield a MAC address. In the following example, the MAC address of the Fast Ethernet interface is 000a.8aea.ca80:

Specifies the maximum number of DSP farms that are allowed to be registered to the SCCP router.

number —Range: 0 to 5. Default: 0.

Step 6

sdspfarm transcode sessions number

Router(config-telephony)# sdspfarm transcode sessions 40

Specifies the maximum number of transcoder sessions for G.729 allowed by the Cisco Unified CME router.

One transcoder session consists of two transcoding streams between callers using transcode. Use the maximum number of transcoding sessions and conference calls that you want your router to support at one time.

Permits a DSP farm unit to be registered to Cisco Unified CME and associates it with an SCCP client interface’s MAC address.

Required only if you blocked automatic registration by using the auto-reg-ephone command.

number —The tag number. Range: 1 to 5.

device-name— MAC address of the SCCP client interface with the “MTP” prefix added.

Step 8

end

Router(config-telephony)# end

Returns to privileged EXEC mode.

Configuring the Cisco Unified CME Router to Host a Secure DSP Farm

You must configure the Media Encryption Secure Real-Time Transport Protocol (SRTP) feature in the Cisco Unified CME 4.2 and later versions, making it a secure Cisco Unified CME, before it can host a secure DSP farm. See Configuring Security for information on configuring a secure Cisco Unified CME.

Modifying DSP Farms for NM-HDVs After Upgrading Cisco IOS Software

To ensure continued support for existing DSP farms for NM-HDVs configured after upgrading the Cisco IOS software on your Cisco router, perform the following steps.

Note Perform this task if previously-configured DSP farms for NM-HDVs fail to register to Cisco Unified CME after you upgrade the Cisco IOS software release.

Prerequisites

Confirm that device name for a dspfarm tag in telephony-service configuration is lower case by using the show - running configuration command.

(Optional) Specifies how long to monitor RTP inactivity before deleting an RTP stream.

Step 6

end

Router(config)# end

Returns to privileged EXEC mode.

Verifying DSP Farm Operation

To verify that the DSP farm is registered and running, perform the following steps in any order.

SUMMARY STEPS

1. show sccp [ statistics | connections ]

2. show sdspfarm units

3. show sdspfarm sessions

4. show sdspfarm sessions summary

5. show sdspfarm sessions active

6. show sccp connections details

7. debug sccp { all | errors | events | packets | parser }

8. debug dspfarm { all | errors | events | packets }

9. debug ephone mtp

DETAILED STEPS

Step 1 Use the show sccp [ statistics | connections ] command to display the SCCP configuration information and current status.

Router# show sccp statistics

SCCP Application Service(s) Statistics:

Profile ID:1, Service Type:Transcoding

TCP packets rx 7, tx 7

Unsupported pkts rx 1, Unrecognized pkts rx 0

Register tx 1, successful 1, rejected 0, failed 0

KeepAlive tx 0, successful 0, failed 0

OpenReceiveChannel rx 2, successful 2, failed 0

CloseReceiveChannel rx 0, successful 0, failed 0

StartMediaTransmission rx 2, successful 2, failed 0

StopMediaTransmission rx 0, successful 0, failed 0

Reset rx 0, successful 0, failed 0

MediaStreamingFailure rx 0

Switchover 0, Switchback 0

Use the show sccp connections command to display information about the connections controlled by the SCCP transcoding and conferencing applications. In the following example, the secure value of the stype field indicates that the connection is encrypted:

Obtaining a Digital Certificate from a CA Server

The CA server can be the same router as the DSP farm. The DSP farm router can be configured as a CA server. The configuration steps below show how to configure a CA server on the DSP farm router. Additional configurations are required for configuring CA server on an external Cisco router or using a different CA server by itself.

Configuring a CA Server

The CA server automatically creates a trustpoint where the certificates are stored. The automatically created trustpoint stores the CA root certificate.

Prerequisites

Cisco Unified CME 4.2 or a later version.

SUMMARY STEPS

1. enable

2. configure terminal

3. crypto pki server label

4. database level complete

5. grant auto

6. database url root-url

7. no shutdown

8. crypto pki trustpoint label

9. revocation-check crl

10. rsakeypair key-label

DETAILED STEPS

Command or Action

Purpose

Step 1

enable

Router> enable

Enables privileged EXEC mode.

Enter your password if prompted.

Step 2

configure terminal

Router# configure terminal

Enters global configuration mode.

Step 3

crypto pki server label

Router(config)# crypto pki server dspcert

Defines a label for the certificate server and enters certificate-server configuration mode.

label —Name for CA certificate server.

Step 4

database level complete

Router(cs-server)# database level complete

(Optional) Controls the type of data stored in the certificate enrollment database. The default if this command is not used is minimal.

complete —In addition to the information given in the minimal and names levels, each issued certificate is written to the database.

Note The complete keyword produces a large amount of information; so specify an external TFTP server in which to store the data using of the database url command.

Step 5

grant auto

Router(cs-server)# grant auto

(Optional) Allows an automatic certificate to be issued to any requester. The recommended method and default if this command is not used is manual enrollment.

Tip Use this command only during enrollment when testing and building simple networks. A security best practice is to disable this functionality using the
no grant auto command after configuration so that certificates cannot be continually granted.

Step 6

database url root-url

Router(cs-server)# database url nvram:

(Optional) Specifies the location where all database entries for the certificate server are to be written out. If this command is not specified, all database entries are written to NVRAM.

root-url —Location where database entries will be written out. The URL can be any URL that is supported by the Cisco IOS file system.

Note If the CA is going to issue a large number of certificates, select an appropriate storage location like flash or other storage device to store the certificates.

Note When the storage location chosen is flash and the file system type on this device is Class B (LEFS), make sure to check free space on the device periodically and use the squeeze command to free the space used up by deleted files. This process may take several minutes and should be done during scheduled maintenance periods or off-peak hours.

Step 7

no shutdown

Router(cs-server)# no shutdown

(Optional) Enables the CA.

Note You should use this command only after you have completely configured the CA.

Note Use this command and the enrollment url command if this CA is local to the Cisco Unified CME router. These commands are not needed for a CA running on an external router.

The label has to be the same as the label in Step 3.

Step 10

revocation-check crl

Router(ca-trustpoint)# revocation-check crl

(Optional) Checks the revocation status of a certificate and specifies one or more methods to check the status. If a second and third method are specified, each method is used only if the previous method returns an error, such as a server being down.

crl —Certificate checking is performed by a certificate revocation list (CRL). This is the default behavior.

Step 11

rsakeypair key-label

Router(ca-trustpoint)# rsakeypair caserver

(Optional) Specifies an RSA key pair to use with a certificate.

key-label —Name of the key pair, which is generated during enrollment if it does not already exist or if the auto-enroll regenerate command is used.

Note Multiple trustpoints can share the same key.

Creating a Trustpoint

The trustpoint stores the digital certificate for the DSP farm. To create a trustpoint, perform the following procedure:

Prerequisites

Cisco Unified CME 4.2 or a later version.

SUMMARY STEPS

1. enable

2. configure terminal

3. crypto pki trustpoint label

4. enrollment url ca-url

5. serial-number none

6. fqdn none

7. ip-address none

8. subject-name [ x.500-name ]

9. revocation-check none

10. rsakeypair key-label

DETAILED STEPS

Command or Action

Purpose

Step 1

enable

Router> enable

Enables privileged EXEC mode.

Enter your password if prompted.

Step 2

configure terminal

Router# configure terminal

Enters global configuration mode.

Step 3

crypto pki trustpoint label

Router(config)# crypto pki trustpoint dspcert

Declares the trustpoint that your RA mode certificate server should use and enters CA-trustpoint configuration mode.

Note The example shows how to format the certificate subject name to be similar to that of an IP phone’s.

Step 9

revocation-check none

Router(ca-trustpoint)# revocation-check none

(Optional) Checks the revocation status of a certificate and specifies one or more methods to check the status. If a second and third method are specified, each method is used only if the previous method returns an error, such as a server being down.

none —Certificate checking is not required.

Step 10

rsakeypair key-label

Router(ca-trustpoint)# rsakeypair dspcert

(Optional) Specifies an RSA key pair to use with a certificate.

key-label —Name of the key pair, which is generated during enrollment if it does not already exist or if the auto-enroll regenerate command is used.

Note Multiple trustpoints can share the same key.

The key-label is the same as the label in Step 3.

Authenticating and Enrolling the Certificate with the CA Server

Prerequisites

Cisco Unified CME 4.2 or a later version.

SUMMARY STEPS

1. enable

2. configure terminal

3. crypto pki authenticate trustpoint-label

4. crypto pki enroll trustpoint-label

DETAILED STEPS

Command or Action

Purpose

Step 1

enable

Router> enable

Enables privileged EXEC mode.

Enter your password if prompted.

Step 2

configure terminal

Router# configure terminal

Enters global configuration mode.

Step 3

crypto pki authenticate trustpoint-label

Router(config)# crypto pki authenticate dspcert

Retrieves the CA certificate and authenticates it. Checks the certificate fingerprint if prompted.

Copying the CA Root Certificate of the DSP Farm Router to the Cisco Unified CME Router

The DSP farm router and Cisco Unified CME router exchanges certificates during the registration process. These certificates are digitally signed by the CA server of the respective router. For the routers to accept each others digital certificate, they should have the CA root certificate of each other. Manually copy the CA root certificate of the DSP farm and Cisco Unified CME router to each other.

Prerequisites

Cisco Unified CME 4.2 or a later version.

SUMMARY STEPS

1. enable

2. configure terminal

3. crypto pki trustpoint name

4. enrollment terminal

5. crypto pki export trustpoint pem terminal

6. crypto pki authenticate trustpoint-label

7. You will be prompted to enter the CA certificate. Cut and paste the base 64 encoded certificate at the command line, then press Enter, and type “quit.” The router prompts you to accept the certificate. Enter “yes” to accept the certificate.

DETAILED STEPS

Command or Action

Purpose

Step 1

enable

Router> enable

Enables privileged EXEC mode.

Enter your password if prompted.

Step 2

configure terminal

Router# configure terminal

Enters global configuration mode.

Step 3

crypto pki trustpoint label

Router(config)# crypto pki trustpoint dspcert

Declares the trustpoint that your RA mode certificate server should use and enters CA-trustpoint configuration mode.

Exports certificates and RSA keys that are associated with a trustpoint in a privacy-enhanced mail (PEM)-formatted file.

Step 6

crypto pki authenticate trustpoint-label

Router(config)# crypto pki authenticate vg224

Retrieves the CA certificate and authenticates it. Checks the certificate fingerprint if prompted.

trustpoint-label —Trustpoint label.

Note This command is optional if the CA certificate is already loaded into the configuration.

Step 7

You will be prompted to enter the CA certificate. Cut and paste the base 64 encoded certificate at the command line, then press Enter, and type “quit.” The router prompts you to accept the certificate. Enter “yes” to accept the certificate.

Completes the copying of the CA root certificate of the DSP farm router to the Cisco Unified CME router.

Copying the CA Root Certificate of the Cisco Unified CME Router to the DSP farm Router

DSP Farms for NM-HDVs: Example

The following example sets up a DSP farm of 4 DSPs to handle up to 16 sessions (4 sessions per DSP) on a router with an IP address of 10.5.49.160 and a priority of 1 among other servers.

voice-card 1

dsp services dspfarm

exit

sccp local FastEthernet 0/0

sccp

sccp ccm 10.5.49.160 priority 1

dspfarm transcoder maximum sessions 16

dspfarm

telephony-service

ip source-address 10.5.49.200 port 2000

sdspfarm units 4

sdspfarm transcode sessions 40

sdspfarm tag 1 mtp000a8eaca80

sdspfarm tag 2 mtp123445672012

DSP Farms for NM-HDs and NM-HDV2s: Example

The following example sets up six transcoding sessions on a router with one DSP farm, an IP address of 10.5.49.160, and a priority of 1 among servers.

voice-card 1

dsp services dspfarm

sccp local FastEthernet 0/1

sccp

sccp ccm 10.5.49.160 identifier 1

sccp ccm group 123

associate ccm 1 priority

associate profile 1 register mtp123456792012

keepalive retries 5

switchover method immediate

switchback method immediate

switchback interval 5

dspfarm profile 1 transcode

codec g711ulaw

codec g711alaw

codec g729ar8

codec g729abr8

maximum sessions 6

associate application sccp

telephony-service

ip source-address 10.5.49.200 port 2000

sdspfarm units 1

sdspfarm transcode sessions 40

sdspfarm tag 1 mtp000a8eaca80

sdspfarm tag 2 mtp123445672012

Cisco Unified CME Router as the DSP Farm Host: Example

The following example configures Cisco Unified CME router address 10.100.10.11 port 2000 to be the farm host using the DSP farm at mtp000a8eaca80 to allow for a maximum of 1 DSP farm and 16 transcoder sessions.

Technical Assistance

Description

Link

The Cisco Support website provides extensive online resources, including documentation and tools for troubleshooting and resolving technical issues with Cisco products and technologies.

To receive security and technical information about your products, you can subscribe to various services, such as the Product Alert Tool (accessed from Field Notices), the Cisco Technical Services Newsletter, and Really Simple Syndication (RSS) Feeds.

Access to most tools on the Cisco Support website requires a Cisco.com user ID and password.

Use Cisco Feature Navigator to find information about platform support and software image support. Cisco Feature Navigator enables you to determine which Cisco IOS software images support a specific software release, feature set, or platform. To access Cisco Feature Navigator, go to http://www.cisco.com/go/cfn. An account on Cisco.com is not required.

NoteTable 13-1 lists the Cisco Unified CME version that introduced support for a given feature. Unless noted otherwise, subsequent versions of Cisco Unified CME software also support that feature.

Table 13-1 Feature Information for Transcoding Resources

Feature Name

Cisco Unified CME
Version

Feature Information

Secure Transcoding

4.2

Secure transcoding for calls using the codec g729r8 dspfarm-assist command was introduced.