Troubleshooting Transcoding

Cisco CME 3.2 introduces support for transcoding services. You need transcoding services when you have devices and applications in the network that don't support lower-bandwidth codecs, and you don't have enough bandwidth available in your network. In such a case, the devices that don't support lower-bandwidth codecs are colocated with a transcoding device that converts media streams of different codecs. This section discusses the configuration and troubleshooting of such transcoding devices.

Configuring Transcoding Services

One key example of a transcoding scenario is when Cisco UE terminates AA or voice mail calls that must be G.711. If these calls originate from other sites across your WAN, they likely use G.729 to conserve bandwidth. For such calls to divert successfully into Cisco UE, transcoding services are needed. Also, if Cisco CME has to establish a three-party conference in which one of the endpoints is on a G.729 gateway, a transcoder is needed to complete and mix the conference. This section discusses the configuration of a transcoding device for Cisco CME and how to troubleshoot issues relating to transcoding services.

Assume in the topology given earlier in Figure 18-6 that Cisco CME 2 has a high-density voice network module (NM-HDV2) with digital signal processors (DSPs) that can be configured for transcoding services. Example 18-29 shows such a configuration with the NM-HDV2 present in slot 4 of the Cisco CME 2 router.

Example 18-29. DSP Farm Configuration for Transcoding Services

CME2#show running-config
voice-card 4
 dspfarm
 dsp services dspfarm

The DSP farm (for transcoding services) has to register with Cisco CME. The DSP farm does not need to be physically present in the Cisco CME router chassis with which it is registered. It may be present in a separate PSTN gateway router chassis at the same site. In this example, however, the DSP farm is hosted on the Cisco CME router itself, which is a common deployment.

Example 18-30 shows the configuration required to register the DSP farm to Cisco CME 2. You have to identify an interface whose IP address can be used in media setup for the services. In Example 18-30, FastEthernet interface 0/0 is used. The Cisco CME IP address that this transcoding device registers with is also configured (192.168.0.1 in Example 18-30). A transcoding profile is created in which you mention all the codecs that should be transcoded. Several commands start with sccp, because the transcoding device uses SCCP to register with Cisco CME, and it is controlled by using SCCP.

Example 18-30. Configuration to Register the DSP Farm to a Cisco CME

CME2#show running-config
sccp local FastEthernet0/0 
sccp ccm 192.168.0.1 identifier 1 
sccp ip precedence 3
sccp
!
sccp ccm group 1 
 bind interface FastEthernet0/0
 associate ccm 1 priority 1
 associate profile 1 register mydsp1
!
dspfarm profile 1 transcode 
 codec g711ulaw
 codec g711alaw
 codec g729ar8
 codec g729r8
 codec g729br8
 maximum sessions 4
 associate application SCCP
......
telephony-service
 max-ephones 100
 max-dn 288
 ip source-address 192.168.0.1 port 2000
 system message Sopranos
 sdspfarm units 1 
 sdspfarm transcode sessions 4 
 create cnf-files version-stamp 7960 Apr 10 2004 15:27:09
 voicemail 6800
max-conferences 4
 web admin system name aesop password aesop
 transfer-system full-consult
 transfer-pattern 5...
 transfer-pattern 6...

After you enter this configuration, ensure that the transcoding device is registered with Cisco CME. Example 18-31 shows the output of the show sccp all command used to check the status of the transcoding device.

Example 18-31. Checking the Status of a Transcoding Device

CME2#show sccp all
SCCP Admin State: UP 
Gateway IP Address: 192.168.0.1, Port Number: 0
IP Precedence: 3
User Masked Codec list: None
Call Manager: 192.168.0.1, Port Number: 2000
 Priority: N/A, Version: 3.1, Identifier: 1

Transcoding Oper State: ACTIVE - Cause Code: NONE
Active Call Manager: 192.168.0.1, Port Number: 2000
TCP Link Status: CONNECTED, Profile Identifier: 1
Reported Max Streams: 8, Reported Max OOS Streams: 0
Supported Codec: g711ulaw, Maximum Packetization Period: 30
Supported Codec: g711alaw, Maximum Packetization Period: 30
Supported Codec: g729ar8, Maximum Packetization Period: 60
Supported Codec: g729r8, Maximum Packetization Period: 60
Supported Codec: g729br8, Maximum Packetization Period: 60
Supported Codec: rfc2833 dtmf, Maximum Packetization Period: 30

SCCP Application Service(s) Statistics:

Profile ID: 1, Service Type: Transcoding 
TCP packets rx 114, tx 110
Unsupported pkts rx 1, Unrecognized pkts rx 0
Register tx 1, successful 1, rejected 0, failed 0
KeepAlive tx 103, successful 103, failed 0
OpenReceiveChannel rx 2, successful 2, failed 0
CloseReceiveChannel rx 2, successful 2, failed 0
StartMediaTransmission rx 2, successful 2, failed 0
StopMediaTransmission rx 2, successful 2, failed 0
Reset rx 0, successful 0, failed 0
MediaStreamingFailure rx 0
Switchover 0, Switchback 0

CCM Group Identifier: 1
Description: None
Binded Interface: FastEthernet0/0, IP Address: 192.168.0.1
Associated CCM Id: 1, Priority in this CCM Group: 1
Associated Profile: 1, Registration Name: mydsp1
Registration Retries: 3, Registration Timeout: 10 sec
Keepalive Retries: 3, Keepalive Timeout: 30 sec
CCM Connect Retries: 3, CCM Connect Interval: 10 sec
Switchover Method: GRACEFUL, Switchback Method: GRACEFUL_GUARD
Switchback Interval: 10 sec, Switchback Timeout: 7200 sec
Signaling DSCP value: default, Audio DSCP value: default

Total number of active session(s) 0, and connection(s) 0
Total number of active session(s) 0, and connection(s) 0
Total number of active session(s) 0, connection(s) 0, and callegs 0

SCCP Application Service(s) Statistics Summary:
Total Conferencing Sessions: 0, Connections: 0
Total Transcoding Sessions: 0, Connections: 0
Total MTP Sessions: 0, Connections: 0
Total SCCP Sessions: 0, Connections: 0

 

Debugging Transcoded Calls

Now that the transcoding device is successfully registered with a Cisco CME, this section covers how it is used in calls that require transcoding services. Assume that extension 6002 on Cisco CME 2 receives a call from the PSTN. This call uses the G.711 codec, as shown in Example 18-32.

Example 18-32. Call Between the PSTN and Extension 6002

CME2#show ephone offhook
ephone-90 Mac:0030.94C2.D2C6 TCP socket:[2] activeLine:1 REGISTERED
mediaActive:1 offhook:1 ringing:0 reset:0 reset_sent:0 paging 0 debug:0
IP:19.19.19.2 49500 Telecaster 7960 keepalive 5 max_line 6
button 1: dn 62 number 6002 CH1 CONNECTED 
button 2: dn 64 number 6004 CH1 IDLE
Active Call on DN 62 chan 1 :6002 19.19.19.2 29146 to 1.4.13.29 2000 via
 19.19.19.2
G711Ulaw64k 160 bytes no vad 
Tx Pkts 225 bytes 38700 Rx Pkts 227 bytes 39044 Lost 0
Jitter 0 Latency 0 callingDn -1 calledDn -1 (media path callID 12 srcCallID 11)

Assume further that extension 6002 wants to conference in extension 8010 on Cisco CME 1 and that the configuration on Cisco CME 2 is such that calls to Cisco CME 1 use G.729. Setting up this conference requires transcoding from G.729 to G.711. At this point, Cisco CME recognizes that it must insert the transcoder in the media path for this call to succeed. Example 18-33 shows that the consult call before the conference uses G.729 between extension 6002 and extension 8010.

Example 18-33. Extension 6002 on Cisco CME 2 Calls 8010 on Cisco CME 1 for a Conference

CME2#debug ephone state
CME2#debug ephone mtp
Apr 11 15:34:22: ephone-90[2]:HoldButtonPress (allow_toggle = 0)
Apr 11 15:34:22: ephone-90[2]:HoldButtonPress HOLD activated for DN 62 chan 1
Apr 11 15:34:22: ephone-90[2]:SetCallState line 1 DN 62 chan 1 ref 3 TsHold
Apr 11 15:34:22: ephone-90[2]:CloseReceive
Apr 11 15:34:22: ephone-90[2]:StopMedia
Apr 11 15:34:22: ephone-90[2]:SpeakerPhoneOffHook mute 0
Apr 11 15:34:22: ephone-90[2]:OFFHOOK
Apr 11 15:34:22: ephone-90[2]:SIEZE on activeLine 2 activeChan 1
Apr 11 15:34:22: ephone-90[2]:SetCallState line 2 DN 64 chan 1 ref 5 TsOffHook
Apr 11 15:34:22: ephone-90[2]:Check Plar Number
Apr 11 15:34:22: DN 64 chan 1 Voice_Mode
Apr 11 15:34:22: dn_tone_control DN=64 chan 1 tonetype=33:DtInsideDialTone
 onoff=1 pid=159
Apr 11 15:34:24: dn_tone_control DN=64 chan 1 tonetype=0:DtSilence onoff=0
 pid=159
Apr 11 15:34:24: dn_tone_control DN=64 chan 1 tonetype=0:DtSilence onoff=0
 pid=159
Apr 11 15:34:26: 20
Apr 11 15:34:26: ephone-90[2]:SetCallState line 2 DN 64 chan 1 ref 5 TsProceed
Apr 11 15:34:26: ephone-90[2]:SetCallState line 2 DN 64 chan 1 ref 5 TsRingOut
Apr 11 15:34:26: ephone-90[2]::callingNumber 6004
Apr 11 15:34:26: ephone-90[2]::callingParty 6004
Apr 11 15:34:26: ephone-90[2]:Call Info DN 64 line 2 ref 5 called 8010
 calling 6004 origcalled 8010 calltype 2
Apr 11 15:34:26: ephone-90[2]:Call Info for chan 1
Apr 11 15:34:26: ephone-90[2]: No-Name calling
Apr 11 15:34:26: ephone-90[2]: No-Name
Apr 11 15:34:26: dn_tone_control DN=64 chan 1 tonetype=36:DtAlertingTone onoff=1
 pid=159
Apr 11 15:34:30: dn_tone_control DN=64 chan 1 tonetype=0:DtSilence onoff=0
 pid=159
Apr 11 15:34:30: DN 64 chan 1 End Voice_Mode
Apr 11 15:34:30: DN 64 chan 1 Voice_Mode
Apr 11 15:34:30: SKINNY_CALL_RESTART for DN 64 ignored
Apr 11 15:34:30: ephone-90[2]:OpenReceive DN 64 chan 1 codec 11:G729 duration
 20 ms bytes 20
Apr 11 15:34:30: ephone-90[2]:SetCallState line 2 DN 64 chan 1 ref 5 TsConnected
Apr 11 15:34:30: ephone-90[2]:OpenReceiveChannelAck:IP 19.19.19.2, port=17770,
 dn_index=64, dn=64, chan=1
Apr 11 15:34:30: ephone-90[2]:StartMedia 1.4.13.29 port=2000
Apr 11 15:34:30: DN 64 chan 1 codec 11:G729 duration 20 ms bytes 20
Apr 11 15:34:31: ephone-90[2]::callingNumber 6004
Apr 11 15:34:31: ephone-90[2]::callingParty 6004
Apr 11 15:34:31: ephone-90[2]:Call Info DN 64 line 2 ref 5 called 8010 calling
 6004 origcalled 8010 calltype 2
Apr 11 15:34:31: ephone-90[2]:Call Info for chan 1
Apr 11 15:34:31: ephone-90[2]: No-Name calling
Apr 11 15:34:31: ephone-90[2]: No-Name

After the consultation, extension 6002 decides to conference in all three parties. Cisco CME 2 now introduces the transcoding device. Example 18-34 shows that Cisco CME 2 instructs the transcoding device to open two RTP streams (using SCCP messages): one for G.729 and another for G.711. The messages that have MTP-1 in them go to the transcoding device. Note the IP addresses and RTP port numbers used in these messages. The IP addresses used for the transcoder are the same as that of the Cisco CME router, because the transcoding device is hosted in the Cisco CME router. You should see different IP addresses if the transcoder device is hosted in a separate router.

Example 18-34. Cisco CME 2 Inserts a Transcoder for the Conference

CME2#debug ephone state
CME2#debug ephone mtp
Apr 11 16:59:36: SkinnyXcodeGetStreamsForDn: dn=64, chan=1, codec=4, bytes=160
Apr 11 16:59:36: skinny_xcode_associate_stream: seize stream 3, confID=3, peer=4,
 far_end=0
Apr 11 16:59:36: skinny_xcode_associate_stream: seize stream 4, confID=3, peer=3,
 far_end=1
Apr 11 16:59:36: ***SkinnyResetDnCodec DN 64 chan 1 to skinny-codec 4 bytes 160
 was codec 11 ephone-(90)
Apr 11 16:59:36: ephone-90[2]:SkinnyResetDnCodec DN 64 chan 1 OpenReceiveAck
 already done
Apr 11 16:59:36: ephone-90[2][SEP003094C2D2C6]:SkinnyAssignConference line 2 conf
_dn 64 conf_chan 1
Apr 11 16:59:36: ephone-90[2]:SetCallState line 1 DN 62 chan 1 ref 1
 TsCallRemoteMultiline
Apr 11 16:59:36: ephone-90[2]:SkinnyAssignConference 0 OK with 1 active
Apr 11 16:59:36: ephone-90[2]:DN 62 chan 1 state changed to CONNECTED for
 conference with DN 64 chan 1 codec 4
Apr 11 16:59:36: ephone-90[2]:SetCallState line 2 DN 64 chan 1 ref 2 TsConnected
Apr 11 16:59:36: ephone-90[2]:SpeakerPhoneOffHook mute 0
Apr 11 16:59:36: skinny_xcode_open_receive_channel: stream=4, confID=3,
 pTPartyId=4
Apr 11 16:59:36: mtp=1, socket=1
Apr 11 16:59:36: MTP-1[1]:OpenReceive stream 4 codec 11:G729 duration 20 ms
bytes 20 
Apr 11 16:59:36: skinny_xcode_open_receive_channel: stream=3, confID=3, 
pTPartyId=3 
Apr 11 16:59:36: mtp=1, socket=1 
Apr 11 16:59:36: MTP-1[1]:OpenReceive stream 3 codec 4:G711Ulaw64k duration 20 ms 
bytes 160 
Apr 11 16:59:36: ephone-90[2]:CloseReceive
Apr 11 16:59:36: ephone-90[2]:StopMedia
Apr 11 16:59:36: ephone-90[2]:OpenReceive DN 64 chan 1 codec 4:G711Ulaw64k
 duration 20 ms bytes 160
Apr 11 16:59:36: MTP-1[1]: SkinnyXcodeOpenReceiveChannelAck: stream=4, 
addr=1.4.13.29 port=18918 laddr=1.4.13.29 lport=2000 
Apr 11 16:59:36: SkinnyXcodeStartMedia: stream=4, confID=3, pTPartyId=4 
Apr 11 16:59:36: MTP-1[1]:StartMedia 1.4.13.29 port=18918 
Apr 11 16:59:36: stream 4 codec 11:G729 duration 20 ms bytes 20 
Apr 11 16:59:36: MTP-1[1]: SkinnyXcodeOpenReceiveChannelAck: stream=3, 
addr=1.4.13.29 port=17834 laddr=1.4.13.29 lport=2000 
Apr 11 16:59:36: SkinnyXcodeStartMedia: stream=3, confID=3, pTPartyId=3 
Apr 11 16:59:36: MTP-1[1]:StartMedia 1.4.13.29 port=17834 
Apr 11 16:59:36: stream 3 codec 4:G711Ulaw64k duration 20 ms bytes 160 
Apr 11 16:59:36: ephone-90[2]:OpenReceiveChannelAck:IP 19.19.19.2, port=21848, 
 dn_index=64,dn=64, chan=1 
Apr 11 16:59:36: ephone-90[2]:StartMedia 1.4.13.29 port=2000
Apr 11 16:59:36: DN 64 chan 1 codec 4:G711Ulaw64k duration 20 ms bytes 160

At this point, the transcoder is successfully inserted into the conference, and all three parties are in the conversation.

You can use the commands shown in Example 18-35 to view the current transcoding sessions and the endpoints involved.

Example 18-35. Checking the Transcoding and RTP Sessions

CME2#show voip rtp connections
VoIP RTP active connections :
No. CallId dstCallId LocalRTP RmtRTP LocalIP RemoteIP
1 7 6 17652 18554 1.4.13.29 1.4.14.34
2 8 9 18918 2000 1.4.13.29 1.4.13.29
3 10 9 17834 2000 1.4.13.29 1.4.13.29
Found 3 active RTP connections

CME2#show sdspfarm sessions
Stream-ID:1 mtp:1 0.0.0.0 0 Local:0 IDLE
 usage: Ip-Ip (Res)
 codec:G711Ulaw64k duration:20 vad:0 peer Stream-ID:2

Stream-ID:2 mtp:1 0.0.0.0 0 Local:0 IDLE
 usage: Ip-Ip (Res)
 codec:G711Ulaw64k duration:20 vad:0 peer Stream-ID:1

Stream-ID:3 mtp:1 1.4.13.29 17834 Local:2000 START 
usage: Conf (DN=64 , CH=1) FE=FALSE 
codec:G711Ulaw64k duration:20 vad:0 peer Stream-ID:4 

Stream-ID:4 mtp:1 1.4.13.29 18918 Local:2000 START 
usage: Conf (DN=64 , CH=1) FE=TRUE 
codec:G729 duration:20 vad:0 peer Stream-ID:3 

Stream-ID:5 mtp:1 1.4.13.29 16722 Local:2000 START
 usage: Ip-Ip
 codec:G711Ulaw64k duration:20 vad:0 peer Stream-ID:6

Stream-ID:6 mtp:1 1.4.13.29 18550 Local:2000 START
 usage: Ip-Ip
 codec:G729AnnexA duration:20 vad:0 peer Stream-ID:5

Stream-ID:7 mtp:1 0.0.0.0 0 Local:0 IDLE
 usage:
 codec:G711Ulaw64k duration:20 vad:0 peer Stream-ID:0
Stream-ID:8 mtp:1 0.0.0.0 0 Local:0 IDLE
 usage:
 codec:G711Ulaw64k duration:20 vad:0 peer Stream-ID:0

The show voip rtp connections command shows the RTP streams established from the Cisco CME router to the other endpoints. This also includes the far-end Cisco CME router with an endpoint that is part of the conference. The show sdspfarm session command shows the RTP streams set up for transcoding purposes. This includes only the streams between the Cisco CME router and transcoding device.

Also note here the Usage field in the output of the show sdspfarm session command. In the first highlighted lines in Example 18-35, the Usage field says Conf, indicating that this transcoding is used for a conference session.

A few lines lower, you see a session where the Usage field is IP-IP. This means that this transcoding session is used for an IP-IP hairpinned call that Cisco CME has bridged and that the two call legs involved in the hairpin use different codecs. An example of such a scenario is a G.729 H.323 call coming from another PSTN gateway to Cisco UE. In this case, Cisco CME bridges the H.323 call from the PSTN gateway to the SIP call toward Cisco UE and introduces a transcoder. Another example is a call transfer from Cisco CME 2 to another PSTN gateway that does not support H450.2 and, hence, the call legs bridged by Cisco CME 2. The far-end PSTN gateway uses G.729 in this casehence, the need for a transcoder.

Troubleshooting H 323 GK Integration

Part I: Cisco IP Communications Express Overview

Introducing Cisco IPC Express

Building a Cisco IPC Express Network

Cisco IPC Express Architecture Overview

Part II: Feature Operation and Applications

Cisco IP Phone Options

Cisco CME Call Processing Features

Cisco CME PSTN Connectivity Options

Connecting Multiple Cisco CMEs with VoIP

Integrating Cisco CME with Cisco CallManager

Cisco IPC Express Automated Attendant Options

Cisco IPC Express Integrated Voice Mail

Cisco CME External Voice Mail Options

Additional External Applications with Cisco CME

Part III: Administration and Management

Cisco IPC Express General Administration and Initial System Setup

Configuring and Managing Cisco IPC Express Systems

Cisco IPC Express System Configuration Example

Part IV: Maintenance and Troubleshooting

Troubleshooting Basic Cisco IPC Express Features

Troubleshooting Advanced Cisco CME Features

Troubleshooting Cisco CME Network Integration

Troubleshooting Cisco UE System Features

Troubleshooting Cisco UE Automated Attendant

Troubleshooting Cisco UE Integrated Voice Mail Features

Part V: Appendixes

Appendix A. Cisco IPC Express Features, Releases, and Ordering Information

Appendix B. Sample Cisco UE AA Scripts

Appendix C. Cisco Unity Express Database Schema

Index



Cisco IP Communications Express(c) CallManager Express with Cisco Unity Express
Cisco IP Communications Express: CallManager Express with Cisco Unity Express
ISBN: 158705180X
EAN: 2147483647
Year: 2006
Pages: 236

Flylib.com © 2008-2020.
If you may any questions please contact us: flylib@qtcs.net