VoIP Troubleshooting Vts - Book
VoIP Troubleshooting Vts - Book
VoIP Troubleshooting Vts - Book
Release 12.4
Corporate Headquarters Cisco Systems, Inc. 170 West Tasman Drive San Jose, CA 95134-1706 USA http://www.cisco.com Tel: 408 526-4000 800 553-NETS (6387) Fax: 408 526-4100
THE SPECIFICATIONS AND INFORMATION REGARDING THE PRODUCTS IN THIS MANUAL ARE SUBJECT TO CHANGE WITHOUT NOTICE. ALL STATEMENTS, INFORMATION, AND RECOMMENDATIONS IN THIS MANUAL ARE BELIEVED TO BE ACCURATE BUT ARE PRESENTED WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED. USERS MUST TAKE FULL RESPONSIBILITY FOR THEIR APPLICATION OF ANY PRODUCTS. THE SOFTWARE LICENSE AND LIMITED WARRANTY FOR THE ACCOMPANYING PRODUCT ARE SET FORTH IN THE INFORMATION PACKET THAT SHIPPED WITH THE PRODUCT AND ARE INCORPORATED HEREIN BY THIS REFERENCE. IF YOU ARE UNABLE TO LOCATE THE SOFTWARE LICENSE OR LIMITED WARRANTY, CONTACT YOUR CISCO REPRESENTATIVE FOR A COPY. The Cisco implementation of TCP header compression is an adaptation of a program developed by the University of California, Berkeley (UCB) as part of UCBs public domain version of the UNIX operating system. All rights reserved. Copyright 1981, Regents of the University of California. NOTWITHSTANDING ANY OTHER WARRANTY HEREIN, ALL DOCUMENT FILES AND SOFTWARE OF THESE SUPPLIERS ARE PROVIDED AS IS WITH ALL FAULTS. CISCO AND THE ABOVE-NAMED SUPPLIERS DISCLAIM ALL WARRANTIES, EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, THOSE OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OR ARISING FROM A COURSE OF DEALING, USAGE, OR TRADE PRACTICE. IN NO EVENT SHALL CISCO OR ITS SUPPLIERS BE LIABLE FOR ANY INDIRECT, SPECIAL, CONSEQUENTIAL, OR INCIDENTAL DAMAGES, INCLUDING, WITHOUT LIMITATION, LOST PROFITS OR LOSS OR DAMAGE TO DATA ARISING OUT OF THE USE OR INABILITY TO USE THIS MANUAL, EVEN IF CISCO OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
CCSP, CCVP, the Cisco Square Bridge logo, Follow Me Browsing, and StackWise are trademarks of Cisco Systems, Inc.; Changing the Way We Work, Live, Play, and Learn, and iQuick Study are service marks of Cisco Systems, Inc.; and Access Registrar, Aironet, ASIST, BPX, Catalyst, CCDA, CCDP, CCIE, CCIP, CCNA, CCNP, Cisco, the Cisco Certified Internetwork Expert logo, Cisco IOS, Cisco Press, Cisco Systems, Cisco Systems Capital, the Cisco Systems logo, Cisco Unity, Empowering the Internet Generation, Enterprise/Solver, EtherChannel, EtherFast, EtherSwitch, Fast Step, FormShare, GigaDrive, GigaStack, HomeLink, Internet Quotient, IOS, IP/TV, iQ Expertise, the iQ logo, iQ Net Readiness Scorecard, LightStream, Linksys, MeetingPlace, MGX, the Networkers logo, Networking Academy, Network Registrar, Packet, PIX, Post-Routing, Pre-Routing, ProConnect, RateMUX, ScriptShare, SlideCast, SMARTnet, StrataView Plus, TeleRouter, The Fastest Way to Increase Your Internet Quotient, and TransPath are registered trademarks of Cisco Systems, Inc. and/or its affiliates in the United States and certain other countries. All other trademarks mentioned in this document or Website are the property of their respective owners. The use of the word partner does not imply a partnership relationship between Cisco and any other company. (0502R)
Cisco IOS Voice Troubleshooting and Monitoring Guide Copyright 2004, 2005 Cisco Systems, Inc. All rights reserved.
C O N T E N T S
About Cisco IOS Software Documentation Documentation Objectives Audience
xxi xxi xxi
xxii
Obtaining Documentation xxv Cisco.com xxv Ordering Documentation xxvi Documentation Feedback
xxvi
Obtaining Technical Assistance xxvi Cisco Technical Support Website xxvii Submitting a Service Request xxvii Definitions of Service Request Severity xxvii Obtaining Additional Publications and Information
xxviii xxix
Guide to Cisco IOS Voice Troubleshooting and Monitoring Features Cisco IOS Release 12.4(4)T Cisco IOS Release 12.3(8)T Cisco IOS Release 12.3(4)T Cisco IOS Release 12.2(11)T
1
xxx xxx xxxi xxxi
PART
Call Setup 3 Call Setup Elements 4 Source and Destination POTS Dial Peers Voice Network Dial Peers 4 Inbound and Outbound Call Legs 5 Call Setup Process 6 Dial Peer Matching 7 Inbound Dial Peer Matching 8 Outbound Dial Peer Matching 11
iii
Contents
Voice Network Dial Peer Matching POTS Dial Peer Matching 13 Call Flow Through Router Components 14 Telephony Interface Architecture 15 Voice Application Interface 16
13
17
Voice Debug Concepts 17 Debug Header Format 18 IVR Module-Dependent List 19 CallEntry ID and GUID Call Legs 20 Enabling Command Profile Debugging 20 Fax Debug Profile 21 Modem Debug Profile 23 Voice Debug Profile 24 Enabling Individual Debug Commands for CCAPI, TSP, and VTSP Debugging Managing the Voice Call Debug Output Supported Commands 35
35
26
Sample Output Examples for the Enhanced debug Commands Full GUID Header: Example 38 Short Header: Example 39 Setup and Teardown: Example 39 Filtering Troubleshooting Output
49 49
38
Voice Call Debug Filtering on Cisco Voice Gateways 50 Restrictions for Voice Call Debug Filtering 50 Information About Voice Call Debug Filtering 50 Debug Commands that Support Voice Call Filtering 51 Generic Call Filter Module 52 Calling and Called Number Strings 53 Exact and Partial Matching 55 Media and Signaling Streams 55 Configuring the Voice Call Debug Filter 55 Configuring Call-Specific Conditions 55 Enabling Debug for the Set Filtering Conditions 59 Output Examples for Voice Call Debug Filtering 62 Exact Match Filtering: Example 62 Partial Match Filtering: Example 65 Voice Call Debug Filtering on H.323 Gatekeepers
Cisco IOS Voice Troubleshooting and Monitoring Guide
69
iv
Contents
Restrictions for Voice Call Debug Filtering on Voice Gatekeepers 69 Information About Voice Call Debug Filtering 69 Debug Commands that Support Voice Call Filtering on Cisco Voice Gatekeepers Gatekeeper Filter Module 70 Calling and Called Number Strings 71 Exact and Partial Matching Conditions Rules and Information 71 Configuring the Voice Call Debug Filter for Cisco Gatekeepers 79 Configuring Call-Specific Conditions for Gatekeepers 79 Enabling Debug for the Set Filtering Conditions 80 Prerequisites 80 Troubleshooting Tips 81 Examples 82 SIP Debug Output Filtering Support 83 Restrictions for SIP Debug Output Filtering Support 83 Information About SIP Debug Output Filtering Support 83 Feature Design of SIP Debug Output Filtering Support 83 Generic Call Filtering Module 84 SIP Debug Commands that Support Output Filtering 84 Matching Conditions 84 Configuring SIP Debug Filtering 85 Configuring Call Filters 85 Enabling SIP Debug Output Filtering 87 Verifying SIP Debug Output Filtering Support 89 Configuration Examples for SIP Debug Filtering 90 Configuring Call Filters: Example 90 Enabling SIP Debug Output Filtering: Example 94 MGCP Call Centric Debug 96 Restrictions for MGCP Call Centric Debug 96 Information About MGCP Call Centric Debug 96 MGCP Debug Commands that Support Debug Filtering 97 Match Conditions for MGCP Debug Filtering 97 Trace Levels for MGCP Debug Output 98 Tips on Collecting Debug Output 98 How to Enable MGCP Call Centric Debug 99 Modifying the Debug Header Format for MGCP Debug Output Creating Match Lists for MGCP Filtering Conditions 100 Enabling MGCP Debug Filtering Using Match Lists 102 Prerequisites 102 Restrictions 102 Verifying the MGCP Debug Filtering Configuration 103
70
99
Contents
Enabling MGCP Debug Trace Levels 104 Restrictions 104 Configuration Examples for MGCP Call Centric Debug 105 Match-List Configuration for MGCP Debug Filtering: Example Enabling MGCP Debug Filtering: Example 108 Cisco VoIP Internal Error Codes
109 109 109
105
Prerequisites for Cisco VoIP Internal Error Codes Restrictions for Cisco VoIP Internal Error Codes
Information About Cisco VoIP Internal Error Codes 109 Benefits of Cisco VoIP Internal Error Codes 110 Feature Design of Cisco VoIP Internal Error Codes 110 IEC Reporting 110 Gatekeeper Behavior and Cisco VoIP Internal Error Codes Obtaining IECs 113 Internal Error Code Notation 115 Entity 115 Category Codes 116 Subsystem Codes 117 Error Codes 118
111
How to Configure IEC Options 146 Configuring IEC Options 146 Enabling IEC Syslog Reporting 146 Configuring Cause Code Mapping 147 Troubleshooting Tips 148 What to Do Next 148 New and Modified Configuration Commands for Gatekeeper IECs in Cisco IOS Release 12.4(4)T Verifying IEC Options 149 Prerequisites 149 Displaying IEC Options 150 Configuration Examples for Cisco VoIP Internal Error Codes 151 Enabling IEC Syslog Reporting and Configuring Cause Code Mapping: Example 152 Verifying IEC Configuration: Example 152 Sample Output from the show running-config Command: Example 152 Sample Output from the show voice iec description Command: Example 154 Sample Output from the show voice statistics iec Command: Example 154 Sample Output from the clear voice statistics Command: Example 156 Sample Output from the show voice cause-code category-q850 Command: Example Troubleshooting VoIP Networks Using Cisco VoIP Internal Error Codes
157
148
156
vi
Contents
Troubleshooting Two-Stage Dialing Failures Symptom 157 Problem Description 157 Troubleshooting Tasks 157 Troubleshooting Socket Failures 161 Symptom 161 Problem Description 161 Troubleshooting Tasks 161 Troubleshooting Resources
171
157
Troubleshooting Tools 171 Using Router Diagnostic Commands 171 Using show Commands 171 Using debug Commands 172 Using the ping Commands 173 Using the trace Commands 174 Using Cisco Network Management Tools 174 CiscoView 175 Internetwork Performance Monitor 175 TrafficDirector RMON Application 175 VlanDirector Switch Management Application 176 Third-Party Troubleshooting Tools 176 Volt-Ohm Meters, Digital Multimeters, and Cable Testers TDRs and OTDRs 177 Breakout Boxes, Fox Boxes, BERTs and BLERTs 177 Network Monitors 178 Network Analyzers 178 Other Troubleshooting Resources 178 Internetworking Troubleshooting Handbook 178 TAC Troubleshooting Tools on Cisco.com 179
2
177
PART
Troubleshooting Cisco IOS Voice Telephony Troubleshooting Analog Voice Interfaces to the IP Network FXS Interfaces 183 FXS Hardware Troubleshooting 184 Software Compatibility 184 Cabling 184 Shutdown Port 185 Disabling a Port on a Multiple Port Card
183
186
vii
Contents
Ring Voltage Problems 186 Ringing Voltages 186 Idle Battery Voltage 186 Idle Line Voltages 187 Ring Voltage Problems 187 Unbreakable Dial Tone 188 No LED When Phone Off the Hook
189
FXO Interfaces 189 FXO Hardware Troubleshooting 190 Software Compatibility 190 Cabling 190 Shutdown Port 191 Disabling a Port on a Multiple Port Card 192 FXO Disconnect Failure 192 Troubleshooting FXO Answer and Disconnect Supervision 192 Monitoring and Maintaining FXO Answer and Disconnect Supervision Unbreakable Dial Tone 194 Troubleshooting Caller ID Problems 194 Calling Number Lost, Name Delivered 195 Calling Number Delivered, Name Lost 195 E&M Interfaces 196 E&M Hardware Troubleshooting 197 Software Compatibility 197 Cabling 197 Shutdown Port 198 E&M Interface Types 199 E&M Signaling Unit Side and Trunk Circuit Side Compatibility Issues E&M Type I Interface Model 200 E&M Type II Interface Model 202 E&M Type III Interface Model 204 E&M Type V Interface Model 206 Troubleshooting E&M Interfaces at the Physical Level 208 Preparing to Troubleshoot E&M Physical Problems 209 Troubleshooting Type I Interfaces 212 Troubleshooting Type II Interfaces 213 Troubleshooting Type III Interfaces 214 Troubleshooting Type V Interfaces 215 Confirming E&M Configuration 216 Confirming the PBX E&M Configuration Parameters 216 Confirming the Cisco IOS Gateway Configuration 216
Cisco IOS Voice Troubleshooting and Monitoring Guide
194
199
viii
Contents
Verifying the Wiring Arrangement Between the PBX and the Cisco Gateway 217 Verifying Supervision Signaling 218 Verifying That the Cisco Equipment and PBX Are Sending and Receiving Digits 219 Verifyinng That the Gateway Sends the Expected Digits to the PBX 222 Verify That the Gateway Receives the Expected Digits from the PBX 223 Unbreakable Dial Tone 223 Analog DID Interfaces 224 DID Hardware Troubleshooting 225 Software Compatibility 225 Cabling 225 Shutdown Port 225 Verifying Direct Inward Dialing Voice-Port Configuration Voice Port Testing Commands 227 Detector-Related Function Tests 227 Loopback Function Tests 228 Tone Injection Tests 228 Relay-Related Function Tests 229 Fax/Voice Mode Tests 229 Troubleshooting Digital Voice Interfaces to the IP Network Checking the Hardware 231 Software Compatibility 232 Cabling 232 T1/E1 Trunk and Digital Voice Port Pinouts (RJ-48) T1/E1 Trunk and Digital Voice Port Pinouts (RJ-45) Shutdown Port 233
231
226
232 233
Checking the Digital Signal Processors 233 Voice DSP Control Message Logger 234 Message Logger Overview 234 Configuration Tasks 235 Configuration Examples 238 Voice Call Tuning 239 Voice DSP Crash Dump File Analysis 239 How to Configure Voice DSP Crash Dump File Analysis 240 Troubleshooting Voice DSP Crash Dump File Analysis 241 Verifying DSP Crash Dump File Analysis 242 Configuration Examples for Voice DSP Crash Dump File Analysis Troubleshooting Universal Port SPEs 243 Configure SPE Diagnostic Tests 243 SPE Disconnect Reason Codes 245
242
ix
Contents
260
Verifying Codec Complexity 260 Codec Complexity Mismatch 260 Checking the Interface 261 Troubleshooting T1 and E1 Layer 1 Problems 262 Controller Is Administratively Down 262 Controller Has Loss of Frame 263 Controller Has Loss of Signal 264 Checking T1/E1 Controller Configuration 265 Framing Formats on Digital T1/E1 Voice Ports 266 Clock Sources on Digital T1/E1 Voice Ports 266 Line Coding on Digital T1/E1 Voice Ports 268 T1/E1 Channel-Associated Signaling 269 Troubleshooting Commands 270 E1 R2 Interfaces 270 Troubleshooting E1 R2 Failures 270 debug and show Commands 271 ISDN Interfaces 272 ISDN PRI Troubleshooting Tips 273 Verifying the ISDN Switch Type and PRI Group Timeslot Configuration Ringback 275 QSIG Protocol Support 276 Troubleshooting Drop-and-Insert 277 Troubleshooting Transparent Common Channel Signaling 278 Dial Tone Issues 278 Router Does Not Recognize Voice Port 278 Voice Ports Are in the Shutdown State 279 Voice Ports Configured as Connection Trunk 279 No Dial Tone on Digital Voice Port 279 Debug Command Output Shows VTSP Timeout 279 Verifying Digital Voice-Port Configurations 280 show voice port Samples 281 show controller Samples 283 show voice dsp Samples 283 show voice call summary Samples 284 show call active voice Samples 285 show call history voice Sample 286 Verifying Digits Received and Sent on the POTS Call Leg Voice Port Testing Commands
289
274
287
Contents
Detector-Related Function Tests 290 Loopback Function Tests 290 Tone Injection Tests 290 Relay-Related Function Tests 291 Fax/Voice Mode Tests 291 Troubleshooting Quality of Service for VoIP Understanding VoIP QoS Issues Measuring QoS 294
293 293
Common QoS Problems 295 Delay in Voice Networks 296 Packet Loss 298 Jitter Adjustment 298 Echo Adjustment 301 Determine Where Echo Is Occurring 301 Troubleshooting Echo in Cisco IOS Gateways 302 Measuring Echo in Cisco IOS Gateways 303 Voice Level Adjustment 306 Input and Output Levels 306 Voice Activity Detection Level 308 Voice Call Tuning 309 Restrictions for Voice Call Tuning 309 Information About Voice Call Tuning 309 Packet-Flow Detection 309 DSP State 310 Echo-Cancellation State 310 Jitter-Buffer Parameters 310 How to Verify Voice Call Tuning Functionality 310 Voice Call Tuning Configuration Examples 311
3
PART
Troubleshooting Cisco IOS Voice Technologies Troubleshooting H.323 Interfaces to the IP Network H.323-Related Standards H.225 Signaling H.245 Signaling
316 317 318 315
Troubleshooting Gateways 319 Troubleshooting H.323 Gateway Call Routing and Dial Peers 319 Verifying Digits Received and Sent on the POTS Call Leg 319 Verifying End-to-End VoIP Signaling on the VoIP Call Leg 322
Cisco IOS Voice Troubleshooting and Monitoring Guide
xi
Contents
Troubleshooting H.323 Gateway Dial Tone 332 Troubleshooting H.323 Gateway Busy Tone 332 No DTMF Digits or Audio Passed on VoIP Calls to PSTN or PBX 333 No Busy Tone or Announcement Message Received When Placing VoIP Outbound Calls 333 No Busy Tone on Inbound Call from Telephony (ISDN) to Cisco CallManager IP Phone, Cisco IOS Gateway, or Third-Party H.323 Device 333 Troubleshooting H.323 Gateway Ringback 334 No Ringback Tone on VoIP Toll-Bypass Calls 334 No Ringback Tone on VoIP Inbound Calls to Cisco CallManager (or Third-Party VoIP Devices) Through Cisco IOS Gateway 335 No Ringback Tone on VoIP Outbound Calls from Cisco CallManager (or Third-Party Device) Through Cisco IOS Gateway 336 No Ringback to PSTN When IP Phones Initiate a Call Transfer (Cisco CallManager or Cisco Unity Voice Mail) 337 Troubleshooting H.323 Gateway One-Way or No Audio 338 Ensuring IP Routing Is Enabled on Cisco IOS Gateways 338 Checking Basic IP Routing 339 Binding the H.323 Signaling to a Specific IP Address 339 Checking That Answer Supervision Is Being Sent and Received Correctly From the Telco or Switch 340 Using the voice rtp send-recv Command to Establish Early Two-Way Audio 340 Checking cRTP Settings on a Link-by-Link Basis 340 Verifying Minimum Software Level for NAT on Cisco IOS Gateways 341 Disabling voice-fastpath on Cisco AS5350 and Cisco AS5400 Universal Gateways 341 Configurinng the VPN IP Address with SoftPhone 341 Verifying One-Way Audio 342 Using the Test Call Feature to Verify Voice Path 342 Information About the Test Call Feature 343 Limitations 343 Test Call Command-Line Interface 344 Sample Tasks 346 Troubleshooting Gatekeepers 347 Troubleshooting H.323 Gatekeeper Registration 348 Related Commands 348 Reject Reasons 350 Troubleshooting H.323 Gatekeeper Call Routing and Dial Peers 352 Troubleshooting H.323 Gatekeeper Bandwidth 353 Bandwidth Management Operation Overview 353 Configuring the Bandwidth Management Feature on the Cisco Gatekeeper 354 Using Gatekeeper show Commands to Display Bandwidth Information 354 Bandwidth-Related RAS Messages (BRQ, BCF, and BRJ) 355
Cisco IOS Voice Troubleshooting and Monitoring Guide
xii
Contents
Checking Cisco Gateway Failover to Alternate Gatekeeper 356 Gatekeeper Update Protocol 357 Troubleshooting Issues with Alternate Endpoints 358 Troubleshooting Gatekeeper Endpoint Call Admission Issues 359 Troubleshoot Load Balancing 365 Gateway-to-Gateway and Gatekeeper-to-Gateway Security Troubleshooting SIP Interfaces to the IP Network
367 365
Troubleshooting the Cisco SIP IP Phone 7960 367 Troubleshooting Features 367 Troubleshooting Tips 368 Cisco SIP IP Phone Is Unprovisioned or Is Unable to Obtain an IP Address 369 Cisco SIP IP Phone Does Not Register With the SIP Proxy or SIP Registrar Server 369 Outbound Calls Cannot Be Placed from a Cisco SIP IP Phone 370 Inbound Calls Cannot Be Received on a Cisco SIP IP Phone 370 Poor Voice Quality on the Cisco SIP IP Phone 370 DTMF Digits Do Not Function Properly 371 Cisco SIP IP Phones Do Not Work When Plugged into a Line-Powered Switch 371 Call Transfer Does Not Work Correctly 371 Some SIP Messages are Retransmitted Too Often 371 Troubleshooting the Cisco SIP Gateway 371 Unable to Make Outbound Calls from the Cisco SIP Gateway to a SIP Endpoint 372 Unable to Make Inbound Calls to a PSTN Through a Cisco SIP Gateway 372 Calls to a PSTN via the Cisco SIP Gateway Fail with a 400 Bad Request Response 373 Voice Quality Is Compromised on Calls Through or From the Cisco SIP Gateway 376 Some SIP Messages Are Retransmitted Too Often 376 Call Transfer Does Not Work Correctly 376 Troubleshooting Commands 377 Troubleshooting the Cisco SIP Proxy Server 386 Troubleshooting Tips 387 Cisco SIP Proxy Server Does Not Start 387 Cisco SIP Proxy Server Does Not Allow Devices to Register 387 Cisco SIP Proxy Server Does Not Route Calls Properly 388 Cisco SIP Proxy Server Reports That SIP Messages Are Bad 388 Cisco SIP Proxy Server Farming Does Not Work Correctly 388 Voice Quality Problems 388 SIP Messages and Methods 388 Requests 389 Responses 389 Registration Process 389
Cisco IOS Voice Troubleshooting and Monitoring Guide
xiii
Contents
Invitation Process
389 391
Troubleshooting MGCP and Related Protocol Interfaces to the IP Network MGCP Overview 391 MGCP Gateway Call Flow 393 User Access Verification 393 Troubleshooting Guidelines 397 Call Routing and Dial Peers 398 Verifying Digits Received and Sent on the POTS Call Leg show dialplan number 399 debug vtsp dsp 400 Verifying End-to-End VoIP Signaling on the VoIP Call Leg Call Admission Control 401 Troubleshooting MGCP 402 Troubleshooting MGCP SRC CAC 402 Troubleshooting MGCP RSVP CAC 403 Troubleshooting MGCP SA Agent CAC 403 Verifying Connections and Endpoints
404 399
401
MGCP Testing Commands 405 show ccm-manager 405 show mgcp 406 show mgcp endpoint 407 show mgcp connection 407 show voice port mod_num/slot_num/port_num show mgcp statistics 412 Other debug mgcp Commands 413
409
Troubleshooting Voice over Frame Relay Interfaces to the IP Network Verifying the Voice Connections Troubleshooting Tasks
416 417 415 416
415
Monitoring and Maintaining the VoFR Configuration Troubleshooting VoFR with QoS 417 LLQ and IP RTP Priority Commands 417 Fragmentation Commands 418 Frame Relay Interface Commands 418
Troubleshooting VoIP over Frame Relay with Multipoint PVCs and Prioritization VoFR Testing Commands
419
418
xiv
Contents
Troubleshooting Voice over ATM Interfaces to the IP Network Checking the ATM Configuration Verifying the Voice Connection Verifying the VoATM Connection Troubleshooting Tips 425
4
422 422 423
421
PART
Troubleshooting Tcl IVR 429 Testing and Debugging Your Script 430 Loading Your Script 431 Associating Your Script with an Inbound Dial Peer Displaying Information About IVR Scripts 432 Using URLs in IVR Scripts 435 URLs for Loading the IVR Script 435 URLs for Loading Audio Files 436 Tips for Using Your Tcl IVR Script 436
432
Media Inactive Call Detection 436 Prerequisites for Media Inactive Call Detection 437 Restrictions for Media Inactive Call Detection 437 Information about Media Inactive Call Detection 437 Improved Functionality of Media Inactive Call Detection 437 Modifications to Information Tags and Internal Error Codes 438 Configuring Media Inactive Call Detection 442 Output Examples for Media Inactive Call Detection 443 show call active voice brief Command: Example 443 show running config Command: Example 445 Sample Tcl IVR script 449 Troubleshooting Cisco VoiceXML 452 Debugging Cisco VoiceXML Applications 453 Error Events 454 JavaScript or ECMA Script 455 Troubleshooting Speech Recognition and Synthesis 455 Troubleshooting ASR and TTS Server Functionality 456 MGCP Scripting Overview Events and Status Codes Events 459
458 458
xv
Contents
Status Codes 461 Authentication Status 462 Authorization Status 462 Digit Collection Status 462 Consult Response 463 Consult Status 463 Disconnect Cause 463 Facility 465 Feature Type 466 Leg Setup Status 466 Media Status 467 Transfer Status 467 VoiceXML Dialog Completion Status Troubleshooting AAA and Billing Applications
468 469
Troubleshooting AAA for Voice 469 Using Debug Commands for AAA Voice Troubleshooting 469 debug radius 469 debug radius accounting 477 Using show Commands for AAA Voice Troubleshooting 480 show call accounting voice summary 480 show call accounting-template voice 480 show call aaa attributes 481 Accounting Server Connectivity Failure and Recovery Detection 483 Prerequisites for Accounting Server Connectivity Failure and Recovery Detection 483 Restrictions for Accounting Server Connectivity Failure and Recovery Detection 483 Information About Accounting Server Connectivity Failure and Recovery Detection 484 Global Accounting Script 484 How to Configure Accounting Server Connectivity Failure and Recovery Detection 484 Configuring the GAS 485 Loading the GAS 486 Starting the GAS 487 Verifying the GAS 488 Troubleshooting Accounting Server Connectivity Failure and Recovery Detection 489 Configuration Examples for Accounting Server Connectivity Failure and Recovery Detection Configuring the GAS: Example 491 Loading the GAS: Example 493 Starting the GAS: Example 493 Verifying the GAS: Example 493 Troubleshooting Enhanced Billing Support for SIP Gateways
Cisco IOS Voice Troubleshooting and Monitoring Guide
491
496
xvi
Contents
Troubleshooting Settlement 497 Settlement Database Not Set Up Properly 497 Tcl IVR Script Not Called 497 No Destination Pattern Set 498 No Session Target Settlement Set on Originating Gateway 498 No VoIP Inbound Dial Peer on Terminating Gateway 498 No Application Attribute on Terminating Gateway 499 Terminating Gateway Not Synchronized with Settlement Server 499 Settlement Provider Not Running 499 Router and Server Not Using SSL to Communicate 499 Multiple Dial Peers Have Random Order 500 H.323 Setup Connection Timeout 500 Problem Isolation 500 Troubleshooting Fax Applications
503
Fax Call Flow 503 Fax Pass-Through and Fax Pass-Through with Upspeed Cisco Fax Relay 505 Cisco Fax Relay Fax Setup Phase 505 Cisco Fax Relay Data Transfer Phase 506 T.38 Fax Relay 507 H.323 T.38 Fax Relay 507 SIP T.38 Fax Relay 508 MGCP T.38 Fax Relay 509 T.37 Store-and-Forward Fax 509
504
Fax Relay 510 Identifying and Isolating the Problem 511 Checking Basic Connectivity 512 Normal Voice Connectivity Problems 512 Configuration Problems Related to Dial Peers 512 Other Basic Connectivity Problems Not Relating to Dial Peers Fax Connectivity Problems Across the PSTN 515 Checking for Slips and Other Errors on Digital Interfaces 515 Checking Fax Interface Type 516 Ensuring That the Fax Codec is Loaded During the Fax Call 516 Disabling Fax Relay and Change Codec for Pass-Through 517 Checking for Packet Loss on the Voice Network 518 Disabling Fax Relay ECM (Cisco Proprietary VoIP Only) 518 Enabling T.38 Packet Redundancy (T.38 VoIP Only) 519 Setting the Fax NSF Command to All Zeroes 519
515
xvii
Contents
Achieving the Final Stages of Resolution Debugging Fax Relay 520 T.30 Messages 520 Fax Relay Debug Commands 522 Fax Analyzers 524 Fax Detection
5
525
519
PART
Monitoring the Cisco IOS Voice Network Monitoring the Voice Network Periodic Monitoring Tasks
529 529
Tools for Monitoring the VoIP Network 530 Cisco Voice Manager 530 Quality of Service Device Manager 530 Cisco Service Assurance Agent 531 CiscoWorks Voice Health Monitor 531 Cisco Gateway Management Agent 532 Cisco QoS Policy Manager 532 Voice Performance Statistics on Cisco Gateways
533 533 533
Prerequisites for Voice Performance Statistics on Cisco Gateways Restrictions for Voice Performance Statistics on Cisco Gateways
Information About Voice Performance Statistics on Cisco Gateways 534 Basic Terminology and Feature Design 534 What Are the Types of Accounting Statistics? 535 What Are the Types of Signaling Statistics and Aggregation Levels? What Are IECs? 536 Management of the Statistical Collection 537 What Are the Allowable Time Ranges? 537 What Are Thresholds? 537 What Are the Allowable Storage Capacities? 538 How Is Memory Used? 538 Management of the Archive Process 538 Display of Records and Time Ranges 539 What Records Are Displayed Since System Reset or Reboot? 539 What Time Ranges Are Displayed? 539 Voice Interface Changes During Call-Statistics Collection Periods 540 Addition or Removal of a Voice Port 540 Configuration Change of Any Trunk Group 540 Benefits of Voice Performance Statistics on Cisco Gateways 541
Cisco IOS Voice Troubleshooting and Monitoring Guide
535
xviii
Contents
Configuring Voice Performance Statistics on Cisco Gateways 541 Summary of Configuration Tasks 542 Configuring the Duration and Time Periods of Call Statistics on the Gateway 543 Configuring the Gateway to Collect Call Statistics on a Periodic Basis 543 Configuring the Gateway to Collect Call Statistics Since the Last Reset 544 Configuring the Gateway to Collect Call Statistics for a Specific Time Interval 545 Configuring the Gateway to Collect Signaling Statistics 546 Enabling the Gateway to Collect Signaling Statistics 546 Configuring the Minimum Call Duration and Signaling Thresholds 548 Disabling the Collection of Signaling Statistics 549 Displaying the Signaling Statistics for Each Aggregation Level 550 Clearing Signaling Statistics 556 Configuring the Gateway to Collect VoIP AAA Accounting Statistics 557 Prerequisites 557 Restrictions 557 Enabling the Collection of VoIP AAA Accounting Statistics on the Gateway 557 Configuring a Designated Server Group for a Broadcast Method List 559 Disabling the Collection of VoIP AAA Accounting Statistics 560 Displaying the VoIP AAA Accounting Statistics 561 Clearing the VoIP AAA Accounting Statistics 562 Troubleshooting Tips for VoIP AAA Accounting Statistics 563 Managing the Collection of Voice Statistics 566 Configuring the FTP Server to Enable Archiving of Statistics from the Gateway 566 Configuring the Gateway to Archive Statistics to an FTP Server 569 Configuring the Gateway to Archive Statistics to a Syslog Server 570 Displaying Memory Usage 571 Displaying All Statistics and Pushing Them to an FTP or Syslog Server 572 Clearing the Collected Call Statistics 572 Monitoring the Statistical Reporting 573 Configuration Examples for Voice Performance Statistics on Cisco Gateways User-Specific Configurations for Call Statistic Collection: Example 582 Manually Clearing Statistics: Example 582 Collection of Aggregation-Level Statistics: Example 583 Memory Usage: Example 584 Collection of Statistics Since System Reset: Examples 584 Designated Server Group: Example 587 Location of the FTP Server: Example 587 Maximum File Size for the Syslog Server: Example 587 Maximum Duration for Storage: Example 587
581
xix
Contents
589 589
Details of Cause Codes and Debug Values for VoIP Q.931 Call Disconnection Causes 589 Codec Negotiation Values 590 Tone Types 591 FAX-Rate and VAD Capabilities Values 591 Internal Cause Codes for SIP and H.323
INDEX
592
xx
Documentation Objectives
This document provides information about troubleshooting and maintain Cisco voice networking devices. Links are provided for additional troubleshooting information.
Audience
The Cisco IOS software documentation set is intended primarily for users who configure and maintain Cisco networking devices (such as routers and switches) but who may not be familiar with the tasks, the relationship between tasks, or the Cisco IOS software commands necessary to perform particular tasks.
Documentation Organization
This document includes the following sections:
Guide to Cisco IOS Voice Troubleshooting and Monitoring Features Troubleshooting Cisco IOS Voice Overview
Voice Call Flow Overview Debug Command Output on Cisco IOS Voice Gateways Filtering Troubleshooting Output Cisco VoIP Internal Error Codes Troubleshooting Resources
xxi
Cisco 2600 series router product documentation Cisco 3600 series router product documentation Cisco 3700 series router product documentation
xxii
Document or Resource Cisco AS5350 product documentation Cisco AS5400 product documentation Cisco AS5800 product documentation Cisco AS5850 product documentation MIX-Multichannel T1/E1 Port Adapter Installation and Configuration Guide Dictionary of Internetworking Terms and Acronyms New Cisco IOS feature documentation
Description Contains installation and configuration information for Cisco AS5350 universal gateways and cards. Contains installation and configuration information for Cisco AS5400 universal gateways and cards. Contains installation and configuration information for Cisco AS5800 access servers and cards. Contains installation and configuration information for Cisco AS5850 universal gateways and cards. Describes the installation and technical aspects of Cisco MIX-Multichannel T1/E1 port adapter hardware. Compiles and defines the terms and acronyms used in the internetworking industry. Documents the mainline release of Cisco IOS software (for example, Cisco IOS Release 12.3). New software features are introduced in early deployment releases (for example, the Cisco IOS T release train for 12.3, 12.3(x)T). Documentation for these new features can be found in standalone documents called feature modules. Feature module documentation describes new Cisco IOS software and hardware networking functionality and is available on Cisco.com. Describes system requirements, provides information about new and changed features, and includes other useful information about specific software releases. RFCs are standards documents maintained by the Internet Engineering Task Force (IETF). Cisco IOS software documentation references supported RFCs when applicable. The full text of referenced RFCs may be obtained at http://www.rfc-editor.org/. MIBs are used for network monitoring. For lists of supported MIBs arranged by platform and release, and to download MIB files, see the Cisco MIB website on Cisco.com at http://www.cisco.com/public/sw-center/netmgmt/cmtk/mibs.shtml.
Release notes
RFCs
MIBs
xxiii
Document Conventions
Within Cisco IOS software documentation, the term router is generally used to refer to a variety of Cisco products (for example, routers, access servers, and switches). Routers, access servers, and other networking devices that support Cisco IOS software are shown interchangeably within examples. These products are used only for illustrative purposes; that is, an example that shows one product does not necessarily indicate that other products are not supported. The Cisco IOS documentation set uses the following conventions: Convention ^ or Ctrl Description The ^ and Ctrl symbols represent the Control key. For example, the key combination ^D or Ctrl-D means hold down the Control key while you press the D key. Keys are indicated in capital letters but are not case sensitive. A string is a nonquoted set of characters shown in italics. For example, when setting an SNMP community string to public, do not use quotation marks around the string or the string will include the quotation marks. Command syntax descriptions use the following conventions: Convention boldface italics [x] | [x | y] {x | y} Description Boldface text indicates commands and keywords that you enter literally as shown. Italic text indicates arguments for which you supply values. Square brackets enclose an optional element (keyword or argument). A vertical line indicates a choice within an optional or required set of keywords or arguments. Square brackets enclosing keywords or arguments separated by a vertical line indicate an optional choice. Braces enclosing keywords or arguments separated by a vertical line indicate a required choice. Nested sets of square brackets or braces indicate optional or required choices within optional or required elements. For example: Convention [x {y | z}] Description Braces and a vertical line within square brackets indicate a required choice within an optional element. Examples use the following conventions: Convention
screen boldface screen
string
Description Examples of information displayed on the screen are set in Courier font. Examples of text that you must enter are set in Courier bold font. Angle brackets enclose text that is not printed to the screen, such as passwords.
<
>
xxiv
Convention ! [ ]
Description An exclamation point at the beginning of a line indicates a comment line. (Exclamation points are also displayed by the Cisco IOS software for certain processes.) Square brackets enclose default responses to system prompts. The following conventions are used to attract the attention of the reader:
Note
Means reader take note. Notes contain helpful suggestions or references to material not covered in the manual.
Timesaver
Means the described action saves time. You can save time by performing the action described in the paragraph.
Tip
Means the following information will help you solve a problem. The tips information might not be troubleshooting or even an action, but could be useful information, similar to a Timesaver.
Caution
Means reader be careful. In this situation, you might do something that could result in equipment damage or loss of data.
Warning
IMPORTANT SAFETY INSTRUCTIONS This warning symbol means danger. You are in a situation that could cause bodily injury. Before you work on any equipment, be aware of the hazards involved with electrical circuitry and be familiar with standard practices for preventing accidents. Use the statement number provided at the end of each warning to locate its translation in the translated safety warnings that accompanied this device.
Obtaining Documentation
Cisco documentation and additional literature are available on Cisco.com. Cisco also provides several ways to obtain technical assistance and other technical resources. These sections explain how to obtain technical information from Cisco Systems.
Cisco.com
You can access the most current Cisco documentation at this URL: http://www.cisco.com/univercd/home/home.htm You can access the Cisco website at this URL: http://www.cisco.com
xxv
Ordering Documentation
You can find instructions for ordering documentation at this URL: http://www.cisco.com/univercd/cc/td/doc/es_inpck/pdi.htm You can order Cisco documentation in these ways:
Registered Cisco.com users (Cisco direct customers) can order Cisco product documentation from the Ordering tool: http://www.cisco.com/en/US/partner/ordering/index.shtml
Nonregistered Cisco.com users can order documentation through a local account representative by calling Cisco Systems Corporate Headquarters (California, USA) at 408 526-7208 or, elsewhere in North America, by calling 800 553-NETS (6387).
Documentation Feedback
You can send comments about technical documentation to bug-doc@cisco.com. You can submit comments by using the response card (if present) behind the front cover of your document or by writing to the following address: Cisco Systems Attn: Customer Document Ordering 170 West Tasman Drive San Jose, CA 95134-9883 We appreciate your comments.
xxvi
xxvii
About Cisco IOS Software Documentation Obtaining Additional Publications and Information
Cisco Marketplace provides a variety of Cisco books, reference guides, and logo merchandise. Visit Cisco Marketplace, the company store, at this URL: http://www.cisco.com/go/marketplace/
The Cisco Product Catalog describes the networking products offered by Cisco Systems, as well as ordering and customer support services. Access the Cisco Product Catalog at this URL: http://cisco.com/univercd/cc/td/doc/pcat/
Cisco Press publishes a wide range of general networking, training and certification titles. Both new and experienced users will benefit from these publications. For current Cisco Press titles and other information, go to Cisco Press at this URL: http://www.ciscopress.com
Packet magazine is the Cisco Systems technical user magazine for maximizing Internet and networking investments. Each quarter, Packet delivers coverage of the latest industry trends, technology breakthroughs, and Cisco products and solutions, as well as network deployment and troubleshooting tips, configuration examples, customer case studies, certification and training information, and links to scores of in-depth online resources. You can access Packet magazine at this URL: http://www.cisco.com/packet
iQ Magazine is the quarterly publication from Cisco Systems designed to help growing companies learn how they can use technology to increase revenue, streamline their business, and expand services. The publication identifies the challenges facing these companies and the technologies to help solve them, using real-world case studies and business strategies to help readers make sound technology investment decisions. You can access iQ Magazine at this URL: http://www.cisco.com/go/iqmagazine
Internet Protocol Journal is a quarterly journal published by Cisco Systems for engineering professionals involved in designing, developing, and operating public and private internets and intranets. You can access the Internet Protocol Journal at this URL: http://www.cisco.com/ipj
World-class networking training is available from Cisco. You can view current offerings at this URL: http://www.cisco.com/en/US/learning/index.html
xxviii
Note
To use Cisco Feature Navigator, you must have an account on Cisco.com. If you do not have an account or have forgotten your username or password, click Cancel at the login dialog box and follow the instructions that appear. New Cisco IOS voice troubleshooting and monitoring features are introduced in the following Cisco IOS software releases:
Cisco IOS Release 12.4(4)T, page xxx Cisco IOS Release 12.3(8)T, page xxx Cisco IOS Release 12.3(4)T, page xxxi Cisco IOS Release 12.2(11)T, page xxxi
xxix
Guide to Cisco IOS Voice Troubleshooting and Monitoring Features Cisco IOS Release 12.4(4)T
Test Call
Using the Test Call Feature to Verify Provides the ability for a remote station or Voice Path section on page 342 gateway to establish a call to any destination address from a Test Call station located at a network operations center and to audibly verify the voice path. Voice Call Debug Filtering on H.323 Enables selected debugging traces for voice calls. This feature allows you to filter and trace Gatekeepers section on page 69 voice call debug messages based on selected filtering criteria, reducing the volume of output for more efficient troubleshooting.
xxx
Guide to Cisco IOS Voice Troubleshooting and Monitoring Features Cisco IOS Release 12.3(4)T
Enhances Cisco IOS behavior for disconnecting Media Inactive Call Detection a call when an inactive condition is detected. section on page 436 This feature provides more control for managing these calls. Provides the capability for SIP-related debug output to be filtered based on a set of user-defined matching conditions. SIP Debug Output Filtering Support section on page 83 Voice DSP Crash Dump File Analysis section on page 239
Voice DSP Crash Dump Analysis Allows Cisco IOS voice platforms using TI DSPs the ability to capture the contents of the DSP memory into a dump file if there is a DSP crash. Voice Performance Statistics on Cisco Gateways Enables the collection of voice call statistics based on user-configured time ranges. The statistics that can be collected are from the following functional areas:
RADIUS accounting Cisco IOS generated internal error codes (IECs) Gateway port (interface) statistics
Allows you to filter and trace voice call debug Voice Call Debug Filtering on Cisco Voice Gateways section on page 50 messages based on selected filtering criteria, reducing the volume of output for more efficient troubleshooting. Generates IECs for gateway-detected errors that Cisco VoIP Internal Error Codes section on page 109 cause the gateway to release or refuse a call. IECs enhance troubleshooting for VoIP networks by helping to determine the source and reason for call termination.
xxxi
Guide to Cisco IOS Voice Troubleshooting and Monitoring Features Cisco IOS Release 12.2(11)T
xxxii
A R T
For information about voice network design, refer to Troubleshooting and Debugging VoIP Call Basics, document ID 14081.
Call Setup
A voice call over a packet network is segmented into discrete call legs. Each call leg is associated with a dial peer. A call leg is a logical connection between two voice gateways or between a gateway and an IP telephony device (for example, Cisco CallManager or a session initiation protocol (SIP) server). An example of POTS and VoIP call legs is shown in Figure 1.
Figure 1
Source
Details for the call setup are described in the following sections:
Call Setup Elements, page 4 Call Setup Process, page 6 Dial Peer Matching, page 7
35950
IP network
Troubleshooting and debugging should focus first on each leg independently and then on the VoIP call as a whole.
Source and Destination POTS Dial Peers, page 4 Voice Network Dial Peers, page 4 Inbound and Outbound Call Legs, page 5
Destination gateway Cisco CallManager SIP server Open Settlements Protocol (OSP) server (for VoIP using settlement) H.323 gatekeeper Mail Transfer Agent (MTA) server (for Multimedia Mail over IP scenarios)
The specific type of voice-network dial peer used depends on the packet network technology. Different technologies supported on voice dial peers are as follows:
Voice over IP (VoIP)The dial peer is mapped to the IP address, Domain Name System (DNS) name, or server-type of the destination VoIP device that terminates the call. This mapping applies to all VoIP protocols such as H.323, SIP, and Media Gateway Control Protocol (MGCP). Voice over Frame Relay (VoFR)The dial peer is mapped to the data-link connection identifier (DLCI) of the interface from which the call exits the router. Voice over ATM (VoATM)The dial peer is mapped to the ATM virtual circuit for the interface from which the call exits the router. Multimedia Mail over IP (MMoIP)The dial peer is mapped to the e-mail address of the Simple Mail Transfer Protocol (SMTP) server. This type of dial peer is used for store-and-forward fax (on-ramp and off-ramp faxing).
The voice-network dial peer also sets the attributes of the network connection, such as which codec to use, the capability to do voice activity detection (VAD), and dual-tone multifrequency (DTMF) relay configuration. A voice network dial peer can point to any device that is compatible with skinny protocol (SCCP), H.323, or SIP. MGCP configuration on a Cisco IOS gateway does not use voice network dial peers.
HTTP server
SMTP server
PSTN
IP network
TFTP server
VoiceXML-enabled gateway
IP RTSP server
Voice gateway
37888
PSTN
The POTS call arrives at the originating gateway, and an inbound POTS dial peer is matched.
Note
At this stage, if configured on the inbound POTS dial-peer, nondefault inbound POTS services or Tool Command Language (Tcl) applications are used. When you use such services or applications, be certain that the correct inbound POTS dial peer is matched. Examples of services or applications include:
Direct inward dialing (DID) Tcl-based applications such as IVR, VoIP SIP transfer, or on-ramp faxing for store-and-forward fax.
2.
After the incoming call is associated with an inbound POTS dial peer, the originating gateway creates an inbound POTS call leg and assigns it a CallEntry ID and global unique identifier (GUID). For more information about these identifiers, see the Debug Header Format section on page 18. The originating gateway uses the dialed string to match an outbound voice-network dial peer. After the dialed string are associated with an outbound voice network dial peer, the originating gateway creates an outbound voice-network call leg and assigns it a call ID for the second call leg. The preceding process is illustrated in Figure 3.
3. 4.
Figure 3
Source
IP network
V
Inbound POTS call leg
V
35946
5. 6.
The voice network call request arrives at the terminating gateway and an inbound voice network dial peer is matched. After the terminating gateway associates the incoming call to an inbound voice-network dial peer, the terminating gateway creates the inbound voice-network call leg and assigns it a call ID for the third call leg. At this point, both gateways negotiate voice-network capabilities and applications (if required). Default capabilities are not displayed in the gateway Cisco IOS configuration output. Use the show dial-peer voice command to display the configured capabilities, services, and applications on POTS and voice-network dial peers:
Default capabilities include codec g729r8, vad enable, dtmf-relay disable, fax-relay disable,
req-qos best-effort, acc-qos best-effort, and session protocol cisco (for H.323).
Examples of Tcl applications include remote IP authentication and off-ramp faxing.
When nondefault capabilities or applications are requested by the originating gateway, the terminating gateways needs to match an inbound voice network dial peer that is configured for these capabilities or applications.
7. 8.
The terminating gateway uses the dialed string to match an outbound POTS dial peer. After associating the incoming call setup to an outbound POTS dial peer, the terminating gatewaycreates an outbound POTS call leg, assigns it a call ID, and terminates the call. The preceding steps are illustrated in Figure 4.
Figure 4
Source
IP network
V
36849
In scenarios where Cisco CallManager is present with a Cisco IOS gateway, the following assumptions apply:
For inbound calls to Cisco CallManager through a Cisco IOS gateway, the gateway behaves as an originating device. (See Steps 1 to 4.) For outbound calls from Cisco CallManager through a Cisco IOS gateway, the gateway behaves as a terminating device. (See Steps 5 to 8.)
Inbound Dial Peer Matching, page 8 Outbound Dial Peer Matching, page 11 Voice Network Dial Peer Matching, page 13 POTS Dial Peer Matching, page 13
The destination-pattern parameter on the dial peer command controls call routing. For inbound dial peers, the destination-pattern parameter is matched against the calling number, or automatic number identifier (ANI) string. For outbound dial peers, the destination-pattern parameter is matched against the called number, or dialed number identification service (DNIS) string. A dial peer with the destination-pattern parameter works for both outbound and inbound matching. Multiple dial peers can match a specific digit string. The gateway usually attempts to perform longest-match routing. For example, if you have two patterns, 555.... and 55501.., and the called party number is 5550123, the gateway matches the peer with 55501..; however, if the call to that peer fails, the gateway attempts to use the other matching peer. If more than one peer has the same destination pattern configured, the preference parameter on the dial peer can resolve the priority. The peer with the lowest preference number has the highest priority.
The operational status for a dial peer must be administratively up and valid for it to be matched. To be considered operational, dial peers must meet one of the following conditions:
destination-pattern is configured and a voice-port or session target is also configured. incoming called-number is configured. answer-address is configured.
Matching the called party number with the destination-pattern parameter is always used to match an outbound dial peer. The inbound dial peer does not affect where the call is routed, but it does determine all of the call properties for the voice network side of the call, regardless of where the outbound peer terminates.The incoming called-number and answer-address commands are used only to match inbound dial peers. They are not used for call routing or choosing an outbound dial peer. The incoming called-number command matches based on the called party number but does not play a role in where the call is routed. It is used only to select the inbound dial peer. If this match is unsuccessful, the answer-address command tries for a match using the calling party number information rather than the called party number. If both of these matches fail, the calling party information is matched against the destination-pattern command configured on the dial peers. On POTS ports, the inbound dial peer can be matched based on port configuration. If no match can be made, the dial peer 0 attribute is used. See the Dial Peer 0 section on page 10 for more information about dial peer 0. For more information about the operational status of dial peers, refer to Understanding the Operational Status of Dial Peers on Cisco IOS Platforms, document ID 12426. For more detailed information on dial peer matching, configuration steps, and information about parameters, refer to Dial Peer Features and Configuration in the Dial Peer Configuration on Voice Gateway Routers document. For additional information about dial peer matching, refer to Understanding Inbound and Outbound Dial Peers Matching on IOS Platforms, document ID 14074.
Called number or DNISA set of numbers representing the destination, which is derived from the ISDN setup message or channel associated-signaling (CAS) DNIS. Calling number or ANIA set of numbers representing the origin, which is derived from the ISDN setup message or CAS ANI. Voice portThe voice port carrying the call.
Incoming called numberA string representing the called number or DNIS. It is configured by using the incoming called-number dial-peer voice configuration command in POTS or MMoIP dial peers. Answer addressA string representing the calling number or ANI. It is configured by using the answer-address dial-peer voice configuration command in POTS or VoIP dial peers and is used only for inbound calls from the IP network. Destination patternA string representing the calling number or ANI. It is configured by using the destination-pattern dial-peer voice configuration command in POTS or voice-network dial peers.
ApplicationA string representing the predefined application that you enable on the dial peer. It is configured by using the application dial-peer voice configuration command on inbound POTS dial peers. PortThe voice port through which calls to this dial peer are placed.
When the gateway receives a call setup request, a dial-peer match is made for the incoming call to facilitate routing the call to different session applications. The gateway does not perform digit-by-digit matching. Instead, the full digit string received in the setup request is used for matching against configured dial peers. The gateway selects an inbound dial peer by matching the information elements in the setup message with the dial peer attributes. The gateway matches these items in the following order:
1.
Called number or DNIS with incoming called-number First, the gateway attempts to match the called number of the call setup request with the configured incoming called-number parameter of each dial peer. Because call setups always include DNIS information, Cisco recommends using the incoming called-number command for inbound dial peer matching. This attribute has matching priority over the answer-address and destination-pattern parameter.
2.
Calling number or ANI with answer-address If no match is found in Step 1, the gateway attempts to match the calling number of the call setup request with the answer-address of each dial peer. This attribute may be useful in situations where you want to match calls based on the calling number (originating).
3.
Calling number (ANI) with destination-pattern If no match is found in step 2, the gateway attempts to match the calling number of the call setup request to the destination-pattern of each dial peer.
4.
Voice port (associated with the incoming call setup request) with the configured dial peer port parameter (applicable for inbound POTS call legs). If no match is found in Step 3, the gateway attempts to match the configured dial-peer port parameter to the voice port associated with the incoming call. If multiple dial peers have the same port configured, the dial peer first added in the configuration is matched.
If no match is found using these steps, then dial peer 0 is used. See the Dial Peer 0 section on page 10 for more information about dial peer 0.
Note
Step 4 is not applicable to voice or dial platforms such as the Cisco AS5300 access server, Cisco AS5350 universal gateway, Cisco AS5400 universal gateway, Cisco AS5800 universal gateway, and Cisco AS5850 universal gateway. If any one of first three steps are not used, then dial-peer 0 is matched and the call is treated as a dial modem call. This call treatment can result in getting modem tones as opposed to dial tone for inbound calls. Only one condition must be met for the gateway to select a dial peer. The gateway stops searching as soon as one dial peer is matched. It is not necessary for all the attributes to be configured in the dial peer or that every attribute match the call setup information. The longest prefix matching criteria applies while each step is performed. At each step, if multiple matches are found, the one with the longest explicit match is chosen. For more information on dial-peer matching, configuration steps, and information about parameters, refer to Dial Peer Features and Configuration in the Dial Peer Configuration on Voice Gateway Routers document.
Dial Peer 0
If no inbound peer can be matched by the defined criteria, the inbound peer is set to dial peer 0, which sometimes appears as pid:0. The characteristics of dial peer 0 cannot be changed.
Note
Cisco universal gateways, such as the Cisco AS5350, Cisco AS5400, Cisco AS5800, and Cisco AS5850, require configured inbound dial peers to match incoming POTS calls in order to be accepted as a voice call. If there is no inbound dial peer match, the call is treated and processed as a dialup (modem) call. For an inbound voice network call, dial peer 0 has the following characteristics:
Supports any codec No DTMF relay IP precedence 0 VAD-enabled No RSVP support Fax-rate voice
Dial peer 0 fails to negotiate nondefault capabilities, services, and applications, such as DTMF relay or disabled VAD. For an incoming POTS call, dial peer 0 has the following characteristics:
No applications No DID
Note
Avoid using dial peer 0. Having the incoming called-number parameter configured correctly ensures that the dial peer is always matched with the parameters you want when placing outbound calls through a gateway. Many problems with calling out through a Cisco IOS gateway are due to codec, VAD, and DTMF-relay misconfigurations when dial peer 0 is being matched. To display which dial peers are being matched for an active call, use the show call active voice brief command.
When the timer (T) character is included at the end of the destination pattern, the router collects dialed digits until the interdigit timer expires (10 seconds, by default) or until you dial the termination character (the default is #). The timer character must be an uppercase T. In most cases, you must configure the T indicator only when the router uses two-stage dialing. If DID is configured in the inbound POTS dial peer, the router uses one-stage dialing, which means that the full dialed string is used to match outbound dial peers. The only exception is when the isdn overlap-receiving command is configured; the ISDN overlap-receiving feature requires the T indicator. When the isdn overlap-receiving command is configured on ISDN interfaces, dial peers are checked for matches after every digit is received at the ISDN layer. If a full match is made, the call is routed immediately without waiting for additional digits. The T indicator can be used to suspend this
10
digit-by-digit matching and force the gateway to wait until all digits are received. The T refers to the T302 interdigit timer at the ISDN level, configurable under the serial interface associated with the ISDN interface. ISDN also provides other mechanisms to indicate the end of digits, such as setting the Sending Complete Information Element (IE) in a Q.931 information message.
Empty Calling Field with Variable-Length Dial Plans
In some voice network configurations, variable-length dial plans are required, especially if the network connects two or more countries where telephone number strings could be different lengths. However, this configuration can result in the calling number field being replaced with an empty number. If you enter the T character in the destination-pattern parameter for your dial peer, the router can be configured to accept a fixed-length dial string, and then wait for additional dialed digits. For example, the following dial peer configuration shows how the T character can be set to allow variable-length dial strings:
dial-peer voice 1 pots destination-pattern 9T port 1/0:1
If an incoming call arrives with no calling number information and is matched with the POTS dial peer shown based on the destination-pattern 9T, the gateway uses the 9 digit as the calling number and forwards the call to the corresponding device. To eliminate this behavior of replacing the empty calling number field, create a dummy POTS dial peer with just the incoming called-number command configured. Because the incoming called-number statement has higher priority than the destination-pattern parameter for inbound POTS matching, dial-peer voice 2 is the POTS dial peer that is used:
dial-peer voice 1 pots destination-pattern 9T port 1/0:1 ! dial-peer voice 2 pots incoming called-number .
On POTS dial peers, the port command is used to forward the call. On voice network dial peers, the session target command is used to forward the call.
11
DID Configuration
An example of incoming dial-peer configured with DID follows:
dial-peer voice 1 pots incoming called-number 81690 voice-port 0:D direct-inward-dial
On DID calls, also referred to as one-stage dialing, the setup message contains all digits necessary to route the call, and the gateway should not do subsequent digit collection. When the gateway searches for an outbound dial peer, it uses the entire incoming dial string. This matching is by default variable-length. It is not done digit by digit because by DID definition all digits have been received. The following example helps clarify this concept: If the DID dial-string is 81690, the router matches dial peer 4 and forwards the complete dial-string 81690.
dial-peer voice 3 voip destination-pattern 816 session target ipv4:172.22.10.1 ! dial-peer voice 4 voip destination-pattern 81690 session target ipv4:172.22.10.1
In this case, the longest-prefix rule applies and dial peer 4 is matched for the outbound call leg.
12
The T terminator forces the gateway to wait until the full dial string is received by doing the following:
Waiting for a specified interdigit timeout before routing the call. Routing the call once it receives the # termination character in the dial string. For example, if you dialed 5550112#, the # would indicate to the router that you dialed all the digits and that all digits before the # should be used to match a dial peer.
In the following example, the router receives a call setup from the network with dial string 95550112. Dial peer 2 then forwards the digits 5550112 to the PSTN.
dial-peer voice 2 pots destination-pattern 9T port 2/0:23
In the following example, the dial string from an inbound POTS interface is 81690:
dial-peer voice 3 voip destination-pattern 8T session target ipv4:172.22.10.1 ! dial-peer voice 4 voip destination-pattern 81690T session target ipv4:172.22.10.1
In this case, the longest-prefix rule applies, and dial peer 4 is matched for the outbound call leg.
Note
The default interdigit timeout is set for 10 seconds. To modify this value, use the timeouts interdigit voice-port command. Anytime the T is used with destination-pattern parameter, it must be preceded by a . or digits (.T or 555T, for example). Using T on its own causes the dial peers to act improperly and affects how calls are handled by the router.
Match the called number with the incoming called number. Match the calling number with the answer-address parameter. Match the calling number with the destination pattern. Otherwise, use dial peer 0. See the Dial Peer 0 section on page 10 for more information.
Match the called number with the incoming called number. Match the calling number with the answer-address parameter. Match the calling number with the destination pattern.
13
If the inbound interface is not PRI or BRI, or if a PRI or BRI interface does not match a dial peer using the preceding three rules, the voice gateway matches a POTS dial peer that has the inbound port configured if any of the following parameters are configured:
CLI
SNMP
Session application
Telephony SPI
VoIP SPI
VoFR SPI
The following definitions explain the function of the main components displayed in the router call flow diagram:
Call control application programming interface (CCAPI)Three clients make use of the CCAPI: command-line interface (CLI), Simple Network Management Protocol (SNMP) agent and Session Application. The CCAPI main functions are:
Identify the call legs (Which dial peer is it? Where did it come from?). Decide which session application takes the call (Who handles it?). Invoke the packet handler. Conference the call legs together. Start recording call statistics.
Session application and dial plan mapperThe session application uses the dial plan mapper to map a number to a dial peer (local POTS or remote VoIP). The dial plan mapper uses the dial peer table to find active dial peers. Telephony and VoIP service provider interface (SPI)The telephony SPI communicates with the POTS dial peers. The VoIP SPI is the specific interface to the VoIP peers. Telephony or digital signal processor (DSP) drivers deliver services to the Telephony SPI; the VoIP SPI relies on session protocols.
14
CCAPI Application request Setup/release request Voice processor module Setup/release ind/response Application response
FXO SSM
FXS SSM
E&M SSM
CCAPISoftware entity that establishes, terminates, and bridges call legs. Voice telephony service provider (VTSP)Cisco IOS process that services requests from the CCAPI and formulates the appropriate requests to the DSPs or the voice processor module (VPM). Voice processor module (VPM ) The VPM is in charge of bridging and coordinating signaling processes between the telephony port signaling state machine (SSM), the DSP resource manager, and the VTSP. DSP resource manager (DSPRM)The DSPRM provides interfaces by which the VTSP can send and receive messages to and from the DSPs. Packet handlerThe packet handler forwards packets between the DSPs and the peer call legs. Call peerThe call peer can be another telephony voice connection (POTS), VoFR, VoATM, or a VoIP connection.
88971
DSP
15
Application-TCL
Session control
Telephony SPI
Signaling
IP network
16
Using debug commands is contained in the Using Debug Commands chapter. Conditionally triggered debugging is contained in the Conditionally-Triggered Debugging chapter. Details about individual debug commands are listed.
Voice Debug Concepts, page 17 Managing the Voice Call Debug Output, page 35 Sample Output Examples for the Enhanced debug Commands, page 38
Debug Header Format, page 18 CallEntry ID and GUID Call Legs, page 20 Enabling Command Profile Debugging, page 20 Enabling Individual Debug Commands for CCAPI, TSP, and VTSP Debugging, page 26
17
Debug Command Output on Cisco IOS Voice Gateways Voice Debug Concepts
Short 6-byte global unique identifier (GUID) Full 16-byte GUID Short header that contains only the CallEntry ID
The format of the GUID headers is as follows: //CallEntryID/GUID/Module-dependent-list/Function-name: The format of the short header is as follows: //CallEntryID/Function-name: The parameters in the header are as follows:
CallEntryIDNumerically identifies a specific call leg such as an incoming ISDN call or an outgoing H.323 call. The CallentryID ranges from 1 to 32767. When the CallEntryID is not available to the function producing the debug message, the header displays the CallEntryID field as -1. GUIDEach call is assigned a GUID, which is generally used for billing purposes. The GUID is a 16-byte quantity that uniquely identifies a call throughout the entire network and over time. Gateway information and time stamp are embedded in the GUID. The GUID is sometimes called a conference point. See the CallEntry ID and GUID Call Legs section on page 20 for an example of the GUID and CallEntry ID call legs. By default, the debug header displays a more compact 6-byte form of the GUID that is generally unique enough for debugging purposes. If you need to correlate GUID information to third-party devices or to conduct debugging sessions lasting more than a month, you can display the full 16-byte header with the voice call debug command using the full-guid keyword. When the GUID information is unavailable to the module producing the debug message, the header displays the GUID field as blank or filled with x characters (/xxxxxxx/). For non-IVR debugs, if the GUID field is unavailable, the header is //CallentryID/xxxxxxxx/. For IVR debugs, the header is //CallentryID//. IVR rarely has GUID information but reserves the space in order to have field-by-field consistency.
Module-dependent-listThese parameters are dependent on which module is used. The dependent parameters for the various modules are shown in Table 1.
Module-Dependent List Parameters
Table 1
Dependent Parameters None. Port name, channel number, DSP slot, and DSP channel number. Dial-peer number and the number of the connection through the dial peer. (Multiple sessions can be associated with a single dial peer.) See the IVR Module-Dependent List section on page 19.
IVR
Function-nameIdentifies call progress though the internal modules of the Cisco IOS code. This is free-form debugging used by developers.
18
Debug Command Output on Cisco IOS Voice Gateways Voice Debug Concepts
Module Name AAPL DCM DPM MCM MSM MSW PCM RTSP TCL2
Module Application infrastructure Digit collect Dynamic prompt Media content Media stream Media service wrapper Place call (call setup) Real-time streaming protocol (RTSP) client Tcl IVR 2
Table 3
Object Name CN
Description Connection
Identifier Range 2147483647 to 2147483647 with 0 and 1 being invalid (either) or unavailable (latter) 1 to 4294967295 or 0 (invalid or unavailable) 1 to 4294967295 or 0 (invalid or unavailable) 0 to 4294967295 1 to 2147483647 or 1 (invalid or unavailable) 1 to 4294967295 or 0 (invalid or unavailable) 1 to 4294967295 or 0 (invalid or unavailable) 1 to 4294967295 or 0 (invalid or unavailable) 1 to 4294967295 or 0 (invalid or unavailable)
DP GS HN LG MC MR MS RS
Dynamic prompt Generic stream Handler Call leg Media content Media content reader Media stream RTSP session
19
Debug Command Output on Cisco IOS Voice Gateways Voice Debug Concepts
GUID B
V
CallEntryID 8 5th leg
V
CallEntryID 202
V
CallEntryID 99
82732
Enabling the debugging on each of these profiles produces many types of debug information. The advantage of using profile debugging is that instead of having to enable several debug commands to get a full picture of the problem, you can enable a profile which gives you all of the debugs that are appropriate. When profile debugging is enabled, a large number of debug messages are produced which might affect system performance. For this reason, you should only use profile debugging during low traffic periods or on a non-production system.
20
Debug Command Output on Cisco IOS Voice Gateways Voice Debug Concepts
Caution
The debug voip profile commands generate debug messages from many VoIP components, which generates a large number of debug messages. The number of messages can cause a performance impact on your router. This command should only be used during low traffic periods.
debug crm all debug csm voice debug fax fmsp all debug fax mta all debug fax mmoip aaa debug isdn q931 debug tgrm all debug voip application all debug voip application vxml all debug voip ccapi all debug voip dsm all debug voip dspapi all debug voip hpi all debug voip ivr all debug voip vtsp all
The following debug commands are enabled for access servers with MICA modem cards:
debug fax receive all debug fax send all debug fax fmail client debug fax fmail server debug fax text-to-fax debug fax tiff reader debug fax tiff writer
The following debug options are enabled for access servers with universal port dial feature cards:
21
Debug Command Output on Cisco IOS Voice Gateways Voice Debug Concepts
debug fax dmsp all debug fax mspi all debug voip application vxml all debug voip ivr all
If you use the debug voip profile fax relay command, you enable the debug fax relay t30 all-level-1 and the sets specified by either the application or signaling keyword. For the debug voip profile fax relay application command, the following debugs are enabled for fax relay applications:
debug voip application all debug voip application vxml all debug voip ccapi all debug voip dialpeer all debug voip ivr all
For the debug voip profile fax relay signaling command, the following debugs are enabled for fax relay signaling:
debug cch323 all debug ccsip error debug ccsip messages debug cdapi detail debug cdapi events debug crm all debug csm voice debug gtd error debug gtd events debug h225 asn1 debug h225 events debug h225 q931 debug h245 asn1 debug h245 event debug isdn q931 debug mgcp errors debug mgcp events debug mgcp media debug mgcp packets debug mgcp voipcac debug rtpspi all debug tgrm all debug voip ccapi all
22
Debug Command Output on Cisco IOS Voice Gateways Voice Debug Concepts
debug voip dsm all debug voip dspapi all debug voip hpi all debug voip rawmsg debug voip tsp all debug voip vtsp all
For detailed information about the individual debug commands, refer to the Cisco IOS Debug Command Reference.
debug cch323 all debug ccsip error debug ccsip messages debug cdapi detail debug cdapi events debug csm voice debug crm all debug gtd error debug gtd events debug h225 asn1 debug h225 events debug h225 q931 debug isdn q931 debug mgcp errors debug mgcp events debug mgcp media debug mgcp packets debug mgcp voipcac debug rtpspi all debug tgrm all debug voip ccapi all debug voip dsm all
23
Debug Command Output on Cisco IOS Voice Gateways Voice Debug Concepts
debug voip dspapi all debug voip hpi all debug voip rawmsg debug voip tsp all debug voip vtsp all
If you use the debug voip profile modem relay signaling command, you enable the following debug commands for modem relay signaling:
debug cch323 all debug ccsip error debug ccsip messages debug cdapi detail debug cdapi events debug csm voice debug crm all debug h245 asn1 debug h245 event debug isdn q931 debug mgcp errors debug mgcp events debug mgcp media debug mgcp packets debug mgcp voipcac debug tgrm all debug voip ccapi all debug voip dsm all debug voip dspapi all debug voip hpi all debug voip tsp all debug voip vtsp all
For detailed information about the individual debug commands, refer to the Cisco IOS Debug Command Reference.
24
Debug Command Output on Cisco IOS Voice Gateways Voice Debug Concepts
If you use the debug voip profile voice application command, you enable the following debug commands for voice applications:
debug voip application all debug voip application vxml all debug voip ccapi all debug voip dialpeer all debug voip ivr all
If you use the debug voip profile voice signaling command, you enable the following debug commands for voice signaling:
debug cch323 all debug ccsip error debug ccsip messages debug cdapi detail debug cdapi events debug crm all debug csm voice debug gtd error debug gtd events debug h225 asn1 debug h225 events debug h225 q931 debug h245 asn1 debug h245 event debug isdn q931 debug mgcp errors debug mgcp events debug mgcp media debug mgcp packets debug mgcp voipcac debug rtpspi all debug tgrm all debug voip ccapi all debug voip dsm all debug voip dspapi all debug voip hpi all debug voip rawmsg debug voip tsp all debug voip vtsp all
25
Debug Command Output on Cisco IOS Voice Gateways Voice Debug Concepts
For detailed information about the individual debug commands, refer to the Cisco IOS Debug Command Reference.
Enabling Individual Debug Commands for CCAPI, TSP, and VTSP Debugging
If you want to use a debug command for CCAPI, TSP, or VTSP and you want to limit the output so that the performance on the router is not impacted, you can select to use individual parts of the debug command. You can use debug voip ccapi individual range, debug voip tsp individual range, or debug voip vtsp individual range to get individual debug output for each of these processes. Table 4, Table 5, and Table 6 show the specific debugs for the individual ranges.
Table 4 CCAPI Individual Debug Values
Value 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
CCAPI Debug Function CC_IDMSG_API_DISPLAY_IES CC_IDMSG_SETUP_IND_COMM_2 CC_IDMSG_SETUP_IND_COMM_3 CC_IDMSG_SETUP_IND_COMM_4 CC_IDMSG_ALERT_IND_5 CC_IDMSG_ALERT_IND_6 CC_IDMSG_CONNECT_IND_7 CC_IDMSG_CONNECT_IND_8 CC_IDMSG_RECONNECT_IND_9 CC_IDMSG_DISCONNECTED_IND_10 CC_IDMSG_DISCONNECTED_IND_11 CC_IDMSG_DISCONNECTED_IND_12 CC_IDMSG_DISCONNECT_DONE_IND_13 CC_IDMSG_DISCONNECT_DONE_IND_14 CC_IDMSG_DISCONNECT_DONE_IND_15 CC_IDMSG_PRE_DISC_CAUSE_16 CC_IDMSG_PRE_DISC_CAUSE_17 CC_IDMSG_DIGIT_BEGIN_IND_18 CC_IDMSG_DIGIT_END_IND_19 CC_IDMSG_DIGIT_END_IND_20 CC_IDMSG_DIGIT_END_NO_TERM_21 CC_IDMSG_TONE_IND_22 CC_IDMSG_FEATURE_IND_23 CC_IDMSG_MODIFY_DONE_IND_24 CC_IDMSG_MODIFY_MODE_DONE_IND_25 CC_IDMSG_INBAND_MSG_RCVD_IND_26 CC_IDMSG_INBAND_MSG_DONE_IND_27
26
Debug Command Output on Cisco IOS Voice Gateways Voice Debug Concepts
Table 4
Value 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
CCAPI Debug Function CC_IDMSG_UPD_CALL_INFO_IND_28 CC_IDMSG_GEN_NTK_ALERT_EVENT_29 CC_IDMSG_VOICE_MODE_EVENT_30 CC_IDMSG_VOICE_MODE_EVENT_31 CC_IDMSG_DIALING_COMPLETE_IND_32 CC_IDMSG_DIGITS_DONE_IND_33 CC_IDMSG_DIGITS_DONE_IND_34 CC_IDMSG_VBD_XMIT_DONE_IND_35 CC_IDMSG_FWD_SETUP_IND_36 CC_IDMSG_RSVP_DONE_IND_37 CC_IDMSG_AUDIT_RSP_IND_38 CC_IDMSG_XFR_STATUS_IND_39 CC_IDMSG_XFR_STATUS_IND_40 CC_IDMSG_XFR_DONE_IND_41 CC_IDMSG_XFR_DONE_IND_42 CC_IDMSG_XFR_DONE_IND_43 CC_IDMSG_TGT_CID_ACTIVE_RCD_44 CC_IDMSG_MODIFY_MEDIA_IND_45 CC_IDMSG_MODIFY_MEDIA_ACK_IND_46 CC_IDMSG_MODIFY_MEDIA_REJ_IND_47 CC_IDMSG_MODEM_CALL_START_IND_48 CC_IDMSG_MODEM_CALL_DONE_IND_49 CC_IDMSG_ACCT_STATUS_IND_50 CC_IDMSG_NW_STATUS_IND_51 CC_IDMSG_DESTINFO_IND_52 CC_IDMSG_LOOPBACK_DONE_IND_53 CC_IDMSG_RT_PACKET_STATS_IND_54 CC_IDMSG_CUT_PROGRESS_IND_55 CC_IDMSG_CUT_PROGRESS_IND_56 CC_IDMSG_PROCEEDING_IND_57 CC_IDMSG_FACILITY_IND_58 CC_IDMSG_INFO_IND_59 CC_IDMSG_PROGRESS_IND_60 CC_IDMSG_USERINFO_IND_61 CC_IDMSG_DISC_PROG_IND_62 CC_IDMSG_DISC_PROG_IND_63
27
Debug Command Output on Cisco IOS Voice Gateways Voice Debug Concepts
Table 4
Value 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99
CCAPI Debug Function CC_IDMSG_PING_DONE_IND_64 CC_IDMSG_COT_TEST_DONE_IND_65 CC_IDMSG_PROCESS_DONE_IND_66 CC_IDMSG_ASSOCIATED_IND_67 CC_IDMSG_SUSPEND_IND_68 CC_IDMSG_SUSPEND_ACK_IND_69 CC_IDMSG_SUSPEND_REJ_IND_70 CC_IDMSG_RESUME_IND_71 CC_IDMSG_RESUME_ACK_IND_72 CC_IDMSG_RESUME_REJ_IND_73 CC_IDMSG_IF_SETUP_REQ_PRIV_74 CC_IDMSG_IF_SETUP_REQ_PRIV_75 CC_IDMSG_IF_ALLOCATE_DSP_76 CC_IDMSG_CONNECT_77 CC_IDMSG_CONNECT_78 CC_IDMSG_PING_79 CC_IDMSG_DISCONNECT_80 CC_IDMSG_DISCONNECT_81 CC_IDMSG_DISCONNECT_82 CC_IDMSG_ALERT_83 CC_IDMSG_ALERT_84 CC_IDMSG_CUT_PROGRESS_85 CC_IDMSG_CUT_PROGRESS_86 CC_IDMSG_CUT_PROGRESS_87 CC_IDMSG_DISC_PROG_88 CC_IDMSG_DISC_PROG_89 CC_IDMSG_SET_PEER_90 CC_IDMSG_SET_PEER_91 CC_IDMSG_PROCEEDING_92 CC_IDMSG_SETUP_REQ_93 CC_IDMSG_SETUP_REQ_94 CC_IDMSG_SETUP_REQ_95 CC_IDMSG_SETUP_REQ_96 CC_IDMSG_SETUP_REQ_97 CC_IDMSG_SETUP_REQ_98 CC_IDMSG_SETUP_REQ_99
28
Debug Command Output on Cisco IOS Voice Gateways Voice Debug Concepts
Table 4
Value 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135
CCAPI Debug Function CC_IDMSG_SETUP_REQ_100 CC_IDMSG_SETUP_REQ_101 CC_IDMSG_SETUP_ACK_102 CC_IDMSG_FACILITY_103 CC_IDMSG_TRANSFER_REQ_104 CC_IDMSG_GET_CONSULT_ID_105 CC_IDMSG_FORWARD_TO_106 CC_IDMSG_INFO_107 CC_IDMSG_NOTIFY_108 CC_IDMSG_PROGRESS_109 CC_IDMSG_PRE_DISC_110 CC_IDMSG_PRE_DISC_111 CC_IDMSG_USER_INFO_112 CC_IDMSG_MODIFY_113 CC_IDMSG_DIGIT_114 CC_IDMSG_DIGIT_DIAL_115 CC_IDMSG_DIGIT_DIAL_STOP_116 CC_IDMSG_FEATURE_117 CC_IDMSG_FEATURE_ENABLE_118 CC_IDMSG_ASSOCIATE_STREAM_119 CC_IDMSG_ASSOCIATE_STREAM_120 CC_IDMSG_DISASSOCIATE_STREAM_121 CC_IDMSG_DISASSOCIATE_STREAM_122 CC_IDMSG_GENERATE_TONE_INFO_123 CC_IDMSG_SET_DIGIT_TIMEOUTS_124 CC_IDMSG_SET_DIGIT_TIMEOUTS_125 CC_IDMSG_SUSPEND_126 CC_IDMSG_SUSPEND_ACK_127 CC_IDMSG_SUSPEND_REJ_128 CC_IDMSG_RESUME_129 CC_IDMSG_RESUME_ACK_130 CC_IDMSG_RESUME_REJ_131 CC_IDMSG_UPDATE_REDIRECT_NUM_132 CC_IDMSG_BABBLER_AUDIT_133 CC_IDMSG_CONFERENCE_CREATE_134 CC_IDMSG_CONFERENCE_CREATE_135
29
Debug Command Output on Cisco IOS Voice Gateways Voice Debug Concepts
Table 4
Value 136 137 138 139 140 141 142 143 144 145
CCAPI Debug Function CC_IDMSG_CONFERENCE_CREATE_136 CC_IDMSG_CONFERENCE_DESTROY_137 CC_IDMSG_CONFERENCE_DESTROY_138 CC_IDMSG_CONFERENCE_DESTROY_139 CC_IDMSG_LOOPBACK_140 CC_IDMSG_COT_TEST_141 CC_IDMSG_HANDOFF_142 CC_IDMSG_APP_RETURN_143 CC_IDMSG_T38_FAX_START_144 CC_IDMSG_T38_FAX_DONE_145
Table 5
Value 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
TSP Debug Function INDIVIDUAL_TSP_DEBUG_TDM_HAIRPIN_CONNECT_001 INDIVIDUAL_TSP_DEBUG_TDM_HAIRPIN_DISCONNECT_002 INDIVIDUAL_TSP_DEBUG_CCRAWMSG_ENCAP_003 INDIVIDUAL_TSP_DEBUG_CDAPI_FORM_MSG_BASIC_SS_INFO_004 INDIVIDUAL_TSP_DEBUG_CDAPI_FORM_MSG_005 INDIVIDUAL_TSP_DEBUG_CDAPI_FORM_MSG_006 INDIVIDUAL_TSP_DEBUG_CDAPI_SEND_MSG_007 INDIVIDUAL_TSP_DEBUG_CDAPI_SEND_MSG_008 INDIVIDUAL_TSP_DEBUG_CDAPI_SEND_INFO_MSG_009 INDIVIDUAL_TSP_DEBUG_ALLOC_CDB_010 INDIVIDUAL_TSP_DEBUG_DEALLOC_CDB_011 INDIVIDUAL_TSP_DEBUG_CONNECT_IND_012 INDIVIDUAL_TSP_DEBUG_CONNECT_IND_EXIT_013 INDIVIDUAL_TSP_DEBUG_CONNECT_IND_EXIT_014 INDIVIDUAL_TSP_DEBUG_CONNECT_IND_EXIT_015 INDIVIDUAL_TSP_DEBUG_CONNECT_IND_EXIT_016 INDIVIDUAL_TSP_DEBUG_CONNECT_IND_EXIT_017 INDIVIDUAL_TSP_DEBUG_CDAPI_SETUP_ACK_018 INDIVIDUAL_TSP_DEBUG_CDAPI_PROCEEDING_019 INDIVIDUAL_TSP_DEBUG_CDAPI_ALERT_020 INDIVIDUAL_TSP_DEBUG_CDAPI_CONNECT_021 INDIVIDUAL_TSP_DEBUG_CDAPI_INFO_022 INDIVIDUAL_TSP_DEBUG_CDAPI_PROGRESS_023
30
Debug Command Output on Cisco IOS Voice Gateways Voice Debug Concepts
Table 5
Value 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
TSP Debug Function INDIVIDUAL_TSP_DEBUG_CDAPI_FACILITY_024 INDIVIDUAL_TSP_DEBUG_CDAPI_FACILITY_025 INDIVIDUAL_TSP_DEBUG_CDAPI_PRE_CONN_DISC_REQ_026 INDIVIDUAL_TSP_DEBUG_CDAPI_DISC_PROG_IND_027 INDIVIDUAL_TSP_DEBUG_CDAPI_DISCONNECT_REQ_028 INDIVIDUAL_TSP_DEBUG_CDAPI_DISCONNECT_REQ_029 INDIVIDUAL_TSP_DEBUG_CDAPI_TSP_SS_RESP_030 INDIVIDUAL_TSP_DEBUG_CDAPI_TSP_INFO_IND_031 INDIVIDUAL_TSP_DEBUG_CDAPI_TSP_PROCEEDING_032 INDIVIDUAL_TSP_DEBUG_CDAPI_TSP_ALERT_033 INDIVIDUAL_TSP_DEBUG_CDAPI_TSP_ALERT_EXIT_034 INDIVIDUAL_TSP_DEBUG_CDAPI_TSP_ALERT_EXIT_035 INDIVIDUAL_TSP_DEBUG_CDAPI_TSP_PROGRESS_036 INDIVIDUAL_TSP_DEBUG_CDAPI_TSP_INFO_037 INDIVIDUAL_TSP_DEBUG_CDAPI_TSP_CONNECT_038 INDIVIDUAL_TSP_DEBUG_CDAPI_TSP_CONNECT_CONF_039 INDIVIDUAL_TSP_DEBUG_CDAPI_TSP_DISC_PROG_IND_040 INDIVIDUAL_TSP_DEBUG_CDAPI_TSP_PROG_IND_PROGRESS_041 INDIVIDUAL_TSP_DEBUG_CDAPI_TSP_RELEASE_IND_042 INDIVIDUAL_TSP_DEBUG_CDAPI_TSP_RELEASE_IND_EXIT_043 INDIVIDUAL_TSP_DEBUG_CDAPI_TSP_RELEASE_COMP_044 INDIVIDUAL_TSP_DEBUG_CDAPI_TSP_RELEASE_COMP_CLEAR_045 INDIVIDUAL_TSP_DEBUG_SETUP_REQ_EXIT_046 INDIVIDUAL_TSP_DEBUG_SETUP_REQ_EXIT_047 INDIVIDUAL_TSP_DEBUG_SETUP_REQ_EXIT_048 INDIVIDUAL_TSP_DEBUG_TSP_SET_TRANSFER_INFO_049 INDIVIDUAL_TSP_DEBUG_TSP_CALL_VOICE_CUT_THROUGH_050 INDIVIDUAL_TSP_DEBUG_TSP_CALL_VOICE_CUT_THROUGH_051 INDIVIDUAL_TSP_DEBUG_TSP_CALL_VOICE_CUT_THROUGH_052 INDIVIDUAL_TSP_DEBUG_TSP_CALL_VOICE_CUT_THROUGH_053 INDIVIDUAL_TSP_DEBUG_TSP_MAIN_054 INDIVIDUAL_TSP_DEBUG_DO_GLOBAL_END_TO_END_DISC_055 INDIVIDUAL_TSP_DEBUG_TSP_CDAPI_MSG_DUMP_056 INDIVIDUAL_TSP_DEBUG_TSP_COT_TIMER_START_057 INDIVIDUAL_TSP_DEBUG_TSP_COT_TIMER_STOP_058 INDIVIDUAL_TSP_DEBUG_TSP_COT_RESULT_059
31
Debug Command Output on Cisco IOS Voice Gateways Voice Debug Concepts
Table 5
Value 60 61 62 63 64 65 66 67 68 I
Table 6
TSP Debug Function INDIVIDUAL_TSP_DEBUG_TSP_COT_DONE_060 INDIVIDUAL_TSP_DEBUG_TSP_COT_TIMEOUT_061 INDIVIDUAL_TSP_DEBUG_TSP_COT_REQ_062 INDIVIDUAL_TSP_DEBUG_CDAPI_TSP_COT_SETUP_ACK_063 INDIVIDUAL_TSP_DEBUG_CDAPI_TSP_RCV_COT_MSG_064 INDIVIDUAL_TSP_DEBUG_CDAPI_TSP_RCV_COT_MSG_065 INDIVIDUAL_TSP_DEBUG_TSP_CDAPI_PUT_CAUSE_IE_066 INDIVIDUAL_TSP_DEBUG_CDAPI_TSP_SETUP_ACK_067 INDIVIDUAL_TSP_DEBUG_CDAPI_TSP_RCV_MSG_068
Value 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
VTSP Debug Function INDIVIDUAL_VTSP_DEBUG_SETUP_REQ_PEND_DEFER_001 INDIVIDUAL_VTSP_DEBUG_SETUP_REQ_WAIT_PEND_SUCCESS_002 INDIVIDUAL_VTSP_DEBUG_SETUP_REQ_WAIT_PEND_FAIL_003 INDIVIDUAL_VTSP_DEBUG_TDM_HPM_COMPLETE_004 INDIVIDUAL_VTSP_DEBUG_TDM_HPM_COMPLETE_EXIT_005 INDIVIDUAL_VTSP_DEBUG_TDM_HPM_CHECK_006 INDIVIDUAL_VTSP_DEBUG_TDM_HPM_CHECK_EXIT_007 INDIVIDUAL_VTSP_DEBUG_GENERATE_DISC_008 INDIVIDUAL_VTSP_DEBUG_GENERATE_DISC_EXIT_009 INDIVIDUAL_VTSP_DEBUG_SETUP_IND_ACK_010 INDIVIDUAL_VTSP_DEBUG_SETUP_IND_ACK_EXIT_011 INDIVIDUAL_VTSP_DEBUG_PROCEEDING_012 INDIVIDUAL_VTSP_DEBUG_PRE_CON_DISCONNECT_013 INDIVIDUAL_VTSP_DEBUG_PRE_CON_DISCONNECT_EXIT_014 INDIVIDUAL_VTSP_DEBUG_SET_DIGIT_TIMEOUTS_015 INDIVIDUAL_VTSP_DEBUG_CONNECT_016 INDIVIDUAL_VTSP_DEBUG_LOOPBACK_017 INDIVIDUAL_VTSP_DEBUG_RING_NOAN_TIMER_018 INDIVIDUAL_VTSP_DEBUG_ALERT_CONNECT_019 INDIVIDUAL_VTSP_DEBUG_PRE_CON_DISC_REL_EXIT_020 INDIVIDUAL_VTSP_DEBUG_HOST_DISC_CLEANUP_021 INDIVIDUAL_VTSP_DEBUG_HOST_DISC_CLEANUP_EXIT_022 INDIVIDUAL_VTSP_DEBUG_DISCONNECT_023 INDIVIDUAL_VTSP_DEBUG_DISCONNECT_EXIT_024
32
Debug Command Output on Cisco IOS Voice Gateways Voice Debug Concepts
Table 6
Value 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
VTSP Debug Function INDIVIDUAL_VTSP_DEBUG_DISCONNECT_EXIT_025 INDIVIDUAL_VTSP_DEBUG_CONNECT_DIAL_026 INDIVIDUAL_VTSP_DEBUG_SETUP_PEND_DIAL_027 INDIVIDUAL_VTSP_DEBUG_PRE_DISC_CAUSE_028 INDIVIDUAL_VTSP_DEBUG_SETUP_PEND_CONNECT_029 INDIVIDUAL_VTSP_DEBUG_SETUP_REQ_PEND_FAIL_030 INDIVIDUAL_VTSP_DEBUG_SETUP_REQ_DISC_031 INDIVIDUAL_VTSP_DEBUG_RELEASE_TIMEOUT_032 INDIVIDUAL_VTSP_DEBUG_SETUP_PEND_PROCEEDING_EXIT_033 INDIVIDUAL_VTSP_DEBUG_SETUP_PEND_PROCEEDING_EXIT_034 INDIVIDUAL_VTSP_DEBUG_PEND_RELEASE_IND_035 INDIVIDUAL_VTSP_DEBUG_PEND_RELEASE_IND_EXIT_036 INDIVIDUAL_VTSP_DEBUG_DISCONNECT_NO_DSP_CHAN_037 INDIVIDUAL_VTSP_DEBUG_DISCONNECT_NO_DSP_CHAN_EXIT_038 INDIVIDUAL_VTSP_DEBUG_CALL_FEATURE_IND_039 INDIVIDUAL_VTSP_DEBUG_SETUP_PEND_PROGRESS_040 INDIVIDUAL_VTSP_DEBUG_SETUP_PEND_ALERT_041 INDIVIDUAL_VTSP_DEBUG_SETUP_PEND_ALERT_EXIT_042 INDIVIDUAL_VTSP_DEBUG_SETUP_PEND_FIRST_PROGRESS_043 INDIVIDUAL_VTSP_DEBUG_SETUP_PEND_FIRST_PROGRESS_EXIT_044 INDIVIDUAL_VTSP_DEBUG_SETUP_PEND_FIRST_PROGRESS_EXIT_045 INDIVIDUAL_VTSP_DEBUG_SETUP_PEND_PROG_PROCEEDING_046 INDIVIDUAL_VTSP_DEBUG_PROCEEDING_R2_PEND_DIAL_047 INDIVIDUAL_VTSP_DEBUG_ALERT_R2_PEND_DIAL_048 INDIVIDUAL_VTSP_DEBUG_CONN_R2_PEND_DIAL_049 INDIVIDUAL_VTSP_DEBUG_SETUP_R2_PEND_DIAL_050 INDIVIDUAL_VTSP_DEBUG_R2_PEND_DIAL_ALL_051 INDIVIDUAL_VTSP_DEBUG_INFO_IND_052 INDIVIDUAL_VTSP_DEBUG_ALERT_053 INDIVIDUAL_VTSP_DEBUG_ALERT_EXIT_054 INDIVIDUAL_VTSP_DEBUG_PROGRESS_055 INDIVIDUAL_VTSP_DEBUG_DISC_PROG_IND_056 INDIVIDUAL_VTSP_DEBUG_SETUP_PEND_DISC_PI_IND_057 INDIVIDUAL_VTSP_DEBUG_INFO_058 INDIVIDUAL_VTSP_DEBUG_FEATURE_059 INDIVIDUAL_VTSP_DEBUG_SETUP_PEND_ALERT_NO_TIMEOUT_060
33
Debug Command Output on Cisco IOS Voice Gateways Voice Debug Concepts
Table 6
Value 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96
VTSP Debug Function INDIVIDUAL_VTSP_DEBUG_SETUP_PEND_ALERT_NO_TIMEOUT_EXIT_061 INDIVIDUAL_VTSP_DEBUG_CALL_FEATURE_ENABLE_062 INDIVIDUAL_VTSP_DEBUG_XCCSM_COT_TEST_DONE_063 INDIVIDUAL_VTSP_DEBUG_XCCSM_COT_TEST_TIMEOUT_064 INDIVIDUAL_VTSP_DEBUG_XCCSM_COT_TEST_065 INDIVIDUAL_VTSP_DEBUG_CALL_FEATURE_066 INDIVIDUAL_VTSP_DEBUG_TCSM_COT_TEST_DONE_067 INDIVIDUAL_VTSP_DEBUG_TCSM_COT_TEST_TIMEOUT_068 INDIVIDUAL_VTSP_DEBUG_TCSM_ACT_COT_TEST_069 INDIVIDUAL_VTSP_DEBUG_PLAY_BUSY_TIMER_START_070 INDIVIDUAL_VTSP_DEBUG_PLAY_BUSY_TIMER_STOP_071 INDIVIDUAL_VTSP_DEBUG_RING_NOAN_TIMER_START_072 INDIVIDUAL_VTSP_DEBUG_RING_NOAN_TIMER_STOP_073 INDIVIDUAL_VTSP_DEBUG_VTSP_TIMER_074 INDIVIDUAL_VTSP_DEBUG_VTSP_TIMER_STOP_075 INDIVIDUAL_VTSP_DEBUG_VTSP_ALLOCATE_CDB_076 INDIVIDUAL_VTSP_DEBUG_VTSP_DO_CALL_SETUP_IND_077 INDIVIDUAL_VTSP_DEBUG_VTSP_DO_CALL_SETUP_IND_EXIT_078 INDIVIDUAL_VTSP_DEBUG_VTSP_REQUEST_CALL_079 INDIVIDUAL_VTSP_DEBUG_VTSP_REQUEST_CALL_EXIT_080 INDIVIDUAL_VTSP_DEBUG_VTSP_REALLOC_CDB_081 INDIVIDUAL_VTSP_DEBUG_VTSP_OG_CALL_REQ_EXIT_082 INDIVIDUAL_VTSP_DEBUG_VTSP_FREE_CDB_083 INDIVIDUAL_VTSP_DEBUG_TGRM_DISC_REL_084 INDIVIDUAL_VTSP_DEBUG_VTSP_CC_CALL_DISCONNECTED_085 INDIVIDUAL_VTSP_DEBUG_SIGO_BDROP_086 INDIVIDUAL_VTSP_DEBUG_SIGO_PRE_CON_DISCONNECT_087 INDIVIDUAL_VTSP_DEBUG_SIGO_PROCEEDING_088 INDIVIDUAL_VTSP_DEBUG_SIGO_GENERATE_DISC_089 INDIVIDUAL_VTSP_DEBUG_SIGO_ALERT_090 INDIVIDUAL_VTSP_DEBUG_SIGO_ALERT_CONNECT_091 INDIVIDUAL_VTSP_DEBUG_SIGO_SETUP_PEND_CONNECT_092 INDIVIDUAL_VTSP_DEBUG_DO_SIGO_CALL_SETUP_REQ_093 INDIVIDUAL_VTSP_DEBUG_DO_SIGO_CALL_SETUP_REQ_SESSION_094 INDIVIDUAL_VTSP_DEBUG_DSM_MEDIA_EVENT_CB_095 INDIVIDUAL_VTSP_DEBUG_DSM_PEER_EVENT_CB_096
34
Debug Command Output on Cisco IOS Voice Gateways Managing the Voice Call Debug Output
Table 6
Supported Commands
The voice debug commands that support the standardized header include the following:
debug crm debug fax dmsp debug fax fmsp debug fax foip debug fax mmoip aaa debug fax mspi debug fax mta debug mgcp all debug mgcp endpoint debug mgcp endptdb debug mgcp errors debug mgcp events debug mgcp gcfm debug mgcp inout debug mgcp media debug mgcp nas debug mgcp packets debug mgcp parser debug mgcp src debug mgcp state
35
Debug Command Output on Cisco IOS Voice Gateways Managing the Voice Call Debug Output
debug mgcp voipcac debug rtsp all debug rtsp api debug rtsp client debug rtsp error debug rtsp pmh debug rtsp session debug rtsp socket debug tgrm debug voip application vxml debug voip avlist debug voip ccapi debug voip dialpeer debug voip dsm debug voip dspapi debug voip hpi debug voip ivr all debug voip ivr applib debug voip ivr callsetup debug voip ivr digitcollect debug voip ivr dynamic debug voip ivr error debug voip ivr script debug voip ivr settlement debug voip ivr states debug voip ivr tclcommands debug voip profile fax debug voip profile help debug voip profile modem debug voip profile voice debug voip rawmsg debug voip tsp debug voip vtsp debug vtsp all debug vtsp dsp debug vtsp error debug vtsp event debug vtsp port
36
Debug Command Output on Cisco IOS Voice Gateways Managing the Voice Call Debug Output
debug vtsp rtp debug vtsp send-nse debug vtsp session debug vtsp stats debug vtsp vofr subframe debug vtsp tone
For detailed examples of these debug commands, see the Cisco IOS Debug Command Reference.
SUMMARY STEPS
1. 2. 3. 4. 5.
enable configure terminal voice call debug {full-guid | short-header} exit Run desired debug command.
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
Specifies the full GUID or short header for debugging a voice call in a multiple-call environment.
Example:
Router(config)# voice call debug full-guid
full-guidDisplays the GUID in a 16-byte header. When the no version of this command is input with the full-guid keyword, the short 6-byte version displays. This is the default. short-headerDisplays the CallEntry ID in the header without displaying the GUID or module-specific parameters.
37
Debug Command Output on Cisco IOS Voice Gateways Sample Output Examples for the Enhanced debug Commands
Command or Action
Step 4
exit
Example:
Router(config)# exit
Step 5
The voice debug commands that support the standardized header and detailed examples of the individual debug commands are in the Cisco IOS Debug Command Reference, Release 12.3.
Full GUID Header: Example, page 38 Short Header: Example, page 39 Setup and Teardown: Example, page 39
1 denotes the CallEntry ID. 0E2C8A90-BC00-11D5-8002-DACCFDCEF87D is the GUID. VTSP:(0:D):0:0:4385 is the module and its dependent parameters. In this case, the module is VTSP, the port number is 0:D, the channel number is 0, the DSP slot is 0, and the DSP channel number is 4385. vtsp_insert_cdb: is the function name.
-1 indicates that the CallEntry ID for the CCAPI module is unavailable. xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx indicates that the GUID is unavailable. CCAPI is the module. cc_incr_if_call_volume: is the function name.
38
Debug Command Output on Cisco IOS Voice Gateways Sample Output Examples for the Enhanced debug Commands
In the first line, the CallEntry ID is not available, and in the following line the CallEntry ID is 9. The remainder of the line displays the function name.
In the following lines, the CCAPI receives the call setup. The called number is 34999, and the calling number is 55555. The calling number matches dial peer 10002.
*Mar *Mar *Mar *Mar *Mar *Mar *Mar *Mar *Mar *Mar *Mar *Mar *Mar *Mar *Mar *Mar *Mar *Mar 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 15:35:53.592: //-1/xxxxxxxxxxxx/CCAPI/cc_api_display_ie_subfields: 15:35:53.592: cc_api_call_setup_ind: 15:35:53.592: cisco-username= 15:35:53.596: ----- ccCallInfo IE subfields ----15:35:53.596: cisco-ani=55555 15:35:53.596: cisco-anitype=0 15:35:53.596: cisco-aniplan=0 15:35:53.596: cisco-anipi=0 15:35:53.596: cisco-anisi=0 15:35:53.596: dest=34999 15:35:53.596: cisco-desttype=0 15:35:53.596: cisco-destplan=0 15:35:53.596: cisco-rdn= 15:35:53.596: cisco-rdntype=-1 15:35:53.596: cisco-rdnplan=-1 15:35:53.596: cisco-rdnpi=-1 15:35:53.596: cisco-rdnsi=-1 15:35:53.596: cisco-redirectreason=-1
39
Debug Command Output on Cisco IOS Voice Gateways Sample Output Examples for the Enhanced debug Commands
*Mar 1 15:35:53.596: //-1/xxxxxxxxxxxx/CCAPI/cc_api_call_setup_ind: (vdbPtr=0x637EC1E0, callInfo={called=34999,called_oct3=0x80,calling=55555,calling_oct3=0x80,calling_oct3a=0x0, calling_xlated=false,subscriber_type_str=RegularLine,fdest=1,peer_tag=10002, prog_ind=0,callingIE_present 1, src_route_label=, tgt_route_label= clid_transparent=0},callID=0x637B4278) *Mar 1 15:35:53.596: //-1/xxxxxxxxxxxx/CCAPI/cc_api_call_setup_ind: *Mar 1 15:35:53.596: //-1/xxxxxxxxxxxx/CCAPI/cc_api_call_setup_ind: type 13 , prot 0 *Mar 1 15:35:53.596: //-1/xxxxxxxxxxxx/CCAPI/ccCheckClipClir: *Mar 1 15:35:53.596: ccCheckClipClir: calling number is: "55555", calling oct3a is: 0x0 *Mar 1 15:35:53.596: //-1/xxxxxxxxxxxx/CCAPI/ccCheckClipClir: *Mar 1 15:35:53.596: Calling Party number is User Provided *Mar 1 15:35:53.596: //-1/xxxxxxxxxxxx/CCAPI/ccCheckClipClir: *Mar 1 15:35:53.596: Leaving ccCheckClipClir calling number is: "55555" calling oct3 is: 0x80 calling oct3a is: 0x0
In the next line, 45F2AAE28044 is the GUID. The tag 10002 entry shows that the incoming dial peer matched the CallEntry ID.
*Mar 1 15:35:53.608: //44/45F2AAE28044/CCAPI/cc_process_call_setup_ind: >>>>CCAPI handed cid 44 with tag 10002 to app "DEFAULT" *Mar 1 15:35:53.608: //44/xxxxxxxxxxxx/SSAPP:-1:-1/sess_appl: ev(24=CC_EV_CALL_SETUP_IND), cid(44), disp(0) *Mar 1 15:35:53.608: //44/xxxxxxxxxxxx/SSAPP:-1:-1/sess_appl: ev(SSA_EV_CALL_SETUP_IND), cid(44), disp(0)
40
Debug Command Output on Cisco IOS Voice Gateways Sample Output Examples for the Enhanced debug Commands
*Mar
1 15:35:53.608: //44/xxxxxxxxxxxx/SSAPP:-1:-1/ssaCallSetupInd:
The next line shows CallEntry ID in hexadecimal form, 0x2C (44 in decimal). The CallEntry ID and GUID numbers have been identified. The incoming dial peer is 10002.
*Mar 1 15:35:53.608: //44/xxxxxxxxxxxx/CCAPI/ccCallSetContext: (callID=0x2C, context=0x634A430C) *Mar 1 15:35:53.608: //44/45F2AAE28044/SSAPP:10002:-1/ssaCallSetupInd: cid(44), st(SSA_CS_MAPPING),oldst(0), ev(24)ev->e.evCallSetupInd.nCallInfo.finalDestFlag = 1 *Mar 1 15:35:53.608: //44/45F2AAE28044/SSAPP:10002:-1/ssaCallSetupInd: src route label=, tgt route label= tg_label_flag 0x0 *Mar 1 15:35:53.608: //44/45F2AAE28044/SSAPP:10002:-1/ssaCallSetupInd: finalDest cllng(55555), clled(34999) tgt_route_label()tg_label_flag 0x0 *Mar 1 15:35:53.612: //44/45F2AAE28044/SSAPP:10002:-1/ssaCallSetupInd: cid(44), st(SSA_CS_CALL_SETTING),oldst(0), ev(24)dpMatchPeersMoreArg result= 0
For CallEntry ID 44, two dial-peer tags (10001 and 20002) were matched with called number 34999.
*Mar 1 15:35:53.612: //44/45F2AAE28044/SSAPP:10002:-1/ssaDebugPeers: ssaSetupPeer cid(44) peer list: tag(10001) called number (34999) tag(20002) called number (34999) *Mar 1 15:35:53.612: //44/45F2AAE28044/SSAPP:10002:-1/ssaSetupPeer: dialpeer tags in rotary= 10001 20002
The next line shows that five digits were matched for this dial peer and no prefix was added. The encapType (2) entry indicates a VoIP call.
*Mar 1 15:35:53.612: //44/45F2AAE28044/SSAPP:10002:-1/ssaSetupPeer: cid(44), destPat(34999), matched(5), prefix(), peer(637B0984), peer->encapType (2) *Mar 1 15:35:53.612: //-1/xxxxxxxxxxxx/CCAPI/cc_can_gateway: Call legs: In=6, Out=1
The next line shows the voice gateway sending out a call-proceeding message to the incoming call leg with a progress indicator of 0x0.
*Mar 1 15:35:53.612: //44/xxxxxxxxxxxx/CCAPI/ccCallProceeding: (callID=0x2C, prog_ind=0x0)
The next line shows the voice gateway sending out the call-setup request to the outgoing call leg. The dial peer is 10001 with the incoming CallEntry ID being 0x2C.
*Mar 1 15:35:53.612: //44/xxxxxxxxxxxx/CCAPI/ccCallSetupRequest: (Inbound call= 0x2C, outbound peer =10001, dest=, params=0x63085D80 mode=0, *callID=0x63086314, prog_ind = 0callingIE_present 1) *Mar *Mar *Mar *Mar *Mar 1 1 1 1 15:35:53.612: 15:35:53.612: 15:35:53.612: 15:35:53.616: //44/45F2AAE28044/CCAPI/ccCallSetupRequest: ccCallSetupRequest numbering_type 0x80 //44/45F2AAE28044/CCAPI/ccCallSetupRequest: ccCallSetupRequest: calling number is:55555
*Mar 1 15:35:53.616: //-1/xxxxxxxxxxxx/CCAPI/ccCheckClipClir: *Mar 1 15:35:53.616: ccCheckClipClir: calling number is: "55555", calling oct3a is: 0x0 *Mar 1 15:35:53.616: //-1/xxxxxxxxxxxx/CCAPI/ccCheckClipClir: *Mar 1 15:35:53.616: Calling Party number is User Provided *Mar 1 15:35:53.616: //-1/xxxxxxxxxxxx/CCAPI/ccCheckClipClir: *Mar 1 15:35:53.616: Leaving ccCheckClipClir calling number is: "55555" calling oct3 is: 0x80 calling oct3a is: 0x0 *Mar 1 15:35:53.616: //44/45F2AAE28044/CCAPI/ccCallSetupRequest: after ccCheckClipClir calling oct3a is:0x0
41
Debug Command Output on Cisco IOS Voice Gateways Sample Output Examples for the Enhanced debug Commands
In the next line, outgoing CallEntry ID 45 is bound to the same GUID 45F2AAE28044.
*Mar 1 15:35:53.620: //45/45F2AAE28044/CCAPI/cc_insert_call_entry: not incoming entry *Mar 1 15:35:53.620: //45/45F2AAE28044/CCAPI/cc_insert_call_entry: entry's incoming FALSE. *Mar 1 15:35:53.620: //45/45F2AAE28044/CCAPI/cc_insert_call_entry: is_incomingis FALSE *Mar 1 15:35:53.624: //44/xxxxxxxxxxxx/CCAPI/ccSaveDialpeerTag: (callID=0x2C, dialpeer_tag=10001) *Mar 1 15:35:53.624: //45/xxxxxxxxxxxx/CCAPI/ccCallSetContext: (callID=0x2D, context=0x634A537C) 0x2D (decimal 45 is the second call leg ID). *Mar 1 15:35:53.624: //44/xxxxxxxxxxxx/CCAPI/ccCallReportDigits: (callID=0x2C,enable=0x0)
The next line shows that the voice gateway informs the incoming call leg that digits were forwarded.
*Mar 1 15:35:53.624: //44/xxxxxxxxxxxx/CCAPI/cc_api_call_report_digits_done: (vdbPtr=0x637EC1E0, callID=0x2C, disp=0) *Mar 1 15:35:53.624: //44/xxxxxxxxxxxx/SSAPP:-1:-1/sess_appl: ev(54=CC_EV_CALL_REPORT_DIGITS_DONE), cid(44), disp(0) *Mar 1 15:35:53.624: //44/45F2AAE28044/SS
42
Debug Command Output on Cisco IOS Voice Gateways Sample Output Examples for the Enhanced debug Commands
Router#APP:10002:-1/ssaTraceSct: cid(44)st(SSA_CS_CALL_SETTING)ev(SSA_EV_CALL_REPORT_DIGITS_DONE) oldst(SSA_CS_MAPPING)cfid(-1)csize(0)in(1)fDest(1) *Mar 1 15:35:53.624: //44/45F2AAE28044/SSAPP:10002:-1/ssaTraceSct: -cid2(45)st2(SSA_CS_CALL_SETTING)oldst2(SSA_CS_MAPPING) *Mar 1 15:35:53.624: //44/45F2AAE28044/SSAPP:10002:-1/ssaDebugPeers: ssaReportDigitsDone cid(44) peer list: tag(20002) called number (34999) *Mar 1 15:35:53.624: //44/45F2AAE28044/SSAPP:10002:-1/ssaReportDigitsDone: callid=44 Reporting disabled. *Mar 1 15:35:53.628: //-1/xxxxxxxxxxxx/CCAPI/cc_api_supported_data: data_mode=0x10082 *Mar 1 15:35:53.628: //45/xxxxxxxxxxxx/CCAPI/cc_api_get_ic_leg_obtained_numbers: callID=0x2D
The next two lines show the IP address of the terminating gateway and indicate that the terminating gateway is reached through Ethernet port 0/0.
*Mar 1 15:35:53.628: //-1/xxxxxxxxxxxx/CCAPI/cc_incr_if_call_volume: remote IP is 172.31.85.111 *Mar 1 15:35:53.632: //-1/xxxxxxxxxxxx/CCAPI/cc_incr_if_call_volume: hwidb is Ethernet0/0 *Mar 1 15:35:53.632: //-1/xxxxxxxxxxxx/CCAPI/cc_incr_if_call_volume: create entry in list: 1 *Mar 1 15:35:53.636: //45/xxxxxxxxxxxx/CCAPI/ccTDUtilGetInstanceCount: For tagID[1] of callID[45] *Mar 1 15:35:53.636: //45/45F2AAE28044/CCAPI/ccTDPvtProfileTableObjectAccessManager: No profileTable set for callID[45] *Mar 1 15:35:53.636: //45/xxxxxxxxxxxx/CCAPI/ccTDUtilGetInstanceCount: For tagID[2] of callID[45] *Mar 1 15:35:53.636: //45/45F2AAE28044/CCAPI/ccTDPvtProfileTableObjectAccessManager: No profileTable set for callID[45]
The next line shows that the voice gateway received a call proceeding message from the terminating gateway. The following line shows that the voice gateway received a call alert from the terminating gateway.
*Mar 1 15:35:53.740: //45/xxxxxxxxxxxx/CCAPI/cc_api_call_proceeding: (vdbPtr=0x62EC61A4, callID=0x2D, prog_ind=0x0) *Mar 1 15:35:53.740: //45/xxxxxxxxxxxx/CCAPI/cc_api_call_alert: (vdbPtr=0x62EC61A4, callID=0x2D, prog_ind=0x0, sig_ind=0x1) *Mar 1 15:35:53.744: //45/xxxxxxxxxxxx/SSAPP:-1:-1/sess_appl: ev(21=CC_EV_CALL_PROCEEDING), cid(45), disp(0) *Mar 1 15:35:53.744: //45/45F2AAE28044/SSAPP:0:-1/ssaTraceSct: cid(45)st(SSA_CS_CALL_SETTING)ev(SSA_EV_CALL_PROCEEDING) oldst(SSA_CS_MAPPING)cfid(-1)csize(0)in(0)fDest(0) *Mar 1 15:35:53.744: //45/45F2AAE28044/SSAPP:0:-1/ssaTraceSct: -cid2(44)st2(SSA_CS_CALL_SETTING)oldst2(SSA_CS_CALL_SETTING) *Mar 1 15:35:53.744: //45/45F2AAE28044/SSAPP:0:-1/ssaCallProc: *Mar 1 15:35:53.744: //44/xxxxxxxxxxxx/CCAPI/ccGetDialpeerTag: (callID=0x2C) *Mar 1 15:35:53.744: //45/45F2AAE28044/SSAPP:0:-1/ssaIgnore: cid(45), st(SSA_CS_CALL_SETTING),oldst(1), ev(21) *Mar 1 15:35:53.744: //45/xxxxxxxxxxxx/SSAPP:-1:-1/sess_appl: ev(7=CC_EV_CALL_ALERT), cid(45), disp(0) *Mar 1 15:35:53.744: //45/45F2AAE28044/SSAPP:0:-1/ssaTraceSct: cid(45)st(SSA_CS_CALL_SETTING)ev(SSA_EV_CALL_ALERT)oldst(SSA_CS_CALL_SETTING)cfid(-1)csize (0)in(0)fDest(0) *Mar 1 15:35:53.744: //45/45F2AAE28044/SSAPP:0:-1/ssaTraceSct: -cid2(44)st2(SSA_CS_CALL_SETTING)oldst2(SSA_CS_CALL_SETTING) *Mar 1 15:35:53.744: //44/45F2AAE28044/SSAPP:10002:-1/ssaAlert: *Mar 1 15:35:53.744: //44/xxxxxxxxxxxx/CCAPI/ccGetDialpeerTag: (callID=0x2C) Router#
43
Debug Command Output on Cisco IOS Voice Gateways Sample Output Examples for the Enhanced debug Commands
In the following line, the voice gateway forwarded a call alert to the originating gateway.
*Mar 1 15:35:53.744: //44/xxxxxxxxxxxx/CCAPI/ccCallAlert: (callID=0x2C, prog_ind=0x0, sig_ind=0x1) Router#
The voice gateway receives a connect message from the terminating gateway.
*Mar 1 15:36:05.016: //45/xxxxxxxxxxxx/CCAPI/cc_api_call_connected: (vdbPtr=0x62EC61A4, callID=0x2D), prog_ind = 0 *Mar 1 15:36:05.016: //45/45F2AAE28044/CCAPI/cc_api_call_connected: setting callEntry->connected to TRUE
The next line shows that the call accounting starts. The leg_type=False message means this is for an outgoing call. The line that follows shows that AAA accounting is not configured.
*Mar 1 15:36:05.016: //45/45F2AAE28044/CCAPI/cc_api_call_connected: calling accounting start for callID=45 leg_type=0 *Mar 1 15:36:05.020: //45/xxxxxxxxxxxx/CCAPI/ccCallSetAAA_Accounting: callID=0x2D, accounting=0 *Mar 1 15:36:05.020: //45/xxxxxxxxxxxx/SSAPP:-1:-1/sess_appl: ev(8=CC_EV_CALL_CONNECTED), cid(45), disp(0) *Mar 1 15:36:05.020: //45/45F2AAE28044/SSAPP:0:-1/ssaTraceSct: cid(45)st(SSA_CS_ALERT_RCVD)ev(SSA_EV_CALL_CONNECTED) oldst(SSA_CS_CALL_SETTING)cfid(-1)csize(0)in(0)fDest(0) *Mar 1 15:36:05.020: //45/45F2AAE28044/SSAPP:0:-1/ssaTraceSct: -cid2(44)st2(SSA_CS_ALERT_RCVD)oldst2(SSA_CS_CALL_SETTING) *Mar 1 15:36:05.020: //45/45F2AAE28044/SSAPP:0:-1/ssaConnect: *Mar 1 15:36:05.020: //44/xxxxxxxxxxxx/CCAPI/ccGetDialpeerTag: (callID=0x2C)
The next lines show a conference being set up between the two call legs 0x2C and 0x2D. Bridge complete messages are sent to both the terminating and originating gateways.
*Mar 1 15:36:05.020: //44/xxxxxxxxxxxx/CCAPI/ccConferenceCreate: (confID=0x63086424, callID1=0x2C, callID2=0x2D, tag=0x0) *Mar 1 15:36:05.020: //45/xxxxxxxxxxxx/CCAPI/cc_api_bridge_done: (confID=0x15,srcIF=0x62EC61A4, srcCallID=0x2D, dstCallID=0x2C, disposition=0, tag=0x0) *Mar 1 15:36:05.024: //44/xxxxxxxxxxxx/CCAPI/cc_api_bridge_done: (confID=0x15,srcIF=0x637EC1E0, srcCallID=0x2C, dstCallID=0x2D, disposition=0, tag=0x0)
Here, the voice gateway sets up negotiating capability with the originating telephony leg.
*Mar 1 15:36:05.024: //44/xxxxxxxxxxxx/CCAPI/cc_api_caps_ind: (dstVdbPtr=0x62EC61A4, dstCallId=0x2D, srcCallId=0x2C, caps={codec=0x2887F, fax_rate=0xBF, vad=0x3, modem=0x2 codec_bytes=0, signal_type=3}) *Mar 1 15:36:05.024: //44/xxxxxxxxxxxx/CCAPI/cc_api_caps_ind: (Playout: mode 0, initial 60,min 40, max 300) *Mar 1 15:36:05.024: //44/xxxxxxxxxxxx/SSAPP:-1:-1/sess_appl: ev(29=CC_EV_CONF_CREATE_DONE), cid(44), disp(0) *Mar 1 15:36:05.024: //44/45F2AAE28044/SSAPP:10002:21/ssaTraceSct: cid(44)st(SSA_CS_CONFERENCING)ev(SSA_EV_CONF_CREATE_DONE) oldst(SSA_CS_CALL_SETTING)cfid(21)csize(2)in(1)fDest(1) *Mar 1 15:36:05.024: //44/45F2AAE28044/SSAPP:10002:21/ssaTraceSct: -cid2(45)st2(SSA_CS_CONFERENCING)oldst2(SSA_CS_ALERT_RCVD) *Mar 1 15:36:05.024: //44/45F2AAE28044/SSAPP:10002:21/ssaConfCreateDone: *Mar 1 15:36:05.024: //44/xxxxxxxxxxxx/CCAPI/ccCallConnect: (callID=0x2C), prog_ind = 0 *Mar 1 15:36:05.024: //44/45F2AAE28044/CCAPI/ccCallConnect: setting callEntry->connected to TRUE
44
Debug Command Output on Cisco IOS Voice Gateways Sample Output Examples for the Enhanced debug Commands
*Mar 1 15:36:05.024: //44/45F2AAE28044/SSAPP:10002:21/ssaDebugPeers: ssaFlushPeerTagQueue cid(44) peer list: tag(20002) called number (34999) *Mar 1 15:36:05.028: //-1/xxxxxxxxxxxx/CCAPI/cc_process_notify_bridge_done: (event=0x63067FC0)
The voice gateway sets up negotiating capability with the terminating VoIP leg.
*Mar 1 15:36:05.028: //45/xxxxxxxxxxxx/CCAPI/cc_api_caps_ind: (dstVdbPtr=0x637EC1E0, dstCallId=0x2C, srcCallId=0x2D, caps={codec=0x4, fax_rate=0x2, vad=0x2, modem=0x0 codec_bytes=20, signal_type=2}) *Mar 1 15:36:05.028: //45/xxxxxxxxxxxx/CCAPI/cc_api_caps_ind: (Playout: mode 0, initial 60,min 40, max 300)
45
Debug Command Output on Cisco IOS Voice Gateways Sample Output Examples for the Enhanced debug Commands
*Mar 1 15:36:14.476: //-1/xxxxxxxxxxxx/CCAPI/cc_handle_periodic_timer: Calling the callback, ccTimerctx - 0x628B6330 *Mar 1 15:36:14.476: //-1/xxxxxxxxxxxx/CCAPI/ccTimerStart: ccTimerctx - 0x628B6330 Router# Router#!call hung up The user at the terminating gateway hangs up the call. Router#
The voice gateway receives a disconnect message from the terminating gateway. The cause code is 0x10 which is normal call clearing.
*Mar 1 15:36:22.916: //45/xxxxxxxxxxxx/CCAPI/cc_api_call_disconnected: (vdbPtr= 0x62EC61A4, callID=0x2D, cause=0x10) *Mar 1 15:36:22.920: //45/xxxxxxxxxxxx/SSAPP:-1:-1/sess_appl: ev(11=CC_EV_CALL_DISCONNECTED), cid(45), disp(0) *Mar 1 15:36:22.920: //45/45F2AAE28044/SSAPP:0:21/ssaTraceSct: cid(45)st(SSA_CS_ACTIVE)ev(SSA_EV_CALL_DISCONNECTED) oldst(SSA_CS_ALERT_RCVD)cfid(21)csize(2)in(0)fDest(0) *Mar 1 15:36:22.920: //45/45F2AAE28044/SSAPP:0:21/ssaTraceSct: -cid2(44)st2(SSA_CS_ACTIVE)oldst2(SSA_CS_ACTIVE) *Mar 1 15:36:22.920: ssa: Disconnected cid(45) state(5) cause(0x10)
The voice gateway begins tearing down the conference and dropping the bridge.
*Mar 1 15:36:22.920: //-1/xxxxxxxxxxxx/CCAPI/ccConferenceDestroy: (confID=0x15, tag=0x0) *Mar 1 15:36:22.920: //45/xxxxxxxxxxxx/CCAPI/cc_api_bridge_drop_done: (confID=0x15, srcIF=0x62EC61A4, srcCallID=0x2D, dstCallID=0x2C, disposition=0 tag=0x0) *Mar 1 15:36:22.920: //44/xxxxxxxxxxxx/CCAPI/cc_api_bridge_drop_done: (confID=0x15, srcIF=0x637EC1E0, srcCallID=0x2C, dstCallID=0x2D, disposition=0 tag=0x0) *Mar 1 15:36:22.924: //44/xxxxxxxxxxxx/SSAPP:-1:-1/sess_appl: ev(30=CC_EV_CONF_DESTROY_DONE), cid(44), disp(0) *Mar 1 15:36:22.924: //44/45F2AAE28044/SSAPP:10002:21/ssaTraceSct: cid(44)st(SSA_CS_CONF_DESTROYING)ev(SSA_EV_CONF_DESTROY_DONE) oldst(SSA_CS_ACTIVE)cfid(21)csize(2)in(1)fDest(1) *Mar 1 15:36:22.924: //44/45F2AAE28044/SSAPP:10002:21/ssaTraceSct: -cid2(45)st2 (SSA_CS_CONF_DESTROYING)oldst2(SSA_CS_ACTIVE) *Mar 1 15:36:22.924: //45/45F2AAE28044/SSAPP:0:-1/ssaConfDestroyDone: *Mar 1 15:36:22.924: //44/xxxxxxxxxxxx/CCAPI/ccCallDisconnect: (callID=0x2C, cause=0x10 tag=0x0)
The voice gateway stops call accounting on the incoming call, indicated by the leg_type=True message. The cause code is then set for the originating leg.
*Mar 1 15:36:22.924: //44/45F2AAE28044/CCAPI/ccCallDisconnect: calling accounting start for callID=44 leg_type=1 *Mar 1 15:36:22.924: //44/45F2AAE28044/CCAPI/ccCallDisconnect: existing_cause = 0x0, new_cause = 0x10 *Mar 1 15:36:22.924: //44/xxxxxxxxxxxx/CCAPI/cc_api_get_transfer_info: (callID=0x2C) *Mar 1 15:36:22.924: //45/xxxxxxxxxxxx/CCAPI/ccCallDisconnect: (callID=0x2D, cause=0x10 tag=0x0)
The voice gateway stops call accounting for the outgoing call, indicated by the leg_type=False message. The cause code is verified for the terminating leg.
*Mar 1 15:36:22.924: //45/45F2AAE28044/CCAPI/ccCallDisconnect: calling accounting start for callID=45 leg_type=0 *Mar 1 15:36:22.924: //45/45F2AAE28044/CCAPI/ccCallDisconnect: existing_cause = 0x10, new_cause = 0x10 *Mar 1 15:36:22.924: //45/45F2AAE28044/CCAPI/ccCallDisconnect: using the existing_cause 0x10 *Mar 1 15:36:22.928: //45/xxxxxxxxxxxx/CCAPI/cc_api_get_transfer_info: (callID=0x2D) *Mar 1 15:36:22.932: //-1/xxxxxxxxxxxx/CCAPI/cc_api_icpif: expect factor = 0 *Mar 1 15:36:22.932: //-1/xxxxxxxxxxxx/CCAPI/g113_calculate_impairment: (delay=79, loss=0), Io=0 Iq=0 Idte=0 Idd=0 Ie=10 Itot=10
46
Debug Command Output on Cisco IOS Voice Gateways Sample Output Examples for the Enhanced debug Commands
*Mar 1 15:36:22.932: //-1/xxxxxxxxxxxx/CCAPI/cc_decr_if_call_volume: the remote IP is 171.69.85.111 *Mar 1 15:36:22.932: //-1/xxxxxxxxxxxx/CCAPI/cc_decr_if_call_volume: hwidb is Ethernet0/0 *Mar 1 15:36:22.932: //-1/xxxxxxxxxxxx/CCAPI/cc_decr_if_call_volume: reduce callnum of entry: 0, voip: 0, mmoip: 0 *Mar 1 15:36:22.932: //-1/xxxxxxxxxxxx/CCAPI/cc_decr_if_call_volume: remove anentry *Mar 1 15:36:22.932: //45/xxxxxxxxxxxx/CCAPI/cc_api_call_disconnect_done: (vdbPtr=0x62EC61A4, callID=0x2D, disp=0, tag=0x0) *Mar 1 15:36:22.932: //45/45F2AAE28044/CCAPI/ccTDPvtProfileTableObjectAccessManager: No profileTable set for callID[45] *Mar 1 15:36:22.936: //45/xxxxxxxxxxxx/CCAPI/ccTDUtilGetDataByRef: No tdObjectfound in profileTable for tagID[6] of callID[45] *Mar 1 15:36:22.936: //45/45F2AAE28044/CCAPI/cc_delete_call_entry: not incoming entry *Mar 1 15:36:22.936: //45/45F2AAE28044/CCAPI/cc_delete_call_entry: entry's incoming FALSE. *Mar 1 15:36:22.936: //45/45F2AAE28044/CCAPI/cc_delete_call_entry: is_incomingis FALSE *Mar 1 15:36:22.940: //45/xxxxxxxxxxxx/SSAPP:-1:-1/sess_appl: ev(12=CC_EV_CALL_DISCONNECT_DONE), cid(45), disp(0) *Mar 1 15:36:22.940: //45/45F2AAE28044/SSAPP:0:-1/ssaTraceSct: cid(45)st(SSA_CS _DISCONNECTING)ev(SSA_EV_CALL_DISCONNECT_DONE)oldst(SSA_CS_ACTIVE)cfid(-1)csize(2)in(0)fDe st(0) *Mar 1 15:36:22.940: //45/45F2AAE28044/SSAPP:0:-1/ssaTraceSct: -cid2(44)st2(SSA_CS_DISCONNECTING)oldst2(SSA_CS_CONF_DESTROYING) *Mar 1 15:36:22.940: //45/45F2AAE28044/SSAPP:0:-1/ssaDisconnectDone: *Mar 1 15:36:22.940: //45/45F2AAE28044/SSAPP:0:-1/ssaAAA_CheckAccounting: accounting generation enabled *Mar 1 15:36:22.940: //45/xxxxxxxxxxxx/CCAPI/ccCallSetAAA_Accounting: callID=0x2D, accounting=0 *Mar 1 15:36:22.944: //-1/xxxxxxxxxxxx/CCAPI/cc_decr_if_call_volume: not the VoIP or MMoIP *Mar 1 15:36:22.948: //44/xxxxxxxxxxxx/CCAPI/cc_api_call_disconnect_done: (vdbPtr=0x637EC1E0, callID=0x2C, disp=0, tag=0x0) *Mar 1 15:36:22.948: //44/45F2AAE28044/CCAPI/cc_delete_call_entry: ccFreeRawMsgInfo(0x6307595C) *Mar 1 15:36:22.948: //44/45F2AAE28044/CCAPI/cc_delete_call_entry: Decrement call volume counter 1 *Mar 1 15:36:22.948: //44/45F2AAE28044/CCAPI/cc_delete_call_entry: current call volume: 0 *Mar 1 15:36:22.948: //44/45F2AAE28044/CCAPI/cc_delete_call_entry: entry's incoming TRUE. *Mar 1 15:36:22.948: //44/45F2AAE28044/CCAPI/cc_delete_call_entry: is_incomingis TRUE *Mar 1 15:36:22.948: //44/45F2AAE28044/CCAPI/cc_delete_call_entry: Deleting profileTable[0x6380E11C] *Mar 1 15:36:22.948: //-1/xxxxxxxxxxxx/CCAPI/ccTDDestructTDHashProfileTab: Destructor Profile Table (0x6380E11C) *Mar 1 15:36:22.948: //-1/xxxxxxxxxxxx/CCAPI/ccTDDestructInstanceTDObject: tdObject[0x63401148] tagID[5] *Mar 1 15:36:22.948: //-1/xxxxxxxxxxxx/CCAPI/ccTDDestructInstanceTDObject: tdObject[0x638BC1AC] tagID[6] *Mar 1 15:36:22.956: //44/xxxxxxxxxxxx/SSAPP:-1:-1/sess_appl: ev(12=CC_EV_CALL_DISCONNECT_DONE), cid(44), disp(0) *Mar 1 15:36:22.956: //44/45F2AAE28044/SSAPP:10002:-1/ssaTraceSct: cid(44)st(SSA_CS_DISCONNECTING)ev(SSA_EV_CALL_DISCONNECT_DONE)oldst(SSA_CS_CONF_DESTROYING )cfid(-1)csize(1)in(1)fDest(1) Router# *Mar 1 15:36:22.956: //44/45F2AAE28044/SSAPP:10002:-1/ssaDisconnectDone:
47
Debug Command Output on Cisco IOS Voice Gateways Sample Output Examples for the Enhanced debug Commands
48
This chapter describes how to filter troubleshooting output. The methods for filtering this output are as follows:
Filtering Output from show and more Commands, page 49. Voice Call Debug Filtering on Cisco Voice Gateways, page 50 Voice Call Debug Filtering on H.323 Gatekeepers, page 69 SIP Debug Output Filtering Support, page 83 MGCP Call Centric Debug, page 96
For more information on the search and filter functions, see the Using the Command-Line Interface chapter in the Cisco IOS Configuration Fundamentals Configuration Guide, Release 12.3.
49
Filtering Troubleshooting Output Voice Call Debug Filtering on Cisco Voice Gateways
Restrictions for Voice Call Debug Filtering, page 50 Information About Voice Call Debug Filtering, page 50 Configuring the Voice Call Debug Filter, page 55 Output Examples for Voice Call Debug Filtering, page 62
End-to-end filtering between gateways is not supported. Filtering for CAS, IOS-AAA, IVR Version 1.0, media, and VoiceXML is not supported. Matching conditions cannot be set for specific signaling protocols. Matching conditions based on current DSP information are not supported.
Calling party number with prefix Called party number with prefix Carrier IDs Dial peers Local IP address Remote IP address Telephony interface or port Trunk groups
Note
50
Filtering Troubleshooting Output Voice Call Debug Filtering on Cisco Voice Gateways
The selected criteria are set on the gateway, and different sets of criteria can be stored. To better understand the voice call debug filtering on Cisco voice gateways, see the following sections:
Debug Commands that Support Voice Call Filtering, page 51 Generic Call Filter Module, page 52 Calling and Called Number Strings, page 53 Exact and Partial Matching, page 55 Media and Signaling Streams, page 55
debug cch323 h225 debug cch323 h245 debug cch323 preauth debug cch323 session debug ccsip all debug ccsip calls debug ccsip err debug ccsip events debug ccsip messages debug ccsip preauth debug ccsip states debug mgcp all debug mgcp endpoint debug mgcp endptdb debug mgcp errors debug mgcp events debug mgcp gcfm debug mgcp inout debug mgcp media debug mgcp src debug mgcp state debug mgcp voipcac debug voip aaa debug voip ccapi error debug voip ccapi inout debug voip ipipgw debug voip ivr all
51
Filtering Troubleshooting Output Voice Call Debug Filtering on Cisco Voice Gateways
debug voip ivr applib debug voip ivr callsetup debug voip ivr digitcollect debug voip ivr dynamic debug voip ivr error debug voip ivr script debug voip ivr settlement debug voip ivr states debug voip ivr tclcommands debug voip rawmsg debug vtsp all debug vtsp dsp debug vtsp error debug vtsp event debug vtsp port debug vtsp rtp debug vtsp send-nse debug vtsp session debug vtsp stats debug vtsp vofr subframe debug vtsp tone debug vtsp vofr
Note
See the Cisco IOS Debug Command Reference for detailed information about these debug commands.
CCAPI Dial peers H.323 ISDN IVR (Version 2.0 only) MGCP SIP SSAPP TGRAM
52
Filtering Troubleshooting Output Voice Call Debug Filtering on Cisco Voice Gateways
The filtering for these modules is managed by the generic call filter module (GCFM). The filtering conditions are configured in the GCFM, and then the individual modules are informed when a call has to be filtered. The GCFM coordinates between multiple modules to handle filtering conditions. All modules use the global unique identifier (GUID) to identify an individual call to GCFM. Each call is assigned a GUID and retains the same GUID throughout the entire network and over time. Gateway information and time stamp are embedded in the GUID. GUIDs identify an individual call among the multiple filtered-out calls so that the call can be isolated. For more information about GUIDs and the debug header, see the Voice Debug Concepts section on page 17. Activity in the GCFM can be traced using the debug call filter detail and debug call filter inout commands. See the Cisco IOS Debug Command Reference for more information about these debug commands.
Symbol . []
Description Indicates a single-digit placeholder. For example, 555.... matches any dialed string beginning with 555, plus at least four additional digits. Indicates a range of digits. A consecutive range is indicated with a hyphen (-); for example, [5-7]. A nonconsecutive range is indicated with a comma (,); for example, [5,8]. Hyphens and commas can be used in combination; for example, [5-7,9].
Note
() ? % + T
Indicates a pattern; for example, 408(555). It is used in conjunction with the symbol ?, %, or +. Indicates that the preceding digit occurred zero or one time. Enter ctrl-v before entering ? from your keyboard. Indicates that the preceding digit occurred zero or more times. This functions the same as the * used in regular expression. Indicates that the preceding digit occurred one or more times. Indicates the interdigit timeout. The voice gateway pauses to collect additional dialed digits.
Note
The period (.) is the only wildcard character that is supported for dial strings that are configured using the answer-address or incoming called-number command.
53
Filtering Troubleshooting Output Voice Call Debug Filtering on Cisco Voice Gateways
Table 8 shows some examples of how these wildcard symbols are applied to the calling and called number strings and the dial string that results when dial string 4085550199 is matched to the calling or called number. The wildcard symbols follow regular expression rules.
Table 8 Number Matching Examples Using Wildcard Symbols
408555, followed by one or more wildcard digits. 0199 This pattern implies that the string must contain at least seven digits starting with 408555. 408555, followed by zero or more wildcard digits. 0199 This pattern implies that the string must contain at least 408555. 40855, followed by 5 repeated one or more times. 0199 40855, followed by 5 repeated zero or more times. 50199 Any explicitly matching digit before the % symbol is not stripped off. 40855, followed by 5 repeated zero or one time. 50199 Any explicitly matching digit before the ? symbol is not stripped off. 40855, followed by 5, 6, or 7, plus any digit repeated one or more times. 40855, followed by 5, 6, or 7, plus any digit repeated zero or more times. 50199 50199
408555.%
408555+ 408555%
408555?
40855, followed by 5, 6, or 7 repeated one or more 50199 times, followed by 0199. 408, followed by 555, which may repeat one or more times, followed by 0199. 5550199
1. These examples apply only to one-stage dialing, where DID is enabled on the inbound POTS dial peer. If the voice gateway is using two-stage dialing and collecting digits one at a time as dialed, then the call is routed immediately after a dial peer is matched and any subsequent dialed digits are lost.
In addition to wildcard characters, the following symbols can be used in the calling and called number strings:
Asterisk (*) and pound sign (#)These symbols on standard touchtone dial pads can be used anywhere in the pattern. They can be used as the leading character (for example, *650), except on the Cisco 3600 series. Dollar sign ($)Disables variable-length matching. It must be used at the end of the dial string.
54
Filtering Troubleshooting Output Voice Call Debug Filtering on Cisco Voice Gateways
Exact matchAll related debug output is filtered until all conditions in the match list are explicitly met. This is the best choice for most situations because the output is the most concise. Partial matchNo related debug output is filtered until there is a single explicit match failure. As long as zero or more conditions are met, debug output is not filtered. This choice is useful in debugging call startup problems like digit collection, but is not ideal for many situations because of the large amount of debug output that might be generated before matches explicitly fail.
Configuring Call-Specific Conditions, page 55 (required) Enabling Debug for the Set Filtering Conditions, page 59 (required)
SUMMARY STEPS
1. 2. 3. 4. 5. 6. 7. 8. 9.
enable configure terminal call filter match-list number voice incoming calling-number string incoming called-number string incoming secondary-called-number string incoming port string incoming signaling {local | remote} ipv4 ip_address incoming media {local | remote} ipv4 ip_address
55
Filtering Troubleshooting Output Voice Call Debug Filtering on Cisco Voice Gateways
10. incoming dialpeer tag 11. source carrier-id string 12. source trunk-group-label group-number 13. outgoing calling-number string 14. outgoing called-number string 15. outgoing secondary-called-number string 16. outgoing port string 17. outgoing signaling {local | remote} ipv4 ip_address 18. outgoing media {local | remote} ipv4 ip_address 19. outgoing dialpeer tag 20. target carrier-id string 21. target trunk-group-label group-number 22. end
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
Enters call filter match list configuration mode to define the filter conditions.
Note
Example:
Router(config)# call filter match-list 1 voice
numberNumeric label that uniquely identifies the match list. Range is 1 to 16. At least one of the following optional parameters (Step 4 to Step 21) for call filtering must be configured.
Step 4
Example:
Router(conf-call-filter-mlist)# incoming calling-number 408555
stringNumeric string that identifies all or part of the incoming calling number.
Step 5
Example:
Router(conf-call-filter-mlist)# incoming called-number 408555
stringNumeric string that identifies all or part of the incoming called number.
56
Filtering Troubleshooting Output Voice Call Debug Filtering on Cisco Voice Gateways
Command or Action
Step 6
incoming secondary-called-number string
Example:
Router(conf-call-filter-mlist)# incoming secondary-called-number 408555
The secondary called number is the number from the second stage in a two-stage scenario. stringNumeric string that identifies all or part of the incoming secondary called number. The telephony interfaces are defined for calls from the PSTN. The string value varies depending on the voice gateway. stringIdentifies the incoming port number. This value is platform-specific and varies between platforms. localLocal voice gateway remoteRemote IP device ip-addressIP address of the local voice gateway.
Step 7
Example:
Router(conf-call-filter-mlist)# incoming port 1/0/0
Step 8
Example:
Router(conf-call-filter-mlist)# incoming signaling local ipv4 192.168.10.255
Step 9
localLocal voice gateway remoteRemote IP device ip-addressIP address of the local voice gateway. tagDigits that define a specific dial peer. Valid entries are 1 to 2147483647.
Example:
Router(conf-call-filter-mlist)# incoming media local ipv4 192.168.10.255
Step 10
Example:
Router(conf-call-filter-mlist)# incoming dialpeer 14
Step 11
Example:
Router(conf-call-filter-mlist)# source carrier-id 4321
Step 12
Example:
Router(conf-call-filter-mlist)# source trunk-group-label 20
Step 13
Example:
Router(conf-call-filter-mlist)# outgoing calling-number 408525
This number goes out after number translation and expansion are complete. stringNumeric string that identifies all or part of the outgoing calling number.
57
Filtering Troubleshooting Output Voice Call Debug Filtering on Cisco Voice Gateways
Command or Action
Step 14
outgoing called-number string
Example:
Router(conf-call-filter-mlist)# outgoing called-number 408525
This number goes out after number translation and expansion are complete. stringNumeric string that identifies all or part of the outgoing called number.
Step 15
Example:
Router(conf-call-filter-mlist)# outgoing secondary-called-number 408525
The secondary called number is the number from the second stage in a two-stage scenario. stringNumeric string that identifies all or part of the outgoing secondary called number. The telephony interfaces are defined for calls from PSTN. The string value varies, depending on different voice gateways. stringIdentifies the outgoing port number. This value is voice gateway-specific and varies between voice gateways.
Step 16
Example:
Router(conf-call-filter-mlist)# outgoing port 1/0/0
Step 17
(Optional) Specifies the outgoing signaling IPv4 address for the gatekeeper managing the signaling.
localLocal voice gateway remoteRemote IP device ip-addressIP address of the local voice gateway.
Example:
Router(conf-call-filter-mlist)# outgoing signaling local ipv4 192.168.10.255
Step 18
(Optional) Specifies the outgoing media IPv4 address for the voice gateway receiving the media stream.
Example:
Router(conf-call-filter-mlist)# outgoing media local ipv4 192.168.10.255
localLocal voice gateway remoteRemote IP device ip-addressIP address of the local voice gateway. tagDigits that define a specific dial peer. Valid entries are 1 to 2147483647.
Step 19
Example:
Router(conf-call-filter-mlist)# outgoing dialpeer 14
Step 20
Example:
Router(conf-call-filter-mlist)# target carrier-id 4321
58
Filtering Troubleshooting Output Voice Call Debug Filtering on Cisco Voice Gateways
Command or Action
Step 21
target trunk-group-label group-number
Example:
Router(conf-call-filter-mlist)# target trunk-group-label 20
Step 22
end
Example:
Router(conf-call-filter-mlist)# end
Troubleshooting Tips
To verify the conditions that you have set, use the show call filter match-list command. This command displays the criteria set for the specified match list.
What to Do Next
After the conditions are set for the voice call debug, debug commands can be enabled. Proceed to the Enabling Debug for the Set Filtering Conditions section on page 59.
Prerequisites
The conditions for the voice call debug filter must be set as described in the Configuring Call-Specific Conditions section on page 55.
SUMMARY STEPS
1. 2. 3.
enable debug condition match-list tag {exact-match | partial-match} debug cch323 {capacity | h225 | h245 | preauth | ras | rawmsg | session} or debug ccsip {all | calls | err | events | messages | preauth | states} or debug isdn q931 or debug voip aaa or debug voip ccapi {error | inout} or debug voip ipipgw
59
Filtering Troubleshooting Output Voice Call Debug Filtering on Cisco Voice Gateways
or debug voip ivr {all | applib | callsetup | digitcollect | dynamic | error | script | settlement | states | tclcommands} or debug voip rawmsg or debug vtsp {all | dsp | error | event | port | rtp | send-nse | session | stats | vofr subframe | tone | vofr}
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
Example:
Router# debug condition match-list 1 exact-match
tagNumeric label that uniquely identifies the match list. Range is 1 to 16. The number for the match list is set using the call filter match-list command. exact-matchAll related debug output is filtered until all conditions in the match list are explicitly met. This is the best choice for most situations because the output is the most concise. partial- matchNo related debug output is filtered until there is a single explicit match failure. As long as zero or more conditions are met, debug output is not filtered. This choice is useful in debugging call startup problems like digit collection, but is not ideal for many situations because a large amount of debug output is generated before matches explicitly fail.
60
Filtering Troubleshooting Output Voice Call Debug Filtering on Cisco Voice Gateways
Command or Action
Step 3
debug cch323 {capacity | h225 | h245 | preauth | ras | rawmsg | session} or debug ccsip {all | calls | err | events | messages | preauth | states} or debug isdn q931 or debug voip aaa or debug voip ccapi {error | inout} or debug voip ipipgw or debug voip ivr {all | applib | callsetup | digitcollect | dynamic | error | script | settlement | states | tclcommands} or debug voip rawmsg or debug vtsp {all | dsp | error | event | port | rtp | send-nse | session | stats | vofr subframe | tone | vofr}
See the Cisco IOS Debug Command Reference for detailed descriptions of these debug commands. The debug output commences at this point.
Example:
Router# Router# Router# Router# Router# Router# Router# Router# Router# debug debug debug debug debug debug debug debug debug cch323 h225 ccsip events isdn q931 voip aaa voip ccapi inout voip ipipgw voip ivr all voip rawmsg vtsp dsp
Troubleshooting Tips
To verify debug conditions, use the following commands:
show debug This command displays the debugs that are enabled.
show call filter components This command displays the components that register internally with the filtering module. This command shows which components are registered with the GCFM, which is the internal module that controls which components are filtered.
show call filter match-list This command displays the criteria set for the specified match list. It shows a list of all the match lists, shows which ones are enabled, and shows whether they are enabled for partial or exact matching.
61
Filtering Troubleshooting Output Voice Call Debug Filtering on Cisco Voice Gateways
Exact Match Filtering: Example, page 62 Partial Match Filtering: Example, page 65
In the following output, the show call filter match-list command is used to show which conditions have been set for the specified call filter:
Router# show call filter match-list ********************************************* call filter match-list 9 voice ********************************************* incoming calling-number 50200 incoming called-number 50201 incoming signal local ipv4 172.16.101.22 incoming signal remote ipv4 172.16.101.21 incoming media local ipv4 172.16.101.22 incoming media remote ipv4 172.16.101.21
62
Filtering Troubleshooting Output Voice Call Debug Filtering on Cisco Voice Gateways
incoming dialpeer 502 outgoing calling-number 50200 outgoing called-number 50201 outgoing port 6/0:D outgoing dialpeer 501 debug condition match-list is set to EXACT_MATCH ********************************************* call filter match-list 10 voice ********************************************* incoming calling-number 50300 incoming called-number 50301 incoming signal local ipv4 172.16.101.22 incoming signal remote ipv4 172.16.101.21 incoming media local ipv4 172.16.101.22 incoming media remote ipv4 172.16.101.21 incoming dialpeer 504 outgoing calling-number 50300 outgoing called-number 50301 outgoing port 6/1:D outgoing dialpeer 503 debug condition match-list is set to EXACT_MATCH
The following debug output contains the exact match for the configured conditions. Some of the matching conditions are highlighted in bold text.
Feb 6 11:13:30.799: digit_strip:1, pcn:50201, poa:50201 Feb 6 11:13:30.799: pcn:, poa: Feb 6 11:13:30.799: Final pcn:, poa:, dial_string:50201 Feb 6 11:13:30.803: //6/CFD853DE8004/VTSP:(6/0:D):-1:0:0/vtsp_gcfm_percall_status_callback: found cdb and update Feb 6 11:13:30.803: //6/CFD853DE8004/VTSP:(6/0:D):-1:0:0/vtsp_update_dsm_stream_mgr_filter_flag: update dsp_stream_mgr_t debug flag Feb 6 11:13:30.803: //5/CFD853DE8004/CCAPI/ccapi_gcfm_percall_status_callback: found callEntry and update Feb 6 11:13:30.803: //6/CFD853DE8004/CCAPI/ccapi_gcfm_percall_status_callback: found callEntry and update Feb 6 11:13:30.803: //5/CFD853DE8004/SSAPP:502:-1/ssaTraceSct: cid(5)st(SSA_CS_CALL_SETTING)ev(SSA_EV_CALL_REPORT_DIGITS_DONE) oldst(SSA_CS_MAPPING)cfid(-1)csize(0)in(1)fDest(1) Feb 6 11:13:30.803: //5/CFD853DE8004/SSAPP:502:-1/ssaTraceSct: -cid2(6)st2(SSA_CS_CALL_SETTING)oldst2(SSA_CS_MAPPING) Feb 6 11:13:30.803: //5/CFD853DE8004/SSAPP:502:-1/ssaDebugPeers: ssaReportDigitsDone cid(5) peer list: tag(2501) called number (50201) Feb 6 11:13:30.803: //5/CFD853DE8004/SSAPP:502:-1/ssaReportDigitsDone: callid=5 Reporting disabled. Feb 6 11:13:31.007: ISDN Se6/0:23 Q931: callid 0x800B, callref 0x0003, guid CFD853DE8004 Feb 6 11:13:31.007: ISDN Se6/0:23 Q931: RX <- CALL_PROC pd = 8 callref = 0x8003 Channel ID i = 0xA98397 Exclusive, Channel 23 Feb 6 11:13:31.007: ISDN Se6/0:23 Q931: callid 0x800B, callref 0x0003, guid CFD853DE8004 Feb 6 11:13:31.007: ISDN Se6/0:23 Q931: RX <- ALERTING pd = 8 callref = 0x8003 Feb 6 11:13:31.011: //6/CFD853DE8004/VTSP:(6/0:D):22:0:0/vtsp_process_event: vtsp:[6/0:D (6), S_SETUP_REQUEST, E_TSP_PROCEEDING] Feb 6 11:13:31.011: //6/CFD853DE8004/VTSP:(6/0:D):22:0:0/act_setup_pend_proceeding: . Feb 6 11:13:31.011: //6/CFD853DE8004/DSM:(6/0:D):-1:0:4098/dsp_stream_mgr_reinit_platform_info: . Feb 6 11:13:31.011: //6/CFD853DE8004/DSM:(6/0:D):-1:0:4098/dsm_open_voice_and_set_params: . Feb 6 11:13:31.011: //6/CFD853DE8004/DSM:(6/0:D):-1:0:4098/set_playout_dmgr: playout default
63
Filtering Troubleshooting Output Voice Call Debug Filtering on Cisco Voice Gateways
Feb 6 11:13:31.011: //6/CFD853DE8004/DSM:(6/0:D):-1:0:4098/dsm_dsp_echo_canceller_control: echo_cancel: 1 Feb 6 11:13:31.011: ISDN Se6/0:23 Q931: callid 0x800B, callref 0x0003, guid CFD853DE8004 Feb 6 11:13:31.011: ISDN Se6/0:23 Q931: RX <- CONNECT pd = 8 callref = 0x8003 Feb 6 11:13:31.011: //6/CFD853DE8004/SSAPP:0:-1/ssaTraceSct: cid(6)st(SSA_CS_CALL_SETTING)ev(SSA_EV_CALL_PROCEEDING) oldst(SSA_CS_MAPPING)cfid(-1)csize(0)in(0)fDest(0) Feb 6 11:13:31.011: //6/CFD853DE8004/SSAPP:0:-1/ssaTraceSct: -cid2(5)st2(SSA_CS_CALL_SETTING)oldst2(SSA_CS_CALL_SETTING) Feb 6 11:13:31.011: //6/CFD853DE8004/SSAPP:0:-1/ssaCallProc: Feb 6 11:13:31.011: //6/CFD853DE8004/SSAPP:0:-1/ssaIgnore: cid(6), st(SSA_CS_CALL_SETTING),oldst(1), ev(21) Feb 6 11:13:31.011: //6/CFD853DE8004/VTSP:(6/0:D):22:0:0/vtsp_process_event: vtsp:[6/0:D (6), S_SETUP_REQ_PROC, E_TSP_ALERT] Feb 6 11:13:31.011: //6/CFD853DE8004/VTSP:(6/0:D):22:0:0/act_setup_pend_alert: . Feb 6 11:13:31.011: //6/CFD853DE8004/VTSP:(6/0:D):22:0:0/vtsp_ring_noan_timer_start: 371381 Feb 6 11:13:31.015: ISDN Se6/0:23 Q931: callid 0x800B, callref 0x0003, guid CFD853DE8004 Feb 6 11:13:31.015: ISDN Se6/0:23 Q931: TX -> CONNECT_ACK pd = 8 callref = 0x0003 Feb 6 11:13:31.015: //6/CFD853DE8004/SSAPP:0:-1/ssaTraceSct: cid(6)st(SSA_CS_CALL_SETTING)ev(SSA_EV_CALL_ALERT) oldst(SSA_CS_CALL_SETTING)cfid(-1)csize(0)in(0)fDest(0) Feb 6 11:13:31.015: //6/CFD853DE8004/SSAPP:0:-1/ssaTraceSct: -cid2(5)st2(SSA_CS_CALL_SETTING)oldst2(SSA_CS_CALL_SETTING) Feb 6 11:13:31.015: //5/CFD853DE8004/SSAPP:502:-1/ssaAlert: Feb 6 11:13:31.015: //6/CFD853DE8004/DSM:(6/0:D):-1:0:4098/dsm_exec: [Feat SM: S:NONE B SM: S:S_DSM_INIT E:E_DSM_CC_BRIDGE] Feb 6 11:13:31.015: //6/CFD853DE8004/DSM:(6/0:D):-1:0:4098/dsm_act_bridge: . Feb 6 11:13:31.015: //6/CFD853DE8004/VTSP:(6/0:D):22:0:0/vtsp_dsm_bridge_status_cb: . Feb 6 11:13:31.015: //6/CFD853DE8004/VTSP:(6/0:D):22:0:0/vtsp_dsm_set_fax_feat_param: Fax relay is ENABLED, Primary Fax protocol is T38_FAX_RELAY, Fallback Fax protocol is CISCO_FAX_RELAY Feb 6 11:13:31.015: //6/CFD853DE8004/VTSP:(6/0:D):22:0:0/vtsp_dsm_peer_event_cb: E_DSM_CC_CAPS_IND Feb 6 11:13:31.015: //6/CFD853DE8004/VTSP:(6/0:D):22:0:0/vtsp_process_event: vtsp:[6/0:D (6), S_SETUP_REQ_PROC, E_TSP_CONNECT] Feb 6 11:13:31.015: //6/CFD853DE8004/VTSP:(6/0:D):22:0:0/act_setup_pend_connect: . Feb 6 11:13:31.015: //6/CFD853DE8004/VTSP:(6/0:D):22:0:0/vtsp_ring_noan_timer_stop: 371382 Feb 6 11:13:31.015: //6/CFD853DE8004/DSM:(6/0:D):-1:0:4098/dsp_stream_mgr_play_tone: . Feb 6 11:13:31.015: //6/CFD853DE8004/DSM:(6/0:D):-1:0:4098/dsm_exec: [Feat SM: S:NONE B SM: S:S_DSM_BRIDGING E:E_DSM_CC_GEN_TONE] Feb 6 11:13:31.015: //6/CFD853DE8004/DSM:(6/0:D):-1:0:4098/dsm_act_gen_tone: Tone is not on, ignoring Feb 6 11:13:31.015: //6/CFD853DE8004/CCAPI/cc_api_call_connected: setting callEntry->connected to TRUE
64
Filtering Troubleshooting Output Voice Call Debug Filtering on Cisco Voice Gateways
In the following output, the show call filter match-list command is used to show which conditions are set for the specified call filter:
Router# show call filter match-list 4 incoming calling-number 10.. incoming called-number 50.. incoming dialpeer 1 debug condition match-list is set to PARTIAL_MATCH
The following debug output shows ISDN debug messages on all calls, but displays only the debug vtsp event messages on dial peer 1. The VTSP messages are highlighted with bold text.
3 16:21:52.024: ISDN Se2/0:23 Q931: callid 0x0000, callref 0x01E6, guid 06ED7A20-170A-11CC-81E7-000B465B86B0 *Mar 3 16:21:52.024: ISDN Se2/0:23 Q931: RX <- SETUP pd = 8 callref = 0x01E6 Bearer Capability i = 0x8090A2 Standard = CCITT Transer Capability = Speech Transfer Mode = Circuit Transfer Rate = 64 kbit/s Channel ID i = 0xE9808381 Exclusive, Interface 0, Channel 1 Calling Party Number i = 0x00, 0x80, '1000' Plan:Unknown, Type:Unknown Called Party Number i = 0x80, '5000' Plan:Unknown, Type:Unknown *Mar 3 16:21:52.028: //1270/06ED7A20-170A-11CC-81E7-000B465B86B0/VTSP:(2/0:23):0:0:0/vtsp_process_event: [state:S_SETUP_INDICATED, event: E_CC_PROCEEDING] *Mar 3 16:21:52.032: ISDN Se2/0:23 Q931: callid 0x01EA, callref 0x01E6, guid 06ED7A20-170A-11CC-81E7-000B465B86B0 *Mar 3 16:21:52.036: ISDN Se2/0:23 Q931: TX -> CALL_PROC pd = 8 callref = 0x81E6 Channel ID i = 0xA98381 Exclusive, Channel 1 *Mar 3 16:21:52.080: //1270/06ED7A20-170A-11CC-81E7-000B465B86B0/VTSP:(2/0:23):0:0:0/vtsp_process_event: [state:S_PROCEEDING, event: E_CC_ALERT] *Mar 3 16:21:52.084: ISDN Se2/0:23 Q931: callid 0x01EA, callref 0x01E6, guid 06ED7A20-170A-11CC-81E7-000B465B86B0 *Mar 3 16:21:52.084: ISDN Se2/0:23 Q931: TX -> ALERTING pd = 8 callref = 0x81E6 Progress Ind i = 0x8088 - In-band info or appropriate now available *Mar 3 16:21:52.084: //1270/06ED7A20-170A-11CC-81E7-000B465B86B0/VTSP:(2/0:23):0:0:0/vtsp_process_event: [state:S_ALERTING, event: E_CC_CONNECT] *Mar 3 16:21:52.088: ISDN Se2/0:23 Q931: callid 0x01EA, callref 0x01E6, *Mar
65
Filtering Troubleshooting Output Voice Call Debug Filtering on Cisco Voice Gateways
*Mar *Mar
*Mar *Mar
*Mar *Mar
*Mar *Mar
guid 06ED7A20-170A-11CC-81E7-000B465B86B0 3 16:21:52.088: ISDN Se2/0:23 Q931: TX -> CONNECT pd = 8 callref = 0x81E6 3 16:21:52.392: ISDN Se2/0:23 Q931: callid 0x01EA, callref 0x01E6, guid 06ED7A20-170A-11CC-81E7-000B465B86B0 3 16:21:52.392: ISDN Se2/0:23 Q931: RX <- CONNECT_ACK pd = 8 callref = 0x01E6 3 16:21:57.024: ISDN Se2/0:23 Q931: callid 0x0000, callref 0x01E7, guid 09E86AA0-170A-11CC-81E8-000B465B86B0 3 16:21:57.024: ISDN Se2/0:23 Q931: RX <- SETUP pd = 8 callref = 0x01E7 Bearer Capability i = 0x8090A2 Standard = CCITT Transer Capability = Speech Transfer Mode = Circuit Transfer Rate = 64 kbit/s Channel ID i = 0xE9808382 Exclusive, Interface 0, Channel 2 Calling Party Number i = 0x00, 0x80, '1001' Plan:Unknown, Type:Unknown Called Party Number i = 0x80, '5001' Plan:Unknown, Type:Unknown 3 16:22:02.032: ISDN Se2/0:23 Q931: callid 0x0000, callref 0x01E8, guid 0CE49409-170A-11CC-81E9-000B465B86B0 3 16:22:02.032: ISDN Se2/0:23 Q931: RX <- SETUP pd = 8 callref = 0x01E8 Bearer Capability i = 0x8090A2 Standard = CCITT Transer Capability = Speech Transfer Mode = Circuit Transfer Rate = 64 kbit/s Channel ID i = 0xE9808383 Exclusive, Interface 0, Channel 3 Calling Party Number i = 0x00, 0x80, '1002' Plan:Unknown, Type:Unknown Called Party Number i = 0x80, '5002' Plan:Unknown, Type:Unknown 3 16:22:07.032: ISDN Se2/0:23 Q931: callid 0x0000, callref 0x01E9, guid 0FDF8489-170A-11CC-81EA-000B465B86B0 3 16:22:07.032: ISDN Se2/0:23 Q931: RX <- SETUP pd = 8 callref = 0x01E9 Bearer Capability i = 0x8090A2 Standard = CCITT Transer Capability = Speech Transfer Mode = Circuit Transfer Rate = 64 kbit/s Channel ID i = 0xE9808384 Exclusive, Interface 0, Channel 4 Calling Party Number i = 0x00, 0x80, '1003' Plan:Unknown, Type:Unknown Called Party Number i = 0x80, '5003' Plan:Unknown, Type:Unknown 3 16:22:12.032: ISDN Se2/0:23 Q931: callid 0x0000, callref 0x01EA, guid 12DA7509-170A-11CC-81EB-000B465B86B0 3 16:22:12.032: ISDN Se2/0:23 Q931: RX <- SETUP pd = 8 callref = 0x01EA Bearer Capability i = 0x8090A2 Standard = CCITT Transer Capability = Speech Transfer Mode = Circuit Transfer Rate = 64 kbit/s Channel ID i = 0xE9808385 Exclusive, Interface 0, Channel 5 Calling Party Number i = 0x00, 0x80, '1004' Plan:Unknown, Type:Unknown Called Party Number i = 0x80, '5004' Plan:Unknown, Type:Unknown 3 16:22:17.036: ISDN Se2/0:23 Q931: callid 0x0000, callref 0x01EB, guid 15D601B1-170A-11CC-81EC-000B465B86B0 3 16:22:17.036: ISDN Se2/0:23 Q931: RX <- SETUP pd = 8 callref = 0x01EB
66
Filtering Troubleshooting Output Voice Call Debug Filtering on Cisco Voice Gateways
Bearer Capability i = 0x8090A2 Standard = CCITT Transer Capability = Speech Transfer Mode = Circuit Transfer Rate = 64 kbit/s Channel ID i = 0xE9808386 Exclusive, Interface 0, Channel 6 Calling Party Number i = 0x00, 0x80, '1005' Plan:Unknown, Type:Unknown Called Party Number i = 0x80, '5005' Plan:Unknown, Type:Unknown *Mar 3 16:22:22.040: ISDN Se2/0:23 Q931: callid 0x0000, callref 0x01EC, guid 18D18E59-170A-11CC-81ED-000B465B86B0 *Mar 3 16:22:22.040: ISDN Se2/0:23 Q931: RX <- SETUP pd = 8 callref = 0x01EC Bearer Capability i = 0x8090A2 Standard = CCITT Transer Capability = Speech Transfer Mode = Circuit Transfer Rate = 64 kbit/s Channel ID i = 0xE9808387 Exclusive, Interface 0, Channel 7 Calling Party Number i = 0x00, 0x80, '1006' Plan:Unknown, Type:Unknown Called Party Number i = 0x80, '5006' Plan:Unknown, Type:Unknown *Mar 3 16:22:27.040: ISDN Se2/0:23 Q931: callid 0x0000, callref 0x01ED, guid 1BCC7ED9-170A-11CC-81EE-000B465B86B0 *Mar 3 16:22:27.040: ISDN Se2/0:23 Q931: RX <- SETUP pd = 8 callref = 0x01ED Bearer Capability i = 0x8090A2 Standard = CCITT Transer Capability = Speech Transfer Mode = Circuit Transfer Rate = 64 kbit/s Channel ID i = 0xE9808388 Exclusive, Interface 0, Channel 8 Calling Party Number i = 0x00, 0x80, '1007' Plan:Unknown, Type:Unknown Called Party Number i = 0x80, '5007' Plan:Unknown, Type:Unknown *Mar 3 16:22:32.048: ISDN Se2/0:23 Q931: callid 0x0000, callref 0x01EE, guid 1EC8A7A9-170A-11CC-81EF-000B465B86B0 *Mar 3 16:22:32.048: ISDN Se2/0:23 Q931: RX <- SETUP pd = 8 callref = 0x01EE Bearer Capability i = 0x8090A2 Standard = CCITT Transer Capability = Speech Transfer Mode = Circuit Transfer Rate = 64 kbit/s Channel ID i = 0xE9808382 Exclusive, Interface 0, Channel 2 Calling Party Number i = 0x00, 0x80, '1008' Plan:Unknown, Type:Unknown Called Party Number i = 0x80, '5008' Plan:Unknown, Type:Unknown *Mar 3 16:22:34.688: ISDN Se2/0:23 Q931: callid 0x01EA, callref 0x01E6, guid 06ED7A20-170A-11CC-81E7-000B465B86B0 *Mar 3 16:22:34.688: ISDN Se2/0:23 Q931: RX <- DISCONNECT pd = 8 callref = 0x01E6 Cause i = 0x8290 - Normal call clearing *Mar 3 16:22:34.688: ISDN Se2/0:23 Q931: callid 0x01EA, callref 0x01E6, guid 06ED7A20-170A-11CC-81E7-000B465B86B0 *Mar 3 16:22:34.688: ISDN Se2/0:23 Q931: TX -> RELEASE pd = 8 callref = 0x81E6 *Mar 3 16:22:34.688: //1270/06ED7A20-170A-11CC-81E7-000B465B86B0/VTSP:(2/0:23):0:0:0/vtsp_process_event: [state:S_CONNECT, event: E_TSP_DISCONNECT_IND]
67
Filtering Troubleshooting Output Voice Call Debug Filtering on Cisco Voice Gateways
*Mar 3 16:22:34.688: //1270/06ED7A20-170A-11CC-81E7-000B465B86B0/VTSP:(2/0:23):0:0:0/vtsp_process_event: [state:S_CONNECT, event: E_CC_DISCONNECT] *Mar 3 16:22:34.692: //1270/06ED7A20-170A-11CC-81E7-000B465B86B0/VTSP:(2/0:23):0:0:0/vtsp_process_event: [state:S_WAIT_STATS, event: E_VTSP_DSM_STATS_COMPLETE] *Mar 3 16:22:34.692: //1270/06ED7A20-170A-11CC-81E7-000B465B86B0/VTSP:(2/0:23):0:0:0/vtsp_process_event: [state:S_WAIT_RELEASE, event: E_TSP_DISCONNECT_CONF] *Mar 3 16:22:34.692: //1270/06ED7A20-170A-11CC-81E7-000B465B86B0/VTSP:(2/0:23):0:0:0/vtsp_process_event: [state:S_CLOSE_DSPRM, event: E_VTSP_DSM_CLOSE_COMPLETE] *Mar 3 16:22:34.812: ISDN Se2/0:23 Q931: callid 0x01EA, callref 0x01E6, guid 06ED7A20-170A-11CC-81E7-000B465B86B0 *Mar 3 16:22:34.812: ISDN Se2/0:23 Q931: RX <- RELEASE_COMP pd = 8 callref = 0x01E6 *Mar 3 16:22:37.048: ISDN Se2/0:23 Q931: callid 0x0000, callref 0x01EF, guid 21C39829-170A-11CC-81F0-000B465B86B0 *Mar 3 16:22:37.048: ISDN Se2/0:23 Q931: RX <- SETUP pd = 8 callref = 0x01EF Bearer Capability i = 0x8090A2 Standard = CCITT Transer Capability = Speech Transfer Mode = Circuit Transfer Rate = 64 kbit/s Channel ID i = 0xE9808381 Exclusive, Interface 0, Channel 1 Calling Party Number i = 0x00, 0x80, '1009' Plan:Unknown, Type:Unknown Called Party Number i = 0x80, '5009' Plan:Unknown, Type:Unknown *Mar 3 16:22:42.052: ISDN Se2/0:23 Q931: callid 0x0000, callref 0x01F0, guid 24BF24D1-170A-11CC-81F1-000B465B86B0 *Mar 3 16:22:42.052: ISDN Se2/0:23 Q931: RX <- SETUP pd = 8 callref = 0x01F0 Bearer Capability i = 0x8090A2 Standard = CCITT Transer Capability = Speech Transfer Mode = Circuit Transfer Rate = 64 kbit/s Channel ID i = 0xE9808383 Exclusive, Interface 0, Channel 3 Calling Party Number i = 0x00, 0x80, '1010' Plan:Unknown, Type:Unknown Called Party Number i = 0x80, '5010' Plan:Unknown, Type:Unknown *Mar 3 16:22:47.056: ISDN Se2/0:23 Q931: callid 0x0000, callref 0x01F1, guid 27BAB179-170A-11CC-81F2-000B465B86B0 *Mar 3 16:22:47.056: ISDN Se2/0:23 Q931: RX <- SETUP pd = 8 callref = 0x01F1 Bearer Capability i = 0x8090A2 Standard = CCITT Transer Capability = Speech Transfer Mode = Circuit Transfer Rate = 64 kbit/s Channel ID i = 0xE9808384 Exclusive, Interface 0, Channel 4 Calling Party Number i = 0x00, 0x80, '1011' Plan:Unknown, Type:Unknown Called Party Number i = 0x80, '5011' Plan:Unknown, Type:Unknown
68
Restrictions for Voice Call Debug Filtering on Voice Gatekeepers, page 69 Information About Voice Call Debug Filtering, page 69 Configuring the Voice Call Debug Filter for Cisco Gatekeepers, page 79 Examples, page 82
Voice call debug filtering on gatekeepers is available only if you have a Cisco IOS image that contains the gatekeeper functionality or joint functionality (for both gateways and gatekeepers). Filtering of debugs in the gatekeeper DNS process is not supported. Filtering of ASN and GUP messages is not supported. The following are not supported by call filtering:
If debug messages are printed in non-ARQ path, the path will not support call filtering. H.323V1, H323 proxy, and DGK are not supported. Calls transferred from primary gatekeeper to the secondary gatekeeper will not be filtered in the
secondary gatekeeper, but new calls in secondary gatekeeper will apply filtering.
All error, incorrect, and delayed GKTMP messages are not printed in call filtering because the
gatekeeper ignores the message at a lower level and the messages are not printed.
GKTMP messages that are not related to calls are not supported by call filtering (registration,
Incoming called number Incoming calling number Gatekeeper resolved final destination endpoint (IPv4) address
Note
In addition to working on voice gatekeepers, call filtering works on IP-to-IP gateway connections using H.323.
69
The selected criteria are set on the gatekeeper, and different sets of criteria can be stored. To better understand the voice call debug filtering on Cisco voice gatekeepers, see the following sections:
Debug Commands that Support Voice Call Filtering on Cisco Voice Gatekeepers, page 70 Gatekeeper Filter Module, page 70 Calling and Called Number Strings, page 71 Exact and Partial Matching Conditions Rules and Information, page 71
Debug Commands that Support Voice Call Filtering on Cisco Voice Gatekeepers
When a call filter is applied, the filtering applies to all of the debugs affected by the call filter. Debug commands that support voice call debug filtering on gatekeepers are the following:
debug gatekeeper call level debug gatekeeper main level debug gatekeeper servers
Note
In the syntax, the level argument can be a number from 1 through 10. Refer to the Cisco IOS Debug Command Reference for detailed information about these debug commands.
Maintain a set of matching lists that are activated through the CLI interface for filtering out desired calls. Provide an interface to the gatekeeper modules for filter query for exact and partial matches. Implement an algorithm to execute the matching logic by examining the activated filter tags provisioned through the CLI interface. The algorithm is optimized in a way that the logic is executed only when there is a new call parameter populated in the context or there is a change in the CLI provisioned data. Employ a filter rules engine to prevent activation of illegal and conflicting filter tags (that is, filter tags having conflicting conditions provisioned across them).
70
Symbol . []
Description Indicates a single-digit placeholder. For example, 555.... matches any dialed string beginning with 555, plus at least four additional digits. Indicates a range of digits. A consecutive range is indicated with a hyphen (-); for example, [5-7]. A nonconsecutive range is indicated with a comma (,); for example, [5,8]. Hyphens and commas can be used in combination; for example, [5-7,9].
Note
() ? % + T
Indicates a pattern; for example, 408(555). It is used in conjunction with the symbol ?, %, or +. Indicates that the preceding digit occurred zero or one time. Press ctrl-v before entering ? from your keyboard. Indicates that the preceding digit occurred zero or more times. This functions the same as the * used in regular expression. Indicates that the preceding digit occurred one or more times. Indicates the interdigit timeout. The voice gateway pauses to collect additional dialed digits.
Note
The wildcard symbols follow regular expression rules, and whatever wildcard applies to the gateway applies to the gatekeeper as well. The period (.) is the only wildcard character that is supported for dial strings that are configured using the answer-address or incoming called-number command.
71
Exact matchAll related debug output is filtered and shown when all conditions in the match list are explicitly met. This is the best choice for most situations because the output is the most concise. Partial matchRelated debug output is filtered and shown when even only one condition matches. This choice is useful in debugging call startup problems like digit collection, but is not ideal for many situations because of the large amount of debug output that might be generated before matches explicitly fail.
To filter out the desired calls, you must define a list of matching conditions. Separate filters need to be defined for VoIP gateways and VoIP gatekeepers, because both the gateway and gatekeeper can exist on the same box. The following global CLI is used to define the conditions on the gatekeeper. The gatekeeper keyword appears in the CLI only if you have a Cisco IOS image that contains gatekeeper debug filter functionality or a combination of gateway and gatekeeper debug filter functionality. call filter match-list number voice gatekeeper Then, under the submode, a set of conditions can be defined. Only the following will be valid for filtering calls on the gatekeeper: incoming calling-number string incoming called-number string One new match condition is added that is valid for gatekeeper filtering only: gatekeeper resolved ipv4 ipaddress For applying the match filters configured, the CLI for gatekeepers is the same as that used for gateways: debug condition match-list <1-16> exact-match | partial-match Table 10 summarizes the rules applied while you are executing the exact and partial match logic.
Table 10 Rules Applied for Executing Exact and Partial Matching Logic
Number 1
Decription The exact match is an AND logic across all the provisioned conditions. For example: call filter match-list 2 gatekeeper incoming called-number 9876 incoming calling-number 2345 resolved destination ipv4 1.2.3.4 The debugs are emitted only when all the callp provided input matches. IC Called Number && IC Calling Number && Resolved destination IP address
The partial match is a logical OR across all the provisioned conditions. For example: call filter match-list 2 gatekeeper incoming called-number 9876 incoming calling-number 2345 resolved destination ipv4 1.2.3.4 The debugs are emitted only when any one of the callp-provided inputs matches. IC Called Number || IC Calling Number || Resolved destination IP address
72
Table 10
Rules Applied for Executing Exact and Partial Matching Logic (continued)
Number 3
Decription When the admin provisions a set of conditions under a filter tag that may not contain all three (supported) conditions, then the rules are applied only on that subset of conditions. The non-provisioned conditions are considered as wildcard or dont care. For example: call filter match-list 2 gatekeeper incoming called-number 9876 resolved destination ipv4 1.2.3.4 Because incoming calling number was not provided, it is taken as a dont care condition and excluded when the GKFM is executing the matching logic. This tag shall be an exact match for all calls with called number 9876, resolved destination 1.2.3.4, and any calling number xxxx.
When the admin provisions only the resolved destination address under a filter tag, then all debugs (for which filtering is employed) shall be throwing the outputs until the callp learns the resolved destination address (that is, until the RAS-LCF message was obtained or the route server provides the resolved address during a later part of the call). This scenario should be well understood before such a filter tag is activated. For example: call filter match-list 1 gatekeeper resolved destination ipv4 1.2.3.4 Then debugs for all the calls with any IC called/calling numbers shall be thrown until the resolved destination address is known. When the resolved destination address happens to be 1.2.3.4, then the debug outputs would continueif not, it would stop at that point.
If the admin provisions a filter tag with no matching conditions under it, such a tag cannot be activated. For example: ! call filter match-list 3 gatekeeper ! #deb condition match-list 3 exact Failed: Activation of tag with no filter condition is not allowed.
73
Table 10
Rules Applied for Executing Exact and Partial Matching Logic (continued)
Number 6
Decription If an activated filter tag condition is modified, that tag needs to be explicitly reactivated after any changes. For example: ! call filter match-list 2 gatekeeper incoming called-number 9876 incoming calling-number 2345 resolved destination ipv4 1.2.3.4 ! # show call filter match-list ********************************************* call filter match-list 2 gatekeeper ********************************************* incoming called-number 9876 incoming calling-number 2345 gatekeeper resolved destination address 1.2.3.4 debug condition match-list is set to EXACT_MATCH ! # conf t (config)# call filter match-list 2 gatekeeper (conf-call-filter-mlist)# incoming calling-number 4089 (conf-call-filter-mlist)# end # # show call filter match-list ********************************************* call filter match-list 2 gatekeeper ********************************************* incoming called-number 9876 incoming calling-number 2345 gatekeeper resolved destination address 1.2.3.4 debug condition match-list is not ARMED
A call for which the GKFM decides failed match (suppress) does not result in any debugs or reexecution of matching logic during the lifespan of that call, even though the CLI admin modifies the provisioned conditions during the lifespan of that call.
74
Existing activated filter patterns Activated CDN Y Activated CGN X Activated IPV4 X Employed Rules Compare CDN only. Reject - if same Allow - if different Reject always. Reject always. Reject always. Compare CDN only. Reject - if same Allow - if different Compare CDN only. Reject - if same Allow - if different Compare CDN only. Reject - if same Allow - if different
X X X Y
X Y Y X
Y X Y Y
Existing activated filter patterns Activated CDN X Activated CGN Y Activated IPV4 X Employed Rules Compare CGN only. Reject - if same Allow - if different Compare CGN only. Reject - if same Allow - if different Compare CGN only. Reject - if same Allow - if different Compare CGN only. Reject - if same Allow - if different Reject always. Reject always. Reject always.
X Y Y
X X X
Y X Y
75
Existing activated filter patterns Activated CDN Y Activated CGN Y Activated IPV4 X Employed Rules Compare CDN and CGN. Reject - if both are same Allow - if anyone different Compare CDN and CGN only. Reject - if both are same Allow - if anyone different Compare CGN only. Reject - if same Allow - if different Compare CDN only. Reject - if same Allow - if different Reject always. Compare CGN only. Reject - if same Allow - if different Compare CDN only. Reject - if same Allow if different
X X
X Y
Y Y
Existing activated filter patterns Activated CDN X Activated CGN X Activated IPV4 Y Employed Rules Compare Res. IPv4 only. Reject - if same Allow - if different Compare Res. IPv4 only. Reject - if same Allow - if different Compare Res. IPv4 only. Reject - if same Allow - if different Compare Res. IPv4 only. Reject - if same Allow - if different
76
X Y Y
Y X Y
X X X
Activated CDN Y
Activated CGN X
Activated IPV4 Y
Employed rules Compare CDN and Res. IPv4. Reject - if both are same Allow - if anyone different Compare CDN and Res. IPv4. Reject - if both are same Allow - if anyone different. Compare CDN only. Reject - if same Allow - if different Compare CDN only. Reject - if same Allow - if different Compare IPv4 only. Reject - if same Allow - if different Compare IPv4 only. Reject - if same Allow - if different Reject always.
Existing activated filter patterns Activated CDN X Activated CGN Y Activated IPV4 Y Employed Rules Compare CGN and Res. IPv4. Reject - if both are same Allow - if anyone different Compare CGN and Res. IPv4. Reject - if both are same Allow - if anyone different. Compare Res. IPv4 only. Reject - if same Allow - if different
77
Compare Res. IPv4 only. Reject - if same Allow - if different Compare CGN only. Reject - if same Allow - if different Compare CGN only. Reject - if same Allow - if different Reject always.
Existing activated filter patterns Activated CDN Y Activated CGN Y Activated IPV4 Y Employed Rules Compare CDN, CGN and Res. IPv4. Reject - if all are same. Allow - if any one different Compare Res. IPv4 only. Reject - if same Allow - if different. Compare CGN only. Rejectect - if same Allow - if different Compare CGN & Res. IPv4. Rejectect - if both are same Allow - if any one different Compare CDN only. Reject - if same Allow - if different Compare CDN and Res. IPv4 only. Reject - if both are same Allow - if any one different Compare CDN and CGN only. Reject - if both are same Allow - if any one different.
78
Configuring Call-Specific Conditions for Gatekeepers, page 79 (required) Enabling Debug for the Set Filtering Conditions, page 80 (required)
SUMMARY STEPS
1. 2. 3. 4. 5. 6. 7. 8.
enable configure terminal call filter match-list number gatekeeper incoming calling-number string incoming called-number string gatekeeper resolved ipv4 ipaddress exit exit
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
Enters call filter match list configuration mode to define the filter conditions on the gatekeeper.
Note
Example:
Router(config)# call filter match-list 1 gatekeeper
numberNumeric label that uniquely identifies the match list. Range is 1 to 16. At least one of the following optional parameters (Step 4 to Step 7) for call filtering must be configured.
Step 4
Example:
Router(conf-call-filter-mlist)# incoming calling-number 408525
stringNumeric string that identifies all or part of the incoming calling number.
79
Command or Action
Step 5
incoming called-number string
Example:
Router(conf-call-filter-mlist)# incoming called-number 408525
stringNumeric string that identifies all or part of the incoming called number.
Step 6
Example:
Router(conf-call-filter-mlist)# gatekeeper resolved ipv4 10.1.1.1
Step 7
exit
Example:
Router(conf-call-filter-mlist)# exit
Step 8
exit
Example:
Router(config)# exit
Prerequisites
The conditions for the voice call debug filter must be set as described in the Configuring Call-Specific Conditions for Gatekeepers section on page 79.
SUMMARY STEPS
1. 2. 3.
enable debug condition match-list tag {exact-match | partial-match} debug gatekeeper call level or debug gatekeeper main level or debug gatekeeper servers
80
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
Example:
Router# debug condition match-list 1 exact-match
tagNumeric label that uniquely identifies the match list. Range is 1 to 16. The number for the match list is set using the call filter match-list command. exact-matchAll related debug output is filtered until all conditions in the match list are explicitly met. This is the best choice for most situations because the output is the most concise. partial-matchNo related debug output is filtered until there is a single explicit match failure. As long as zero or more conditions are met, debug output is not filtered. This choice is useful in debugging call startup problems like digit collection, but is not ideal for many situations because a large amount of debug output is generated before matches explicitly fail. levelSpecifies a level for the debug message. Entries can be 1 through 10. Refer to the Cisco IOS Debug Command Reference for detailed descriptions of these debug commands. The debug output commences at this point.
Step 3
debug gatekeeper call level or debug gatekeeper main level or debug gatekeeper servers
Example:
Router# debug gatekeeper call 5
Example:
Router# debug gatekeeper main 3
Example:
Router# debug gatekeeper servers
Troubleshooting Tips
To verify debug conditions, use the following commands:
show debug This command displays the debugs that are enabled.
show call filter components This command displays the components that register internally with the filtering module. This command shows which components are registered with the GKFM, which is the internal module that controls which components are filtered.
81
show call filter match-list This command displays the criteria set for the specified match list. It shows a list of all the match lists, shows which ones are enabled, and shows whether they are enabled for partial or exact matching.
Examples
This section provides sample output and a typical debug listing:
Sample Output for show call filter and show debug: Example, page 82 Sample Output for show debug: Example, page 82
Sample Output for show call filter and show debug: Example
When the exact match condition is used for gatekeeper voice call debug filtering, all related debug output is filtered until all conditions in the match list are explicitly met:
Router# show call filter match-list ********************************************* call filter match-list 1 gatekeeper ********************************************* gatekeeper resolved destination address 10.77.154.91 incoming called-number 444 debug condition match-list is not armed ********************************************* call filter match-list 2 gatekeeper ********************************************* incoming called-number 204 debug condition match-list is set to EXACT_MATCH Router# ################################ Router# show debug Gatekeeper: Gatekeeper Server Messages debugging is on (filter is ON) gk call debug level = 10 (filter is ON) gk zone debug level = 10 c2691-1-OGK#
82
Restrictions for SIP Debug Output Filtering Support, page 83 Information About SIP Debug Output Filtering Support, page 83 Configuring SIP Debug Filtering, page 85 Configuration Examples for SIP Debug Filtering, page 90
Feature Design of SIP Debug Output Filtering Support, page 83 Generic Call Filtering Module, page 84 SIP Debug Commands that Support Output Filtering, page 84 Matching Conditions, page 84
Allows you to define a set of matching conditions for filtering calls. Identifies the desired calls based on the configured matching conditions inside VoIP gateways. Coordinates the filtering effort on traced calls between multiple modules inside VoIP gateways. Displays the debugging trace for calls that match the specified conditions.
The SIP Debug Output Filtering Support feature document provides SIP-specific information on the debug filtering design in Cisco IOS gateways implemented by the voice call debug filtering feature. See the Voice Call Debug Filtering on Cisco Voice Gateways section on page 50 for more information.
83
debug ccsip all debug ccsip calls debug ccsip events debug ccsip messages debug ccsip preauth debug ccsip states
See the Cisco IOS Debug Command Reference for more information about SIP debug commands.
Note
Because of the importance of the messages associated with the debug ccsip err command, this debug output is not filterable.
Matching Conditions
To filter calls, define a list of matching conditions. The SIP Debug Output Filtering Support feature supports matches based on the following conditions:
Incoming calling-number string Incoming called-number string Incoming signaling IPv4 local address Incoming signaling IPv4 remote address Incoming media IPv4 local address Incoming media IPv4 remote address Incoming dial peer Outgoing calling-number string Outgoing called-number string Outgoing signaling IPv4 local address Outgoing signaling IPv4 remote address Outgoing media IPv4 local address
84
The string pattern for calling and called numbers can be either a complete telephone number or a partial telephone number with wildcard digits, represented by a period (.) character. You can define matching conditions as follows:
Exact matchAll related debug output is filtered until all conditions in the match list are explicitly met. This option is the best choice for most situations because it produces the most concise output. Partial matchNo related debug output is filtered until there is a single explicit match failure. As long as zero or more conditions are met, debug output is not filtered. This choice is useful in debugging call startup problems like digit collection, but is not ideal for many situations because of the large amount of debug output until matches explicitly fail.
See the Exact and Partial Matching section on page 55 for more information on matching conditions and filtering voice calls.
Configuring Call Filters, page 85 (required) Enabling SIP Debug Output Filtering, page 87 (required) Verifying SIP Debug Output Filtering Support, page 89 (optional)
SUMMARY STEPS
1. 2. 3. 4. 5. 6. 7. 8. 9.
10. outgoing called-number string 11. outgoing signaling {local | remote} ipv4 ip-address 12. outgoing media {local | remote} ipv4 ip-address 13. outgoing dialpeer tag 14. end
85
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
Enters call filter match list configuration mode to define the filter conditions.
Note
Example:
Router(config)# call filter match-list 1 voice
numberNumeric label that uniquely identifies the match list. Range is 1 to 16. At least one of the following optional parameters (Step 4 to Step 13) for call filtering must be configured.
Step 4
Example:
Router(conf-call-filter-mlist)# incoming calling-number 408555
stringNumeric string that identifies all or part of the incoming calling number.
Step 5
Example:
Router(conf-call-filter-mlist)# incoming called-number 408555
stringNumeric string that identifies all or part of the incoming called number.
Step 6
localLocal voice gateway remoteRemote IP device ip-addressIP address of the local voice gateway.
Example:
Router(conf-call-filter-mlist)# incoming signaling local ipv4 192.168.10.255
Step 7
(Optional) Specifies the incoming media IPv4 address for the voice gateway receiving the media stream.
Example:
Router(conf-call-filter-mlist)# incoming media local ipv4 192.168.10.255
localLocal voice gateway remoteRemote IP device ip-addressIP address of the local voice gateway. tagDigits that define a specific dial peer. Valid entries are 1 to 2147483647.
Step 8
Example:
Router(conf-call-filter-mlist)# incoming dialpeer 14
86
Command or Action
Step 9
outgoing calling-number string
Purpose (Optional) Specifies the outgoing calling number to be filtered; this number goes out after number translation and expansion are complete.
Example:
Router(conf-call-filter-mlist)# outgoing calling-number 408555
stringNumeric string that identifies all or part of the outgoing calling number.
Step 10
Example:
Router(conf-call-filter-mlist)# outgoing called-number 408555
(Optional) Specifies the outgoing called number to be filtered; this number goes out after number translation and expansion are complete.
stringNumeric string that identifies all or part of the outgoing called number.
Step 11
(Optional) Specifies the outgoing signaling IPv4 address for the gatekeeper managing the signaling.
localLocal voice gateway remoteRemote IP device ip-addressIP address of the local voice gateway.
Example:
Router(conf-call-filter-mlist)# outgoing signaling local ipv4 192.168.10.255
Step 12
(Optional) Specifies the outgoing media IPv4 address for the voice gateway receiving the media stream.
Example:
Router(conf-call-filter-mlist)# outgoing media local ipv4 192.168.10.255
localLocal voice gateway remoteRemote IP device ip-addressIP address of the local voice gateway. tagDigits that define a specific dial peer. Valid entries range from1 to 2147483647.
Step 13
Example:
Router(conf-call-filter-mlist)# outgoing dialpeer 14
Step 14
end
Example:
Router(conf-call-filter-mlist)# end
What to Do Next
After the conditions are set for filtering the SIP call debug output, debug commands can be enabled. Proceed to the Enabling SIP Debug Output Filtering section.
Prerequisites
The conditions for the SIP call debug filter must be set as described in the Configuring Call Filters section on page 85.
87
SUMMARY STEPS
1. 2. 3.
enable debug condition match-list number {exact-match | partial-match} debug ccsip {all | calls | events | messages | preauth | states} Purpose Enables privileged EXEC mode.
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
numberNumeric label that uniquely identifies the match list. Range is 1 to 16. exact-matchAll related debug output is filtered until all conditions in the match list are explicitly met. This is the best choice for most situations because the output is the most concise. partial-matchNo related debug output is filtered until there is a single explicit match failure. As long as zero or more conditions are met, debug output is not filtered. This choice is useful in debugging call startup problems like digit collection, but is not ideal for many situations because a large amount of debug output is generated before matches explicitly fail. See the Cisco IOS Debug Command Reference for detailed descriptions of these debug commands. The debug output begins at this point.
Example:
Router# debug condition match-list 1 exact-match
Step 3
Example:
Router# debug ccsip all
88
SUMMARY STEPS
1. 2. 3.
show debug show call filter components show call filter match-list
DETAILED STEPS
Step 1
show debug Use this command to display the debugs that are enabled, for example:
Router# show debug CCSIP CCSIP CCSIP CCSIP CCSIP CCSIP CCSIP CCSIP SPI:SIP SPI:SIP SPI:SIP SPI:SIP SPI:SIP SPI:SIP SPI:SIP SPI:SIP Call Statistics tracing is enabled (filter is ON) Call Message tracing is enabled (filter is ON) Call State Machine tracing is enabled (filter is ON) Call Events tracing is enabled (filter is ON) error debug tracing is enabled (filter is ON) info debug tracing is enabled (filter is ON) media debug tracing is enabled (filter is ON) Call preauth tracing is enabled (filter is ON)
Step 2
show call filter components Use this command to display which components are registered with the GCFM, the internal module that controls which components are filtered:
Router# show call filter components The following components registered in GCFM: ISDN VTSP CCAPI TGRM DIAL-PEER NUMBER-TRANSLATION SSAPP VOICE-IVR-V2 H323 SIP CRM
Step 3
show call filter match-list Use this command to display the criteria set for the specified match list. The command shows a list of all the match lists, shows which ones are enabled, and shows whether they are enabled for partial or exact matching.
Router# show call filter match-list ********************************************* call filter match-list 1 voice ********************************************* incoming called-number 5551200
89
Configuring Call Filters: Example, page 90 Enabling SIP Debug Output Filtering: Example, page 94
90
! voice hpi capture buffer 10000 no voice hpi capture destination ! ! fax interface-type modem call-history-mib retain-timer 500 call-history-mib max-size 500 ! ! controller T1 0 framing esf clock source line primary linecode b8zs pri-group timeslots 1-24 ! controller T1 1 framing esf clock source line secondary 1 linecode b8zs pri-group timeslots 1-24 ! controller T1 2 framing esf linecode b8zs pri-group timeslots 1-24 ! controller T1 3 framing esf linecode b8zs pri-group timeslots 1-24 ! ! interface Ethernet0 no ip route-cache no ip mroute-cache shutdown no cdp enable ! interface Serial0:23 no logging event link-status isdn switch-type primary-dms100 isdn incoming-voice modem no cdp enable ! interface Serial1:23 no logging event link-status isdn switch-type primary-dms100 isdn incoming-voice modem no cdp enable ! interface Serial2:23 no logging event link-status isdn switch-type primary-dms100 isdn incoming-voice modem no cdp enable ! interface Serial3:23 isdn switch-type primary-dms100 no cdp enable ! interface FastEthernet0 ip address 172.18.195.43 255.255.0.0 no ip route-cache
91
no ip mroute-cache duplex auto speed auto fair-queue 64 256 235 no cdp enable ! ip classless ip route 0.0.0.0 0.0.0.0 FastEthernet0 ip route 10.0.0.0 255.0.0.0 172.18.193.3 ip route 10.0.0.0 255.0.0.0 172.18.195.1 ip route 172.18.0.0 255.255.0.0 172.18.193.1 ip http server ! ! ! control-plane ! ! ! call filter match-list 1 voice incoming called-number 4085559876 ! voice-port 0:D ! voice-port 1:D ! voice-port 2:D ! voice-port 3:D ! ! dial-peer cor custom ! ! ! dial-peer voice 1100 pots destination-pattern 55511.. direct-inward-dial port 0:D prefix 55511 ! dial-peer voice 1200 pots destination-pattern 55512.. direct-inward-dial port 1:D prefix 55512 ! dial-peer voice 444 pots destination-pattern 444.... direct-inward-dial port 2:D prefix 444 ! dial-peer voice 5100 voip destination-pattern 55551.. session protocol sipv2 session target ipv4:172.18.207.10:5060 dtmf-relay rtp-nte codec g711ulaw ! dial-peer voice 5200 voip destination-pattern 55552.. session protocol sipv2 session target ipv4:172.18.207.10:5060
92
dtmf-relay rtp-nte ! dial-peer voice 5300 voip destination-pattern 55553.. session protocol sipv2 session target ipv4:10.0.0.5 dtmf-relay rtp-nte ! dial-peer voice 5400 voip destination-pattern 55554.. session protocol sipv2 session target ipv4:10.0.0.5 dtmf-relay rtp-nte ! dial-peer voice 2100 voip destination-pattern 55521.. session protocol sipv2 session target ipv4:172.18.193.88 dtmf-relay rtp-nte codec g711ulaw ! dial-peer voice 2200 voip destination-pattern 55522.. session protocol sipv2 session target ipv4:172.18.207.10:5060 dtmf-relay rtp-nte ! gateway ! sip-ua retry invite 3 retry response 3 retry bye 3 retry cancel 3 retry prack 3 retry comet 3 retry rel1xx 3 retry notify 3 timers trying 750 ! ! line con 0 exec-timeout 0 0 transport preferred none line aux 0 line vty 0 4 exec-timeout 0 0 password lab login transport preferred none ! ntp clock-period 17180086 ntp server 172.68.10.150 prefer ! end
93
Note
When the exact match condition is used for SIP call debug filtering, all related debug output is filtered until all conditions in the match list are explicitly met.
Router# debug condition match-list 1 exact-match Router# debug ccsip all Router# show debug CCSIP CCSIP CCSIP CCSIP CCSIP CCSIP CCSIP CCSIP SPI:SIP SPI:SIP SPI:SIP SPI:SIP SPI:SIP SPI:SIP SPI:SIP SPI:SIP Call Statistics tracing is enabled Call Message tracing is enabled (filter Call State Machine tracing is enabled Call Events tracing is enabled (filter error debug tracing is enabled (filter info debug tracing is enabled (filter media debug tracing is enabled (filter Call preauth tracing is enabled (filter (filter is ON) is ON) (filter is ON) is ON) is ON) is ON) is ON) is ON)
Router# Debug filtering is now on Building configuration... ! ! ! call filter match-list 1 voice incoming called-number 4085551221 ! end
The following lines show partial debug output with the filter on. Some debug output generated during a call may not have GUID information. These debugs, represented by /xxxxxxxxxxxx/ characters in the debug header, are not filtered and always appear.
Sep 2 13:11:05.395://-1/xxxxxxxxxxxx/SIP/Error/httpish_msg_process_network_msg:Content Length 222, Bytes Remaining 233 Sep 2 13:11:05.395://-1/xxxxxxxxxxxx/SIP/Info/HandleUdpSocketReads:Msg enqueued for SPI with IP addr:10.102.16.214:56587 Sep 2 13:11:05.395://-1/xxxxxxxxxxxx/SIP/Info/sipSPISetDateHeader:Converting TimeZone EST to SIP default timezone = GMT Sep 2 13:11:05.399://-1/xxxxxxxxxxxx/SIP/Error/sipSPI_validate_own_ip_addr:ReqLine IP addr does not match with host IP addr Sep 2 13:11:05.399://-1/xxxxxxxxxxxx/SIP/Event/sipSPIEventInfo:Queued event from SIP SPI :SIPSPI_EV_SEND_MESSAGE
94
95
Restrictions for MGCP Call Centric Debug, page 96 Information About MGCP Call Centric Debug, page 96 How to Enable MGCP Call Centric Debug, page 99 Configuration Examples for MGCP Call Centric Debug, page 105
Generic Call Filter Module, page 52 MGCP Debug Commands that Support Debug Filtering, page 97 Matching Conditions, page 84 Trace Levels for MGCP Debug Output, page 98 Tips on Collecting Debug Output, page 98
96
debug mgcp all debug mgcp endpoint debug mgcp endptdb debug mgcp errors debug mgcp events debug mgcp gcfm debug mgcp inout debug mgcp media debug mgcp src debug mgcp state debug mgcp voipcac
Note
Debug filtering is not supported for the debug mgcp nas, debug mgcp packets, or debug mgcp parser commands. See the Cisco IOS Debug Command Reference, Release 12.4T for more information about MGCP debug commands.
Incoming signaling IPv4 local address Incoming signaling IPv4 remote address Incoming media IPv4 local address Incoming media IPv4 remote address Incoming dial peer Outgoing signaling IPv4 local address Outgoing signaling IPv4 remote address Outgoing media IPv4 local address Outgoing media IPv4 remote address
See the Creating Match Lists for MGCP Filtering Conditions section on page 100 for information on configuring match conditions for filtering MGCP calls.
97
CriticalDisplays only MGCP debug information marked as high priority. ModerateDisplays MGCP debug information marked as medium or high priority. VerboseDisplays all MGCP debug information. This is the default level.
Note
The debug mgcp errors and debug mgcp packets commands do not support trace levels. Their debug output is set to the highest priority and is displayed for all trace level values. You can set the desired trace level for an MGCP debug session by using the tracelevel keyword in individual MGCP debug commands or by setting a global trace level using the debug mgcp tracelevel-default command.
Note
Setting the trace level for an endpoint using the mgcp debug endpoint command is independent of the global trace level. The endpoint level takes precedence over the global level. For example, the debug mgcp event tracelevel moderate command used with the debug mgcp endpoint aaln/S2/SU0/0 event tracelevel verbose command sets the trace level to verbose for that specific endpoint while all of the other endpoints have event debugs set at a moderate level. If the global debug is disabled, the per-endpoint debug remains enabled and vice versa.
98
Modifying the Debug Header Format for MGCP Debug Output, page 99 (optional) Creating Match Lists for MGCP Filtering Conditions, page 100 (required) Enabling MGCP Debug Filtering Using Match Lists, page 102 (required) Verifying the MGCP Debug Filtering Configuration, page 103 (optional) Enabling MGCP Debug Trace Levels, page 104 (optional)
SUMMARY STEPS
1. 2. 3. 4. 5.
enable configure terminal voice call debug {full-guid | short-header} mgcp debug-header exit
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
(Optional) Specifies the full GUID or short header for debug output.
Note
Example:
Router(config)# voice call debug full-guid
full-guidDisplays the GUID in a 16-byte header. Using the no voice call debug full-guid command displays the short 6-byte header. short-headerDisplays the CallEntry ID in the header without displaying the GUID or module-specific parameters. This is the default. For more information, see the Debug Header Format section on page 18.
Note
99
Command or Action
Step 4
mgcp debug-header
Purpose (Optional) Enables the MGCP module-dependent information in the debug header.
Note
Example:
Router(config)# mgcp debug-header
This command is enabled by default. This step is included to illustrate how to enable the command if it was previously disabled.
Step 5
exit
Example:
Router(config)# exit
SUMMARY STEPS
1. 2. 3. 4. 5. 6. 7. 8. 9.
enable configure terminal call filter match-list number voice incoming signaling {local | remote} ipv4 ip-address incoming media {local | remote} ipv4 ip-address incoming dialpeer tag outgoing signaling {local | remote} ipv4 ip-address outgoing media {local | remote} ipv4 ip-address end
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
100
Command or Action
Step 3
call filter match-list number voice
Purpose Enters call filter match list configuration mode to define the filter conditions.
Note
Example:
Router(config)# call filter match-list 1 voice
numberNumeric label that uniquely identifies the match list. Range is 1 to 16. At least one of the following optional parameters for call filtering (Step 4 to Step 8) must be configured. localLocal voice gateway. remoteMGCP call agent. ip-addressIP address of the local voice gateway or remote call agent.
Step 4
Example:
Router(conf-call-filter-mlist)# incoming signaling local ipv4 192.168.10.255
Step 5
(Optional) Specifies the incoming media IPv4 address for the voice gateway receiving the media stream.
Example:
Router(conf-call-filter-mlist)# incoming media local ipv4 192.168.10.255
localLocal voice gateway. remoteRemote voice gateway. ip-addressIP address of the local or remote voice gateway.
Step 6
Example:
Router(conf-call-filter-mlist)# incoming dialpeer 14
tagDigits that define a specific dial peer. Range is 1 to 2147483647. Telephony dial peers are configured using the dial-peer voice command.
Step 7
(Optional) Specifies the outgoing signaling IPv4 address for the gatekeeper managing the signaling.
localLocal voice gateway. remoteMGCP call agent. ip-addressIP address of the local gateway or remote call agent.
Example:
Router(conf-call-filter-mlist)# outgoing signaling local ipv4 192.168.10.255
Step 8
(Optional) Specifies the outgoing media IPv4 address for the voice gateway receiving the media stream.
Example:
Router(conf-call-filter-mlist)# outgoing media local ipv4 192.168.10.255
localLocal voice gateway. remoteRemote voice gateway. ip-addressIP address of the local or remote voice gateway.
Step 9
end
Example:
Router(conf-call-filter-mlist)# end
101
Prerequisites
The filtering conditions for the debug output must be set as described in the Creating Match Lists for MGCP Filtering Conditions section on page 100.
Restrictions
The debug mgcp nas, debug mgcp packets, and debug mgcp parser commands do not support debug filtering. Debug output that is outside the context of a call, for example, RSIP, audit, and some endpoint database information does not support filtering.
SUMMARY STEPS
1. 2. 3.
enable debug condition match-list number {exact-match | partial-match} debug mgcp {all | endpoint | endptdb | errors | events | gcfm | media | src | state | voipcac}
102
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
Example:
Router# debug condition match-list 1 exact-match
numberNumeric label that uniquely identifies the match list. Range is 1 to 16. This number is set using the call filter match-list command. exact-matchAll related debug output is filtered until all conditions in the match list are explicitly met. This is the best choice for most situations because the output is the most concise. partial-matchNo related debug output is filtered until there is a single explicit match failure. As long as zero or more conditions are met, debug output is not filtered. This choice is useful in debugging call startup problems like digit collection, but is not ideal for many situations because a large amount of debug output is generated before matches explicitly fail. This command impacts all enabled debug commands that support call filtering. See the Cisco IOS Debug Command Reference for detailed descriptions of these debug commands. When enabling MGCP debug commands, you can also set a trace level to further filter output based on the importance of the information. For information, see the Enabling MGCP Debug Trace Levels section on page 104.
Note Step 3
debug mgcp {all | endpoint | endptdb | errors | events | gcfm | inout | media | src | state | voipcac}
Example:
Router# Router# Router# Router# debug debug debug debug mgcp mgcp mgcp mgcp errors events endpoint aaln/s2/su0/1/1/10 media
show debugDisplays the debugs that are enabled. show call filter componentsDisplays the components that register internally with the filtering module. This command shows which components are registered with the GCFM, which is the internal module that controls which components are filtered. show call filter match-listDisplays the criteria set for the specified match list. It shows a list of all the match lists, shows which ones are enabled, and shows whether they are enabled for partial or exact matching.
See the Cisco IOS Voice Command Reference for more information about these commands.
103
Restrictions
Trace levels are not supported for MGCP errors or packets debugging because all of the output from these commands is set to high priority.
SUMMARY STEPS
1. 2. 3. 4.
enable debug mgcp tracelevel-default {critical | moderate | verbose} debug mgcp endpoint endpoint-name {{all | events | media} [tracelevel {critical | moderate | verbose}] | {errors | packets}} debug mgcp {all | endptdb | events | gcfm | inout | media | nas | parser | src | state | voipcac} [tracelevel {critical | moderate | verbose}]
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
(Optional) Enables the trace level globally for all MGCP debug commands and endpoints.
Example:
Router# debug mgcp tracelevel-default critical
criticalOnly high priority debug information is displayed. moderateMedium and high priority debug information is displayed. verboseAll debug information is displayed. This is the default trace level.
104
Command or Action
Step 3
debug mgcp endpoint endpoint-name {{all | events | media} [tracelevel {critical | moderate | verbose}] | {errors | packets}}
Purpose (Optional) Enables the trace level for a specific endpoint for events or media debug commands.
Example:
Router# debug mgcp endpoint aaln/s2/su0/1/1/10
endpoint-nameName of the MGCP endpoint for which to enable debugging. Must be a fully specified and supported endpoint.
Step 4
debug mgcp {all | endptdb | events | gcfm | inout | media | nas | parser | src | state | voipcac} [tracelevel {critical | moderate | verbose}]
(Optional) Enables the trace level for a specific MGCP debug command.
Example:
Router# debug mgcp events tracelevel critical Router# debug mgcp state tracelevel moderate Router# debug mgcp media moderate
Match-List Configuration for MGCP Debug Filtering: Example, page 105 Enabling MGCP Debug Filtering: Example, page 108
105
! ! ! no ip domain lookup ip host callagenthost 192.168.1.200 voice-card 1 no dspfarm ! voice-card 2 dspfarm ! ! ! ! ! ! ! controller T1 1/0 framing esf clock source internal linecode b8zs ds0-group 0 timeslots 1-24 type none service mgcp ! controller T1 1/1 shutdown framing esf clock source internal linecode b8zs ds0-group 0 timeslots 1-24 type none service mgcp ! ! ! ! interface FastEthernet0/0 ip address 192.168.1.79 255.255.255.0 no ip mroute-cache speed auto half-duplex no cdp enable ! interface FastEthernet0/1 no ip address no ip mroute-cache shutdown duplex auto speed auto no cdp enable ! ! ip http server ! snmp-server community public RO snmp-server enable traps tty ! ! ! control-plane ! ! ! call filter match-list 1 voice incoming media local ipv4 192.168.1.12 outgoing media local ipv4 192.168.1.11 !
106
voice-port 1/0:0 ! voice-port 1/1:0 ! voice-port 2/0/0 ! voice-port 2/0/1 ! voice-port 2/0/2 ! voice-port 2/0/3 ! voice-port 2/1/0 ! voice-port 2/1/1 ! voice-port 2/1/2 ! voice-port 2/1/3 ! ! mgcp mgcp call-agent callagenthost 7979 service-type mgcp version 1.0 mgcp package-capability mf-package mgcp package-capability rtp-package mgcp package-capability script-package mgcp sdp simple ! mgcp profile default ! ! ! dial-peer voice 211 pots service mgcpapp port 2/1/1 ! dial-peer voice 213 pots service mgcpapp port 2/1/3 ! dial-peer voice 210 pots service mgcpapp port 2/1/0 ! dial-peer voice 200 pots service mgcpapp port 2/0/0 ! dial-peer voice 212 pots service mgcpapp port 2/1/2 ! ! line con 0 exec-timeout 0 0 line aux 0 line vty 0 4 password temp login ! ! end
107
Router# debug mgcp media Media Gateway Control Protocol media events debugging for all endpoints is on, trace-level Critical Router# debug mgcp state tracelevel verbose Media Gateway Control Protocol state transition debugging for all endpoints is on, trace-level Verbose Router# debug mgcp endpoint S1/ds1-0/1 events tracelevel moderate Media Gateway Control Protocol events debugging for endpoint s1/ds1-0/1 is on, trace-level Moderate Router# show debug MGCP: Media Gateway Control Protocol media events debugging is on, trace level Critical Media Gateway Control Protocol errors debugging is on Media Gateway Control Protocol state transition debugging is on, trace level Verbose MGCP: Event debugging for endpoint S1/DS1-0/1 is on, tracelevel is Moderate Router# show call filter match-list ********************************************* call filter match-list 1 voice ********************************************* incoming media local ipv4 192.168.1.12 outgoing media local ipv4 192.168.1.11 debug condition match-list is set to EXACT_MATCH
108
Prerequisites for Cisco VoIP Internal Error Codes, page 109 Restrictions for Cisco VoIP Internal Error Codes, page 109 Information About Cisco VoIP Internal Error Codes, page 109 How to Configure IEC Options, page 146 Configuration Examples for Cisco VoIP Internal Error Codes, page 151 Troubleshooting VoIP Networks Using Cisco VoIP Internal Error Codes, page 157
Memory usage increases slightly when this feature is implemented, depending upon the number of subsystems that support IECs and upon the number of error codes defined for each subsystem. IECs are reported only in RADIUS accounting records. They are not supported in syslog accounting.
Benefits of Cisco VoIP Internal Error Codes, page 110 Feature Design of Cisco VoIP Internal Error Codes, page 110 IEC Reporting, page 110 Internal Error Code Notation, page 115
109
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
Allows the service provider to see the cause of call disconnect in the accounting record. Provides enhanced diagnostic and troubleshooting capability for VoIP networks. Supports the development of enhanced analysis tools that can determine if patterns of call failures exist. Improves network reliability by enabling more effective monitoring and call management. Internal Error Code (IEC) reporting has been enhanced in Cisco IOS Release 12.4(4)T to provide better tracking and diagnostic capability for networks, and specifically for gatekeepers.
Note
IECs are not generated for the following types of calls: VoiceXML, fax, MGCP or SGCP, and SS7 continuity (COT).
IEC Reporting
Cisco implements IEC reporting by logging IEC values into the following records:
110
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
The gateway sends VSAs in RADIUS accounting stop records. Because each IEC is associated with a call leg, an IEC is reported only in the stop record for one of the legs in a call. VSAs are also sent by the gatekeeper. The gateway collects IECs for all call legs involved in a call and reports them to the gatekeeper, which inserts the IECs in its accounting stop record. In some scenarios, multiple errors may be encountered for a particular call leg; for example, multiple attempts to connect to an alternate endpoint. Up to five IECs may be generated per call. Because IECs are reported through accounting records, if there is no voice call association or context, no IEC is generated. This scenario occurs, for example, if the gateway receives an ISDN setup message and the ISDN layer fails to allocate resources to process the setup message. In this instance there is no indication to the Voice Telephony Service Provider (VTSP) layer and no creation of a call-leg or call-history record, so no IEC is generated.
111
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
Figure 9
Gatekeeper
Leg 1
Leg 2
DRQ Gateway 1
V
DRQ Gateway 2
V
Leg 1 Telephony
Leg 2 VoIP
Leg 3 Telephony
Leg 4 VoIP
The 64-bit IECs are communicated as an array of eight characters (of size eight bits). The callReleaseSource is communicated as an enumerated value.
Physical network entity that encountered the error Type of error (category or class) Subsystem within that entity Subsystem-defined error code Private diagnostic code to allow developers to better pinpoint the software point of failure
112
95715
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
Calling party located in the PSTN Calling party located in the VoIP network Called party located in the PSTN Called party located in the VoIP network Internal release in a POTS leg Internal release in a VoIP leg Internal call-control application (for example, Tool Command Language (Tcl) or Voice eXtensible Markup Language (VXML) script Internal release in VoIP authentication, authorization, and accounting (AAA) CLI or Man Machine Language (MML) External RADIUS server External network management application External call control agent Gatekeeper External GKTMP server
Obtaining IECs
Choose one or more of the following options to obtain IEC information:
Display IECs as they are encountered in real time by enabling syslog messages. The IEC is not included in syslog-accounting records. For more information on enabling syslog messages, refer to the chapter Task 2. Enabling Syslog of Enabling Management Protocols: NTP, SNMP, and Syslog. Display running and interval IEC counters, and IEC descriptor strings using CLI commands. Export IEC counts to a specified server. For more information, refer to Voice Call Performance Statistics on Cisco Gateways. Retrieve IEC and RSI information using Tcl IVR 2.0 scripts. For more information on using Tcl scripts with the IEC feature, refer to Supplemental Tcl IVR API Version 2.0 Programmers Guide.
113
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
If you use call detail recording (CDR) templates to filter VSAs that are included in accounting records to the RADIUS server, you must add the IEC VSA to the CDR template if you want to display IEC VSAs.
Sample IEC Syslog Message
The following example shows an IEC-generated system logging (syslog) message for gatekeeper:
Oct 14 17:13:21.534:%VOICE_IEC-3-GK:Internal Error (DRQ in progress):IEC=1.2.182.1.23.0 on ConfID 243 GUID=123a2b0912345678
If there is no call leg context, the ConfID is -1, and the GUID field is blank.
Sample RADIUS VSA Internal Error Code
The following example shows a partial RADIUS stop accounting record for an IEC:
[Vendor 9/1] cisco-avpair = "internal-error-code=1.1.179.2.37.0"
The show call history voice command displays VSA information in the following format:
InternalErrorCode=1.1.128.7.47.0
cCallHistoryIndex, which indicates IECs related to a specific call history record. cCallHistoryIecIndex, which is used if there is more than one IEC for a call history record.
The following example shows a partial Dial Control MIB table entry for an IEC:
CCallHistoryIecEntry ::= SEQUENCE { cCallHistoryIecIndex cCallHistoryIec }
Unsigned32, SnmpAdminString
The following example shows the use of the management tool command getmany to obtain the IEC:
getmany 10.7.102.32 cCallHistoryIec cCallHistoryIec.5.1 = 1.1.180.1.26.0 getmany 10.7.102.32 cCallHistory cCallHistorySetupTime.5 = 8540739 cCallHistoryPeerAddress.5 = 4085550190 cCallHistoryPeerSubAddress.5 = cCallHistoryPeerId.5 = 1112224 cCallHistoryPeerIfIndex.5 = 213 cCallHistoryLogicalIfIndex.5 = 108 cCallHistoryDisconnectCause.5 = 3F cCallHistoryDisconnectText.5 = service or option not available, unspecified (63) cCallHistoryConnectTime.5 = 0 cCallHistoryDisconnectTime.5 = 8540740 cCallHistoryCallOrigin.5 = answer(2) cCallHistoryChargedUnits.5 = 0 cCallHistoryInfoType.5 = speech(2) cCallHistoryTransmitPackets.5 = 0 cCallHistoryTransmitBytes.5 = 0
114
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
In the preceding example, 5 is the index of the call history record and 1 is the index of the IEC for that record. The following example shows the use of the indexes and the management tool command getone to obtain the IEC directly:
getone 10.7.102.32 cCallHistoryIec.5.1 cCallHistoryIec.5.1 = 1.1.180.1.26.0
Field Definition Indicates the IEC version. The value 1 indicates the current version. Indicates the network physical entity (hardware system) that generated the IEC. The value 1 is assigned to the gateway. Indicates an error category, defined in terms of ITU-based Q.850 cause codes and VoIP network errors. Indicates the specific subsystem within the physical entity where the IEC was generated. Identifies the error code within the subsystem. Indicates a Cisco internal diagnostic value. Report this value to Cisco Technical Assistance Center (TAC).
category
Entity
The entity field indicates the network signaling entity that generated the IEC. A value of 1 in this field indicates the IEC is generated by the gateway.
115
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
Category Codes
Cisco VoIP IEC category codes
Cisco VoIP IEC categories range from 1 to 278, allowing an exact category of error to be specified in the category field of an IEC. With the Cisco VoIP Internal Error Codes feature, the concept of error categories combines and extends the existing Q.850 cause codes to handle VoIP-specific errors as well. IEC category codes are specified as follows:
The value range 1 to 127 is equivalent to ITU-based Q.850 cause codes defined for PSTN networks. The value range 128 to 278 is defined based on VoIP network errors. A mapping is maintained between these error categories to corresponding Q.850 codes (1 to 127 range).
Note
Only the H.323 and Session Initiation Protocol (SIP) subsystems implement an approach to generate disconnect cause codes or Q.850 PSTN cause codes based on error categories. The disconnect cause is chosen based on the mapping from the corresponding error category. You can configure this mapping using CLI. This correspondence of IEC error category and Q.850 disconnect cause is implemented only for SIP and H.323 internal errors, and is not implemented for other subsystems in this release. For more information on SIP and H.323 cause codes, refer to Internal Cause Code Consistency Between SIP and H.323. Table 12 shows the category codes outside the Q.850 range, their descriptions, and the default Q.850 cause code used for each error category. The Q.850 cause codes for these categories can be changed using CLI.
Table 12 VoIP Error Category Codes
Category 128 129 178 179 180 181 182 183 184 185 186 187 228 278
Description Destination address resolution failure Call setup timeout Internal communication error External communication Error Software error Software resources unavailable Hardware resources unavailable Capability exchange failure QoS error RTP/RTCP receive timer expired or bearer layer failure Signaling socket failure Gateway or signaling interface taken out of service User denied access to this service Media negotiation failure due to nonexisting codec
116
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
Category 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
Description Called party not registered Invalid permission Request denied Undefined reason Caller not registered Route call to gatekeeper Invalid endpoint ID Resource unavailable Security denial QoS control not supported Incomplete address Alias inconsistent Route call to SCN Exceeds capacity Error while collecting destination Error while collecting PIN Generic data reason Needed feature unsupported Software resource unavailable External communication error Software error Socket failure Normal disconnect Force disconnect
Subsystem Codes
Together the subsystem and error codes pinpoint the exact error that cause the call to be released. IECs are reported for the subsystems defined in Table 14.
117
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
Table 14
Subsystem Codes
Subsystem Code 1 2 3
Subsystem CCAPI Tcl IVR Application Framework (AFW) Default Session Application (SSAPP) H.323 SIP VTSP Application Framework Session Application (AFSAPP)
Description Call control messaging layer that sits between the session applications and the signaling-protocol legs. Session applications that are scripted in Tcl IVR 2.0. Library that implements Tcl verbs and VXML tags. Executes functionality such as placing a call, collecting digits, playing prompts, and so on. Formerly the default session application that controls the call when an inbound-matched dial peer is not configured with any application or with application default. Subsystem that performs call signaling for the H.323 VoIP leg. Subsystem that performs call signaling for the SIP VoIP leg. Subsystem that performs call signaling for the telephony leg. Default session application that controls the call when an inbound-matched dial peer is not configured with any application or with application default.
5 7 9 10
Error Codes
The Error Code field of the IEC dotted-decimal string value indicates the subsystem-defined error code. Codes 1 through 20 are common to all subsystems and may occur in several places within a subsystem; for these errors, the point of failure can be further isolated by referring to the unique diagnostic code field. Subsystem-specific error codes begin at 21.
Note
The diagnostic code field is a Cisco internal code. Report this code to Cisco TAC for troubleshooting assistance. The following tables, Table 15 through Table 22, are organized by subsystem and show error code values, descriptors, associated explanation, and category codes.
Table 15 Error Codes for Subsystem 1 (CCAPI)
Code 1
Descriptor No memory
Explanation
Category
Dynamically allocated memory on the gateway 181 is exhausted. This condition may indicate a temporary overload or a memory leak caused by faulty software. Packet or buffer memory is exhausted. This condition may indicate a temporary overload or a memory leak caused by faulty software. 181
No buffers
118
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
Table 15
Code 3 4 5
Explanation Call is rejected because default or configured CPU usage threshold has been exceeded. Call is rejected because default or configured memory usage threshold has been exceeded.
No dial peer satisfied the match criteria for 128 accepting or handling the call. This condition usually indicates a dial peer misconfiguration. There were insufficient DSP resources to handle the call. An error occurred on a socket interface. Media (RTP/RTCP) inactivity timer expired for the call. Invalid arguments passed to a function. This condition usually indicates an internal software error. Some unexpected event was received while in a state that was inappropriate for processing such an event. The software timed out waiting for some response or event to happen. An internal process communication error occurred. This condition usually indicates some software error, but may also mean that some process was not running because of misconfiguration. 182 179 185 180
6 7 8 9
10
Invalid State
180
11 12
179 178
13
Software error
An internal software error occurred. Report the 180 entire IEC string, including the diagnostic code field, to customer support. The gateway or signaling interfaces are being 187 taken out of service (forcefully or gracefully). A possible cause may be the signaling interface required to support the call has already been administratively shut down. An outbound dial peer could not be used 181 because the configured maximum number of connections for the dial peer had been reached. An outbound dial peer could not be used 28 because the configured numbering type did not match the type specified in the call. The system failed to select an available interface among the trunk group specified for use by a matching dial peer. An error occurred in processing caller ID information. 182
14
21
22
23
24
180
119
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
Table 15
Code 25 26
Explanation The system could not find an application to take the incoming call. Check your call application and dial peer configurations. The event points to a session application that no longer exists and is being discarded. An incoming call setup indication was received, bearing the same globally unique identifier (GUID) as a call in existence. The call is being rejected because a loop is suspected. An incoming call was rejected because configured call spike thresholds were exceeded.
Category 180
27 28
180 180
29
181
30
A matched dial peer could not be used to find 181 an inbound application because the permission setting on it blocked its use as an inbound dial peer. As a result, no application could be found to handle the call. A matched dial peer could not be used to place 181 the call because the configured permission on it contradicted its use as an outbound dial peer. The maximum number of handoffs between applications for a single call has been exceeded. Check your application scripts to make sure there is no infinite loop within the applications. A call handoff attempt between applications failed because the applications were incompatible. Tcl IVR 1.0 applications are incompatible with Tcl IVR 2.0 or VXML applications. 180
31
32
33
180
34
A matched dial peer could not be used for the 180 outbound leg because there was no appropriate interface for the dial peer type. This condition may be a software or configuration error. The tag identifier for the problematic dial peer is provided in the diagnostic field (the last component) of the six-part IEC string. Check your dial peer configuration. Some data structure or process that should have been created at system initialization is missing. Report the IEC to customer support. 180
35
120
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
Table 16
Code 1
Descriptor No Memory
Explanation
Category
Dynamically allocated memory on the gateway 181 is exhausted. This condition may indicate a temporary overload or a memory leak caused by faulty software. Packet or buffer memory is exhausted. This condition may indicate a temporary overload or a memory leak caused by faulty software. Call is rejected because default or configured CPU usage threshold has been exceeded. Call is rejected because default or configured memory usage threshold has been exceeded. 181
No buffers
3 4 5
181 181
No dial peer satisfied the match criteria for 128 accepting or handling the call. This condition usually indicates a dial peer misconfiguration. There were insufficient DSP resources to handle the call. An error occurred on a socket interface. 182 179
6 7 8
185 Media (RTP/RTCP) inactivity timer expired for the call. This is logged by the script when it specifies media_inactivity_err as the IEC to be used for the disconnect. Invalid arguments were passed to a function. This condition usually indicates an internal software error. An unexpected event was received while in a state that was inappropriate for processing such an event. The software timed out waiting for some response or event to happen. 180
Invalid arguments
10
Invalid state
180
11 12
179
178 An internal process communication error occurred. This usually indicates some software error, but may also mean that some process was not running because of misconfiguration. An internal software error occurred. Please report the entire IEC string, including the diagnostic code field, to customer support. 180
13
Software error
14
The gateway or signaling interfaces are being 187 taken out of service (forcefully or gracefully). A possible cause may be the signaling interface required to support the call has already been administratively shut down.
121
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
Table 16
Code 21
Explanation An error was detected while parsing a Tcl script. Enable the debug voip ivr error command for more detailed information.
Category 180
22
180 A Tcl IVR script specified an unrecognized event in the definition of the finite state machine (FSM). Enable the debug voip ivr error command for more detailed information. A Tcl IVR script specified invalid arguments 180 when invoking a Tcl command procedure. Enable the debug voip ivr error command for more detailed information. 180 A Tcl script tried to access an unrecognized infotag, or it may have tried to use a recognized infotag in an unsupported mode (for example, issues a get command on a set-only infotag or vice versa). Enable the debug voip ivr error command for more detailed information. 180 A Tcl script tried to execute an action or command that was invalid, or invalid given the state it was in. Enable the debug voip ivr error command for more detailed information. This call was rejected because it matched the profile defined for calls to be blocked. 228
23
24
Unsupported infotag
25
26 27
An inbound call was rejected because it failed 228 OSP settlement checking, due to one of the following conditions:
An OSP token was required and no valid one was found. An OSP token was included in the SETUP indication when none was expected. 180
28
vxmldialog failed
The Tcl IVR application failed to initiate the VXML dialog. Turn on VXML debugging for more detailed information.
29
A Tcl script terminated execution on failure of 47 the media play command because the prompt initialization failed. Possible causes:
A syntax error in the specification of prompt tokens Misconfiguration of language prompt-file locations.
Enable the debug voip ivr dynamic and debug voip ivr error commands for more detailed information.
122
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
Table 16
Code 30
Explanation
Category
A Tcl script requested a media operation, for 180 example, play, stop, or seek, on one or more legs that were in a conferenced state, or where there was a VXML dialog active. A Tcl script terminated because an infotag retrieval failed. Enable the debug voip ivr error command for more information. 180
31
32
A Tcl script terminated because an infotag set 180 operation failed. Enable the debug voip ivr error command for more information. An error was encountered while interpreting a 180 180 Tcl script. Enable the debug voip ivr error command for more information. 180 The application was unable to use one of the callinfo parameters for setup; for example, the octet 3 or octet 3a fields, redirect IE, and GUID. Enable the debug voip ivr error command for more information. The application could not run because it required an incompatible version of Tcl IVR. 180
33
34
35 36
A Tcl script terminated a call because an error 181 status was reported by the media layer in the ev_media_done event. This indicates a failure in the execution of media play or some other media operation requested by the script. The script may choose to ignore the error, or it can opt to terminate the call, specifying this IEC, media_done_err, as the reason for the disconnect. 179 The error is logged by the Tcl script when it fails to collect digits in response to a prompt and decides to terminate the call because of the failure. The failure may be normal, that is, the caller did not enter any digits, or it may be due to an actual error in software or hardware. This IEC is logged by the script when it specifies collectdigits_done_err as the IEC associated with the disconnect. The error code is set by the Tcl script when it terminates the call because it has received an indication that connectivity to the accounting server is lost. This IEC is logged when the script specifies accounting_conn_err as the IEC associated with the disconnect. 179
37
38
123
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
Table 16
Code 39
Explanation The error code is set by the Tcl script when it terminates a call because of error status reported on an ev_authenticate_done event. The script logs this error by specifying authenticate_done_err as the IEC associated with the disconnect.
Category 179
40
Authorization err
The error code is set by the Tcl script when it 179 terminates a call because of error status reported on an ev_authorize_done event. The script logs this error by specifying authorize_done_err as the IEC associated with the disconnect. The error is logged by the Tcl script when the 180 attribute type in the AAA av pair specified in the script is not supported.
41
Table 17
Code 1
Descriptor No Memory
Explanation
Category
Dynamically allocated memory on the gateway 181 is exhausted. This condition may indicate a temporary overload or a memory leak caused by faulty software. Packet or buffer memory is exhausted. This condition may indicate a temporary overload or a memory leak caused by faulty software. Call was rejected because default or configured CPU usage threshold has been exceeded. Call was rejected because default or configured memory usage threshold has been exceeded. 181
No buffers
CPU high
181
Low memory
181
No dial peer satisfied the match criteria for 128 accepting or handling the call. This condition usually indicates a dial peer misconfiguration. There were insufficient DSP resources to handle the call. An error occurred on a socket interface. Media (RTP/RTCP) inactivity timer expired for the call. Invalid arguments passed to a function. This condition usually indicates an internal software error. 182 179 185 180
6 7 8 9
124
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
Table 17
Code 10
Explanation An unexpected event was received while in a state that was inappropriate for processing such an event. The software timed out waiting for some response or event to happen. An internal process communication error occurred. This condition usually indicates some software error, but may also mean that some process was not running because of misconfiguration.
Category 180
11 12
179 178
13
Software error
An internal software error occurred. Report the 180 entire IEC string, including the diagnostic code field, to customer support. The gateway or signaling interfaces are being 187 taken out of service (forcefully or gracefully). A possible cause may be the signaling interface required to support the call has already been administratively shut down. The maximum number of connections for the leg has been exceeded. An attempt to bridge yet another connection on the leg failed. The specified target application for a call handoff was not found on the gateway. A matched dial peer could not be used for the outbound leg because the gateway cannot translate between the inbound and outbound protocols. OSP settlement checking failed for an outbound call. 180
14
21
22 23
180 47
24 25
228
A dial peer that was being used for a call setup 47 was deleted (through CLI) before the call could be initiated. An outbound dial peer matching this call's parameters specified an interface that was in use and unavailable. 182
26
Interface busy
27
An application tried to place an outbound call 180 using a dial peer configured with an outbound application. However, the first application does not support call handoff, so cannot pass the call to the second application. A Tcl script tried to issue a leg setup continue 180 command when a previous setup continue command was still outstanding. The call was rejected because it matched the profile defined for calls to be blocked. 228
28
29
125
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
Table 18
Code 1
Descriptor No Memory
Explanation
Category
Dynamically allocated memory on the gateway 181 is exhausted. This condition may indicate a temporary overload or a memory leak caused by faulty software. Packet or buffer memory is exhausted. This condition may indicate a temporary overload or a memory leak caused by faulty software. Call rejected because default or configured CPU usage threshold has been exceeded. Call rejected because default or configured memory usage threshold has been exceeded. 181
No buffers
3 4 5
181 181
No dial peer satisfied the match criteria for 128 accepting or handling the call. This condition usually indicates a dial peer misconfiguration. Insufficient DSP resources to handle the call. An error occurred on a socket interface. Media (RTP/RTCP) inactivity timer expired for the call. Invalid arguments were passed to a function. This condition usually indicates an internal software error. An unexpected event was received while in a state that was inappropriate for processing such an event. The software timed out waiting for some response or event to happen. An internal process communication error occurred. This condition usually indicates some software error, but may also mean that some process was not running because of misconfiguration. 182 179 185 180
6 7 8 9
10
Invalid State
180
11 12
179 178
13
Software error
An internal software error occurred. Report the 180 entire IEC string, including the diagnostic code field, to customer support. The gateway or signaling interfaces are being 187 taken out of service (forcefully or gracefully). A possible cause may be the signaling interface required to support the call has already been administratively shut down. A loop was detected while processing a 128 redirected call. The new destination matches a previously seen redirect address.
14
21
126
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
Table 18
Code 22
Explanation
Category
Either an OSP token was detected in the setup 47 message, or the dial peer configuration specified that settlement is to be used for this call. However, the default or session application configured to handle this call does not support the OSP protocol. Check the dial peer configuration and ensure that an OSP-capable application is defined. The call was rejected because it matched the profile defined for incoming calls to be blocked. An outbound dial peer matching this call's parameters specified an interface that was in use and unavailable. Either the default application timed out waiting for the user to enter digits for the called number, or an INFO message arrived with zero-length called number. 228
23
Incompatible protocols
24
OSP Fail
182
25
28
26 27 28
The user entered an excessive number of digits 28 for the called number. Digit collection is not supported on the interface or protocol that originated this call. The number of calls serviced by this gateway has exceeded the total number permitted, as defined by the call threshold global total-calls command. The maximum number of redirects (call forwarding) allowed for a call has been exceeded. 79 181
29
128
Table 19
Code 1
Descriptor No memory
Explanation
Category
Dynamically allocated memory on the gateway 181 is exhausted. This condition may indicate a temporary overload or a memory leak caused by faulty software. Packet or buffer memory is exhausted. This condition may indicate a temporary overload or a memory leak caused by faulty software. Call rejected because default or configured CPU usage threshold has been exceeded. Call rejected because default or configured memory usage threshold has been exceeded. 181
No buffers
3 4
181 181
127
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
Table 19
Code 5
Explanation
Category
No dial peer satisfied the match criteria for 128 accepting or handling the call. This condition usually indicates a dial peer misconfiguration. There were insufficient DSP resources to handle the call. An error occurred on a socket interface. Media (RTP/RTCP) inactivity timer expired for the call. Invalid arguments passed to a function. This condition usually indicates an internal software error. An unexpected event was received while in a state that was inappropriate for processing such an event. The software timed out waiting for some response or event to happen. An internal process communication error occurred. This condition usually indicates some software error, but may also mean that some process was not running because of misconfiguration. 182 179 185 180
6 7 8 9
10
Invalid state
180
11 12
179 178
13
Software error
An internal software error occurred. Report the 180 entire IEC string, including the diagnostic code field, to customer support. The gateway or signaling interfaces are being 187 taken out of service (forcefully or gracefully). A possible cause may be the signaling interface required to support the call has already been administratively shut down. 127 The H.323 subsystem routinely provides specific IEC information, depending upon the source of an error. This IEC indicates that the exact source of an error is not available in this instance. Timeout occurred waiting for the callproc or alerting messages. The calling party is given the response No user responding, and the called party is given the response Recovery on timer expiry as specified by Q931. Setup was sent; callproc, alert, or progress messages were already received; and timeout occurred waiting for connect message. 18
14
21
22
23
19
24
A timeout occurred while waiting for response 41 for admission request sent to the gatekeeper.
128
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
Table 19
Code 25 26
Explanation
Category
A timeout occurred while waiting for response 41 for bandwidth request sent to the gatekeeper. The system received an Annex E RESTART message from the remote end. All calls with CRVs corresponding with destination address were cleared. The H.225 message was received with one of the following:
41
27
95
An invalid CRV Parse error Mandatory IE missing Message out of sequence Wrong IE length Wrong IEC content 96
28
Setup no called no
Received H.225 setup message and the mandatory field, called number, was not present. The H.225 message received on parsing the H.225 message found an ASN decode error.
29 30 31
H225 ASN error Wait RAS Cfm msg bad ACF, call redirected
100
The system received an unexpected message in 101 a state waiting for RAS CFM message. 128 In response to the ARQ, the gatekeeper returned 0.0.0.0 as the destination IP address in the Admission confirm (ACF). This is an attempt to redirect the call by the gatekeeper. During an originating call attempt, the DNS/Enum resolution fails. During call setup attempt using an alternate endpoint, the gatekeeper found that there are no alternate endpoints to try. A new call is not allowed due to RAS not ready, that is, the gateway is not registered to the gatekeeper. Received setup message at terminating endpoint, failed to get a valid unique CRV value. Encoding and sending of terminal capability request failed. Encoding and sending of end session acknowledgement PDU failed. Encoding and sending of end session PDU failed. 128 128
32 33
34
179
35
180
36 37 38
TCS encode send End session ack send End session send
129
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
Table 19
Code 39 40 41 42
Descriptor Userinput send Userinput upd send Userinput alpha send TCS ack fail
Explanation Encoding and sending of user input signal PDU failed. Encoding and sending of user input signal update PDU failed. Encoding and sending of user input alpha signal PDU failed. The H.245 capability state machine failed to send TCS acknowledgement for the received TCS request.
43 44
The H.245 capability state machine failed to 180 send TCS reject for the received TCS request. The H.245 capability state machine received a 180 TCS request, and received an internal event to send the TCS release request. During H.225 PDU send operation, an error 180 occurred in memory allocation or socket queue was full. Encoding and sending of ALERT PDU failed. 180 Encoding and sending of Call Proceeding PDU 180 failed. Encoding and sending of PROGRESS PDU failed. Encoding and sending of INFO PDU failed. Encoding and sending of USER INFO PDU failed. Encoding and sending of FACILITY PDU failed. Encoding and sending of SUSPEND PDU failed. 180
45
46 47 48 49 50 51 52 53 54 55 56 57 58 59
ALERT send failed CallProc send failed PROGRESS send failed NOTIFY send failed INFO send failed USER INFO send failed FACILITY send failed SUSPEND send failed SUSPEND REJ send failed RESUME send failed PASSTHRU send failed CONNECT send failed SETUP ACK send failed RSCMSM interface unavail
Encoding and sending of NOTIFY PDU failed. 180 180 180 180 180
Encoding and sending of SUSPEND REJECT 180 PDU failed. Encoding and sending of RESUME PDU failed. Encoding and sending of PASSTHRU PDU failed. Encoding and sending of CONNECT PDU failed. Encoding and sending of SETUP ACK PDU failed. RSCMSM call admission control (CAC) interface unavailable due to resource failure. 180 180 180 180 181
130
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
Table 19
Code 60 61 62 63 64
Descriptor H245 sock start fail Call entry no mem Timeout h245 conn TCS ack wait timeout MS status indetermine
Explanation H.245 listening socket failed to start. During the outgoing call, a resource failure occurred for call entry data structure. H.245 connection wait timeout occcurred. In the capability state machine, timer expiry occurred waiting for the TCS ACK message.
In the MSD state machine, the MSD request is 183 received from remote, and the result of master slave status is indeterminate. This status occurs if sent and received random numbers are the same, or if both the local and remote terminal types are same. In the MSD state machine, MSD ACK is received from remote end but there is a disagreement in the MSD result. 183
65
66
The gateway sent the MSD request, but neither 183 the incoming MSD or MSD ACK message was received. 183 The gateway sent the MSD request, the incoming MSD was received from the remote end, and MSD ACK was sent to the remote end in response. The expected MSD ACK message was not received from the remote. 183 In the MSD state machine, the MSD request was sent and the MSD reject was received from the remote end. MSD requests are sent for a fixed maximum number of retries before release. In the MSD state machine, the MSD request was sent, and the MSD release indication was received from the remote end. 183
67
68
69
70
In the OLC state machine, T103 timer expired 183 waiting for the OLC ACK message in response to the sent OLC message. Received QoS failure for non sync RSVP on IP-IP gateway, indicating minimum QoS was provided, not best effort. 184
71
72
The bandwidth in bearer capability exceeds the 184 maximum configured, and minimum QoS was provided, not best effort. This error occurs during build of nonstandard QoS IE for setup or call processing messages.
131
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
Table 19
Code 73
Explanation
Category
184 Received setup or call processing message with QoS in nonstandard parameter; the remote end did not have enough bandwidth to support RSVP. The acceptable QoS for audio was not best effort, and remote minimum QoS was provided, not best effort. Received RSVP failure and QoS treatment 184 specifies that the gateway abort the call, because the minimum QoS was not best effort. Received fast start setup for QoS and remote 184 minimum QoS was not best effort, but desired QoS was best effort. The H.225 state machine received a slow start 184 H.225 Setup, with no H.245 address in Setup; that was not a sigonly call and remote minimum QoS was not best effort. Received external QoS release from QoS resource manager for either the outgoing or incoming H.225 QoS call setup request. 184
74
75
76
77
78 79
In the H.225 state machine, the fallback check 184 failed. During H.225 connection establishment, the channel connection failed due to TCP socket error. The session target in the dial peer directly points to the remote VoIP endpoint. During H.225 connection establishment, in a call attempt to an alternate endpoint, the channel connection failed due to TCP socket error. 186
80
186
81
During H.225 connection establishment (new 186 connection), the channel connection failed due to TCP socket error. The dial peer has a session target of RAS. During H.245 connection establishment, the channel connection failed due to TCP socket error. An error occurred during the setup PDU send operation on socket connection for H..225. This error occurs under the following conditions:
82
186
83
186
If the remote IP is a reachable address for pinging, but is not a valid H.323 endpoint. If there is an ASN.1 encoding error for setup PDU. 228
84
Preauth fail
132
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
Table 19
Code 85
Explanation
Category
Received an OLC with bandwidth requirement 278 that exceeds the configured value for acc-QoS for that media type. Received OLC indication when waiting for OLC ACK; the codecs in OLC did not match. Also the connection attempt was an asymmetric codec retry. The H.245 state machine received an OLC reject message. The H.225 state machine received an H.225 fast SETUP message during build of an OLC ACK and found that there was no matching codec. The OLC state machine received a bandwidth reject message. Received TCS ACK, but the negotiated codec result was none when call type was not passthrough. In the capability state machine, codec capabilities received from the remote end in the incoming TCS are not supported. 278
86
87 88
278 278
89 90
278 278
91
278
92
In the capability state machine, after sending a 278 TCS request, a TCS reject was received from the remote end. There was no negotiated codec or DTMF relayed mode based on the local or remote capabilities. 278
93
94
Table 20
Code 1
Descriptor No memory
Explanation
Category
Dynamically allocated memory on the gateway 181 is exhausted. This condition may indicate a temporary overload or a memory leak caused by faulty software. Packet or buffer memory is exhausted. This condition may indicate a temporary overload or a memory leak caused by faulty software. Call rejected because default or configured CPU usage threshold has been exceeded. Call rejected because default or configured memory usage threshold has been exceeded. 181
No buffers
3 4
181 181
133
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
Table 20
Code 5
Explanation
Category
No dial peer satisfied the match criteria for 128 accepting or handling the call. This condition usually indicates a dial peer misconfiguration. Insufficient DSP resources to handle the call. An error occurred on a socket interface. Media (RTP/RTCP) inactivity timer expired for the call. Invalid arguments passed to a function. This condition usually indicates an internal software error. An unexpected event was received while in a state that was inappropriate for processing such an event. The software timed out waiting for some response or event to happen. An internal process communication error occurred. This condition usually indicates some software error, but may also mean that some process was not running because of misconfiguration. 182 179 185 180
6 7 8 9
10
Invalid state
180
11 12
179 178
13
Software error
An internal software error occurred. Report the 180 entire IEC string, including the diagnostic code field, to customer support. The gateway or signaling interfaces are being 187 taken out of service (forcefully or gracefully). A possible cause may be the signaling interface required to support the call has already been administratively shut down. The CCSIP subsystem provides IEC information depending upon the source of an error. This IEC indicates that specific information was not available. Use SIP debug tools to help in troubleshooting. 127
14
21
22
Hold/Retrieve Timeout
A call was placed on hold with a configurable 41 timer started, and a timeout occurred for the retrieve operation. 95 An incoming request message was received with a CallID that is not currently in use; that is, there was a mismatch in associating CallID with the current call control block. An INVITE was sent, a 2xx response was received but the destination Session Description Protocol (SDP) body was unavailable. 96
23
24
134
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
Table 20
Code 25
Explanation An ACK request was received but the destination SDP body was unavailable for the delayed media call. A mid-call INVITE was sent, a 2xx response was received, but the destination SDP body was unavailable. The SIP contact header was missing in incoming SIP redirect (3xx) or 485 messages. An incoming request message was received with the following conditions:
Category 96
26
96
27 28
96 96
From, to, or both mandatory fields were missing There was an error in parsing the from and to fields 96 96 96 97 97
29 30 31 32 33
Request, missing Via Request, missing CSeq Request, missing Contact Request, unknown method Request, Version bad
An incoming request message was received, and the mandatory field Via was missing. An incoming request message was received, and the mandatory field CSeq was missing. An incoming request message was received, and the mandatory field Contact was missing. An incoming request message was received with an unknown or invalid SIP method. An incoming request message was received with a SIP version that was not supported on the user agent. Invalid or unsupported Content-Disposition with mandatory handling was received in an 18x session progress message. INVITE with either invalid header contents, SDP, or VIA parameters was received. An incoming request message was received and encountered an error in parsing the Via field. An incoming request message was received that generated an error in parsing the CSeq field. An incoming request message was received that generated an error in parsing the Contact field. An incoming request message was received with a Require header field containing an option tag with an unsupported extension.
34
100
35 36
100 100
37
100
38
100
39
100
135
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
Table 20
Code 40
Explanation An incoming request message was received with a Record-Route header field in a malformed format. An incoming request message was received with a Diversion header field in a malformed format. An unknown SIP response message was received while the system was waiting for an INVITE response.
Category 100
41
100
42
101
43
During an outgoing resource reservation state, 101 an unexpected SIP response message was received for the current call state. During an outgoing call, a session target found 128 null. During an outgoing call, a session target parse 128 failed. During an outgoing call, an invalid session target type occurred. 128
44 45 46 47 48
Session trgt null Session trgt parse Session trgt invalid DNS query fail INVITE, DNS qry fail
For an outgoing call, a DNS lookup of session 128 target failed. A failure response, rcvd target addr null, was received for the DNS query that was sent to resolve the contact in the received invite/FQDN in SDP. 128
49
A failure response, rcvd target addr null, was 128 received for the DNS query that was sent to resolve the contact in the received FQDN message in SDP after the 200 OK message was sent A failure response, rcvd target addr null, was received for the DNS query that was sent to resolve the contact or SDP FQDN message in the received mid-INVITE request. 128
50
51
DNS lookup failure for the Contact 128 header/FQDN message that was received in the SIP response message. A failure response, rcvd target addr null, was received for the DNS query that was sent for contact resolution, after a QoS progress message has been sent. Upon the system receiving a 3xx response on an outbound call during redirect procedure, a redirect loop was encountered. 128
52
53
128
136
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
Table 20
Code 54
Explanation
Category
Upon the system receiving a 3xx response on 128 an outbound call during redirect procedure, the maximum number of redirects was exceeded. Upon the system receiving a 3xx response on 128 an outbound call during redirect procedure, all contact choices were exhausted. A failure response, rcvd contact list null, was received for the query that was sent for enum resolution. 128
55
56
57
The INVITE Contact or Record Route was not 128 resolved to an IP address and port due to one of the following:
The user answered the call. A loopback event was received from the session application during the connection attempt. 129
58 59
Retries were exhausted for sending INVITEs 129 while waiting for 1xx response, and no redirect information was available. Retries were exhausted for PRACK retransmission. Retries were exhausted for COMET retransmission. Retries were exhausted for sending rel1xx messages and waiting for PRACK. 129 129 129
60 61 62 63
PRACK wait timeout & state bad This condition occurs when the system tries to 129 resend the rel1xx while waiting for a PRACK message, but the call state is wrong. Session app rsp timeout An INVITE request was received and timeout occurred while the system waited for a response to the SETUP sent from the session application. Retries were exhausted for sending midcall INVITE, while waiting for 1xx response and not trying DNS. Retries were exhausted after sending 200 OK message and waiting for ACK. 129
64
65
129
66 67
129
Error occurs if the connection attempt is in an 129 active state and ACK is not received after retries were exhausted sending 200 OK for the initial incoming INVITE.
137
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
Table 20
Code 68 69 70
Descriptor 200 wait timeout Xfer 2xx wait timeout Connect wait timeout
Explanation Retries were exhausted sending INVITE and waiting for the 200 OK. Failed call transfer, system timed out while waiting response for NOTIFY request.
A timeout occurred after receiving a 200 OK in 129 response to an INVITE and trying to request a UDP/TCP connection to the endpoint specified in the Contact or Record Route headers in order to send the ACK. 129 Timeout occurred while waiting for the Info request on a UDP/ TCP connection. Can occur for user agent client (UAC) or user agent server (UAS). Received invite request, resource error in sending 200 OK response. Received PRACK message, resource error in sending 200 OK response. Sending PRACK message failed. Sending COMET message failed during retransmission. Sending 183 (progress) response message failed during transmission. 180 180 180 180 180
71
72 73 74 75 76 77 78
Send 200, rsrc fail Send 200, rsrc fail Send PRACK, rsrc fail Send COMET, rsrc fail Send 183, rsrc fail Send 180, rsrc fail Rcvd 3xx, contact parse
Sending of 180 response message failed during 180 transmission. Internal error or malformed Contact header encountered during SIP redirect (3xx) response processing. Resource failure during processing of the media changes. Encountered a resource error in launching a DNS query. Resource error in reinserting the associated call control block into table. A send operation for invite request failed. A send operation for notify request failed. A send operation for ACK request failed. A send operation for refer request failed. A send operation for refer response failed. 180
79 80 81 82 83 84 85 86 87
Rsrc process media Err launch dns Err reinserting ccb INVITE send fail NOTIFY send fail ACK send fail REFER send fail REFER response send fail Call Hold fail
A hold operation failed on an active call while 180 resending the invite to the peer.
138
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
Table 20
Code 88
Explanation
Category
The voice CPU and memory resource monitor, 181 RSCMSM CAC interface, is unavailable due to resource failure. While creating a call entry, a resource failure occurred during call origination. Memory allocation failure for a redirect info structure creation during a SIP redirect (3xx) message process. 181 181
89 90
91
During an outgoing call, a mismatch occurred 184 in QoS or invalid reliable provisional response and QoS configuration. After 1xx Session progress receipt, QoS failure 184 in negotiation occurred while the system checked the configured req and acc QoS values against values in incoming message. Resource allocation failure occurred at RSVP layer for outgoing call. Retries were exhausted for sending QoS PROGRESS or resource reservation requests. Resource allocation failure occurred at RSVP layer for incoming call. During handling of INVITE, QoS failure in negotiation occurred while checking the configured req and acc QoS values against values in incoming message. 184 184 184 184
92
93 94 95 96
RSVP failure outgoing QoS retries crossed RSVP failure incoming INVITE, QoS mismatch
97
184 During handling of PRACK, QoS failure in negotiation occurred while the system checked the configured req and acc QoS values against values in incoming message. 184 During handling of COMET, QoS failure in negotiation occurred while the system checked the local QoS values with those in received a=QoS:line in COMET. Fallback check failure for IP network quality occurred at either the originating or terminating gateway. 184
98
99
100
The success response for INVITE send has 186 been received; the socket returned an error for sending ACK. Sent INVITE and received 200 OK; TCP/UDP 186 connection to the endpoint specified in the contact or record route failed. A connection refused error occurred during a send operation with error 146. 186
101
102
139
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
Table 20
Descriptor INVITE, Preauth fail 180, codec mismatch 183, codec mismatch 200, codec mismatch RE-INVITE, codec mismatch
Explanation Received INVITE; preauthentication attempt failed. Media negotiation failure occurred for incoming 180 Alerting responses. Media negotiation failure occurred for incoming 183 Session Progress responses. Media negotiation failure occurred for incoming 200 OK responses. A media information mismatch occurred for the media information received in re-INVITE with the media information previously received in INVITE. During processing of the ACK message in response to 200 OK, media negotiation failed due to a codec mismatch in delayed media processing. Sent mid-INVITE; received 2xx response and the media negotiation failed due to a codec mismatch. Media negotiation failure occurred for an incoming INVITE request. Media negotiation failure occurred for an incoming PRACK message.
108
278
109
278
110 111
278 278
Table 21
Code 1
Descriptor No Memory
Explanation
Category
Dynamically allocated memory on the gateway 181 was exhausted. This condition may indicate a temporary overload or a memory leak caused by faulty software. Packet or buffer memory is exhausted. This condition may indicate a temporary overload or a memory leak caused by faulty software. 181
No buffers
3 4 5
Call rejected because the default or configured 181 CPU usage threshold has been exceeded. Call rejected because the default or configured 181 memory usage threshold has been exceeded. No dial peer satisfied the match criteria for 128 accepting or handling the call. This condition usually indicates a dial peer misconfiguration. There were insufficient DSP resources to handle the call. 182
No DSP resource
140
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
Table 21
Code 7 8 9
Explanation An error occurred on a socket interface. Media (RTP/RTCP) inactivity timer expired for the call. Invalid arguments passed to a function. This condition usually indicates an internal software error. An unexpected event was received while in a state that was inappropriate for processing such an event. The software timed out waiting for some response or event to happen.
10
Invalid state
180
11 12
179
An internal process communication error 178 occurred. This usually indicates some software error, but may also mean that some process was not running because of misconfiguration. An internal software error occurred. Report the 180 entire IEC string, including the diagnostic code field, to customer support. The gateway or signaling interfaces are being 187 taken out of service (forcefully or gracefully). A possible cause may be the signaling interface required to support the call has already been administratively shut down. An attempt to change the DSP mode failed. An unspecified failure occurred in DSP interaction. DSP could not allocate chunk memory, indicating a temporary overload or a memory leak caused by faulty software. The call was disconnected because no DSP resources were available. The call was disconnected because of some code error path. 182 182 182
13
Software error
14
21 22 23
24 25 26 27
No DSP resource available Bad DSP parameters Codec incompatible DSP alarm
182 182
The call failed because of incompatible codec 182 types. DSP sent an alarm. Possible causes are:
182
28
The call failed because the voice path could not 182 be cut through.
141
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
Table 21
Code 29
Explanation A tie-line call failed because of a misconfiguration of the tie line on the voice port. Check the tie-line string.
Category 180
30
An unknown call mode was specified to set up 180 a call. This condition usually indicates an internal software error. Failure to set up a call occurred on a deleted interface. This condition may happen if a call comes on an interface while the interface is being hot-swapped. 182
31
Interface deleted
32
TDM hairpinning failed. This condition may 182 occur because of data structure allocation failure or because of actual hairpinning failure. Attempt to set the DSP to the specific digit mode failed. This condition also occurs when memory is exhausted. This condition occurs when memory is exhausted. 182
33
34 35
180
Call failed because of a time out on waiting for 182 DSP action.
Table 22
Code 1
Descriptor No memory
Explanation
Category
Dynamically allocated memory on the gateway 181 was exhausted. This condition may indicate a temporary overload or a memory leak caused by faulty software. Packet or buffer memory was exhausted. This condition may indicate a temporary overload or a memory leak caused by faulty software. Call rejected because default or configured CPU usage threshold has been exceeded. Call rejected because default or configured memory usage threshold has been exceeded. 181
No buffers
3 4 5
181 181
No dial peer satisfied the match criteria for 128 accepting or handling the call. This condition usually indicates a dial peer misconfiguration. There were insufficient DSP resources to handle the call. An error occurred on a socket interface. Media (RTP/RTCP) inactivity timer expired for the call. 182 179 185
6 7 8
142
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
Table 22
Code 9
Explanation Invalid arguments were passed to a function. This condition usually indicates an internal software error.
Category 180
10
Invalid State
Some unexpected event was received while the 180 system was in a state that was inappropriate for processing such an event. The software timed out waiting for some response or event to happen. An internal process communication error occurred. This condition usually indicates some software error, but may also mean that some process was not running because of misconfiguration. 179 178
11 12
13
Software Error
An internal software error occurred. Report the 180 entire IEC string, including the diagnostic code field, to customer support. The gateway or signaling interfaces are being 187 taken out of service (forcefully or gracefully). A possible cause may be the signaling interface required to support the call has already been administratively shut down. OSP settlement checking failed for an outbound call. The call was rejected because it matched the profile defined for calls to be blocked. Diagnostic codes are the following:
14
21 22
228 228
23 24
Indicates a failure in media play or some other 181 media operation. 179 The error occurred due to the session application failure to collect digits. The failure may be normal; that is, the caller did not enter any digits, or it may be due to an actual error in software or hardware. To interpret the diagnostic code, see Tcl IVR cd_xxx status codes in the Events and Status Codes chapter in the Tcl IVR API Version 2.0 Programming Guide.
143
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
Table 22
Code 25
Explanation
Category
Call setup was not successful. To interpret the 179 diagnostic code, see Tcl IVR ls_xxx status codes in the Events and Status Codes chapter in the Tcl IVR API Version 2.0 Programming Guide. OSP settlement allocated a limited time for call 228 usage. The total time of the call has exceeded that usage.
26
Table 23 shows the standard internal error codes (numbered 1 through 14) and the new gatekeeper-specific error codes (numbered 21 through 45) added in Release 12.4(4)T.
Table 23 Error Codes for the Gatekeeper Subsystem
Code 1
Descriptor No memory
Explanation
Category
Dynamically allocated memory on the gateway 19 was exhausted. This condition may indicate a temporary overload or a memory leak caused by faulty software. Packet or buffer memory was exhausted. This condition may indicate a temporary overload or a memory leak caused by faulty software. 19
No buffers
3 4
Call rejected because the default or configured 20 CPU usage threshold has been exceeded. An internal software error occurred. Report the 21 entire IEC string, including the diagnostic code field, to customer support. Error code not assignedreserved for future use. Error code not assignedreserved for future use. Error code not assignedreserved for future use. Error code not assignedreserved for future use. Error code not assignedreserved for future use. Error code not assignedreserved for future use. Error code not assignedreserved for future use. Error code not assignedreserved for future use. 0 0 0 0 0 0 0 0
5 6 7 8 9 10 11 12
Code not assigned, reserved for future use Code not assigned, reserved for future use Code not assigned, reserved for future use Code not assigned, reserved for future use Code not assigned, reserved for future use Code not assigned, reserved for future use Code not assigned, reserved for future use Code not assigned, reserved for future use
144
Cisco VoIP Internal Error Codes Information About Cisco VoIP Internal Error Codes
Table 23
Code 13 14 21
Descriptor Code not assigned, reserved for future use Call threshold exceeded GK server error
Explanation Error code not assignedreserved for future use. ARQ came, but because the call threshold is exceeded, this ARQ cannot be processed. Error in processing the GKTMP message. Server is trying to modify a field that should not be modified. Gateway is out of resources, so no more calls can be routed. Address resoultion was not successful. Could not find the GW to route. LRQ/LRQs were sent to the remote GK, but the GK could not resolve. Mandatory endpoint identifier field in the incoming ARQ is invalid or not present. Badly formatted server message. GK/GKAPI could not process. Proxy selection failed. There is no session bandwith to process the incoming ARQ.
Category 0 8 20
22 23 24 25 26 27 28 29 30 31
GW out of resource Could not find an available GW for routing LRQ fail Invalid endpoint ID Bad message from server Proxy selection failed No session bandwidth No total bandwidth Invalid CAT token present Endpoint killed
14 8 20 7 20 8 3
There is no total bandwith to process incoming 3 ARQ. Incoming ARQ did not have a valid CAT to authenticate. 9
GK had sent a request AAA/Route server/OSP 8 server. When the response came, the endpoint was deleted. GK had sent a request AAA/Route server/OSP 8 server. When the response came, DRQ is in progress. GK sent a request to the route server, but no server responded. Proxy session failed, so admission is denied. 20 8
32
DRQ in progress
33 34 35
No destination Info alias and no destination IP 11 address, and no pointers to remote zones or carriers. Remote or interzone bandwidth is not available. 3
36 37 38
ACF was prepared, but could not be sent. ASN 22 or socket error. Answer ARQ came with a CRV that is already 21 being processed at the GK.
145
Table 23
Code 39 40 41
Descriptor IZCT acc list denied No bandwidth No bandwidth during update request Forced disengage GK shutdown Aged call Acc list denied
Explanation IZCT access list denied. Bandwidth not available at the terminating GK. When a call is using a proxy or the call is intrazone, the call failed trying to update the bandwidth information in the call record. call delete CLI was used to forcefully delete the call. Call was deleted because the GK was shut down. Call was deleted because of aging. Access list denied.
Category 9 3 3
42 43 44 45
24 24 24 9
Configuring IEC Options, page 146 (optional) Verifying IEC Options, page 149 (optional)
Enabling IEC Syslog Reporting, page 146 Configuring Cause Code Mapping, page 147 Troubleshooting Tips, page 148
SUMMARY STEPS
1. 2. 3.
146
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
Example:
Router(config)# voice iec syslog
SUMMARY STEPS
1. 2. 3. 4. 5.
enable configure terminal voice cause-code error-category number q850-cause number exit
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Step 3
voice cause-code
Example:
Router(config)# voice cause-code
147
Command or Action
Step 4
error-category number q850-cause number
Values for error-category range from 128 to 278. Values for the Q.850 cause code range from 1 to 127.
Example:
Router(conf-voice-cause)# error-category 128 q850-cause 27
Step 5
exit
Example:
Router(conf-voice-cause)# exit
Troubleshooting Tips
The IEC feature is itself a troubleshooting tool. By enabling the voice iec syslog command you can display IECs logged in real time, which allows you to isolate a failure cause without turning on debugging. Then, based on the IEC reported, you can selectively enable the appropriate debug tool to gather additional information. The IEC feature also provides a Cisco.com diagnostic tool that allows you to enter an IEC dotted string and receive an explanation of the component fields. The explanation includes a description of the problem, and depending upon the error type, a recommended course of action. Use the IEC lookup tool at http://www.cisco.com/univercd/cc/td/doc/product/voice/vtgemd.htm. To troubleshoot specific subsystems that do not generate corresponding IECs, use the following debug and show commands:
To learn whether the ISDN link is up or down, use the show isdn status command. To display information about whether the ISDN link is receiving SETUP, CALLPRO, ALERT, CONNECT, and RELEASE COMPLETE messages, use the debug isdn q931 command. To display information about H.225 and RAS messages exchanged between a gateway and gatekeeper, use the debug h225 asn1 command. H.225 debug output for the terminating side, in the initial stage when a setup message is being received, provides an indication if messages are being received from the IP side and if H.323 service is operational. If the H.225 connection is not established from the incoming side, then no IECs are generated.
What to Do Next
Proceed to the section Verifying IEC Options, page 149.
New and Modified Configuration Commands for Gatekeeper IECs in Cisco IOS Release 12.4(4)T
To enable the enhanced capabilities of the gatekeeper-specific IECs in Release 12.4(4)T, there is one new command and one modified command. This section describes only the new information. For complete information on the commands for voice gateways and gatekeepers, refer to the Cisco IOS Voice Configuration Library on Cisco.com. This release introduces a new command for the gatekeeper configuration that causes retention of call history and enables you to specify the number of records to be kept in the history table.
148
In gatekeeper configuration mode, enter: gatekeeper(config)# call-history max-size number The number argument in this syntax can be any number from 0 to 1200. The default is 15. This represents the maximum number of records of old calls to be stored and available for display. To display the historical information, enter the following command on the gatekeeper: gatekeeper# show gatekeeper calls history This command has been modified with the addition of the history keyword. This keyword was added to display call history information along with internal error codes at the gatekeeper. The number of disconnected calls displayed in response to this command is the number value specified in the call-history max-size number command. Use of this max-size number helps to reduce excessive CPU usage in the storage and reporting of this information.
Prerequisites
Before you can display IEC counter information, you must configure voice statistics settings.
SUMMARY STEPS
1. 2. 3. 4. 5.
enable voice statistics type iec voice statistics max-storage-duration {day number-of-days | hour number-of-hours | minute number-of-minutes} voice statistics time-range periodic interval-length [start hh:mm] [end hh:mm] [days-of-week days] voice statistics time-range since-reset
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
Example:
Router# voice statistics type iec
149
Command or Action
Step 3
voice statistics max-storage-duration {day number-of-days| hour number-of-hours | minute number-of-minutes}
Purpose (Optional) Configures how long interval counters are kept for display.
Example:
Router# voice statistics max-storage-duration day 1
If you want to display counters for past intervals, you must configure a storage duration for expired counters. Otherwise, once the interval has expired, the counters are no longer available.
Step 4
voice statistics time-range periodic interval-length [start hh:mm] [end hh:mm] [days-of-week days]
Example:
Router# voice statistics time-range periodic 30minutes
The range for hh:mm is 00:00 to 23:59. The default for the start keyword is 00:00. The default for the end keyword is 00:00. The days argument takes one of the following values:
fridayFriday mondayMonday saturdaySaturday sundaySunday thursdayThursday tuesdayTuesday wednesdayWednesday dailyEvery day of the week weekdaysMonday thru Friday weekendSaturday and Sunday
Example:
Router# voice statistics time-range since-reset
(Optional) Enables the collection of call statistics information accumulated since the last resetting of IEC counters.
SUMMARY STEPS
1.
enable
150
Cisco VoIP Internal Error Codes Configuration Examples for Cisco VoIP Internal Error Codes
2. 3. 4. 5. 6.
show running-config show voice cause-code category-q850 show voice iec description string show voice statistics iec {interval number | since-reboot | since-reset} clear voice statistics iec
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
show running-config
Example:
Router# show running-config
Step 3
Example:
Router# show voice cause-code category-q850
Step 4
Example:
Router# show voice iec description 1.1.128.1.5.0
Step 5
Example:
Router# show voice statistics iec interval 15
Specify the following displays: statistics by selected time interval, or statistics since the last router reboot, or statistics since the last instance when counters were cleared.
Step 6
Example:
Router# clear voice statistics iec
Enabling IEC Syslog Reporting and Configuring Cause Code Mapping: Example, page 152 Verifying IEC Configuration: Example, page 152
151
Cisco VoIP Internal Error Codes Configuration Examples for Cisco VoIP Internal Error Codes
Enabling IEC Syslog Reporting and Configuring Cause Code Mapping: Example
In the following example, IEC syslog reporting and cause-code mapping are enabled:
enable configure terminal voice iec syslog voice cause-code error-category 128 q850-cause 27
152
Cisco VoIP Internal Error Codes Configuration Examples for Cisco VoIP Internal Error Codes
! ! controller T1 3/0 framing esf linecode b8zs pri-group timeslots 1-24 ! controller T1 3/1 shutdown framing sf linecode ami gw-accounting aaa ! ! ! interface FastEthernet0/0 ip address 172.18.195.28 255.255.255.0 no ip route-cache no ip mroute-cache duplex full speed 100 no cdp enable h323-gateway voip interface h323-gateway voip id GK-1 ipaddr 172.18.195.41 1718 h323-gateway voip h323-id GW-1 ! interface FastEthernet0/1 no ip address no ip route-cache no ip mroute-cache shutdown duplex auto speed auto no cdp enable ! interface Serial0/0 no ip address no ip route-cache no ip mroute-cache shutdown clockrate 2000000 no cdp enable ! interface Serial0/1 no ip address no ip route-cache no ip mroute-cache shutdown clockrate 2000000 no cdp enable ! interface Serial3/0:23 no ip address dialer-group 1 isdn switch-type primary-5ess isdn incoming-voice modem no cdp enable ! ip classless ip route 0.0.0.0 0.0.0.0 172.18.195.1 no ip http server ! ! !
153
Cisco VoIP Internal Error Codes Configuration Examples for Cisco VoIP Internal Error Codes
radius-server host 172.18.200.222 auth-port 1645 acct-port 1646 radius-server key lab radius-server authorization permit missing Service-Type radius-server vsa send accounting call rsvp-sync ! ! voice-port 3/0:D ! ! mgcp profile default ! dial-peer cor custom ! ! ! dial-peer voice 100 pots destination-pattern 1#919.... direct-inward-dial port 3/0:D prefix 919 ! dial-peer voice 301 voip destination-pattern 7190003 session target ras ! ! gateway ! ! line con 0 exec-timeout 0 0 logging synchronous line aux 0 logging synchronous line vty 0 4 password lab line 1/00 1/59 no flush-at-activation modem InOut ! scheduler allocate 10000 400 end
Sample Output from the show voice iec description Command: Example
Router# show voice iec description 1.1.128.1.5.0 IEC Version:1 Entity:1 (Gateway) Category:128 (Destination address resolution failure) Subsystem:1 (CCAPI) Error:5 (No dial peer match) Diagnostic Code:0
Sample Output from the show voice statistics iec Command: Example
Router# show voice statistics iec since-reset Internal Error Code counters
154
Cisco VoIP Internal Error Codes Configuration Examples for Cisco VoIP Internal Error Codes
---------------------------Counters since last reset (2002-11-28T01:55:31Z): SUBSYSTEM CCAPI [subsystem code 1] [errcode 6] No DSP resource SUBSYSTEM SSAPP [subsystem code 4] [errcode 5] No dial peer match [errcode 3] CPU high SUBSYSTEM H323 [subsystem code 5] [errcode 22] No Usr Responding, H225 timeout [errcode 27] H225 invalid msg [errcode 79] H225 chn, sock fail SUBSYSTEM VTSP [subsystem code 9] [errcode 6] No DSP resource
2 96
1 1 27
83
Router# show voice statistics iec since-reboot Internal Error Code counters ---------------------------Counters since reboot: SUBSYSTEM CCAPI [subsystem code 1] [errcode 6] No DSP resource SUBSYSTEM SSAPP [subsystem code 4] [errcode 5] No dial peer match [errcode 3] CPU high SUBSYSTEM H323 [subsystem code 5] [errcode 21] No Usr Responding, H225 timeout [errcode 23] H225 invalid msg [errcode 39] H225 chn, sock fail SUBSYSTEM VTSP [subsystem code 9] [errcode 6] No DSP resource
93
830 1423
21 17 2073
429
Before using the show voice statistics iec interval command, first determine the intervals available for display by using the show voice statistics interval-tag command:
Router# show voice statistics interval-tag Current Time:2002-11-28T06:04:21Z INTERVAL-TAG START TIME END TIME ============== ====================== ====================== 1 2002-11-28T02:00:00Z 2002-11-28T02:30:01Z 2 2002-11-28T02:30:01Z 2002-11-28T03:00:01Z 3 2002-11-28T03:00:01Z 2002-11-28T03:30:01Z 4 2002-11-28T03:30:01Z 2002-11-28T04:00:01Z 5 2002-11-28T04:00:01Z 2002-11-28T04:30:01Z 6 2002-11-28T04:30:01Z 2002-11-28T05:00:01Z 7 2002-11-28T05:00:01Z 2002-11-28T05:30:01Z 8 2002-11-28T05:30:01Z 2002-11-28T06:00:01Z 9 2002-11-28T06:00:01Z 2002-11-28T06:04:21Z
155
Cisco VoIP Internal Error Codes Configuration Examples for Cisco VoIP Internal Error Codes
[errcode 6] No DSP resource SUBSYSTEM SSAPP [subsystem code 4] [errcode 3] CPU high SUBSYSTEM H323 [subsystem code 5] [errcode 23] H225 invalid msg [errcode 39] H225 chn, sock fail SUBSYSTEM VTSP [subsystem code 9] [errcode 6] No DSP resource
1 15 1 1 6
2 96
1 1 27
83
Sample Output from the show voice cause-code category-q850 Command: Example
Router# show voice cause-code category-q850 The Internal Error Category to Q850 cause code mapping table:Error Configured Default Description Category Q850 Q850 128 27 3 Destination address resolution failure 129 38 102 Call setup timeout 178 41 41 Internal Communication Error 179 41 41 External communication Error 180 47 47 Software Error 181 47 47 Software Resources Unavailable 182 47 47 Hardware Resources Unavailable 183 41 41 Capability Exchange Failure 184 49 49 QoS Error 185 41 41 RTP/RTCP receive timer expired or bearer layer failure 186 38 38 Signaling socket failure 187 38 38 Gateway or signaling interface taken out of service
156
Cisco VoIP Internal Error Codes Troubleshooting VoIP Networks Using Cisco VoIP Internal Error Codes
228 278
50 65
50 65
User is denied access to this service Media Negotiation Failure due to non-existing Codec
Troubleshooting Two-Stage Dialing Failures, page 157 Troubleshooting Socket Failures, page 161
Symptom
The Cisco router or gateway rejects a call placed by a PSTN ISDN user after all the digits have been dialed.
Problem Description
The PSTN user enters a destination number that is routed through the PSTN ISDN switch, which sends an ISDN SETUP message to the router. The router tags the incoming call leg and sends back an ISDN CONNECT message. The caller receives second dial tone. The router then enters the digit collection stage to use the collected digits to route the call to the next hop, at which point the router rejects the call.
Troubleshooting Tasks
Perform the following steps to determine the reason for call failure.
Step 1 Step 2 Step 3
Use the voice iec syslog command to enable displaying of IECs as they are encountered in real-time. Use the voice iec statistics type iec command to configure the collection of IEC statistics. Use the show running-config command to verify IEC, ISDN, and dial-peer configuration, as shown in the following partial sample output:
Router> show running-config Building configuration... !
157
Cisco VoIP Internal Error Codes Troubleshooting VoIP Networks Using Cisco VoIP Internal Error Codes
The following lines show the dial-peer configuration. Because the dial-peer voice 1 is not configured for direct inward dialing (DID), the inbound call leg is considered to be configured for two-stage dialing, and the router returns a second dial tone.
dial-peer voice 1 pots incoming called-number . port 0:D ! dial-peer voice 2 voip destination-pattern 83101 session target ipv4:172.69.85.107 dtmf-relay h245-alphanumeric codec g711ulaw ip qos dscp cs5 media ! !end
Step 4
Use the show controller t1 command to display T1 status. Verify that the T1 is UP and that there are no errors.
Router> show controller t1 0 T1 0 is up. Applique type is Channelized T1 Cablelength is short 133 No alarms detected. alarm-trigger is not set Version info of slot 0: HW: 1, PLD Rev: 11 Framer Version: 0x8 ! !
158
Cisco VoIP Internal Error Codes Troubleshooting VoIP Networks Using Cisco VoIP Internal Error Codes
! Framing is ESF, Line Code is B8ZS, Clock Source is Line Primary. Data in current interval (0 seconds elapsed): 0 Line Code Violations, 0 Path Code Violations 0 Slip Secs, 0 Fr Loss Secs, 0 Line Err Secs, 0 Degraded Mins 0 Errored Secs, 0 Bursty Err Secs, 0 Severely Err Secs, 0 Unavail Secs
Step 5
Use the show isdn status command to display ISDN status. Verify the ISDN Layer 2 status is MULTIPLE_FRAME_ESTABLISHED.
Router> show isdn status Global ISDN Switchtype = primary-ni ISDN Serial0:23 interface dsl 0, interface ISDN Switchtype = primary-ni Layer 1 Status: ACTIVE Layer 2 Status: TEI = 0, Ces = 1, SAPI = 0, State = MULTIPLE_FRAME_ESTABLISHED Layer 3 Status: 0 Active Layer 3 Call(s) Active dsl 0 CCBs = 0 The Free Channel Mask: 0x807FFFFF Number of L2 Discards = 0, L2 Session ID = 3 Total Allocated ISDN CCBs = 0
Step 6
Use the show isdn service command to display the status of each ISDN channel. Verify that the channels are IDLE and IN-SERVICE.
Router> show isdn service PRI Channel Statistics: ISDN Se0:23, Channel [1-24] Configured Isdn Interface (dsl) 0 Channel State (0=Idle 1=Proposed 2=Busy 3=Reserved 4=Restart 5=Maint_Pend) Channel : 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 State : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 Service State (0=Inservice 1=Maint 2=Outofservice) Channel : 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 State : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2
Step 7
Use the show dial-peer voice summary command to display voice dial peer information. Verify that Admin and Operation status are up and up.
Router> show dial-peer voice summary AD TAG TYPE MIN OPER PREFIX DEST-PATTERN 1 pots up up 2 voip up up 83101 PRE PASS FER THRU SESS-TARGET PORT 0 0:D 0 syst ipv4:172.69.85.107
Step 8
Use the debug isdn q931 command to display information about call setup and teardown of ISDN network connections. Use the debug vtsp dsp, debug vtsp session, and debug voip ccapi inout commands to get digit collection information, as shown in the following partial output.
Router# Router# Router# Router# debug debug debug debug isdn vtsp vtsp voip q931 dsp session ccapi inout callref = 0x0226
Aug 18 23:56:20.125: ISDN Se0:23 Q931: RX <- SETUP pd = 8 Bearer Capability i = 0x8090A2 Standard = CCITT Transer Capability = Speech Transfer Mode = Circuit Transfer Rate = 64 kbit/s
159
Cisco VoIP Internal Error Codes Troubleshooting VoIP Networks Using Cisco VoIP Internal Error Codes
Channel ID i = 0xA98381 Exclusive, Channel 1 Calling Party Number i = 0x2181, '40855501124' Plan:ISDN, Type:National Called Party Number i = 0x80, '83101' Plan:Unknown, Type:Unknown Aug 18 23:56:20.133: VDEV_ALLOCATE: 1/1 is allocated ! ! !
The following lines show the digit collection process, starting with the digit 8:
Aug 18 23:56:28.265: //6/65F920768011/VTSP:(0:D):0:112:4386/vtsp_dsm_digit_begin_cb: Digit begin: 8 Aug 18 23:56:28.265: //6/xxxxxxxxxxxx/CCAPI/cc_api_call_digit_begin: (dstVdbPtr=0x0, dstCallId=0xFFFFFFFF, srcCallId=0x6, ! ! !
!
! ! Aug 18 23:56:30.885: //6/65F920768011/VTSP:(0:D):0:112:4386/vtsp_dsm_digit_begin_cb: Digit begin: 1 Aug 18 23:56:30.885: //6/xxxxxxxxxxxx/CCAPI/cc_api_call_digit_begin: (dstVdbPtr=0x0, dstCallId=0xFFFFFFFF, srcCallId=0x6, digit=1, digit_begin_flags=0x1, rtp_timestamp=0xFFFFFE70 rtp_expiration=0x0, dest_mask=0x1) ! ! ! Aug 18 23:56:31.913: //6/65F920768011/VTSP:(0:D):0:112:4386/vtsp_dsm_digit_begin_cb: Digit begin: 0 Aug 18 23:56:31.913: //6/xxxxxxxxxxxx/CCAPI/cc_api_call_digit_begin: (dstVdbPtr=0x0, dstCallId=0xFFFFFFFF, srcCallId=0x6, digit=0, digit_begin_flags=0x1, rtp_timestamp=0xFFFFFE70 rtp_expiration=0x0, dest_mask=0x1) ! ! ! Aug 18 23:56:33.185: //6/65F920768011/VTSP:(0:D):0:112:4386/vtsp_dsm_digit_begin_cb: Digit begin: 2 Aug 18 23:56:33.185: //6/xxxxxxxxxxxx/CCAPI/cc_api_call_digit_begin: (dstVdbPtr=0x0, dstCallId=0xFFFFFFFF, srcCallId=0x6, digit=2, digit_begin_flags=0x1, rtp_timestamp=0xFFFFFE70 rtp_expiration=0x0, dest_mask=0x1) ! ! ! Aug 18 23:56:33.265: //6/65F920768011/VTSP:(0:D):0:112:4386/vtsp_report_digit_control: digit reporting disabled Aug 18 23:56:33.265: //6/65F920768011/DSM:(0:D):0:112:4386/dsp_stream_mgr_register_disposition: Ev: E_DSM_DSP_DTMF_DIGIT_BEGIN Disp: DS
160
Cisco VoIP Internal Error Codes Troubleshooting VoIP Networks Using Cisco VoIP Internal Error Codes
M_DISP_IGNORE Aug 18 23:56:33.265: //6/65F920768011/DSM:(0:D):0:112:4386/dsp_stream_mgr_register_disposition: Ev: E_DSM_DSP_DTMF_DIGIT Disp: DSM_DISP_IGNORE Aug 18 23:56:33.269: //6/xxxxxxxxxxxx/CCAPI/cc_api_call_report_digits_done: (vdbPtr=0x639DB450, callID=0x6, disp=0) Aug 18 23:56:33.269: //6/65F920768011/VTSP:(0:D):0:112:4386/vtsp_get_digit_timeouts: Inter digit = 10, Initial digit = 10
Because the router does not have an outgoing dial peer with destination pattern 83102, the call fails and an IEC is generated.
Aug 18 23:56:33.269: %VOICE_IEC-3-GW: AFSAPP: Internal Error (Digit collect failed): IEC=1.1.179.10.24.6 on callID 6 GUID=65F92076D10E11D7801100B0640E6622
Step 9
Use the show voice iec description command to display the IEC definition:
Router> show voice iec description 1.1.179.10.24.6 IEC Version: 1 Entity: Category: 179 (External communication Error) Subsystem: 10 (AFSAPP) Error: 24 (Digit collect failed) Diagnostic Code: 6
IEC field definitions pinpoint the problem. Category code 179 indicates an external communication error, and an error code 24 indicates digit collection failure. For more information on IEC field definitions, see the Internal Error Code Notation section on page 115.
Symptom
An inbound call from an IP phone to the H.323 gateway fails.
Problem Description
A call is initially routed to the gateway and fails when a TCP session to Cisco CallManager session target cannot be established. The router pings Cisco CallManager, sending a TCP synchronization packet and receiving an ICMP destination unreachable error. Cisco CallManager cannot be pinged because the Cisco CallManager IP address is incorrect. After the IP address for Cisco CallManager is corrected, a second call fails, due to a different socket error. The router tries to establish another TCP session and sends an H225 setup message but Cisco CallManager drops the connection.
Troubleshooting Tasks
Perform the following steps to determine the reasons for both call failures.
Step 1
Use the voice iec syslog command to enable display of IECs as they are encountered in real-time.
161
Cisco VoIP Internal Error Codes Troubleshooting VoIP Networks Using Cisco VoIP Internal Error Codes
Step 2 Step 3
Use the voice iec statistics type iec command to configure the collection of IEC statistics. Use the show running-config command to verify IEC, ISDN, and dial-peer configuration, as shown in the following partial sample output:
Router> show running-config Building configuration... Current configuration : 3466 bytes !
The following lines show the dial-peer configuration, including the destination gateway IP address of Cisco CallManager:
dial-peer voice 1 pots incoming called-number direct-inward-dialed port 0:D ! dial-peer voice 2 voip destination-pattern 83101 session target ipv4:10.1.1.1 dtmf-relay h245-alphanumeric codec g711ulaw ip qos dscp cs5 media ! ! end
Step 4
Use the debug isdn q931 command to display information about call setup and teardown of ISDN network connections.
162
Cisco VoIP Internal Error Codes Troubleshooting VoIP Networks Using Cisco VoIP Internal Error Codes
Router# debug isdn q931 Aug 19 01:46:02.886: ISDN Se0:23 Q931: RX <- SETUP pd = 8 Bearer Capability i = 0x8090A2 Standard = CCITT Transer Capability = Speech Transfer Mode = Circuit Transfer Rate = 64 kbit/s Channel ID i = 0xA98381 Exclusive, Channel 1 Calling Party Number i = 0x2181, '4085550111' Plan:ISDN, Type:National Called Party Number i = 0x80, '83101' Plan:Unknown, Type:Unknown
callref = 0x022D
The following lines show the IEC and specify a network problem.
Aug 19 01:46:03.342: %VOICE_IEC-3-GW: H323: Internal Error (SETUP send sock fail): IEC=1.1.186.5.83.0 on callID 14 GUID=B99ACE6ED11D11D7801500B0640E6622 Aug 19 01:46:03.350: ISDN Se0:23 Q931: TX -> CALL_PROC pd = 8 callref = 0x822D Channel ID i = 0xA98381 Exclusive, Channel 1 Aug 19 01:46:03.362: ISDN Se0:23 Q931: TX -> DISCONNECT pd = 8 callref = 0x822D Cause i = 0x80A6 - Network out of order Aug 19 01:46:03.374: ISDN Se0:23 Q931: RX <- RELEASE pd = 8 callref = 0x022D Cause i = 0x82E4 - Invalid information element contents Aug 19 01:46:03.374: ISDN Se0:23 Q931: TX -> RELEASE_COMP pd = 8 callref = 0x822D
Step 5
The show voice iec description command displays the IEC definition. The debug ip tcp transaction command displays output for packets the router sends and receives. The debug cch323 h225 command provides the trace of the state transition of the H.225 state machine based on the processed events.
The following partial sample outputs from each command help you to isolate the cause of the network out of order message: In the following example, the IEC definition indicates a category code of 186, a signaling socket failure, and shows that an error occurred during the SETUP PDU operation. The explanation for the error code 83 states that this error can happen if the remote IP address is a reachable address for pinging but is not a valid H.323 endpoint.
Router# show voice iec description 1.1.186.5.83.0 IEC Version: 1 Entity: 1 Category: 186 Subsystem: 5 Error: 83 Diagnostic Code: 0
Because the IEC specifies a signaling socket failure as the reason for call failure, you should enable the following debug commands to get more information.
Router# debug ip tcp transaction TCP special event debugging is on Router# debug cch323 h225 H225 State Machine tracing is enabled Router# terminal monitor
163
Cisco VoIP Internal Error Codes Troubleshooting VoIP Networks Using Cisco VoIP Internal Error Codes
% Console already monitors Router# Aug 19 01:46:28.746: ISDN Se0:23 Q931: RX <- SETUP pd = 8 callref = 0x022E Bearer Capability i = 0x8090A2 Standard = CCITT Transer Capability = Speech Transfer Mode = Circuit Transfer Rate = 64 kbit/s Channel ID i = 0xA98381 Exclusive, Channel 1 Calling Party Number i = 0x2181, '4085551090' Plan:ISDN, Type:National Called Party Number i = 0x80, '83101' Plan:Unknown, Type:Unknown Aug 19 01:46:29.198: TCB63D2DAC8 created Aug 19 01:46:29.198: TCB63D2DAC8 setting property TCP_PID (8) 63A2C044 Aug 19 01:46:29.198: TCB63D2DAC8 setting property TCP_NO_DELAY (1) 63A2C048 Aug 19 01:46:29.198: TCB63D2DAC8 setting property TCP_TOS (11) 63A2C070 Aug 19 01:46:29.198: TCB63D2DAC8 setting property TCP_NONBLOCKING_WRITE (10) 63A2C0D0 Aug 19 01:46:29.198: TCB63D2DAC8 setting property TCP_NONBLOCKING_READ (14) 63A2C0D0 Aug 19 01:46:29.198: TCB63D2DAC8 setting property unknown (15) 63A2C0D0 Aug 19 01:46:29.198: TCB63D2DAC8 setting property TCP_NO_DELAY (1) 63A2C08C Aug 19 01:46:29.198: TCB63D2DAC8 setting property TCP_ALWAYSPUSH (17) 63A2C08C Aug 19 01:46:29.198: TCB63D2DAC8 bound to 172.16.13.16.11005 Aug 19 01:46:29.198: TCP: sending SYN, seq 3651477840, ack 0 Aug 19 01:46:29.198: TCP0: Connection to 10.1.1.1:1720, advertising MSS 536 Aug 19 01:46:29.198: TCP0: state was CLOSED -> SYNSENT [11005 -> 10.1.1.1(1720)]
The following lines show the 10.1.1.1 CallManager address is unreachable as it is configured, and the network out of order IEC is generated:
Aug 19 01:46:29.202: TCP0: ICMP destination unreachable received ! ! !Aug 19 01:46:29.206: %VOICE_IEC-3-GW: H323: Internal Error (SETUP send sock fail): IEC=1.1.186.5.83.0 on callID 16 GUID=C904C18BD11D11D7801600B0640E6622 Aug 19 01:46:29.206: TCB 0x63D2DAC8 destroyed Aug 19 01:46:29.206: //16/C904C18B8016/H323/run_h225_sm: Received event H225_EV_CONN_LOST while at state H225_IDLE Aug 19 01:46:29.214: ISDN Se0:23 Q931: TX -> CALL_PROC pd = 8 callref = 0x822E Channel ID i = 0xA98381 Exclusive, Channel 1 Aug 19 01:46:29.218: //16/C904C18B8016/H323/run_h225_sm: Received event H225_EV_RELEASE while at state H225_IDLE Aug 19 01:46:29.218: //16/C904C18B8016/H323/cch323_h225_set_new_state: Changing from H225_IDLE state to H225_IDLE state Aug 19 01:46:29.226: ISDN Se0:23 Q931: TX -> DISCONNECT pd = 8 callref = 0x822E Cause i = 0x80A6 - Network out of order ! !
Step 6
Use the show ip route command to display static routes, then use the ping command to check network connectivity to the destination address 10.1.1.1 using the ping command.
Router> show ip route Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2 i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2 ia - IS-IS inter area, * - candidate default, U - per-user static route o - ODR, P - periodic downloaded static route
164
Cisco VoIP Internal Error Codes Troubleshooting VoIP Networks Using Cisco VoIP Internal Error Codes
Gateway of last resort is 172.16.13.3 to network 0.0.0.0 172.16.0.0/27 is subnetted, 1 subnets 172.16.13.0 is directly connected, Ethernet0 0.0.0.0/0 [1/0] via 172.16.13.3
C S*
The following lines show that the reason for Cisco CallManager TCP session failure is the incorrect 10.1.1.1 IP address:
Router# ping 10.1.1.1 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 10.1.1.1, timeout is 2 seconds: ..U.U Success rate is 0 percent (0/5) Router# ping 10.1.1.1
Step 7
Configure the correct IP address for Cisco CallManager and verify the configuration using the show running-config command.
Router# config term Enter configuration commands, one per line. End with CNTL/Z. Router(config)# dial-peer voice 2 Router(config-dial-peer)# session target ipv4:172.31.85.107 Router(config-dial-peer)# end Router# show running-config ! ! ! dial-peer voice 2 voip destination-pattern 83101 session target ipv4:172.31.85.107 dtmf-relay h245-alphanumeric codec g711ulaw ip qos dscp cs5 media
Step 8
Use the show debug command to display call traces enabled during a second call attempt.
Router# show debug CSM Voice: Voice Call Switching Module debugging is on
The following ISDN debugs are enabled on all DSLs: debug isdn error is debug isdn q931 is ON. ON.
(filter is OFF)
Router# Aug 19 02:05:36.349: ISDN Se0:23 Q931: RX <- SETUP pd = 8 Bearer Capability i = 0x8090A2 Standard = CCITT Transer Capability = Speech Transfer Mode = Circuit Transfer Rate = 64 kbit/s Channel ID i = 0xA98381 Exclusive, Channel 1 Calling Party Number i = 0x2181, '4085550111' Plan:ISDN, Type:National Called Party Number i = 0x80, '83101' Plan:Unknown, Type:Unknown
callref = 0x0237
165
Cisco VoIP Internal Error Codes Troubleshooting VoIP Networks Using Cisco VoIP Internal Error Codes
Aug 19 02:05:36.353: VDEV_ALLOCATE: 1/2 is allocated Aug 19 02:05:36.353: csm_vtsp_init_tdm: vdev@ 0x6355AAF4, voice_vdev@ 0x6355AA80 Aug 19 02:05:36.353: csm_vtsp_init_tdm: dsprm_tdm_allocate: tdm slot 1, dspm 1, dsp 2, dsp_channel 1 Aug 19 02:05:36.353: csm_vtsp_init_tdm: dsprm_tdm_allocate: tdm stream 4, channel 3, bank 2, bp_channel 1, bp_stream 255 Aug 19 02:05:36.357: VDEV_DEALLOCATE: slot 1, port 4 is deallocated Aug 19 02:05:36.805: ISDN Se0:23 Q931: TX -> CALL_PROC pd = 8 callref = 0x8237 Channel ID i = 0xA98381 Exclusive, Channel 1
The following lines show that the subsequent call failed due to a different socket error. However, in this instance sending a ping to the remote IP address is successful:
Router> show voice iec description 1.1.186.5.7.6 IEC Version: 1 Entity: 1 (Gateway) Category: 186 (Signaling socket failure) Subsystem: 5 (H323) Error: 7 (Socket error) Diagnostic Code: 6 Router> ping 172.69.85.107 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 172.69.85.107, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/4 ms
Use the debug ip tcp transaction, show debug, and debug cch323 h225 commands again.
Router# debug ip tcp transaction TCP special event debugging is on Router# show debug CSM Voice: Voice Call Switching Module debugging is on TCP: TCP special event debugging is on
The following ISDN debugs are enabled on all DSLs: debug isdn error is debug isdn q931 is ON. ON.
(filter is OFF)
166
Cisco VoIP Internal Error Codes Troubleshooting VoIP Networks Using Cisco VoIP Internal Error Codes
Router# Aug 19 02:06:36.637: ISDN Se0:23 Q931: RX <- SETUP pd = 8 callref = 0x0238 Bearer Capability i = 0x8090A2 Standard = CCITT Transer Capability = Speech Transfer Mode = Circuit Transfer Rate = 64 kbit/s Channel ID i = 0xA98381 Exclusive, Channel 1 Calling Party Number i = 0x2181, '4085550111' Plan:ISDN, Type:National Called Party Number i = 0x80, '83101' Plan:Unknown, Type:Unknown Aug 19 02:06:36.641: VDEV_ALLOCATE: 1/3 is allocated Aug 19 02:06:36.641: csm_vtsp_init_tdm: vdev@ 0x6355B240, voice_vdev@ 0x6355B1CC Aug 19 02:06:36.641: csm_vtsp_init_tdm: dsprm_tdm_allocate: tdm slot 1, dspm 1, dsp 3, dsp_channel 1 Aug 19 02:06:36.641: csm_vtsp_init_tdm: dsprm_tdm_allocate: tdm stream 4, channel 5, bank 2, bp_channel 2, bp_stream 255 Aug 19 02:06:36.645: VDEV_DEALLOCATE: slot 1, port 8 is deallocated Aug 19 02:06:37.089: TCB63604218 created Aug 19 02:06:37.089: TCB63604218 setting property TCP_PID (8) 632036B4 Aug 19 02:06:37.089: TCB63604218 setting property TCP_NO_DELAY (1) 632036B8 Aug 19 02:06:37.089: TCB63604218 setting property TCP_TOS (11) 632036E0 Aug 19 02:06:37.089: TCB63604218 setting property TCP_NONBLOCKING_WRITE (10) 63203740 Aug 19 02:06:37.089: TCB63604218 setting property TCP_NONBLOCKING_READ (14) 63203740 Aug 19 02:06:37.089: TCB63604218 setting property unknown (15) 63203740 Aug 19 02:06:37.089: TCB63604218 setting property TCP_NO_DELAY (1) 632036FC Aug 19 02:06:37.089: TCB63604218 setting property TCP_ALWAYSPUSH (17) 632036FC Aug 19 02:06:37.089: TCB63604218 bound to 172.16.13.16.11001 Aug 19 02:06:37.089: TCP: sending SYN, seq 1593750728, ack 0 Aug 19 02:06:37.093: TCP0: Connection to 172.31.85.107:1720, advertising MSS 536 Aug 19 02:06:37.093: TCP0: state was CLOSED -> SYNSENT [11001 -> 172.31.85.107(1720)] Aug 19 02:06:37.093: TCP0: state was SYNSENT -> ESTAB [11001 -> 172.31.85.107(1720)] Aug 19 02:06:37.093: TCP0: Connection to 172.31.85.107:1720, received MSS 1460, MSS is 536 Aug 19 02:06:37.093: //10/98FA43DC8007/H323/run_h225_sm: Received event H225_EV_SETUP while at state H225_IDLE Aug 19 02:06:37.093: //10/98FA43DC8007/H323/check_qos_and_send_setup: Setup ccb 0x635F80E8 Aug 19 02:06:37.093: //10/98FA43DC8007/H323/run_h225_sm: Received event H225_EV_FS_SETUP while at state H225_IDLE Aug 19 02:06:37.093: //10/98FA43DC8007/H323/idle_fsSetup_hdlr: Setup ccb 0x635F80E8 Aug 19 02:06:37.097: //10/98FA43DC8007/H323/generic_send_setup: sending calling IE Aug 19 02:06:37.097: //10/98FA43DC8007/H323/generic_send_setup: ====== PI = 0 Aug 19 02:06:37.097: //10/98FA43DC8007/H323/generic_send_setup: Send infoXCap=128, infoXRate=157, rateMult=89 Aug 19 02:06:37.097: //10/98FA43DC8007/H323/generic_send_setup: src address = 172.16.13.16; dest address = 172.31.85.107 Aug 19 02:06:37.097: //10/98FA43DC8007/H323/cch323_h225_set_new_state: Changing from H225_IDLE state to H225_REQ_FS_SETUP state Aug 19 02:06:37.101: TCP0: FIN processed
The following lines show that the router was able to initialize the TCP session to Cisco CallManager, and the session went into the established state. After the router sent an H225 SETUP message it received a TCP RESET message to tear down the TCP session, indicating Cisco CallManager dropped the connection.
Aug Aug Aug Aug 19 19 19 19 02:06:37.101: TCP0: state was ESTAB -> CLOSEWAIT [11001 -> 172.31.85.107(1720)] 02:06:37.101: TCP0: RST received, Closing connection 02:06:37.101: TCP0: state was CLOSEWAIT -> CLOSED [11001 -> 172.31.85.107(1720)] 02:06:37.105: ISDN Se0:23 Q931: TX -> CALL_PROC pd = 8 callref = 0x8238 Channel ID i = 0xA98381 Exclusive, Channel 1
167
Cisco VoIP Internal Error Codes Troubleshooting VoIP Networks Using Cisco VoIP Internal Error Codes
Aug 19 02:06:37.105: %VOICE_IEC-3-GW: H323: Internal Error (Socket error): IEC=1.1.186.5.7.6 on callID 10 GUID=98FA43DCD12011D7800700B0640E6622 Aug 19 02:06:37.105: TCB 0x63604218 destroyed Aug 19 02:06:37.105: //10/98FA43DC8007/H323/run_h225_sm: Received event H225_EV_CONN_LOST while at state H225_REQ_FS_SETUP Aug 19 02:06:37.113: //10/98FA43DC8007/H323/run_h225_sm: Received event H225_EV_RELEASE while at state H225_REQ_FS_SETUP Aug 19 02:06:37.113: //10/98FA43DC8007/H323/cch323_h225_set_new_state: Changing from H225_REQ_FS_SETUP state to H225_IDLE state Aug 19 02:06:37.121: ISDN Se0:23 Q931: TX -> DISCONNECT pd = 8 callref = 0x8238 Cause i = 0x80A6 - Network out of order Aug 19 02:06:37.133: ISDN Se0:23 Q931: RX <- RELEASE pd = 8 callref = 0x0238 Cause i = 0x82E4 - Invalid information element contents Aug 19 02:06:37.137: ISDN Se0:23 Q931: TX -> RELEASE_COMP pd = 8 callref = 0x8238
Step 9
Verify Cisco CallManager setting for the H.323 gateway to determine if the H.225 session was rejected by Cisco CallManager because the wrong IP address was configured for the H.323 gateway. Configure the correct IP address for the H.323 gateway, 172.16.13.16. For more information on CallManager configuration and IP address configuration, see the Cisco CallManager Administration Guide, Release 3.3(2) Device Configuration chapter, Adding Gateways to Cisco CallManager and Adding a Cisco IOS H.323 Gateway sections. Use debug commands to verify that the next call completes, as shown in the following partial debug output:
Aug 19 02:10:36.707: ISDN Se0:23 Q931: RX <- SETUP pd = 8 callref = 0x0239 Bearer Capability i = 0x8090A2 Standard = CCITT Transer Capability = Speech Transfer Mode = Circuit Transfer Rate = 64 kbit/s Channel ID i = 0xA98381 Exclusive, Channel 1 Calling Party Number i = 0x2181, '4085550111' Plan:ISDN, Type:National Called Party Number i = 0x80, '83101' Plan:Unknown, Type:Unknown Aug 19 02:10:36.711: VDEV_ALLOCATE: 1/2 is allocated Aug 19 02:10:36.711: csm_vtsp_init_tdm: vdev@ 0x6355B98C, voice_vdev@ 0x6355B918 Aug 19 02:10:36.711: csm_vtsp_init_tdm: dsprm_tdm_allocate: tdm slot 1, dspm 1, dsp 4, dsp_channel 1 Aug 19 02:10:36.711: csm_vtsp_init_tdm: dsprm_tdm_allocate: tdm stream 5, channel 1, bank 2, bp_channel 3, bp_stream 255 Aug 19 02:10:36.711: VDEV_DEALLOCATE: slot 1, port 12 is deallocated Aug 19 02:10:37.155: TCB63604A4C created Aug 19 02:10:37.159: TCP: sending SYN, seq 3088300316, ack 0 Aug 19 02:10:37.159: TCP0: Connection to 172.69.85.107:1720, advertising MSS 536 Aug 19 02:10:37.159: TCP0: state was CLOSED -> SYNSENT [11003 -> 172.69.85.107(1720)] Aug 19 02:10:37.163: TCP0: state was SYNSENT -> ESTAB [11003 -> 172.69.85.107(1720)] Aug 19 02:10:37.163: TCP0: Connection to 172.69.85.107:1720, received MSS 1460, MSS is 536 Aug 19 02:10:37.163: //12/281160848008/H323/run_h225_sm: Received event H225_EV_SETUP while at state H225_IDLE Aug 19 02:10:37.163: //12/281160848008/H323/check_qos_and_send_setup: Setup ccb 0x635F80E8 ! ! ! Aug 19 02:10:37.171: ISDN Se0:23 Q931: TX -> CALL_PROC pd = 8 callref = 0x8239 Channel ID i = 0xA98381 Exclusive, Channel 1 Aug 19 02:10:38.151: //-1/xxxxxxxxxxxx/H323/cch323_h225_receiver: Received msg of type CALLPROCIND_CHOSEN Aug 19 02:10:38.155: //12/281160848008/H323/callproc_ind: ====== PI = 0 Aug 19 02:10:38.155: //12/281160848008/H323/callproc_ind: Call Manager detected
Step 10
168
Cisco VoIP Internal Error Codes Troubleshooting VoIP Networks Using Cisco VoIP Internal Error Codes
Aug 19 02:10:38.155: //12/281160848008/H323/cch323_h225_receiver: CALLPROCIND_CHOSEN: src address = 172.16.13.16; dest address = 172.69.85.107 Aug 19 02:10:38.155: //12/281160848008/H323/run_h225_sm: Received event H225_EV_CALLPROC_IND while at state H225_REQ_FS_SETUP Aug 19 02:10:41.347: TCP0: state was SYNSENT -> ESTAB [11004 -> 172.69.85.107(1778)] Aug 19 02:10:41.347: TCP0: Connection to 172.69.85.107:1778, received MSS 1460, MSS is 536 Aug 19 02:10:41.699: //12/281160848008/H323/run_h225_sm: Received event H225_EV_H245_SUCCESS while at state H225_WAIT_FOR_H245 Aug 19 02:10:41.703: //12/281160848008/H323/cch323_h225_set_new_state: Changing from H225_WAIT_FOR_H245 state to H225_ACTIVE state Aug 19 02:10:41.703: //12/281160848008/H323/setup_cfm_notify: status = 4800261B Aug 19 02:10:41.703: //12/281160848008/H323/generic_setup_cfm_notify: ====== PI = 0; status = C800261B
In the next lines, the call connects and two-way communication is established.
Aug 19 02:10:41.711: ISDN Se0:23 Q931: TX -> CONNECT pd = 8 callref = 0x8239 Aug 19 02:10:41.719: ISDN Se0:23 Q931: RX <- CONNECT_ACK pd = 8 callref = 0x0239
The following lines show that after a two-minute call, the IP phone user hangs up and the call is disconnected with normal call clearing:
Aug Aug Aug ! ! ! Aug Aug Aug Aug Aug 19 02:10:43.635: TCP0: RST received, Closing connection 19 02:10:43.635: TCP0: state was ESTAB -> CLOSED [11004 -> 172.69.85.107(1778)] 19 02:10:43.635: TCB 0x6361C070 destroyed
02:10:43.663: TCP0: sending FIN 02:10:43.663: TCP0: state was FINWAIT1 -> FINWAIT2 [11003 -> 172.69.85.107(1720)] 02:10:43.663: TCP0: FIN processed 02:10:43.663: TCP0: state was FINWAIT2 -> TIMEWAIT [11003 -> 172.69.85.107(1720)] 02:10:43.671: ISDN Se0:23 Q931: TX -> DISCONNECT pd = 8 callref = 0x8239 Cause i = 0x8090 - Normal call clearing Aug 19 02:10:43.679: ISDN Se0:23 Q931: RX <- RELEASE pd = 8 callref = 0x0239 Aug 19 02:10:43.683: ISDN Se0:23 Q931: TX -> RELEASE_COMP pd = 8 callref = 0x8239 Router# Router# undebug all All possible debugging has been turned off.
19 19 19 19 19
169
Cisco VoIP Internal Error Codes Troubleshooting VoIP Networks Using Cisco VoIP Internal Error Codes
170
Troubleshooting Resources
To troubleshoot problems with voice networks, the following resources are required:
Troubleshooting Tools
This section presents information about the variety of tools available to assist you in troubleshooting your voice network, including information on using router diagnostic commands, Cisco network management tools, and third-party troubleshooting tools.
show commands help you monitor installation behavior and normal network behavior, and isolate problem areas. debug commands help you isolate protocol and configuration problems. ping commands help you determine connectivity between devices on your network. trace commands provide a method of determining the route by which packets reach their destination.
Monitor router behavior during initial installation. Monitor normal network operation. Isolate problem interfaces, nodes, media, or applications. Determine when a network is congested. Determine the status of servers, clients, or other neighbors.
171
show versionDisplays the configuration of the system hardware, the software version, the names and sources of configuration files, and the boot images. show running-configDisplays the router configuration currently running. show startup-configDisplays the router configuration stored in NVRAM. show interfacesDisplays statistics for all interfaces configured on the router or access server. The resulting output varies, depending on the network for which an interface has been configured. show controllersDisplays statistics for interface card controllers. show flashDisplays the layout and contents of flash memory. show buffersDisplays statistics for the buffer pools on the router. show memory summaryDisplays memory pool statistics and summary information about the activities of the system memory allocator, and gives a block-by-block listing of memory use. show process cpuDisplays information about the active processes on the router. show stacksDisplays information about the stack utilization of processes and interrupt routines, and the reason for the last system reboot. show cdp neighborsProvides reachability information for directly connected Cisco devices. This is an extremely useful tool for determining the operational status of the physical and data link layers. Cisco Discovery Protocol (CDP) is a proprietary data link layer protocol. show debuggingDisplays information about the type of debugging that is enabled for your router.
You can always use the ? at the command line for a list of subcommands. Like the debug commands, some of the show commands listed are accessible only at the routers privileged EXEC mode. Debug command usage is explained further in the Using debug Commands section on page 172 and also in the Debug Command Output on Cisco IOS Voice Gateways chapter. Hundreds of other show commands are available. For details on using and interpreting the output of specific show commands, refer to the Cisco IOS command references.
Note the change in the router prompts here. The # prompt (instead of the normal > prompt) indicates that the router is in privileged EXEC mode (enable mode).
172
Caution
Exercise care when using debug commands. Many debug commands are processor-intensive and can cause serious network problems (such as degraded performance or loss of connectivity) if they are enabled on an already heavily loaded router. When you finish using a debug command, remember to disable it with its specific no debug command (or use the no debug all command to turn off all debugging). Use debug commands to isolate problems, not to monitor normal network operation. Because the high processor overhead of debug commands can disrupt router operation, you should use them only when you are looking for specific types of traffic or problems, and have narrowed your problems to a likely subset of causes. Output formats vary with each debug command. Some generate a single line of output per packet, and others generate multiple lines of output per packet. Some generate large amounts of output, and others generate only occasional output. Some generate lines of text, and others generate information in field format. To minimize the negative impact of using debug commands, follow this procedure:
Step 1 Step 2
Use the no logging console global configuration command on your router. This command disables all logging to the console terminal. Telnet to a router port and enter the enable EXEC command. The enable EXEC command places the router in the privileged EXEC mode. After entering the enable password, you receive a prompt that consists of the router name with a # symbol. Use the terminal monitor command to copy debug command output and system error messages to your current terminal display.
Step 3
By redirecting output to your current terminal display, you can view debug command output remotely, without being connected through the console port. If you use debug commands at the console port, character-by-character processor interrupts are generated, maximizing the processor load already caused by the use of debug. If you intend to keep the output of the debug command, spool the output to a file. The procedure for setting up such a debug output file is described in the Debug Command Output on Cisco IOS Voice Gateways chapter. This book refers to specific debug commands that are useful when you are troubleshooting specific problems. Complete details regarding the function and output of debug commands are provided in the Cisco IOS Debug Command Reference. In many situations, using third-party diagnostic tools can be more useful and less intrusive than using debug commands. For more information, see the Third-Party Troubleshooting Tools section on page 176.
173
to connect to remote devices, change terminal settings on a temporary basis, perform basic tests, and list system information. The ping command can be used to confirm basic network connectivity on a variety of networks. For IP, the ping command sends Internet Control Message Protocol (ICMP) echo messages. ICMP is the Internet protocol that reports errors and provides information relevant to IP packet addressing. If a station receives an ICMP Echo message, it sends an ICMP echo reply message back to the source. The extended command mode of the ping command permits you to specify the supported IP header options. This mode allows the router to perform a more extensive range of test options. To enter ping extended command mode, enter yes at the extended commands prompt of the ping command. It is a good idea to use the ping command when the network is functioning properly to see how the command works under normal conditions, so that you have a basis for comparison when you are troubleshooting. For detailed information on using the ping and extended ping commands, refer to the Cisco IOS Configuration Fundamentals and Network Management Command Reference.
CiscoView provides dynamic monitoring and troubleshooting functions, including a graphical display of Cisco devices, statistics, and comprehensive configuration information.
174
Internetwork Performance Monitor (IPM) empowers network engineers to proactively troubleshoot network response times utilizing real-time and historical reports. The TrafficDirector RMON application, a remote monitoring tool, enables you to gather data, monitor activity on your network, and find potential problems. The VlanDirector switch management application provides an accurate picture of your VLANs.
CiscoView
CiscoView graphical management features provide dynamic status, statistics, and comprehensive configuration information for Cisco internetworking products (switches, routers, hubs, concentrators, and access servers). CiscoView aids network management by displaying a physical view of Cisco devices and color-coding device ports for at-a-glance port status, allowing you to quickly grasp essential information. Features include the following:
Graphical displays of Cisco products from a central location, giving network managers a complete view of Cisco products. You do not need to physically check devices at remote sites. A continuously updated physical view of routers, hubs, switches, or access servers in a network, regardless of physical location. Updated real-time monitoring and tracking of key information relating to device performance, traffic, and usage, with metrics such as utilization percentage, frames sent and received, errors, and a variety of other device-specific indicators. The capability to modify configurations such as trap, IP route, VLAN, and bridge configurations.
Troubleshoot problems by checking the network latency between devices. Send Simple Network Management Protocol (SNMP) traps and SNA alerts when a user-configured threshold is exceeded, when a connection is lost and reestablished, or when a timeout occurs. Analyze potential problems before they occur by accumulating statistics, which are used for modeling future network topologies. Monitor response time between two network endpoints.
The IPM product is composed of three parts: the IPM server, the IPM client application, and the response time reporter (RTR) feature of the Cisco IOS software.
175
and protocol distributions. Network managers can zoom in on a specific segment, ring, switch port, or trunk link and apply real-time analysis and diagnostic tools to view hosts, conversations, and packet captures. TrafficDirector threshold monitoring enables you to implement a proactive management environment. Thresholds for critical MIB variables are set within the RMON agent. When these thresholds are exceeded, traps are sent to the appropriate management station to notify the network administrator of an impending problem.
Accurate representation of the physical network for VLAN design and configuration verification Capability to obtain VLAN configuration information on a specific device or link interface Discrepancy reports on conflicting configurations Capability to use system-level VLANs to troubleshoot and identify individual device configurations that are in error Quick detection of changes in VLAN status of switch ports User authentication and write protection security
Volt-ohm meters, digital multimeters, and cable testers are useful for testing the physical connectivity of your cable plant. Time domain reflectometers (TDRs) and optical time domain reflectometers (OTDRs) are devices that assist in the location of cable breaks, impedance mismatches, and other physical cable plant problems. Breakout boxes, fox boxes, bit error rate testers (BERTs), and block error rate testers (BLERTs) are useful for troubleshooting problems in peripheral interfaces. Network monitors provide an accurate picture of network activity over a period of time by continuously tracking packets crossing a network. Network analyzers such as sniffers decode problems at all seven OSI layers. The problems can be identified automatically in real-time and categorized by how critical they are, providing a clear view of network activity.
176
Test and report on cable conditions, including near-end crosstalk (NEXT), attenuation, and noise Use TDR and perform traffic monitoring and wire map functions Display MAClayer information about LAN traffic, provide statistics such as network utilization and packet error rates, and perform limited protocol testing (for example, TCP/IP tests such as ping)
Similar testing equipment is available for fiber-optic cable. Because of the relatively high cost of this cable and its installation, fiber-optic cable should be tested both before installation (on-the-reel testing) and after installation. Continuity testing of the fiber requires either a visible light source or a reflectometer. Light sources capable of providing light at the three predominant wavelengths850 nanometers (nm), 1300 nm, and 1550 nmare used with power meters that can measure the same wavelengths and test attenuation and return loss in the fiber.
177
Network Monitors
Network monitors continuously track packets crossing a network, providing an accurate picture of network activity at any moment, or a historical record of network activity over a period of time. They do not decode the contents of frames. Monitors are useful for baselining, in which the activity on a network is sampled over a period of time to establish a normal performance profile. Monitors collect information such as packet sizes, the number of packets, error packets, overall usage of a connection, the number of hosts and their MAC addresses, and details about communications between hosts and other devices. This data can be used to create profiles of LAN traffic and to assist in locating traffic overloads, planning for network expansion, detecting intruders, establishing baseline performance, and distributing traffic more efficiently.
Network Analyzers
A network analyzer (also called a protocol analyzer or sniffer) decodes the various protocol layers in a recorded frame and presents the frames as readable abbreviations or summaries. The analyzer indicates which layer is involved (physical, data link, and so forth) and what function each byte or byte content serves. Most network analyzers can perform many of the following functions:
Filter traffic that meets certain criteria so that, for example, all traffic to and from a particular device can be captured Time-stamp captured data Present protocol layers in an easily readable form Generate frames and send them onto the network Incorporate an expert system in which the analyzer uses a set of rules, combined with information about the network configuration and operation, to diagnose and solve, or offer potential solutions for network problems
Internetworking Troubleshooting Handbook, page 178 TAC Troubleshooting Tools on Cisco.com, page 179
178
Note
You need to register to use these tools on Cisco.com. This site has links to the following tools:
2600/3600/3700 Memory CalculatorCompute the memory required for Cisco 2600 series, Cisco 3600 series, and Cisco 3700 series routers. Bitswapping ToolInstantly convert Ethernet MAC addresses to Token Ring MAC addresses. BPX/IGX Firmware Compatibility ToolEvaluates BPX and IGX firmware versions for switch software compatibility using the dspcds screen output. Cisco-centric Open Source Initiative (COSI)An open source exchange community where Cisco-centric developers and customers publish, discuss, and release their open source tools, scripts, and utilities. Cisco Feature Navigator IIA web-based application that allows you to quickly find the right Cisco IOS software release for the features you want to run on your network. Command Lookup ToolLook up a detailed description or configuration guidelines for a particular Cisco IOS, Cisco Catalyst, or PIX command. This tool is for Cisco IOS software releases 12.0, 12.1, and 12.2 only. Custom Document Generator for Cisco IOSGenerate customized command reference documents. Error Message DecoderLook up explanations for console error messages listed in the Cisco Software System Messages guide. IOS Upgrade PlannerBrowse for your preferred software. IP Subnet CalculatorPlan your subnetting and addressing strategy online. Networking Professionals ConnectionDiscussion forums, Tech Talks, and Ask the Expert forums are available in which you can share questions, suggestions, and information about networking solutions, products, and technologies. Output InterpreterReceive instant troubleshooting analysis and course of action for your router, switch, or PIX device using collected show command output. Product Alert ToolSet up a profile to receive email updates about reliability, safety, network security, and end-of-sale issues for the Cisco products you specify. RIF Decoder ToolUse the RIF decoder to automatically interpret and decode a hex string. SNMP Object NavigatorTranslate SNMP object identifiers (OIDs) into object names, search object names and descriptions, browse the OID tree, and download MIB files. Software AdvisorChoose software for your network device. Software Bug ToolkitSearch for software bugs based on version and feature sets or bug ID. Software Search EngineSearch for software images and image metadata. Stack Decoder for Cisco IOSThis link takes you to the Cisco Output Interpreter tool, which now offers all the functionality formerly available in the Stack Decoder.
179
TAC Case Collection (Troubleshooting Assistant)Interactively diagnose common problems involving hardware, configuration, and performance issues with solutions provided by TAC engineers. Voice Codec Bandwidth CalculatorUse the Voice Codec Bandwidth Calculator to determine the bandwidth used by different codecs with various voice protocols over different media. Voice Gateway Error Decoder for Cisco IOSA diagnostic tool that allows you to enter an IEC dotted string and receive an explanation of the component fields. The explanation includes a description of the problem, and depending upon the error type, a recommended course of action. Use the IEC lookup tool at http://www.cisco.com/univercd/cc/td/doc/product/voice/vtgemd.htm. Wireless Troubleshooting CenterInteractive support for questions related to Cisco Aironet wireless LAN products.
180
A R T
FXS Interfaces, page 183 FXO Interfaces, page 189 E&M Interfaces, page 196 Analog DID Interfaces, page 224 Voice Port Testing Commands, page 227
If you are troubleshooting a connection to a PBX, you might find the PBX interoperability notes useful. These notes contain configuration information for Cisco gateways and several types of PBXs. To access these notes, use the following website: http://www.cisco.com/warp/public/779/largeent/avvid/inter_operability/
FXS Interfaces
An FXS interface connects the router or access server to end-user equipment such as telephones, fax machines, and modems. The FXS interface supplies ring, voltage, and dial tone to the station and includes an RJ-11 connector for basic telephone equipment, keysets, and PBXs. In Figure 10, FXS signaling is used for end-user telephony equipment, such as a telephone or fax machine.
183
Figure 10
FXS
FXS
If you are having trouble with an FXS port, check the following sections:
FXS Hardware Troubleshooting, page 184 Ring Voltage Problems, page 186 Unbreakable Dial Tone, page 188
Software Compatibility, page 184 Cabling, page 184 Shutdown Port, page 185 Disabling a Port on a Multiple Port Card, page 186
Software Compatibility
To ensure that your FXS card is compatible with your software, check the following:
For network modules inserted into Cisco 2600 series, Cisco 3600 series, and Cisco 3700 series, check the compatibility tables in the Overview of Cisco Network Modules chapter in the Cisco Network Modules Hardware Installation Guide. For interface cards inserted into Cisco 1600 series, Cisco 1700 series, Cisco 2600 series, Cisco 3600 series, Cisco 3700 series, and Cisco ICS 7750 platforms, check the compatibility tables in the Overview of Cisco Interface Cards chapter in the Cisco Interface Cards Installation Guide.
Cabling
Two types of cabling are supported for Cisco FXS interfaces. They are described in the following sections:
RJ-11 Connectors, page 185 RJ-21 Connectors on the High-Density Analog Telephony Network Module, page 185
Note
For FXS connections, use a 2-wire (RJ-11) cable. A 4-wire cable can cause the second port to busy out.
184
RJ-11 Connectors
The two-port and four-port FXS interface cards support the RJ-11 connector. Illustrations of the connector ports are shown in Figure 11 and Figure 12. Information about LEDs can be found in the Connecting Voice Interface Cards to a Network chapter of the Cisco Interface Card Hardware Installation Guide.
Figure 11 Two-Port FXS Card Front Panel
IN USE
VIC FXS
IN USE
Figure 12
IN USE
For information about the VIC-2FXS interface card, refer to Understanding Foreign Exchange Station (FXS) Voice Interface Cards, document ID 7938.
26
65683
VIC 4FXS/DID
41218
50 ACT EN
62292
25
Shutdown Port
If the port is not working, be sure the port is not shut down. Enter the show voice port command with the voice port number that you are troubleshooting. The output will tell you:
If the voice port is up. If it is not, use the no shutdown command to make it active.
185
What parameter values have been set for the voice port, including default values (which do not appear in the output from the show running-config command). If these values do not match those of the telephony connection you are making, reconfigure the voice port.
On a Cisco universal gateway, such as the Cisco AS5350, Cisco AS5400, Cisco AS5800, and Cisco AS5850, busy out the port using the busyout command. This setting allows the port to be taken out of service without disrupting the Cisco IOS configuration. See the product documentation for details:
Cisco AS5350 product documentation Cisco AS5400 product documentation Cisco AS5800 product documentation Cisco AS5850 product documentation
On other Cisco gateways, remove the port from the dial peer. Refer to Dial Peer Features and Configuration in the Dial Peer Configuration on Voice Gateway Routers document to configure the dial peer.
Ringing Voltages
The industry standard for PBX and key systems requires that the ring detection circuit be able to detect a ringing signal as low as 40 Vrms. This voltage takes into account the effects of load and cabling voltage drop on a ringing signal generated from a central office (CO). Conversely, the CO (exchange) must supply ringing with enough power to drive the maximum load over the maximum cable length. In order to meet this requirement, a CO-based unit must present a ringing signal with an amplitude of approximately 85 to 100 Vrms. Cisco voice gateways are intended for use as on premise services (ONS) equipment that is colocated or fairly close to equipment that detects ringing, so it can therefore use a lower ringing voltage and still meet the 40 Vrms 5 Ringer Equivalence Number (REN) requirement.
186
FXS Interface VG248 VIC-2FXS VIC-2DID ASI 81 and ASI 160 IAD 24xx-FXS 1730 IAD VIC-4FXS/DID
Idle Voltage 36V 26V 24V (low) 48V (high) 24V (low) 48V (high) 24V (low) 48V (high) 24V (low) 48V (high) 24V (low) 48V (high)
Answering and Call Initiation Problems with Automated Telephony Devices, page 187 Ringing Problems, page 187 FXS Ring Failure in the United Kingdom, page 188
Certain automated devices, such as fax machines, answer machines, multiline phones and voice mail systems, look at the line voltage in order to deduce if the line is busy or idle. If another device is off hook, then the line voltage drops, and the automated system does not answer or initiate a call. If the threshold being used is close to 24 V or higher, this can cause the device not to work as expected. Certain phones might not ring when the default ring voltage and ring frequency are applied from the Cisco FXS interface.
Note
This option is not available on VG248, VIC-2FXS, and WS-x6624 FXS interfaces.
Ringing Problems
Phone manufacturers sometimes use frequency filters known as antitinkle circuits to prevent ringer devices from sounding while the user is dialing. Sometimes it is necessary to adjust the frequency of the ring to suit the connected device. Configure the ring frequency for Cisco modular access routers by issuing the following command:
Router(config-voiceport)# ring frequency ? 25 ring frequency 25 Hertz 50 ring frequency 50 Hertz
187
Configure the ring frequency for the Cisco IAD2400 platform by issuing the following command:
Router(config-voiceport)# ring frequency ? 20 ring frequency 20 Hertz 30 ring frequency 30 Hertz
To prevent ringer devices from sounding, you can also provide a voltage threshold so that the lower voltages, which can be produced during dialing, are ignored. Increasing the voltage can overcome this. Configure the DC offset voltage on Cisco IAD2400 series routers by issuing the following command:
Router(config-voiceport)# ring dc-offset ? 10-volts Ring DC offset 10 volts 20-volts Ring DC offset 20 volts 24-volts Ring DC offset 24 volts
Note
This command sequence can be used only for Cisco IAD2400 series routers. The 24-V ring DC offset setting is available for Cisco IOS 12.2(11)T and later releases.
DTMF tones are not passed. DTMF tones are not understood.
188
DTMF tones are too distorted to be understood. Other signaling and cabling issues occur.
Make sure the dial type is set as DTMF on both the router and the PBX. The FXS port does not pass on the digits; therefore, this setting is not available on an FXS port. However, this setting can be changed on FXO and E&M ports:
Router(config-voiceport)# dial-type ? dtmf touch-tone dialer mf mf-tone dialer pulse pulse dialer
For more information, refer to Inability To Break Dialtone in a Voice over IP Network, document ID 22376.
The port is in a shutdown state. The port is in a park state. The port is bad.
If you have a digital card like the NM-2V, you might have bad DSPs. Use the following procedure if there is no LED when your phone is off hook:
Step 1 Step 2 Step 3 Step 4
Check the cable to make sure that it is RJ-11 with two pins for the FXS port. Test the LED using a different phone. Check your Cisco IOS version to make sure that the feature set is either IP Plus or Enterprise Plus. If Steps 1 to 3 do not work, replace the voice interface card (VIC).
FXO Interfaces
An FXO interface is used for trunk, or tie line, connections to a PSTN CO or to a PBX that does not support E&M signaling (when local telecommunications authority permits). This interface is of value for off-premises station applications. Figure 14 shows an FXS connection to a telephone and an FXO connection to the PSTN at the far side of a WAN.
189
Figure 14
FXS
FXO
If you are having trouble with an FXO port, check the following sections:
FXO Hardware Troubleshooting, page 190 FXO Disconnect Failure, page 192 Troubleshooting FXO Answer and Disconnect Supervision, page 192 Unbreakable Dial Tone, page 194 Troubleshooting Caller ID Problems, page 194
Software Compatibility, page 190 Cabling, page 190 Shutdown Port, page 191 Disabling a Port on a Multiple Port Card, page 192
Software Compatibility
To ensure that your card is compatible with your software, check the following:
For network modules inserted into Cisco 2600 series, Cisco 3600 series, and Cisco 3700 series routers, refer to the compatibility tables in the Overview of Cisco Network Modules chapter in the Cisco Network Modules Hardware Installation Guide. For interface cards inserted into Cisco 1600 series, Cisco 1700 series, Cisco 2600 series, Cisco 3600 series, Cisco 3700 series, and Cisco ICS 7750 platforms, refer to the compatibility tables in the Overview of Cisco Interface Cards chapter in the Cisco Interface Cards Installation Guide.
Cabling
Two types of cabling are supported for Cisco FXO interfaces. They are described in the following sections:
RJ-11 Connectors, page 185 RJ-21 Connectors on the High-Density Analog Telephony Network Module, page 185
190
37758
Note
For FXO connections, use a 2-wire (RJ-11) cable. A 4-wire cable can cause the second port to busy out.
RJ-11 Connectors
The two-port and four-port FXO interface cards support the RJ-11 connector. Illustrations of the connector ports are shown in Figure 15 and Figure 16. Information about LEDs can be found in the Connecting Voice Interface Cards to a Network chapter of the Cisco Interface Card Hardware Installation Guide.
Figure 15 Two-Port FXO Card Front Panel
IN USE
VIC FXO
IN USE
Figure 16
IN USE
26
65684
VIC 4FXO-M1
41217
50 ACT EN
62292
25
Shutdown Port
If the port is not working, be sure the port is not shut down. Enter the show voice port command with the voice port number that you are troubleshooting. The output will tell you:
If the voice port is up. If it is not, use the no shutdown command to make it active.
191
What parameter values have been set for the voice port, including default values (these values do not appear in the output from the show running-config command). If these values do not match those of the telephony connection you are making, reconfigure the voice port.
On a Cisco universal gateway, such as the Cisco AS5350, Cisco AS5400, Cisco AS5800, and Cisco AS5850, busy out the port using the busyout command. This allows the port to be taken out of service without disrupting the Cisco IOS configuration. Refer to the product documentation for details:
For Cisco AS5350 and Cisco AS5400 universal gateways, refer to the Managing and
Troubleshooting the Universal Port Card chapter in the Cisco AS5350 and Cisco AS5400 Universal Gateway Software Configuration Guide.
For Cisco AS5800 access servers, refer to the Managing and Troubleshooting NextPort Services
On other Cisco gateways, remove the port from the dial peer. Refer to Dial Peer Features and Configuration in the Dial Peer Configuration on Voice Gateway Routers document to configure the dial peer.
192
The FXO Answer and Disconnect Supervision feature enables analog FXO ports to monitor call-progress tones and to monitor voice and fax transmissions returned from a PBX or from the PSTN. Answer supervision can be accomplished in two ways: by detecting battery reversal, or by detecting voice, fax, or modem tones. If an FXO voice port is connected to the PSTN and battery reversal is supported, use the battery reversal method. Voice ports that do not support battery reversal must use the answer supervision method, in which answer supervision is triggered when the DSP detects voice, modem, or fax transmissions. Configuring answer supervision automatically enables disconnect supervision; however, you can configure disconnect supervision separately if answer supervision is not configured. Disconnect supervision can be configured to detect call-progress tones sent by the PBX or PSTN (for example, busy, reorder, out-of-service, number-unavailable), or to detect any tone received (for example, busy tone or dial tone). When an incoming call ends, the DSP detects the associated call-progress tone, causing the analog FXO voice port to go on-hook. This section provides solutions to problems that you might encounter when implementing the FXO Answer and Disconnect Supervision feature. Typical problems with the answer supervision feature are as follows:
Call-progress tones such as ringback are not heard by the calling party. If any call legs have IVR configured, ensure that the IVR version is 2.0.
configured; in this case, the default behavior is not to detect any ringback tones.
Answer supervision is not triggered. Answer supervisioneither by battery-reversal detection or by call-progress tone detectionis not configured on the voice-port in use.
Excessive delay before answer supervision is activated. The level on the sensitivity parameter in the supervisory answer dualtone command is set too low. Configure the sensitivity for high.
The values configured for custom call-progress tones could be incorrect. Overlapping detection frequencies might have been incorrectly specified in the voice class created by the voice class dualtone-detect-params command. For example if the freq-max-deviation parameter is configured to be 20 Hz, and the busy and reorder parameters are set for frequencies 350 and 370 respectively, the voice port cannot detect the reorder tone, resulting in an incorrect disconnect cause code.
Note
If the frequencies and cadences (including error deviations as defined in the voice class dualtone-detect-params command) are the same for multiple call-progress tones, the order of detection is as follows: busy, reorder, number-unobtainable, out-of-service, disconnect.
If calls are not billed correctly, it might be that answer supervision is not being triggered. For answer supervision to be triggered, voice, fax, or data tones originating at the called-party end must be detected.
193
To configure the FXO Supervisory Disconnect Tone, refer to the Voice Port Configuration document.
Purpose Shows a detailed status of the voice port. Under the heading Voice card specific Info Follows:, the status of the FXO Answer and Disconnect Supervision feature is indicated by one of the following messages: Answer Supervision is active or Answer Supervision is inactive.
DTMF tones not being sent. DTMF tones not being understood. DTMF tones too distorted to be understood. Other signaling and cabling issues.
Make sure the dial type is set as DTMF on both the router and the PBX. The FXS port does not pass on the digits, therefore this setting is not available on an FXS port. However, this setting can be changed on FXO and E&M ports:
Router(config-voiceport)# dial-type ? dtmf touch-tone dialer mf mf-tone dialer pulse pulse dialer
For more information, refer to Inability To Break Dialtone in a Voice over IP Network, document ID 22376.
194
Nov 20 10:40:17.757 EST: [1/0/0, FXOLS_RINGING, E_DSP_SIG_0100] Nov 20 10:40:17.757 EST: fxols_ringing_not Nov 20 10:40:17.761 EST: htsp_timer_stop Nov 20 10:40:17.761 EST: htsp_timer - 10000 msec Nov 20 10:40:18.925 EST: [1/0/0] htsp_stop_caller_id_rx Nov 20 10:40:21.857 EST: [1/0/0, FXOLS_RINGING, E_DSP_SIG_0000] Nov 20 10:40:23.857 EST: [1/0/0, FXOLS_RINGING, E_DSP_SIG_0100] Nov 20 10:40:23.857 EST: fxols_ringing_not Nov 20 10:40:23.861 EST: htsp_timer_stop htsp_setup_ind Nov 20 10:40:23.861 EST: [1/0/0] get_fxo_caller_id:Caller ID received. Message type=128 length=31 checksum=74 Nov 20 10:40:23.861 EST: [1/0/0] Caller ID String 80 1C 01 08 31 31 32 30 31 35 34 30 02 07 35 35 35 31 32 31 32 07 07 4F 75 74 73 69 64 65 74 Nov 20 10:40:23.865 EST: [1/0/0] get_fxo_caller_id calling num=5551212 calling name=Outside calling time=11/20 15:40 Nov 20 10:40:23.869 EST: [1/0/0, FXOLS_WAIT_SETUP_ACK, E_HTSP_SETUP_ACK] Nov 20 10:40:23.873 EST: fxols_wait_setup_ack: Nov 20 10:40:23.873 EST: [1/0/0] set signal state = 0xC timestamp = 0 Nov 20 10:40:23.985 EST: [1/0/0, FXOLS_PROCEEDING, E_DSP_SIG_0100] fxols_proceed_clear Nov 20 10:40:23.985 EST: htsp_timer_stop2 Nov 20 10:40:24.097 EST: [1/0/0, FXOLS_PROCEEDING, E_DSP_SIG_0110] fxols_rvs_battery Nov 20 10:40:24.097 EST: htsp_timer_stop2 Nov 20 10:40:24.733 EST: [1/0/0, FXOLS_PROCEED_RVS_BT, E_HTSP_PROCEEDING] fxols_offhook_proc Nov 20 10:40:24.733 EST: htsp_timer - 120000 msec Nov 20 10:40:24.745 EST: [1/0/0, FXOLS_PROCEED_RVS_BT, E_HTSP_VOICE_CUT_THROUGH] fxols_proc_voice
In this example, everything was working fine and both Name and Number Display were properly delivered to the phone. In the two scenarios below, the calling number is missing in one case, and the name display is missing in the other.
In the Caller ID String, looking at 04 01 4F translates to: 04 : Reason for Absence of DN 01 : Length of message 4F : "Out of Area"
195
31 32 08 01 4F 05
In the Caller ID String, looking at 08 01 4F translates to: 08 : Reason for Absence of Display 01 : Length 4F : Out of Area For more information, refer to Caller ID Name Delivery Issues on Cisco IOS Gateways, document ID 23444.
E&M Interfaces
The difference between a conventional two-wire telephone interface such as FXS or FXO and an E&M interface is that the E&M interface has wires that pass the audio signals plus wires to act as an input (to sense an incoming call) or an output (to indicate an outgoing call). These control leads are normally called the E lead (input) and the M lead (output). Depending on the type of E&M interface, the signaling leads could be controlled by connecting them to the ground, switching a 48-Vdc source, or completing a current loop between the two devices. E&M interfaces can normally be two- or four-wire operation, which does not refer to the total number of physical connections on the port but rather to the way that audio is passed between the devices. Two-wire operation means the transmitting and receiving audio signals are passed through a single pair of wires (one pair equals two wires). Four-wire operation uses one pair for transmitting and another pair for receiving audio. In Figure 18, two PBXs are connected across a WAN by E&M interfaces. This topology illustrates the path over a WAN between two geographically separated offices in the same company.
Figure 18 E&M Signaling Interfaces Voice port Serial or 1/0/0 Ethernet port
E&M
E&M
E&M Hardware Troubleshooting, page 197 E&M Interface Types, page 199 Troubleshooting E&M Interfaces at the Physical Level, page 208 Confirming E&M Configuration, page 216 Unbreakable Dial Tone, page 223
196
37759
Software Compatibility, page 197 Cabling, page 197 Shutdown Port, page 198
Software Compatibility
For interface cards inserted into Cisco modular access routers, check the compatibility tables in the Overview of Cisco Interface Cards chapter in the Cisco Interface Cards Installation Guide.
Cabling
E&M is a signaling technique for two-wire and four-wire telephone and trunk interfaces. The E&M interface typically connects remote calls from an IP network to a PBX. The card is connected to the PSTN or PBX through a telephone wall outlet by a straight-through RJ-48C cable.
Note
Refer to the appropriate platform product documentation for specific interface information about your E&M card. The connector port for the E&M voice interface card is shown in Figure 19. Information about LEDs can be found in the Connecting Voice Interface Cards to a Network chapter of the Cisco Interface Cards Installation Guide.
Note
VIC port 1
VIC port 0
IN USE
VIC E&M
IN USE
To verify that the analog E&M hardware is being recognized by the Cisco IOS platform, use the following commands:
show versionThis command displays the configuration of the system hardware, the software version, the names of configuration files, and the boot images. See the following sample output. show running-configThis command shows the configuration of the Cisco platform. The voice ports should appear in the configuration automatically. See the following sample output.
10694
197
Shutdown Port
Check to make sure the port is not shut down. Enter the show voice port command with the voice port number that you are troubleshooting. The output will tell you:
If the voice port is up. If it is not, use the no shutdown command to make it active. What parameter values have been set for the voice port, including default values (default values do not appear in the output from the show running-config command). If these values do not match those of the telephony connection you are making, reconfigure the voice port.
198
E&M Signaling Unit Side and Trunk Circuit Side Compatibility Issues, page 199 E&M Type I Interface Model, page 200 E&M Type II Interface Model, page 202 E&M Type III Interface Model, page 204 E&M Type V Interface Model, page 206
E&M Signaling Unit Side and Trunk Circuit Side Compatibility Issues
E&M signaling defines a trunk circuit side and a signaling unit side for each connection. Cisco's analog E&M interface functions as the signaling unit side, so it expects the other side to be a trunk circuit. When you use E&M interface model Type II or Type V, you can connect two signaling unit sides back to back by appropriate crossing of the signaling leads. When using the E&M Type I or Type III interface, you cannot connect two signaling unit sides back to back. Many PBX brands have E&M analog trunk cards that can operate as either the trunk circuit side or the signaling unit side. Because the Cisco E&M interfaces are fixed as the signaling unit side of the interface, it may be necessary to change the E&M trunk settings on the PBX to operate as the trunk circuit side. If Type I or III E&M is being used, this is the only way the PBX can work with the Cisco E&M interface. Some PBX products (and many key systems) can operate only as the signaling unit side of the E&M interface. They cannot interoperate with the Cisco E&M interface if Type I or Type III is chosen. If Type II or Type V E&M is being used, PBX products fixed as signaling unit side can still be used with the Cisco E&M interface via Type II or Type V. Each E&M signaling type has a unique circuit model and connection diagram. The following sections describe the different types. Table 25 shows the E&M supervisory signal description.
Table 25 E&M Interface Supervision Signal Description
Signal E M SG SB T/R
Meaning Ear or earth Mouth or magnet Signal ground Signal battery Tip/Ring
Description Signal wire from trunking (CO) side to signaling side. Signal wire from signaling side to trunking (CO) side. Used on E&M Types II, III, and IV. (Type IV is not supported on Cisco gateways.) Used on E&M Types II, III, and IV. (Type IV is not supported on Cisco gateways.) Tip and ring leads carry audio between the signaling unit and the trunking circuit. On a two-wire audio operation circuit, this pair carries the full-duplex audio path. Used on four-wire audio operation circuits only. The four-wire implementation provides separate paths for receiving and sending audio signals.
T1/R1
Tip-1/Ring-1
199
Ground
Battery
Open
Ground
The gateway grounds its E-lead to signal a trunk seizure. The PBX applies battery to its M-lead to signal a seizure. Cisco gateways expect to see off-hook conditions on the M-lead, and they signal off-hook to a remote device on the E-lead. E&M Type I 2-wire operation is shown in Figure 20. E&M Type I 4-wire operation is shown in Figure 21.
Figure 20 E&M Type I 2-Wire Audio Operation
PBX
-48V
Detect Off-hook
-48V ptc
M On-hook
Detect
5 2-wire audio
88930
4 Signaling unit
200
Figure 21
PBX
-48V
Detect Off-hook
-48V ptc
M On-hook
Detect
4-wire audio
R T1
R T1
4 5 4-wire audio
Trunk circuit
Signaling unit
Note
For the four-wire audio setup, Pin 6 (Tip) and Pin 3 (Ring) on the router transport the audio path from the PBX to the router. Pin 5 (Tip1) and 4 (Ring1) on the router transport the audio path from the router to the PBX. Pins for the cable are shown in Figure 22.
Figure 22
1
H11421
88931
R1
R1
201
Two signaling units cannot be connected back to back. A Type I signaling unit and a trunk circuit share a common ground. Type I does not provide isolation between trunk circuits and signaling units, can produce noise in audio circuits, and might be susceptible to electrical transients. It is critical to provide and ground connection directly between the Cisco product and the PBX. Otherwise, E&M signaling might be intermittent. Four wires are used for Type I, two-wire audio operation. Six wires are used for Type I, four-wire audio operation.
Open
Battery
Open
Ground
The gateway grounds its E-lead to signal a trunk seizure. The PBX applies battery to its M-lead to signal a seizure. Cisco gateways expect to see off-hook conditions on the M-lead, and they signal off-hook to a remote device on the E-lead. E&M Type II 2-wire operation is shown in Figure 23. E&M Type II 4-wire operation is shown in Figure 24.
202
Figure 23
PBX
-48V
Detect
E SG
E SG
7 8
On-hook Off-hook 2
Detect
SB
SB 5
1 ptc
-48V
2-wire audio R 4
88932
Signaling unit
203
Figure 24
PBX
-48V
Detect
E SG
E SG
7 8
On-hook Off-hook 2
Detect
SB
SB
1 ptc
-48V
4-wire audio
R T1
R T1
4 5 4-wire audio
R1 Trunk circuit
R1
Signaling unit
Note
For the four-wire audio setup, Pin 6 (Tip) and Pin 3 (Ring) on the router transport the audio path from the PBX to the router. Pin 5 (Tip1) and Pin 4 (Ring1) on the router transport the audio path from the router to the PBX. Considerations for Type II interfaces include:
Two signaling unit sides can be connected back-to-back if the appropriate signaling leads are swapped. Six wires are used for Type II, two-wire audio operation. Eight wires are used for Type II, four-wire audio operation.
204
88933
Table 28
Ground
Battery
Open
Ground
The router senses loop current on the M-lead for an inbound seizure and grounds its E-lead for an outbound seizure. Cisco routers/gateways expect to see off-hook conditions on the M-lead, and they signal off-hook to a remote device on the E-lead. E&M Type III 2-wire operation is shown in Figure 25. E&M Type III 4-wire operation is shown in Figure 26.
Figure 25 E&M Type III 2-Wire Audio Operation
PBX
-48V
Detect
E SG
E SG 2
7 8
On-hook M Off-hook SB SB M
Detect
1 ptc
-48V
5 2-wire audio
88934
4 Signaling unit
205
Figure 26
PBX
-48V
Detect
E SG
E SG 2
7 8
On-hook M Off-hook SB T SB T M
Detect
1 6 ptc
-48V
4-wire audio
R T1
R T1
4 5 4-wire audio
R1 Trunk circuit
R1
4 Signaling unit
Note
For the four-wire audio setup, Pin 6 (Tip) and Pin 3 (Ring) on the router transport the audio path from the PBX to the router. Pin 5 (Tip1) and Pin 4 (Ring1) on the router transport the audio path from the router to the PBX. Considerations for Type III interfaces include:
Two signaling units cannot be connected back to back. Six wires are used for Type III, two-wire audio operation. Eight wires are used for Type III, four-wire audio operation.
206
88935
Table 29
Open
Ground
Open
Ground
The gateway grounds its E-lead to signal a trunk seizure. The PBX grounds its M-lead to signal a seizure. Cisco gateways expect to see off-hook conditions on the M-lead, and they signal off-hook to remote device on the E-lead. E&M Type V 2-wire operation is shown in Figure 27. E&M Type V 4-wire operation is shown in Figure 28.
Figure 27 E&M Type V 2-Wire Audio Operation
PBX
-48V
2 M
Detect
-48V
5 2-wire audio
88936
4 Signaling unit
207
Figure 28
PBX
-48V
2 M 6
Detect
-48V
4-wire audio
R T1
4 4-wire audio
5 T1
Trunk circuit
Signaling unit
Note
For the four-wire audio setup, Pin 6 (Tip) and Pin 3 (Ring) on the router transport the audio path from the PBX to the router. Pin 5 (Tip1) and Pin 4 (Ring1) on the router transport the audio path from the router to the PBX. Considerations for Type V interfaces include:
Type V does not provide ground isolation. Two signaling unit sides can be connected back-to-back if the appropriate signaling leads are swapped. Four wires are used for Type V, two-wire audio operation. Six wires are used for Type V, four-wire audio operation.
208
88937
R1
4 R1
Hardware Troubleshooting Tools, page 209 Precautions, page 210 PBX Interconnection, page 210 Use Rollover Cable for E&M Port-to-Port Testing, page 210
Digital volt ohm meter (VOM) with sharp-tipped probes. Those with the analog bar graph and a beeper with pitch proportional to the display are particularly useful. Lineman's test set. RJ-45 breakout adapter. This adapter has an RJ-45 socket on each end, with terminals for each of the lines distributed about each side. RJ-45 straight-through cable (verify that it is straight through). Alligator-clip patch cables.
209
Precautions
Warning
Equipment closets where telecommunication devices exist, while usually not hazardous, can have some potentially harmful situations, including, but not limited to:
Lead acid battery stacks able to supply large amounts of current, and possibly flammable hydrogen fumes. Ventilation and insulation are the keys to avoiding damage. Wear long-sleeved shirts, long pants, and steel-toed work boots. Keep electrically insulated work gloves and OSHA-approved eye protection available. Avoid wearing metal objects such as chains, bracelets, rings, and watches unless under cover and away from making any connection. Voltage does not injure; current does. Many wires for voice, data, power, and so on. Watch for potentially damaging outages caused by pulling a wire that is snagged on another wire. RJ plugs have a tendency to snag on other wires and loosen equipment. Sharp edges. Equipment deployed before there were safety requirements regarding snag or cut hazards often have protruding bolts and screws. Full clothing protection helps protect you in these cases. Loose, heavy equipment. Objects in the equipment room may be less than secure. These objects can fall and hurt the equipment, you, or others. If moving heavy objects is involved, leave it to the facility staff or other professional movers; otherwise, use a back protector belt and follow proper OSHA-approved lifting and moving guidelines.
PBX Interconnection
The majority of PBXs interface with peripheral equipment using cable distribution frames (DFs). Multipair cables are run from the PBX equipment cabinet to the distribution frame, where they are jumpered (cross-connected) to the external devices. These DFs have various names, but the most common terms for them are 110 block, 66 block, and Krone frame. The DF is generally the place where all connections are made between the router voice port and the PBX, so it is where most wiring errors are made and would obviously be the best place to perform testing and troubleshooting.
210
The rollover console cable has the following RJ-45 connector wiring: 1-------8 2-------7 3-------6 4-------5 5-------4 6-------3 7-------2 8-------1 The signaling cross-over occurs as pins 2 (M-lead) and 7 (E-lead) on one port are connected to pins 7 (E-lead) and 2 (M-lead) on the other port. The two ports share a common internal ground. The cross-over on pins 4 and 5 (audio pair) has no effect on the audio signal. By setting both voice ports to 2-wire, type 5 operation, the E&M ports become symmetrical and an outward seizure on one port is seen as an incoming seizure on the second port. Any DTMF digits sent out immediately come back in and are then matched on another dial peer. If the test calls are successful, there is little doubt about the operation of the router voice ports. In the following example, the assumption is made that there are working devices on the IP network that can originate and accept VoIP calls. The voice ports and dial peers are configured like this:
voice-port 1/0/0 !--- First port under test. operation 2-wire signal-type wink type 5 ! voice-port 1/0/1 !--- Second port under test. operation 2-wire signal-type wink type 5 Cisco - Analog E&M Troubleshooting Guidelines (Cisco IOS Platforms) ! dial-peer voice 100 pots !--- Send call out to port 1/0/0, strip the 100 and prefix with a called !--- number 200. destination-pattern 100 port 1/0/0 prefix 200 ! dial-peer voice 200 voip !--- Incoming test call for 200 comes !--- in on port 1/0/1 and is sent to 10.1.1.1 as VoIP call. destination-pattern 200 session-target ipv4:10.1.1.1 !
When a VoIP call comes in to the router with a called number of 100, it is sent out port 1/0/0. By default, any explicitly matched digits on a POTS dial peer are assumed to be an access code and stripped off before the call is made. To route the call correctly, these digits need to be replaced. In this case the prefix command prepends the digits 200 as the called number. This call is immediately looped back in on port 1/0/1. The digits match on dial-peer 200 and make the new call to the designated IP address. The devices originating and accepting the VoIP calls should then have an audio connection that is across the IP
211
network and goes out and back through the E&M ports. This connection proves the router is working properly and indicates that the fault is external to the router. The majority of faults are due to incorrect cabling or PBX port programming issues.
E detector floats at 48 V below ground. M contact has low ohms to ground on-hook, and is 48 V below ground when off-hook. Resistance is approximately 30 to 150 ohms between tip and ring, sometimes in series with 2.2 uF of capacitance. Resistance is approximately 30 to 150 ohms between tip-1 and ring-1, sometimes in series with 2.2 uF of capacitance.
With a VOM, measure DC voltage between pin 7 of the cable and the chassis ground. The meter should read between 24 V and 56 V. If it does not, pin 7 is likely not the E lead on the PBX. Measure the other pins, looking for 24 to 56 V to ground. Some devices, like an AT&T, Lucent or Avaya PBX, bias the tip/ring leads to 48 V to aid debugging. On pins that had no conclusive energy, measure the ohms to ground with a VOM. If one shows less than 500 ohms, it is likely the M lead. It should be pin 2 on the cable. If pin 2 shows between -24 v and 48 V to ground, it is possible that the PBX is off hook; sometimes a PBX busies out what seems to be a bad port. With a VOM, measure the resistance (ohms) between tip and ring. It should read from 30 to 120 ohms if the PBX has no DC blocking capacitor. If there is a capacitor, you will see the meter jump to around 100 ohms, then climb to infinity as the capacitor charges. With either signature, there is an audio pairyou just need to figure out which direction it is. Do the same for tip-1/ring-1. It should behave like tip/ring. Attach a test to tip/ring. While listening, ground E (pin 7 on the cable). If the PBX is configured to provide a dial tone, you should hear it in the earpiece. If you hear nothing, try the other audio pair in case it is cross-wired. If you still hear nothing, the PBX might not give a dial tone on a trunk line. It is acceptable to cross tip with ring or tip-1 with ring-1.
On either the router or the PBX, try a similar port that is known to work. Listen in on both sides of the audio path (one at a time) with the test set to hear the call progress. Try to spoof the signaling of one end or the other by clipping one of the active signals to see if the equipment reacts as expected. Grounding E should simulate an inbound call coming over the trunk to the PBX, and the PBX might respond with a dial tone (if provisioned to do so). Using an extension off of the PBX, try to seize the trunk and see if M connects to ground.
212
E lead detector floats at -48 v below ground. SG lead has a low ohms to ground. M lead contact between M and SB is open when on-hook and closed when off-hook. M lead floats. SB lead floats. Approximately 30 to 150 ohms between tip and ring, sometimes in series with 2.2 uF of capacitance. Approximately 30 to 150 ohms between tip-1 and ring-1, sometimes in series with 2.2 uF of capacitance.
With a VOM, measure the DC voltage between E (pin 7 of the cable) and the chassis ground. The meter should read between 24 V and 56 V. If it does not, pin 7 on the cable is likely not the E lead. Measure the other pins, looking for 24 to 56 V to ground. Some devices, like an AT&T, Lucent, or Avaya PBX, bias the tip/ring leads to 48 V to aid debugging. On pins that have no conclusive energy, measure the ohms to ground with a VOM. If one shows less than 500 ohms, it is likely the SG lead. It should be pin 8 on the cable. With a VOM, measure the resistance (ohms) between tip and ring. It should read from 30 to 120 ohms if the PBX has no DC blocking capacitor. If there is a capacitor, you will see the meter jump to around 100 ohms, then climb to infinity as the capacitor charges. With either signature, there is an audio pairyou just need to figure out which direction it is. Do the same for tip-1/ring-1. It should behave like tip/ring. Attach a test set to tip/ring. While listening, ground E (pin 7 on the cable). If the PBX is configured to provide a dial tone, you should hear it in the earpiece. If you hear nothing, try the other audio pair in case it is cross-wired. If you still hear nothing, the PBX might not give a dial tone on a trunk line. It is acceptable to cross tip with ring or tip-1 with ring-1. In most cases, you can get M/SB backwards and E/SG backwards and still have no problems.
On either the router or the PBX, try a similar port that is known to work. Listen in on both sides of the audio path (one at a time) with the test set to hear the call progress. Try to spoof the signaling of one end or the other by clipping one of the active signals to see if the equipment reacts as expected. Grounding E should simulate an inbound call coming over the trunk to the PBX, and the PBX might respond with a dial tone (if provisioned to do so). Using an extension off of the PBX, try to seize the trunk and see if M connects to ground.
213
E lead detector floats at 48 V below ground. M lead contact between M and SG when on-hook, and between M and SB when off-hook. SG lead floats. M lead floats. SB lead floats. Approximately 30 to 150 ohms between tip and ring, sometimes in series with 2.2 uF of capacitance. Approximately 30 to 150 ohms between tip-1 and ring-1, sometimes in series with 2.2 uF of capacitance.
With a VOM, measure DC voltage between E (pin 7 of the cable) and the chassis ground. The meter should read somewhere between 24 V and 56 V. If it does not, pin 7 is likely not the E lead. Measure the other pins, looking for 24 to 56 V to ground. Some PBXs bias (apply a DC voltage to control the operation of a device) the tip/ring leads to 48 V to aid debugging. On pins that have no conclusive energy:
Look for a contact closure (low ohms) between M and SG (if the PBX is on-hook). Look for a contact closure (low ohms) between M and SB (if the PBX is off-hook).
With a VOM, measure the resistance (ohms) between tip and ring. It should read from 30 to 120 ohms if the PBX has no DC blocking capacitor. If there is a capacitor, you'll see the meter jump to around 100 ohms, then climb to infinity as the capacitor charges. With either signature, there is an audio pair--you just need to figure out which direction it is. Do the same for tip-1/ring-1. It should behave like tip/ring. Attach a test set to tip/ring. While listening, ground E (pin 7 on the cable). If the PBX is configured to provide a dial tone, you should hear it in the earpiece. If you hear nothing, try the other audio pair in case it is cross-wired. If you still hear nothing, the PBX might not give a dial tone on a trunk line. It is acceptable to cross tip with ring or tip-1 with ring-1.
On either the router or the PBX, try a similar port that is known to work. Listen in on both sides of the audio path (one at a time) with the test set to hear the call progress. Try to spoof the signaling of one end or the other by clipping one of the active signals to see if the equipment reacts as expected. Grounding E should simulate an inbound call coming over the trunk to the PBX, and the PBX might respond with a dial tone (if provisioned to do so). Using an extension off of the PBX, try to seize the trunk and see if M (pin 2 on the cable) connects to SB (pin 1 on the cable).
214
E lead detector floats at 48 V below ground. M lead contact ground is open when on-hook, and closed when off-hook. Approximately 30 to 150 ohms between tip and ring, sometimes in series with 2.2 uF of capacitance. Approximately 30 to 150 ohms between tip-1 and ring-1, sometimes in series with 2.2 uF of capacitance.
With a VOM, measure DC voltage between E (pin 7 of the cable) and the chassis ground. The meter should read between 24 V and 56 V. If it does not, pin 7 on the cable is likely not the E lead. With a VOM, measure the resistance (ohms) between tip and ring. It should read from 30 to 120 ohms if the PBX has no DC blocking capacitor. If there is a capacitor, you will see the meter jump to around 100 ohms, then climb to infinity as the capacitor charges. With either signature, there is an audio pairyou just need to figure out which direction it is. Do the same for tip-1/ring-1. It should behave like tip/ring. Attach a test set to tip/ring. While listening, ground E (pin 7 on the cable). If the PBX is configured to provide a dial tone, you should hear it in the earpiece. If you hear nothing, try the other audio pair in case it is cross-wired. If you still hear nothing, the PBX might not give a dial tone on a trunk line. It is acceptable to cross tip with ring or tip-1 with ring-1.
On either the router or the PBX, try a similar port that is known to work. Listen in on both sides of the audio path (one at a time) with the test set to hear the call progress. Try to spoof the signaling of one end or the other by clipping one of the active signals to see if the equipment reacts as expected. Grounding E should simulate an inbound call coming over the trunk to the PBX, and the PBX might respond with a dial tone (if provisioned to do so). Using an extension off of the PBX, try to seize the trunk and see if M (pin 2 on the cable) connects to ground.
215
Confirming the PBX E&M Configuration Parameters, page 216 Confirming the Cisco IOS Gateway Configuration, page 216 Verifying the Wiring Arrangement Between the PBX and the Cisco Gateway, page 217 Verifying Supervision Signaling, page 218 Verifying That the Cisco Equipment and PBX Are Sending and Receiving Digits, page 219 Verifyinng That the Gateway Sends the Expected Digits to the PBX, page 222 Verify That the Gateway Receives the Expected Digits from the PBX, page 223
E&M signaling type (I, II, III, V) Audio implementation (2-wire / 4-wire) Start dial supervision (wink-start, immediate, delay-dial) Dial method (DTMF, pulse) Call progress tones (standardized within geographic regions) PBX port impedance
For information about how specific PBX types interoperate with your gateway, go to the PBX interoperability portal, which is located here: http://www.cisco.com/warp/public/779/largeent/avvid/inter_operability/
Note
E&M Type IV is not supported by Cisco gateways. E&M Type V is the most common interface type used outside of North America, but the term Type V is not commonly used outside of North America. From the viewpoint of many PBX operators, there is only one E&M type, what is called Type V in North America.
show running-configThis command displays the running configuration of the router/ gateway.
Note
The default configuration on E&M voice ports is Type I, wink-start, 2-wire operation, DTMF dialing. Default E&M voice port parameters are not displayed with the show running-config command.
show voice-port For E&M voice ports, this command displays specific configuration data such as E&M voice port, interface type, impedance, dial-supervision signal, audio operation, and dial method. For detailed information see the sample output below.
216
Verifying the Wiring Arrangement Between the PBX and the Cisco Gateway
Physical wiring is often the primary source for analog E&M problems. It is imperative that you verify that the cable/wiring you are using is appropriate for the E&M setup in place. A few things to consider:
E&M Type I and Type V use two leads for supervisory signaling (on/off hook signaling)E (ear, earth) and M (mouth, magnet). Cisco routers/gateways expect to see off-hook conditions on the M-lead and signal off-hook to the remote device on the E-lead. E&M Type II and Type III use four leads for supervisory signaling (on/off hook signaling)E (ear, earth), M (mouth, magnet), SG (signal ground), SB (signal battery). Cisco routers/gateways expect to see off-hook conditions on the M-lead and signal off-hook to a remote device on the E-lead.
217
Audio operationThe 2-wire/4-wire operation is independent of the signaling type. For example, a 4-wire audio operation E&M circuit has 6 physical wires if configured for Type I or Type V and 8 physical wires if configured for Type II or Type III. Audio path wiringIn 4-wire audio mode, some PBX es and key systems reverse the normal usage of the tip and ring and tip-1 and ring-1 pairs. To match up the audio pairs with the Cisco E&M audio pairs, connect tip and ring on the PBX side to tip-1 and ring-1 on the Cisco side, and tip-1 and ring-1 on the PBX side to tip and ring on the Cisco side.
See the Troubleshooting E&M Interfaces at the Physical Level section on page 208 for more information on the wiring arrangement.
SUMMARY STEPS
1. 2. 3.
enable debug vpm signal Place a call from the PBX to the gateway.
DETAILED STEPS
Step 1 Step 2 Step 3
At the Router> prompt, enter enable to enter privileged EXEC mode. Enter your password if prompted. Turn on the command debug vpm signal on the Cisco gateway. This command is used to collect debug information for signaling events (on-hook/ off-hook transitions). Place a call from the PBX to the gateway. The PBX should seize the E&M trunk and send the on-hook -> off-hook signal transition to the gateway. The following output displays a successful reception of these signals. In this example, the PBX is seizing the router trunk. The router E&M voice port transitions from on-hook to off-hook. This shows that on-hook, off-hook signaling is being received from the PBX.
Router# debug vpm signal Voice Port Module signaling debugging is enabled *Mar 2 05:54:43.996: htsp_process_event: [1/0/0, em_onhook_offhookhtsp_setup_ind *Mar 2 05:54:44.000: htsp_process_event: [1/0/0, *Mar 2 05:54:44.784: htsp_process_event: [1/0/0, *Mar 2 05:54:44.784: htsp_process_event: [1/1/0, fxsls_onhook_setuphtsp_alerthtsp_alert_notify *Mar 2 05:54:44.788: htsp_process_event: [1/0/0, *Mar 2 05:54:44.788: htsp_process_event: [1/1/0, fxsls_waitoff_voice
1.4 , 34] 1.7 , 8] 1.7 , 10] 1.2 , 5] 1.7 , 11] 1.5 , 11]
If no output is displayed, there is probably a problem with the E&M supervision signaling.
218
Symptom No dial tone from the Cisco port. No port seizure activity seen on the Cisco gateway. The port is seized but the call does not go through.
Problem The PBX is not configured to seize the E&M port connected to the Cisco equipment.
There is an E&M Type (I, II, Verify (and change if necessary) the III or V) mismatch between E&M type configured on the Cisco the PBX and the gateway. equipment. See the Confirming the Cisco IOS Gateway Configuration section on page 216.
Incorrect wiring arrangement (cabling) for the supervisory signaling The Cisco gateway is unable to leads (E and M leads for send digits when a port is Type I and V; E, M, SB, and seized. SG leads for Types II and III). The port has unbreakable dial tone.
Wiring issues are usually the primary source of analog E&M problems. Make sure the cable used corresponds to the required PBX and Cisco gateway pinout, interface type, and audio operation setup. For more information see the Troubleshooting
E&M Interfaces at the Physical Level section on page 208.
The port on the Cisco gateway The Cisco gateway cannot be seized. configuration changes are The Cisco gateway is unable to not enabled. send digits. Calls cannot be made in two directions.
Issue the shutdown/no shutdown command sequence on the E&M voice port after the configuration changes.
On-hook or off-hook signals This is probably an indication of a have been sent one way only. defective cable, where one path of the signaling leads is wired correctly and the other side is not.
Verifying That the Cisco Equipment and PBX Are Sending and Receiving Digits
After confirming successful supervisory (on-hook/off-hook) signaling between the PBX and the gateway, you need to verify that address information (DTMF digits or pulse dial) is being passed between both ends.
Note
DTMF digits are sent on the audio path. Pulse-dial address information is sent by pulsing on the E or M
lead.
There are three start dial supervision line protocols that analog E&M uses to define how the equipment passes address information:
219
Make sure both the Cisco gateway and the PBX are configured with the same start dial supervision protocol. Verify that information is being passed by performing the following steps:
SUMMARY STEPS
1. 2. 3. 4.
enable debug vpm signal, debug vtsp dsp Place a call from the PBX to the gateway. Place a call from the gateway to the PBX.
DETAILED STEPS
Step 1 Step 2 Step 3
At the Router> prompt, enter enable to enable privileged EXEC mode. Enter your password if prompted. Turn on the commands debug vpm signal and debug vtsp dsp on the Cisco gateway. The command debug vtsp dsp is useful for displaying the digits received and sent by the voice DSPs. Place a call from the PBX to the gateway. The following output displays a successful reception of the expected digits. In this example, the router receives a call from the PBX to extension 2000.
Router# show debugging Voice Port Module signaling debugging is on Voice Telephony dsp debugging is on Router# *Mar 1 03:16:19.207: htsp_process_event: [1/0/0, 1.4 , 34] em_onhook_offhookhtsp_setup_*Mar 1 03:16:19.207: htsp_process_event: [1/0/0, 1.7 , 8] *Mar 1 03:16:19.339: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_BEGIN: digit=2,rtp_=0x9961CF03 *Mar 1 03:16:19.399: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_OFF: digit=2,duration=*Mar 1 03:16:19.539: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_BEGIN: digit=0,rtp_=0x9961CF03 2. *Mar 1 03:16:19.599: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_OFF: digit=0,duration=*Mar 1 03:16:19.739: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_BEGIN: digit=0,rtp_=0x9961CF03 *Mar 1 03:16:19.799: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_OFF: digit=0,duration=*Mar 1 03:16:19.939: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_BEGIN: digit=0,=rtp_=0x9961CF03 *Mar 1 03:16:19.999: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_OFF: digit=0,duration=*Mar 1 03:16:19.999: htsp_process_event: [1/0/0, 1.7 , 10] *Mar 1 03:16:19.999: htsp_process_event: [1/1/0, 1.2 , 5] fxsls_onhook_setuphtsp_alerthtsp_*Mar 1 03:16:20.003: htsp_process_event: [1/0/0, 1.7 , 11] *Mar 1 03:16:20.003: htsp_process_event: [1/1/0, 1.5 , 11] fxsls_waitoff_voice *Mar 1 03:16:27.527: htsp_process_event: [1/1/0, 1.5 , 34] fxsls_waitoff_offhook *Mar 1 03:16:27.531: htsp_process_event: [1/0/0, 1.7 , 6] em_offhook_connectem_stop_
Step 4
Place a call from the gateway to the PBX. The following output displays the digits the Cisco equipment is sending. In this example, the PBX receives a call from the router to extension 1000. If digits are not parsed properly, the wink start timers being triggered.
Log Buffer (1000000 bytes): *Mar 1 03:45:31.287: htsp_process_event: [1/1/1, 1.2 , 34] fxsls_onhook_offhook htsp_setup_ind *Mar 1 03:45:31.291: htsp_process_event: [1/1/1, 1.3 , 8] *Mar 1 03:45:33.123: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_BEGIN: digit=1 , rtp_timestamp=0xCD4365D8 *Mar 1 03:45:33.283: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_OFF: digit=1, duration=205
220
*Mar 1 03:45:33.463: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_BEGIN: digit=0 , rtp_timestamp=0xCD4365D8 *Mar 1 03:45:33.643: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_OFF: digit=0, duration=225 *Mar 1 03:45:33.823: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_BEGIN: digit=0 , rtp_timestamp=0xCD4365F0 *Mar 1 03:45:34.003: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_OFF: digit=0, duration=222 *Mar 1 03:45:34.203: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_BEGIN: digit=0 , rtp_timestamp=0xCD4365F0 *Mar 1 03:45:34.411: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_OFF: digit=0, duration=252 *Mar 1 03:45:34.415: htsp_process_event: [1/1/1, 1.3 , 10] *Mar 1 03:45:34.415: htsp_process_event: [1/0/0, 1.4 , 5] em_onhook_setup em_of fhook *Mar 1 03:45:34.415: htsp_process_event: [1/0/0, 1.13 , 43] em_start_timer: 120 0 ms *Mar 1 03:45:34.715: htsp_process_event: [1/0/0, 1.10 , 34] em_wink_offhookem_s top_timers em_start_timer: 1200 ms *Mar 1 03:45:34.923: htsp_process_event: [1/0/0, 1.11 , 22] em_wink_onhook em_s top_timers em_send_digit htsp_dial *Mar 1 03:45:34.923: digit=1, components=2, freq_of_first=697, freq_of_second =1209, amp_of_first=16384, amp_of_second=16384 *Mar 1 03:45:34.923: digit=0, components=2, freq_of_first=941, freq_of_second =1336, amp_of_first=16384, amp_of_second=16384 *Mar 1 03:45:34.923: digit=0, components=2, freq_of_first=941, freq_of_second =1336, amp_of_first=16384, amp_of_second=16384 *Mar 1 03:45:34.923: digit=0, components=2, freq_of_first=941, freq_of_second 3. =1336, amp_of_first=16384, amp_of_second=16384 *Mar 1 03:45:35.727: vtsp_process_dsp_message: MSG_TX_DIALING_DONE *Mar 1 03:45:35.727: htsp_process_event: [1/0/0, 1.7 , 19] em_offhook_digit_don ehtsp_alerthtsp_alert_notify
Table 31 shows digit send and receive problems and the corresponding solutions. These problems can be diagnosed if you notice that the wink timers are being triggered.
Table 31 Digit Send and Receive Troubleshooting Table
Problem Start dial supervision mismatch or timing issues between the PBX and gateway.
Solution Make sure both end systems are configured with the same start dial protocol.
Audio operation mismatch (for example, one side Verify the gateway configuration and PBX configured for 2-wire, the other for 4-wire) or configuration and the wiring arrangement. For wiring problems on the audio path. more information see the Troubleshooting E&M Interfaces at the Physical Level section on page 208.
Note
DTMF digits are passed on the audio path. Even if the line supervision signaling is operating correctly, DTMF digits are not passed if the audio path is broken.
Verify the wiring arrangement. See the Troubleshooting E&M Interfaces at the Physical Level section on page 208.
221
In the 4-wire audio mode, some PBX and key system products reverse the normal usage of the tip and ring and tip-1 and ring-1 pairs. In that case, to match up the audio pairs with the Cisco E&M audio pairs, you might need to connect tip and ring on the PBX side to tip-1 and ring-1 on the Cisco side, and tip-1 and ring-1 on the PBX side to tip and ring on the Cisco side. If the audio pairs are not correctly matched up in 4-wire mode, there is no end-to-end audio path in either direction. If the E&M interface is configured to send dial strings as dial pulse (which works by pulsing on the E or M lead), it is possible to establish a call even with the 4-wire audio pairs reversed, but there will be little or no audio path in either direction after the call is established (there might be low-level transmission of audio, but the sound levels will be far too low for comfort). If you are using DTMF to send dial strings, the E&M interface goes off hook at the start of the call, but the call does not complete, because one end sends the DTMF tones on the wrong audio pair, and the other end does not receive these DTMF tones.
Verifyinng That the Gateway Sends the Expected Digits to the PBX
Once the two end devices are able to successfully send supervision and address signaling (on-hook, off-hook, digits), we can assume that the troubleshooting process is complete for analog E&M signaling, and it is now in the dial plan domain. For more information about dial plan design, refer to the Voice Design and Implementation Guide, document ID 5756. If incomplete or incorrect digits are sent by the Cisco equipment, then the Telco switch (CO or PBX), cannot ring the correct station. On POTS dial peers, the only digits that are sent to the other end are the ones specified with the command destination-pattern and the wild card character (.). The POTS dial peer command prefix can be used to include a dial-out prefix that the system enters automatically instead of people dialing it. Refer to the following output example for a sample configuration.
! !--- Some output ommited. ! !--- E&M Voice Port ! voice-port 1/0/0 type 2 signal immediate ! !--- FXS Voice Port voice-port 1/1/0 ! dial-peer voice 1 pots destination-pattern 2000 port 1/1/0 ! !--- Dial peer 2 is in charge of forwarding calls to the E&M voiceport 1/0/0. !--- In this case the digit "1" in the destination pattern will be dropped and the syste !--- will transmit the 3 digits matched by the "." wildcard. !--- Notice that since the PBX is expecting the "1000" string, the prefix command is used. ! dial-peer voice 2 pots destination-pattern 1... port 1/0/0 prefix 1 !
222
Verify That the Gateway Receives the Expected Digits from the PBX
Verify that the digits received from the PBX match a dial peer in the gateway. If incomplete or incorrect digits are sent by the PBX, a dial peer cannot be matched. Use the command debug vtsp dsp to view the digits received by the analog E&M voice port. To verify which dial peers match a specific string use the command show dialplan number. Refer to the following sample output example.
Router# show dialplan number 1000 Macro Exp.: 1000 VoiceEncapPeer2 information type = voice, tag = 2, destination-pattern = `1...', answer-address = `', preference=0, group = 2, Admin state is up, Operation state is incoming called-number = `', connections/maximum application associated: type = pots, prefix = `1', session-target = `', voice-port = `1/0/0', direct-inward-dial = disabled, register E.164 number with GK = TRUE Connect Time = 19644, Charged Units = 0, Successful Calls = 63, Failed Calls = 2, Accepted Calls = 65, Refused Calls = 0, Last Disconnect Cause is "10 ", Last Disconnect Text is "normal call clearing.", Last Setup Time = 28424467. Matched: 1000 Digits: 1 Target: Router# show dialplan number 2000 Macro Exp.: 2000 VoiceEncapPeer1 information type = voice, tag = 1, destination-pattern = `2000', answer-address = `', preference=0, group = 1, Admin state is up, Operation state is incoming called-number = `', connections/maximum application associated: type = pots, prefix = `', session-target = `', voice-port = `1/1/1', direct-inward-dial = disabled, register E.164 number with GK = TRUE Connect Time = 19357, Charged Units = 0, Successful Calls = 68, Failed Calls = 8, Accepted Calls = 76, Refused Calls = 0, Last Disconnect Cause is "10 ", Last Disconnect Text is "normal call clearing.", Last Setup Time = 28424186. Matched: 2000 Digits: 4 Target:
up, = 0/unlimited,
up, = 0/unlimited,
223
DTMF tones not sent DTMF tones not understood DTMF tones too distorted to be understood Other signaling and cabling issues
For more information, refer to Inability To Break Dialtone in a Voice over IP Network , document ID 22376.
User A
User B #456
PSTN
DID
E&M
User C #234
User D #345
Number Number Dialed Received by by User A Router 555-1234 555-1345 555-1456 555-1678 234 345 456 678
Extension Receiving Call User C User D User B No dial-peer match found; fast busy tone is played
224
35968
Software Compatibility, page 225 Cabling, page 225 Shutdown Port, page 225
Software Compatibility
For interface cards inserted into Cisco 1600 series, Cisco 1700 series, Cisco 2600 series, Cisco 3600 series, Cisco 3700 series, and Cisco ICS 7750 platforms, refer to the compatibility tables in the Overview of Cisco Interface Cards chapter in the Cisco Interface Cards Installation Guide.
Cabling
The two-port and four-port DID interface cards support the RJ-11 connector. Illustrations of the connector ports are shown in Figure 30 and Figure 31. Information about LEDs can be found in the Connecting Voice Interface Cards to a Network chapter of the Cisco Interface Card Hardware Installation Guide.
Figure 30 Two-Port Analog DID Voice Interface Card
IN USE
VIC 2DID
IN USE
Figure 31
IN USE
For more information about the VIC-2DID interface card, refer to Understanding 2 Port Direct Inward Dial (2 DID) Voice Interface Cards, document ID 15268.
Shutdown Port
Check to make sure that the port is not shut down. Enter the show voice port command with the voice port number that you are troubleshooting, which will tell you:
If the voice port is up. If it is not, use the no shutdown command to make it active.
65683
VIC 4FXS/DID
36014
225
What parameter values have been set for the voice port, including default values (these do not appear in the output from the show running-config command). If these values do not match those of the telephony connection you are making, reconfigure the voice port.
226
Troubleshooting Analog Voice Interfaces to the IP Network Voice Port Testing Commands
Delay Duration Timing is set to 2000 ms Dial Pulse Min. Delay is set to 140 ms Percent Break of Pulse is 60 percent Auto Cut-through is disabled Dialout Delay for immediate start is 300 ms
Detector-Related Function Tests, page 227 Loopback Function Tests, page 228 Tone Injection Tests, page 228 Relay-Related Function Tests, page 229 Fax/Voice Mode Tests, page 229
Enter a keyword for the detector under test and specify whether to force it to the on or off state.
Step 2
Router# test voice port slot/subunit/port detector {m-lead | battery-reversal | loop-current | ring | tip-ground | ring-ground | ring-trip} disable
For each signaling type (E&M, FXO, FXS), only the applicable keywords are displayed. The disable keyword is displayed only when a detector is in the forced state. Identifies the voice port on which you want to end the test.
Note
Enter a keyword for the detector under test and the keyword disable to end the forced state. For each signaling type (E&M, FXO, FXS), only the applicable keywords are displayed. The disable keyword is displayed only when a detector is in the forced state.
Note
227
Troubleshooting Analog Voice Interfaces to the IP Network Voice Port Testing Commands
Purpose Identifies the voice port you want to test and enters a keyword for the loopback direction. A call must be established on the voice port under test. Identifies the voice port on which you want to end the test and enters the keyword disable to end the loopback.
Note
Step 2
Purpose Identifies the voice port you want to test and enter keywords for the direction to send the test tone and for the frequency of the test tone. A call must be established on the voice port under test. Identifies the voice port on which you want to end the test and enter the keyword disable to end the test tone.
Note Note
Step 2
228
Troubleshooting Analog Voice Interfaces to the IP Network Voice Port Testing Commands
Enter a keyword for the relay under test and specify whether to force it to the on or off state.
Step 2
Router# test voice port slot/subunit/port relay {e-lead | loop | ring-ground | battery-reversal | power-denial | ring | tip-ground} disable
For each signaling type (E&M, FXO, FXS), only the applicable keywords are displayed. The disable keyword is displayed only when a relay is in the forced state. Identifies the voice port on which you want to end the test.
Note Note
Enter a keyword for the relay under test, and the keyword disable to end the forced state. For each signaling type (E&M, FXO, FXS), only the applicable keywords are displayed. The disable keyword is displayed only when a relay is in the forced state.
Purpose Identifies the voice port you want to test. Enter the keyword fax to force the voice port into fax mode. Identifies the voice port on which you want to end the test.
Step 2
Enter the keyword disable to return the voice port to voice mode.
229
Troubleshooting Analog Voice Interfaces to the IP Network Voice Port Testing Commands
230
Checking the Hardware, page 231 Checking the Digital Signal Processors, page 233 Verifying Codec Complexity, page 260 Checking the Interface, page 261 Verifying Digital Voice-Port Configurations, page 280 Voice Port Testing Commands, page 289
If you are troubleshooting a connection to a PBX, you might the PBX interoperability notes useful. These notes contain configuration information for Cisco gateways and several types of PBXs. To access these notes, use the following website: http://www.cisco.com/warp/public/779/largeent/avvid/inter_operability/
Software Compatibility, page 232 Cabling, page 232 Shutdown Port, page 233
231
Software Compatibility
To ensure that your card is compatible with your software, check the following:
For network modules inserted into Cisco modular access routers, refer to the compatibility tables in the Overview of Cisco Network Modules chapter in the Cisco Network Modules Hardware Installation Guide. For interface cards inserted into Cisco modular access routers, refer to the compatibility tables in the Overview of Cisco Interface Cards chapter in the Cisco Interface Cards Installation Guide.
Cabling
Cabling for the digital ports varies by platform:
Cisco 1600 series, Cisco 1700 series, Cisco 2600 series, Cisco 3600 series, Cisco 3700 series, and Cisco ICS 7750 platforms that use the Multiflex Trunk Interface card use an RJ-48C cable. Refer to the Cisco Interface Card Hardware Installation Guide for information about digital Cisco interface cards. Cisco 7200 VXR platforms use RJ-48C cables for the port adapter. See the MIX-Multichannel T1/E1 Port Adapter Installation and Configuration Guide for more information. Cisco AS5300 universal access servers use RJ-45 cables for the T1 or E1 interface. A VoIP feature is also required for voice traffic. See the Cisco AS5300 Module Installation Guide. Cisco AS5350 and 5400 universal gateways use RJ-45 cables for the four-port card and a 36-pin cable to RJ-45 interface for the eight-port card. For more information about cabling these platforms, see the Cabling Specifications chapter of the Cisco AS5350 and AS5400 Universal Gateway Card Installation Guide.
232
H11419
Troubleshooting Digital Voice Interfaces to the IP Network Checking the Digital Signal Processors
Table 32
Pin1 1 2 3 4 5 6 7 8
Shutdown Port
If the port is not operational, check to make sure the port is not shut down. Enter the show voice port command with the voice port number that you are troubleshooting, which tells you:
If the voice port is up. If it is not, use the no shutdown command to make it active. What parameter values have been set for the voice port, including default values. (these do not appear in the output from the show running-config command.) If these values do not match those of the telephony connection you are making, reconfigure the voice port.
No audio heard by either party or one-way audio on the voice path after the call is connected.
233
Troubleshooting Digital Voice Interfaces to the IP Network Checking the Digital Signal Processors
Call setup failure, such as the inability to detect or transmit proper Channel Associated Signaling (CAS) state transitions. Channels are stuck in the PARK state and cannot be used. Error messages on the console or in the router log complain of DSP timeouts.
Voice DSP Control Message Logger, page 234 Voice Call Tuning, page 239 Voice DSP Crash Dump File Analysis, page 239 Troubleshooting Universal Port SPEs, page 243 DSP Troubleshooting Links, page 260
Message Logger Overview, page 234 Configuration Tasks, page 235 Configuration Examples, page 238
Caution
Using the logger feature in a production network environment increases CPU and memory usage on the gateway.
Note
We recommend that you work closely with your Cisco representative to use this feature. If you are experiencing problems with certain voice calls, the engineering team at Cisco might ask you to capture the control messages using the voice DSP logger. You can capture these messages by turning on the logger, repeating the problematic calls, and capturing the logs. Only Cisco engineers can determine if you should send the logs in for further review.
Incorrect parameters
234
Troubleshooting Digital Voice Interfaces to the IP Network Checking the Digital Signal Processors
In many cases, DSP problems have been the result of bad control messages. By logging all of these messages for offline analysis, you can better integrate and debug at-speed issues for analysis.
Message Capture
Message capture occurs when voice control messages are captured and passed between the Cisco IOS software and the DSP to a ring buffer. Some of these messages are sent in fast-path routines that run at a high priority, so the capture of the message must be done as quickly as possible. After the fast-path routine messages have been sent, a normal priority process sends the messages that are waiting in the ring buffer to off-router data storage through the Cisco IOS File System (IFS). The size of the ring buffer is configurable through the use of the voice hpi capture command. If the ring buffer fills up faster than the normal priority process can move the messages off the router, some of the control messages are dropped. Counters keep track of the number of messages that are waiting in the ring buffer, the number of messages that are sent, and the number of messages that are dropped. When message capture is enabled and a message arrives for which there is no buffer space, a missed-message count is started. The next time there is room for a message on the ring, the dropped-message count is included with the message data. This alerts the software that processes the messages to the missed messages, and it provides data capture feedback that helps you configure the ring buffer size to your specifications. If messages are dropped during the capture, the ability to check the messages becomes limited. A complete capture is required for analysis.
Benefits
Improved DSP Reliability
This feature improves the reliability of DSPs by improving debug capabilities. Unexpected sequences of calls or parameters that cause DSP problems are difficult to debug because many calls can be made to the DSP before any ill effects are noticed. Systems that are running under load are more likely to encounter subtle timing-related issues that occur infrequently and are very hard to reproduce and debug. These parameters are marked as bad in HPI calls to the DSP, and they can cause undesirable DSP behavior. There fore, the logger intercepts those parameters that pass between Cisco IOS software and the DSP that can later be checked for errors.
Robust Firmware
This feature makes the T1-based DSP firmware more robust, adding debug capabilities and enabling better field support.
Restrictions
The Voice DSP Contol Message Logger feature is supported only on systems that use the HPI interface.
Configuration Tasks
See the following sections for configuration tasks for the Voice DSP Control Message Logger feature. Each task in the list is identified as either required or optional.
Configuring the Voice DSP Control Message Logger (required) Verifying the Voice DSP Control Message Logger (optional)
235
Troubleshooting Digital Voice Interfaces to the IP Network Checking the Digital Signal Processors
SUMMARY STEPS
1. 2. 3. 4. 5. 6. 7. 8. 9.
enable show voice hpi capture debug hpi capture configure terminal voice hpi capture buffer size voice hpi capture destination url exit show voice hpi capture configure terminal
10. no voice hpi capture buffer 0 11. exit 12. show voice hpi capture
DETAILED STEPS
Command
Step 1
enable
Example:
Router> enable
Step 2
Example:
Router# show voice hpi capture
Use this command to confirm logger status and examine the logger status output when the logger is running.
Step 3
Example:
Router# debug hpi capture
It is recommended that you enable the debug output for the logger when you are interacting with it using CLI.
236
Troubleshooting Digital Voice Interfaces to the IP Network Checking the Digital Signal Processors
Command
Step 4
configure {terminal | memory | network}
Example:
Router# configure terminal
Step 5
(Optional if you already have a nonzero buffer) Allocates the buffer for storing captured messages.
Example:
Router(config)# voice hpi capture buffer 122
Starts the logger by giving it a nonzero buffer size. The no form of the command turns the logger off by setting the buffer size to zero. Valid range is from 0 to 9000000. If the buffer overflows so that messages are dropped during the capture, the buffer size needs to be increased and the capture needs to be restarted. To change buffer size, first configure buffer size to zero, and then set the buffer size to your specifications.
Note Step 6
voice hpi capture destination url
Example:
Router(config)# voice hpi capture destination 172.14.33.255
(Optional if you already have a destination or do not want to change the currently assigned destination) Sets up an FTP destination file to which the logged data is sent.
Step 7
exit
Example:
Router(config)# exit
Step 8
Example:
Router# show voice hpi capture
Use this command to confirm logger status and examine the logger status output when the logger is running. At this point, you can execute voice calls and capture the control messages. You can capture these messages by turning on the logger, repeating problematic calls, and capturing the logs. Cisco engineers can determine if you should send the logs in for further review.
Note
Step 9
Example:
Router# configure terminal
Step 10
(Optional if you already have a nonzero buffer) Turns the logger off by setting the buffer size to zero and stops message capture.
Example:
Router(config)# no voice hpi capture buffer 0
237
Troubleshooting Digital Voice Interfaces to the IP Network Checking the Digital Signal Processors
Command
Step 11
exit
Purpose Exits global configuration mode and returns to privileged EXEC mode.
Example:
Router(config)# exit
Step 12
Example:
Router# show voice hpi capture
At this point, gather the captured messages in the destination files on your PC or UNIX station and send the information to Cisco TAC for analysis.
Note
If you want to stop the logger or change the buffer to another size, first set the buffer size to zero.
Troubleshooting Tips
Use the debug hpi capture command in privileged EXEC mode to turn on the debug output for the logger. Enable the debug output for the logger by using the CLI.
Configuration Examples
This section provides configuration examples for the Voice DSP Control Message Logger feature. This section contains the following examples:
Starting the Logger Feature Example Setting up an FTP Destination Example Verifying Configuration Example
In the following example, the show voice hpi capture command is used in privileged EXEC mode to examine the logger status output now that the logger is enabled:
Router# show voice hpi capture
238
Troubleshooting Digital Voice Interfaces to the IP Network Checking the Digital Signal Processors
HPI Capture is on and is logging to URL <www.company.com>0 messages sent to URL, 0 messages droppedMessage Buffer (total:inuse:free) 2134:0000:2134Buffer Memory:699952 bytes, Message size:328 bytes
In the following example, the show voice hpi capture command is used in privileged EXEC mode to examine the logger status output:
Router# show voice hpi capture HPI Capture is on and is logging to URL ftp://172.23.184.216/d:\test_data.dat1 messages sent to URL, 0 messages droppedMessage Buffer (total:inuse:free) 2134:0000:2134Buffer Memory:699952 bytes, Message size:328 bytes
239
Troubleshooting Digital Voice Interfaces to the IP Network Checking the Digital Signal Processors
Detect when control messages have been lost between Cisco IOS software and the DSP Detect when the DSP has crashed Collect an image of the DSP memory after a DSP crash and put it into a file for analysis later by an engineer
When these events have been detected, they are announced by console alarms. You can enable and disable this feature and specify where the crash dump is to be written using Cisco IOS command-line interface (CLI). The active part of the stack is written to the console, while the entire contents of the DSP memory is written to the crash dump file. You can request that a dump file be written into a smart slot 0 or slot 1 flash card, or sent to a server using TFTP or FTP, or it may be written directly to Flash.
SUMMARY STEPS
1. 2. 3. 4. 5. 6.
enable configure {terminal | memory | network} voice dsp crash-dump destination url voice dsp crash-dump file-limit limit-number exit show voice dsp crash-dump
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
Example:
Router# configure terminal
240
Troubleshooting Digital Voice Interfaces to the IP Network Checking the Digital Signal Processors
Command or Action
Step 3
voice dsp crash-dump destination url
Purpose (Required) Designates a valid file system where crash dump analysis is stored.
Example:
Router(config)# voice dsp crash-dump destination 175.101.122
The url argument must be set to a valid file system. The destination URL can be one of the following
The file on a TFTP server with the following
format: tftp://x.x.x.x/subfolder/filename. The x.x.x.x value is the IP address of the TFTP server
The file on the flashcard of the router, with the
The DSP crash dump feature is disabled when the crash-dump destination is not specified. The crash dump file-limit keyword must be set to a non-zero value. The default is that the crash dump capability is turned off, as the url argument is empty, and the file-number argument is zero. The limit-number argument can range from 0 to 99. The DSP crash dump feature is disabled when the crash-dump file limit is set to 0.
Example:
Router(config)# voice dsp crash-dump file-limit 99
Note Step 5
exit
Example:
Router(config)# exit
Step 6
Example:
Router# show voice dsp crash-dump
SUMMARY STEPS
1. 2. 3. 4. 5.
enable debug voice dsp crash-dump keepalive undebug all debug voice dsp crash detail exit
241
Troubleshooting Digital Voice Interfaces to the IP Network Checking the Digital Signal Processors
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
Example:
Router(config)# no logging console
Confirms that a crash dump file has been written to the specified destination.
Step 3
undebug all
Disables all the debug output on screen to stop the above output.
Example:
Router# un all
Step 4
Example:
Router# debug voice dsp crash detail
There is no debug output until there is one DSP crash. When the crash dump feature is turned on, the detailed debug messages are displayed.
Step 5
exit
Example:
Router(config)# exit
242
Troubleshooting Digital Voice Interfaces to the IP Network Checking the Digital Signal Processors
tftp://172.29.248.12/tester/crash-152-t File limit is 10 Last DSP dump file written was tftp://172.29.248.12/zongshan/crash/26-152-t2 Next DSP dump file written will be tftp://172.29.248.12/tester/crash-152-t1
SPE Startup Test, page 243 SPE Auto-Test, page 243 SPE Back-to-Back Test, page 244
SPE Auto-Test
To perform diagnostic testing on all the installed SPE ports during the systems initial startup or rebooting process, or during service, use the port modem autotest command in global configuration mode. The results of the SPE port auto-test are displayed in the show port modem test command's output. Ports that pass the diagnostic test are marked as Idle, Busy, Downloading, and Reset, and are put into service. Ports that fail the diagnostic test are marked as Bad, and are not put into service or tested again until they are no longer marked as Bad. If all the ports of an SPE are bad, the corresponding SPE is also marked bad. These ports cannot be used for call connections. Depending on how many ports are present and not marked Bad, this diagnostic test may take from 5 to 10 minutes to complete. You may perform additional testing on an inoperative port by executing the test port modem back-to-back command. The no port modem autotest command disables testing.
243
Troubleshooting Digital Voice Interfaces to the IP Network Checking the Digital Signal Processors
port modem autotest minimum portsDefine the minimum number of free ports available for autotest to begin. port modem autotest time hh:mm {interval}Enable autotesting time and interval.A sample diagnostic autotest setting the time at 12:45 and at 8 hour intervals looks like the following:
AS5400(config)# port modem autotest time 12:45 8 AS5400(config)#
port modem autotest error thresholdDefine the maximum number of errors detected for autotest to begin.
Enter the following command in privileged EXEC mode (the prompt is displayed as to perform internal back-to-back port tests between two ports:
AS5350#
or
test port modem back-to-back slot/port slot/port {num-packets}Perform internal back-to-back port tests between two ports, sending test packets of the specified size. You might need to enable this command on several different combinations of ports to determine which one is not functioning properly. A pair of operable ports successfully connect and complete transmitting data in both directions. An operable port and an inoperable port do not successfully connect with each other. A sample back-to-back test might look like the following:
AS5400# test port modem back-to-back 2/10 3/20 Repetitions (of 10-byte packets) [1]: *Mar 02 12:13:51.743:%PM_MODEM_MAINT-5-B2BCONNECT:Modems (2/10) and (3/20) connected in back-to-back test:CONNECT33600/V34/LAP *Mar 02 12:13:52.783:%PM_MODEM_MAINT-5-B2BMODEMS:Modems (3/20) and (2/10) completed back-to-back test:success/packets = 2/2
A port that has been confirmed to have problems can often be fixed using the clear spe command. The results of the test port modem back-to-back command are displayed in the show port modem test command's output:
AS5400# show port modem test Date 3/02 3/02 3/02 3/02 3/02 3/02 ... 3/02 3/02 3/02 3/02 3/02 Time 12:00:57 12:00:57 12:00:58 12:00:58 12:00:58 12:00:58 12:01:14 12:01:14 12:01:15 12:01:15 12:13:52 Modem 2/01 2/00 2/02 2/03 2/04 2/05 3/95 3/94 3/75 3/74 3/20 Test Back-To-Back Back-To-Back Back-To-Back Back-To-Back Back-To-Back Back-To-Back Back-To-Back Back-To-Back Back-To-Back Back-To-Back Back-To-Back Reason :STARTUP :STARTUP :STARTUP :STARTUP :STARTUP :STARTUP State Result Idle PASS Idle PASS Idle PASS Idle PASS Idle PASS Idle PASS Idle Idle Idle Idle Idle PASS PASS PASS PASS PASS
PM PM PM PM PM PM PM PM PM PM PM
:STARTUP TEST :STARTUP TEST :STARTUP TEST :STARTUP TEST :USER INITIATED
244
Troubleshooting Digital Voice Interfaces to the IP Network Checking the Digital Signal Processors
3/02 ... 3/02 3/02 3/02 3/02 3/02 3/02 3/02 3/02 3/02 3/02 3/02
12:13:52 PM 12:44:00 12:44:00 12:44:00 12:44:00 12:44:00 12:44:00 12:44:21 12:44:21 12:44:21 12:44:21 12:44:21 PM PM PM PM PM PM PM PM PM PM PM
2/10 3/102 3/103 3/104 3/105 3/106 3/107 2/73 2/72 2/33 2/32 3/37
Back-To-Back No Test (Time) No Test (Time) No Test (Time) No Test (Time) No Test (Time) No Test (Time) Back-To-Back Back-To-Back Back-To-Back Back-To-Back Back-To-Back
:USER INITIATED :MIN IDLE MODEMS :MIN IDLE MODEMS :MIN IDLE MODEMS :MIN IDLE MODEMS :MIN IDLE MODEMS :MIN IDLE MODEMS :TIME INTERVAL :TIME INTERVAL :TIME INTERVAL :TIME INTERVAL :TIME INTERVAL
Idle Idle Idle Idle Idle Idle Idle Idle Idle Idle Idle Idle
PASS NOTST NOTST NOTST NOTST NOTST NOTST PASS PASS PASS PASS PASS
Note
The Reason column indicates why the test was started. The TIME INTERVAL is one of the triggers under autotest; the other is the error threshold.
Note
The disconnect reason is managed in a first-come-first-serve fashion. This means that the first disconnect reason generated is the only disconnect reason recorded. If the modem and the NAS attempt to terminate the session simultaneously and the modem happens to save the disconnect reason before the LINK_TERMINATE message from the NAS is processed, then the NAS disconnect reason is ignored.
The show spe modem disconnect-reason command does not display the disconnect reason code as a hexadecimal value. However, it does indicate the disconnect reason as a name. The name and class of the disconnect reason can be found inTable 35 and Table 36 respectively. The show port modem log command displays the disconnect reason code as a hexadecimal value. Refer to Table 34 for the hexadecimal values.
245
Troubleshooting Digital Voice Interfaces to the IP Network Checking the Digital Signal Processors
Table 34
0x0.. 0x010 0x001 0x002 0x003 0x004 0x005 0x006 0x007 0x008 0x009 0x00C 0x00D 0x00E 0x00F 0x011 0x012 -
0x1.. 0x100 0x101 0x102 0x103 0x104 0x105 0x106 0x107 0x108 0x109 0x1F00 0x1F01 0x1F02 0x1F03 0x1F04 0x1F05 0x1F06 0x1F07 0x1F08 0x1FFF
0x2.. 0x201 0x202 0x203 0x204 0x205 0x206 0x210 0x211 0x212 0x220 0x221 0x222 0x224 0x225 -
0x3.. 0x3xx -
From the example above, note that the disconnect code is 0x220.
246
Troubleshooting Digital Voice Interfaces to the IP Network Checking the Digital Signal Processors
From the example above, let us say that we are interested in the disconnect category Disc within CLASS EC LCL. To determine what the disconnect reason Disc means, go to the entry corresponding to the class (CLASS EC LCL) and the disconnect reason name (Disc) which shows a hex code of 0x220 and is a normal disconnect. The codes for the classes are shown in the following tables:
CLASS OTHER Code Summary Table CLASS DSP Reason Codes CLASS EC LCL: EC Condition, Locally Detected Reason Code Table CLASS EC Cmd: EC Detected Bad Command Code Reason Code Table CLASS EC FRMR: EC Detected FRMR From Peer Reason Code Table CLASS EC LD: Error Correction (EC) Detected Link Disconnect (LD) From Peer Reason Code Table CLASS HOST: Requested by Host Reason Code Table
Description Cisco IOS software disconnected the call for some indeterminate reason (SOFTWARE_RESET). Error Correction (EC) layer termination
247
Troubleshooting Digital Voice Interfaces to the IP Network Checking the Digital Signal Processors
Table 35
Description The Microcom Network Protocol 5 (MNP5) decompression task received an illegal token in the data stream. There is probably a logic error in the implementation of compression, decompression or error correction by the modem or partner. Can also be caused by a transient line or RAM memory error. The V.42bis or V.44 decompression task received an illegal token in the data stream. There is probably a logic error in either the modem's or partner's implementation of compression, decompression or error correction. Can also be caused by a transient line or RAM memory error. Reserved ATH command detected by local modem. The ATH (Hangup) AT command is detected by the local modem (universal port card). For example, following a dialout from Cisco IOS, the DTE interface clears the call by transmitting an inband ATH AT command after the call is connected. AT mode any-key abort of dial command The AT dial command was aborted by the any-key abort command. For example, the host modem originates a call. During connection establishment, pressing any-key causes the AT dial command to be aborted. The call took too long to complete the connection. Notice that the S7 timer (wait for carrier after dial) expired for this disconnect. The causes include:
Bad V42B
0x004
2 6,7
0x005 0x006
Aborted
0x007
Connect Tout
0x008
Difficulty negotiating a Layer I standard Layer I and Layer II establishment taking too long.
For example, error correction negotiation takes an extended amount of time because of bit-errors introduced when the client modem receiver tries to connect at a rate it can't sustain. This disconnect could also happen if the answer modem heard no tone from the channel because, for example, the originator was not a modem.
248
Troubleshooting Digital Voice Interfaces to the IP Network Checking the Digital Signal Processors
Table 35
Description The DSP was reset (command/internal/spontaneous). The DSP within the host modem was reset by the Control Processor (CP) or Signal Processor (SP). The CP resets the DSP if mail messages from the CP to SP are not being acknowledged. The SP resets itself if it gets an internal inconsistency error.
V.42bis or V.44 codeword size exceeded negotiated maximum. V.42bis or V.44 received codeword equal to next empty dictionary entry. V.42bis or V.44 received codeword greater than the next empty dictionary entry. V.42bis or V.44 received reserved command code. V.42bis or V.44 ordinal size exceeded eight. V.42bis or V.44 negotiation error. V.42bis or V.44 compression error.
249
Troubleshooting Digital Voice Interfaces to the IP Network Checking the Digital Signal Processors
Table 36
Description DSP conditions reported by SPE The SPE carrier signal is lost. The universal port card detected a client modem carrier drop. The universal port SPE stopped hearing carrier for a period greater than the value specified in Register S10 (hang-up delay after carrier loss). This could mean that the talk path went away or that the client stopped transmitting. If a layer II protocol (V.42 and/or V.42bis) is in effect, it is abnormal to see such a disconnect. Common causes are users hanging up the call before a connection takes place can occur because of incidental dialing, aborted starts, and client applications timing out when calls take too long to connect due to multiple retrains during Layer 1 negotiation. The condition can also occur during normal data mode when the client abruptly drops the carrier. This can occur if the link is abruptly dropped (network error), or power is shut off to the client modem disconnecting the call. This can also occur with less sophisticated client modems that do not implement the Layer I and/or Layer II clear-down protocols on a DTR drop. For a large number of client modems, this is considered a normal disconnection.
3 3
0x101 0x102
No answer-back tone detected, caller is probably not a modem Call failure while modem training up due to incompatible modulation or bad line. This may be indicative of attempts to negotiate an unsupported modulation such as a legacy Rockwell proprietary modulation (K56Plus, V.FC, and so on). Other possible causes are DSP failures to train up due to severe line impairments, impulse noises, interrupting training, incompatible modulation parameters, and perhaps the inability to properly select a Layer I standard.
250
Troubleshooting Digital Voice Interfaces to the IP Network Checking the Digital Signal Processors
Table 36
Description Too many consecutive retrains or speed-shifts. The retrain limit is specified with Register S40. During the progress of a call, too many retrains occurred and rendered the call ineffectivethe data rate would be so poor as to be useless. Sometimes the client modem does not complete the clear-down protocol, for example, when the Telco tore down the call in the middle of the connection; NextPort (NP) attempts to recover the call by issuing retrains. Once the retrain limit is reached, NP drops the call and report this disconnect reason.
0x104
Problem detecting end of Answer-Back Tone(ABT). Negotiation failure or excessive noise during V.34 training. Host modems answer and send out V.8bis and modulated 2100Hz answer-back tones (ABTs) with phase reversals but encounter excessive noise during the trainup sequence. Look for errors on the path from the calling modem to the answering modem in either one or both directions. Similar behavior occurs when there is latency in the Public Switched Telephone Network (PSTN)that exceeds one second for dial up and causes modems to be unable to train up the echo cancellers. Other possible causes are:
TX power levels are incorrect and the tones are then not handled by the remote side. Excessive noise in Phase III and IV during V.34 training. Operator error. Network interference during V.34 training (someone picks up the extension).
3 3 3
SS7/COT (continuity test) operation completed successfully. SS7/COT (continuity test) operation failed: T8/T24 timeout waiting for tone on. SS7/COT (continuity test) operation failed: T8/T24 timeout waiting for tone off.
251
Troubleshooting Digital Voice Interfaces to the IP Network Checking the Digital Signal Processors
Table 36
Description Modem on hold (MOH) cleardown by the universal port card. V.92 specifies that the cleardown reason can be:
Cleardown due to incoming call Cleardown due to outgoing call Cleardown due to other reason
0x109
MOH timeout value reached. This value can be adjusted using Register S62 (V.92 maximum MOH time).
Table 37
Description Local error correction (EC) conditions. During negotiation a link request (LR) frame was not received. Peer may not support MNP. The received MNP LR frame had a bad/unexpected PARAM1. For more information on PARAM1 refer to the V.42 specification.
LR Incmpt
0x203
The received MNP LR frame is incompatible with the host modem's settings for EC.
252
Troubleshooting Digital Voice Interfaces to the IP Network Checking the Digital Signal Processors
Table 37
Description Too many consecutive retransmissions in EC. This disconnect reason can be caused by noise on the line that spurs retransmissions. For instance, the host modem transmits data to the client modem, but noise on the line causes the data to be received incorrectly (or not at all) by the client side. The client modem could also have disconnected without the host modem realizing this. So the host modem continuously retransmits, without knowing that the client modem is no longer present. Sometimes, when the call connects in LAPM or MNP, the universal port card is unable to transmit a frame to the client modem. The client modem fails to acknowledge the universal port card's initial transmission, then fails to respond to Register S19 (error correction retransmission limit) polls (the default is 12), so NP disconnects the call. One cause could be that the carrier in the transmit path degraded substantially while the client failed to downshift. Another cause could be a problem with the client's EC engine (as happens on a Winmodem system if Windows stops responding).
6,7
Inactivity
0x205
Inactivity timeout, MNP Link Disconnect (LD) sent. The host modem sends the client modem a LD frame, indicating that an inactivity timeout has occurred.
4,5
Protocol Err
0x206
EC protocol error. This is a general catch-all protocol error. It indicates that a LAPM or MNP EC protocol error has occurred.
Fallbck Term
0x210
No EC fallback protocol available. Error correction negotiation has not been successful. The call is terminated because there is no error correction fallback protocol available. S-register S25 (link protocol fallback) determines the available fallback protocol. The options are asynchronous framing, synchronous framing, or disconnect (hang up).
253
Troubleshooting Digital Voice Interfaces to the IP Network Checking the Digital Signal Processors
Table 37
Description Never received eXchange IDentification (XID) frame during negotiation. Peer may not support MNP. The received XID frame is incompatible with local settings. The client modem may not support LAPM within V.42.
XID Incmpt
0x212
3,4,5
Disc
0x220
Received Disconnect (DISC) frame. This is the normal LAP-M disconnect. The call terminated normally with a proper clear down from the client side. For example, a V.42 disconnect packet was sent from the client modem to the host modem. The client modem dropped DTR and cleanly negotiated a clear-down protocol.
3,4,5
DM
0x221
Received DM frame. Peer might be disconnecting. The client modem indicates that it is disconnecting. During call setup, this reason indicates that the client modem is giving up on negotiating error correction.
4,5
Bad NR
0x222
Bad receive sequence number or ACK number was received. An MNP LD or LAP-M FRMR is sent. The host modem received a LAPM or MNP error correction frame with a bad sequence number or acknowledgment number. An LD or Frame Reject (FRMR) frame is sent to the client modem, indicating that the host modem is disconnecting.
4,5
SABME Online
0x224
Received MNP XID frame in steady-state. This is interpreted as a LAPM error correction protocol error in steady state. It means that the client modem may have reset due to receiving a FRMR.
4,5
XID Online
0x225
Received MNP LR frame while in steady-state. This is interpreted as an MNP error correction protocol error in steady state. It means that the client modem has reset.
254
Troubleshooting Digital Voice Interfaces to the IP Network Checking the Digital Signal Processors
Table 38
Description EC detected bad command code. The received unknown command is in the last 2 digits. An MNP LD or LAP-M FRMR frame is sent in response.
Table 39
Description EC conditions indicated by client in LAP-M FRMR frame. The bit-mapped reason is in the last two digits. LAPM: peer reports bad command. The host modem received a FRMR frame from the client modem. The received FRMR frame indicates that the client modem received an error correction frame from the host modem that contained a bad command.
4,5
0x401
4,5
Frmr Data
0x403
LAPM: peer reports that data field is not permitted or is incorrect length (U frames). The host modem received a FRMR frame from the client modem. The received FRMR frame indicates that the client modem received an error correction frame from the host modem that contained a data field that is not permitted or contained a data field with an incorrect length (that is, U frame).
255
Troubleshooting Digital Voice Interfaces to the IP Network Checking the Digital Signal Processors
Table 39
CLASS EC FRMR: EC Detected FRMR From Peer Reason Code Table (continued)
Description LAPM: peer reports data field length is greater than N401 (the maximum information field length specified in V.42), but has good Frame Check Sequence (FCS). The modem received a FRMR frame from the client modem. The received FRMR frame indicates that the client modem received an error correction frame from the modem that contained a data field length that is greater than the maximum number of octets that can be carried in the information field (N401) of an I frame, an SREJ frame, an XID frame, a UI frame, or a TEST frame. The frame check sequence is good.
4,5
Frmr Bad NR
0x408
LAPM: peer reports bad receive sequence number or N(R). The host modem received a FRMR frame from the client modem. The received FRMR frame indicates that the client modem received an error correction frame from the host modem that contained a bad receive sequence number.
Table 40
CLASS EC LD: Error Correction (EC) Detected Link Disconnect (LD) From Peer Reason Code Table
Description EC conditions indicated by client in MNP link disconnect ( LD ) frame. Reason field is in the last 2 digits. MNP: peer never received LR frame. The host modem received a LD frame from the client modem. The received LD frame indicates that the client modem never received a link request from the host modem.
LD No LR
0x501
LD LR Param1
0x502
MNP: peer reports link request (LR) frame has bad parameter #1 The host modem received an LD frame from the client modem. The received LD frame indicates that the client modem received a link request frame from the host modem that contained an unexpected PARAM1. For more information on PARAM1 refer to the V.42 specification.
256
Troubleshooting Digital Voice Interfaces to the IP Network Checking the Digital Signal Processors
Table 40
CLASS EC LD: Error Correction (EC) Detected Link Disconnect (LD) From Peer Reason Code Table (continued)
Description MNP: peer reports LR frame is incompatible with its configuration The host modem received an LD frame from the client modem. The received LD frame indicates that the client modem received an LR frame from the host modem that is incompatible with the configuration of the client modem.
4,5
LD Retrns Lt
0x504
MNP: peer reports too many consecutive EC retransmissions The host modem received a LD frame from the client modem. The received LD frame indicates that the client modem received too many consecutive retransmissions.
4,5
LD Inactivty
0x505
MNP: peer reports inactivity timer expired The host modem received a Link Disconnect (LD) frame from the client modem. The received LD frame indicates that the client modem's host (DTE) has not passed data to the client modem within a period of time.
LD Protocol
0x506
MNP: peer reports error The host modem received an LD frame from the client modem. The received LD frame indicates that the client modem received a MNP protocol error.
LD User
0x507
Normal MNP disconnect The host modem received a LD frame from the client modem. The received LD frame indicates a normal MNP termination.
257
Troubleshooting Digital Voice Interfaces to the IP Network Checking the Digital Signal Processors
Table 41
Description Host initiated disconnect. Value is a sum of 0x1F00 and SessionStopCommand value. This is the other host terminate reason. The host reason is indicated in the low-order bytes xx. Non-specific host-initiated disconnect. Value is a sum of 0x1F00 and SessionStopCommand value. This is the catch all Cisco IOS-initiated disconnect reason. It is used for all non-standard disconnects. For example, this could be a result of modem management software deciding to terminate the call. One possible explanation is a higher-level authentication failure RADIUS, TACACS, or another application issuing a DTR drop to the host modem. This type of disconnect does not count towards CSR when the host modem is in data mode.
3,6,7
HST NonSpec
0x1F00
HST Busy
0x1F01
Dialed number was busy. Disconnection has occurred because the host is indicating that the dialed number is busy.
HST No answr
0x1F02
Dialed number did not answer. Disconnection has occurred because the host is indicating that the dialed number didn't answer.
3,6,7
HST DTR
0x1F03
Virtual DTR dropped. This status is reflected by the I/O port redirector that is currently using the modem. Disconnection has occurred because the host dropped the virtual DTR line. This generic disconnect cause is initiated by the Cisco IOS software. Example causes are idle timeout, PPP LCP TERMREQ received, authentication failure, Telnet hangup, and so on. To determine the reason for the hang up, examine the Radius disconnect reason from the modem call-record terse command or from Authentication, Authorization, and Accounting (AAA).
6,7 3
0x1F04 0x1F05
ATH (hangup) command was detected by local host. No access to telco network. Disconnection has occurred because the host could not access the network.
258
Troubleshooting Digital Voice Interfaces to the IP Network Checking the Digital Signal Processors
Table 41
Description Network indicated disconnect. This is a client-side triggered disconnect that is not a graceful call termination. It can occur during call set-up. A common cause is when users of Windows 95 or Windows 98 Dial Up Networking (DUN) cancel the call before the call reaches steady state. Another common reason is any client-instigated DTR drop before steady state. During data mode, this is also a client side triggered disconnection that is not a graceful call termination. One very common cause is authentication failures.
0x1F07
NAS terminated SS7/continuity test (COT) operation. Disconnection has occurred because the NAS has terminated the SS7/COT operation.
3 -
0x1F08 0x1FFF
The SS7/COT operation was terminated by the router because of a T8/T24 timeout. Unsolicited TERMINATING. The host sends this disconnect reason when it receives a unsolicited terminating message.
Table 42
Description (unused) (unused) Other situations Condition occurred during call setup In data mode. Rx (line to host) data flushing OK In data mode. Rx (line to host) data flushing not OK (at present, applications should not be concerned about the not OK)
6 - 0xC... 7 - 0xE...
In data mode. Tx (host to line) data flushing OK In data mode. Tx (host to line) data flushing not OK (at present, applications should not be concerned about the not OK)
259
For more information about troubleshooting SPEs, refer to Interpreting NextPort Disconnect Reason Codes, document ID 9502 .
For troubleshooting the DSP on NM-HDV for Cisco 2600 series, Cisco 3600 series, and VG200 series routers, refer to Troubleshooting the DSP on NM-HDV for Cisco 2600/3600/VG200 Series Routers, document ID 19066. For troubleshooting DSPs on the PA-VXA/PA-VXB/PA-VXC voice port adapters for Cisco 7200 series and Cisco 7500 series routers, refer to Troubleshooting DSPs on the PA-VXA/PA-VXB/PA-VXC Voice Port Adaptors for Cisco 7200/7500 Series Routers, document ID 26367 . For troubleshooting the VTSP-3-DSP_TIMEOUT error on AS5300 platforms, refer to Troubleshooting VTSP-3-DSP_TIMEOUT Error on Cisco AS5300 Access Server Platforms, document ID 18680 . If you have problems with unrecognized voice cards on Cisco 1750, Cisco 1751, and Cisco 1760 routers, it could be a problem with the packet voice data module (PVDM), which houses the DSPs. Refer to Troubleshooting Unrecognized Voice Interface Cards on Cisco 1750, 1751, and 1760 Routers, document ID 5711.
This condition indicates that the codec complexity and the voice card complexity configuration are mismatched. This problem can appear on Cisco modular access routers with HDV modules. This problem can affect Cisco IOS software Releases 12.0(7)T and later.
260
To see if you have this problem, you need to check the following conditions:
Check if the codec you are using is a high-complexity codec. For more information about codecs, refer to Understanding Codecs: Complexity, Hardware Support, MOS, and Negotiation, document ID 14069. If you are going to use high-complexity codecs, check the voice card configuration. It should also be configured as high complexity.
The default configuration for voice cards on routers with HDV modules is medium complexity. To allow usage of high-complexity codecs, use the voice-card 1 and codec complexity high configuration commands.
Note
To change the voice card codec complexity, remove all voice ports bound to the card and remove the configuration from the E1/T1 controller.
SUMMARY STEPS
1. 2. 3. 4. 5.
show controller {t1 | e1} Check if the line is down. Check for reported alarms. Check for error events. Check if the interface is T1 or E1 CAS, E1 R2, or PRI.
DETAILED STEPS
Step 1
Enter the show controller t1 or show controller e1 command with the controller number for the voice port you are troubleshooting.
Router# show controller {t1 | e1} controller-number
Check if the line is down. If so, see the Troubleshooting T1 and E1 Layer 1 Problems section on page 262. Check if there are any reported alarms. If so, refer to T1 Alarm Troubleshooting, document ID 14172 to troubleshoot alarm indications. Check if there are any error events. If you encounter framing, line coding, or clock timing errors, see the Checking T1/E1 Controller Configuration section on page 265. Refer to T1 Error Event Troubleshooting, document ID 14174 for a flowchart to troubleshoot error events.
Step 5
Check if the interface is T1 or E1 CAS, E1 R2, or PRI. See the following sections for more information:
Checking T1/E1 Controller Configuration, page 265 T1/E1 Channel-Associated Signaling, page 269 E1 R2 Interfaces, page 270
261
ISDN Interfaces, page 272 Troubleshooting Drop-and-Insert, page 277 Troubleshooting Transparent Common Channel Signaling, page 278
Administratively downIf the controller is administratively down, you can manually bring it up using the procedure in the Controller Is Administratively Down section. DownIf the controller is down, then the cause is one of the following:
Loss of frameSee the Controller Has Loss of Frame section to resolve this issue. Loss of signalSee the Controller Has Loss of Signal section to resolve this issue.
SUMMARY STEPS
1. 2. 3. 4. 5.
DETAILED STEPS
Step 1
262
Step 3
The number syntax is platform-specific. For more information about the syntax of this command, see the Cisco IOS Interface and Hardware Component Command Reference, Release 12.3.
Example: Router(config)# controller t1 0
Step 4
Step 5
What to Do Next
The controller should be running and normal configuration can continue.
Ensure that the framing format configured on the port matches the framing format of the line. Check the framing format of the controller from the running configuration or the show controller t1or show controller e1 command output. To change the framing format, use the framing command in controller configuration mode.
For T1, the options are sf and esf. For example:
Router# configure terminal Enter configuration commands, one per line. End with CNTL/Z. Router(config)# controller t1 0 Router(config-controlle)# framing esf
For E1, the options are crc4 and no-crc4. For example:
Router# configure terminal Enter configuration commands, one per line. End with CNTL/Z. Router(config)# controller e1 0 Router(config-controlle)# framing crc4
If the first framing format does not work, try the other framing format to see if the alarm clears. For more information on framing formats, see the Framing Formats on Digital T1/E1 Voice Ports section on page 266.
For T1 lines, change the line build-out setting using the cablelength long or cablelength short command. Line build-out (LBO) or cable length compensates for the loss in decibels based on the distance from the device to the first repeater in the circuit. A longer distance from the device to the repeater requires that the signal strength on the circuit be boosted to compensate for loss over that distance.
263
To configure transmit and receive levels for a cable length (line build-out) longer than 655 feet for a T1 trunk with a channel service unit (CSU) interface, use the cablelength long controller configuration command. To configure transmit attenuation for a cable length (line build-out) of 655 feet or shorter for a T1 trunk with a DSX-1 interface, use the cablelength short controller configuration command. Contact your service provider and refer to the Cisco IOS Interface Configuration Guide for details on build-out settings.
What to Do Next
If the preceding steps do not fix the problem, see the Controller Has Loss of Signal section.
Note
Use the show controller t1 EXEC command after each step to see if the controller exhibits any errors.
Ensure that the cable between the interface port and the T1 service providers equipment or T1 terminal equipment is connected correctly. Ensure that the cable is hooked up to the correct ports. Correct the cable connections if necessary. Check the cable integrity by looking for breaks or other physical abnormalities in the cable. Ensure that the pinouts are set correctly. Replace the cable if necessary. Check the cable connectors. A reversal of the transmit and receive pairs or an open receive pair can cause errors. Depending on the type of module used, the cable terminates on a male DB-15 or RJ-45/48 connector. On a DB-15 connector, the receive pair should be on pins 2 and 9, and the transmit pair on pins 8 and 15. A DB-15 connector is shown in Figure 33.
Figure 33
DB-15 Connector
DTE
15
DCE
The pins on a RJ-45/48 jack are numbered from 1 through 8. With the metal pins facing toward you, pin 1 is the left-most pin. Figure 34 shows the pin numbering on an RJ-45 jack. The receive pair should be on lines 1 and 2, and the transmit pair should be on lines 4 and 5.
264
H1346a
Figure 34
87654321
RJ-45 connector
If you have completed all of the steps above and you are still experiencing problems, try using a rollover cable. A rollover cable is shown in Figure 35.
Rollover Cable
Pin 1 and pin 8 should be the same color Pin 1 Pin 8
Figure 35
H2936
Framing Formats on Digital T1/E1 Voice Ports, page 266 Clock Sources on Digital T1/E1 Voice Ports, page 266 Line Coding on Digital T1/E1 Voice Ports, page 268
Contact your service provider for framing and line coding settings. Common settings are as follows:
For T1 lines, it is common to use binary 8-zero substitution (B8ZS) line coding with extended superframe (ESF), and alternate mark inversion (AMI) line coding with superframe (SF). For E1 lines, both HDB3 and AMI line coding are available, but CRC4 framing is most widely used.
H3824
265
For E1 lines, look for Framing is {crc4|no-crc4} For T1 lines, check the line coding, as described in the Line Coding on Digital T1/E1 Voice Ports section on page 268. For T1 lines, path code violation error event is a frame synchronization bit error in the D4 (SF) format, or a CRC error in the ESF format.
If path code violations keep increasing, contact your service provider to check the line, because path code violations can also be caused by physical line problems.
266
SUMMARY STEPS
1. 2. 3. 4. 5.
enable show controller configure terminal controller {t1 | e1} clock source
{line [primary
| secondary}
internal}
DETAILED STEPS
Step 1 Step 2
Enter enable to enter privileged EXEC mode. Enter a password, if necessary. Ensure that the clock source is derived from the network. In the show controller EXEC command output, look for Clock Source is Line Primary.
Note
If there are multiple lines into an access server, only one can be the primary source. The other lines derive the clock from the primary source. If there are multiple lines, ensure that the line designated as the primary clock source is configured correctly. You can also configure a second line to provide clocking in case the primary source goes down. To do this, use the clock source line secondary command from controller configuration mode. Enter configure terminal to enter global configuration mode. Enter controller t1 or controller e1 to enter controller configuration mode. Set both the primary and secondary clock sources from controller configuration mode. For example:
Router(config-controlle)#clock source line primary
and
Router(config-controlle)#clock source line secondary 1
Ensure that the lines that you specify as the primary and secondary are both active and stable.
Note
On Cisco universal gateways and access servers, the clock source is specified using the dial-tdm-clock command. Refer to the Managing Dial Shelves chapter in the Cisco IOS Interface Configuration Guide.
SUMMARY STEPS
1. 2. 3. 4.
267
5. 6.
DETAILED STEPS
Step 1 Step 2
Enter enable to enter privileged EXEC mode. Enter a password, if necessary. Ensure that the framing format configured on the port matches the framing format of the line. Look for the following in the show controller output
For T1 lines, look for Framing is {ESF|SF} For E1 lines, look for Framing is {crc4|no-crc4}
Enter configure terminal to enter global configuration mode. Enter controller t1 or controller e1 to enter controller configuration mode. To change the framing format, use the following commands in controller configuration mode:
Router(config-controlle)#framing esf
Router>(config-controller)#framing crc4
Step 6
For T1 lines, change the line build-out using the cablelength long or cablelength short command. Contact your service provider and consult the Voice Port Configuration document, Release 12.3 for details on settings.
For E1 lines, look for Line Code is HDB3 in the show controller e1 output. For T1 lines, look for Line Code is {B8ZS|AMI} in the show controller t1 output.
For T1 lines, change the line build-out using the cablelength long or cablelength short command.
268
If line code violations keep increasing, contact your service provider to check the line, because line code violations can also be caused by physical line problems.
For T1 lines, look for Line Code is {B8ZS|AMI} For T1 lines, path code violation error event is a frame synchronization bit error in the D4 (SF) format, or a CRC error in the ESF format.
For E1 lines, check the framing as described in the Framing Formats on Digital T1/E1 Voice Ports section on page 266.
For T1 lines, change the line build-out using the cablelength long or cablelength short command. If path code violations keep increasing, contact your service provider to check the line. Path code violations can also be caused by physical line problems.
Supervision signals represent events occurring on a trunk and can be specific to CAS. Signal types include seizure, wink, and answer. Address signals represent the digits dialed or called party number and, in some instances, other information. Address signals are based on multiflex signaling. Tone and announcement signals include ringing and busy tones and announcements specific to an event. Service circuits are used in most exchanges to send and receive address signals and tones as well as to play announcements.
This section describes CAS signaling, which is sometimes called robbed-bit signaling because user bandwidth is robbed by the network for signaling. A bit is taken from every sixth frame of voice data to communicate on- or off-hook status, wink, ground start, dialed digits, and other information about the call. In addition to setting up and tearing down calls, CAS provides for the receipt and capture of dialed number identification (DNIS) and automatic number identification (ANI) information, which are used to support authentication and other functions. The main disadvantage of CAS signaling is its use of user bandwidth to perform these signaling functions. For more information about troubleshooting CAS, refer to Configuring and Troubleshooting T1 CAS Signaling, document ID 24642. If your CAS-configured router gets stuck in the EM_PARK state, refer to Troubleshooting EM_PARK Issues for E&M Digital CAS Signaling, document ID 18959.
269
Troubleshooting Commands
Certain show commands are supported by the Output Interpreter tool, which allows you to view an analysis of show command output.
debug voip ccapi inoutTraces the execution path through the call control API, which serves as the interface between the call session application and the underlying network-specific software. You can use the output from this command to understand how calls are being handled by the router. debug vpm allEnables all of the debug vpm commands: debug vpm spi, debug vpm signal, and debug vpm dsp.
Note
Note: This debug command generates lots of output. show call active voiceDisplays the contents of the active call table, which shows all of the calls currently connected through the router. show call history voiceDisplays the call history table. The call history table contains a listing of all calls connected through this router in descending time order since VoIP was enabled. You can display subsets of the call history table by using specific keywords. show voice portDisplays configuration information about a specific voice port. debug vtsp allEnables the following debug vtsp commands: debug vtsp session, debug vtsp error, and debug vtsp dsp.
E1 R2 Interfaces
R2 signaling is a CAS system developed in the 1960s and still in use today in Europe, Latin America, Australia, and Asia. R2 signaling exists in several country versions or variants in an international version called Consultative Committee for International Telegraph and Telephone-R2 (CCITT-R2). The R2 signaling specifications are contained in International Telecommunication Union Telecommunication Standardization Sector (ITU-T) Recommendations Q.400 through Q.490. E1 R2 signaling is an international signaling standard that is common to channelized E1 networks. E1 R2 signaling support allows the Cisco gateways to communicate with a central office (CO) or PBX trunk and act as a tie-line replacement. Although R2 signaling has been defined in ITU-T Q.400-Q.490 recommendations, R2 is implemented in many different ways. (Various countries implement R2 differently.) Cisco's implementation of R2 signaling on routers can accommodate most of the variations.
Troubleshooting E1 R2 Failures
Follow the instructions below to troubleshoot your configuration.
SUMMARY STEPS
1. 2. 3. 4. 5.
show controller e1 show vfc slot number interface Configure DID on the POTS peer. cptone Match line and register signaling provisions to the switch configuration.
270
6. 7.
Turn on appropriate debugs. Check for communication between the router and PBX or switch.
DETAILED STEPS
Step 1
Verify that controller E1 0 is up with the show controller e1 0 command. If it is down, check framing, line coding, clock source, and alarms. Replace the cable and reseat the card. To run these tests, see the following sections:
Checking the Hardware, page 231 Checking the Digital Signal Processors, page 233 Verifying Codec Complexity, page 260 Troubleshooting T1 and E1 Layer 1 Problems, page 262 Checking T1/E1 Controller Configuration, page 265
If you are using an AS5300, check that the DSPs are correctly installed with the show vfc slot number interface command. Configure direct inward dial (DID) on the plain old telephone service (POTS) peer, so that the received digits are used to choose an outgoing peer. Specify cptone (cptone is specific for your country) on the voice-ports. A cptone country must be configured to match cas-custom country. The cptone parameter sets the call progress tones for a particular country, and more importantly sets the encoding to a-law or u-law, depending on the country. For u-law, use the us keyword. For a-law, use the gb keyword. To configure cptone, see the Voice Port Configuration document, Release 12.3.
Match line and register signaling provisions to the switch configuration. Turn on some of the debugs shown in the following section and study the outputs. Check for communication between the router and PBX or switch:
Is the line seized? Does the router receive/send digits? Find out which side is clearing the call.
debug casFor line signaling debug csm voiceFor interregister signaling debug vtsp all Exchanges output of all messages (digits) between the PBX and the router
For Cisco IOS Software Release IOS 11.3, use the following commands:
271
modem-mgmt csm debug-rbs For line signaling (specify service internal in global configuration mode.) debug csm voice For interregister signaling debug vtsp all Exchanges output of all messages (digits) between the PBX and the router
For the AS5400 and AS5350 platforms, use the following debugs:
debug sigsm r2For interregister signaling debug vtsp all Exchanges output of all messages (digits) between the PBX and the router
ISDN Interfaces
An ISDN network can consist of T1, T3, E1, and E3 and has two types of subscriber access: Basic Rate Interface (BRI) and Primary Rate Interface (PRI). Each access comprises B and D channels. ISDN BRI provides two B channels, each capable of transferring voice or data at 64 kbps, and one 16-kbps D channel that carries signaling traffic. The D channel is used by the telephone network to carry instructions about how to handle each of the B channels. ISDN BRI (also referred to as 2 B + D) provides a maximum transmission speed of 128 kbps. ISDN PRI provides 23 B channels plus a D channel (in North America and Japan) or 30 B channels plus a D channel (in the rest of the world). Similar to the ISDN BRI D channel, the ISDN PRI D channel carries signaling traffic. ISDN PRI is often referred to as 23 B + D (in North America and Japan) or 30 B + D (in the rest of the world). The D channel notifies the central office switch to send the incoming call to particular time slots on the Cisco access server or router. Each one of the B channels carries data or voice. The D channel carries signaling for the B channels. The D channel indicates whether the call is a circuit-switched digital call or an analog modem call. Analog modem calls are decoded and then sent to the onboard modems. Circuit-switched digital calls are relayed directly to the ISDN processor in the router. The ISDN interfaces for Cisco gateways enable Cisco IOS software to replicate the PSTN interface to a PBX that is compatible with European Telecommunications Standards Institute (ETSI) NET3 and QSIG switch types. The application shown in Figure 36 allows enterprise customers with a large installed base of legacy telephony equipment to bypass the PSTN.
272
Figure 36
PBX
PSTN
ISDN PRI Troubleshooting Tips, page 273 Verifying the ISDN Switch Type and PRI Group Timeslot Configuration, page 274 QSIG Protocol Support, page 276
Ping the associated IP address to confirm connectivity. If you cannot successfully ping your destination, refer to the chapter Configuring IP in the Cisco IOS IP Configuration Guide. Determine if the voice feature card (VFC) has been correctly installed. For more information, refer to Installing Voice-over-IP Feature Cards in Cisco AS5300 Universal Access Servers, which came with your voice network module (VNM). To learn if the VFC is operational, use the show vfc slot_number command. To view layer status information, use the show isdn status command. If you receive a status message stating that Layer 1 is deactivated, make sure the cable connection is not loose or disconnected. With T1 lines, determine if your a-law setting is correct. With E1 lines, determine if your u-law setting is correct. To configure both a-law and u-law values, use the cptone command. For more information about the cptone command, refer to the Cisco IOS Voice, Video, and Fax Command Reference. If dialing cannot occur, use the debug isdn q931 command to check the ISDN configuration.
For more information about troubleshooting T1 PRI, refer to T1 PRI Troubleshooting, document ID 9344.
273
35572
Verifying the ISDN Switch Type and PRI Group Timeslot Configuration
Use the show running-config command to ensure that isdn switch-type and pri-group timeslots are configured correctly. To specify the central office switch type on the ISDN interface, use the isdn switch-type global configuration command. Options for this command include primary-net5. Contact your service provider for the correct values to use.
Note
If you have defined ISDN PRI groups and channel groups on the same controller, ensure that you do not overlap time slots or use the ISDN D-channel timeslot in a channel group. When configuring a Primary Rate Interface (PRI), use the isdn switch-type global configuration command to configure the switch type. To configure the isdn switch-type and pri-group:
Router# configure terminal Router(config)# isdn switch-type primary-net5 Router(config)# controller e1 0 Router(config-controlle)# pri-group timeslots 1-31
Note
In some countries, service providers offer fractional PRI lines. This means that fewer than 30 B-channels may be used for ISDN connections. For fractional PRI lines, the time slot range must include the operational B channels, plus the D channel (this is fixed on time slot 16). For example:
pri-group timeslots 110, 16 for the first ten B-channels. timeslots 121 for the first 20 B-channels.
SUMMARY STEPS
1. 2. 3. 4. 5. 6. 7.
show interfaces serial number :15 Ensure that the interface is up. Ensure that encapsulation is PPP. Ensure that the interface is not in loopback mode. Power cycle the router. Turn on appropriate debugs. Contact TAC.
DETAILED STEPS
Step 1 Step 2
Run the show interfaces serial number:15 command, where the number is the interface number. Ensure that the interface is up. If the interface is not up, use the no shutdown command to bring the interface up. For example:
Router# config terminal
274
Enter configuration commands, one per line. End with CNTL/Z. Router(config)# interface serial 0:15 Router(config-if)# no shutdown
Step 3
Ensure that encapsulation is PPP. If not, use the encapsulation ppp command to set encapsulation. For example:
Router(config-if)# encapsulation ppp
Step 4
Ensure that the interface is not in loopback mode. Loopback should be set only for testing purposes. Use the no loopback command to remove loopbacks. For example:
Router(config-if)# no loopback
Step 5 Step 6
Power cycle the router. If the problem persists, contact your service provider or the Cisco Technical Assistance Center (TAC). Refer to Obtaining Technical Assistance section on page xxvi for information about contacting TAC.
Ringback
In some situations, a gateway might intermittently fail to provide ringback tone (RBT) to an incoming ISDN caller. This problem has been seen on local, long-distance, and international calls. The gateway generates ringback towards the network side (PSTN or PBX) if the setup contains Progress IE = 3, meaning the originating address (calling party) is NON-ISDN. The gateway does not generate a ringback towards the network side (PSTN or PBX) if the setup contains no Progress IE (Progress IE =0), meaning the originating address (calling party) is ISDN. The following figure is an example of when this might occur. International calls are arriving on ISDN. PSTN (ISDN) --------- Cisco IOS gateway ------------ Cisco CallManager ------------ IP phone
275
01:37:01: 01:37:01: 01:37:01: 01:37:01: 01:37:01: 01:37:01: 01:37:01: 01:37:01: 01:37:01: 01:37:01:
ISDN Se0:15: RX <- SETUP pd = 8 callref = 0x002E Sending Complete Bearer Capability i = 0x8090A3 Channel ID i = 0xA98391 Calling Party Number i = 0x2183, '478681058', Plan:ISDN, Type:International Called Party Number i = 0xA1, '27182145', Plan:ISDN, Type:International High Layer Compat i = 0x9181 ISDN Se0:15: TX -> CALL_PROC pd = 8 callref = 0x802E Channel ID i = 0xA98391 ISDN Se0:15: TX -> ALERTING pd = 8 callref = 0x802E
In the case above, the gateway is expecting the ISDN to generate the ringback (due to no PI of 3). The ISDN, however, is not generating a ringback tone. This results in the caller hearing only silence until the called party answers the call. This might be due to an ISDN interworking issue caused because the call originated internationally (normally ring is generated at the terminating device for international calls).
Forcing Ringback
You can force the gateway to generate a ringback with the progress_ind setup enable 3 command. Configure the forced ringback on the VoIP dial peer that points to Cisco CallManager.
! dial-peer voice 500 voip destination-pattern 5... progress_ind setup enable 3 !--forces ring back tone for this peer session target ipv4:10.200.73.15 codec g711ulaw !
For more information, refer to PSTN Callers not Hearing any Ring Back When they Call IP Phones, document ID 8331.
276
Figure 37
QSIG Signaling
QSIG T1/E1 channel Frame Relay DLCI 200 Phone PBX Cisco router
Cisco router
PBX
Phone
The Cisco voice packet network appears to the traditional QSIG PBXs as a distributed transit PBX that can establish calls to any PBX, non-QSIG PBX, or other telephony endpoint served by a Cisco gateway, including non-QSIG endpoints.
Command
Router# show isdn status
Purpose Displays the status of all ISDN interfaces, including active layers, timer information, and switch type settings. Displays information about T1 and E1 controllers. Displays summary information about voice port configuration. Displays how voice dial peers are configured. Displays the Call Distributor Application Programming Interface (CDAPI) information. Displays information about calls made to and from the router. Displays information about any memory leaks. Displays events occurring on the user side (on the router) of the ISDN interface. The ISDN events that can be displayed are Q.931 events (call setup and teardown of ISDN network connections). Displays information about the telephony service provider (TSP). Displays information about CDAPI application events, registration, messages, and so on.
Troubleshooting Drop-and-Insert
When a router is configured for drop-and-insert, also called TDM cross connect, traffic is passed as a transparent bit stream between the configured ports. The router acts as a conduit between the ports, ensuring that the bit stream and clocking are preserved. Because of this, there are no commands to
277
31476
monitor traffic or debug signaling bits. You can confirm the physical status of the T1 interfaces (carrier loss) and line quality (line errors, clock slips, framing errors) using the show controller t1 slot/port command. You can connect the PBX directly to the voice mail system to isolate signaling problems. If the system is still not working when the router has been bypassed, you might need to use T1 analyzers (for example, the Acterna Tberd T1 analyzer) to verify that the PBX or voice mail system is sending the correct information on the T1 trunk. You can also use the analyzer to verify that the drop-and-insert feature is working correctly from one port to the other. For more information on troubleshooting drop-and-insert, refer to Integrating PBXs into VoIP Networks Using the TDM Cross Connect Feature, document ID 27789.
Router Does Not Recognize Voice Port, page 278 Voice Ports Are in the Shutdown State, page 279 Voice Ports Configured as Connection Trunk, page 279 No Dial Tone on Digital Voice Port, page 279 Debug Command Output Shows VTSP Timeout, page 279
A common problem in the voice network involves no dial tone being heard from a voice port in the off-hook condition. This might be related to configuration issues, a hardware problem, a DSP problem, or a bug in Cisco IOS software. A voice port configured with connection trunk does not provide dial tone. A faulty network module or Foreign Exchange Station (FXS) card might cause silence or no dial tone in a voice port. For more information, refer to Troubleshooting No Dial Tone Issues, document ID 22372. The following sections describe these various problems and related solutions.
278
Cisco routers 1751 and later. If the Cisco 1750 router does not have the correct PVDM, the voice ports might show up in show version and show diag command output, however, there is no dial tone. Also, no DSPs are seen in the show voice dsp command output. The Cisco 1750 router should carry the proper PVDM-4 and PVDM-8 DSP cards. For Cisco modular access routers , another problem could be a bad network module. If there is an alarm light on the network module, remove the module, put it back in the slot and power cycle. If the alarm light is still lit, replace the network module. Also, try plugging an analog phone into the FXS port with a good cable. If there is no dial tone, replace the FXS card.
Note
Remove the connection trunk/PLAR configuration to ensure that you are getting the dial-tone.
Removing the direct-inward-dial command from dial-peer pots causes the digital voice port to provide dial tone.
279
Troubleshooting Digital Voice Interfaces to the IP Network Verifying Digital Voice-Port Configurations
SUMMARY STEPS
1. 2. 3. 4. 5. 6. 7. 8. 9.
Check for dial tone. Check for DTMF detection. show voice port summary show voice port show running-config show controller {t1 | e1} controller-number show voice dsp show voice call summary show call active voice
DETAILED STEPS
Step 1 Step 2 Step 3 Step 4 Step 5
Pick up the handset of an attached telephony device and check for a dial tone. If you have dial tone, check for DTMF detection. If the dial tone stops when you dial a digit, then the voice port is most likely configured properly for DTMF detection. To identify port numbers of voice interfaces installed in your router, use the show voice port summary command. To verify voice-port parameter settings, enter the show voice port command with the appropriate syntax for your voice interfaces. For digital T1/E1 connections, to verify the codec complexity configuration, enter the show running-config command to display the current voice-card setting. If medium complexity is specified, the codec complexity setting is not displayed. If high complexity is specified, the setting codec complexity high is displayed. The following example shows an excerpt from the command output when high complexity has been specified:
Router# show running-config . . . hostname router-alpha voice-card 0 codec complexity high . . .
Step 6
For digital T1/E1 connections, to verify that the controller is up and that no alarms have been reported, and to display information about clock sources and other controller settings, use the show controller command. For output examples, see the show controller Samples section on page 283.
Router# show controller {t1 | e1} controller-number
280
Troubleshooting Digital Voice Interfaces to the IP Network Verifying Digital Voice-Port Configurations
Step 7
To display voice-channel configuration information for all DSP channels, enter the show voice dsp command. For output examples, see the show voice dsp Samples section on page 283.
Router# show voice dsp
Step 8
To verify the call status for all voice ports, enter the show voice call summary command. For output examples, see the show voice call summary Samples section on page 284.
Router# show voice call summary
Step 9
To display the contents of the active call table, which shows all of the calls currently connected through the router or concentrator, enter the show call active voice command. For output examples, see the show call active voice Samples section on page 285.
Router# show call active voice
Step 10
To display the contents of the call history table, enter the show call history voice command. To limit the display to the last calls connected through this router, enter the keyword last and define the number of calls to be displayed with the argument number. To limit the display to a shortened version of the call history table, use the keyword brief. For output examples, see the show call history voice Sample section on page 286.
Router# show call history voice {last | number | brief}
Cisco 3600 series digital E&M voice port Cisco AS5300 universal access server T1 CAS voice port Cisco 7200 series router digital E&M voice port
281
Troubleshooting Digital Voice Interfaces to the IP Network Verifying Digital Voice-Port Configurations
OUT STATUS
TIP
RING
282
Troubleshooting Digital Voice Interfaces to the IP Network Verifying Digital Voice-Port Configurations
Cisco 3600 series router T1 controller Cisco AS5800 universal access server T1 controller
283
Troubleshooting Digital Voice Interfaces to the IP Network Verifying Digital Voice-Port Configurations
03 C549 011 00 01 02 03 C549 012 00 01 02 03 C549 013 00 01 02 03 C549 014 00 01 02 03 C549 015 00 01 02 03
g729r8 g729r8 g729r8 g729r8 g729r8 g729r8 g729r8 g729r8 g729r8 g729r8 g729r8 g729r8 g729r8 g729r8 g729r8 g729r8 g729r8 g729r8 g729r8 g729r8 g729r8
busy 3.3 busy .8 busy busy busy 3.3 busy .8 busy busy busy 3.3 busy .8 busy busy busy 3.3 busy .8 busy busy busy 3.3 busy .8 busy busy busy
idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1/015 1/015 1/015 1/015 1/015 1/015 1/015 1/015 1/015 1/015 1/015 1/015 1/015 1/015 1/015 1/015 1/015 1/015 1/015 1/015 1/015
20 2 8 14 21 3 9 15 22 4 10 17 23 5 11 18 24 6 12 19 25
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
65530/83610 66820/84799 59028/66946 65591/81084 66336/82739 59036/65245 65826/81950 65606/80733 65577/83532 67655/82974 65647/82088 66366/80894 66339/82628 68439/84677 65664/81737 65607/81820 65589/83889 66889/83331 65690/81700 66422/82099 65566/83852
Router# show voice dsp TYPE DSP CH CODEC VERS STATE STATE RST AI PORT TS ABORT TX/RX-PAK-CNT ==== === == ======== ==== ===== ======= === == ======= == ===== =============== C549 007 00 {medium} 3.3 IDLE idle 0 0 1/0:1 4 0 0/0 .13 C549 008 00 {medium} 3.3 IDLE idle 0 0 1/0:1 5 0 0/0 .13 C549 009 00 {medium} 3.3 IDLE idle 0 0 1/0:1 6 0 0/0 .13 C549 010 00 {medium} 3.3 IDLE idle 0 0 1/0:1 7 0 0/0 .13 C549 011 00 {medium} 3.3 IDLE idle 0 0 1/0:1 8 0 0/0 .13 C549 012 00 {medium} 3.3 IDLE idle 0 0 1/0:1 9 0 0/0 .13 C542 001 01 g711ulaw 3.3 IDLE idle 0 0 2/0/0 0 512/519 .13 C542 002 01 g711ulaw 3.3 IDLE idle 0 0 2/0/1 0 505/502 .13 C542 003 01 g711alaw 3.3 IDLE idle 0 0 2/1/0 0 28756/28966 .13 C542 004 01 g711ulaw 3.3 IDLE idle 0 0 2/1/1 0 834/838 .13
284
Troubleshooting Digital Voice Interfaces to the IP Network Verifying Digital Voice-Port Configurations
y y y y y y y y y
285
Troubleshooting Digital Voice Interfaces to the IP Network Verifying Digital Voice-Port Configurations
286
Troubleshooting Digital Voice Interfaces to the IP Network Verifying Digital Voice-Port Configurations
LoWaterPlayoutDelay=30 ms ReceiveDelay=49 ms LostPackets=1 ms EarlyPackets=1 ms LatePackets=132 ms VAD = disabled CoderTypeRate=g729r8 CodecBytes=20 cvVoIPCallHistoryIcpif=0
show dialplan numberThis command is used to show which dial peer is reached when a particular telephone number is dialed. debug vtsp sessionThis command displays information on how each network indication and application request is processed, signaling indications, and DSP control messages. debug vtsp dspThis command displays the digits as they are received by the voice port. debug vtsp allThis command enables the following debug voice telephony service provider (VTSP) commands: debug vtsp session, debug vtsp error, and debug vtsp dsp.
287
Troubleshooting Digital Voice Interfaces to the IP Network Verifying Digital Voice-Port Configurations
codec = g729r8, payload size = 20 bytes, Expect factor = 10, Icpif = 30, signaling-type = cas, VAD = enabled, Poor QOV Trap = disabled, Connect Time = 25630, Charged Units = 0, Successful Calls = 25, Failed Calls = 0, Accepted Calls = 25, Refused Calls = 0, Last Disconnect Cause is "10 ", Last Disconnect Text is "normal call clearing.", Last Setup Time = 84427934. Matched: 5000 Digits: 4 Target: ipv4:192.168.10.2
!-!-!-!--
ACTION: Caller picked up handset and dialed digits 5000. The DSP detects DTMF digits. Digit 5 was detected with ON time of 130msec.
*Mar 10 17:57:08.505: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_BEGIN: digit=5, *Mar 10 17:57:08.585: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_OFF: digit=5, duration=130 *Mar 10 17:57:09.385: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_BEGIN: digit=0 *Mar 10 17:57:09.485: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_OFF: digit=0, duration=150 *Mar 10 17:57:10.697: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_BEGIN: digit=0 *Mar 10 17:57:10.825: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_OFF: digit=0, duration=180 *Mar 10 17:57:12.865: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_BEGIN: digit=0 *Mar 10 17:57:12.917: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_OFF: digit=0, duration=100 Router# debug vtsp session Voice telephony call control session debugging is on
!--- <some output have been omitted> !-- ACTION: Caller picked up handset. !-- The DSP is allocated, jitter buffers, VAD !-- thresholds, and signal levels are set.
288
Troubleshooting Digital Voice Interfaces to the IP Network Voice Port Testing Commands
packet_len=18 channel_id=1 packet_id=76 mode=1 initial=60 min=4 max=200 fax_nom=300 *Mar 10 18:14:22.865: dsp_echo_canceller_control: [1/0/0 (69)] packet_len=10 channel_id=1 packet_id=66 flags=0x0 *Mar 10 18:14:22.865: dsp_set_gains: [1/0/0 (69)] packet_len=12 channel_id=1 packet_id=91 in_gain=0 out_gain=65506 *Mar 10 18:14:22.865: dsp_vad_enable: [1/0/0 (69)] packet_len=10 channel_id=1 packet_id=78 thresh=-38act_setup_ind_ack *Mar 10 18:14:22.869: dsp_voice_mode: [1/0/0 (69)] packet_len=24 channel_id=1 packet_id=73 coding_type=1 voice_field_size=80 VAD_flag=0 echo_length=64 comfort_noise=1 inband_detect=1 digit_relay=2 AGC_flag=0act_setup_ind_ack(): dsp_dtmf_mod e()act_setup_ind_ack: passthru_mode = 0, no_auto_switchover = 0dsp_dtmf_mode (VTSP_TONE_DTMF_MODE)
!-- The DSP is put into "voice mode" and dial-tone is !-- generated.
*Mar 10 18:14:22.873: dsp_cp_tone_on: [1/0/0 (69)] packet_len=30 channel_id=1 packet_id=72 tone_id=4 n_freq=2 freq_of_first=350 freq_of_second=440 amp_of_first= 4000 amp_of_second=4000 direction=1 on_time_first=65535 off_time_first=0 on_time _second=65535 off_time_second=0
If the digits are not being sent or received properly, then it might be necessary to use either a digit-grabber (test tool) or T1 tester to verify that the digits are being sent at the correct frequency and timing interval. If they are being sent incorrectly for the switch (CO or PBX), some values on the router or switch (CO or PBX) might need to be adjusted so that they match and can interoperate. These are usually digit duration and inter-digit duration values. Another item to examine if the digits appear to be sent correctly are any number translation tables in the switch (CO or PBX) that may add or remove digits. Refer to your switch documentation to check the translation tables on your switch.
Detector-Related Function Tests, page 290 Loopback Function Tests, page 290 Tone Injection Tests, page 290 Relay-Related Function Tests, page 291 Fax/Voice Mode Tests, page 291
289
Troubleshooting Digital Voice Interfaces to the IP Network Voice Port Testing Commands
Step 2
Purpose Identifies the voice port you want to test. Enter a keyword for the detector under test and specify whether to force it to the on or off state. Identifies the voice port on which you want to end the test. Enter a keyword for the detector under test and the keyword disable to end the forced state.
Purpose Identifies the voice port you want to test and enters a keyword for the loopback direction. A call must be established on the voice port under test. Identifies the voice port on which you want to end the test and enters the keyword disable to end the loopback.
Note
Step 2
Purpose Identifies the voice port you want to test and enter keywords for the direction to send the test tone and for the frequency of the test tone. A call must be established on the voice port under test. Identifies the voice port on which you want to end the test and enter the keyword disable to end the test tone.
Note Note
Step 2
290
Troubleshooting Digital Voice Interfaces to the IP Network Voice Port Testing Commands
Purpose Identifies the voice port you want to test. Enter a keyword for the relay under test and specify whether to force it to the on or off state. Identifies the voice port on which you want to end the test.
Step 2
Router# test voice port slot/port:ds0-group relay {e-lead | loop | ring-ground | battery-reversal | power-denial | ring | tip-ground} disable
Enter a keyword for the relay under test, and the keyword disable to end the forced state.
Purpose Identifies the voice port you want to test. Enter the keyword fax to force the voice port into fax mode. Identifies the voice port on which you want to end the test.
Step 2
Enter the keyword disable to return the voice port to voice mode.
291
Troubleshooting Digital Voice Interfaces to the IP Network Voice Port Testing Commands
292
Understanding VoIP QoS Issues, page 293 Common QoS Problems, page 295 Voice Call Tuning, page 309
Understand how much bandwidth a VoIP call consumes with each codec, including Layer 2 and IP/UDP/RTP headers. For more information about VoIP bandwidth consumption, refer to Voice Over IP - Per Call Bandwidth Consumption, document ID 7934. Understand the characteristics of the IP network over which the calls travel. For example, the bandwidth of a Frame Relay network at CIR is much different than that above-CIR (or burst), where packets could be dropped or queued in the Frame-Relay cloud. Ensure that delay and jitter are controlled and eliminated as much as possible. One-way transmit delay should not exceed 150 ms (per G.114 recommendation). Use a queuing technique that allows VoIP traffic to be identified and prioritized. When transmitting VoIP over low-speed links, consider using Layer 2 packet fragmentation techniques, such as Multilink Point-to-Point Protocol (MLPPP) with Link Fragmentation and Interleaving (LFI) on point-to-point links, or FRF.12 on Frame Relay links. Fragmentation of larger data packets allows less jitter and delay in transmitting VoIP traffic because the VoIP packets can be interleaved onto the link. Try the call with a different codec and with the voice activity detector (VAD) enabled and disabled to possibly narrow down the issue to the digital signal processor (DSP), as opposed to the IP network.
293
With VoIP, when you are troubleshooting QoS issues, look especially for dropped packets and network bottlenecks that can cause delay and jitter. Specifically, look for the following:
Interface drops Buffer drops Policy-map drops Interface congestion Link congestion
Each interface in the path of the VoIP call should be examined and drops and congestion should be eliminated. Also, round-trip delay should be reduced as much as possible. Pings between the VoIP end points give an indication of the round trip delay of a link. The round trip delay should not exceed 300 ms whenever possible. If the delay does have to exceed this value, efforts should also be taken to ensure this delay is constant, so that you do not introduce jitter or variable delay. When low latency queueing (LLQ) is set up, you can check policy-map drops by looking for packets that match the priority class by entering the show policy interface serial command. This shows how much traffic is matching the priority class and how much bandwidth is used. Ensure that the Cisco IOS queuing mechanism is placing the VoIP packets within the proper queues. Cisco IOS commands, such as show queue and show priority can help you to verify queueing.
Measuring QoS
Cisco offers several options for monitoring QoS in networks using VoIP solutions. Cisco offers tools that provide information about the voice quality you are experiencing by measuring delay, jitter, and packet loss. Cisco solutions do not measure voice quality using Perceptual Speech Quality Measurement (PSQM) or some of the new proposed algorithms for voice quality measurement. Tools from outside vendors are available for this purpose. When implementing service policies using the QoS command line interface (CLI), start with the Cisco Class-Based QoS Configuration and Statistics Management Information Base (MIB). This MIB provides read access to QoS configuration and statistics information for Cisco platforms that support the Modular QoS CLI. Statistics available through this MIB include summary counts and rates by traffic class before and after any configured QoS policies are enforced. In addition, detailed feature-specific statistics are available for select PolicyMap features. See Cisco MIBs for the object IDs. In addition, Cisco offers the following software tools for monitoring QoS:
Network monitoring using Cisco Service Assurance Agent (Cisco SSA)The response time and availability monitoring capabilities of this tool include support for VoIP, QoS, and the World Wide Web. The Cisco SSA is an application-aware synthetic operation agent that monitors network performance by measuring key metrics such as response time, availability, jitter (interpacket delay variance), connect time, throughput, and packet loss. These metrics can be used for troubleshooting, for analysis before problems occur, and for designing future network topologies. This tool is designed more for trending, rather than real-time monitoring. Refer to Using Cisco Service Assurance Agent and Internetwork Performance Monitor to Manage Quality of Service in Voice over IP Networks for more information. Cisco Gateway Management Agent (CGMA)The only real-time management Cisco IOS software agent and protocol for VoIP. The CGMA is a new gateway Cisco IOS agent that provides real-time call-state information for all VoIP calls. CGMA supports a push protocol, in which certain call-state changes result in a message being sent out of CGMA by the gateways. The interface from the CGMA
294
is the Real Time Management Protocol (RTMP). RTMP is a lightweight XML-based protocol that uses TCP as the transport protocol. This solution allows Service Providers to monitor their calls (session initiation protocol (SIP) and H.323 networks), viewing call detail records (CDRs) and trunk utilization in real time. The validated gateways for the CGMA include the Cisco 2600 series, the Cisco 3600 series, and the Cisco 5000 series. The Cisco IOS that has been validated on all gateways is the 12.2(2)XB mainline release.
CiscoWorks QoS Policy Manager (QPM)QPM provides a scalable platform for defining, applying, and monitoring QoS policy on a system-wide basis for Cisco devices, including routers and switches. QPM enables you to baseline profile network traffic, create QoS policies at an abstract level, control the deployment of policies, and then monitor QoS to verify intended results. As a centralized tool QPM is used to monitor and provision QoS for groups of interfaces and devices. QPM provides a web-based intuitive user interface to define QoS policies, and translates those policies into the device's command line interface (CLI) commands. QPM runs on the CiscoWorks Common Services server, which can be installed as a standalone server, or as an add-on to CD One 5th Edition. CiscoWorks Common Services provides the infrastructure required by QPM to run from the CiscoWorks desktop environment, and also provides management of user roles and privileges, allowing you to control who gets access to specific tasks in QPM.
Delay in Voice Networks Packet Loss Jitter Adjustment Echo Adjustment Voice Level Adjustment
Table 44 lists some QoS problems you might encounter after configuring voice ports and suggests some remedies. To configure QoS features on voice ports, see the Fine-Tuning Analog and Digital Voice Ports section in the Voice Port Configuration document.
Table 44 Troubleshooting Voice Quality on Voice Ports
Suggested Action Use the show voice port command to confirm that ring frequency is configured correctly. It must match the connected telephony equipment and might be country-dependent. Use the show voice port command to confirm that the cptone keyword setting (also called region tone) is set to us for the United States.
Note
Having a wrong cptone setting can cause faulty voice reproduction during analog-to-digital or digital-to-analog conversions.
295
Table 44
Symptom Music on Hold (MOH) is not heard. Background noise is not heard. Long pauses occur in conversation, as if you were speaking on a walkie-talkie.
Suggested Action Reduce the music-threshold level to make VAD less sensitive with the music-threshold voice-port configuration command. Valid entries are from -70 to -30. Enable the comfort-noise command. Overall delay is probably excessive; the standard for adequate voice quality is 150 ms one-way transit delay. Measure delay by using ping tests at various times of the day with different network traffic loads. If delay must be reduced, examine propagation delay of signals between the sending and receiving endpoints, voice encoding delay, and the voice packetization time for various VoIP codecs. Variable delay, or jitter, is being introduced by congestion in the packet network. There are two possible remedies:
Reduce the amount of congestion in your packet network. Pings between VoIP endpoints provide information about the round-trip delay of a link, which should never exceed 300 ms. Network queuing and dropped packets should also be examined. Increase the size of the jitter buffer with the playout-delay command. (See the Jitter Adjustment section on page 298 for more information.)
Reduce input gain. (See the Voice Level Adjustment section on page 306 for more information.) Change the VAD level. Sometimes VAD cuts the sound too early and the speakers voice is clipped. You can also change the time period that VAD waits for silence.
Clipped speech.
Reduce the input level at the listeners router. (See the Voice Level Adjustment section on page 306 for more information)
Volume too low or missed DTMF. Increase speakers output level or listeners input level. (See the Voice Level Adjustment section on page 306 for more information.) Echo interval is greater than 25 ms Configure the echo-cancel enable command and increase the (sounds like a separate voice). value for the echo-cancel coverage keyword. (See the Echo Adjustment section on page 301 for more information.) Too much echo. Reduce the output level at the speakers voice port. (See the Voice Level Adjustment section on page 306 for more information.)
296
When listening to speech, the human ear normally accepts up to about 150 ms of delay without noticing it. The ITU G.114 standard recommends no more than 150 ms of one-way delay for a normal voice conversation. Once the delay exceeds 150 ms, a conversation is more like a walkie-talkie conversation in which one person must wait for the other to stop speaking before beginning to talk. Several different types of delay combine to make up the total end-to-end delay associated with voice calls:
Coder delayAmount of time used by the digital signal processor (DSP) to compress samples. Handling delayAmount of time it takes to process data (adding headers, taking samples, forming packets, and so forth). Serialization delayFixed delay related to the clock rate on the interface. The amount of delay needed for different frame sizes is shown in Table 45.
Serialization Delay
Table 45
Frame Size Line Speed 56 kpbs 64 kbps 128 kbps 256 kbps 512 kbps 768 kbps 1536 kbps
1024 Bytes 1500 Bytes 144 ms 128 ms 64 ms 32 ms 16 ms 10.24 ms 5.12 ms 214 ms 187 ms 93 ms 46 ms 23 ms 15 ms 7.5 ms
Propagation delayAmount of time it takes the data to physically travel over the media. Queuing delayAmount of time lost due to congestion. Every network device between two endpoints involved in a call is a potential source of queuing or buffering delays. Use a sniffer trace at each hop to see where the delay or jitter is being introduced. Output drops can occur because of incorrectly configured priority queuing. For information about troubleshooting output drops with priority queueing, refer to Troubleshooting Output Drops with Priority Queueing , document ID 10105.
Variable delay or jitterAmount of time that causes the conversation to break and become unintelligible. Jitter is described in the Jitter Adjustment section on page 298.
You can measure delay by using ping tests at various times of the day with different network traffic loads. Sniffer traces can also be used to find where delay is being introduced in the network. For more information about measuring QoS, see the Measuring QoS section on page 294. The recommended ranges for delay are shown in Table 46. These ranges are for connections in which echo is controlled. Echo cancellers are required when one-way delay exceeds 25milliseconds. For more information about echo cancellation, see the Echo Adjustment section on page 301. These ranges are for total end-to-end delay, not just the delay on the WAN side of a connection. For more information about developing a delay budget, refer to the Building the Delay Budget section of the Understanding Delay in Packet Voice Networks white paper.
297
Table 46
ITU Recommdation 0 to 150 milliseconds 150 to 400 milliseconds Above 400 milliseconds
200 to 250 milliseconds Acceptable if administrators are aware of the transmission time and its impact on quality. Above 250 milliseconds Unacceptable in most situations.
Packet Loss
Packet loss is a very common cause of voice quality problems on an IP network. In a properly designed network, packet loss should be near zero. Voice codecs can tolerate some degree of packet loss without a dramatic effect on voice quality. Voice packets should be tagged for zero packet loss. On converged voice/data networks, the quantity of the voice calls and link bandwidth should be limited. The bandwidth should be guarenteed for the voice calls by giving priority to voice traffic. Packet loss can have an impact voice quality in several ways:
Packet loss can grow as call volume increases Fax and modem transmissons are greatly affected by packet loss
A common cause of packet loss is duplex mismatching. This occurs when one side of the connection is set up for full duplex and the other is set up for half duplex. Look at the link between the two endpoints experiencing the packet loss and check the speed and duplex settings for each side. Although duplex mismatch is common, there are many other opportunities for packet loss in the network. To find the cause of these packet drops, check each interface between two endpoints by using the show interface command. If dropped packets are showing up on any interface, the link might be oversubscribed or there might be other traffic on this link that you are not expecting. In this case, use a network analyzer (or sniffer) to check what traffic might be congesting the link. For more information about network analyzers, see the Network Analyzers section on page 178.
Jitter Adjustment
Delay can cause unnatural starting and stopping of conversations, but variable-length delays (also known as jitter) can cause a conversation to break and become unintelligible. Jitter is not usually a problem with PSTN calls because the bandwidth of calls is fixed and each call has a dedicated circuit for the duration of the call. However, in VoIP networks, data traffic might be bursty, and jitter from the packet network can become an issue. Packets from the same conversation can arrive at different interpacket intervals, especially during times of network congestion, which can disrupt the steady, even delivery needed for voice calls. Cisco voice gateways have built-in jitter buffering to compensate for a certain amount of jitter; the playout-delay command can be used to adjust the jitter buffer. Normally, the defaults in effect are sufficient for most networks. However, a small playout delay from the jitter buffer can cause lost packets and choppy audio, and a large playout delay can cause unacceptably high overall end-to-end delay.
Note
For Cisco IOS Release 12.1(5)T and later, in most cases playout delay should be configured in dial-peer configuration mode on the VoIP dial peer that is on the receiving end of the voice traffic that is to be buffered. This dial peer senses network conditions and relays them to the DSPs, which adjust the jitter
298
buffer as necessary. When multiple applications are configured on the gateway, playout delay should be configured in dial-peer configuration mode. When there are numerous dial peers to configure, it might be simpler to configure playout delay on a voice port. If there are conflicting playout delay configurations on a voice port and also on a dial peer, the dial-peer configuration takes precedence. Jitter is more likely to occur on low-speed links because even a single packet in the queue on a low-speed link can dramatically affect the amount of time a voice packet needs to wait in the queue before being transmitted. Jitter can be an even bigger problem if you do not have priority queuing, such as low latency queuing (LLQ), enabled or configured correctly on your WAN connections. For more information about LLQ, see the Cisco IOS Quality of Service Solutions Configuration Guide. For information about troubleshooting VoIP over Point-to-Point Protocol (PPP) links with QoS for low latency queueing, refer to VoIP over PPP Links with Quality of Service (LLQ / IP RTP Priority, LFI, cRTP), document ID 7111. Low-speed links also require special considerations when data traffic is also present to ensure that a large data packet does not cause excessive jitter. Generally on WAN links that are 768 kbps or slower, you should use some form of fragmentation and interleaving to ensure that large data packets do not starve smaller voice packets. Even with LLQ enabled, the voice packet must wait if it arrives when a data packet is in the process of being transmitted. To configure the playout delay jitter buffer, perform the following steps.
SUMMARY STEPS
1. 2. 3. 4. 5. 6.
enable configure terminal voice-port slot/port:ds0-group-number playout-delay mode {adaptive | fixed} playout-delay {nominal value | maximum value | minimum {default | low | high}} exit Purpose Enables higher privilege levels, such as privileged EXEC mode. Enter your password if prompted. Enters global configuration mode.
Command
Step 1
enable
Example:
Router> enable
Step 2
Example:
Router# configure terminal
Step 3
voice-port slot/port:ds0-group-number
Enters voice-port configuration mode on the selected slot, port, and DS-0 group.
Example:
Router(config)# voice-port 1/0:0
Each defined DS-0 group number is represented on a separate voice port. This allows you to define individual DS-0s on the digital T1/E1 card.
299
Command
Step 4
playout-delay mode {adaptive | fixed}
Purpose Determines the mode in which the jitter buffer operates for calls on this voice port.
Example:
Router(config-voiceport)# playout-delay mode adaptive
adaptiveAdjusts the jitter buffer size and amount of playout delay during a call based on current network conditions. This is the default. Cisco recommends using the adaptive mode playout buffer as a place to begin checking QoS issues. Changing the playout buffers is an advanced technique that should be done last after all other QOS methods have been explored. fixedDefines the jitter buffer size as fixed so that the playout delay is not adjusted during a call. A constant playout delay is added.
Note
Step 5
Tunes the playout buffer to accommodate packet jitter caused by switches in the WAN. The keywords and arguments are as follows:
Example:
Router(config-voiceport)# playout-delay nominal 0
nominalDefines the amount of playout delay applied at the beginning of a call by the jitter buffer in the gateway. In fixed mode, this is also the maximum size of the jitter buffer throughout the call. valueSpecifies the range which depends on the type of DSP and configured codec complexity. For medium codec complexity, the range is from 0 to 150 ms. For high codec complexity and DSPs that do not support codec complexity, the range is from 0 to 250 ms. maximum (adaptive mode only)Specifies the jitter buffer's upper limit (80 ms), or the highest value to which the adaptive delay is set. minimum (adaptive mode only)Specifies the jitter buffer's lower limit (10 ms), or the lowest value to which the adaptive delay is set. defaultSpecifies 40 ms.
Step 6
exit
Example:
Router(config-voiceport)# exit
300
For more information about jitter, refer to Understanding Jitter in Packet Voice Networks (Cisco IOS Platforms), document ID 18902.
Echo Adjustment
Echo is a common problem, but can sometimes be difficult to troubleshoot. Echo exists in almost any telephone network but problems are more apparent in packet networks. Echo is perceived as a problem when all of the following conditions are true:
Signal leakage between analog transmit (Tx) and receive (Rx) paths. This leakage is in one of these forms of echo:
Acoustic echoAcoustic echo is caused by poor acoustic isolation between the earpiece and
a two-wire to four-wire interface. This mismatch causes the Tx signal to appear on the Rx signal.
Perceptible delay between when the originating signal is transmitted and when the echo returns. In most telephones, sidetone helps mask some of the echo. Echos must be delayed by at least 20 milliseconds to be perceived. Sufficient echo amplitude. If the amplitude of the echo is low, it can go unnoticed.
The packet segment of the voice connection introduces a significant delay, typically 30 ms in each direction. The introduction of delay causes echoes generated on analog tail circuits that were normally indistinguishable from the side tone to be perceived by the user. The delay introduced by packet voice is unavoidable, therefore, the voice gateways must prevent the echo. For a description about echo cancellation features and how echo cancellation is implemented on different Cisco platforms and Cisco IOS software releases, refer to the Information about Echo Cancellation section in Voice Port Configuration. To configure echo cancellation, refer to the How to Configure the Extended G.168 Echo Canceller section in Voice Port Configuration. When troubleshooting echo problems, see the following:
Determine Where Echo Is Occurring, page 301 Troubleshooting Echo in Cisco IOS Gateways, page 302 Measuring Echo in Cisco IOS Gateways, page 303
301
Input levelSignal input gain is performed before the echo canceller has detected the echo. Output levelSignal output attenuation is performed after the echo canceller has seen the original output signal. Echo canceller coverageThe amount of time the echo canceller retains a signal that has been output. This parameter must be set to a value greater than the time the echo needs to return to the gateway.
SUMMARY STEPS
1. 2. 3. 4. Step 1
Verify echo cancellation. Configure echo canceller coverage. Measure the echo and adjust the echo signal level. Verify the impedance configured in the voice port.
Verify that echo cancellation is enabled on the voice port. Echo cancellation is enabled by default on most platforms in most Cisco IOS releases.
Gateway(config-voiceport)# echo-cancel coverage enable Echo Cancel Coverage Echo Cancel Enable
Note Step 2
You must enter the shut, then the no shut commands on the voice port for the changes to take effect Configure the echo canceller coverage to a value greater than the time the echo needs to return to the gateway. It must be long enough to cover the worst case for your environment, but not longer.
Gateway(config-voiceport)# echo-cancel coverage 16 24 32 8 16 milliseconds echo canceller coverage 24 milliseconds echo canceller coverage 32 milliseconds echo canceller coverage 8 milliseconds echo canceller coverage
Note
You must enter the shut and no shut commands on the voice port for the changes to take effect. The default coverage is set to 8 ms, but it can be increased up to 64 ms, depending on the Cisco IOS software release. If the PSTN delay (tail length) is more than 32 ms, echo cancellers in Cisco IOS gateways cannot cancel the echo.
302
Step 3
Measure the echo and adjust the echo signal level as required. Insufficient echo return loss (ERL) to handle the echo might cause the following problems:
Echo canceller is cancelling but not enough to make echo inaudible. If the ERL value is too low, the total ERL seen by the IP network Acombined (ACOM) might be insufficient to suppress the echo. ERL should be approximately 20 dB (at least 15 dB). ACOM is the total ERL seen across the incoming and outgoing terminals of the echo canceller. The incoming terminal is equal to the signal sent into the ECAN toward the PSTN (voice), and the outgoing terminal is equal to the signal coming out of the ECAN toward the IP network (echo). ACOM is the sum of the ERL, plus ERLE, or the total ERL seen by the network. ACOM (Total loss) is equal to the ERL (tail loss) plus ERLE (ECAN loss).
Echo canceller is not canceling. If the ERL value is too low, the echo signal returning to the gateway might be too loud (within 6 dB of the talker signal), causing the echo canceller to consider it as voice (double-talk) instead of echo. As a consequence, the echo canceller does not cancel it. ERL should be approximately 6 dB or higher for the echo canceller to engage. In 12.2(13)T, you can configure this ERL level.
To prevent these problems, you need to measure the ERL and signal levels, and adjust the signal levels on the Cisco IOS gateway based on the results. See theMeasuring QoS section on page 294 for more information about measuring QoS. See the Measuring Echo in Cisco IOS Gateways section on page 303 for more information about measuring ERL. You can adjust these levels by configuring positive values for output attenuation and negative values for input gain. Input gain is performed before the echo canceller has seen the echo signal, and output attenuation is performed after the echo canceller has seen the original output signal.
voice-port 1/1:15 input gain -3 output attenuation 3
Note
You must enter the shut and no shut command on the voice port for the changes to take effect.
Note
In Cisco IOS Release 12.2(1) and later, output attenuation can be set to a negative value, which amplifies the output signal. An impedance mismatch can cause echo if both sides are not configured identically. Verify the impedance configured in the voice port and modify it if needed. A default of 600 ohms is consistent with most lines on the PSTN and PBXs.
Gateway(config-voiceport)# impedance 600c 600 600r 600 900c 900 complex1 complex2 Ohms complex Ohms real Ohms complex complex 1 complex 2
Step 4
303
SUMMARY STEPS
1. 2. 3. 4. 5. 6. 7. 8. Step 1
Enable the tone generator. Place a call to the source of echo. Press the i button twice. Set the input and output levels to 0 dB gain/attenuation. View the input and output levels for your call. Configure 1 dB of attenuation in each direction. Configure 3 dB of attenuation in each direction. Change the coverage to 32 ms.
To enable the tone generator, type **3 on the Cisco IP Phone 7960 or 7940 keypad while the phone is not on a call. This enables the Tone softkey for as long as this phone is registered to Cisco CallManager.
Note
From Load #P0030301ESP5, you need to unlock the phone first, then press **3. If you press **# **3 consecutively you reset the phone (because of the **#** sequence). Therefore, you need to press **#, make a call, then press **3. Place a call to the source of echo. After the call is established, press the i button twice. This brings up the statistics for the call.
Step 2 Step 3
Note
If pressing **3 worked, you should have a Tone softkey available. Press the Tone softkey and the phone begins to generate a 1004 Hz tone at -15 dB. The only way to stop the tone is to end the call. Make sure you start with a cleared configuration by setting the input and output levels to 0 dB gain/attenuation. After the tone is being generated, keep the call up, then perform the remaining steps to measure the decibel levels. Use the show call active voice command to view the input and output levels for your call. The following is a call to a loopback number that simply echoes back whatever is sent with no attenuation.
Gateway# show call active voice ! snip OutSignalLevel=-15 InSignalLevel=-15 ERLLevel=25 ! snip
Step 4
Step 5
The test tone in this example is output as -15 and is looped back with 0 dB loss. Therefore, the tone is coming back at -15 dB. The ERL value in the example has no significance because the echo canceller does not consider the input signal to be echo.
Note
The OutSignalLevel shows the value of the level after the output attenuation has been applied to the signal. The InSignalLevel shows the value of the level after the input gain has been applied.
304
Step 6
If you configure 1 dB of attenuation in each direction, the resulting levels decrease, as shown in the following configuration examples:
voice-port 1/1:15 input gain -1 output attenuation 1 Gateway#show call active voice ! snip OutSignalLevel=-16 InSignalLevel=-17 ERLLevel=11 ! snip
Note
Notice that the OutSignalLevel is -16 because the -15 dB signal is attenuated by 1 dB. The InSignalLevel is -17 dB, the result of the -1 input gain. The ERL is 11 dB in the example, but it is actually 2 dB; the echo canceller still does not acknowledge the input signal as echo. If you configure 3 dB of attenuation in each direction the resulting levels are shown in the following examples:
voice-port 1/1:15 input gain -3 output attenuation 3 Gateway#show call active voice ! snip OutSignalLevel=-18 InSignalLevel=-21 ERLLevel=6 ! snip
Step 7
Note
Notice that the OutSignalLevel is -18 because the -15 dB signal is attenuated by 3 dB. The InSignalLevel is -21 dB as a result of the input gain of -3. The expected ERL of 6 dB is now correct. If you keep the same 3 dB in each direction, but change the coverage to 32 ms, the resulting levels are shown in the following examples.
voice-port 1/1:15 input gain -3 output attenuation 3 echo-cancel coverage 32 Gateway#show call active voice ! snip OutSignalLevel=-18 InSignalLevel=-21 ERLLevel=6 ! snip
Step 8
305
The levels look the same as the previous result, however the echo canceller takes a few more seconds longer to converge. Do not set the echo cancel coverage higher than necessary. For more information about troubleshooting echo problems, refer to the following documents:
Troubleshooting Echo Problems between IP Phones and Cisco IOS Gateways, document ID 19640 Echo Analysis for Voice over IP white paper, at the following website: http://www.cisco.com/en/US/tech/tk652/tk701/technologies_white_paper09186a00800d6b68.shtm l
Input and Output Levels, page 306 Voice Activity Detection Level, page 308
SUMMARY STEPS
1. 2. 3. 4. 5. 6. 7.
enable configure terminal voice-port slot/port:ds0-group-number input gain value output attenuation value impedance {600c | 600r | 900c | complex1 | complex2} exit
306
Command
Step 1
enable
Example:
Router> enable
Step 2
Example:
Router# configure terminal
Step 3
voice-port slot/port:ds0-group-number
Enters voice-port configuration mode on the selected slot, port, and DS-0 group.
Example:
Router(config)# voice-port 1/0:0
Each defined DS-0 group number is represented on a separate voice port. This allows you to define individual DS-0s on the digital T1/E1 card.
Step 4
Example:
Router(config-voiceport)# input gain 0
Specifies, in decibels, the amount of gain to be inserted at the receiver side of the interface, increasing or decreasing the signal.
After an input gain setting is changed, the voice call must be disconnected and reestablished before the change takes effect. The value argument is any integer from 6 to 14. The default is 0.
Step 5
output attenuation value
Example:
Router(config-voiceport)# output attenuation -6
Specifies the amount of attenuation in decibels at the transmit side of the interface, decreasing the signal.
A system-wide loss plan can be implemented through the use of the input gain and output attenuation commands. The default value for this command is based on the assumption that a standard transmission loss plan is in effect, meaning that normally there must be 6 dB attenuation between phones. The value argument is any integer from 6 to 14. The default is 0.
307
Command
Step 6
impedance {600c | 600r | 900c | complex1 | complex2}
Purpose Specifies the terminating impedance of a voice port interface, which needs to match the specifications from the specific telephony system to which it is connected. The following values are supported:
Example:
Router(config-voiceport)# impedance 600r
600cSpecifies 600 ohms complex 600rSpecifies 600 ohms real (default) 900cSpecifies 900 ohms complex complex1Specifies Complex 1 complex2Specifies Complex 2
Step 7
exit
Example:
Router(config-voiceport)# exit
308
between the two. Sometimes there can be unwanted noise generated by VAD. To troubleshoot hissing or static issues that might be because of the VAD, refer to Troubleshooting Hissing and Static, document ID 22388.
Restrictions for Voice Call Tuning, page 309 Information About Voice Call Tuning, page 309 How to Verify Voice Call Tuning Functionality, page 310 Voice Call Tuning Configuration Examples, page 311
Packet-Flow Detection, page 309 DSP State, page 310 Echo-Cancellation State, page 310 Jitter-Buffer Parameters, page 310
Packet-Flow Detection
The Voice Call Tuning feature allows you to determine whether packets are flowing in each direction while a call is in progress. The analog signal from the telephone is digitized into pulse code modulation (PCM) signals by the voice coder-decoder (codec). The PCM samples are then passed to the compression algorithm which compresses the voice into a packet format for transmission across the WAN. On the far side of the cloud similar functions are performed but in reverse order.
309
Depending on how the network is configured, the router or gateway can perform both the codec and compression functions or only one of them. For example, if an analog voice system is used, then the router or gateway performs the codec function and the compression function.
DSP State
The Voice Call Tuning feature allows you to check whether the DSP servicing an active call is functioning properly. Explicit configuration of a periodic ping message with both the period and timeout parameters configurable catches DSPs that are in a hung state as soon as possible. A failure can then signal this event to the console log or as a triggering event to a logging functionality. The DSP can also send periodic informational messages like jitter measures, echo canceller measures, and alarms to alert you if there is an impending problem.
Echo-Cancellation State
Echo is the sound of your own voice reverberating in the telephone receiver while you are talking. When timed properly, echo is not a problem in the conversation; however, if the echo interval exceeds approximately 25 ms, it can be distracting to the speaker. Echo is controlled by ECs. By design, ECs are limited by the total amount of time they wait for the reflected speech to be received, which is known as an echo tail. The echo tail is normally 32 ms. In the traditional telephony network, echo is generally caused by an impedance mismatch when the four-wire network is converted to the two-wire local loop. Echo cancellation is required because of packet network latency. Echo cancellation is implemented in DSP firmware on the gateways and is independent of other functions implemented in the DSP (the DSP protocol and compression algorithm). In voice packet-based networks, ECs are built into the low-bit-rate codecs and are operated on each DSP. This feature gives you the ability to change echo canceller parameters while a call is in progress. Audible effects are immediately noticed, aiding in problem determination and resolution. You can change the echo canceller parameters (tail length and echo return loss (ERL) threshold) in the field.
Jitter-Buffer Parameters
Jitter is a variation in the delay of received packets. At the sending side, packets are sent in a continuous stream with the packets being spaced evenly apart. Due to network congestion, improper queuing, or configuration errors, this steady stream can become erratic, or the delay between and two packets can vary instead of remaining constant. This feature gives you the ability to change jitter-buffer parameters while a call is in progress. Audible effects are immediately noticed, aiding in problem determination and resolution. You can change the jitter buffer parameters (delay, size, fixed state, or adaptive state) in the field.
Use the show vfc version command to show the version of the software that resides on your voice feature card (VFC). This command shows information in the output of the show vfc version vcware and show vfc version dspware commands that indicates whether the Cisco VCWare or DSPWare is compatible with the Cisco IOS image.
310
Use the show voice call command to show the real-time call status for voice ports, including packet flow indication, DSP state, echo canceller state, and jitter state. If you enable terminal monitor before doing this, you can also see the DSP and playout buffer statistics, overflow specifications, late packets, lost packets, and concealment 9, in which the DSP invents a packet using interpolation. Use the show voice dsp command to show the status of all DSP voice channels when abnormal behavior in the DSP voice channels occurs. Use the test call id command to manipulate echo canceller and jitter-buffer parameters in real time. You can use this command with the extended G.168 echo canceller, which allows you to configure the voice card in a router individually, or with the Cisco G.165 echo canceller, which allows you to configure the router as a whole. Messages are visible in the command output when either an extended-only or a standard-only echo cancellation is requested, as in the following example:
Extended echo canceller not active for CallID callID Basic echo canceller not active for CallID callID
Use the show vfc version command to show the version of the software that resides on your VFC. This command was modified to include new information in the output of the show vfc version vcware and show vfc version dspware commands. Messages are output if the Cisco VCWare or DSPWare is not compatible with the Cisco IOS image. The new information is advisory only, so there is no action taken if the software is compatible or incompatible. Cisco IOS Release 12.2(13)T adds new information to the output of the show vfc version vcware and show vfc version dspware commands. Messages are output if the Cisco VCWare or DSPWare is not compatible with the Cisco IOS image. The new information is advisory only, so there is no action taken if the software is compatible or incompatible. If the versions detected fall within the defined criteria and are compatible, nothing is output at bootup time. A confirmation line is output when the show vfc version vcware and show vfc version dspware commands are used, as in the following example:
Router# show vfc 1 version vcware Voice Feature Card in Slot 1: VCWare Version : 7.35 ROM Monitor Version: 1.3 DSPWare Version : 3.4.46L Technology : C549 VCWare/DSPWare version compatibility OK
Use the show voice call command to show the real-time call status for voice ports, including packet flow indication, DSP state, echo canceller state, and jitter state. This command was modified with the status, call-id, and sample sample-period command options. This command is available on all voice platforms. You can use the call-id argument to identify active calls. If the call-id argument is omitted, the enquiry shows all active voice calls. In the following example, a list of all active calls with relevant identifying information is shown, as in the following example:
Router# show voice call status CallID CID ccVdb Port DSP/Ch Called # Codec Dial-peers
311
0x3 11D4 0x62972834 0x4 11D4 0x62973AD0 0xA 11DB 0x62FE9D68 2 active calls found
Use the test call id command to manipulate the echo canceller and jitter buffer parameters in real time. You can use this command with the extended echo canceller, which allows you to configure the voice card in a router individually, or with the standard echo canceller, in which the configuration occurs implicitly on the router. The following example shows query output from a Cisco AS5350 universal gateway using the NextPort version of the standard echo canceller:
Router# test call id 99 ? echo-canceller playout-delay test echo canceller on an active voice call test playout-delay parameters
312
A R T
Cisco IOS software complies with the mandatory requirements and several of the optional features of the H.323 Version 2 specification. The chapter contains the following sections:
H.323-Related Standards, page 316 Troubleshooting Gateways, page 319 Troubleshooting Gatekeepers, page 347 Gateway-to-Gateway and Gatekeeper-to-Gateway Security, page 365
H.323 is a peer-to-peer protocol. H.323 uses messages similar to Q.931 messages to communicate between endpoints. Q.931 cause codes can be found in Cause Codes and Debug Values. Figure 38 shows a typical H.323 network. For detailed information on H.323, refer to Cisco IOS Call Control Technologies (H.323, SIP, and xGCP).
315
Figure 38
Corporate LAN
Router
Gateway
H.320 terminal (over ISDN) H.324 terminal (over POTS) Speech only (telephone)
60537
H.323 terminal
H.323-Related Standards
Because several standards are involved with setting up a call through an H.323 device, it is important to understand the role each protocol plays to be able to effectively troubleshoot such a call. The following sections describe these standards:
316
Figure 39
H.323 gatekeeper
H.225 signaling
H.245 TCP connection Capabilities exchange RTCP address CONNECT (H.245 address) RTCP addresses RTCP & RTP addresses H.245 signaling
H.225 Signaling
H.225 is used for call control functions. H.225 is very similar to Q.931. H.225 signaling is carried over a TCP connection. H.323 devices listen to port 1720 for incoming connections and show messages that might be used in an H.225 call setup, such as those shown in Table 47. Each message can contain one or more information element (IE). Each IE carries a specific piece of information within an H.225 message. For a complete list of IEs and the coding for each, refer to the ITU-T Q.931 specification.
Table 47 H.225 Call Setup Messages
Description This message is sent by a calling H.323 device to indicate its desire to set up a connection to the called device. This message typically indicates that the called device wants to do overlap sending and can accept more digits before proceeding with the call. This message is sent by the called device to indicate that it has received all the information it needs to route the call to its destination. This message can be sent by an H.323 gateway to indicate a calls progress. You typically see progress messages when internetworking with a non-ISDN network because audio cut-through must be treated differently in this case.
317
Table 47
Message Alerting
Description This message might be sent by the called phone to indicate that the called phone is being alerted of the incoming call. That is, the phone is ringing. This message is sent by the called device to the calling device to indicate that the call has been accepted or answered. This message can be sent to provide additional information. It can be used to provide information for call establishment in the case of overlap sending or miscellaneous call-related information. It can also be used to deliver proprietary features. Cisco IOS gateways use this message to get around the fact that H.323 gateways do not normally provide ringback when a call is transferred and also to generate tone on hold. This message is sent by a device to indicate the calls release. This message can be used to request call status. Normally the device receiving this message responds with a status message indicating the current call state for the specific call reference. This message is used to respond to an unknown call signaling message or to a Status Inquiry message. This message is used to send additional information for a call. For example, when using overlap sending, each digit is sent one at a time in an Information message. This message is used to notify a device of a change that has occurred in the call.
Status Information
Notify
H.245 Signaling
H.225 is responsible only for setting up the call and routing it to the proper destination. H.225 does not have any mechanism for exchanging capabilities or setting up and tearing down media streams. The called H.323 device is responsible for sending the IP address and port number that are used to establish the TCP connections for H.245 signaling. This information can be sent by the called device in either the Alerting or Connect message. When the originating H.323 device receives the IP address and port number for H.245 negotiations, it initiates a second TCP connection to carry out the necessary capabilities exchange and logical channel negotiations. This TCP session is primarily used to do four things:
Master/slave determinationThis is used to resolve conflicts that might exist when two endpoints in a call request the same thing, but only one of the two can gain access to the resource at a time. Terminal capabilities exchangeThis is one of the most important functions of the H.245 protocol. The two most important capabilities are the supported audio codecs and the basic audio calls. Logical channel signalingThis indicates a one-way audio stream.With H.323 version 2, it is possible to open and close logical channels in the middle of a call. Because H.245 messages are independent of the H.225 signaling, a call can still be connected in H.225 even if no logical channels are open. This is typical with such features as hold, transfer, and conference. DTMF relayBecause voice networks typically do not carry DTMF tones inband because of compression issues, these tones are carried on the signaling channel. Ensure that the type of DTMF relay configured on your gateway is compatible with your gatekeeper.
318
Troubleshooting Gateways
An H.323 gateway is an endpoint on the LAN that provides real-time communications between H.323 terminals on the LAN and other ITU terminals on a WAN or to other H.323 gateways. Gateways allow H.323 terminals to communicate with devices that are running other protocols. They provide protocol conversion between the devices that are running different types of protocols. For example, Figure 40 shows a gateway between an H.323 terminal and a non-H.323 terminal.
Figure 40 Gateway Between an H.323 Terminal and an H.320 Terminal
H.323 gateway Protocol translation and media transcoding
Troubleshooting H.323 Gateway Call Routing and Dial Peers, page 319 Troubleshooting H.323 Gateway Dial Tone, page 332 Troubleshooting H.323 Gateway Busy Tone, page 332 Troubleshooting H.323 Gateway Ringback, page 334 Troubleshooting H.323 Gateway One-Way or No Audio, page 338 Using the Test Call Feature to Verify Voice Path, page 342
Verifying Digits Received and Sent on the POTS Call Leg, page 319 Verifying End-to-End VoIP Signaling on the VoIP Call Leg, page 322
show dialplan numberThis command is used to show which dial peer is reached when a particular telephone number is dialed. debug vtsp sessionThis command displays information on how each network indication and application request is processed, signaling indications, and DSP control messages.
319
debug vtsp dsp This command displays the digits as they are received by the voice-port. debug vtsp allThis command enables the following debug voice telephony service provider (VTSP) commands: debug vtsp session, debug vtsp error, and debug vtsp dsp.
!-!-!-!--
ACTION: Caller picked up handset and dialed digits 5000. The DSP detects DTMF digits. Digit 5 was detected with ON time of 130msec.
320
*Mar 10 17:57:08.505: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_BEGIN: digit=5, *Mar 10 17:57:08.585: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_OFF: digit=5, duration=130 *Mar 10 17:57:09.385: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_BEGIN: digit=0 *Mar 10 17:57:09.485: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_OFF: digit=0, duration=150 *Mar 10 17:57:10.697: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_BEGIN: digit=0 *Mar 10 17:57:10.825: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_OFF: digit=0, duration=180 *Mar 10 17:57:12.865: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_BEGIN: digit=0 *Mar 10 17:57:12.917: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_OFF: digit=0, duration=100
!--- <some output have been omitted> !-- ACTION: Caller picked up handset. !-- The DSP is allocated, jitter buffers, VAD !-- thresholds, and signal levels are set.
*Mar 10 18:14:22.865: dsp_set_playout: [1/0/0 (69)] packet_len=18 channel_id=1 packet_id=76 mode=1 initial=60 min=4 max=200 fax_nom=300 *Mar 10 18:14:22.865: dsp_echo_canceller_control: [1/0/0 (69)] packet_len=10 channel_id=1 packet_id=66 flags=0x0 *Mar 10 18:14:22.865: dsp_set_gains: [1/0/0 (69)] packet_len=12 channel_id=1 packet_id=91 in_gain=0 out_gain=65506 *Mar 10 18:14:22.865: dsp_vad_enable: [1/0/0 (69)] packet_len=10 channel_id=1 packet_id=78 thresh=-38act_setup_ind_ack *Mar 10 18:14:22.869: dsp_voice_mode: [1/0/0 (69)] packet_len=24 channel_id=1 packet_id=73 coding_type=1 voice_field_size=80 VAD_flag=0 echo_length=64 comfort_noise=1 inband_detect=1 digit_relay=2 AGC_flag=0act_setup_ind_ack(): dsp_dtmf_mod e()act_setup_ind_ack: passthru_mode = 0, no_auto_switchover = 0dsp_dtmf_mode (VTSP_TONE_DTMF_MODE)
321
!-- generated.
*Mar 10 18:14:22.873: dsp_cp_tone_on: [1/0/0 (69)] packet_len=30 channel_id=1 packet_id=72 tone_id=4 n_freq=2 freq_of_first=350 freq_of_second=440 amp_of_first= 4000 amp_of_second=4000 direction=1 on_time_first=65535 off_time_first=0 on_time _second=65535 off_time_second=0
If you find that the digits are not being sent or received properly, you might need to use either a digit-grabber (test tool) or T1 tester to verify the digits are being sent at the correct frequency and timing interval. If they are being sent incorrectly for the switch (CO or PBX), some values on the router or switch (CO or PBX) might need to be adjusted so that they match and can interoperate. These are usually digit duration and interdigit duration values. If the digits appear to be sent correctly you might want to examine any number translation tables in the switch (CO or PBX) that might add or remove digits.
Cisco VoIP gateways use H.323 signaling to complete calls. H.323 is made up of three layers of call-negotiation and call-establishment: H.225, H.245, and H.323. These protocols use a combination of TCP and UDP to set up and establish a call. End-to-end VoIP debugging shows a number of Cisco IOS state machines, and problems with any state machine can cause a call to fail. End-to-end VoIP debugging can be very verbose and can create a lot of debug output.
In the following lines, the call control API (CCAPI) receives the call setup. The called number is 34999, and the calling number is 55555. The calling number matches dial peer 10002.
*Mar *Mar 1 15:35:53.592: //-1/xxxxxxxxxxxx/CCAPI/cc_api_display_ie_subfields: 1 15:35:53.592: cc_api_call_setup_ind:
322
*Mar 1 15:35:53.592: cisco-username= *Mar 1 15:35:53.596: ----- ccCallInfo IE subfields ----*Mar 1 15:35:53.596: cisco-ani=55555 *Mar 1 15:35:53.596: cisco-anitype=0 *Mar 1 15:35:53.596: cisco-aniplan=0 *Mar 1 15:35:53.596: cisco-anipi=0 *Mar 1 15:35:53.596: cisco-anisi=0 *Mar 1 15:35:53.596: dest=34999 *Mar 1 15:35:53.596: cisco-desttype=0 *Mar 1 15:35:53.596: cisco-destplan=0 *Mar 1 15:35:53.596: cisco-rdn= *Mar 1 15:35:53.596: cisco-rdntype=-1 *Mar 1 15:35:53.596: cisco-rdnplan=-1 *Mar 1 15:35:53.596: cisco-rdnpi=-1 *Mar 1 15:35:53.596: cisco-rdnsi=-1 *Mar 1 15:35:53.596: cisco-redirectreason=-1 *Mar 1 15:35:53.596: //-1/xxxxxxxxxxxx/CCAPI/cc_api_call_setup_ind: (vdbPtr=0x6 37EC1E0, callInfo={called=34999,called_oct3=0x80,calling=55555,calling_oct3=0x80 ,calling_oct3a=0x0,calling_xlated=false,subscriber_type_str=RegularLine,fdest=1, peer_tag=10002, prog_ind=0,callingIE_present 1, src_route_label=, tgt_route_labe l= clid_transparent=0},callID=0x637B4278) *Mar 1 15:35:53.596: //-1/xxxxxxxxxxxx/CCAPI/cc_api_call_setup_ind: *Mar 1 15:35:53.596: //-1/xxxxxxxxxxxx/CCAPI/cc_api_call_setup_ind: type 13 , p rot 0 *Mar 1 15:35:53.596: //-1/xxxxxxxxxxxx/CCAPI/ccCheckClipClir: *Mar 1 15:35:53.596: ccCheckClipClir: calling number is: "55555", calling oct3a is: 0x0 *Mar 1 15:35:53.596: //-1/xxxxxxxxxxxx/CCAPI/ccCheckClipClir: *Mar 1 15:35:53.596: Calling Party number is User Provided *Mar 1 15:35:53.596: //-1/xxxxxxxxxxxx/CCAPI/ccCheckClipClir: *Mar 1 15:35:53.596: Leaving ccCheckClipClir calling number is: "55555" calling oct3 is: 0x80 calling oct3a is: 0x0
323
*Mar 1 15:35:53.600: Bucket { 0 } ------>0x63401148[0x0,t-5,l-276,d-0x63401168, m-1,u-56153,g-FACE0FFF] *Mar 1 15:35:53.604: *Mar 1 15:35:53.604: Bucket { 5 } ------>0x638BC1AC[0x0,t-6,l-16,d-0x638BC1CC,m -1,u-56153,g-FACE0FFF] *Mar 1 15:35:53.604: *Mar 1 15:35:53.604: //-1/xxxxxxxxxxxx/CCAPI/ccTDDestructTDUsrContainer: Contai ner[0x638C1BF0] *Mar 1 15:35:53.604: //-1/xxxxxxxxxxxx/CCAPI/cc_incr_if_call_volume: not the Vo IP or MMoIP *Mar 1 15:35:53.608: //-1/xxxxxxxxxxxx/CCAPI/cc_process_call_setup_ind: (event= 0x63073AA0)
In the next line, 45F2AAE28044 is the GUID. The tag 10002 entry shows that the incoming dial-peer matched the CallEntry ID.
*Mar 1 15:35:53.608: //44/45F2AAE28044/CCAPI/cc_process_call_setup_ind: >>>>CCA PI handed cid 44 with tag 10002 to app "DEFAULT" *Mar 1 15:35:53.608: //44/xxxxxxxxxxxx/SSAPP:-1:-1/sess_appl: ev(24=CC_EV_CALL_ SETUP_IND), cid(44), disp(0) *Mar 1 15:35:53.608: //44/xxxxxxxxxxxx/SSAPP:-1:-1/sess_appl: ev(SSA_EV_CALL_SE TUP_IND), cid(44), disp(0) *Mar 1 15:35:53.608: //44/xxxxxxxxxxxx/SSAPP:-1:-1/ssaCallSetupInd:
The next line shows CallEntry ID in hexadecimal form, 0x2C (44 in decimal). The CallID and GUID numbers have been identified. The incoming dial-peer is 10002.
*Mar 1 15:35:53.608: //44/xxxxxxxxxxxx/CCAPI/ccCallSetContext: (callID=0x2C, context=0x634A430C) *Mar 1 15:35:53.608: //44/45F2AAE28044/SSAPP:10002:-1/ssaCallSetupInd: cid(44), st(SSA_CS_MAPPING),oldst(0), ev(24)ev->e.evCallSetupInd.nCallInfo.finalDestFlag = 1 *Mar 1 15:35:53.608: //44/45F2AAE28044/SSAPP:10002:-1/ssaCallSetupInd: src rout e label=, tgt route label= tg_label_flag 0x0 *Mar 1 15:35:53.608: //44/45F2AAE28044/SSAPP:10002:-1/ssaCallSetupInd: finalDes t cllng(55555), clled(34999) tgt_route_label()tg_label_flag 0x0 *Mar 1 15:35:53.612: //44/45F2AAE28044/SSAPP:10002:-1/ssaCallSetupInd: cid(44), st(SSA_CS_CALL_SETTING),oldst(0), ev(24)dpMatchPeersMoreArg result= 0
For CallEntry ID 44, two dial-peer tags (10001 and 20002) were matched with called number 34999.
*Mar 1 15:35:53.612: //44/45F2AAE28044/SSAPP:10002:-1/ssaDebugPeers: ssaSetupPe er cid(44) peer list: tag(10001) called number (34999) tag(20002) called number (34999) *Mar 1 15:35:53.612: //44/45F2AAE28044/SSAPP:10002:-1/ssaSetupPeer: dialpeer ta gs in rotary= 10001 20002
The next line shows that 5 digits were matched for this dial-peer and no prefix was added. The encapType (2) entry indicates a VoIP call.
*Mar 1 15:35:53.612: //44/45F2AAE28044/SSAPP:10002:-1/ssaSetupPeer: cid(44), de stPat(34999), matched(5), prefix(), peer(637B0984), peer->encapType (2) *Mar 1 15:35:53.612: //-1/xxxxxxxxxxxx/CCAPI/cc_can_gateway: Call legs: In=6, O ut=1
The next line shows the voice gateway sending out a call-proceeding message to the incoming call leg with progress indicator of 0x0.
*Mar 1 15:35:53.612: //44/xxxxxxxxxxxx/CCAPI/ccCallProceeding: (callID=0x2C, pr og_ind=0x0)
The next line shows the voice gateway sending out the call-setup request to the outgoing call leg. The dial-peer is 10001 with the incoming CallEntry ID being 0x2C.
324
*Mar 1 15:35:53.612: //44/xxxxxxxxxxxx/CCAPI/ccCallSetupRequest: (Inbound call = 0x2C, outbound peer =10001, dest=, params=0x63085D80 mode=0, *callID=0x63086314, prog_ind = 0callingIE_pres ent 1) *Mar *Mar *Mar *Mar 1 1 1 1 15:35:53.612: 15:35:53.612: 15:35:53.612: 15:35:53.616: //44/45F2AAE28044/CCAPI/ccCallSetupRequest: ccCallSetupRequest numbering_type 0x80 //44/45F2AAE28044/CCAPI/ccCallSetupRequest: ccCallSetupRequest: calling number is:55555
*Mar 1 15:35:53.616: //44/45F2AAE28044/CCAPI/ccCallSetupRequest: calling oct3a is:0x0 *Mar 1 15:35:53.616: //-1/xxxxxxxxxxxx/CCAPI/ccCheckClipClir: *Mar 1 15:35:53.616: ccCheckClipClir: calling number is: "55555", calling oct3a is: 0x0 *Mar 1 15:35:53.616: //-1/xxxxxxxxxxxx/CCAPI/ccCheckClipClir: *Mar 1 15:35:53.616: Calling Party number is User Provided *Mar 1 15:35:53.616: //-1/xxxxxxxxxxxx/CCAPI/ccCheckClipClir: *Mar 1 15:35:53.616: Leaving ccCheckClipClir calling number is: "55555" calling oct3 is: 0x80 calling oct3a is: 0x0 *Mar 1 15:35:53.616: //44/45F2AAE28044/CCAPI/ccCallSetupRequest: after ccCheckC lipClir - calling oct3a is:0x0
325
*Mar 1 15:35:53.620: //-1/xxxxxxxxxxxx/CCAPI/ccIFCallSetupRequestPrivate: *Mar 1 15:35:53.620: //-1/xxxxxxxxxxxx/CCAPI/ccIFCallSetupRequestPrivate: (vdbP tr=0x62EC61A4, dest=, callParams={called=34999, called_oct3 0x80, calling=55555 ,calling_oct3 0x80, calling_oct3a 0x0, calling_xlated=false, fdest=1, voice_pee r_tag=10001}, mode=0x0, xltrc=-5) *Mar 1 15:35:53.620: //-1/xxxxxxxxxxxx/CCAPI/ccIFCallSetupRequestPrivate:
In the next line, outgoing CallEntry ID 45 is bound to the same GUID 45F2AAE28044.
*Mar 1 15:35:53.620: //45/45F2AAE28044/CCAPI/cc_insert_call_entry: not incoming entry *Mar 1 15:35:53.620: //45/45F2AAE28044/CCAPI/cc_insert_call_entry: entry's inco ming FALSE. *Mar 1 15:35:53.620: //45/45F2AAE28044/CCAPI/cc_insert_call_entry: is_incoming is FALSE *Mar 1 15:35:53.624: //44/xxxxxxxxxxxx/CCAPI/ccSaveDialpeerTag: (callID=0x2C, d ialpeer_tag=10001) *Mar 1 15:35:53.624: //45/xxxxxxxxxxxx/CCAPI/ccCallSetContext: (callID=0x2D, co ntext=0x634A537C) 0x2D (decimal 45 is the second call leg ID). *Mar 1 15:35:53.624: //44/xxxxxxxxxxxx/CCAPI/ccCallReportDigits: (callID=0x2C, enable=0x0)
The voice gateway informs the incoming call leg that digits were forwarded.
*Mar 1 15:35:53.624: //44/xxxxxxxxxxxx/CCAPI/cc_api_call_report_digits_done: (v dbPtr=0x637EC1E0, callID=0x2C, disp=0) *Mar 1 15:35:53.624: //44/xxxxxxxxxxxx/SSAPP:-1:-1/sess_appl: ev(54=CC_EV_CALL_ REPORT_DIGITS_DONE), cid(44), disp(0) *Mar 1 15:35:53.624: //44/45F2AAE28044/SS Router#APP:10002:-1/ssaTraceSct: cid(44)st(SSA_CS_CALL_SETTING)ev(SSA_EV_CALL_RE PORT_DIGITS_DONE) oldst(SSA_CS_MAPPING)cfid(-1)csize(0)in(1)fDest(1) *Mar 1 15:35:53.624: //44/45F2AAE28044/SSAPP:10002:-1/ssaTraceSct: -cid2(45)st2 (SSA_CS_CALL_SETTING)oldst2(SSA_CS_MAPPING) *Mar 1 15:35:53.624: //44/45F2AAE28044/SSAPP:10002:-1/ssaDebugPeers: ssaReportD igitsDone cid(44) peer list: tag(20002) called number (34999) *Mar 1 15:35:53.624: //44/45F2AAE28044/SSAPP:10002:-1/ssaReportDigitsDone: call id=44 Reporting disabled. *Mar 1 15:35:53.628: //-1/xxxxxxxxxxxx/CCAPI/cc_api_supported_data: data_mode=0 x10082 *Mar 1 15:35:53.628: //45/xxxxxxxxxxxx/CCAPI/cc_api_get_ic_leg_obtained_numbers : callID=0x2D
The next two lines show the IP address of the terminating gateway and indicate that the terminating gateway is reached through Ethernet port 0/0.
*Mar 1 15:35:53.628: is 171.69.85.111 *Mar 1 15:35:53.632: thernet0/0 *Mar 1 15:35:53.632: ry in list: 1 *Mar 1 15:35:53.636: D[1] of callID[45] *Mar 1 15:35:53.636: ager: No profileTable *Mar 1 15:35:53.636: D[2] of callID[45] *Mar 1 15:35:53.636: ager: No profileTable //-1/xxxxxxxxxxxx/CCAPI/cc_incr_if_call_volume: remote IP //-1/xxxxxxxxxxxx/CCAPI/cc_incr_if_call_volume: hwidb is E //-1/xxxxxxxxxxxx/CCAPI/cc_incr_if_call_volume: create ent //45/xxxxxxxxxxxx/CCAPI/ccTDUtilGetInstanceCount: For tagI //45/45F2AAE28044/CCAPI/ccTDPvtProfileTableObjectAccessMan set for callID[45] //45/xxxxxxxxxxxx/CCAPI/ccTDUtilGetInstanceCount: For tagI //45/45F2AAE28044/CCAPI/ccTDPvtProfileTableObjectAccessMan set for callID[45]
326
The next line shows that the voice gateway received a call proceeding message from the terminating gateway. The line after that shows that the voice gateway received a call alert from the terminating gateway.
*Mar 1 15:35:53.740: //45/xxxxxxxxxxxx/CCAPI/cc_api_call_proceeding: (vdbPtr=0x 62EC61A4, callID=0x2D, prog_ind=0x0) *Mar 1 15:35:53.740: //45/xxxxxxxxxxxx/CCAPI/cc_api_call_alert: (vdbPtr=0x62EC6 1A4, callID=0x2D, prog_ind=0x0, sig_ind=0x1) *Mar 1 15:35:53.744: //45/xxxxxxxxxxxx/SSAPP:-1:-1/sess_appl: ev(21=CC_EV_CALL_ PROCEEDING), cid(45), disp(0) *Mar 1 15:35:53.744: //45/45F2AAE28044/SSAPP:0:-1/ssaTraceSct: cid(45)st(SSA_CS _CALL_SETTING)ev(SSA_EV_CALL_PROCEEDING) oldst(SSA_CS_MAPPING)cfid(-1)csize(0)in(0)fDest(0) *Mar 1 15:35:53.744: //45/45F2AAE28044/SSAPP:0:-1/ssaTraceSct: -cid2(44)st2(SSA _CS_CALL_SETTING)oldst2(SSA_CS_CALL_SETTING) *Mar 1 15:35:53.744: //45/45F2AAE28044/SSAPP:0:-1/ssaCallProc: *Mar 1 15:35:53.744: //44/xxxxxxxxxxxx/CCAPI/ccGetDialpeerTag: (callID=0x2C) *Mar 1 15:35:53.744: //45/45F2AAE28044/SSAPP:0:-1/ssaIgnore: cid(45), st(SSA_CS _CALL_SETTING),oldst(1), ev(21) *Mar 1 15:35:53.744: //45/xxxxxxxxxxxx/SSAPP:-1:-1/sess_appl: ev(7=CC_EV_CALL_A LERT), cid(45), disp(0) *Mar 1 15:35:53.744: //45/45F2AAE28044/SSAPP:0:-1/ssaTraceSct: cid(45)st(SSA_CS _CALL_SETTING)ev(SSA_EV_CALL_ALERT) oldst(SSA_CS_CALL_SETTING)cfid(-1)csize(0)in(0)fDest(0) *Mar 1 15:35:53.744: //45/45F2AAE28044/SSAPP:0:-1/ssaTraceSct: -cid2(44)st2(SSA _CS_CALL_SETTING)oldst2(SSA_CS_CALL_SETTING) *Mar 1 15:35:53.744: //44/45F2AAE28044/SSAPP:10002:-1/ssaAlert: *Mar 1 15:35:53.744: //44/xxxxxxxxxxxx/CCAPI/ccGetDialpeerTag: (callID=0x2C) Router#
The voice gateway receives a connect message from the terminating gateway.
*Mar 1 15:36:05.016: //45/xxxxxxxxxxxx/CCAPI/cc_api_call_connected: (vdbPtr=0x6 2EC61A4, callID=0x2D), prog_ind = 0 *Mar 1 15:36:05.016: //45/45F2AAE28044/CCAPI/cc_api_call_connected: setting cal lEntry->connected to TRUE
The next line shows that the call accounting starts. The leg_type=False message means that message is for an outgoing call. The line that follows shows that AAA accounting is not configured.
*Mar 1 15:36:05.016: //45/45F2AAE28044/CCAPI/cc_api_call_connected: calling accounting start for callID=45 leg_type=0 *Mar 1 15:36:05.020: //45/xxxxxxxxxxxx/CCAPI/ccCallSetAAA_Accounting: callID=0x 2D, accounting=0 *Mar 1 15:36:05.020: //45/xxxxxxxxxxxx/SSAPP:-1:-1/sess_appl: ev(8=CC_EV_CALL_C ONNECTED), cid(45), disp(0) *Mar 1 15:36:05.020: //45/45F2AAE28044/SSAPP:0:-1/ssaTraceSct: cid(45)st(SSA_CS _ALERT_RCVD)ev(SSA_EV_CALL_CONNECTED) oldst(SSA_CS_CALL_SETTING)cfid(-1)csize(0)in(0)fDest(0) *Mar 1 15:36:05.020: //45/45F2AAE28044/SSAPP:0:-1/ssaTraceSct: -cid2(44)st2(SSA _CS_ALERT_RCVD)oldst2(SSA_CS_CALL_SETTING)
327
*Mar *Mar
The next lines show a conference being set up between the two call legs 0x2C and 0x2D. Bridge complete messages are sent to both the terminating and originating gateways.
*Mar 1 15:36:05.020: //44/xxxxxxxxxxxx/CCAPI/ccConferenceCreate: (confID=0x6308 6424, callID1=0x2C, callID2=0x2D, tag=0x0) *Mar 1 15:36:05.020: //45/xxxxxxxxxxxx/CCAPI/cc_api_bridge_done: (confID=0x15, srcIF=0x62EC61A4, srcCallID=0x2D, dstCallID=0x2C, disposition=0, tag=0x0) *Mar 1 15:36:05.024: //44/xxxxxxxxxxxx/CCAPI/cc_api_bridge_done: (confID=0x15, srcIF=0x637EC1E0, srcCallID=0x2C, dstCallID=0x2D, disposition=0, tag=0x0)
Here, the voice gateway sets up negotiating capability with the originating telephony leg.
*Mar 1 15:36:05.024: //44/xxxxxxxxxxxx/CCAPI/cc_api_caps_ind: (dstVdbPtr=0x62EC 61A4, dstCallId=0x2D, srcCallId=0x2C, caps={codec=0x2887F, fax_rate=0xBF, vad=0x3, modem=0x2 codec_bytes=0, signal_type=3}) *Mar 1 15:36:05.024: //44/xxxxxxxxxxxx/CCAPI/cc_api_caps_ind: (Playout: mode 0, initial 60,min 40, max 300) *Mar 1 15:36:05.024: //44/xxxxxxxxxxxx/SSAPP:-1:-1/sess_appl: ev(29=CC_EV_CONF_ CREATE_DONE), cid(44), disp(0) *Mar 1 15:36:05.024: //44/45F2AAE28044/SSAPP:10002:21/ssaTraceSct: cid(44)st(SS A_CS_CONFERENCING)ev(SSA_EV_CONF_CREATE_DONE) oldst(SSA_CS_CALL_SETTING)cfid(21)csize(2)in(1)fDest(1) *Mar 1 15:36:05.024: //44/45F2AAE28044/SSAPP:10002:21/ssaTraceSct: -cid2(45)st2 (SSA_CS_CONFERENCING)oldst2(SSA_CS_ALERT_RCVD) *Mar 1 15:36:05.024: //44/45F2AAE28044/SSAPP:10002:21/ssaConfCreateDone: *Mar 1 15:36:05.024: //44/xxxxxxxxxxxx/CCAPI/ccCallConnect: (callID=0x2C), prog _ind = 0 *Mar 1 15:36:05.024: //44/45F2AAE28044/CCAPI/ccCallConnect: setting callEntry-> connected to TRUE *Mar 1 15:36:05.024: //44/45F2AAE28044/SSAPP:10002:21/ssaDebugPeers: ssaFlushPe erTagQueue cid(44) peer list: tag(20002) called number (34999) *Mar 1 15:36:05.028: //-1/xxxxxxxxxxxx/CCAPI/cc_process_notify_bridge_done: (ev ent=0x63067FC0)
The voice gateway sets up negotiating capability with the terminating VoIP leg.
*Mar 1 15:36:05.028: //45/xxxxxxxxxxxx/CCAPI/cc_api_caps_ind: (dstVdbPtr=0x637E C1E0, dstCallId=0x2C, srcCallId=0x2D, caps={codec=0x4, fax_rate=0x2, vad=0x2, modem=0x0 codec_bytes=20, signal_type=2}) *Mar 1 15:36:05.028: //45/xxxxxxxxxxxx/CCAPI/cc_api_caps_ind: (Playout: mode 0, initial 60,min 40, max 300)
328
_MODE_DONE), cid(44), disp(0) *Mar 1 15:36:05.032: //44/45F2AAE28044/SSAPP:10002:21/ssaTraceSct: Router# Router#cid(44)st(SSA_CS_ACTIVE)ev(SSA_EV_VOICE_MODE_DONE) oldst(SSA_CS_CONFERENCING)cfid(21)csize(2)in(1)fDest(1) *Mar 1 15:36:05.032: //44/45F2AAE28044/SSAPP:10002:21/ssaTraceSct: -cid2(45)st2 (SSA_CS_ACTIVE)oldst2(SSA_CS_ALERT_RCVD) *Mar 1 15:36:05.032: //44/45F2AAE28044/SSAPP:10002:21/ssaIgnore: cid(44), st(SS A_CS_ACTIVE),oldst(5), ev(52) Router# Router#! digit punched Router#
The voice gateway receives a disconnect message from the terminating gateway. The cause code is 0x10 which is normal call clearing.
*Mar 1 15:36:22.916: //45/xxxxxxxxxxxx/CCAPI/cc_api_call_disconnected: (vdbPtr= 0x62EC61A4, callID=0x2D, cause=0x10) *Mar 1 15:36:22.920: //45/xxxxxxxxxxxx/SSAPP:-1:-1/sess_appl: ev(11=CC_EV_CALL_ DISCONNECTED), cid(45), disp(0) *Mar 1 15:36:22.920: //45/45F2AAE28044/SSAPP:0:21/ssaTraceSct: cid(45)st(SSA_CS _ACTIVE)ev(SSA_EV_CALL_DISCONNECTED) oldst(SSA_CS_ALERT_RCVD)cfid(21)csize(2)in(0)fDest(0) *Mar 1 15:36:22.920: //45/45F2AAE28044/SSAPP:0:21/ssaTraceSct: -cid2(44)st2(SSA _CS_ACTIVE)oldst2(SSA_CS_ACTIVE) *Mar 1 15:36:22.920: ssa: Disconnected cid(45) state(5) cause(0x10)
The voice gateway begins tearing down the conference and dropping the bridge.
*Mar 1 15:36:22.920: //-1/xxxxxxxxxxxx/CCAPI/ccConferenceDestroy: (confID=0x15, tag=0x0) *Mar 1 15:36:22.920: //45/xxxxxxxxxxxx/CCAPI/cc_api_bridge_drop_done: (confID=0 x15, srcIF=0x62EC61A4, srcCallID=0x2D, dstCallID=0x2C, disposition=0 tag=0x0) *Mar 1 15:36:22.920: //44/xxxxxxxxxxxx/CCAPI/cc_api_bridge_drop_done: (confID=0
329
x15, srcIF=0x637EC1E0, srcCallID=0x2C, dstCallID=0x2D, disposition=0 tag=0x0) *Mar 1 15:36:22.924: //44/xxxxxxxxxxxx/SSAPP:-1:-1/sess_appl: ev(30=CC_EV_CONF_ DESTROY_DONE), cid(44), disp(0) *Mar 1 15:36:22.924: //44/45F2AAE28044/SSAPP:10002:21/ssaTraceSct: cid(44)st(SS A_CS_CONF_DESTROYING)ev(SSA_EV_CONF_DESTROY_DONE) oldst(SSA_CS_ACTIVE)cfid(21)csize(2)in(1)fDest(1) *Mar 1 15:36:22.924: //44/45F2AAE28044/SSAPP:10002:21/ssaTraceSct: -cid2(45)st2 (SSA_CS_CONF_DESTROYING)oldst2(SSA_CS_ACTIVE) *Mar 1 15:36:22.924: //45/45F2AAE28044/SSAPP:0:-1/ssaConfDestroyDone: *Mar 1 15:36:22.924: //44/xxxxxxxxxxxx/CCAPI/ccCallDisconnect: (callID=0x2C, ca use=0x10 tag=0x0)
The voice gateway stops call accounting on the incoming call, indicated by the leg_type=True message. The cause code is then set for the originating leg.
*Mar 1 15:36:22.924: //44/45F2AAE28044/CCAPI/ccCallDisconnect: calling accounti ng start for callID=44 leg_type=1 *Mar 1 15:36:22.924: //44/45F2AAE28044/CCAPI/ccCallDisconnect: existing_cause = 0x0, new_cause = 0x10 *Mar 1 15:36:22.924: //44/xxxxxxxxxxxx/CCAPI/cc_api_get_transfer_info: (callID= 0x2C) *Mar 1 15:36:22.924: //45/xxxxxxxxxxxx/CCAPI/ccCallDisconnect: (callID=0x2D, ca use=0x10 tag=0x0)
The voice gateway stops call accounting for the outgoing call, indicated by the leg_type=False message. The cause code is verified for the terminating leg.
*Mar 1 15:36:22.924: //45/45F2AAE28044/CCAPI/ccCallDisconnect: calling accounti ng start for callID=45 leg_type=0 *Mar 1 15:36:22.924: //45/45F2AAE28044/CCAPI/ccCallDisconnect: existing_cause = 0x10, new_cause = 0x10 *Mar 1 15:36:22.924: //45/45F2AAE28044/CCAPI/ccCallDisconnect: using the existi ng_cause 0x10 *Mar 1 15:36:22.928: //45/xxxxxxxxxxxx/CCAPI/cc_api_get_transfer_info: (callID= 0x2D) *Mar 1 15:36:22.932: //-1/xxxxxxxxxxxx/CCAPI/cc_api_icpif: expect factor = 0 *Mar 1 15:36:22.932: //-1/xxxxxxxxxxxx/CCAPI/g113_calculate_impairment: (delay= 79, loss=0), Io=0 Iq=0 Idte=0 Idd=0 Ie=10 Itot=10 *Mar 1 15:36:22.932: //-1/xxxxxxxxxxxx/CCAPI/cc_decr_if_call_volume: the remote IP is 171.69.85.111 *Mar 1 15:36:22.932: //-1/xxxxxxxxxxxx/CCAPI/cc_decr_if_call_volume: hwidb is E thernet0/0 *Mar 1 15:36:22.932: //-1/xxxxxxxxxxxx/CCAPI/cc_decr_if_call_volume: reduce cal lnum of entry: 0, voip: 0, mmoip: 0 *Mar 1 15:36:22.932: //-1/xxxxxxxxxxxx/CCAPI/cc_decr_if_call_volume: remove an entry *Mar 1 15:36:22.932: //45/xxxxxxxxxxxx/CCAPI/cc_api_call_disconnect_done: (vdbP tr=0x62EC61A4, callID=0x2D, disp=0, tag=0x0) *Mar 1 15:36:22.932: //45/45F2AAE28044/CCAPI/ccTDPvtProfileTableObjectAccessMan ager: No profileTable set for callID[45] *Mar 1 15:36:22.936: //45/xxxxxxxxxxxx/CCAPI/ccTDUtilGetDataByRef: No tdObject found in profileTable for tagID[6] of callID[45] *Mar 1 15:36:22.936: //45/45F2AAE28044/CCAPI/cc_delete_call_entry: not incoming entry *Mar 1 15:36:22.936: //45/45F2AAE28044/CCAPI/cc_delete_call_entry: entry's inco ming FALSE. *Mar 1 15:36:22.936: //45/45F2AAE28044/CCAPI/cc_delete_call_entry: is_incoming is FALSE *Mar 1 15:36:22.940: //45/xxxxxxxxxxxx/SSAPP:-1:-1/sess_appl: ev(12=CC_EV_CALL_ DISCONNECT_DONE), cid(45), disp(0) *Mar 1 15:36:22.940: //45/45F2AAE28044/SSAPP:0:-1/ssaTraceSct: cid(45)st(SSA_CS _DISCONNECTING)ev(SSA_EV_CALL_DISCONNECT_DONE) oldst(SSA_CS_ACTIVE)cfid(-1)csize(2)in(0)fDest(0)
330
*Mar 1 15:36:22.940: //45/45F2AAE28044/SSAPP:0:-1/ssaTraceSct: -cid2(44)st2(SSA _CS_DISCONNECTING)oldst2(SSA_CS_CONF_DESTROYING) *Mar 1 15:36:22.940: //45/45F2AAE28044/SSAPP:0:-1/ssaDisconnectDone: *Mar 1 15:36:22.940: //45/45F2AAE28044/SSAPP:0:-1/ssaAAA_CheckAccounting: accou nting generation enabled *Mar 1 15:36:22.940: //45/xxxxxxxxxxxx/CCAPI/ccCallSetAAA_Accounting: callID=0x 2D, accounting=0 *Mar 1 15:36:22.944: //-1/xxxxxxxxxxxx/CCAPI/cc_decr_if_call_volume: not the Vo IP or MMoIP *Mar 1 15:36:22.948: //44/xxxxxxxxxxxx/CCAPI/cc_api_call_disconnect_done: (vdbP tr=0x637EC1E0, callID=0x2C, disp=0, tag=0x0) *Mar 1 15:36:22.948: //44/45F2AAE28044/CCAPI/cc_delete_call_entry: ccFreeRawMsg Info(0x6307595C) *Mar 1 15:36:22.948: //44/45F2AAE28044/CCAPI/cc_delete_call_entry: Decrement ca ll volume counter 1 *Mar 1 15:36:22.948: //44/45F2AAE28044/CCAPI/cc_delete_call_entry: current call volume: 0 *Mar 1 15:36:22.948: //44/45F2AAE28044/CCAPI/cc_delete_call_entry: entry's inco ming TRUE. *Mar 1 15:36:22.948: //44/45F2AAE28044/CCAPI/cc_delete_call_entry: is_incoming is TRUE *Mar 1 15:36:22.948: //44/45F2AAE28044/CCAPI/cc_delete_call_entry: Deleting pro fileTable[0x6380E11C] *Mar 1 15:36:22.948: //-1/xxxxxxxxxxxx/CCAPI/ccTDDestructTDHashProfileTab: Dest ructor Profile Table (0x6380E11C) *Mar 1 15:36:22.948: //-1/xxxxxxxxxxxx/CCAPI/ccTDDestructInstanceTDObject: tdOb ject[0x63401148] tagID[5] *Mar 1 15:36:22.948: //-1/xxxxxxxxxxxx/CCAPI/ccTDDestructInstanceTDObject: tdOb ject[0x638BC1AC] tagID[6] *Mar 1 15:36:22.956: //44/xxxxxxxxxxxx/SSAPP:-1:-1/sess_appl: ev(12=CC_EV_CALL_ DISCONNECT_DONE), cid(44), disp(0) *Mar 1 15:36:22.956: //44/45F2AAE28044/SSAPP:10002:-1/ssaTraceSct: cid(44)st(SS A_CS_DISCONNECTING)ev(SSA_EV_CALL_DISCONNECT_DONE) oldst(SSA_CS_CONF_DESTROYING)cfid(-1)csize(1)in(1)fDest(1) Router# *Mar 1 15:36:22.956: //44/45F2AAE28044/SSAPP:10002:-1/ssaDisconnectDone:
If the call is failing and the cause appears to be in the VoIP portion of the call setup, you might need to look at the H.225 or H.245 TCP part of the call setup, as opposed to just the UDP portion of the H.323 setup. The commands that can be used to debug the H.225 or H.245 call setup are:
debug ip tcp transaction and debug ip tcp packet These examine the TCP portion of the H.225 and H.245 negotiation. They returns the IP addresses, TCP ports and states of the TCP connections. debug cch323 h225 This examines the H.225 portion of the call negotiation. Think of this as the Layer1 part of the 3 part H.323 call setup. debug ch323 h245This examines the H.245 portion of the call negotiation. Think of this as the Layer2 part of the 3 part H.323 call setup.
For more information about voice troubleshooting, refer to Troubleshooting and Debugging VoIP Call Basics, document 14081.
331
DTMF tones not being passed DTMF tones not being understood DTMF tones being passed too distorted to be understood Other signaling and cabling issues
In the case of a VoIP call from an originating gateway (OGW) to a terminating gateway (TGW), terminating the call to a telephony device might not be understood. When you are passing DTMF tones through a compressed VoIP audio path, some or part of the dual-tones could become slightly distorted because DSP codecs are designed to interpret human speech, not machine tones. Usually, this does not occur with lesser compression codecs such as G.732 or G.711. But the higher compression codecs might result in distortion of in-band tones. However, Cisco IOS allows the DTMF tones to be passed out-of-band between VoIP gateways using three different techniques. All of these techniques use the H.245 capabilities-exchange (part of H.323v2) to signal to the remote VoIP gateway that a DTMF-tone has been received and the remote VoIP gateway should regenerate it. Make sure the dtmf-relay command is configured under the VoIP dial-peer on both sides. Three different types of DTMF relays can be configured.
Router(config-dial-peer)#dtmf-relay ? cisco-rtp Cisco Proprietary RTP h245-alphanumeric DTMF Relay via H245 Alphanumeric IE h245-signal DTMF Relay via H245 Signal IE
If the problem persists, try a different setting of the dtmf-relay command. For more information, refer to Inability To Break Dialtone in a Voice over IP Network, document 22376.
No DTMF Digits or Audio Passed on VoIP Calls to PSTN or PBXThis occurs when the IP phone user makes a call, is able to hear announcement messages (for example enter your account number.) but cannot pass DTMF digits. This symptom applies for both VoIP toll-bypass calls and Cisco IP phone to PSTN/PBX calls. No Busy Tone or Announcement Message Received When Placing VoIP Outbound CallsThis occurs when Cisco IP phone (CallManager scenario) or POTS phone (VoIP toll-bypass scenario) does not hear a busy tone or announcement message from the PSTN. This symptom applies for both VoIP toll-bypass calls and Cisco IP phone to PSTN/PBX calls. No Busy Tone on Inbound Call from Telephony (ISDN) to Cisco CallManager IP Phone, Cisco IOS Gateway, or Third-Party H.323 DeviceThis occurs when a call from PSTN through gateway to a Cisco CallManager IP phone, Cisco IOS gateway or third party H.323 device does not hear busy tone when running either an application or two-stage dialing on the originating gateway.
332
Caller makes a call, hears announcement messages (for example enter your account number...) but cannot pass DTMF digits. This symptom applies for both VoIP toll-bypass and Cisco IP phone calls to PSTN/PBX calls.
Problem Description
A Cisco IP phone (using Cisco CallManager) or POTS phone (VoIP) call leaves through a Cisco IOS gateway, where the called number is usually an interactive voice response (IVR). The IVR system sends back an ISDN progress message but does not connect until some account information is entered. By default, the audio path is cut through in the backward direction (toward the Cisco IP phone or originating gateway), but not in the forward direction, until the terminating gateway receives a connect message. Therefore, there is no voice path for the transmission of DTMF tones or speech towards the terminating switch.
Solution
Configure the Cisco IOS global configuration command voice rtp send-recv to establish (cut through) the audio path in both directions prior to receiving an ISDN connect message from the PSTN. For more information on this command refer to the Cisco IOS Voice Command Reference, Release 12.3.
No Busy Tone or Announcement Message Received When Placing VoIP Outbound Calls
Symptom
A Cisco IP phone (using CallManager) or POTS phone (VoIP) does not hear a busy tone or announcement message from the PSTN.
Solution
Configure the voice call convert-discpi-to-prog command. This command converts an inbound ISDN disconnect message with a progress indicator (PI) to an H.225 progress message with the same progress indicator (PI) value. This command can help when an announcement is played on the terminating PSTN side, but the calling party does not hear the response. In the VoIP toll-bypass scenario, most of these issues are resolved by upgrading the gateways to Cisco IOS Release 12.2(1) or later. However, if the originating device or originating ISDN switch does not keep the call active when an H.225/ISDN disconnect message is received, try using the voice call convert-discpi-to-prog command. This might come up when the announcement in-band is a busy tone, as well. Beyond that, the busy signal should be provided by either the terminating device, the originating device, or the network. Some aspects of this can be controlled.
No Busy Tone on Inbound Call from Telephony (ISDN) to Cisco CallManager IP Phone, Cisco IOS Gateway, or Third-Party H.323 Device
Symptom
You cannot hear busy tone on a call from PSTN through a gateway to a Cisco CallManager IP phone, Cisco IOS gateway, or third-party H.323 device when running either an application or two-stage dialing on the originating gateway.
333
Solution
This can occur when the originating gateway is either running a voice application such as debit-card, or is running two-stage dialing. The latter refers to the calling party dialing the number to the gateway first, receiving the dial tone and then dialing the called party. In either case, the call has connected in terms of the PSTN network once it terminates on the originating gateway. If the IP call leg comes back with a release with the cause user-busy, the busy state cannot be indicated back towards the telephony session that is in connect state. This problem has been addressed by having the originating gateway generate a busy tone when the release from the IP call leg is received with a cause code of user busy. The telephony leg is released either by the calling party or by the gateway after several minutes, with the cause code of normal call clearing. For more information, refer to Troubleshooting No Busy Tone and No Announcement Messages on ISDN-VoIP (H.323) Calls, document 14066.
No Ringback Tone on VoIP Toll-Bypass CallsThis occurs when a POTS (PSTN/PBX) user places a call (through Cisco gateways) and does not hear ringback tone before the call is answered. No Ringback Tone on VoIP Inbound Calls to Cisco CallManager (or Third-Party VoIP Devices) Through Cisco IOS GatewayThis occurs when a POTS (PSTN/PBX) user places a call to an IP phone (through a Cisco gateway) and does not hear ringback tone before the call is answered. No Ringback Tone on VoIP Outbound Calls from Cisco CallManager (or Third-Party Device) Through Cisco IOS GatewayThis occurs when a user places a call from an IP phone or third-party device to an outside number through a Cisco gateway and does not hear ringback tone. No Ringback to PSTN When IP Phones Initiate a Call Transfer (Cisco CallManager or Cisco Unity Voice Mail)This occurs when an incoming call from a Cisco gateway that is transferred to Cisco CallManager or to Unity Voice Mail does not hear ringback.
A POTS user (from the PSTN or a PBX) places a call through a Cisco gateway and does not hear ringback tone before the call is answered.
Problem Description
The call terminating switch is sending the ringback tone, and signals a PI=8 to the terminating Cisco gateway. The PI information is then forwarded to the originating gateway via an H.225 progress message. The originating gateway is unable to decode the progress message and does not cut through the backward audio path to permit the transmission of the ringback tones. Some common scenarios for this problem are as follows:
Terminating gateway running Cisco IOS software Release 12.1(5)T or later with originating gateway running Cisco IOS software Release 12.1T. The originating gateway does not understand the H.225 progress message and does not cut through the audio path until the connect message is received.
334
Terminating Cisco gateway is connected to a CAS or analog interface and sends the PI information in an H.225 progress message to the originating gateway. The originating gateway is unable to decode the H.225 progress message. Third-party originating gateways and gatekeepers cannot properly parse H.225 progress messages. ISDN switch sends back inband ringback but Alert message does not contain a PI.
Solutions
Configure the Cisco IOS global configuration command voice call send-alert command in the terminating gateway. This command enables the terminating gateway to send an Alert message instead of a Progress message after it receives a call setup. If this command is unavailable or does not work, go to step 2. For more information on this command refer to the Cisco IOS Voice Command Reference, Release 12.3.
2. 3.
Upgrade the Cisco IOS software onthe originating gateway to a current Cisco IOS software release. If this does not work, go to step 3. Configure the terminating gateway to send a PI = 8 in the alert mes sage. Configure the command progress_ind alert enable 8 under the voice dial-peer # pots configuration. This command overrides the PI value received in ISDN alert message and causes the router to cut through the audio path back towards the calling party prior to connect. For more information on this command refer to the Cisco IOS Voice Command Reference, Release 12.3.
Note
The progress_ind alert and the progress_ind setup commands are hidden in some versions of Cisco IOS and might not be visible within CLI help. However, if the progress_ind progress command is available in the help parser, the above commands are also available and can be entered into the dial peer in their entirety. These commands subsequently appear in the running configuration output.
No Ringback Tone on VoIP Inbound Calls to Cisco CallManager (or Third-Party VoIP Devices) Through Cisco IOS Gateway
Symptom
A POTS user (on the PSTN or PBX) places a call to an IP phone through a Cisco gateway and does not hear ringback tone before the call is answered.
Problem Description
This commonly occurs when the inbound call does not come in to the Cisco gateway/ router with a PI=3. ISDN switches send a PI=3 in the setup message to inform the gateway that the originating call is non-ISDN and that in-band messages are expected.
Solutions
Configure the progress_ind setup enable 3 command when configuring the VoIP dial peer in the Cisco gateway. This command forces the gateway to treat the inbound ISDN setup message as if it came in with a PI = 3 generates an in-band ringback tone towards the calling party when the H.225 alert message does not contain a PI of 1, 2, or 8.
335
For more information on this command refer to the Cisco IOS Voice Command Reference, Release 12.3.
Note
The progress_ind alert and the progress_ind setup commands are hidden in some versions of Cisco IOS and might not be visible within CLI help. However, if the progress_ind progress command is available in the help parser, the above commands are also available and can be entered into the dial peer in their entirety. These commands subsequently appear in the running configuration. An alternative to the progress_ind setup command is the tone ringback alert-no-pi command in dial-peer voice configuration mode. This command causes the gateway to generate ringback towards the calling party if an alert is received on the IP call leg with no PI present. It differs from the progress_ind setup command in that the outbound H.225 setup message does not contain a PI of 3 with the tone ringback command. Some devices might not accept setup messages when a PI is included.
No Ringback Tone on VoIP Outbound Calls from Cisco CallManager (or Third-Party Device) Through Cisco IOS Gateway
Symptom
A user makes an outbound call from a Cisco IP phone to the PSTN through a Cisco IOS gateway and does not hear ringback tone.
Problem Description
In this situation, the originating device expects in-band ringback tones, but either of the following might be happening:
The PSTN or switch is not providing the ringback tone. The Cisco IOS gateway is not cutting through the audio to the originating device.
If the PSTN is providing in-band ringback, but the Q.931 alert message is not providing a PI indicating that there is in-band information, the gateway does not cut through the audio until the call is connected.
Solutions
Ringback tones must come from the PSTN for trunk circuits in this situation. There are two dial-peer subcommands which may help. On the Cisco IOS gateway under the outgoing POTS dial peer, configure the command progress_ind alert enable 8. This command presents the Q.931 alert message to the software on the gateway as if the alert message had a PI of 8 and cut through the audio path.
Note
The progress_ind alert and the progress_ind setup commands are hidden in some versions of Cisco IOS and might not be visible within CLI help. However, if the progress_ind progress command is available in the help parser, the above commands are also be available and can be entered into the dial peer in their entirety. These commands subsequently appear in the running configuration.
336
In Cisco IOS software releases 12.2(2)T and later, configure the command progress_ind setup enable 3 when configuring the POTS dial peer. This command causes the gateway to send a PI with a value of 3 in the ISDN setup message, indicating to the PSTN or PBX that the originating device is a non-ISDN device and in-band information should be presented. This command should be used with the command progress_ind alert enable 8. If the PSTN device, such as an ISDN phone directly connected to a BRI port on the gateway, is not able to generate ringback in-band, the gateway can be configured to generate ringback on the IP call leg. Configure the tone ringback alert-no-pi command when configuring the POTS dial peer. When the ISDN alert is received with no PI present, the gateway generates the ringback and includes PI=0x8 in the H.225 alert message.
No Ringback to PSTN When IP Phones Initiate a Call Transfer (Cisco CallManager or Cisco Unity Voice Mail)
Symptom
When a call to an IP phone is answered and then transferred, the caller does not hear ringback. When the transferred call is answered, both parties are able to hear each other.
Problem Description
From the perspective of the Cisco IOS gateway, the call is completed once the call is answered by an IP phone through Cisco CallManager or Unity Voice Mail system. Any further progress tones (in case of a call transfer) should be generated by the terminating device. However, Cisco CallManager and Unity are not capable of generating the in-band progress tones.
Solution for Cisco CallManager 3.0
To solve this problem you can either check the following conditions, or configure the Cisco IOS gateway as an MGCP gateway, instead of an H.323 gateway.
You must have Cisco CallManager Release 3.0 (8) or higher. From the CallManager Administration page go to the Service menu and select Service Parameters. Perform the following steps for each active CallManager server:
In the Configured Services box, select Cisco CallManager. In the Param drop-down list box, select ToSendH225UserInfoMsg. Set the Value drop-down list box, to T for true. Upgrade the gateway to Cisco IOS Release 12.2 (2) or higher.
Note
These fixes are valid for ringback tones, but not for other progress tones, such as busy signal. For more information, refer to Troubleshooting No Ringback Tone on ISDN-VoIP (H.323) Calls, document 22983.
Solution for Cisco CallManager 3.3 or Newer
To solve this problem for Cisco CallManager 3.3 or newer, perform the following steps:
Step 1
From the Cisco CallManager Administration page, go to the Service menu and select Service Parameters.
337
Select the Cisco CallManager server from the drop down box. Select the system to modify from the drop down box. Make sure to select Cisco CallManager. From the Cisco CallManager Administration page go to the Service menu and select Service Parameters. From the drop-down box, select the server you wish to change. In the second drop-down box, select the service:Cisco CallManager. In the Cluster Wide Parameters ( Device - H323) section, under the Send H25User Info Message selection, verify that the box for No Ringback is not checked and the box for User Infro for Ring Back Tone is checked.
On a phone call from an IP station through a Cisco IOS voice gateway, only one party receives audio (one-way communication). On a toll-bypass call between two Cisco gateways, only one party receives audio (one-way communication).
The causes for one-way audio or no audio in IP telephony can be varied, however the root of the problem is usually related to IP routing issues. For one-way audio, pay attention to which direction is experiencing the audio loss. Check the following topics if you are experiencing this issue:
Ensuring IP Routing Is Enabled on Cisco IOS Gateways, page 338 Checking Basic IP Routing, page 339 Binding the H.323 Signaling to a Specific IP Address, page 339 Checking That Answer Supervision Is Being Sent and Received Correctly From the Telco or Switch, page 340 Using the voice rtp send-recv Command to Establish Early Two-Way Audio, page 340 Checking cRTP Settings on a Link-by-Link Basis, page 340 Verifying Minimum Software Level for NAT on Cisco IOS Gateways, page 341 Disabling voice-fastpath on Cisco AS5350 and Cisco AS5400 Universal Gateways, page 341 Configurinng the VPN IP Address with SoftPhone, page 341 Verifying One-Way Audio, page 342
338
Router(config)#ip routing
Default gateways configured at the end stations IP routes on the default gateways, mentioned above, leading to the destination networks
Cisco IP Phone 7910Press Settings, select option 6, push volume down until the Default Router field shows up. Cisco IP Phone 7960/40Press Settings, select option 3, scroll down until the Default Router field shows up. Cisco IP Phone 2sp+/30vipPress **#, then press # until gtwy= shows up.
Note
If you are using the Cisco IP SoftPhone application and more than one NIC (network interface card) is installed in the box, make sure the box sources the correct NIC. This issue is often present in IP SoftPhone software Version 1.1.x.
Note
If you are using Cisco DT24+ gateways, check the DHCP scope and make sure there is a default gateway (003 router) option in the scope. The 003 router parameter is what populates the Default Gateway field in the devices and PCs. Scope option 3 should have the IP address of the router interface that is doing routing for the gateway.
339
Caution
A bug exists in Cisco IOS Release 12.2(6) where this solution can actually cause a one-way audio problem. For more information, refer to bug ID CSCdw69681 in Cisco Software Bug Toolkit (registered customers only).
Checking That Answer Supervision Is Being Sent and Received Correctly From the Telco or Switch
In an implementation that has a Cisco IOS gateway connected to a telco or switch, verify that answer supervision is being sent correctly when the called device answers the call from behind the switch. Failure to receive answer supervision causes the Cisco IOS gateway to fail cut through (open) the audio path in a forward direction, causing a one-way voice. A workaround is to configure voice rtp send-recv on. For more information, see the next section, Using the voice rtp send-recv Command to Establish Early Two-Way Audio.
Using the voice rtp send-recv Command to Establish Early Two-Way Audio
The voice path is established in the backward direction as soon as the RTP stream is started. The forward audio path is not cut through until the Cisco IOS gateway receives a connect message from the remote end. In some cases it is necessary to establish a two-way audio path as soon as the RTP channel is opened, before the connect message is received. To achieve this, use the voice rtp send-recv global configuration command.
Until Cisco IOS software Release 12.0.5T, cRTP is process-switched. In Cisco IOS software Release 12.0(7)T through Cisco IOS Release 12.1(1)T, fast- and Cisco-express forwarding (CEF)-switching support for cRTP are introduced. In Cisco IOS software Release 12.1(2)T, algorithmic performance improvements are introduced.
If you are running cRTP using Cisco IOS Release 12.1, verify that bug CSCds08210 does not affect your Cisco IOS version (VoIP and fax not working with RTP header compression on).
340
Note
If your Cisco CallManager is using a TCP port for skinny signaling different from the default port (2000), you need to adjust the NAT router with the ip nat service skinny tcp port number global configuration command. The minimum software level required for using NAT and skinny simultaneously on a PIX firewall is Release 6.0.
Note
These levels of software do not necessarily support all of the RAS messages necessary for full gatekeeper support. Gatekeeper support is outside the scope of this document.
341
Mar 3 23:46:23.690: ****** cut through in FORWARD direction ***** XXXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXr XrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXr XrXrXXrrrrrrrrrrrrrrrr Router# Router# !--- This is an example of an answered call: Router# Router# *Mar 3 23:53:26.570: ****** cut through in FORWARD direction ***** XXXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXr XrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXrXr XXrrrrrXrXrXrXrXrXrXrXrXrXrXrXrrXXrrXrXrXrXrXrXXXXXXXXXXXXXXXXrXXXXXXXXrXrXrXXrrXr XrXrXrXrXrXrXrXrXXrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr !-- At this point the remote end picks up the phone. *Mar 3 23:53:30.378: ****** cut through in BOTH direction ***** XRXRXRXRXRXRXRXRXXRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRXRXRXRXRXRXRXR XRXRXRXRXRXRXRXRXRXRXRXRXRXRXXRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRXRXRXRXRXR XXRRXRXRXXRRXRXRXRXRXXRXRXRXRXRXRRXRXXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXR XRXRXRXRXRXRXRXRXRXRXRXRXRXRXRRRRRRRRRRRRRRRRRRRRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXR XRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXXRRRRRRRRRRRRRRRRRRRRRRRRRRRRXRXRXRXRXRXRXRXRXRXR XRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR RRRRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRRXXRXRXRXRXRXRRXRXRXRXRXRXRXRXR XRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXXRRRRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXR XXRRRRRRRRRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXR XRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXRXR XRXRXRXRXRXRXRXRXRXRXRXRXXRRRXR !-- End of conversation.
The system administrator can manually place a specific CIC on the target TG in test mode. The TCL script in OGW can specify a destination CIC or DS0 number.
342
This circuit number can then be carried to the terminating gateway. The TGW can override any local circuit selection configured and use the specified circuit number for the outgoing call.
Route Server
The administrator can configure parameters, termination trunk group, and destination gateway IP address in the route server. The route server detects this test call by the Test Call source trunk group label, bypasses the normal routing logic, and routes the call directly to a specified trunk group based on the configured destination (gateway IP address plus trunk group label). All trunk group members (GW IP address plus trunk group label) in a trunk group will be displayed in the route server routing hierarchy and the test call person can select any trunk requisite. The group member can be specified as the destination so that the test call can be routed to a specific destination trunk group label on a specific gateway. A test call syslog is generated in the route server. This syslog covers the route information (incoming carrier ID/trunk group ID/trunk group number, outgoing carrier ID/trunk group ID/trunk group number), the IP address of the destination gateway, and the called number, and can be browsed from its GUI web. Because the ARQ message sent from the test station OGW will not have any GTD payload, the route server builds a GTD if the Termination trunk group is ISDN/ISUP/R2. The route server also sends the same format of the currently used route descriptor to the test station OGW.
TCL Script
TCL scripts in the OGW send the route descriptor to the mediation server for accounting purposes. TCL scripts in the OGW override the GTD CPC value received from the route server with the configured value. The configured value may be changed using the application, service, and paramspace command structure shown in the Sample Tasks section on page 346.
TCL scripts in the OGW insert the termination CIC port number in the outgoing H225 Setup message. The TCL script in the OGW handles two-stage calls. If the call is originated from the test call trunk group, the TCL script in the OGW parses the dialed digits to identify the delimiter and split the dialed digits to the E164 number and CIC number.
Limitations
Test-mode status maintained within the gateway is reset if any interface is added or removed from the trunk group. If the DS0 is placed in test mode, it is not selected for nontest calls. The system administrator must reset the DS0 from the test mode.
343
The test mode configuration is not saved for reloads. Once the gateway reloads, the test mode configuration is lost. The administrator has to place the CIC in test mode again to place a test call.
In some SS7 networks, the signaling on the terminating switch can override the local channel selection. In such cases, there is no guarantee that the test call will be placed on that specified channel. The number of the DS0 or CIC in test-mode status does not affect the call capacity update to the H323 client. When a DS0 or channel is placed in test-mode, the trunk group circuit selection algorithm avoids using the channel for outgoing nontest calls. But if call routing on the gateway is not based on the trunk group or carrier-ID, then this channel may be used. Similarly, the DS0 or channel is not guaranteed to be reserved if the gateway supports hybrid routing (some calls are based on the trunk group or carrier-ID routing and some calls not) Placing a DS0 or channel in test mode would only guarantee that no new outgoing calls will be placed on the DS0 in the trunk. However, no control is exercised on existing calls or incoming calls in that channel. To clear the existing call through the channel (if desired), enter this command: clear call voice causecode cause id callID
All incoming calls through the channel in test mode will not be rejected. It is up to the terminating switch to correspondingly place the channel in test mode and avoid sending calls through this channel.
Feature Limitations
The Test Call feature allows the Tcl script in the OGW to send the CIC number for Test Call to the TGW. If the corresponding DS0 is not placed in test mode, the trunk selection API would make a best-effort attempt to select the corresponding CIC or DS0 number if it is free and would continue with the test call setup. The CIC number is carried in H225 Setup message H323 V4 field. Thus this feature would work only in H323v4 networks, The test call feature is not supported in SIP and H323 v2 networks.
In the syntax, the set-tgCic keyword is used to set the test mode, and the reset-tgCic is used to reset from test mode. To display the mapping of trunk groups to sequential CIC numbers, use the modified show trunk group command. A new keyword cic has been added:
gateway# show trunk group tg-label [cic]
In the syntax, the new cic keyword displays the mapping of trunk group DS0 numbers to sequential CIC numbers. A sample output follows:
gateway# show trunk group 1 cic
344
gateway# show trunk group trunk group: 1 Description: trunk group label: 1 Translation profile (Incoming): Translation profile (Outgoing): Hunt Scheme is least-used Max Calls (Incoming): NOT-SET (Any) Max Calls (Outgoing): NOT-SET (Any) Retries: 0 Trunk Se3/0:23 Preference DEFAULT Member Timeslots : 1-24 Total channels available : Data = 0, Voice = 0, Modem Trunk Se5/1:23 Preference DEFAULT Member Timeslots : 1-24 Total channels available : Data = 0, Voice = 0, Modem Test mode = 1 Testmode Timeslot(s) : 19
50 (Voice) 50 (Voice)
12 = 0, Pending = 0, Free = 12
Total calls for trunk group: Data = 0, Voice = 0, Modem = 0 Pend = 0, Free = 35 advertise_flag 0x00000040, capacity timer 25 sec tripl_config_mask 0x00000000 AC_curr 35, FD_curr 0, SD_curr 0 succ_curr 7 tot_curr 7 succ_report 7 tot_report 7 changed 1 replacement position 0
345
Sample Tasks
The following is a sample set of tasks, showing the existing and new or modified CLI that enables the test call feature. This sample is provided for reference purposes only.
Originating Analog Gateway Configuration
Step 1
Step 2
Step 3
Step 4
Dial-peer configuration:
dial-peer voice 1025 pots trunkgroup 41001 service mkyuss destination-pattern 2015550100 trunk-group-label source 41001 dial-peer voice 1000 voip destination-pattern 2015550... session target ras incoming called-number 2015551... dtmf-relay h245-alphanumeric codec g711ulaw no vad
Gateway configuration:
346
trunk group 41001 max-retry 1 hunt-scheme sequential both up ! ! ! controller E1 3/0 ds0-group 0 timeslots 1-15,17-31 type e&m-immediate-start cas-custom 0 trunk-group 41001 ! dial-peer voice 1025 pots trunkgroup 41001 service mkyuss destination-pattern 2015550100 ! dial-peer voice 1000 voip destination-pattern 2015550... session target ras incoming called-number 2015551... dtmf-relay h245-alphanumeric codec g711ulaw no vad
Step 2
Step 3
Troubleshooting Gatekeepers
An H.323 gatekeeper is an H.323 entity on the LAN that provides address translation and controls access to the LAN for H.323 terminals, gateways, and MCUs. Gatekeepers are optional nodes that manage endpoints in an H.323 network. The endpoints communicate with the gatekeeper using the RAS protocol. Endpoints attempt to register with a gatekeeper on startup. When an endpoint wishes to communicate with another endpoint, it requests admission to initiate a call using a symbolic alias for the endpoint, such as an E.164 address or an e-mail address. If the gatekeeper decides that the call can proceed, it returns a destination IP address to the originating endpoint. This IP address might not be the actual address of the destination endpoint; it might be an intermediate address, such as the address of a proxy or a gatekeeper that routes call signaling.
Note
Although the gatekeeper is an optional H.323 component, it must be included in the network if proxies are used. The following topics are addressed:
347
Troubleshooting H.323 Gatekeeper Call Routing and Dial Peers, page 352 Troubleshooting H.323 Gatekeeper Bandwidth, page 353 Checking Cisco Gateway Failover to Alternate Gatekeeper, page 356 Troubleshooting Issues with Alternate Endpoints, page 358 Troubleshooting Gatekeeper Endpoint Call Admission Issues, page 359 Troubleshoot Load Balancing, page 365 Gateway-to-Gateway and Gatekeeper-to-Gateway Security, page 365
For more information about H.323 gatekeepers, refer to Understanding H.323 Gatekeepers, document 5244.
Related Commands
This section describes some show and debug commands to assist you while troubleshooting the issue.
The following example shows normal output of this command if an endpoint is not registered.
gatekeeper# show gatekeeper endpoint GATEKEEPER ENDPOINT REGISTRATION ================================ CallSignalAddr Port RASSignalAddr Port Zone Name Type Flags -------------- ----- ------------- ---- --------- ---- ----Total number of active registrations = 0
348
show gateway
Use this gateway command to verify the registration status of the gateway to a gatekeeper. The following example shows the common output of this command if the gateway is registered to a gatekeeper.
Router# show gateway Gateway Router/ww is registered to Gatekeeper gk Alias list (CLI configured) E164-ID 2073418 E164-ID 5251212 H323-ID Router Alias list (last RCF) E164-ID 2073418 E164-ID 5251212 H323-ID Router H323 resource thresholding is Disabled
The following example shows the common output of this command if the gateway is not registered to a gatekeeper.
Router#show gateway Gateway Router is not registered to any gatekeeper Alias list (CLI configured) E164-ID 2073418 E164-ID 5251212 H323-ID Router/ww Alias list (last RCF) H323 resource thresholding is Disabled
349
Reject Reasons
When a gatekeeper is not performing registration correctly, reject reasons (RRJs) can appear in debug commands. This section describes some common reject reasons. Before running the debugs, verify that the gatekeeper is enabled:
gatekeeper zone local gk cisco.com no shutdown
The gateway is not registered if there are no debug ras and debug h225 ans1 outputs from the gateway. The show gatekeeper endpoint and show gateway commands indicate that no gateway is registered. Check the gateway for the following:
This is usually the result of the gateway registering a duplicate of an E164-ID or H323-IDanother gateway has already been registered to the gatekeeper. If it is a duplicated E164-ID, change the destination pattern configured under a POTS dial-peer associated with an FXS port. If it is a duplicated H323-ID, change the gateway's H.323 ID under the H.323 VoIP interface.
This is the result of the gateway subnet being disabled in the gatekeeper. Check the gatekeeper configuration. The following configuration likely appears. If so, removing the no zone subnet gk command resolves the issue. To remove the command completely, remove the zone local gk command.
gatekeeper zone local gk cisco.com no zone subnet gk 172.16.13.0/27 enable
350
This RRJ is the result of the security commands being enabled in the gatekeeper, and the inability of the gateway to match the H.323-ID, E.164-ID, passwords, or security token that the gatekeeper requires. To resolve the issue, check the securiy configuration in the gatekeeper. For further information on security, refer to Understanding H.323 Gatekeepers, document 5244. If the security h323-id command is enabled, make sure the gatekeeper has been configured as follows:
username Router password 0 ww gatekeeper zone local gk cisco.com no zone subnet gk 172.16.13.0/27 enable zone prefix gk 5* security h323-id security password separator / gw-type-prefix 510#* default-technology no shutdown
Note
Make sure the gateway does not have the following command configured:
gateway security password 010411 level endpoint
If security E164 is enabled, make sure the gatekeeper has been configured as follows:
username 5551212 - E164 address the gateway tries to registered to gatekeeper gatekeeper zone local gk cisco.com no zone subnet gk 172.16.13.0/27 enable zone prefix gk 5* security E164 gw-type-prefix 510#* default-technology no shutdown
If security token is enabled, make sure the gatekeeper has been configured as follows:
351
gatekeeper zone local gk cisco.com no zone subnet gk 172.16.13.0/27 enable zone prefix gk 5* security token required-for registration gw-type-prefix 510#* default-technology no shutdown
Note
Make sure the gatekeeper has been configured properly with the AAA and RADIUS, and that both the gatekeeper and gateway are pointing to the same NTP server.
The RRJ is the result of a no-zone prefix defined in the gatekeeper. Check the configuration on the gatekeeper and add the zone prefix with the proper E.164 address. You should check the following Cisco IOS defects in CSCdu78917. Configure the gatekeeper as follows:
! gatekeeper zone local gk-A cisco.com zone prefix gk-A 2000* zone prefix gk-A 3000* zone prefix gk-A 4000* no shutdown !
For more information, refer to Troubleshooting Gatekeeper Registration Issues, document 22378.
352
The following is a list of useful show and debug commands used to verify and troubleshoot gatekeeper and gateway call routing issues. Certain show commands are supported by the Output Interpreter (registered customers only) tool, which allows you to view an analysis of show command output.
show gatewayUsed to verify E.164 and H.323 alias registration for the gateway show gatekeeper endpointsUsed to verify the E.164 and H.323 alias registered with the gatekeeper show gatekeeper gw-type-prefixUsed to verify E.164 prefix registrations on the gatekeeper show gatekeeper zone prefix | statusUsed to verify zone status and configuration parameters debug rasApplicable for gateways and gatekeepers debug debug h225 asn1Applicable for gateways and gatekeepers show dial-peer voiceUsed to verify configured technology prefixes under the dial-peers
For detailed information about troubleshooting gateway dial peer issues, refer to Understanding Cisco IOS Gatekeeper Call Routing, document 24462.
Note
Cisco has implemented only the function of reporting any bandwidth changes when codecs change. See the How BRQ Is Triggered from the Gateway to Notify the Gatekeeper to Reduce Call Bandwidth section on page 356 for more information. The need to support these messages is based on bandwidth management. The gatekeepers can also use a null function that accepts all requests for bandwidth changes. In other words, the gatekeeper can either use these messages to manage bandwidth (by allowing or rejecting requests) or just ignore them.
353
Available bandwidth = (total allocated bandwidth) (bandwidth used locally) (bandwidth used by all alternates). If the available bandwidth is sufficient for the call, an Admission Confirmation (ACF) is returned, otherwise an Admission Rejection (ARJ) is returned. Voice gateways should consider codec, Layer 2 encapsulation, and compression features (such as cRTP) when requesting bandwidth from the Cisco gatekeeper. Sometimes these features are not defined at the time of call setup, in which case a bandwidth change request can be issued to the gatekeeper after call setup to adjust the amount of bandwidth used by the call.
The maximum bandwidth for all H.323 traffic between the local zone and a specified remote zone. (If desired, this configuration can be repeated individually for each remote zone.) The maximum bandwidth allowed for a single session in the local zone (typically used for video applications, not for voice). The maximum bandwidth for all H.323 traffic allowed collectively to all remote zones.
bandwidth {interzone | total | session} {default | zone zone-name} max-bandwidth bandwidth remote max-bandwidth
These configured values are used for processing ARQs and BRQs. For an ARQ, the Cisco gatekeeper deducts the bandwidth specified in the message from the appropriate zone counters and/or remote counters. If this causes any counter to go negative, then the call is denied and an ARJ response is sent with the reason ARJ_REQ_DENIED. If the request is for a zone that has a maximum session bandwidth specified, then the request is validated against this value. If the call request exceeds this bandwidth, then the Cisco gatekeeper returns an ACF with the bandwidth set to the maximum session bandwidth. It is up the endpoint to continue or reject the call. For a BRQ requesting a bandwidth increase, the Cisco gatekeeper validates the request against the zone and/or remote. If the validation fails, then a BRJ response is sent with a reason of BRJ_INSUFFICIENT_RSC and a specification of the maximum amount of bandwidth allowed.
Router domainB.com 172.16.13.41 1719 LS BANDWIDTH INFORMATION (kbps) : Maximum total bandwidth : 512 Current total bandwidth : 128 Current total bandwidth (w/ Alt GKs) : 128 Maximum interzone bandwidth : 512 Current interzone bandwidth : 128 Current interzone bandwidth (w/ Alt GKs) : 128 Maximum session bandwidth : 512 SUBNET ATTRIBUTES :
354
All Other Subnets : (Enabled) PROXY USAGE CONFIGURATION : Inbound Calls from all other zones : to terminals in local zone Router : use proxy to gateways in local zone Router : do not use proxy to MCUs in local zone Router : do not use proxy Outbound Calls to all other zones : from terminals in local zone Router : use proxy from gateways in local zone Router : do not use proxy from MCUs in local zone Router : do not use proxy gka-1 domainA.com 172.16.13.35 1719 RS
Enter the show gatekeeper zone cluster command to display the bandwidth information, in case the gatekeeper is part of a cluster.
Router# show gatekeeper zone cluster LOCAL CLUSTER INFORMATION ========================= TOT BW INT BW LOCAL GK NAME ALT GK NAME PRI (kbps) (kbps) ------------- ------------- ----------Router gkb-2 0 0 0
Enter the show gatekeeper calls command to display the active calls permitted by that gatekeeper and how much bandwidth each call is using.
Router# show gatekeeper calls Total number of active calls = 1. GATEKEEPER CALL INFO ==================== LocalCallID Age(secs) BW 3-63466 9 128(Kbps) Endpt(s): Alias E.164Addr src EP: gwa-1 4085272923 Endpt(s): Alias E.164Addr dst EP: gwb-1 3653 CallSignalAddr Port RASSignalAddr Port 172.16.13.23 1720 172.16.13.23 54670
The Cisco gatekeeper verifies the request by the endpointIdentifier to locate the endpoint in the registration database. The Cisco gatekeeper locates the call record by using the callReferenceValue to find a call associated with the endpoint with the same callReferenceValue. If the gatekeeper locates the call record, it then computes the change in bandwidth, then adds or subtracts from the global zone bandwidth, as necessary. It does the same for any proxy or gateway resources in use. The Cisco gatekeeper sends a BCF or BRJ back to the endpoint, depending on success or failure.
4.
355
How BRQ Is Triggered from the Gateway to Notify the Gatekeeper to Reduce Call Bandwidth
With unidirectional bandwidth, calls were always reported to require a bandwidth of 64 kbps, which is the unidirectional bandwidth for a Cisco G.711 codec. If the endpoints in the call chose to use a more efficient codec, this was not reported to the Cisco gatekeeper. In the version of the Cisco H.323 gateway in Cisco IOS Release 12.2(2)XA or later (which conforms with H.323 version 3), the reported bandwidth is bidirectional. Initially, 128 kbps is reserved. If the endpoints in the call select a more efficient codec, the Cisco gatekeeper is notified of the bandwidth change. To use the reported bandwidth behavior used prior to Cisco IOS Release 12.2(2)XA for zone bandwidth management, configure the Cisco H.323 gateway with the following command in global configuration mode:
Router(config-gateway)# emulate cisco h323 bandwidth }
For more information about gatekeeper bandwidth management, refer to Troubleshooting and Understanding Cisco Gatekeeper Bandwidth Management, document 18731.
356
down after the gateway has registered with it, the gateway loses keepalive messages from the primary gatekeeper. After missing three consecutive keepalive messages, the gateway declares the primary gatekeeper down, and it starts the registration process again.
Once a gatekeeper that is configured to be part of a cluster comes on line, it opens a TCP port for listening for incoming connections for the GUP. Then it announces its presence by sending a GRQ message on a periodic basis. The default period is 30 seconds and is configurable through the gatekeeper CLI timer cluster-element announce command. This GRQ message contains nonstandard data for each alternate gatekeeper. This nonstandard data is an indicator to the alternates that the GRQ is really not a GRQ at all, but rather is just an announcement message. Inside the GRQ message, the gatekeeper indicates the port number that it has open for listening for the GUP protocol. Upon receiving a GRQ from the new gatekeeper, other gatekeepers in the cluster open TCP channels to that port. GUP GRQ messages can be one of the following: announcementIndication, announcementReject, registrationIndication, unregistrationIndication, and resourceIndication. The announcement indication also carries information about the bandwidth utilization for the zone. This allows the alternate gatekeepers to properly manage the bandwidth for a single zone, even though the gatekeepers are in separate physical devices. To verify whether the alternate gatekeepers are properly communicating or not, use the flowing show gatekeeper zone cluster command. This command also reports the bandwidth information for the alternate gatekeepers. The gatekeeper acts as if the alternate gatekeeper has failed (and assumes any previously allocated bandwidth is now available), if the gatekeeper does not receive an announcement message within six announcement periods, or if the TCP connection with the gatekeeper is detected as broken. With six announcement periods every 30 seconds, the time is 3 minutes, which equates to what we are assuming to be the average length of a call. It should then be fairly safe to assume that bandwidth has been freed. After the 3 minutes, this gatekeeper declares its alternate as down and sends out an update to notify all of its registered endpoints that there is no alternate gatekeeper. When an endpoint registers/unregisters with a gatekeeper in a cluster, that gatekeeper uses the registrationIndication/unregistrationIndication message to update all other gatekeepers in that cluster about this change. If an endpoint reported a resource change using resource availability indicator (RAI) to a gatekeeper in a cluster, that gatekeeper reports the change to all alternate gatekeepers in that cluster by using the GUP message resourceIndication. The GUP messages are needed for the gatekeeper in a cluster to have sufficient knowledge about every endpoint in the zone (registration, bandwidth, active calls, resources) to be able to resolve all queries locally. When an endpoint is switched from one gatekeeper to an alternate, the alternate needs to learn about the calls that are active on the endpoint. When a gatekeeper sends an RCF for a new registration, it also sends an IRQ to get a list of all calls on the endpoint. It is important to ensure that the IRQ does not reach the endpoint before the RCF.
357
Gatekeepers in a cluster permit a shutdown, even though there are active calls, as long as there is an alternate gatekeeper defined for all zones for which there are active calls. If any zone has an active call and no alternate gatekeeper defined, the gatekeeper refuses the shutdown. Alternate gatekeepers accept any Disconnect Requests (DRQs) for calls they were not aware of and pass appropriate information to the Authentication, Authorization, and Accounting (AAA) and Cisco Gatekeeper Transaction Message Protocol (GKTMP) servers. This happens when that endpoint moved to the alternate gatekeeper while there were active calls. In addition, IRR messages may be sent that contain call information for calls that were not previously known. For those IRRs, call records are constructed and bandwidth is allocated accordingly. The gatekeeper creates a unique announcementIndication message for each alternate gatekeeper. If an alternate gatekeeper receives a message that contains a gatekeeper identifier it does not recognize (which might happen if the alternate gatekeeper is an alternate for one zone), but not another, that information is simply ignored. However, the alternate gatekeeper detects errors in the configuration of the alternates by examining those messages and it reports those errors to the user. The true power of the GUP is realized in the resolving of addresses for a remote zone. Instead of the remote zone needing to send LRQs (either in sequence or blast) to all the gatekeepers, thus increasing the messaging overhead on wide-area links, it now needs to send this query to just one of the gatekeepers in the cluster. Coupled with the zone cluster remote command, it can round-robin between the gatekeepers in the cluster and not attempt to send LRQs to other gatekeeper in the cluster if it receives a reject from any one. In case a gateway was moved to an alternate gatekeeper, it always tries to register to that gatekeeper unless you issue a no gateway and then a gateway command. When the endpoint's primary gatekeeper is back online, the endpoint does not reregister to it unless the endpoint lost communication with the alternate gatekeeper. It continues to use the alternate gatekeeper for its call routing information.
For more information, refer to Troubleshooting GUP, Alternate Endpoint and Load Balancing, document 18730.
The gateway is down and gatekeeper is not aware of it at the time of sending the ACF or LCF. There are no resources on the gateway and that was not reported to the gatekeeper. There was an incorrect configuration on the main endpoint.
Note
The originating endpoint tries to contact the alternate gatekeepers only if the call fails before the alert stage (alert or progress). If the calls fails due to user busy or no answer, the originating endpoint does not try any other alternates. The gatekeeper learns about the alternate for a certain endpoint either by manual configuration using the gatekeeper endpoint alt-ep command or from any received RAS messages. Cisco supports a maximum of 20 alternates for each endpoint, no matter how the gatekeeper learns about them. Here are some issues you need to consider:
If the gatekeeper has the correct alternate endpoint as desired. If the gatekeeper includes the alternate endpoints in its LCF or ACF RAS messages.
358
If the OGW tries to contact the alternates in case the main destination endpoint fails.
Verify that the gatekeeper has the correct alternate endpoints. To see if the gatekeeper has the right alternate endpoints, use the show gatekeeper endpoints alternates command. Verify that the gatekeeper includes alternate endpoints in its LCF or ACF RAS messages. To see if the gatekeeper sends the IP address for alternate endpoints, you can turn on debug h225 asn1 and look at the ACF message or LCF. Verify that the OGW tries to contact alternates in case the main destination endpoint fails. Debugs to turn on here are debug voip ccapi inout and debug h225 asn1. Check how the OGW reacts upon receiving alternate endpoints in its ACF message.
For more information, refer to Troubleshooting GUP, Alternate Endpoint and Load Balancing, document 18730.
359
If the ACF has an IP address of the terminating endpoint, remove the gatekeeper and make a direct endpoint-to-endpoint call to see if a call can be established.
This is a common reason for rejection. It is captured from the local or originating gatekeeper when the gatekeeper has no information on where the called number should be terminated. There are two ways this problem can occur. One reason is that the call terminates at a gateway, and the gateway is not registered with the E.164 address or with a tech-prefix. To resolve this, make sure the gateway is registered with a tech-prefix to the gatekeeper. The following is a corrected gateway configuration example.
interface Ethernet0/0 ip address 172.16.13.16 255.255.255.224 half-duplex h323-gateway voip interface h323-gateway voip id hwei-gk ipaddr 172.16.13.14 1718 h323-gateway voip h323-id gw2 h323-gateway voip tech-prefix 2 . ! voice-port 2/0/0 ! voice-port 2/0/1 ! voice-port 2/1/0 station-id name BLARG caller-id enable ! voice-port 2/1/1 ! dial-peer cor custom ! dial-peer voice 456 pots destination-pattern 456 port 2/1/0 ! dial-peer voice 123 pots destination-pattern 2415... port 2/1/1 ! gateway "show gatekeeper gw" from gatekeeper GATEWAY TYPE PREFIX TABLE ========================= Prefix: 1* Zone hwei-gk master gateway list: 172.16.13.35:1720 gw1
360
A second possible explanation for this error message arises if the called party is a terminal in a remote zone. It might be that the terminal does not have a proxy enabled in the same gatekeeper zone where it is registered. By default, a Cisco IOS gatekeeper uses a proxy for inter-zone terminal calls. Issue the show gatekeeper zone status command to view the proxy. Either configure a proxy register to the same local zone as the terminal or issue the no use-proxy hwei-gk default inbound-to terminal command or the no use-proxy hwei-gk default outbound-from terminal command to disable the use of a proxy for terminal calls.
Note
The rejection shown here comes about because the endpoint-requested bandwidth exceeds the limit configured in the gatekeeper. To resolve this, increase the bandwidth in the gatekeeper using the bandwidth command under the gatekeeper mode, or lower the bandwidth request from the endpoint. The following example shows a call that failed because the bandwidth request exceeded the configured limit:
Value RasMessage ::= admissionRequest : { requestSeqNum 11084 callType pointToPoint : NULL callModel gatekeeperRouted : NULL endpointIdentifier {"6284945400000058"} destinationInfo { e164 : "415525", e164 : "415525" } srcInfo { e164 : "415526", h323-ID : {"hwei-term"} } srcCallSignalAddress ipAddress : { ip '0AAAC837'H port 1720 } bandwidth 102400 !--- Requested bandwidth was 10240 K. callReferenceValue 1022 conferenceID '37CE425F850A41468B40D72F145C5C14'H activeMC FALSE answerCall TRUE canMapAlias FALSE
361
callIdentifier { guid '4138E0D40EF0D14C9DB84E54F5190BF4'H } gatekeeperIdentifier {"hwei-gk"} willSupplyUUIEs FALSE } *Mar 1 10:34:46.093: ARQ (seq# 11084) rcvd *Mar 1 10:34:46.093: gk_rassrv_arq: arqp=0x62905E20, crv=0x3FE, answerCall=1 *Mar 1 10:34:46.093: RAS OUTGOING PDU ::= value RasMessage ::= admissionReject : { requestSeqNum 11084 rejectReason requestDenied : NULL } !--- The show gatekeeper zone status command is issued and it shows the !--- bandwidth limit is much smaller then the requested bandwidth. GATEKEEPER ZONES ================ HWEI-GK name Domain Name RAS Address PORT FLAGS ------------------------------- ----hwei-gk BANDWIDTH Maximum Current Maximum Current Maximum .. hwei-gk1 cisco.com 172.16.13.14 1719 LS INFORMATION (kbps) : total bandwidth : total bandwidth : 0 interzone bandwidth : 4000 _-----limit was 4000K interzone bandwidth : 0 session bandwidth :
cisco.com
172.16.13.37
1719
RS
For more information about VoIP bandwidth consumption, refer to Voice Over IP - Per Call Bandwidth Consumption, document ID 7934. If this rejection reason is offer but there is no bandwidth issue, see if the called party is a terminal and if there is a proxy registered to the local zone. Issue the show gatekeeper zone status command to do that. Either configure a proxy register to the same local zone as the terminal or issue the no use-proxy hwei-gk default inbound-to terminal or no use-proxy hwei-gk default outbound-from terminal command to disable the use of a proxy for terminal calls.
Verification Commands
This section describes a few show commands and debugs that can help you verify the configuration required on the gatekeeper and the gateway. Sample show command outputs are included. Certain show commands are supported by the Output Interpreter tool, which allows you to view an analysis of show command output; a link to this tool can be found in the Troubleshooting Resources chapter.
show gatekeeper endpoint Command
The show gatekeeper endpoint command is used to verify the endpoints registration status with the gatekeeper. The normal outputs of this command are shown in the following example.
gatekeeper# show gatekeeper endpoint
362
GATEKEEPER ENDPOINT REGISTRATION ================================ CallSignalAddr Port RASSignalAddr Port Zone Name --------------- ----- --------------- ----- --------172.16.13.35 1720 172.16.13.35 50890 hwei-gk E164-ID: 2073418 E164-ID: 5251212 H323-ID: Router Total number of active registrations = 1 !--- The endpoint is registered. Gatekeeper# show gatekeeper endpoint GATEKEEPER ENDPOINT REGISTRATION ================================ CallSignalAddr Port RASSignalAddr Port Zone Name --------------- ----- --------------- ----- --------Total number of active registrations = 0 !--- The endpoint is not registered.
Type ----
Flags ----VOIP-GW
Type ----
Flags -----
The show gatekeeper gw command is used to verify the endpoints registration status for the tech prefix. The common outputs of this command are shown in the following example.
Gatekeeper# show gatekeeper gw GATEWAY TYPE PREFIX TABLE ========================= Prefix: 1* Zone hwei-gk master gateway list: 172.16.13.35:1720 gw1
The show gatekeeper zone status command is used to display the local zone status and the remote zone information, as shown in the following example.
2611-3# show gatekeeper zone status GATEKEEPER ZONES ================ HWEI-GK name Domain Name RAS Address PORT FLAGS ------------------------------- ----hwei-gk cisco.com 172.16.13.14 1719 LS BANDWIDTH INFORMATION (kbps) : Maximum total bandwidth : Current total bandwidth : 0 Maximum interzone bandwidth : 4000 Current interzone bandwidth : 0 Maximum session bandwidth : SUBNET ATTRIBUTES : All Other Subnets : (Enabled) PROXY USAGE CONFIGURATION : Inbound Calls from all other zones : to terminals in local zone hwei-gk : use proxy to gateways in local zone hwei-gk : do not use proxy to MCUs in local zone hwei-gk : do not use proxy Outbound Calls to all other zones : from terminals in local zone hwei-gk : use proxy from gateways in local zone hwei-gk : do not use proxy from MCUs in local zone hwei-gk : do not use proxy hwei-gk1 cisco.com 172.16.13.37 1719 RS
363
The show gateway command is used to verify the registration status with a gatekeeper. The common outputs of this command are shown in the following example:
Router# show gateway Gateway Router/ww is registered to Gatekeeper hwei-gk Alias list (CLI configured) E164-ID 2073418 E164-ID 5251212 H323-ID Router Alias list (last RCF) E164-ID 2073418 E164-ID 5251212 H323-ID Router H323 resource thresholding is Disabled !--- The gateway is registered to gatekeeper (hwei-gk). Router# show gateway Gateway Router is not registered to any gatekeeper Alias list (CLI configured) E164-ID 2073418 E164-ID 5251212 H323-ID Router/WW Alias list (last RCF) H323 resource thresholding is Disabled !--- The gateway is not registered to the gatekeeper.
The debug h225 asn1 command is the gatekeeper and Cisco gateway debug command. In this document, you are looking only for the ARJ field and searching for the rejection reason. The following example is a sample output showing the ARJ field. Output from gateway:
*Mar 26 04:12:38.508: RAS INCOMING PDU ::= value RasMessage ::= admissionReject : { requestSeqNum 34 rejectReason calledPartyNotRegistered : NULL }
364
When the threshold is met, the gatekeeper uses the RRJ RAS message to inform the endpoint about the alternate gatekeepers and the reject reason. Upon receiving that message, the endpoint sends a new RRQ to the alternate gatekeeper. Once the endpoint is registered with the alternate gatekeeper, it uses the GUP message to inform all gatekeepers in the cluster about the new registered endpoint. When troubleshooting, check the configuration on the gatekeeper and make sure that alternate gatekeepers and load balancing are functional. To debug the load balancing feature, use debug gatekeeper load and debug h225 asn1 to see how the gatekeeper reacts when the threshold is met. For more information, refer to Troubleshooting GUP, Alternate Endpoint and Load Balancing, document 18730.
Intradomain Gateway to Gatekeeper Security This security is based on H.235, in which H.323 calls are authenticated, authorized, and routed by a gatekeeper. The gatekeeper is considered a known and trusted entity. The gateway does not authenticate it when the gateway tries to register with it. Interdomain Gatekeeper to Gatekeeper Security This security covers authenticating and authorizing of H.323 calls between the administrative domains of Internet Telephone Service Providers (ITSPs) using InterZone Clear Token (IZCT). This document covers only the portion of a call where the terminating gatekeeper sends a token in its location confirmation (LCF) message so that it authenticates the answerCall Admission Request (ARQ). Location request (LRQ) validation is not included in this feature. LRQ validation is a feature scheduled for a future Cisco IOS release.
365
366
Note
Call flows can help in troubleshooting SIP problems. SIP call flow information can be found in the Session Initiation Protocol Gateway Call Flows document. This chapter contains the following information:
Troubleshooting the Cisco SIP IP Phone 7960, page 367 Troubleshooting the Cisco SIP Gateway, page 371 Troubleshooting the Cisco SIP Proxy Server, page 386 SIP Messages and Methods, page 388
Troubleshooting Features
The following is a list of features on the Cisco SIP IP phone that you can use for troubleshooting:
Settings button to Network Configuration soft keyUse to view or modify the network configuration of the phone.
367
Troubleshooting SIP Interfaces to the IP Network Troubleshooting the Cisco SIP IP Phone 7960
Settings button to SIP Configuration soft keyUse to view or modify a phones SIP settings. Settings button to StatusDisplay configuration or initialization errors. Call messages on LED screenDisplay basic SIP message flows. Pressing i or ? key twice during a callDisplays real-time transferring and receiving call statistics. This option is recommended for troubleshooting voice-quality issues.
In addition to the features listed above, the EIA/TIA-232 (RS-232) port located on the back of the Cisco SIP IP phone 7960 is a console port and can be used to gather debug information. The EIA/TIA-232 port is password-protected and requires a custom RJ-11-to-RJ-45 cable.
Note
For a PC connection, the RJ-45 connection needs a DB-9 female DTE adapter or an RJ-45 crossover cable for an octal async connection. You must enter the password cisco must be entered to enable any output to be seen via the EIA/TIA-232 port. The connection baud rate, parity, start bits, and stop bits are 9600, N, 8, and 1. To use the console port, use a RJ-11-to-RJ-45 custom cable to connect the EIA/TIA-232 port to a PC. Table 48 lists the RJ-11-to-RJ-45 cable pinouts.
Table 48 RJ-11-to-RJ-45 Pinouts
RJ-11 or RJ-12 2 3 4
RJ-45 6 4 3
Insert the RJ-11 end of the rolled cable into the EIA/TIA-232 port on the back of the phone. Use an RJ-45-to-DB-9 female DTE adapter (labeled TERMINAL) to connect the console port to a PC running terminal emulation software. Insert the RJ-45 end of the rollover cable into the DTE adapter. From the console terminal, start the terminal emulation program. Type cisco. A prompt is displayed. At the prompt, you can issue the following commands to assist you in troubleshooting and debugging the phone:
debug errorDisplays error messages that are occurring in the call flow process debug sip-messageEnables you to view a text display of a call flow
Troubleshooting Tips
This section provides tips for resolving the following Cisco SIP IP phone problems:
368
Troubleshooting SIP Interfaces to the IP Network Troubleshooting the Cisco SIP IP Phone 7960
Cisco SIP IP Phone Does Not Register With the SIP Proxy or SIP Registrar Server, page 369 Outbound Calls Cannot Be Placed from a Cisco SIP IP Phone, page 370 Inbound Calls Cannot Be Received on a Cisco SIP IP Phone, page 370 Poor Voice Quality on the Cisco SIP IP Phone, page 370 DTMF Digits Do Not Function Properly, page 371 Cisco SIP IP Phones Do Not Work When Plugged into a Line-Powered Switch, page 371 Call Transfer Does Not Work Correctly, page 371 Some SIP Messages are Retransmitted Too Often, page 371
For more information about Cisco SIP IP phones, see the Cisco IP Phone Administrator Guides for SIP.
If using TFTP to download configuration files, verify that the SIPDefault.cnf file and the phone-specific configuration file (SIPmac.cnf where mac is the MAC address of the phone) exist and are configured correctly. Verify that the TFTP server is working properly. Verify that the Cisco SIP IP phone network configuration parameters are properly configured and the phone is obtaining the proper IP addressing information (IP address, subnet mask, default gateway, TFTP server, and so forth.) Press the Settings button, select Status, and then Status Messages to view messages for missing files or other errors. If the DHCP server has an IP subnet mask that is different from the one for the Cisco SIP IP phone, verify that ip helper-address address is enabled on the local router. Verify that the Cisco SIP IP phone software image (P0S3xxyy.bin where xx is the version number and yy is the subversion number) was downloaded from the Cisco website in binary format.
Cisco SIP IP Phone Does Not Register With the SIP Proxy or SIP Registrar Server
To determine why a phone does not register with a SIP proxy or SIP registrar server, perform the following tasks as necessary:
Note
The character x displayed to the right of a line icon indicates that registration has failed.
Verify that phone registration with a proxy server is enabled (via the proxy_register parameter in the configuration files). By default, registration during initialization is disabled. Verify that the IP address (proxy1_address parameter) of the primary SIP proxy server to be used by the phones is valid. If a Fully Qualified Domain Name (FQDN) is specified in the proxy1_address parameter, verify that the DNS server is configured to resolve the FQDN as a DNS A-record type. Verify that the Cisco SIP proxy server has been configured to require authentication. If it has, ensure that an authentication name and password have been defined in the Cisco SIP IP phone-specific configuration file (through the use of the linex_authname and linex_password parameters).
369
Troubleshooting SIP Interfaces to the IP Network Troubleshooting the Cisco SIP IP Phone 7960
The Cisco SIP IP phone currently supports the HTTP Digest authentication method. Verify that the authentication method required by the Cisco SIP proxy server (through the use of the AuthScheme directive in the sipd.conf file) is HTTP Digest. Verify that a registration request hasnt expired. By default, Cisco SIP IP phones reregister every 3600 seconds, but this value can be modified through the use of the time_reqister_expires parameter.
Verify that the Cisco SIP IP phone network configuration IP address parameters have been correctly entered or received from a DHCP server. Verify that the Cisco SIP proxy server used by the phone is working properly. Verify that the Cisco SIP proxy server is correctly configured for routes or registrations to the remote destination. Verify that the remote SIP device is available. Verify that a dial plan has been defined in the dialplan.xml file and if so, that the configuration is correct. This file should have been downloaded from CCO to the root directory of your TFTP server. Determine which error tones are being received and map those tones to the messages displayed on the phones LCD (SIP 4xx messages, and so forth.)
Verify that the line (user portion) was defined in the Request-URI or the SIP INVITE request. The Cisco SIP IP phone requires this information to determine the proper line to ring. Verify that the Request-URI is sent to port 5060 of the phones IP address. The phone listens on UDP port 5060. Verify that the Cisco SIP IP phone is registered with the local proxy server.
Check the network path for errors, packet drops, loss, loops, and so forth. Verify that the ToS level for the media stream being used has been correctly set (through the tos_media parameter in the configuration file). Verify that the Cisco SIP IP phone is plugged into a switch rather than a hub to avoid excessive collisions and packet loss. Ensure that there is enough bandwidth on the network for the selected codec (especially for calls over a WAN). Press the i or ? button twice on the phone during the call to view realtime transferring and receiving call statistics. Determine whether the problem occurs with the handset, headset, or speaker phone, or with all of them.
370
Troubleshooting SIP Interfaces to the IP Network Troubleshooting the Cisco SIP Gateway
If out-of-bound signaling through the AVT tone method has been enabled (through the dtmf_outofband configuration file parameter), verify that the remote device supports AVT tones (as defined in RFC 2833). If AVT tones have been enabled and the remote device does not support AVT tones, check for packet loss in the end-to-end path. Find out which codec is being used. Lower bandwidth codecs yield poorer results if AVT tones are not supported because the DTMF digits are carried in audio. Verify the length of the tones being created. The tone must have a minimum signal duration of 40 ms with signaling velocity (tone and pause) of no less than 93 ms (as defined in RFC 2833).
Cisco SIP IP Phones Do Not Work When Plugged into a Line-Powered Switch
If the Cisco SIP IP phones do not work when plugged into a line-powered switch, perform the following tasks:
Verify that the phone is running version 2.0 or higher of the Cisco SIP IP Phone software. (Line-powered support was not available in version 1.0.) Verify that the network media type Network Settings parameter is set to auto-negotiation (auto).
Unable to Make Outbound Calls from the Cisco SIP Gateway to a SIP Endpoint, page 372 Unable to Make Inbound Calls to a PSTN Through a Cisco SIP Gateway, page 372 Calls to a PSTN via the Cisco SIP Gateway Fail with a 400 Bad Request Response, page 373 Voice Quality Is Compromised on Calls Through or From the Cisco SIP Gateway, page 376 Some SIP Messages Are Retransmitted Too Often, page 376 Call Transfer Does Not Work Correctly, page 376 Troubleshooting Commands, page 377
371
Troubleshooting SIP Interfaces to the IP Network Troubleshooting the Cisco SIP Gateway
Unable to Make Outbound Calls from the Cisco SIP Gateway to a SIP Endpoint
If a call cannot be placed from the Cisco SIP gateway, perform the following tasks as necessary:
Verify that the voice ports are properly configured and enabled for the PSTN-side signaling protocol. Verify that there is a valid VoIP dial peer configured that meets the following requirements:
Matches the required destination pattern Is SIP-enabled (through the session protocol sipv2 command) Has the correct dial peer session target defined (through the session target sip-server command Has the codec correctly defined
Using the ping command, verify that the SIP gateway can communicate through IP with the SIP proxy or remote SIP device. If the SIP proxy server is defined through the use of a FQDN, verify that the DNS server is correctly configured to resolve that address using a DNS SRV record. Ensure that the time zone format configured on the SIP gateway is GMT. Check the debug ccsip all | calls | error | events | messages | states command output for protocol errors.
Verify that the voice ports are correctly configured and enabled for the PSTN-side signaling protocol. Verify that a valid POTS dial peer is configured and that it matches the required destination pattern. Using the ping command, verify that the Cisco SIP gateway can communicate with the SIP proxy server or remote SIP device through IP. If the inbound call has any hostnames defined as a FQDN, ensure that the proper DNS configuration is enabled on the Cisco SIP gateway (to resolve the hosts). View the debug ccsip all | calls | error | events | messages | states command output for protocol errors.
372
Troubleshooting SIP Interfaces to the IP Network Troubleshooting the Cisco SIP Gateway
Calls to a PSTN via the Cisco SIP Gateway Fail with a 400 Bad Request Response
If the Cisco SIP gateway does not like part of a SIP message (header or SDP), the call attempt fails with a 400 Bad Request response. To determine whether the call failed because of a SIP header error, issue the debug ccsip command that displays information on the error message, or verify that the required SIP header elements exist as defined in RFC 2543. SIP header fields are shown in Table 49.
Table 49 SIP Header Fields
Definition The Call-ID general-header field uniquely identifies a specific invitation or all registrations of a specific client. Note that a single multimedia conference can give rise to several calls with different Call-IDs. For example, if a user invites a single individual several times to the same (long-running) conference. The Contact general-header field MUST appear in INVITE and REGISTER requests and in 200 responses. It can appear in ACK, and in other 1xx, 2xx, 3xx, 485 responses. In general, it provides a URL where the user can be reached for further communications. The Content-Length entity-header field indicates the size of the message-body, in decimal number of octets, sent to the recipient. The Content-Type entity-header field indicates the media type of the message-body sent to the recipient. Users MUST add the CSeq (command sequence) general-header field to every request. A CSeq header field in a request contains the request method and a single decimal sequence number chosen by the requesting client, unique within a single value of Call-ID. The sequence number MUST be expressed as a 32-bit unsigned integer. The initial value of the sequence number is arbitrary, but MUST be less than 2**31. Consecutive requests that differ in request method, headers, or body, but have the same Call-ID MUST contain strictly monotonically increasing and contiguous sequence numbers; sequence numbers do not wrap around. Retransmissions of the same request carry the same sequence number, but an INVITE with a different message body or different header fields (a re-invitation) acquires a new, higher sequence number. A server MUST echo the CSeq value from the request in its response. If the Method value is missing in the received CSeq header field, the server fills it in appropriately. Date is a general-header field. Its syntax is: SIP-date = rfc1123-date Note that unlike HTTP/1.1, SIP only supports the most recent RFC 1123 [29] formatting for dates.
Contact
Date
Diversion
Note
373
Troubleshooting SIP Interfaces to the IP Network Troubleshooting the Cisco SIP Gateway
Table 49
Definition The Expires entity-header field gives the date and time after which the message content expires. This header field is currently defined only for the REGISTER and INVITE methods. For REGISTER, it is a request and response-header field. In a REGISTER request, the client indicates how long it wants the registration to be valid. In the response, the server indicates the earliest expiration time of all registrations. The server MAYchoose a shorter time interval than that requested by the client, but SHOULD NOT choose a longer one.
From
Requests and responses MUST contain a From general-header field, indicating the initiator of the request. The From field MUST contain a tag. The server copies the From header field from the request to the response. The optional display-name is meant to be rendered by a human-user interface. A system SHOULD use the display name Anonymous if the identity of the client is to remain hidden. The SIP-URL MUST NOT contain the transport-param, maddr-param, ttl-param, or headerselements. A server that receives a SIP-URL with these elements removes them before further processing.
Max-Forwards
The Max-Forwards request-header field may be used with any SIP method to limit the number of proxies or gateways that can forward the request to the next downstream server. This can also be useful when the client is attempting to trace a request chain which appears to be failing or looping in mid chain. The Max-Forwards value is a decimal integer indicating the remaining number of times this request message is allowed to be forwarded. Each proxy or gateway recipient of a request containing a Max-Forwards header field MUST check and update its value before forwarding the request. If the received value is zero (0), the recipient MUST NOT forward the request. Instead, for the OPTIONS and REGISTER methods, it MUST respond as the final recipient. For all other methods, the server returns 483 (too many hops). If the received Max-Forwards value is greater than zero, then the forwarded message MUST contain an updated Max-Forwards field with a value decremented by one (1).
Require
The Require request-header field is used by clients to tell useragent servers about options that the client expects the server to support in order to properly process the request. If a server does not understand the option, it MUST respond by returning status code 420 (bad extension) and list those options it does not understand in the Unsupported header. The Server response-header field contains information about the software used by the user agent server to handle the request. The timestamp general-header field describes when the client sent the request to the server. The value of the timestamp is of significance only to the client and it MAY use any time scale. The server MUST echo the exact same value and MAY, if it has accurate information about this, add a floating point number indicating the number of seconds that have elapsed since receiving the request. The timestamp is used by the client to compute the round-trip time to the server so that it can adjust the time out value for retransmissions.
Server Timestamp
374
Troubleshooting SIP Interfaces to the IP Network Troubleshooting the Cisco SIP Gateway
Table 49
Header Field To
Definition The To general-header field specifies recipient of the request, with the same SIP URL syntax as the From field. Requests and responses MUST contain a To general-header field, indicating the desired recipient of the request. The optional display-nameis meant to be rendered by a human-user interface. The UAS or redirect server service processing a request MUST always add a tag to To-header.
User-Agent Via
The User-Agent general-header field contains information about the client user agent originating the request. The Via field indicates the path taken by the request so far. This prevents request looping and ensures replies take the same path as the requests, which assists in firewall traversal and other unusual routing situations. When the UAC creates a request, it MUST insert a Via into that request.
SDP_ERR_INFO_UNAVAIL SDP_ERR_VERSINFO_INVALID SDP_ERR_CONNINFO_IN SDP_ERR_CONNINFO_IP SDP_ERR_CONNINFO_NULL SDP_ERR_CONNINFO_INVALID SDP_ERR_MEDIAINFO_TYPE SDP_ERR_MEDIAINFO_INVALID SDP_ERR_MEDIAINFO_NULL SDP_ERR_OWNERINFO_NULL SDP_ERR_OWNERINFO_SESSID_NULL SDP_ERR_OWNERINFO_SESSID_INVALID SDP_ERR_OWNERINFO_VERSID_NULL SDP_ERR_OWNERINFO_VERSID_INVALID SDP_ERR_OWNERINFO_IN SDP_ERR_OWNERINFO_IP SDP_ERR_TIMEINFO_ST_NULL SDP_ERR_TIMEINFO_ET_NULL SDP_ERR_TIMEINFO_ST_INVALID SDP_ERR_TIMEINFO_ET_INVALID SDP_ERR_ATTRINFO_INVALID SDP_ERR_ATTRINFO_NULL SDP_ERR_AUDIO_MEDIA_UNAVAIL SDP_ERR_MEDIAINFO_PORT_INVALID
375
Troubleshooting SIP Interfaces to the IP Network Troubleshooting the Cisco SIP Gateway
SDP_ERR_MEDIAINFO_MALLOC_FAIL SDP_ERR_ATTRINFO_MALLOC_FAIL
CHK_REQ_FAIL_MISMATCH_CSEQ CHK_REQ_FAIL_INVALID_CSEQ CHK_REQ_FAIL_FROM_TO CHK_REQ_FAIL_VERSION CHK_REQ_FAIL_METHOD_UNKNOWN CHK_REQ_FAIL_REQUIRE_UNSUPPORTED CHK_REQ_FAIL_CONTACT_MISSING CHK_REQ_FAIL_MISMATCH_CALLID CHK_REQ_FAIL_MALFORMED_CONTACT CHK_REQ_FAIL_MALFORMED_RECORD_ROUTE
Voice Quality Is Compromised on Calls Through or From the Cisco SIP Gateway
If the voice quality on calls through or from the Cisco SIP gateway is compromised, perform the following tasks as necessary to determine the cause:
Check the network path for errors, packet drops, loss, loops, and so forth. Verify that the TOS bits have been correctly set in the VoIP dial peer through the use of the ip precedence command. To minimize excessive collisions and packet loss, connect the Cisco SIP gateway to a switch rather than a hub. Verify that enough bandwidth exists on the network for the configured codec (especially for calls over a WAN). View the output of the show interface command for packet drops. View the output of the show voice dsp command for DSP-related issues. Determine whether errors exist on the voice ports that could be causing the problems.
Verify that the application session is defined on the VoIP and POTS dial peers.
376
Troubleshooting SIP Interfaces to the IP Network Troubleshooting the Cisco SIP Gateway
Verify that the remote SIP device that is sending the call through the use of the SIP BYE/Also: method (as defined in Internet draft sip-cc-01.txt). Use the debug voip ccapi inout command to verify that a dial peer that has application session defined is matched. The application used after the BYE request is sent should be session instead of SESSION.
Troubleshooting Commands
There are several debug commands that are useful for troubleshooting problems with SIP, as follows:
debug ccsip all debug ccsip calls debug ccsip error debug ccsip events debug ccsip info debug ccsip media debug ccsip messages debug ccsip preauth debug ccsip states
Details about these commands can be found in the Cisco IOS Debug Command Reference.
Note
The output from these commands can be filtered. For more information, see the SIP Debug Output Filtering Support section on page 83. The following show and debug commands shown can be used to troubleshoot the Cisco SIP gateway:
377
Troubleshooting SIP Interfaces to the IP Network Troubleshooting the Cisco SIP Gateway
PaymentRequired 0/0, Forbidden 0/0, NotFound 0/0, MethodNotAllowed 0/0, NotAcceptable 0/0, ProxyAuthReqd 0/0, ReqTimeout 0/0, Conflict 0/0, Gone 0/0, LengthRequired 0/0, ReqEntityTooLarge 0/0, ReqURITooLarge 0/0, UnsupportedMediaType 0/0, BadExtension 0/0, TempNotAvailable 0/0, CallLegNonExistent 0/0, LoopDetected 0/0, TooManyHops 0/0, AddrIncomplete 0/0, Ambiguous 0/0, BusyHere 0/0 Server Error: InternalError 0/0, NotImplemented 0/0, BadGateway 0/0, ServiceUnavail 0/0, GatewayTimeout 0/0, BadSipVer 0/0 Global Failure: BusyEverywhere 0/0, Decline 0/0, NotExistAnywhere 0/0, NotAcceptable 0/0 SIP Total Traffic Statistics (Inbound/Outbound) Invite 3/7, Ack 2/1, Bye 0/2, Cancel 0/0, Options 0/0 Retry Statistics Invite 2, Bye 0, Cancel 0, Response 1
to
*Mar 6 14:10:42: act_idle_call_setup: preferred_codec set[0] type :g711ulaw bytes: 160 *Mar 6 14:10:42: Queued event from SIP SPI : SIPSPI_EV_CREATE_CONNECTION *Mar 6 14:10:42: 0x624CFEF8 : State change from (STATE_IDLE, SUBSTATE_NONE) to (STATE_IDLE, SUBSTATE_CONNECTING) *Mar 6 14:10:42: REQUEST CONNECTION TO IP:166.34.245.231 PORT:5060 *Mar 6 14:10:42: 0x624CFEF8 : State change from (STATE_IDLE, SUBSTATE_CONNECTING) to (STATE_IDLE, SUBSTATE_CONNECTING) *Mar 6 14:10:42: CCSIP-SPI-CONTROL: act_idle_connection_created *Mar 6 14:10:42: CCSIP-SPI-CONTROL: act_idle_connection_created: Connid(1) created to 166.34.245.231:5060, local_port 54113 *Mar 6 14:10:42: sipSPIAddLocalContact *Mar 6 14:10:42: Queued event from SIP SPI : SIPSPI_EV_SEND_MESSAGE *Mar 6 14:10:42: CCSIP-SPI-CONTROL: sip_stats_method
378
Troubleshooting SIP Interfaces to the IP Network Troubleshooting the Cisco SIP Gateway
*Mar 6 14:10:42: 0x624CFEF8 : State change from (STATE_IDLE, SUBSTATE_CONNECTING) (STATE_SENT_INVITE, SUBSTATE_NONE) *Mar 6 14:10:42: Sent: INVITE sip:3660210@166.34.245.231;user=phone;phone-context=unknown SIP/2.0 Via: SIP/2.0/UDP 166.34.245.230:54113 From: "3660110" <sip:3660110@166.34.245.230> To: <sip:3660210@166.34.245.231;user=phone;phone-context=unknown> Date: Sat, 06 Mar 1993 19:10:42 GMT Call-ID: ABBAE7AF-823100CE-0-1CCAA69C@172.18.192.194 Cisco-Guid: 2881152943-2184249548-0-483039712 User-Agent: Cisco VoIP Gateway/ IOS 12.x/ SIP enabled CSeq: 101 INVITE Max-Forwards: 6 Timestamp: 731427042 Contact: <sip:3660110@166.34.245.230:5060;user=phone> Expires: 180 Content-Type: application/sdp Content-Length: 137 v=0 o=CiscoSystemsSIP-GW-UserAgent 1212 283 IN IP4 166.34.245.230 s=SIP Call t=0 0 c=IN IP4 166.34.245.230 m=audio 20208 RTP/AVP 0 *Mar 6 14:10:42: Received: SIP/2.0 100 Trying Via: SIP/2.0/UDP 166.34.245.230:54113 From: "3660110" <sip:3660110@166.34.245.230> To: <sip:3660210@166.34.245.231;user=phone;phone-context=unknown> Date: Mon, 08 Mar 1993 22:36:40 GMT Call-ID: ABBAE7AF-823100CE-0-1CCAA69C@172.18.192.194 Timestamp: 731427042 Server: Cisco VoIP Gateway/ IOS 12.x/ SIP enabled CSeq: 101 INVITE Content-Length: 0
to
*Mar 6 14:10:42: HandleUdpSocketReads :Msg enqueued for SPI with IPaddr: 166.34.245.231:5060 *Mar 6 14:10:42: CCSIP-SPI-CONTROL: act_sentinvite_new_message *Mar 6 14:10:42: CCSIP-SPI-CONTROL: sipSPICheckResponse *Mar 6 14:10:42: CCSIP-SPI-CONTROL: sip_stats_status_code *Mar 6 14:10:42: Roundtrip delay 4 milliseconds for method INVITE *Mar 6 14:10:42: 0x624CFEF8 : State change from (STATE_SENT_INVITE, SUBSTATE_NONE) to (STATE_RECD_PROCEEDING, SUBSTATE_PROCEEDING_PROCEEDING) *Mar 6 14:10:42: Received: SIP/2.0 180 Ringing Via: SIP/2.0/UDP 166.34.245.230:54113 From: "3660110" <sip:3660110@166.34.245.230> To: <sip:3660210@166.34.245.231;user=phone;phone-context=unknown> Date: Mon, 08 Mar 1993 22:36:40 GMT Call-ID: ABBAE7AF-823100CE-0-1CCAA69C@172.18.192.194 Timestamp: 731427042 Server: Cisco VoIP Gateway/ IOS 12.x/ SIP enabled CSeq: 101 INVITE Content-Type: application/sdp Content-Length: 137 v=0 o=CiscoSystemsSIP-GW-UserAgent 969 7889 IN IP4 166.34.245.231 s=SIP Call
379
Troubleshooting SIP Interfaces to the IP Network Troubleshooting the Cisco SIP Gateway
t=0 0 c=IN IP4 166.34.245.231 m=audio 20038 RTP/AVP 0 *Mar 6 14:10:42: HandleUdpSocketReads :Msg enqueued for SPI with IPaddr: 166.34.245.231:5060 *Mar 6 14:10:42: CCSIP-SPI-CONTROL: act_recdproc_new_message *Mar 6 14:10:42: CCSIP-SPI-CONTROL: sipSPICheckResponse *Mar 6 14:10:42: CCSIP-SPI-CONTROL: sipSPICheckResponse : Updating session description *Mar 6 14:10:42: CCSIP-SPI-CONTROL: sip_stats_status_code *Mar 6 14:10:42: Roundtrip delay 8 milliseconds for method INVITE *Mar 6 14:10:42: HandleSIP1xxRinging: SDP MediaTypes negotiation successful! Negotiated Codec : g711ulaw , bytes :160 Inband Alerting : 0 *Mar 6 14:10:42: 0x624CFEF8 : State change from (STATE_RECD_PROCEEDING, SUBSTATE_PROCEEDING_PROCEEDING) to (STATE_RECD_PROCEEDING, SUBSTATE_PROCEEDING_ALERTING) *Mar 6 14:10:46: Received: SIP/2.0 200 OK Via: SIP/2.0/UDP 166.34.245.230:54113 From: "3660110" <sip:3660110@166.34.245.230> To: <sip:3660210@166.34.245.231;user=phone;phone-context=unknown>;tag=27D3FCA8-C7F Date: Mon, 08 Mar 1993 22:36:40 GMT Call-ID: ABBAE7AF-823100CE-0-1CCAA69C@172.18.192.194 Timestamp: 731427042 Server: Cisco VoIP Gateway/ IOS 12.x/ SIP enabled Contact: <sip:3660210@166.34.245.231:5060;user=phone> CSeq: 101 INVITE Content-Type: application/sdp Content-Length: 137 v=0 o=CiscoSystemsSIP-GW-UserAgent 969 7889 IN IP4 166.34.245.231 s=SIP Call t=0 0 c=IN IP4 166.34.245.231 m=audio 20038 RTP/AVP 0 *Mar 6 14:10:46: HandleUdpSocketReads :Msg enqueued for SPI with IPaddr: 166.34.245.231:5060 *Mar 6 14:10:46: CCSIP-SPI-CONTROL: act_recdproc_new_message *Mar 6 14:10:46: CCSIP-SPI-CONTROL: sipSPICheckResponse *Mar 6 14:10:46: CCSIP-SPI-CONTROL: sipSPICheckResponse : Updating session description *Mar 6 14:10:46: CCSIP-SPI-CONTROL: sip_stats_status_code *Mar 6 14:10:46: Roundtrip delay 3536 milliseconds for method INVITE *Mar 6 14:10:46: CCSIP-SPI-CONTROL: act_recdproc_new_message: SDP MediaTypes negotiation successful! Negotiated Codec : g711ulaw , bytes :160 *Mar 6 14:10:46: CCSIP-SPI-CONTROL: sipSPIReconnectConnection *Mar 6 14:10:46: Queued event from SIP SPI : SIPSPI_EV_RECONNECT_CONNECTION *Mar 6 14:10:46: CCSIP-SPI-CONTROL: recv_200_OK_for_invite *Mar 6 14:10:46: Queued event from SIP SPI : SIPSPI_EV_SEND_MESSAGE *Mar 6 14:10:46: CCSIP-SPI-CONTROL: sip_stats_method *Mar 6 14:10:46: 0x624CFEF8 : State change from (STATE_RECD_PROCEEDING, SUBSTATE_PROCEEDING_ALERTING) to (STATE_ACTIVE, SUBSTATE_NONE) *Mar 6 14:10:46: The Call Setup Information is : Call Control Block (CCB) : 0x624CFEF8
380
Troubleshooting SIP Interfaces to the IP Network Troubleshooting the Cisco SIP Gateway
State of The Call : TCP Sockets Used : Calling Number : Called Number : Negotiated Codec : Source IP Address (Media): Source IP Port (Media): Destn IP Address (Media): Destn IP Port (Media): Destn SIP Addr (Control) : Destn SIP Port (Control) : Destination Name :
STATE_ACTIVE NO 3660110 3660210 g711ulaw 166.34.245.230 20208 166.34.245.231 20038 166.34.245.231 5060 166.34.245.231
*Mar 6 14:10:46: HandleUdpReconnection: Udp socket connected for fd: 1 with 166.34.245.231:5060 *Mar 6 14:10:46: Sent: ACK sip:3660210@166.34.245.231:5060;user=phone SIP/2.0 Via: SIP/2.0/UDP 166.34.245.230:54113 From: "3660110" <sip:3660110@166.34.245.230> To: <sip:3660210@166.34.245.231;user=phone;phone-context=unknown>;tag=27D3FCA8-C7F Date: Sat, 06 Mar 1993 19:10:42 GMT Call-ID: ABBAE7AF-823100CE-0-1CCAA69C@172.18.192.194 Max-Forwards: 6 Content-Type: application/sdp Content-Length: 137 CSeq: 101 ACK v=0 o=CiscoSystemsSIP-GW-UserAgent 1212 283 IN IP4 166.34.245.230 s=SIP Call t=0 0 c=IN IP4 166.34.245.230 m=audio 20208 RTP/AVP 0 *Mar 6 14:10:46: CCSIP-SPI-CONTROL: ccsip_caps_ind *Mar 6 14:10:46: ccsip_caps_ind: Load DSP with codec (5) g711ulaw, Bytes=160 *Mar 6 14:10:46: ccsip_caps_ind: set DSP for dtmf-relay = CC_CAP_DTMF_RELAY_INBAND_VOICE *Mar 6 14:10:46: CCSIP-SPI-CONTROL: ccsip_caps_ack *Mar 6 14:10:50: Received: BYE sip:3660110@166.34.245.230:5060;user=phone SIP/2.0 Via: SIP/2.0/UDP 166.34.245.231:54835 From: <sip:3660210@166.34.245.231;user=phone;phone-context=unknown>;tag=27D3FCA8-C7F To: "3660110" <sip:3660110@166.34.245.230> Date: Mon, 08 Mar 1993 22:36:44 GMT Call-ID: ABBAE7AF-823100CE-0-1CCAA69C@172.18.192.194 User-Agent: Cisco VoIP Gateway/ IOS 12.x/ SIP enabled Max-Forwards: 6 Timestamp: 731612207 CSeq: 101 BYE Content-Length: 0 *Mar 6 14:10:50: HandleUdpSocketReads :Msg enqueued for SPI with IPaddr: 166.34.245.231:54835 *Mar 6 14:10:50: CCSIP-SPI-CONTROL: act_active_new_message *Mar 6 14:10:50: CCSIP-SPI-CONTROL: sact_active_new_message_request *Mar 6 14:10:50: CCSIP-SPI-CONTROL: sip_stats_method *Mar 6 14:10:50: Queued event from SIP SPI : SIPSPI_EV_SEND_MESSAGE *Mar 6 14:10:50: CCSIP-SPI-CONTROL: sip_stats_status_code *Mar 6 14:10:50: CCSIP-SPI-CONTROL: sipSPIInitiateCallDisconnect : Initiate call disconnect(16) for outgoing call *Mar 6 14:10:50: 0x624CFEF8 : State change from (STATE_ACTIVE, SUBSTATE_NONE) to (STATE_DISCONNECTING, SUBSTATE_NONE) *Mar 6 14:10:50: Sent:
381
Troubleshooting SIP Interfaces to the IP Network Troubleshooting the Cisco SIP Gateway
SIP/2.0 200 OK Via: SIP/2.0/UDP 166.34.245.231:54835 From: <sip:3660210@166.34.245.231;user=phone;phone-context=unknown>;tag=27D3FCA8-C7F To: "3660110" <sip:3660110@166.34.245.230> Date: Sat, 06 Mar 1993 19:10:50 GMT Call-ID: ABBAE7AF-823100CE-0-1CCAA69C@172.18.192.194 Server: Cisco VoIP Gateway/ IOS 12.x/ SIP enabled Timestamp: 731612207 Content-Length: 0 CSeq: 101 BYE *Mar 6 14:10:50: Queued event From SIP SPI to CCAPI/DNS : SIPSPI_EV_CC_CALL_DISCONNECT *Mar 6 14:10:50: CCSIP-SPI-CONTROL: act_disconnecting_disconnect *Mar 6 14:10:50: CCSIP-SPI-CONTROL: sipSPICallCleanup *Mar 6 14:10:50: Queued event from SIP SPI : SIPSPI_EV_CLOSE_CONNECTION *Mar 6 14:10:50: CLOSE CONNECTION TO CONNID:1 *Mar 6 14:10:50: sipSPIIcpifUpdate :CallState: 4 Playout: 1755 DiscTime:48305031 ConnTime 48304651 *Mar 6 14:10:50: 0x624CFEF8 : State change from (STATE_DISCONNECTING, SUBSTATE_NONE) to (STATE_DEAD, SUBSTATE_NONE) *Mar 6 14:10:50: The Call Setup Information is : Call Control Block (CCB) : 0x624CFEF8 State of The Call : STATE_DEAD TCP Sockets Used : NO Calling Number : 3660110 Called Number : 3660210 Negotiated Codec : g711ulaw Source IP Address (Media): 166.34.245.230 Source IP Port (Media): 20208 Destn IP Address (Media): 166.34.245.231 Destn IP Port (Media): 20038 Destn SIP Addr (Control) : 166.34.245.231 Destn SIP Port (Control) : 5060 Destination Name : 166.34.245.231 *Mar 6 14:10:50: Disconnect Cause (CC) Disconnect Cause (SIP) : 16 : 200
*Mar 6 14:10:50: udpsock_close_connect: Socket fd: 1 closed for connid 1 with remote port: 5060 Router1#
The debug output is as follows from the other side of the call:
3660-2# debug ccsip all All SIP call tracing enabled 3660-2# *Mar 8 17:36:40: Received: INVITE sip:3660210@166.34.245.231;user=phone;phone-context=unknown SIP/2.0 Via: SIP/2.0/UDP 166.34.245.230:54113 From: "3660110" <sip:3660110@166.34.245.230> To: <sip:3660210@166.34.245.231;user=phone;phone-context=unknown> Date: Sat, 06 Mar 1993 19:10:42 GMT Call-ID: ABBAE7AF-823100CE-0-1CCAA69C@172.18.192.194 Cisco-Guid: 2881152943-2184249548-0-483039712 User-Agent: Cisco VoIP Gateway/ IOS 12.x/ SIP enabled CSeq: 101 INVITE Max-Forwards: 6
382
Troubleshooting SIP Interfaces to the IP Network Troubleshooting the Cisco SIP Gateway
Timestamp: 731427042 Contact: <sip:3660110@166.34.245.230:5060;user=phone> Expires: 180 Content-Type: application/sdp Content-Length: 137 v=0 o=CiscoSystemsSIP-GW-UserAgent 1212 283 IN IP4 166.34.245.230 s=SIP Call t=0 0 c=IN IP4 166.34.245.230 m=audio 20208 RTP/AVP 0 *Mar 8 17:36:40: HandleUdpSocketReads :Msg enqueued for SPI with IPaddr: 166.34.245.230:54113 *Mar 8 17:36:40: CCSIP-SPI-CONTROL: sipSPISipIncomingCall *Mar 8 17:36:40: 0x624D8CCC : State change from (STATE_NONE, SUBSTATE_NONE) (STATE_IDLE, SUBSTATE_NONE) *Mar 8 17:36:40: CCSIP-SPI-CONTROL: act_idle_new_message *Mar 8 17:36:40: CCSIP-SPI-CONTROL: sact_idle_new_message_invite *Mar 8 17:36:40: CCSIP-SPI-CONTROL: sip_stats_method *Mar 8 17:36:40: sact_idle_new_message_invite:Not Using Voice Class Codec
to
*Mar 8 17:36:40: sact_idle_new_message_invite: Preferred codec[0] type: g711ulaw Bytes :160 *Mar 8 17:36:40: sact_idle_new_message_invite: Media Negotiation successful for an incoming call *Mar 8 17:36:40: sact_idle_new_message_invite: Negotiated Codec bytes :160 Preferred Codec : g711ulaw, bytes :160 *Mar *Mar *Mar : g711ulaw,
8 17:36:40: Queued event from SIP SPI : SIPSPI_EV_SEND_MESSAGE 8 17:36:40: CCSIP-SPI-CONTROL: sip_stats_status_code 8 17:36:40: Num of Contact Locations 1 3660110 166.34.245.230 5060 to
*Mar 8 17:36:40: 0x624D8CCC : State change from (STATE_IDLE, SUBSTATE_NONE) (STATE_RECD_INVITE, SUBSTATE_RECD_INVITE_CALL_SETUP) *Mar 8 17:36:40: Sent: SIP/2.0 100 Trying Via: SIP/2.0/UDP 166.34.245.230:54113 From: "3660110" <sip:3660110@166.34.245.230> To: <sip:3660210@166.34.245.231;user=phone;phone-context=unknown> Date: Mon, 08 Mar 1993 22:36:40 GMT Call-ID: ABBAE7AF-823100CE-0-1CCAA69C@172.18.192.194 Timestamp: 731427042 Server: Cisco VoIP Gateway/ IOS 12.x/ SIP enabled CSeq: 101 INVITE Content-Length: 0
*Mar 8 17:36:40: Queued event From SIP SPI to CCAPI/DNS : SIPSPI_EV_CC_CALL_PROCEEDING *Mar 8 17:36:40: CCSIP-SPI-CONTROL: act_recdinvite_proceeding *Mar 8 17:36:40: Queued event From SIP SPI to CCAPI/DNS : SIPSPI_EV_CC_CALL_ALERTING *Mar 8 17:36:40: CCSIP-SPI-CONTROL: ccsip_caps_ind *Mar 8 17:36:40: ccsip_caps_ind: codec(negotiated) = 5(Bytes 160) *Mar 8 17:36:40: ccsip_caps_ind: Load DSP with codec (5) g711ulaw, Bytes=160 *Mar 8 17:36:40: ccsip_caps_ind: set DSP for dtmf-relay = CC_CAP_DTMF_RELAY_INBAND_VOICE *Mar 8 17:36:40: CCSIP-SPI-CONTROL: ccsip_caps_ack *Mar 8 17:36:40: CCSIP-SPI-CONTROL: act_recdinvite_alerting *Mar 8 17:36:40: 180 Ringing with SDP - not likely *Mar 8 17:36:40: Queued event from SIP SPI : SIPSPI_EV_SEND_MESSAGE
383
Troubleshooting SIP Interfaces to the IP Network Troubleshooting the Cisco SIP Gateway
*Mar 8 17:36:40: CCSIP-SPI-CONTROL: sip_stats_status_code *Mar 8 17:36:40: 0x624D8CCC : State change from (STATE_RECD_INVITE, SUBSTATE_RECD_INVITE_CALL_SETUP) to (STATE_SENT_ALERTING, SUBSTATE_NONE) *Mar 8 17:36:40: Sent: SIP/2.0 180 Ringing Via: SIP/2.0/UDP 166.34.245.230:54113 From: "3660110" <sip:3660110@166.34.245.230> To: <sip:3660210@166.34.245.231;user=phone;phone-context=unknown> Date: Mon, 08 Mar 1993 22:36:40 GMT Call-ID: ABBAE7AF-823100CE-0-1CCAA69C@172.18.192.194 Timestamp: 731427042 Server: Cisco VoIP Gateway/ IOS 12.x/ SIP enabled CSeq: 101 INVITE Content-Type: application/sdp Content-Length: 137 v=0 o=CiscoSystemsSIP-GW-UserAgent 969 7889 IN IP4 166.34.245.231 s=SIP Call t=0 0 c=IN IP4 166.34.245.231 m=audio 20038 RTP/AVP 0 *Mar 8 17:36:44: Queued event From SIP SPI to CCAPI/DNS : SIPSPI_EV_CC_CALL_CONNECT *Mar 8 17:36:44: CCSIP-SPI-CONTROL: act_sentalert_connect *Mar 8 17:36:44: sipSPIAddLocalContact *Mar 8 17:36:44: Queued event from SIP SPI : SIPSPI_EV_SEND_MESSAGE *Mar 8 17:36:44: CCSIP-SPI-CONTROL: sip_stats_status_code *Mar 8 17:36:44: 0x624D8CCC : State change from (STATE_SENT_ALERTING, SUBSTATE_NONE) to (STATE_SENT_SUCCESS, SUBSTATE_NONE) *Mar 8 17:36:44: Sent: SIP/2.0 200 OK Via: SIP/2.0/UDP 166.34.245.230:54113 From: "3660110" <sip:3660110@166.34.245.230> To: <sip:3660210@166.34.245.231;user=phone;phone-context=unknown>;tag=27D3FCA8-C7F Date: Mon, 08 Mar 1993 22:36:40 GMT Call-ID: ABBAE7AF-823100CE-0-1CCAA69C@172.18.192.194 Timestamp: 731427042 Server: Cisco VoIP Gateway/ IOS 12.x/ SIP enabled Contact: <sip:3660210@166.34.245.231:5060;user=phone> CSeq: 101 INVITE Content-Type: application/sdp Content-Length: 137 v=0 o=CiscoSystemsSIP-GW-UserAgent 969 7889 IN IP4 166.34.245.231 s=SIP Call t=0 0 c=IN IP4 166.34.245.231 m=audio 20038 RTP/AVP 0 *Mar 8 17:36:44: Received: ACK sip:3660210@166.34.245.231:5060;user=phone SIP/2.0 Via: SIP/2.0/UDP 166.34.245.230:54113 From: "3660110" <sip:3660110@166.34.245.230> To: <sip:3660210@166.34.245.231;user=phone;phone-context=unknown>;tag=27D3FCA8-C7F Date: Sat, 06 Mar 1993 19:10:42 GMT Call-ID: ABBAE7AF-823100CE-0-1CCAA69C@172.18.192.194 Max-Forwards: 6 Content-Type: application/sdp Content-Length: 137 CSeq: 101 ACK v=0
384
Troubleshooting SIP Interfaces to the IP Network Troubleshooting the Cisco SIP Gateway
o=CiscoSystemsSIP-GW-UserAgent 1212 283 IN IP4 166.34.245.230 s=SIP Call t=0 0 c=IN IP4 166.34.245.230 m=audio 20208 RTP/AVP 0 *Mar 8 17:36:44: HandleUdpSocketReads :Msg enqueued for SPI with IPaddr: 166.34.245.230:54113 *Mar 8 17:36:44: CCSIP-SPI-CONTROL: act_sentsucc_new_message *Mar 8 17:36:44: CCSIP-SPI-CONTROL: sip_stats_method *Mar 8 17:36:44: 0x624D8CCC : State change from (STATE_SENT_SUCCESS, SUBSTATE_NONE) to (STATE_ACTIVE, SUBSTATE_NONE) *Mar 8 17:36:44: The Call Setup Information is : Call Control Block (CCB) : 0x624D8CCC State of The Call : STATE_ACTIVE TCP Sockets Used : NO Calling Number : 3660110 Called Number : 3660210 Negotiated Codec : g711ulaw Source IP Address (Media): 166.34.245.231 Source IP Port (Media): 20038 Destn IP Address (Media): 166.34.245.230 Destn IP Port (Media): 20208 Destn SIP Addr (Control) : 166.34.245.230 Destn SIP Port (Control) : 5060 Destination Name : 166.34.245.230 *Mar 8 17:36:47: Queued event From SIPSPI_EV_CC_CALL_DISCONNECT *Mar 8 17:36:47: CCSIP-SPI-CONTROL: *Mar 8 17:36:47: Queued event from *Mar 8 17:36:47: 0x624D8CCC : State (STATE_ACTIVE, SUBSTATE_CONNECTING) *Mar 8 17:36:47: REQUEST CONNECTION SIP SPI to CCAPI/DNS : act_active_disconnect SIP SPI : SIPSPI_EV_CREATE_CONNECTION change from (STATE_ACTIVE, SUBSTATE_NONE) TO IP:166.34.245.230 PORT:5060
to
*Mar 8 17:36:47: 0x624D8CCC : State change from (STATE_ACTIVE, SUBSTATE_CONNECTING) to (STATE_ACTIVE, SUBSTATE_CONNECTING) *Mar 8 17:36:47: CCSIP-SPI-CONTROL: act_active_connection_created *Mar 8 17:36:47: CCSIP-SPI-CONTROL: sipSPICheckSocketConnection *Mar 8 17:36:47: CCSIP-SPI-CONTROL: sipSPICheckSocketConnection: Connid(1) created to 166.34.245.230:5060, local_port 54835 *Mar 8 17:36:47: Queued event from SIP SPI : SIPSPI_EV_SEND_MESSAGE *Mar 8 17:36:47: CCSIP-SPI-CONTROL: sip_stats_method *Mar 8 17:36:47: 0x624D8CCC : State change from (STATE_ACTIVE, SUBSTATE_CONNECTING) to (STATE_DISCONNECTING, SUBSTATE_NONE) *Mar 8 17:36:47: Sent: BYE sip:3660110@166.34.245.230:5060;user=phone SIP/2.0 Via: SIP/2.0/UDP 166.34.245.231:54835 From: <sip:3660210@166.34.245.231;user=phone;phone-context=unknown>;tag=27D3FCA8-C7F To: "3660110" <sip:3660110@166.34.245.230> Date: Mon, 08 Mar 1993 22:36:44 GMT Call-ID: ABBAE7AF-823100CE-0-1CCAA69C@172.18.192.194 User-Agent: Cisco VoIP Gateway/ IOS 12.x/ SIP enabled Max-Forwards: 6 Timestamp: 731612207 CSeq: 101 BYE Content-Length: 0 *Mar 8 17:36:47: Received: SIP/2.0 200 OK Via: SIP/2.0/UDP 166.34.245.231:54835 From: <sip:3660210@166.34.245.231;user=phone;phone-context=unknown>;tag=27D3FCA8-C7F To: "3660110" <sip:3660110@166.34.245.230>
385
Troubleshooting SIP Interfaces to the IP Network Troubleshooting the Cisco SIP Proxy Server
Date: Sat, 06 Mar 1993 19:10:50 GMT Call-ID: ABBAE7AF-823100CE-0-1CCAA69C@172.18.192.194 Server: Cisco VoIP Gateway/ IOS 12.x/ SIP enabled Timestamp: 731612207 Content-Length: 0 CSeq: 101 BYE *Mar 8 17:36:47: HandleUdpSocketReads :Msg enqueued for SPI with IPaddr: 166.34.245.230:54113 *Mar 8 17:36:47: CCSIP-SPI-CONTROL: act_disconnecting_new_message *Mar 8 17:36:47: CCSIP-SPI-CONTROL: sact_disconnecting_new_message_response *Mar 8 17:36:47: CCSIP-SPI-CONTROL: sipSPICheckResponse *Mar 8 17:36:47: CCSIP-SPI-CONTROL: sip_stats_status_code *Mar 8 17:36:47: Roundtrip delay 4 milliseconds for method BYE *Mar *Mar *Mar 8 17:36:47: CCSIP-SPI-CONTROL: sipSPICallCleanup 8 17:36:47: Queued event from SIP SPI : SIPSPI_EV_CLOSE_CONNECTION 8 17:36:47: CLOSE CONNECTION TO CONNID:1
*Mar 8 17:36:47: sipSPIIcpifUpdate :CallState: 4 Playout: 1265 DiscTime:66820800 ConnTime 66820420 *Mar 8 17:36:47: 0x624D8CCC : State change from (STATE_DISCONNECTING, SUBSTATE_NONE) to (STATE_DEAD, SUBSTATE_NONE) *Mar 8 17:36:47: The Call Setup Information is : Call Control Block (CCB) : 0x624D8CCC State of The Call : STATE_DEAD TCP Sockets Used : NO Calling Number : 3660110 Called Number : 3660210 Negotiated Codec : g711ulaw Source IP Address (Media): 166.34.245.231 Source IP Port (Media): 20038 Destn IP Address (Media): 166.34.245.230 Destn IP Port (Media): 20208 Destn SIP Addr (Control) : 166.34.245.230 Destn SIP Port (Control) : 5060 Destination Name : 166.34.245.230 *Mar 8 17:36:47: Disconnect Cause (CC) Disconnect Cause (SIP) : 16 : 200
*Mar 8 17:36:47: udpsock_close_connect: Socket fd: 1 closed for connid 1 with remote port: 5060
Troubleshooting Tips, page 387 Cisco SIP Proxy Server Does Not Start, page 387 Cisco SIP Proxy Server Does Not Allow Devices to Register, page 387 Cisco SIP Proxy Server Does Not Route Calls Properly, page 388 Cisco SIP Proxy Server Reports That SIP Messages Are Bad, page 388
386
Troubleshooting SIP Interfaces to the IP Network Troubleshooting the Cisco SIP Proxy Server
Cisco SIP Proxy Server Farming Does Not Work Correctly, page 388 Voice Quality Problems, page 388
Troubleshooting Tips
When trying to troubleshoot problems with the Cisco SIP proxy server, remember the following:
Each module with the Cisco SIP proxy server has debugging capabilities that can be set via a debug flag in the sipd.conf file. When these debug flags are set to On, and the server is running in multi-process mode, the debug output is written to the ./logs/error_log file. When the flags are set to On and single-process mode is enabled, the debug output is written to standard output. Changes to the sipd.conf file do not automatically take effect. To have any changes take effect, issue a graceful restart by issuing the following command: ./sipdctl graceful
Verify that the /usr/local/sip directory (on Linux) or the opt/local/sip/ directory (on Solaris) has the read and write permissions set that allow you to start the Cisco SIP proxy server. Verify that the LD_LIBRARY_PATH environment variable has been enabled as defined in the Cisco SIP Proxy Server Administrator Guide, version 2.0. If using the Linux RPM version of the Cisco SIP proxy server, verify that the software has been correctly installed. Verify that an older version of the Cisco SIP proxy server is not still running. Issue the following command: ps -ef | grep -i sip If another version is running, disable these processes by issuing the following command: ./sipdctl stop
Verify that the Cisco SIP Proxy Server can resolve its hostname through DNS.
Verify that registration services are enabled in the mod_sip_registry module in the sipd.conf file. If authentication is required, ensure that the SIP UA and a password are defined in the MySQL database subscriber table and that the Cisco SIP proxy server can connect to the MySQL database. Verify which type of HTTP Digest authentication method that the SIP UAs are using.
387
Verify that numbering plan statements are configured correctly in the mod_sip_numexpand module in the sipd.conf file. Verify that the translation modules (mod_sip_registry, mod_sip_enum, and mod_sip_gktmp are correctly configured and have the correct entries populated. Verify that the correct routes exist in the static routing table of the sipd.conf file. Verify that the DNS server is configured for DNS SRV and DNS A records of the devices to be routed. View the error_log file for error messages (bad SIP messages, process errors, and so forth.).
Cisco SIP Proxy Server Reports That SIP Messages Are Bad
If the Cisco SIP proxy server reports SIP messages as bad, enable the StateMachine debug flag in the sipd.conf file and view the SIP messages in the error_log file. The error_log file should contain SIP messages that are received in ASCII format. Check the SIP headers of those messages against the headers defined in RFC 2543 or check the SDP information against the information defined in RFC 2327.
Verify that all members of the farm have the same sipd.conf file configuration. Verify that all members of the farm have an entry for the other farm members defined in the Cisco_Registry_Farm_Members directive in their sipd.conf file. Verify that all members of the farm are running the same version of the Cisco SIP proxy server. Verify that all members of the farm are synchronized to the same clock source through Network Time Protocol (NTP).
388
A start line One or more header fields An empty line A message body (optional)
Requests
SIP uses six types (methods) of requests:
INVITEIndicates that a user or service is being invited to participate in a call session ACKConfirms that the client has received a final response to an INVITE request BYETerminates a call and can be sent by the calling or called party CANCELCancels any pending searches but does not terminate a call that has already been accepted OPTIONSQueries the capabilities of servers REGISTERRegisters the address listed in the To header field with a SIP server
Responses
The following types of responses are used by SIP and generated by the Cisco SIP proxy server:
SIP 1xxInformational responses SIP 2xxSuccessful responses SIP 3xxRedirection responses SIP 4xxClient failure responses SIP 5xxServer failure responses SIP 6xxGlobal failure responses
Registration Process
A registration occurs when a client needs to inform a proxy or redirect server of its location. During this process, the client sends a REGISTER request to the proxy or redirect server and includes the address (or addresses) at which it can be reached.
Invitation Process
An invitation occurs when one SIP endpoint (user A) invites another SIP endpoint (user B) to join in a call. During this process, user A sends an INVITE message requesting that user B join a particular conference or establish a two-party conversation. If user B wants to join the call, it sends an affirmative response (SIP 2xx). Otherwise, it sends a failure response (SIP 4xx). Upon receiving the response, user A acknowledges the response with an ACK message. If user A no longer wants to establish this conference, it sends a BYE message instead of an ACK message.
389
Note
For examples of SIP call flows, refer to the Cisco SIP Proxy Server (CSPS) Call Flows chapter in the Cisco SIP Proxy Server Administrator Guide, Version 2.0.
390
MGCP Overview, page 391 Call Routing and Dial Peers, page 398 Call Admission Control, page 401 Verifying Connections and Endpoints, page 404 MGCP Testing Commands, page 405
MGCP Overview
Two basic MGCP constructs are endpoints and connections. An endpoint is a source or sink for call data (RTP/IP) that is flowing through the gateway. A common type of endpoint is found at the physical interface between the POTS or PSTN service and the gateway; this type of endpoint might be an analog voice port or a digital DS0 group. There are other types of endpoints as well, and some are logical rather than physical. An endpoint is identified by a two-part endpoint name that contains the name of the entity on which it exists (for example, an access server or router) and the local name by which it is known (for example, a port identifier). Call agents manage call flow using standard MGCP commands that are sent to the endpoints under their control. The commands are delivered in standard ASCII text, and can contain session descriptions transmitted in Session Description Protocol (SDP), a text-based protocol. These messages are sent over IP/UDP. Call agents keep track of endpoint and connection status through the gateways reporting of standard events that are detected from endpoints and connections. Call agents also direct gateways to apply certain standard signals when a POTS/PSTN connection expects them. For example, when someone picks up a telephone handset, an off-hook event is detected on an endpoint on the residential gateway to
391
Troubleshooting MGCP and Related Protocol Interfaces to the IP Network MGCP Overview
which the telephone is connected. The gateway reports the event to a call agent, which orders the gateway to apply the dial-tone signal to the endpoint reporting the off-hook event. The person picking up the handset hears dial tone. Figure 41 shows a hypothetical MGCP network with both residential and trunking gateways. The residential gateway has telephone sets connected to the gateways FXS voice ports. MGCP or NCS over IP/UDP is used for call control and reporting to the call agent, and Real-time Transmission Protocol (RTP) is used to transmit the actual voice data. Figure 41 also shows two trunking gateways with T1 (or E1) connections to the PSTN. Incoming time-division multiplexing (TDM) data is sent through the gateway into the packet network through the use of RTP. MGCP or TGCP over IP/UDP is used for call control and reporting to the call agent. Signaling System 7 (SS7) data travels a different route, however, bypassing the trunking gateway entirely in favor of a specialized signaling gateway, where the signaling data is transformed to ISUP/IP format and relayed to the call agent. Communication between two signaling gateways in the same packet network can be done with ISUP/IP, H.323, or Session Initiation Protocol (SIP).
Figure 41 MGCP Network Model
Residential gateway (RGW) MGCP or NCS Media gateway controller (call agent) ISUP/IP, H.323, or SIP MGCP or TGCP
RTP
Residential gateway (RGW) MGCP or NCS Media gateway controller (call agent)
ISUP/IP
ISUP/IP, H.323, Signaling or SIP gateway MGCP or TGCP RTP Trunking gateway (TGW)
TDM
Note: Residential gateways and trunking gateways are specific types of media gateways.
392
62067
Troubleshooting MGCP and Related Protocol Interfaces to the IP Network MGCP Overview
MGCP
Extension 1001
Cisco CallManager
V
FXS port IP address 1/0/0 172.16.13.41
103636
IP address 172.6.104.54
The FXS port goes off hook and notifies the CallAgent of the status through observed event. Here, the MGCP packet is sent by the gateway.
*Mar 1 02:16:29.399: send_mgcp_msg, MGCP Packet sent to 172.6.104.54
The CallAgent directs the port to provide the dial tone and requests a notification if there is any change of events such as a port disconnect or digits received.
*Mar 1 02:16:29.411: MGCP Packet received from 172.6.104.54RQNT 40 AALN/S1/SU0/0@Router MGCP 0.1 X: 1c R: L/hu, D/[0-9ABCD*#] S: L/dl
393
Troubleshooting MGCP and Related Protocol Interfaces to the IP Network MGCP Overview
The FXS port (endpoint) notifies the Call Agent about the digits that it received.
*Mar *Mar 1 02:16:29.419: 200 40 OK 1 02:16:33.595: send_mgcp_msg, MGCP Packet sent to 172.6.104.54
*Mar 1 02:16:33.595: NTFY 187 AALN/S1/SU0/0@Router MGCP 0.1 X: 1c O: D/1 *Mar 1 02:16:33.599: MGCP Packet received from 172.6.104.54200 187 *Mar 1 02:16:33.603: MGCP Packet received from 172.6.104.54RQNT 41 AALN/S1/SU0/0@Router MGCP 0.1 X: 1d R: L/hu, D/[0-9ABCD*#], L/hf S: Q: process,loop *Mar *Mar *Mar 1 02:16:33.607: send_mgcp_msg, MGCP Packet sent to 172.6.104.54 1 02:16:33.607: 200 41 OK 1 02:16:35.655: send_mgcp_msg, MGCP Packet sent to 172.6.104.54
*Mar 1 02:16:35.655: NTFY 188 AALN/S1/SU0/0@Router MGCP 0.1 X: 1d O: D/0 *Mar 1 02:16:35.659: MGCP Packet received from 172.6.104.54200 188 *Mar 1 02:16:37.275: send_mgcp_msg, MGCP Packet sent to 172.6.104.54
*Mar 1 02:16:37.275: NTFY 189 AALN/S1/SU0/0@Router MGCP 0.1 X: 1d O: D/0 *Mar 1 02:16:37.279: MGCP Packet received from 172.6.104.54200 189
*Mar
<--*Mar 1 02:16:38.819: MGCP Packet received from 172.6.104.54200 190 *Mar 1 02:16:38.839: MGCP Packet received from 172.6.104.54CRCX 42 AALN/S1/SU0/0@Router MGCP 0.1 C: A00000000200001d X: 1e M: inactive R: L/hu Q: process,loop
394
Troubleshooting MGCP and Related Protocol Interfaces to the IP Network MGCP Overview
*Mar *Mar I: 4
v=0 c=IN IP4 172.16.13.41 m=audio 19156 RTP/AVP 0 8 99 101 102 2 15 103 4 104 105 106 107 18 100 a=rtpmap:99 G.729a/8000 a=rtpmap:101 G.726-16/8000 a=rtpmap:102 G.726-24/8000 a=rtpmap:103 G.723.1-H/8000 a=rtpmap:104 G.723.1-L/8000 a=rtpmap:105 G.729b/8000 a=rtpmap:106 G.723.1a-H/8000 a=rtpmap:107 G.723.1a-L/8000 a=rtpmap:100 X-NSE/8000 a=fmtp:100 200-202 a=X-sqn:0 a=X-cap: 1 audio RTP/AVP 100 a=X-cpar: a=rtpmap:100 X-NSE/8000 a=X-cpar: a=fmtp:100 200-202 a=X-cap: 2 image udptl t38 <--*Mar 1 02:16:38.855: MGCP Packet received from 172.6.104.54RQNT 43 AALN/S1/SU0/0@Router MGCP 0.1 X: 1f R: L/hu S: G/rt Q: process,loop
At this time the call is sent to the IP Phone. The CA directs the IP Phone to start playing ringbacks.
*Mar 1 02:16:38.859: send_mgcp_msg, MGCP Packet sent to 172.6.104.54
*Mar 1 02:16:38.859: 200 43 OK <--*Mar 1 02:16:46.159: MGCP Packet received from 172.6.104.54MDCX 44 AALN/S1/SU0/0@Router MGCP 0.1 C: A00000000200001d I: 4 X: 20 L: p:20, a:PCMU, s:off M: recvonly R: L/hu Q: process,loop *Mar 1 02:16:46.167: send_mgcp_msg, MGCP Packet sent to 172.6.104.54
*Mar 1 02:16:46.167: 200 44 OK <--*Mar 1 02:16:46.171: MGCP Packet received from 172.6.104.54RQNT 45 AALN/S1/SU0/0@Router MGCP 0.1 X: 21 R: L/hu, D/[0-9ABCD*#], L/hf S: Q: process,loop *Mar *Mar *Mar 1 02:16:46.175: send_mgcp_msg, MGCP Packet sent to 172.6.104.54 ---> 1 02:16:46.175: 200 45 OK 1 02:16:46.179: MGCP Packet received from 172.6.104.54-
395
Troubleshooting MGCP and Related Protocol Interfaces to the IP Network MGCP Overview
MDCX 46 AALN/S1/SU0/0@Router MGCP 0.1 C: A00000000200001d I: 4 X: 22 L: p:20, a:PCMU, s:off M: sendrecv R: L/hu, L/hf, D/[0-9ABCD*#] S: Q: process,loop v=0 o=- 4 0 IN EPN AALN/S1/SU0/0@Router s=Cisco SDP 0 t=0 0 c=IN IP4 10.17.179.33 m=audio 28390 RTP/AVP 96 a=rtpmap:96 PCMU *Mar *Mar 1 02:16:46.187: send_mgcp_msg, MGCP Packet sent to 172.6.104.54 1 02:16:46.191: 200 46 OK
Now the call is answered. Note that media is cut in both directions.After about 12 seconds the called party on the IP Phone drops the call.
*Mar 1 02:16:58.355: MGCP Packet received from 172.6.104.54MDCX 47 AALN/S1/SU0/0@Router MGCP 0.1 C: A00000000200001d I: 4 X: 23 M: recvonly R: L/hu Q: process,loop *Mar *Mar 1 02:16:58.359: send_mgcp_msg, MGCP Packet sent to 172.6.104.54 1 02:16:58.359: 200 47 OK
*Mar 1 02:16:58.379: MGCP Packet received from 172.6.104.54DLCX 48 AALN/S1/SU0/0@Router MGCP 0.1 C: A00000000200001d I: 4 X: 24 R: L/hu S: Q: process,loop *Mar 1 02:16:58.383: send_mgcp_msg, MGCP Packet sent to 172.6.104.54
*Mar 1 02:16:58.383: 250 48 OK P: PS=608, OS=97280, PR=604, OR=96640, PL=0, JI=64, LA=0 *Mar 1 02:17:01.403: MGCP Packet received from 172.6.104.54RQNT 49 AALN/S1/SU0/0@Router MGCP 0.1 X: 25 R: L/hu, D/[0-9ABCD*#] S: L/dl Q: process,loop
Since this call was made from an FXS phone the calling party hears a dial tone
*Mar 1 02:17:01.411: send_mgcp_msg, MGCP Packet sent to 172.6.104.54
396
Troubleshooting MGCP and Related Protocol Interfaces to the IP Network MGCP Overview
*Mar *Mar
*Mar 1 02:17:03.135: NTFY 191 AALN/S1/SU0/0@Router MGCP 0.1 X: 25 O: L/hu *Mar 1 02:17:03.139: MGCP Packet received from 172.6.104.54200 191
*Mar 1 02:17:03.143: MGCP Packet received from 172.6.104.54RQNT 50 AALN/S1/SU0/0@Router MGCP 0.1 X: 26 R: L/hd S: Q: process,loop *Mar *Mar 1 02:17:03.147: send_mgcp_msg, MGCP Packet sent to 172.6.104.54 1 02:17:03.147: 200 50 OK
Troubleshooting Guidelines
The following suggestions help with troubleshooting:
Reset the MGCP statistical counters with the clear mgcp statistics command. If RTP traffic is not getting through, make sure IP routing is enabled. Use the show rtp statistics command, then turn on the debug ip udp command and track down the MGCP RTP packets.
Router# show rtp statistics RTP Statistics info: No. CallId Xmit-pkts Xmit-bytes Rcvd-pkts 1 17492 0x8A 0x5640 0x8A Router# show rtp statistics RTP Statistics info: No. CallId Xmit-pkts Xmit-bytes Rcvd-pkts 1 17492 0xDA 0x8840 0xDB
If an RSIP message is not received by the call agent, make sure that the mgcp call-agent command or the MGCP profile call-agent command is configured with the correct call agent name or IP address and UDP port. Use the show mgcp command or the show mgcp profile command to display this information:
Router# show mgcp MGCP Admin State ACTIVE, Oper State ACTIVE - Cause Code NONE MGCP call-agent: 172.29.248.51 Initial protocol service is MGCP, v. 1.0 ... MGCP gateway port: 2727, MGCP maximum waiting delay 3000 ... Router# show mgcp profile MGCP Profile nycprofile Description: NY branch office configuration Call-agent: 10.14.2.200 Initial protocol service is MGCP, v. 1.0 ...
397
Troubleshooting MGCP and Related Protocol Interfaces to the IP Network Call Routing and Dial Peers
If an MGCP message is rejected, it might be because the remote media gateway does not support SDP mandatory parameters (the o=, s=, and t= lines). If this is the case, configure the mgcp sdp simple command to send SDP messages without those parameters. If you notice problems with voice quality, make sure that the cptone (voice-port configuration) command is set for the correct country code. Capturing RTP packets from the sniffer might help to debug the problem; you can decide such questions as whether the payload type or timestamps are set correctly. To check operation of interfaces, use the show interface command. To view information about activity on the T1 or E1 line, use the show controllers command. Alarms, line conditions, and other errors are displayed. The data is updated every 10 seconds; and every 15 minutes, the cumulative data is stored and retained for 24 hours. When necessary, you can enable debug traces for errors, events, media, packets, and parser. The command debug mgcp packets can be used to monitor message flow in general. Note that there is always a performance penalty when using debug commands. The sample output below shows the use of the optional input-hex keyword to enable display of hexadecimal values.
Router# debug mgcp {all | errors | events | packets {input-hex}| parser} Router# debug mgcp packets input-hex Media Gateway Control Protocol input packets in hex value debugging is on MGCP Packet received DLCX 49993 * MGCP 0.1 MGCP Packet received in hex 44 4C 43 58 20 34 39 39 39 33 20 2A 20 4D 47 43 50 20 30 2E 31 A send_mgcp_msg, MGCP Packet sent ---> 250 49993
Verifying Digits Received and Sent on the POTS Call Leg, page 399 Verifying End-to-End VoIP Signaling on the VoIP Call Leg, page 401
398
Troubleshooting MGCP and Related Protocol Interfaces to the IP Network Call Routing and Dial Peers
show dialplan numberThis command is used to show which dial peer is reached when a particular telephone number is dialed. debug vtsp sessionThis command displays information on how each network indication and application request is processed, signaling indications, and DSP control messages. debug vtsp dsp This command displays the digits as they are received by the voice port. debug vtsp allThis command enables the following debug voice telephony service provider (VTSP) commands: debug vtsp session, debug vtsp error, and debug vtsp dsp.
399
Troubleshooting MGCP and Related Protocol Interfaces to the IP Network Call Routing and Dial Peers
!-!-!-!--
ACTION: Caller picked up handset and dialed digits 5000. The DSP detects DTMF digits. Digit 5 was detected with ON time of 130msec.
*Mar 10 17:57:08.505: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_BEGIN: digit=5, *Mar 10 17:57:08.585: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_OFF: digit=5, duration=130 *Mar 10 17:57:09.385: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_BEGIN: digit=0 *Mar 10 17:57:09.485: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_OFF: digit=0, duration=150 *Mar 10 17:57:10.697: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_BEGIN: digit=0 *Mar 10 17:57:10.825: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_OFF: digit=0, duration=180 *Mar 10 17:57:12.865: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_BEGIN: digit=0 *Mar 10 17:57:12.917: vtsp_process_dsp_message: MSG_TX_DTMF_DIGIT_OFF: digit=0, duration=100 Router# debug vtsp session Voice telephony call control session debugging is on
!--- <some output have been omitted> !-- ACTION: Caller picked up handset. !-- The DSP is allocated, jitter buffers, VAD !-- thresholds, and signal levels are set.
*Mar 10 18:14:22.865: dsp_set_playout: [1/0/0 (69)] packet_len=18 channel_id=1 packet_id=76 mode=1 initial=60 min=4 max=200 fax_nom=300 *Mar 10 18:14:22.865: dsp_echo_canceller_control: [1/0/0 (69)] packet_len=10 channel_id=1 packet_id=66 flags=0x0 *Mar 10 18:14:22.865: dsp_set_gains: [1/0/0 (69)] packet_len=12 channel_id=1 packet_id=91 in_gain=0 out_gain=65506 *Mar 10 18:14:22.865: dsp_vad_enable: [1/0/0 (69)] packet_len=10 channel_id=1 packet_id=78 thresh=-38act_setup_ind_ack *Mar 10 18:14:22.869: dsp_voice_mode: [1/0/0 (69)] packet_len=24 channel_id=1 packet_id=73 coding_type=1
400
Troubleshooting MGCP and Related Protocol Interfaces to the IP Network Call Admission Control
voice_field_size=80 VAD_flag=0 echo_length=64 comfort_noise=1 inband_detect=1 digit_relay=2 AGC_flag=0act_setup_ind_ack(): dsp_dtmf_mod e()act_setup_ind_ack: passthru_mode = 0, no_auto_switchover = 0dsp_dtmf_mode (VTSP_TONE_DTMF_MODE)
!-- The DSP is put into "voice mode" and dial-tone is !-- generated.
*Mar 10 18:14:22.873: dsp_cp_tone_on: [1/0/0 (69)] packet_len=30 channel_id=1 packet_id=72 tone_id=4 n_freq=2 freq_of_first=350 freq_of_second=440 amp_of_first= 4000 amp_of_second=4000 direction=1 on_time_first=65535 off_time_first=0 on_time _second=65535 off_time_second=0
If you determine that the digits are not being sent or received properly, then you might need to use either a digit-grabber (test tool) or T1 tester to verify that the digits are being sent at the correct frequency and timing interval. If they are being sent incorrectly for the switch (CO or PBX), some values on the router or switch (CO or PBX) might need to be adjusted so that they match and the devices can interoperate. These are usually digit duration and interdigit duration values. If the digits appear to be sent correctly, you can also check any number translation tables in the switch (CO or PBX) that might be adding or removing digits.
H.323 is made up of three layers of call-negotiation and call-establishment: H.225, H.245, and H.323. These protocols use a combination of TCP and UDP to set up and establish a call. End-to-End VoIP debugging shows a number of Cisco IOS state-machines, and problems with any state-machine can cause a call to fail. End-to-End VoIP debugging can be very verbose and create a lot of debug output.
Troubleshooting MGCP Troubleshooting MGCP SRC CAC Troubleshooting MGCP RSVP CAC Troubleshooting MGCP SA Agent CAC
401
Troubleshooting MGCP and Related Protocol Interfaces to the IP Network Call Admission Control
Troubleshooting MGCP
To provide information about the operation of the MGCP application, use the following commands in privileged EXEC mode: Command
Router# debug mgcp all
Purpose Displays real-time information about MGCP errors, events, media, packets, parser, system resource check (SRC), and VoIP call admission control (CAC) Displays MGCP errors Displays MGCP events Displays MGCP tone and signal information Displays MGCP packet information, with input packets optionally in hexadecimal format Displays MGCP parser and builder information Displays MGCP SRC CAC information Turns on debugging messages for the VoIP CAC process at the MGCP application layer
Router# debug mgcp errors {endpoint endpoint-name} Router# debug mgcp events {endpoint endpoint-name} Router# debug mgcp media {endpoint endpoint-name} Router# debug mgcp packets {endpoint endpoint-name | input-hex} Router# debug mgcp parser Router# debug mgcp src Router# debug mgcp voipcac
Purpose Displays status of configured triggers or statistics for application programming interface (API) calls that were made to global and interface resources Displays MGCP statistics, including those for MGCP SRC VoIP CAC Clears call threshold statistics Clears statistics gathered for MGCP SRC CAC Displays details of trigger actions Provides debug information for MGCP SRC CAC calls
Router# clear call threshold stats Router# clear mgcp src-stats Router# debug call threshold Router# debug mgcp src
402
Troubleshooting MGCP and Related Protocol Interfaces to the IP Network Call Admission Control
Purpose Displays a network congestion level check result if one has been cached Displays statistics for calls that attempted RSVP reservation Displays the configuration settings for RSVP synchronization Displays the RSVP-related receiver information currently in the database Displays messages about software functions called by RSVP Displays events that occur during RSVP setup Displays detailed information about RSVP-enabled and Subnetwork Bandwidth Manager (SBM) message processing
Purpose Displays a network congestion level check result if one has been cached Verifies that probes are being sent correctly Displays details of the VoIP call fallback Displays global information about the SA agent feature. There are a number of other options for the show rtr command; use CLI help to browse a list of choices Enables logging of SA agent run-time errors Traces the execution of an SA agent operation
Router# debug call fallback probes Router# debug call fallback detail Router# show rtr application {tabular | full}
403
Troubleshooting MGCP and Related Protocol Interfaces to the IP Network Verifying Connections and Endpoints
Note
The show mgcp endpoint command does not show configured endpoints for CAS, including FGD-OS. The following example shows MGCP endpoints for a NAS package:
controller T3 9/0 framing m23 cablelength 224 t1 1-8 controller ! controller T1 9/0:1 framing esf ds0-group 0 timeslots 1-24 type e&m-fgb mf dnis ! controller T1 9/0:2 framing esf ds0-group 0 timeslots 1-24 type e&m-fgb dtmf dnis ! controller T1 9/0:3 framing esf ds0-group 0 timeslots 1-24 type e&m-immediate-start ! controller T1 9/0:4 framing esf ds0-group 0 timeslots 1-24 type e&m-fgb ! controller T1 9/0:5 framing esf pri-group timeslots 1-24 service mgcp ! controller T1 9/0:6 framing esf ds0-group 0 timeslots 1-24 type none service mgcp ! controller T1 9/0:7 framing esf extsig mgcp guard-timer 10 on-expiry reject pri-group timeslots 1-24 service mgcp ! controller T1 9/0:8 framing esf extsig mgcp guard-timer 10 on-expiry reject ds0-group 0 timeslots 1-24 type none service mgcp !
9/0:5ISDN backhauling 9/0:6SS7 9/0:7ISDN backhauling with NAS package 9/0:8SS7 with NAS package
404
Troubleshooting MGCP and Related Protocol Interfaces to the IP Network MGCP Testing Commands
slot7# show mgcp endpoint T1 S9/0:5 pri-group timeslots 1-23 type backhaul T1 S9/0:6 ds0-group 0 timeslots 1-24 type none T1 S9/0:7 pri-group timeslots 1-23 type backhaul T1 S9/0:8 ds0-group 0 timeslots 1-24 type none NAS Endpts T1 9/0:7 ds0-group 0 timeslots 1-24 type none T1 9/0:8 ds0-group 0 timeslots 1-24 type none
slot7#
show ccm-manager, page 405 show mgcp, page 406 show mgcp endpoint, page 407 show mgcp connection, page 407 show voice port mod_num/slot_num/port_num, page 409 show mgcp statistics, page 412 Other debug mgcp Commands, page 413
show ccm-manager
If your MGCP network includes Cisco CallManager, use this command to verify the active and redundant configured Cisco CallManager servers. This command also indicates if the gateway is currently registered with Cisco CallManager.
Note
The following show ccm-manager command output was captured in a separated environment.
Router# show ccm-manager MGCP Domain Name: Router Total number of host: 2 Priority Status Host ============================================================ Primary Registered 10.89.129.210 First backup Backup ready 10.89.129.211 Second backup Undefined Current active Call Manager: 10.89.129.210 Current backup Call Manager: 10.89.129.211 Redundant link port: 2428 Failover Interval: 30 seconds Keepalive Interval: 15 seconds
405
Troubleshooting MGCP and Related Protocol Interfaces to the IP Network MGCP Testing Commands
Last keepalive sent: 1d00h (elapsed time: 00:00:03) Last MGCP traffic time: 1d00h (elapsed time: 00:00:03) Last switchover time: 04:49:39 from (10.89.129.211) Switchback mode: Graceful
show mgcp
Use this command to verify the status of the router's MGCP parameters. You should see the IP address of the server that you are using (172.16.1.252 in this case.) All of the other parameters were left at their default behavior in this configuration.
VG200A# show mgcp MGCP Admin State ACTIVE, Oper State ACTIVE - Cause Code NONE MGCP call-agent: 172.16.1.252 Initial protocol service is MGCP MGCP block-newcalls DISABLED MGCP dtmf-relay codec all mode out-of-band MGCP modem passthrough: CA MGCP request timeout 500, MGCP request retries 3 MGCP gateway port: 2427, MGCP maximum waiting delay 3000 MGCP restart delay 0, MGCP vad DISABLED MGCP simple-sdp ENABLED MGCP codec type g711ulaw, MGCP packetization period 20 MGCP JB threshold lwm 30, MGCP JB threshold hwm 150 MGCP LAT threshold lmw 150, MGCP LAT threshold hwm 300 MGCP PL threshold lwm 1000, MGCP PL threshold hwm 10000 MGCP playout mode is adaptive 60, 4, 200 in msec MGCP IP ToS low delay disabled, MGCP IP ToS high throughput disabled MGCP IP ToS high reliability disabled, MGCP IP ToS low cost disabled MGCP IP precedence 5, MGCP default package: line-package MGCP supported packages: gm-package dtmf-package trunk-package line-package hs-package VG200A#
Table 50
Description The administrative and operational state of the MGCP daemon. The administrative state controls starting and stopping the application using the mgcp and mgcp block-newcalls commands. The operational state controls normal MGCP operations. The address of the call agent specified in the mgcp command. The state of the mgcp block-newcalls command. The setting for the mgcp request timeout command. The setting for the mgcp request retries command. The UDP port specification. The setting for the mgcp max-waiting-delay command. The setting for the mgcp restart-delay command. The setting for the mgcp vad command. The setting for the mgcp codec command.
MGCP call-agent MGCP block-newcalls enabled MGCP request timeout MGCP request retries MGCP gateway port MGCP maximum waiting delay MGCP restart delay MGCP VAD MGCP codec type
406
Troubleshooting MGCP and Related Protocol Interfaces to the IP Network MGCP Testing Commands
Table 50
MGCP packetization period MGCP JB threshold low water mark JB threshold high water mark MGCP LAT threshold low water mark LAT threshold high water mark MGCP PL threshold low water mark PL threshold high water mark MGCP IP ToS low delay MGCP IP ToS high throughput MGCP IP ToS high reliability MGCP IP ToS low cost MGCP IP precedence MGCP default package type Supported MGCP packages
The packetization period parameter setting for the mgcp codec command. The jitter buffer minimum threshold parameter setting for the mgcp quality-threshold command. The jitter buffer maximum threshold parameter setting for the mgcp quality-threshold command. The latency minimum threshold parameter setting for the mgcp quality-threshold command. The latency maximum threshold parameter setting for the mgcp quality-threshold command. The packet loss minimum threshold parameter setting for the mgcp quality-threshold command. The packet loss minimum threshold parameter setting for the mgcp quality-threshold command. The low-delay parameter setting for the mgcp ip-tos command. The high-throughput parameter setting for the mgcp ip-tos command. The high-reliability parameter setting for the mgcp ip-tos command. The low-cost parameter setting for the mgcp ip-tos command. The precedence parameter setting for the mgcp ip-tos command. The default-package parameter setting for the mgcp default-package command. The packages supported in this session.
407
Troubleshooting MGCP and Related Protocol Interfaces to the IP Network MGCP Testing Commands
Table 51
Description The endpoint for each call shown in the digital endpoint naming convention of slot number (S0) and digital line (DS1-0) number (1). The MGCP call ID send by the call agent, the internal Call Control Application Programming Interface (CCAPI) call ID for this endpoint, and the peer call legs CCAPI call ID. (CCAPI is an API to provide call control facilities to applications.) The connection ID generated by the gateway and sent in the ACK message. The ports used for this connection. The first port is the local UDP port. The second port is the remote UDP port. The call mode, where: 0Indicates an invalid value for mode. 1Indicates the gateway should only send packets. 2Indicates the gateway should only receive packets. 3Indicates the gateway can send and receive packets. 4Indicates the gateway should neither send nor receive packets. 5Indicates the gateway should place the circuit in loopback mode. 6Indicates the gateway should place the circuit in test mode. 7Indicates the gateway should use the circuit for network access for data. 8Indicates the gateway should place the connection in network loopback mode. 9Indicates the gateway should place the connection in network continuity test mode. 10Indicates the gateway should place the connection in conference mode. All other values are used for internal debugging.
The call state. The values are used for internal debugging purposes. The codec identifier. The values are used for internal debugging purposes. Used for internal debugging. Used for internal debugging.
408
Troubleshooting MGCP and Related Protocol Interfaces to the IP Network MGCP Testing Commands
The following is sample output from the show voice port command for a foreign exchange station (FXS) voice port:
VG200A#show voice port 1/1/0
409
Troubleshooting MGCP and Related Protocol Interfaces to the IP Network MGCP Testing Commands
Foreign Exchange Station 1/1/0 Slot is 1, Sub-unit is 1, Port is 0 Type of VoicePort is FXS Operation State is DORMANT Administrative State is UP No Interface Down Failure Description is not set Noise Regeneration is enabled Non Linear Processing is enabled Music On Hold Threshold is Set to -38 dBm In Gain is Set to 0 dB Out Attenuation is Set to 0 dB Echo Cancellation is enabled Echo Cancel Coverage is set to 8 ms Playout-delay Mode is set to default Playout-delay Nominal is set to 60 ms Playout-delay Maximum is set to 200 ms Connection Mode is normal Connection Number is not set Initial Time Out is set to 10 s Interdigit Time Out is set to 10 s Ringing Time Out is set to 180 s Companding Type is u-law Region Tone is set for US Analog Info Follows: Currently processing none Maintenance Mode Set to None (not in mtc mode) Number of signaling protocol errors are 0 Impedance is set to 600r Ohm Wait Release Time Out is 30 s Station name None, Station number None Voice card specific Info Follows: Signal Type is loopStart Ring Frequency is 25 Hz Hook Status is On Hook Ring Active Status is inactive Ring Ground Status is inactive Tip Ground Status is inactive Digit Duration Timing is set to 100 ms InterDigit Duration Timing is set to 100 ms Ring Cadence is defined by CPTone Selection Ring Cadence are [20 40] * 100 msec VG200A#
Table 52
Field Output Administrative State Alias Clear Wait Duration Timing Connection Mode Connection Number Currently Processing Delay Duration Timing
Description Administrative state of the voice port. User-supplied alias for this voice port. Time of inactive seizure signal to declare call cleared. Connection mode of the interface Full E.164 telephone number used to establish a connection with the trunk or PLAR mode. Type of call currently being processed: none, voice, or fax. Maximum delay signal duration for delay dial signaling.
410
Troubleshooting MGCP and Related Protocol Interfaces to the IP Network MGCP Testing Commands
Table 52
Delay Start Timing Dial Type Digit Duration Timing E&M Type Echo Cancel Coverage Echo Cancellation Hook Flash Duration Timing Hook Status Impedance In Gain In Seizure Initial Time Out InterDigit Duration Timing InterDigit Pulse Duration Timing Interdigit Time Out Maintenance Mode Music On Hold Threshold Noise Regeneration Number of signaling protocol errors Non-Linear Processing Operations State Operation Type Out Attenuation Out Seizure Port Pulse Rate Timing Regional Tone Ring Active Status Ring Frequency Ring Ground Status Signal Type
Timing of generation of delayed start signal from detection of incoming seizure. Out-dialing type of the voice port. DTMF Digit duration in milliseconds. Type of E&M interface. Echo Cancel Coverage for this port. Whether or not echo cancellation is enabled for this port. Maximum length of hook flash signal. Hook status of the FXO/FXS interface. Configured terminating impedance for the E&M interface. Amount of gain inserted at the receiver side of the interface. Incoming seizure state of the E&M interface. Amount of time the system waits for an initial input digit from the caller. DTMF interdigit duration in milliseconds. Pulse dialing interdigit timing in milliseconds. Amount of time the system waits for a subsequent input digit from the caller. Maintenance mode of the voice-port. Configured Music-On-Hold Threshold value for this interface. Whether or not background noise should be played to fill silent gaps if VAD is activated. Number of signaling protocol errors. Whether or not Non-Linear Processing is enabled for this port. Operation state of the port. Operation of the E&M signal: 2-wire or 4-wire. Amount of attenuation inserted at the transmit side of the interface. Outgoing seizure state of the E&M interface. Port number for this interface associated with the voice interface card. Pulse dialing rate in pulses per second (pps). Configured regional tone for this interface. Ring active indication. Configured ring frequency for this interface. Ring ground indication Type of signaling for a voice port: loop-start, ground-start, wink-start, immediate, and delay-dial.
411
Troubleshooting MGCP and Related Protocol Interfaces to the IP Network MGCP Testing Commands
Table 52
Slot Sub-unit Tip Ground Status Type of VoicePort The Interface Down Failure Cause Wink Duration Timing Wink Wait Duration Timing
Slot used in the voice interface card for this port. Sub-unit used in the voice interface card for this port. Tip ground indication. Type of voice port: FXO, FXS, and E&M. Text string describing why the interface is down. Maximum wink duration for wink start signaling. Maximum wink wait duration for wink start signaling.
Table 53
Field Output UDP pkts Unrecognized rx pkts MGCP message parsing errors Duplicate MGCP ack tx Invalid versions count CreateConn rx ...
Description The number of UDP packets received (rx) and transmitted (tx). The number of packets received that are of unknown type. The number of MGCP message parsing errors. The number of duplicate MGCP ACK transmission messages. The number of invalid versions. The number of Create Connection messages received from the call agent by the media gateway. Messages received are classified as being successful or failed. The number of Delete Connection messages received from the call agent by the media gateway. Messages received are classified as being successful or failed.
DeleteConn rx ...
412
Troubleshooting MGCP and Related Protocol Interfaces to the IP Network MGCP Testing Commands
Table 53
ModifyConn rx ...
The number of Modify Connection messages received from the call agent by the media gateway. Messages received are classified as being successful or failed. The number of Delete Connection messages sent by the call agent. Messages received are classified as being successful or failed. The number of Notify messages received by the call agent from the media gateway. Messages received are classified as being successful or failed. The number of Audit Connection messages received from the call agent by the media gateway. Messages received are classified as being successful or failed. The number of Audit Endpoint messages received from the call agent by the media gateway. Messages received are classified as being successful or failed. The number of Restart In Progress (RSIP) messages transmitted by the call agent. Messages received are classified as being successful or failed. The number of Notify messages transmitted by the call agent. Messages received are classified as being successful or failed. The number of acknowledgement messages transmitted by the call agent. The number of negative acknowledgement messages transmitted by the call agent. The number of acknowledgement messages received by the gateway. The number of negative acknowledgement messages received by the gateway. The IP address of the call agent. The total number of messages received by the gateway. Messages received are classified as being successful or failed.
AuditConnection rx ...
AuditEndpoint rx ...
RestartInProgress tx ... Notify tx ... ACK tx ... NACK tx ... ACK rx ... NACK rx ... IP address Total msg rx ...
413
Troubleshooting MGCP and Related Protocol Interfaces to the IP Network MGCP Testing Commands
414
Verifying the Voice Connections, page 415 Verifying the Frame Relay Configuration, page 416 Troubleshooting Tasks, page 416 Monitoring and Maintaining the VoFR Configuration, page 417 Troubleshooting VoFR with QoS, page 417 Troubleshooting VoIP over Frame Relay with Multipoint PVCs and Prioritization, page 418 VoFR Testing Commands, page 419
Pick up the telephone handset and verify that there is a dial tone. Call from a local telephone to the configured dial peer and verify that the call completes.
To verify the FXO-FXS trunk calls to a remote PBX, perform the following tasks:
Pick up the telephone and listen for a dial tone from the remote PBX. Dial a telephone number, so that the remote PBX routes the call.
Check the validity of the dial peer and voice port configuration by performing the following tasks:
Enter the show dial-peer voice command to verify that the data configured is correct.
415
Troubleshooting Voice over Frame Relay Interfaces to the IP Network Verifying the Frame Relay Configuration
Enter the show dial-peer voice summary command to check the validity of the dial peer
configurations.
Enter the show voice port command to show the status of the voice ports. Enter the show call active voice with the keyword brief to show the call status for all voice
ports.
Enter the show voice call command to check the validity of the voice port configuration. Enter the show voice dsp command to show the current status of all DSP voice channels. Enter the show voice permanent command to show the status of Cisco trunk permanent calls. Enter the show call history command to show the active call table.
Check the validity of the VoFR configuration on the DLCI by entering the show frame-relay vofr command to show the VoFR configuration.
Enter the show frame-relay pvc command to show the status of the PVCs. Enter the show frame-relay vofr command with the arguments interface, dlci, and cid to show statistics and information on the open subchannels. Enter the show frame-relay fragment command with the arguments interface number and dlci to show the Frame Relay fragmentation configuration. Enter the show traffic-shape queue command to display the traffic-shaping information if Frame Relay traffic shaping is configured. The queue option displays the queueing statistics. For more information about traffic shaping, refer to Frame Relay Traffic Shaping for VoIP and VoFR, document 14073.
Troubleshooting Tasks
To troubleshoot and resolve configuration issues, perform the following tasks:
If no calls are going through, ensure that the frame-relay voice bandwidth command is configured. If VoFR is configured on a PVC and there are problems with data connectivity on that PVC, ensure that the frame-relay fragment command has been configured. If data is not being transmitted but fragmentation is configured, ensure that Frame Relay traffic shaping is turned on. If the problem is with the dial plan or the dial peers, use the show dial-plan number command with the argument dial string to display which dial peers are being used when a specific number is called. If there are problems connecting an FRF.11 trunk call, ensure that the session protocol command in dial peer configuration is set to frf11-trunk. If FRF.11 trunk calls on the Cisco 2600 or Cisco 3600 series routers are being configured, verify that the called-number vofr command in dial peer configuration is configured and that its number matches the destination pattern of the corresponding POTS dial peer. Ensure that the voice port is set to no shutdown. Ensure that the serial port or the T1/E1 controller is set to no shutdown.
416
Troubleshooting Voice over Frame Relay Interfaces to the IP Network Monitoring and Maintaining the VoFR Configuration
Toggle the voice port by first entering shutdown and then no shutdown every time the connection trunk or no connection trunk command is entered.
Purpose Displays the active call table. Displays the call history table.
or
Router# show call history voice record Router# show dial-peer voice
Displays configuration information and call statistics for dial peers. Displays information about the Frame Relay fragmentation taking place in the Cisco router. Displays statistics about PVCs for Frame Relay interfaces. Displays the FRF.11 subchannel information on VoFR DLCIs. Displays information about a serial interface. Displays information about the elements queued at a particular time at the VC (DLCI) level. Displays information about the permanent calls on a voice interface.
show policy-map interface serial interface#This command is useful for viewing the LLQ operation and any drops in the PQ. show policy-map policy_map_nameDisplays information about the policy-map configuration. show queue interface-type interface-numberLists fair queueing configuration information and statistics for a particular interface.
417
Troubleshooting Voice over Frame Relay Interfaces to the IP Network Troubleshooting VoIP over Frame Relay with Multipoint PVCs and Prioritization
debug priorityDisplays PQ events and shows whether dropping occurs in this queue. show class-map class_nameDisplays information about the class-map configuration. show call active voiceUsed to check for lost packets at the DSP level. show frame-relay ip rtp header-compressionDisplays RTP header compression statistics.
For more information about low-latency queueing for VoFR, refer to the Low Latency Queueing for Frame Relay feature document.
Fragmentation Commands
Use the following debug and show commands to verify and troubleshoot fragmentation configurations.
show frame-relay fragmentDisplays information about the Frame Relay fragmentation taking place in the Cisco router. debug frame-relay fragmentDisplays event or error messages related to Frame Relay fragmentation. It is enabled at the PVC level on the selected interface.
show traffic-shape queue interfaceDisplays information about the elements queued at the VC data-link connection identifier (DLCI) level. The command is used to verify the operation of IP RTP priority over Frame-Relay. When the link is congested, voice flows are identified with a weight of zero. This indicates that the voice flow is using the PQ. show traffic-shapeDisplays information such as Tc, Bc, Be, and CIR configured values. show frame-relay pvc dlci-#Displays information such as traffic shaping parameters, fragmentation values, and dropped packets.
For more information about VoIP over Frame Relay with quality of service (QoS), refer to VoIP over Frame Relay with Quality of Service (Fragmentation, Traffic Shaping, LLQ / IP RTP Priority), document 12156.
Troubleshooting VoIP over Frame Relay with Multipoint PVCs and Prioritization
When you are troubleshooting the traffic-shaping and prioritization for a VoIP over Frame Relay network with hub and spoke topology, the configuration of the hub is such that there are two permanent virtual circuits (PVCs) for each remote spoke, and both data and voice are sent over both PVCs.
Note
The prioritization and fragmentation discussed in this document applies not only to this scenario but also to a scenario where you may have one PVC with voice and data and another with only data. The data PVCs need to be traffic-shaped just as the voice and data PVCs are. This is because when a single physical pipe is shared, in this case at the hub, the serialization delay affects all data items, regardless of the PVC they are destined for.
418
Troubleshooting Voice over Frame Relay Interfaces to the IP Network VoFR Testing Commands
The following debug commands can help you troubleshoot traffic-shaping and prioritization for VoIP over Frame Relay.
debug priorityDisplays PQ events and indicates whether dropping occurs in this queue. Frame Relay is a special case with respect to policing the priority queue. The PQ is policed to ensure that the fair queues are not starved of bandwidth. When you configure the PQ, you specify in kbps the maximum amount of bandwidth available to that queue. Packets that exceed that maximum are dropped. Originally, the priority queue of a service-policy configured in a Frame Relay map class was policed during periods of congestion and noncongestion. Cisco IOS Release 12.2 removes this exception. PQ is still policed with FRF.12, but other nonconforming packets are only dropped if there is congestion. debug frame-relay fragmentDisplays event or error messages related to Frame Relay fragmentation. The command is only enabled at the PVC level on the selected interface.
newyork# debug priority Priority output queueing debugging is on newyork#ping 172.16.120.1 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 172.16.120.1, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 56/57/60 ms newyork# 00:42:40: PQ: Serial2/0: ip -> normal 00:42:40: PQ: Serial2/0 output (Pk size/Q 104/2) 00:42:40: PQ: Serial2/0: ip -> normal 00:42:40: PQ: Serial2/0 output (Pk size/Q 104/2) 00:42:40: PQ: Serial2/0: ip -> normal 00:42:40: PQ: Serial2/0 output (Pk size/Q 104/2) 00:42:40: PQ: Serial2/0: ip -> normal 00:42:40: PQ: Serial2/0 output (Pk size/Q 104/2) 00:42:40: PQ: Serial2/0: ip -> normal 00:42:40: PQ: Serial2/0 output (Pk size/Q 104/2) 00:42:41: PQ: Serial2/0 output (Pk size/Q 13/0) newyork# debug frame-relay fragment interface serial 2/0 100 This may severely impact network performance. You are advised to enable no logging console debug. Continue?[confirm] Frame Relay fragment/packet debugging is on Displaying fragments/packets on interface Serial2/0 dlci 100 only
Serial2/0(i): dlci 100, rx-seq-num 126, exp_seq-num 126, BE bits set, frag_hdr 04 C0 7E Serial2/0(o): dlci 100, tx-seq-num 82, BE bits set, frag_hdr 04 C0 52
For more information about VoIP over Frame Relay with Multipoint PVCs and Prioritization, refer to VoIP over Frame Relay with Multipoint PVCs and Prioritization, document 12162.
419
Troubleshooting Voice over Frame Relay Interfaces to the IP Network VoFR Testing Commands
Displays statistics about PVCs for Frame Relay interfaces. Displays debug messages for switched Frame Relay PVCs.
420
Checking the ATM Configuration, page 422 Verifying the Voice Connection, page 422 Verifying the ATM Interface Configuration, page 423 Verifying the VoATM Connection, page 425
421
Troubleshooting Voice over ATM Interfaces to the IP Network Checking the ATM Configuration
SUMMARY STEPS
1. 2. 3.
DETAILED STEPS
Step 1 Step 2 Step 3
Use the show dial-peer voice command on the local and remote concentrators to verify that the data is configured correctly on both. Use the show interface command to verify that the ATM interface is up. Ensure that the voice port, serial port, and controller T1 0 is set to no shutdown.
Note
ATM defaults to Interim Local Management Interface (ILMI). If the carrier is using LMI, be sure to configure LMI support on the router.
SUMMARY STEPS
1. 2. 3. 4. 5. 6.
Verify dial tone. Verify that a call attempt is successful. show dial-peer voice show voice port show voice call show voice dsp
DETAILED STEPS
Step 1 Step 2 Step 3 Step 4
Pick up the telephone handset and verify that a dial tone is present. Make a call from the local telephone to a configured dial peer and verify that the call attempt is successful. Use the show dial-peer voice command to verify that the configured data is correct. Use the show voice port command to show the status of the voice ports.
422
Troubleshooting Voice over ATM Interfaces to the IP Network Verifying the ATM Interface Configuration
Step 5 Step 6
Use the show voice call command to show the call status for all voice ports. Use the show voice dsp command to show the current status of all DSP voice channels.
Enter the privileged EXEC show atm vc command to view the SVC (data only) and PVC set. The following is sample output:
Router# show atm vc VCD / Interface 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Peak Encaps SAAL ILMI SNAP SNAP VOICE VOICE VOICE VOICE VOICE VOICE VOICE VOICE VOICE VOICE VOICE VOICE VOICE VOICE VOICE Avg/Min Burst SC Kbps Kbps Cells UBR 0 UBR 0 UBR 0 UBR 0 VBR 64 16 10 VBR 64 16 10 VBR 64 16 10 VBR 64 16 10 VBR 64 16 10 VBR 64 16 10 VBR 64 16 10 VBR 64 16 10 VBR 64 16 10 VBR 64 16 10 VBR 64 16 10 VBR 64 16 10 VBR 64 16 10 VBR 64 16 10 VBR 64 16 10
VPI 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
VCI 5 16 60 84 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147
Type PVC PVC SVC SVC SVC SVC SVC SVC SVC SVC SVC SVC SVC SVC SVC SVC SVC SVC SVC
Sts UP UP UP UP UP UP UP UP UP UP UP UP UP UP UP UP UP UP UP
Note
VoATM SVCs are not supported since Cisco IOS Release12.0(7)XK. ATM SVCs for data are still supported. Enter the show atm pvc command with the VPI/VCI specified to view the PVCs that are set up for ILMI management and Q.SAAL signaling. The following is sample output:
Router# show atm pvc 0/5 ATM0: VCD: 2, VPI: 0, VCI: 5, Connection Name: SAAL UBR, PeakRate: 56 AAL5-SAAL, etype:0x4, Flags: 0x26, VCmode: 0x0 OAM frequency: 0 second(s), OAM retry frequency: 1 second(s), OAM retry frequenc y: 1 second(s) OAM up retry count: 3, OAM down retry count: 5 OAM Loopback status: OAM Disabled OAM VC state: Not Managed ILMI VC state: Not Managed InARP DISABLED InPkts: 2044, OutPkts: 2064, InBytes: 20412, OutBytes: 20580 InPRoc: 2044, OutPRoc: 2064, Broadcasts: 0 InFast: 0, OutFast: 0, InAS: 0, OutAS: 0 OAM cells received: 0
423
Troubleshooting Voice over ATM Interfaces to the IP Network Verifying the ATM Interface Configuration
F5 InEndloop: 0, F5 InSegloop: 0, F5 InAIS: 0, F4 InEndloop: 0, F4 InSegloop: 0, F4 InAIS: 0, OAM cells sent: 0 F5 OutEndloop: 0, F5 OutSegloop: 0, F5 OutRDI: F4 OutEndloop: 0, F4 OutSegloop: 0, F4 OutRDI: OAM cell drops: 0 Compress: Disabled Status: INACTIVE, State: NOT_IN_SERVICE ! Router# show atm pvc 0/16
F5 InRDI: 0 F4 InRDI: 0 0 0
ATM0: VCD: 1, VPI: 0, VCI: 16, Connection Name: ILMI UBR, PeakRate: 56 AAL5-ILMI, etype:0x0, Flags: 0x27, VCmode: 0x0 OAM frequency: 0 second(s), OAM retry frequency: 1 second(s), OAM retry frequenc y: 1 second(s) OAM up retry count: 3, OAM down retry count: 5 OAM Loopback status: OAM Disabled OAM VC state: Not Managed ILMI VC state: Not Managed InARP DISABLED InPkts: 398, OutPkts: 421, InBytes: 30493, OutBytes: 27227 InPRoc: 398, OutPRoc: 421, Broadcasts: 0 InFast: 0, OutFast: 0, InAS: 0, OutAS: 0 OAM cells received: 0 F5 InEndloop: 0, F5 InSegloop: 0, F5 InAIS: 0, F5 InRDI: 0 F4 InEndloop: 0, F4 InSegloop: 0, F4 InAIS: 0, F4 InRDI: 0 OAM cells sent: 0 F5 OutEndloop: 0, F5 OutSegloop: 0, F5 OutRDI: 0 F4 OutEndloop: 0, F4 OutSegloop: 0, F4 OutRDI: 0 OAM cell drops: 0 Compress: Disabled Status: INACTIVE, State: NOT_IN_SERVICE
Enter the show atm interface command in privileged EXEC mode and specify ATM 0 to display the ATM interface. The following is sample output from the command:
Router# show interface atm 0 ATM0 is up, line protocol is up Hardware is PQUICC Atom1 Internet address is 9.1.1.6/8 MTU 1500 bytes, sub MTU 1500, BW 1536 Kbit, DLY 20000 usec, reliability 255/255, txload 22/255, rxload 11/255 NSAP address: 47.0091810000000002F26D4901.000011116666.06 Encapsulation ATM 292553397 packets input, -386762809 bytes 164906758 packets output, 1937663833 bytes 0 OAM cells input, 0 OAM cells output, loopback not set Keepalive not supported Encapsulation(s):, PVC mode 1024 maximum active VCs, 28 current VCCs VC idle disconnect time: 300 seconds Signalling vc = 1, vpi = 0, vci = 5 UNI Version = 4.0, Link Side = user Last input 00:00:00, output 2d05h, output hang never Last clearing of "show interface" counters never Input queue: -1902/75/0 (size/max/drops); Total output drops: 205 Queueing strategy: weighted fair Output queue: 0/1000/64/0 (size/max total/threshold/drops) Conversations 0/0/256 (active/max active/max total) Reserved Conversations 0/0 (allocated/max allocated) 5 minute input rate 67000 bits/sec, 273 packets/sec 5 minute output rate 136000 bits/sec, 548 packets/sec
424
Troubleshooting Voice over ATM Interfaces to the IP Network Verifying the VoATM Connection
76766014 packets input, 936995443 bytes, 0 no buffer Received 0 broadcasts, 0 runts, 0 giants, 0 throttles 0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort 367264676 packets output, 3261882795 bytes, 0 underruns 0 output errors, 0 collisions, 2 interface resets 0 output buffer failures, 0 output buffers swapped out
Enter the show atm video-voice address privileged EXEC command to display the ATM interface address and confirm the ILMI status (ILMI PVC is set up to enable SVC management). The ATM interface is assigned automatically with the atm voice aesa command. The following is a sample output:
Router# show atm video-voice address nsap address 47.0091810000000002F26D4901.00107B4832E1.FE 47.0091810000000002F26D4901.00107B4832E1.C8 type VOICE_AAL5 VIDEO_AAL1 ilmi status Confirmed Confirmed
SUMMARY STEPS
1. 2. 3. 4. 5. 6.
Verify dial tone. Verify that a call attempt is successful. show dial-peer voice show voice port show voice call show voice dsp
DETAILED STEPS
Step 1 Step 2 Step 3 Step 4 Step 5 Step 6
Pick up the handset on a telephone connected to the configuration and verify that there is dial tone. Make a call from the local telephone to a configured dial peer to verify the connection. If there are relatively few dial peers configured, use the show dial-peer voice command to verify that the data configured is correct. To show the status of the voice ports, use the show voice port command. To show the call status for all voice ports, use the show voice call command. To show the current status of all DSP voice channels, use the show voice dsp command.
Troubleshooting Tips
If a call does not connect, resolve the problem by performing the following tasks:
Verify dial peer configuration by using the show dial-peer voice command on the local and remote concentrators.
425
Troubleshooting Voice over ATM Interfaces to the IP Network Verifying the VoATM Connection
Verify that ATM interface 0 is up by using the show interface command. Ensure that the voice port, serial port, and controller T1 0 are set to no shutdown.
426
A R T
Tcl IVR 2.0Tcl-based scripting with an API. VoiceXMLStandards-based markup language for voice browsers.
Applications can also be developed using a hybrid of both Tcl and VoiceXML. The following sections describe troubleshooting Cisco IOS Tcl and VoiceXML applications:
Troubleshooting Tcl IVR, page 429 Media Inactive Call Detection, page 436 Troubleshooting Cisco VoiceXML, page 452 MGCP Scripting Overview, page 458 Events and Status Codes, page 458
429
TFTP
TFTP OGW IP network H.323/SIP PRI IVR TGW IVR PRI PSTN
PSTN
IP
IP
Caller
IP
IP
IP
IP
IP
Called
For information on developing Tcl scripts for voice applications, refer to the TCL IVR API Version 2.0 Programmers Guide. Refer to the following sections to troubleshoot a Tcl application:
Testing and Debugging Your Script, page 430 Loading Your Script, page 431 Associating Your Script with an Inbound Dial Peer, page 432 Displaying Information About IVR Scripts, page 432 Using URLs in IVR Scripts, page 435 Tips for Using Your Tcl IVR Script, page 436
430
For more information about the debug voip ivr command, see the Cisco IOS Debug Command Reference. The output of any Tcl puts commands is displayed if script debugging is on. Possible sources of errors are:
An unknown or misspelled command (for example, if you misspell media play as mediaplay) A syntax error (such as, specifying an invalid number of arguments) Executing a command in an invalid state (for example, executing the media pause command when no prompt is playing) Using an information tag (info-tag) in an invalid scope (for example, specifying evt_dcdigits when not handling the ev_collectdigits_done event).
In most cases, an error such as these causes the underlying infrastructure to disconnect the call legs and clean up.
After you associate an application with your Tcl IVR script, use the following command to configure parameters:
(config)# call application voice application_name script_url [parameter value]
In this command:
application_name specifies the name of the Tcl application that the system is to use for the calls configured on the inbound dial peer. Enter the name to be associated with the Tcl IVR script. script_url is the pathname where the script is stored. Enter the pathname of the storage location first and then the script filename. Tcl IVR scripts can be stored in Flash memory or on a server that is acceptable using a URL, such as a TFTP server. parameter value allows you to configure values for specific parameters, such as language or PIN length.
For more information about the call application voice command, refer to the Interactive Voice Response Version 2.0 on Cisco VoIP Gateways document on Cisco.com. In the following example, the application named test is associated with the Tcl IVR script called newapp.tcl, which is located at tftp://keyer/debit_audio/:
(config)# call application voice test tftp://keyer/debit_audio/newapp.tcl
Note
If the script cannot be loaded, it is placed in a retry queue and the system periodically retries to load it. If you modify your script, you can reload it using only the script name:(config)# call application
voice load script_name
For more information about using the call application voice and call application voice load commands, refer to the Cisco IOS TCL IVR and VoiceXML Application Guide. For more information about these commands, refer to the Cisco IOS Voice Command Reference.
431
In these commands:
number uniquely identifies the dial peer. (This number has local significance only.) destination_number specifies the destination telephone number. Valid entries are any series of digits that specify the E.164 telephone number. application_name is the abbreviated name that you assigned when you loaded the application.
For example, the following commands indicate that the application called newapp should be invoked for calls that come in from an IP network and are destined for the telephone number of 125.
(config)# dial-peer voice 3 voip (conf-dial-peer)# incoming called-number 125 (conf-dial-peer)# application newapp
For more information about inbound dial peers, refer to Dial Peer Configuration on Voice Gateway Routers and the Cisco IOS TCL IVR and VoiceXML Application Guide.
In this command:
name indicates the name of the desired IVR application. If you enter the name of a specific application, the system supplies information about that application. summary indicates that you want to view summary information. If you specify the summary keyword, a one-line summary is displayed about each application. If you omit this keyword, a detailed description of the specified application is displayed.
The following is example output of the show call application voice command:
Router# show call application voice session2 Idle call list has 0 calls on it. Application session2 The script is read from URL tftp://dirt/sarvi/scripts/tcl/app_session.tcl The uid-len is 10 (Default) The pin-len is 4 (Default) The warning-time is 60 (Default) The retry-count is 3 (Default) It has 0 calls active. The TCL Script is: -----------------# app_session.tcl
432
#-----------------------------------------------------------------# Copyright (c) 1998, 1999 by cisco Systems, Inc. # All rights reserved. #-----------------------------------------------------------------# # This tcl script mimics the default SESSION app # # # If DID is configured, just place the call to the dnis # Otherwise, output dial-tone and collect digits from the # caller against the dial-plan. # # Then place the call. If successful, connect it up, otherwise # the caller should hear a busy or congested signal. # The main routine just establishes the state machine and then exits. # From then on the system drives the state machine depending on the # events it receives and calls the appropriate tcl procedure
proc init { } { global param set param(interruptPrompt) true set param(abortKey) * set param(terminationKey) # } proc act_Setup { } { global dest global beep set beep 0 leg setupack leg_incoming if { [infotag get leg_isdid] } { set dest [infotag get leg_dnis] leg proceeding leg_incoming leg setup $dest callInfo leg_incoming fsm setstate PLACECALL } else { playtone leg_incoming tn_dial set param(dialPlan) true leg collectdigits leg_incoming param }
} proc act_GotDest { } { global dest set status [infotag get evt_status] if { $status == "cd_004" } { set dest [infotag get evt_dcdigits]
433
leg proceeding leg_incoming leg setup $dest callInfo leg_incoming } else { puts "\nCall [infotag get con_all] got event $status while placing an outgoing call" call close } }
proc act_CallSetupDone { } { global beep set status [infotag get evt_status] if { $status == "CS_000"} { set creditTimeLeft [infotag get leg_settlement_time leg_outgoing]
if { ($creditTimeLeft == "unlimited") || ($creditTimeLeft == "uninitialized") } { puts "\n Unlimited Time" } else { # start the timer for ... if { $creditTimeLeft < 10 } { set beep 1 set delay $creditTimeLeft } else { set delay [expr $creditTimeLeft - 10] } timer start leg_timer $delay leg_incoming } } else { puts "Call [infotag get con_all] got event $status collecting destination" call close } } proc act_Timer { } { global beep global incoming global outgoing set incoming [infotag get leg_incoming] set outgoing [infotag get leg_outgoing] if { $beep == 0 } { #insert a beep ...to the caller connection destroy con_all set beep 1 } else { media play leg_incoming flash:out_of_time.au fsm setstate CALLDISCONNECTED } } proc act_Destroy { } { media play leg_incoming flash:beep.au } proc act_Beeped { } { global incoming global outgoing
434
connection create $incoming $outgoing } proc act_ConnectedAgain { } { timer start leg_timer 10 leg_incoming } proc act_Ignore { } { # Dummy puts "Event Capture" } proc act_Cleanup { } { call close } init #---------------------------------# State Machine #---------------------------------set TopFSM(any_state,ev_disconnected) "act_Cleanup,same_state" set TopFSM(CALL_INIT,ev_setup_indication) "act_Setup,GETDEST" set TopFSM(GETDEST,ev_digitcollect_done) "act_GotDest,PLACECALL" set TopFSM(PLACECALL,ev_setup_done) "act_CallSetupDone,CALLACTIVE" set TopFSM(CALLACTIVE,ev_leg_timer) "act_Timer,INSERTBEEP" set TopFSM(INSERTBEEP,ev_destroy_done) "act_Destroy,same_state" set TopFSM(INSERTBEEP,ev_media_done) "act_Beeped,same_state" set TopFSM(INSERTBEEP,ev_create_done) "act_ConnectedAgain,CALLACTIVE" set TopFSM(CALLACTIVE,ev_disconnected) "act_Cleanup,CALLDISCONNECTED" set TopFSM(CALLDISCONNECTED,ev_disconnected) "act_Cleanup,same_state" set TopFSM(CALLDISCONNECTED,ev_media_done) "act_Cleanup,same_state" set TopFSM(CALLDISCONNECTED,ev_media_done) "act_Cleanup,same_state" set TopFSM(CALLDISCONNECTED,ev_disconnect_done) "act_Cleanup,same_state" set TopFSM(CALLDISCONNECTED,ev_leg_timer) "act_Cleanup,same_state"
CALL_INIT
Note
There is a limit of 32 entries in Flash memory, so you may not be able to copy all your audio files into Flash memory.
flash:myscript.tclThe script called myscript.tcl is being loaded from Flash memory on the router. slot0:myscript.tclThe script called myscript.tcl is being loaded from a device in slot 0 on the router.
435
tftp://BigServer/myscripts/betterMouseTrap.tclThe script called myscript.tcl is being loaded from a server called BigServer in a directory within the tftpboot directory called myscripts.
For static prompts, you can use the IFS-supported URLs as described in the URLs for Loading the IVR Script section on page 435. For dynamic prompts, the URL is created by the software, using information from the parameters specified for the media play command and the language CLI configuration command.
How do I get information from my RADIUS server to the Tcl IVR script? After you have performed an authentication and authorization, you can use the infotag get command to obtain the credit amount, credit time, and cause codes maintained by the RADIUS server.
What happens if my script encounters an error? When an error is encountered in the script, the call is cleared with a cause of TEMPORARY_FAILURE (41). If the IVR application has already accepted the incoming call, the caller hears silence. If the script has not accepted the incoming call, the caller might hear a fast busy signal. If the script exits with an error and IVR debugging is on (as described in the Testing and Debugging Your Script section on page 430), the location of the error in the script is displayed at the command line.
Use additional filters to display one or more calls detected and reported as inactive Manually release a call by entering the called number, the calling number, or the call ID
The Media Inactive Call Detection feature enables a system administrator to view all detected inactive calls that have been reported to the Tcl script. An internal error code (IEC) is generated when an inactive call is requested to be cleared via the CLI command. The following sections provide configuration information for Media Inactive Call Detection:
436
Restrictions for Media Inactive Call Detection, page 437 Information about Media Inactive Call Detection, page 437 Configuring Media Inactive Call Detection, page 442 Output Examples for Media Inactive Call Detection, page 443
Before the following step is done, you should set the inactive timer. This can be done using the timer receive-rtcp command in the CLI or it can be set in the script itself using infotag set media_timer_factor. The Media Inactive Call Detection feature requires Cisco IOS Release 12.3(4)T or later. To enable the Media Inactive Call Detection feature, set the information tag evt_feature_report using media_inactivity type. For example: infotag set evt_feature_report media inactivity
The Media Inactive Call Detection feature does not change the existing behavior for the default session application and Tcl IVR 1.0 or the existing Tcl IVR 2.0 script behavior that does not request the new feature. This feature does not support MGCP call legs. The Media Inactive Call Detection feature works in IP only. This feature does not include PSTN inactive call detection. This feature supports RTP/RTCP media inactivity detection and notification only on H.323 and SIP basic calls.
Improved Functionality of Media Inactive Call Detection, page 437 Modifications to Information Tags and Internal Error Codes, page 438
This functionality is an enhancement to the pre-existing Media Inactivity Timer feature, which enables gateways to monitor and disconnect VoIP calls if no RTCP packets are received within a configurable time period.
437
The Media Inactivity Timer feature requires the configuration of the Cisco IOS ip rtcp report interval command and the timer receive-rtcp command to enable detection of RTCP packets by the gateway. When these commands are configured, the gateway uses RTCP report detection, rather than RTP packet detection, to determine whether calls on the gateway are still active or should be disconnected. If no RTCP packets are received in the resulting time period, the call is disconnected. The ip rtcp report interval command configures the RTCP reporting interval in milliseconds in the range of 1 to 65535. The timer receive-rtcp command configures the multiplier in the range of 2 to 1000. These values can be adjusted depending on network traffic conditions. Under normal conditions, a value of 5000 for the ip rtcp report interval and a value of 5 for the timer receive-rtcp are typical.
Current Functionality
The show call active command indicates that a call has no RTP or RTCP inactivity. The clear call command offers options so that an inactive call can be released using the called number or calling number. The clear call command has also been enhanced to configure the Q.850 release cause code to be used when the call is released.
For more detailed information, refer to the Cisco IOS TCL and VoiceXML Application Guide and the Cisco IOS TCL Programming Guide.
evt_feature_report
This existing tag has a new event name (media_inactivity) added for the Tcl script to request notification of media inactivity detection.
Description
Infotag set evt_feature_report {["no_"]event_names} Where event_name is a list of application event names that define what events should or should not be reported to application when call is active (connected). An event name with "no_" prefix means not to report it.
Mode
Write
438
Scope
ev_feature
Return Type
None
Direct Mapping
None
Event Names:
The following example enables hookflash and disable fax and modem feature events to be received by the script: infotag set evt_feature_report hookflash nofax no modem The following example enables media_inactivity event to be received by the script: infotag set evt_feature_report media_inactivity
evt_feature_type
This existing information tag adds two new event feature types representing media inactivity notification and media activity notification. Note that the script only needs to request for report type media_inactivity. However, after media inactivity is reported and the VoIP RTP starts receiving RTP/RTCP packets again, the event with type media_activity is automatically notified, indicating that the call is back alive.
Description
Read
Scope
ev_feature
439
Return Type
String
Direct Mapping
None
Event Names
evt_feature_param
This is a new information tag added so that the Tcl application can pass along parameters related to the feature back to the script. The Media Inactive Call Detection feature uses this new tag to pass the information on whether RTCP packet has been received before the media inactive condition is met.
Description
Read
Scope
ev_feature
Return Type
String
Direct Mapping
None
Event Parameter
for a configured amount of time). RTCP packet has been received before media inactivity condition is met.
440
no control info receivedMedia inactivity detected (no RTP or RTCP packets have been
received for a configured amount of time). No RTCP packet has been received before media inactivity condition is met.
Example
media_timer_factor
This new information tag gives the Tcl script the ability to overwrite the configured gateway receive-rtcp timer. This value is used to calculate the timeout value used to detect media inactivity.
Description
To set the timer receive-rtcp timer. This new value is used within the scope of the script. It does not change the gateway configuration.
Syntax:
Write
Scope
None
Return Type
None
Direct Mapping
None
Timer factor:
An integer between 2 and 1000. This value is the multiple of RTCP report transmission intervala value of 5 is recommended.
Example:
Note
If the value specified is not between 2 and 1000, the script generates an error message.
media_inactivity_err
The internal error code used by the Tcl script for this feature is media_inactivity_err (common IEC error #8). This IEC is used to disconnect a call where media inactivity is detected and reported.
441
SUMMARY STEPS
1. 2. 3. 4.
enable Make a call using the Tcl IVR 2.0 script application. While the call is going, the commands in steps 3 and 4 can be used. show call active voice [brief] [called-number number | calling-number number | compact | echo-canceller | id | media-inactive {called-number number | calling-number number}] clear call voice causecode <1-127> {id <1-FFFF> | media-inactive}
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
Starts a call. While the call is going, the commands in steps 3 and 4 can be used.
442
Command or Action
Step 3
show call active voice [brief] [called-number number | calling-number number | compact | echo-canceller | id | media-inactive {called-number number | calling-number number}]
The brief keyword shows the brief version of active voice calls. The called-number keyword shows only the call with the specified called number pattern. The calling-number keyword shows only the call with the specified calling number pattern. The compact keyword shows a compact version of the active voice calls. The echo-canceller keyword shows echo canceller data for an active voice call. The id keyword shows only the call with the specified ID. The media-inactive keyword shows only the calls with media inactive being detected and notified. The number argument is a sequence of digits representing a full, recognizable telephone number.
Example:
Router# show call active voice media-inactive calling-number 4085551234 Router# show call active voice brief media-inactive called-number 4085554321
Step 4
Clears calls that show media inactive and can clear a specific call.
Example:
Router# clear call voice causecode id 112B
The causecode keyword is a Q.850 disconnect cause code. The cause code can be specified as a number 1 through 127. The id keyword can be used so that only the voice call with the specified ID is disconnected. The 1-FFFF range is a call identifier as shown in brief format. The media-inactive keyword clears only calls with media inactivity detected and notified.
show call active voice brief Command: Example, page 443 show running config Command: Example, page 445 Sample Tcl IVR script, page 449
443
IP <ip>:<udp> rtt:<time>ms pl:<play>/<gap>ms lost:<lost>/<early>/<late> delay:<last>/<min>/<max>ms <codec> media inactive detected:<y/n> media cntrl rcvd:<y/n> timestamp:<time> <----------- the above line is new -------------MODEMPASS <method> buf:<fills>/<drains> loss <overall%> <multipkt>/<corrected> last <buf event time>s dur:<Min>/<Max>s FR <protocol> [int dlci cid] vad:<y/n> dtmf:<y/n> seq:<y/n> <codec> (payload size) ATM <protocol> [int vpi/vci cid] vad:<y/n> dtmf:<y/n> seq:<y/n> <codec> (payload size) Tele <int>: tx:<tot>/<v>/<fax>ms <codec> noise:<l> acom:<l> i/o:<l>/<l> dBm MODEMRELAY info:<rcvd>/<sent>/<resent> xid:<rcvd>/<sent> total:<rcvd>/<sent>/<drops> speeds(bps): local <rx>/<tx> remote <rx>/<tx> Proxy <ip>:<audio udp>,<video udp>,<tcp0>,<tcp1>,<tcp2>,<tcp3> endpt: <type>/<manf> bw: <req>/<act> codec: <audio>/<video> tx: <audio pkts>/<audio bytes>,<video pkts>/<video bytes>,<t120 pkts>/<t120 bytes> rx: <audio pkts>/<audio bytes>,<video pkts>/<video bytes>,<t120 pkts>/<t120 bytes>
Telephony call-legs: 1 SIP call-legs: 0 H323 call-legs: 1 Total call-legs: 2 11DF : 239062hs.1 +2 pid:1 Answer 4085254616 active dur 00:01:04 tx:2383/89775 rx:1187/23318 Tele 3:D:13: tx:45900/2110/0ms g729r8 noise:-69 acom:45
i/0:-71/-29 dBm
11DF : 239684hs.1 +830 pid:1800877 Originate 18008770519 active dur 00:00:49 tx:1066/20965 rx:2378/47215 IP 1.9.57.5:17750 rtt:5ms pl:38190/0ms lost:0/1/0 delay:50/50/70ms g729r8 media inactive detected:y media cntrl recv:y timestamp: 12595 <------------------ the above line is new -----------------Telephony call-legs: 1 SIP call-legs: 0 H323 call-legs: 1 Total call-legs: 2
Note
For calls without media inactivity being detected, the display looks like the following:
... 11DF : 239062hs.1 +2 pid:1 Answer 4085254616 active dur 00:01:04 tx:2383/89775 rx:1187/23318 Tele 3:D:13: tx:45900/2110/0ms g729r8 noise:-69 acom:45
i/0:-71/-29 dBm
11DF : 239684hs.1 +830 pid:1800877 Originate 18008770519 active dur 00:00:49 tx:1066/20965 rx:2378/47215 IP 1.9.57.5:17750 rtt:5ms pl:38190/0ms lost:0/1/0 delay:50/50/70ms g729r8 media inactive detected:y media cntrl recv:n/a timestamp: n/a <------------------ the above line is new -----------------Telephony call-legs: 1 SIP call-legs: 0 H323 call-legs: 1 Total call-legs: 2
The long display form of active call records generated by the show call active voice command is also modified to add the media inactive detected information.
Router_5300# show call active voice
444
Telephony call-legs: 1 SIP call-legs: 0 H323 call-legs: 1 Total call-legs: 2 GENERIC: SetupTime=239062 ms Index=1 PeerAddress=4085254616 PeerSubAddress= PeerId=1 ... TELE: ConnectionId=[0xB21F398F 0x1DA111D4 0x800B85CB 0x3E43F332] IncomingConnectionId=[0xB21F398F 0x1DA111D4 0x800B85CB 0x3E43F332] TxDuration=51250 ms VoiceTxDuration=2110 ms ... GENERIC: SetupTime=239684 ms Index=1 PeerAddress=18008770519 PeerSubAddress= ... VOIP: ConnectionId[0xB21F398F 0x1DA111D4 0x800B85CB 0x3E43F332] IncomingConnectionId[0xB21F398F 0x1DA111D4 0x800B85CB 0x3E43F332] RemoteIPAddress=1.9.57.5 ... TranslatedRedirectCalledNumber= TranslatedRedirectCalledOctet=0x7F MediaInactiveDetected=yes <---- new MediaInactiveTimestamp=12595 <---- new MediaControlReceived=yes <---- new Username=Telephony call-legs: 1 SIP call-legs: 0 H323 call-legs: 1 Total call-legs: 2
Note
For calls where no media inactivity is detected and notified, the above three fields are displayed as follows:
TranslatedRedirectCalledNumber= TranslatedRedirectCalledOctet=0x7F MediaInactiveDetected=no MediaInactiveTimestamp= MediaControlReceived= Username=Telephony call-legs: 1 SIP call-legs: 0 H323 call-legs: 1 Total call-legs: 2
445
! version 12.2 no service pad service timestamps debug datetime msec service timestamps log datetime msec no service password-encryption ! hostname "jc5400" ! no boot startup-test logging buffered 2000000 debugging no logging console enable secret 5 $1$afrj$LWwkVSLZ3cKak3OkHsAMt/ enable password lab ! username 1111 username 2222 password 0 2222 username 123001 password 0 1001 username cisco ! ! resource-pool disable clock timezone GMT -8 tdm clock priority 1 6/0 spe default-firmware spe-firmware-1 aaa new-model ! ! aaa authentication login h323 local group radius aaa authentication login telnet none aaa authorization exec h323 local group radius aaa authorization exec telnet none aaa accounting connection h323 start-stop group radius aaa session-id common ip subnet-zero ip cef ip ftp username dump ip ftp password dump123 no ip domain lookup ip host tftp-server1 10.1.1.211 ip host rtsp-server1 10.1.1.211 ip host radius-server1 10.1.1.211 ip host gwip-server1 10.1.1.211 ip host dump-server1 10.1.1.211 ! isdn switch-type primary-5ess isdn voice-call-failure 0 ! voice call carrier capacity active ! ! ! voice cause-code ! no voice hpi capture buffer no voice hpi capture destination ! ! ivr prompt memory 16384 ! fax interface-type fax-mail mta receive maximum-recipients 600 ! !
446
! controller T1 6/0 framing esf linecode b8zs pri-group timeslots 1-24 no yellow generation no yellow detection ! controller T1 6/1 shutdown framing sf linecode ami no yellow generation no yellow detection ! controller T1 6/2 shutdown framing sf linecode ami no yellow generation no yellow detection ! controller T1 6/3 shutdown framing sf linecode ami no yellow generation no yellow detection ! controller T1 6/4 shutdown framing sf linecode ami no yellow generation no yellow detection ! controller T1 6/5 shutdown framing sf linecode ami no yellow generation no yellow detection ! controller T1 6/6 shutdown framing sf linecode ami no yellow generation no yellow detection ! controller T1 6/7 shutdown framing sf linecode ami no yellow generation no yellow detection gw-accounting aaa ! ! ! interface FastEthernet0/0 ip address 10.1.1.212 255.255.0.0 no ip redirects no ip mroute-cache
447
duplex auto speed auto no cdp enable ! interface FastEthernet0/1 no ip address no ip redirects no ip mroute-cache shutdown duplex auto speed auto no cdp enable ! interface Serial0/0 no ip address no ip mroute-cache shutdown clockrate 2000000 no cdp enable ! interface Serial6/0 no ip address shutdown ! interface Serial0/1 no ip address no ip mroute-cache shutdown clockrate 2000000 no cdp enable ! interface Serial6/0:23 no ip address isdn switch-type primary-5ess isdn incoming-voice modem isdn bchan-number-order ascending no keepalive no cdp enable ! interface Group-Async0 no ip address no ip mroute-cache group-range 1/00 1/107 ! ip classless ip route 10.1.0.0 255.255.0.0 10.1.1.211 ip http server ! ip pim bidir-enable ip rtcp report interval 5000 ! ! no logging trap dialer-list 1 protocol ip permit dialer-list 1 protocol ipx permit ! ! radius-server host 10.1.1.211 auth-port 1645 acct-port 1646 radius-server key cisco radius-server authorization permit missing Service-Type radius-server vsa send accounting radius-server vsa send authentication ! call application voice testapp_JC tftp://10.1.1.211/Scripts/JC_app1.tcl
448
call rsvp-sync ! voice-port 6/0:D ! ! mgcp profile default ! dial-peer cor custom ! ! ! dial-peer voice 1000 pots application testapp_JC incoming called-number 5551001 direct-inward-dial port 6/0:D ! ! dial-peer voice 3000 voip destination-pattern 5551001 session target ipv4:10.1.1.213 dtmf-relay h245-signal codec g711ulaw ! ! gateway timer receive-rtcp 5 ! sip-ua ! ! line con 0 exec-timeout 0 0 logging synchronous line aux 0 logging synchronous line vty 0 4 password lab authorization exec telnet login authentication telnet line 1/00 1/107 no flush-at-activation modem InOut ! exception core-file jc5400_core exception protocol ftp exception dump 10.1.1.211 scheduler allocate 10000 400 end
449
# IOS based gateways, and reports this situation to the TCL IVR 2.0 application # and TCL IVR application checks for the events and logs those events. # # This script is designed to place a call to the dnis if DID is configured. # Otherwise, output dial-tone and collects digits from the caller against # the dial-plan. If an inactive condition 'ev_feature' is detected then script # begins to log the inactivity events. However, if the VOIP RTP starts receiving # RTP/RTCP packets again, then event with media_activity type will be automatically # notified, indicating that the call is back alive. # #--------------------------------# Example Script #--------------------------------proc init { } { global param global timerFactor set set set set } proc act_Setup { } { global dest if { [infotag get leg_isdid] } { set dest [infotag get leg_dnis] leg proceeding leg_incoming leg setup $dest callInfo leg_incoming fsm setstate PLACECALL } else { leg setupack leg_incoming playtone leg_incoming tn_dial set param(dialPlan) true leg collectdigits leg_incoming param } } proc act_GotDest { } { global dest set status [infotag get evt_status] if { $status == "cd_004" } { set dest [infotag get evt_dcdigits] leg proceeding leg_incoming leg setup $dest callInfo leg_incoming } else { call close } } proc act_CallSetupDone { } { infotag set evt_feature_report media_inactivity infotag set media_timer_factor $timerFactor set status [infotag get evt_status] if { $status == "ls_000"} { param(interruptPrompt) true param(abortKey) * param(terminationKey) # timerFactor 6
450
} else { call close } } proc act_EvFeatureReceived { } { global timerFactor set featureType [infotag get evt_feature_type] if { $featureType == "media_inactivity" } { log -s "media inactivity or silence is detected" set inactivity_type [infotag get evt_feature_param media_inactivity_type] if { $inactivity_type == "no media received" } { log -s "media inactivity, RTCP packet was previously received" } if { $inactivity_type == "no control info received" } { log -s "media inactivity, no RTCP packet was previously received " } } elseif { $featureType == "media_activity" } { log -s "media activity detected and call is back alive, VOIP RTP starts receiving RTP/RTCP packets" } else { log -s "other Events have been detected" } } proc act_Cleanup { } { call close } init #---------------------------------# State Machine #---------------------------------set fsm(any_state,ev_disconnected) set fsm(CALL_INIT,ev_setup_indication) set fsm(GETDEST,ev_collectdigits_done) set fsm(PLACECALL,ev_setup_done) set fsm(CALLACTIVE,ev_feature)
set fsm(CALLACTIVE,ev_disconnected) "act_Cleanup set fsm(CALLDISCONNECT,ev_disconnected) "act_Cleanup set fsm(CALLDISCONNECT,ev_disconnect_done) "act_Cleanup fsm define fsm CALL_INIT # End the application
451
HTTP server
SMTP server
PSTN
IP network
TFTP server
VoiceXML-enabled gateway
IP RTSP server
Voice gateway
For information on developing a VoiceXML document for implementing an application on the Cisco voice gateway, refer to the Cisco VoiceXML Programmers Guide. This section describes some of the troubleshooting techniques for the Cisco VoiceXML features.
Debugging Cisco VoiceXML Applications, page 453 Error Events, page 454 JavaScript or ECMA Script, page 455 Troubleshooting Speech Recognition and Synthesis, page 455 Troubleshooting ASR and TTS Server Functionality, page 456
For a list of the latest troubleshooting FAQs, go to the developer support website here: http://www.cisco.com/cgi-bin/dev_support/access_level/products.cgi?product=VOICE_XML_GATEW AY
452
37888
PSTN
<cisco-debug> is used to debug only a specific application. To disable debugging messages for all VoiceXML applications except the specific VoiceXML application you wish to debug, use the <cisco-debug> element in the VoiceXML document in conjunction with the debug condition application voice command. Refer to the Cisco IOS TCL and VoiceXML Application Guide for information on debug commands.
Note
Before you use Cisco IOS debug commands to debug a specific application, add <cisco-debug> to the VoiceXML document for the application you want to debug, . For example:
SUMMARY STEPS
1. 2. 3.
Turn on global debug. Add the <cisco-debug enabled = true/> and <cisco-debug enabled = false/> elements around the specific part of the VoiceXML document where you want to see debugging messages. Add conditional debugging to the specific application.
DETAILED STEPS
Step 1
Turn on global debug for the areas you want to debug. For example:
debug vxml application debug vxml trace
Note
If you do not proceed with step 2 and end your task with step 1, you see error messages for all the applications, irrespective of conditional debug being turned on or off.
Note
The debug condition application voice command filters debugging output for only the debug vxml and debug http client commands. However, it does not filter output for the debug vxml error, debug vxml background, debug http client error, or debug http client background commands.
Step 2
Add the <cisco-debug enabled = true/> and <cisco-debug enabled = false/> elements around the specific part of the VoiceXML document where you want to see debugging messages. For example:
<?xml version="1.0"?> <vxml version="1.0" application="root.vxml">
453
<form> <block> <cisco-debug enabled = "true"/> <prompt> <audio src="welcome.au" caching="fast"/> </prompt> <cisco-debug enabled = "false"/> <goto next="getExtension.vxml?"/> </block> </form> </vxml>
Step 3
Add conditional debugging to the specific application you want to debug. For example: Three applications named myapp1, myapp2, and myapp3, all of which can be loaded by using the call application voice command are shown below:
call application voice myapp1 http://server1/vxml/test1.vxml call application voice myapp2 http://server2/vxml/test2.vxml call application voice myapp3 http://server3/vxml/test3.vxml
To debug only one of the applications, for example myapp1, use the debug condition application voice command to disable debug messages for the other applications, myapp2 and myapp3.
debug condition application voice myapp1
Note
Debugging for myapp1 is performed for only those debug areas that have been enabled in step 1 above. Debugging for the specific session must be enabled through the <cisco-debug> tag as shown in step 2 above.
Error Events
Enabling the debug vxml error command displays a list of possible error events on the console. For a list of error events, see the Events and Status Codes section. Some of the possible errors generated with the debug vxml error command enabled are:
error.badfetch
Possible Causes
Suggested Actions
The VoiceXML interpreter throws this event when there is a failure in retrieving external components in the application. These external components can be VoiceXML documents, prerecorded files, or grammar files. A badfetch error usually occurs when there is an error in fetching an external document.
Verify that the external documents, audio prompts, or grammar files are available at the specified location mentioned in the URL. If the external components are stored on a HTTP server, enable the debug http client error command. If the external components are stored on a RTSP server, search for error.badfetch.rtsp.xxx, where xxx is a RTSP response code. For values of RTSP response codes, refer to RFC 2326 available on the IETF website at http://www.ietf.org/.
454
error.semantic
Possible Causes Logical errors such as referencing an undefined variable. Defining different grammar types in the same scope in the VoiceXML application.
Suggested Actions Verify that all variables referenced in the script are valid and defined. Verify that only one grammar type is used at the time of recognizing user input.
Failure to define mandatory parameters in Cisco Verify that all mandatory parameters are defined objects. For example, failure to define the account in Cisco objects used in the script. parameter in the authorize object results in a semantic error.
error.unsupported.format
Suggested Actions Verify that all formats used in the script are supported by the specific platforms being used.
455
Table 54
Possible Causes Server is not configured either on the Cisco gateway or in the VoiceXML document.
Suggested Actions Verify that the server location is configured by using at least one of these methods:
Globally on the gateway by using the ivr asr-server or ivr tts-server command. Refer to the Cisco IOS TCL and VoiceXML Application Guide. With the com.cisco.asr-server or com.cisco.tts-server property in the VoiceXML document. Refer to the Cisco VoiceXML Programmers Guide.
Gateway cannot access external ASR or TTS server or server is not running.
Ping the external server to make sure that the gateway has connectivity.
RTSP or MRCP errors are occurring between the See the Troubleshooting ASR and TTS Server gateway and the media server. Functionality section on page 456.
debug vxml error and debug vxml event debug mrcp error debug rtsp error, debug rtsp session, and debug rtsp socket
DETAILED STEPS
Step 1
Use the debug vxml error and debug vxml event commands to verify that the external media server is reachable and its location is configured on the gateway or in the VoiceXML document. In the following example, the application failed because the media server is not configured on the gateway or in the VoiceXML document.:
Router# debug vxml error Router# debug vxml event *Jan 5 18:24:19.507: //62/36CA25A68036/VXML:/vxml_vapp_tts: tftp://demo/sample/banking.vxml at line 17: vapp_tts() fail with vapp error 1 **Jan 5 18:24:19.507: //62/36CA25A68036/VXML:/vxml_event_proc: *Jan 5 18:24:19.507: <event>: event=error.badfetch status=0 *Jan 5 18:24:19.507: //62/36CA25A68036/VXML:/vxml_default_event_handler: use default event handler *Jan 5 18:24:19.507: //62/36CA25A68036/VAPP:/vapp_session_exit_event_name: Exit Event error.badfetch *Jan 5 18:24:19.507: //62/36CA25A68036/VAPP:/vapp_session_exit_event_name: Exit Event error.badfetch *Jan 5 18:24:19.507: //62/36CA25A68036/VAPP:/vapp_session_exit_event_name: Exit Event Name already set to error.badfetch *Jan 5 18:24:19.507: //62/36CA25A68036/VXML:/vxml_vapp_terminate: vapp_status=0 ref_count 0
456
*Jan 5 18:24:19.507: //62/36CA25A68036/VXML:/vxml_vapp_terminate: vxml session terminating with code=ERROR vapp status=VAPP_SUCCESS vxml async status=VXML_ERROR_BAD_FETCH
In the following example, the application failed because the media server is either unreachable or is not running.
*Jan 5 18:36:44.451: //83/ECD9B163804B/VXML:/vxml_media_done: : media play failed to setup with VAPP error=31, protocol_status_code=0 **Jan 5 18:36:44.451: <event>: event=error.com.cisco.media.resource.unavailable status=0 *Jan 5 18:36:44.451: //83/ECD9B163804B/VXML:/vxml_default_event_handler: use default event handler *Jan 5 18:36:44.451: //83/ECD9B163804B/VAPP:/vapp_session_exit_event_name: Exit Event error.com.cisco.media.resource.unavailable *Jan 5 18:36:44.451: //83/ECD9B163804B/VAPP:/vapp_session_exit_event_name: Exit Event error.com.cisco.media.resource.unavailable *Jan 5 18:36:44.451: //83/ECD9B163804B/VAPP:/vapp_session_exit_event_name: Exit Event Name already set to error.com.cisco.media.resource.unavailable *Jan 5 18:36:44.451: //83/ECD9B163804B/VXML:/vxml_vapp_terminate: vapp_status=0 ref_count 0
Step 2
Use the debug mrcp error command to verify the connection between the gateway and the server. The following example shows the error when the RTSP connection to the server fails:
Router# debug mrcp error *May 9 20:29:09.936:Connecting to 10.1.2.58:554 failed
The following error occurs when the response from the server is incorrect:
*May *May 9 20:29:09.936:Response from 10.1.2.58:554 failed 9 20:29:09.936:MRCP/1.0 71 422 COMPLETE
The following error occurs when the recognize request comes out of sequence:
*May 9 20:29:09.936:act_idle_recognize:ignoring old recognize request
Step 3
Use the debug rtsp error, debug rtsp session, and debug rtsp socket commands to verify the RTSP connection with the media server, for example: The following message displays if the RTSP connection fails:
*Sep 25 15:02:32.052: //-1//RTSP:/rtsplib_connect_to_svr: Socket Connect failed: 172.19.140.31:554
The following message displays if the RTSP client receives an incorrect response from the server:
*Sep 25 15:03:35.062: //-1//RTSP:/rtsp_process_single_svr_resp: Parse Server Response failed, 172.19.140.31:554
The following message displays if the codec configured on the IP side is not G.711:
*Sep 25 15:05:15.765: //-1//RTSP:/rtsplib_rtp_associate_done: Association mismatch
457
MGCP OGW
MGCP IP network
MGCP
PSTN
PRI
PRI
PSTN
IP
IP
Caller
IP
IP
IP
IP
IP
Called
RTSP server
In the figure above, the RTSP server is configured to interact with gateways that have voice applications installed and running. The RADIUS server also interacts with the gateways to provide authentication, authorization, and accounting (AAA). For instructions on how to configure your gateway for MGCP, refer to the MGCP and Related Protocols Configuration Guide.
458
31492
Events
The following events can be received by the Tcl IVR script. Any events received that are not included below are ignored. Event ev_address_resolved ev_alert Description List of endpoint addresses. An intermediate event generated by the leg setup or leg setup_continue commands to set up a call. If specified in the callinfo parameter, notifyEvents, the script receives an ev_alert message once the destination endpoint is successfully alerted. The script running in the transferee gateway could then disconnect the leg towards the transferring endpoint. If this event is an intercepted event, the application needs to use the leg setup_continue command to allow the system to continue with the setup. ev_any_event ev_authorize_done A special wildcard event that can be used in the state machine to represent any event that might be received by the script. Confirms the completion of the aaa authorize command. You can use the evt_status info-tag to determine the authorization status (whether it succeeded or failed). Confirms the completion of the authentication command. You can use the evt_status info-tag to determine the authentication status (whether it succeeded or failed). Indicates that the call-level timer expired. Confirms the completion of the leg collectdigits command on the call leg. You can then use the evt_status info-tag to determine the status of the command completion. You can use the evt_dcdigits info-tag to retrieve the collected digits. An intermediate event generated by the leg setup or leg setup_continue commands to set up a call. If the callinfo paramater, notifyEvents, is specified, the script receives an ev_connected message when the system receives a connect event from the destination switch. If this event is an intercepted event, the application needs to use the leg setup_continue command to allow the system to continue with the setup. ev_consult_request ev_consult_response ev_consultation_done ev_create_done Indicates a call-transfer consultation-id request from an endpoint. Indicates a response to the leg consult request command. For return codes, see Consult Status under Status Codes. Indicated the completion of a leg consult response command. For return codes, see Consult Response under Status Codes. Confirms the completion of the connection create command. You can use the evt_connection info-tag to determine the ID of the completed connection. Confirms the completion of the connection destroy command. You can use the evt_connection info-tag to determine the ID of the connection that was destroyed.
ev_authenticate_done
ev_call_timer0 ev_collectdigits_done
ev_connected
ev_destroy_done
459
Event ev_digit_end
Description Indicates that a digit key is pressed and released. You can use the evt_digit info-tag to determine which digit was pressed. You can use the evt_digit_duration info-tag to determine how long (in seconds) the digit was pressed and to detect long pounds or long digits. Indicates that the call leg has been cleared. Indicates that one of the call legs needs to disconnect. On receiving this event, the script must issue a leg disconnect on that call leg. You can use the evt_legs info-tag to determine which call leg disconnected. Indicates that a DISC/PI message is received at a call leg. Indicates a response to a leg facility command. Indicates that an application that called this script is requesting that the script return the call leg. The script receiving this event can clean up and return the leg with a handoff return command. Whether this is done is at the discretion of the script receiving the ev_grab event. Indicates a hook flash (such as a quick onhook-offhook in the middle of a call), assuming that the underlying platform or interface supports hook flash detection. Indicates that the script received one or more call legs from another application. When the script receives this event, you can use the evt_legs and the evt_connections info-tags to obtain a list of the call legs and connection IDs that accompanied the ev_handoff event. Indicates that the leg timer expired. You can use the evt_legs info-tag to determine which leg timer expired. Indicates that the prompt playout either completed or failed. You can use the evt_status info-tag to determine the completion status. An intermediate event generated by the leg setup or leg setup_continue commands to set up a call. If the callinfo paramater, notifyEvents, is specified, the script receives an ev_proceeding message when the system receives a proceeding event from the remote end. If this event is an intercepted event, the application needs to use the leg setup_continue command to allow the system to continue with the setup.
ev_disconnect_done ev_disconnected
ev_hookflash
ev_handoff
ev_progress
An intermediate event generated by the leg setup or leg setup_continue commands to set up a call. If the callinfo paramater, notifyEvents, is specified, the script receives an ev_progress message when the system receives a progress event from the destination switch. If this event is an intercepted event, the application needs to use the leg setup_continue command to allow the system to continue with the setup.
460
Event ev_returned
Description Indicates that a call leg that was sent to another application (using handoff callappl) has been returned. This event can be accompanied by one or more call legs that were created by the called application. When the script receives this event, you can use the evt_legs and the evt_connections info-tags to obtain a list of the call legs and connection IDs that accompanied the ev_returned event. You can use the evt_iscommand_done info-tag to verify that all of the call legs sent have been accounted for, meaning that the handoff callappl command is complete. Indicates that the leg setup command has finished. You can then use the evt_status info-tag to determine the status of the command completion (whether the call was successfully set up or failed for some reason). Indicates that the system received a call. This event and the ev_handoff event are the events that initiate an execution instance of a script. Indicates a call transfer from an endpoint to the application. An intermediate event generated by the leg setup command. If specified in the callinfo parameter, notifyEvents, the script receives an ev_trasfer_status message. The ev_status information tag would then contain the status value of the call transfer. Received when the VXML dialog completes. This could be because of a VXML dialog executing an <exit/> tag or interpretation completing the current document without a transition to another document. The dialog could also complete due to an interpretation failure or a document error. This completion status is also available through the evt_status info-tag. Received by the Tcl IVR application when the VXML dialog initiated on a leg executes a sendevent object tag. The VXML subevent name is available through the evt_vxmlevent info-tag. All events thrown from the dialog markup are of the form vxml.dialog.*. All events generated by the systemperhaps as an indirect reaction to the VXML document executing a certain tag or throwing a certain event like the dialog completion event are of the form vxml.session.*.
ev_setup_done
ev_vxmldialog_done
ev_vxmldialog_event
Status Codes
The evt_status info-tag returns a status code for the event received. This sections lists the possible status codes and their meaning. Status codes are grouped according to function. The first two characters of the status code indicate the grouping.
auAuthentication status aoAuthorization status cdDigit collection status crConsult response csConsult status di Disconnect cause faFacility
461
ftFeature type lsLeg setup status msMedia status tsTransfer status vdVoice dialog completion status
Authentication Status
Authentication status is reported in au_xxx format: Value for xxx 000 001 002 Description Authorization was successful. Authorization error. Authorization failed.
Authorization Status
Authorization status is reported in ao_xxx format: Value for xxx 000 001 002 Description Authorization was successful. Authorization error. Authorization failed.
462
Consult Response
Feature type is reported in cr_xxx format: Value for xxx Description 000 001 002 003 004 Success Failed, invalid state Failed, timeout Failed, abandon Failed, protocol error
Consult Status
Feature type is reported in cs_xxx format: Value for xxx Description 000 001 002 003 004 005 Consultation success, consult-id available Consultation failed, request timeout Consultation failed Consultation failed, request rejected Consultation failed, leg disconnected Consultation failed, operation unsupported
Disconnect Cause
Disconnect causes use the format di_xxx where xxx is the Q931 cause code. Possible values are: Value for xxx Description 000 001 002 003 004 005 006 007 008 009 016 017 018 019 Uninitialized Unassigned number No route to the transit network No route to the destination Send information tone Misdialed trunk prefix Unacceptable channel Call awarded Preemption Preemption reserved Normal Busy No response from the user No answer from the user
463
Value for xxx Description 020 021 022 026 027 028 029 030 034 035 036 037 038 039 040 041 042 043 044 045 046 047 048 049 050 053 055 057 058 062 063 065 066 069 070 079 081 Subscriber is absent Call rejected Number has changed Selected user is clearing Destination is out of order Invalid number Facility rejected Response to status inquiry No circuit available Requested VPCI VCI is not available VPCI VCI assignment failure Cell rate is not available Network is out of order Permanent frame mode is out of service Permanent frame mode is operational Temporary failure Switch is congested Access information has been discarded No required circuit No VPCI VCI is available Precedence call blocked No resource available DSP error QoS is not available Facility is not subscribed Outgoing calls barred Incoming calls barred Bearer capability is not authorized Bearer capability is not available Inconsistency in the information and class Service or option not available Bearer capability is not implemented Change type is not implemented Facility is not implemented Restricted digital information only Service is not implemented Invalid call reference value
464
Value for xxx Description 082 083 084 085 086 087 088 090 091 093 095 096 097 098 099 100 101 102 103 110 111 127 128 129 160 Channel does not exist Call exists and call ID in use Call ID in use No call suspended Call cleared User is not in CUG Incompatible destination CUG does not exist Invalid transit network AAL parameters not supported Invalid message Mandatory information element (IE) is missing Message type is not implemented Message type is not compatible IE is not implemented Invalid IE contents Message in incomplete call state Recovery on timer expiration Nonimplemented parameter was passed on Unrecognized parameter message discarded Protocol error Internetworking error Next node is unreachable Holst Telephony Service Provider Module (HTSPM) is out of service DTL transit is not my node ID
Facility
Leg setup requesting address resolution status is reported in fa_xxx format: Value for xxx Description 000 003 007 009 010 050 051 052 supplementary service request succeeded supplementary service request unavailable supplementary service was invoked in an invalid call state supplementary service was invokes in a non-incoming call leg supplementary service interaction is not allowed MCID service is not subscribed MCID request timed out MCID is not configured for this interface
465
Feature Type
Feature type is reported in ft_xxx format: Value for xxx Description 001 002 003 004 005 006 Fax Modem Modem_phase Hookflash OnHook OffHook
466
Value for xxx Description 042 050 051 052 053 054 055 056 057 058 059 Transfer success unacknowledged (SIP only) Transfer fail Transfer failed, bad request (SIP only) Transfer failed, destination busy Transfer failed, request cancelled Transfer failed, internal error Transfer failed, not implemented (SIP only) Transfer failed, service unavailable or unsupported Transfer failed, leg disconnected Transfer failed, multiple choices (SIP only) Transfer failed, timeout; no response to transfer request
Media Status
Media status is reported in ms_xyy format: x indicates the command Value for x 0 1 2 3 4 5 6 Description yy indicates the status of the command Value for yy Description The command was successful and the prompt finished.1 Failure Unsupported feature or request Invalid host or URL specified Received disconnected The prompt was interrupted by a key press.
Status for a media play command. 00 Status for a media record command. Status for a media pause command. Status for a media resume command. Status for a media seek command to forward. Status for a media seek command to rewind. 01
1. Valid for the media play command only, because media_done events are not received for successful completion of other media commands.
Transfer Status
Transfer status is reported in ts_xxx format: Value for xxx Description 000 001 002 Generic transfer success Transfer success, transfer-to party is alerting Transfer success, transfer-to party is answered
467
Value for xxx Description 003 004 005 006 007 008 009 Transfer finished; however, the result of the transfer is not guaranteed Transfer request is accepted Transferee is trying to reach transfer-to party Transfer request is rejected by transferee Invalid transfer number Transfer-to party unreachable Transfer-to party is busy
001
002 003
468
Troubleshooting AAA for Voice, page 469 Accounting Server Connectivity Failure and Recovery Detection, page 483 Troubleshooting Enhanced Billing Support for SIP Gateways, page 496 Troubleshooting Settlement, page 497
Using Debug Commands for AAA Voice Troubleshooting, page 469 Using show Commands for AAA Voice Troubleshooting, page 480
For more information about AAA troubleshooting, go to the Diagnosing and Troubleshooting AAA Operations chapter in the Cisco AAA Implementation Case Study document.
469
aaa authorization exec sanj_aaa1 group sg1 aaa accounting connection sanj_aaa1 start-stop group sg1 ! aaa authentication login sanj_aaa6 group sg6 aaa authorization exec sanj_aaa6 group sg6 aaa accounting connection sanj_aaa6 start-stop group sg6 ! aaa authentication login sanj_aaa7 group sg7 aaa authorization exec sanj_aaa7 group sg7 aaa accounting connection sanj_aaa7 start-stop group sg7 ! voice class aaa 1 authentication method sanj_aaa1 authorization method sanj_aaa1 accounting method sanj_aaa1 accounting template cdr1 ! voice class aaa 2 authentication method sanj_aaa6 authorization method sanj_aaa6 accounting method sanj_aaa6 accounting template cdr2 ! voice class aaa 3 authentication method sanj_aaa7 authorization method sanj_aaa7 accounting method sanj_aaa7 ! dial-peer voice 1000 pots application plain_debit incoming called-number 12345 voice-class aaa 1 port 0:D ! dial-peer voice 1001 pots application plain_debit incoming called-number 12346 voice-class aaa 2 port 1:D
debug radius Radius protocol debugging is on Radius packet hex dump debugging is off Radius packet protocol debugging is on debug isdn q931 ISDN Q931 packets debugging is on 00:17:55: ISDN Se0:23: RX <- SETUP pd = 8 callref = 0x009D 00:17:55: Bearer Capability i = 0x8090A2 00:17:55: Channel ID i = 0xE1808397 00:17:55: Calling Party Number i = 0x0080, '4081234567', Plan:Unknown, Type:Unknown 00:17:55: Called Party Number i = 0xE9, '12345', Plan:Private, Type:Abbreviated 00:17:55: RADIUS/ENCODE(0000000C): Unsupported AAA attribute timezone 00:17:55: RADIUS(0000000C): Encoding nas-port...Only port-type avlbl 00:17:55: RADIUS(0000000C): sending 00:17:55: RADIUS: Send to unknown id 4 10.6.20.70:1699, Accounting-Request, len 262 00:17:55: RADIUS: authenticator 10 41 58 99 4C F2 B1 CD - 44 3E E3 60 5D 10 C3 A9 00:17:55: RADIUS: Acct-Session-Id [44] 10 "0000000C" 00:17:55: RADIUS: Vendor, Cisco [26] 56 00:17:55: RADIUS: Conf-Id [24] 50 "h323-conf-id=B8FE8B7F BF1711D3 800CE483 89ADC43B" 00:17:55: RADIUS: Vendor, Cisco [26] 31
470
00:17:55: RADIUS: h323-call-origin [26] 25 "h323-call-origin=answer" 00:17:55: RADIUS: Vendor, Cisco [26] 65 00:17:55: RADIUS: Cisco AVpair [1] 59 "h323-incoming-conf-id=B8FE8B7F BF1711D3 800CE483 89ADC43B" 00:17:55: RADIUS: User-Name [1] 12 "4081234567" 00:17:55: RADIUS: Acct-Status-Type [40] 6 Start [1] 00:17:55: RADIUS: NAS-Port-Type [61] 6 Async [0] 00:17:55: RADIUS: Vendor, Cisco [26] 19 00:17:55: RADIUS: cisco-nas-port [2] 13 "ISDN 0:D:23" 00:17:55: RADIUS: Calling-Station-Id [31] 12 "4081234567" 00:17:55: RADIUS: Called-Station-Id [30] 7 "12345" 00:17:55: RADIUS: Service-Type [6] 6 Login [1] 00:17:55: RADIUS: NAS-IP-Address [4] 6 10.5.20.100 00:17:55: RADIUS: Delay-Time [41] 6 0 00:17:55: ISDN Se0:23: TX -> CALL_PROC pd = 8 callref = 0x809D 00:17:55: Channel ID i = 0xA98397 00:17:55: ISDN Se0:23: TX -> CONNECT pd = 8 callref = 0x809D 00:17:55: RADIUS: Received from id 4 10.6.20.70:1699, Accounting-response, len 20 00:17:55: RADIUS: authenticator DC CD BA E8 7E 02 EA D1 - 12 67 DC 57 3C 73 56 75 00:17:55: ISDN Se0:23: RX <- CONNECT_ACK pd = 8 callref = 0x009D 00:17:55: ISDN Se0:23: CALL_PROGRESS: CALL_CONNECTED call id 0x63, bchan 22, dsl 0 00:17:55: %ISDN-6-CONNECT: Interface Serial0:22 is now connected to 4081234567 00:18:01: %ISDN-6-CONNECT: Interface Serial0:22 is now connected to 4081234567 00:18:06: RADIUS(0000000C): Encoding nas-port...Only port-type avlbl 00:18:06: RADIUS/ENCODE(0000000C): acct_session_id: 12 00:18:06: RADIUS(0000000C): sending 00:18:06: RADIUS: Send to unknown id 3 10.6.20.70:1698, Access-Request, len 199 00:18:06: RADIUS: authenticator 4B 2C 8C D7 12 54 45 3D - 51 44 30 05 C3 9B 44 B1 00:18:06: RADIUS: User-Name [1] 8 "777777" 00:18:06: RADIUS: User-Password [2] 18 * 00:18:06: RADIUS: Vendor, Cisco [26] 56 00:18:06: RADIUS: Conf-Id [24] 50 "h323-conf-id=61A46F2C 00000003 62E66E40 62E3A5C8" 00:18:06: RADIUS: Vendor, Cisco [26] 36 00:18:06: RADIUS: Cisco AVpair [1] 30 "h323-ivr-out=transactionID:3" 00:18:06: RADIUS: Calling-Station-Id [31] 12 "4081234567" 00:18:06: RADIUS: NAS-Port-Type [61] 6 Async [0] 00:18:06: RADIUS: Vendor, Cisco [26] 19 00:18:06: RADIUS: cisco-nas-port [2] 13 "ISDN 0:D:23" 00:18:06: RADIUS: Calling-Station-Id [31] 12 "4081234567" 00:18:06: RADIUS: Service-Type [6] 6 Login [1] 00:18:06: RADIUS: NAS-IP-Address [4] 6 10.5.20.100 00:18:06: RADIUS: Received from id 3 10.6.20.70:1698, Access-Accept, len 200 00:18:06: RADIUS: authenticator 9C AA 9E 4C 64 02 13 3A - 72 8C 3F D9 72 D0 3B 06 00:18:06: RADIUS: Vendor, Cisco [26] 27 00:18:06: RADIUS: Cisco AVpair [1] 21 "h323-ivr-in=sanjose" 00:18:06: RADIUS: Vendor, Cisco [26] 34 00:18:06: RADIUS: Cisco AVpair [1] 28 "h323-credit-amount=7777.77" 00:18:06: RADIUS: Vendor, Cisco [26] 26 00:18:06: RADIUS: Cisco AVpair [1] 20 "h323-return-code=0" 00:18:06: RADIUS: Vendor, Cisco [26] 30 00:18:06: RADIUS: h323-credit-time [102] 24 "h323-credit-time=54329" 00:18:06: RADIUS: Vendor, Cisco [26] 33 00:18:06: RADIUS: h323-billing-model [109] 27 "h323-billing-model=prepay" 00:18:06: RADIUS: Vendor, Cisco [26] 24 00:18:06: RADIUS: h323-currency [110] 18 "h323-currency=US" 00:18:06: RADIUS: Idle-Timeout [28] 6 30 00:18:06: RADIUS: Received from id C 00:18:27: ISDN Se0:23: RX <- DISCONNECT pd = 8 callref = 0x009D 00:18:27: Cause i = 0x8290 - Normal call clearing 00:18:27: %ISDN-6-DISCONNECT: Interface Serial0:22 disconnected from 4081234567 , call lasted 32 seconds 00:18:27: ISDN Se0:23: TX -> RELEASE pd = 8 callref = 0x809D 00:18:27: ISDN Se0:23: RX <- RELEASE_COMP pd = 8 callref = 0x009D
471
00:18:27: RADIUS/ENCODE(0000000C): Unsupported AAA attribute timezone 00:18:27: RADIUS(0000000C): Encoding nas-port...Only port-type avlbl 00:18:27: RADIUS(0000000C): sending 00:18:27: RADIUS: Send to unknown id 5 10.6.20.70:1699, Accounting-Request, len 327 00:18:27: RADIUS: authenticator 2D 65 1C 38 6D 5B B3 DD - C8 57 D6 02 B4 4F E4 4E 00:18:27: RADIUS: Acct-Session-Id [44] 10 "0000000C" 00:18:27: RADIUS: Vendor, Cisco [26] 56 00:18:27: RADIUS: Conf-Id [24] 50 "h323-conf-id=B8FE8B7F BF1711D3 800CE483 89ADC43B" 00:18:27: RADIUS: Vendor, Cisco [26] 31 00:18:27: RADIUS: h323-call-origin [26] 25 "h323-call-origin=answer" 00:18:27: RADIUS: Vendor, Cisco [26] 65 00:18:27: RADIUS: Cisco AVpair [1] 59 "h323-incoming-conf-id=B8FE8B7F BF1711D3 800CE483 89ADC43B" 00:18:27: RADIUS: Acct-Input-Octets [42] 6 0 00:18:27: RADIUS: Acct-Output-Octets [43] 6 148000 00:18:27: RADIUS: Acct-Input-Packets [47] 6 0 00:18:27: RADIUS: Acct-Output-Packets [48] 6 925 00:18:27: RADIUS: Acct-Session-Time [46] 6 32 00:18:27: RADIUS: Vendor, Cisco [26] 35 00:18:27: RADIUS: Cisco AVpair [1] 29 "h323-ivr-out=Tariff:Unknown" 00:18:27: RADIUS: User-Name [1] 12 "4081234567" 00:18:27: RADIUS: Acct-Status-Type [40] 6 Stop [2] 00:18:27: RADIUS: NAS-Port-Type [61] 6 Async [0] 00:18:27: RADIUS: Vendor, Cisco [26] 19 00:18:27: RADIUS: cisco-nas-port [2] 13 "ISDN 0:D:23" 00:18:27: RADIUS: Calling-Station-Id [31] 12 "4081234567" 00:18:27: RADIUS: Called-Station-Id [30] 7 "12345" 00:18:27: RADIUS: Service-Type [6] 6 Login [1] 00:18:27: RADIUS: NAS-IP-Address [4] 6 10.5.20.100 00:18:27: RADIUS: Delay-Time [41] 6 0 00:18:27: RADIUS: Received from id 5 10.6.20.70:1699, Accounting-response, len 20 00:18:27: RADIUS: authenticator E5 B1 ED 3B AD A8 5B 5C - 49 83 63 BA DF 02 B2 00
An incoming call is set up using dial-peer voice 1001 pots. dial-peer voice 1001 has voice-class aaa 2 applied which should redirect AAA requests to the server specified for method list sanj_aaa6: 10.6.20.70 auth-port 1708 acct-port 1709.
00:30:05: ISDN Se1:23: RX <- SETUP pd = 8 callref = 0x0004 00:30:05: Bearer Capability i = 0x8090A2 00:30:05: Channel ID i = 0xE1808397 00:30:05: Calling Party Number i = 0x0080, '4081234567', Plan:Unknown, Type:Unknown 00:30:05: Called Party Number i = 0xE9, '12346', Plan:Private, Type:Abbreviated 00:30:05: RADIUS/ENCODE(0000000E): Unsupported AAA attribute timezone 00:30:05: RADIUS(0000000E): Encoding nas-port...Only port-type avlbl 00:30:05: RADIUS(0000000E): sending 00:30:05: RADIUS: Send to unknown id 6 10.6.20.70:1709, Accounting-Request, len 262 00:30:05: RADIUS: authenticator 2F 3A 09 3D 6B C4 10 D2 - F6 68 D6 F4 36 35 C3 DE 00:30:05: RADIUS: Acct-Session-Id [44] 10 "0000000E" 00:30:05: RADIUS: Vendor, Cisco [26] 56 00:30:05: RADIUS: Conf-Id [24] 50 "h323-conf-id=6C29BC16 BF1911D3 8010E483 89ADC43B" 00:30:05: RADIUS: Vendor, Cisco [26] 31 00:30:05: RADIUS: h323-call-origin [26] 25 "h323-call-origin=answer" 00:30:05: RADIUS: Vendor, Cisco [26] 65 00:30:05: RADIUS: Cisco AVpair [1] 59 "h323-incoming-conf-id=6C29BC16 BF1911D3 8010E483 89ADC43B" 00:30:05: RADIUS: User-Name [1] 12 "4081234567" 00:30:05: RADIUS: Acct-Status-Type [40] 6 Start [1] 00:30:05: RADIUS: NAS-Port-Type [61] 6 Async [0] 00:30:05: RADIUS: Vendor, Cisco [26] 19 00:30:05: RADIUS: cisco-nas-port [2] 13 "ISDN 1:D:23"
472
00:30:05: 00:30:05: 00:30:05: 00:30:05: 00:30:05: 00:30:05: 00:30:05: 00:30:05: 00:30:05: 00:30:05: 00:30:05: 00:30:06: 00:30:06: 00:30:11: 00:30:19: 00:30:19: 00:30:19: 00:30:19: 00:30:19: 00:30:19: 00:30:19: 00:30:19: 00:30:19: 634A0A64" 00:30:19: 00:30:19: 00:30:19: 00:30:19: 00:30:19: 00:30:19: 00:30:19: 00:30:19: 00:30:19: 00:30:20: 00:30:20: 00:30:20: 00:30:20: 00:30:20: 00:30:20: 00:30:20: 00:30:20: 00:30:20: 00:30:20: 00:30:20: 00:30:20: 00:30:20: 00:30:20: 00:30:43: 00:30:43: 00:30:43: lasted 37 00:30:43: 00:30:43: 00:30:43: 00:30:43: 00:30:43: 00:30:43: 00:30:43: 00:30:43: 00:30:43: 00:30:43: 89ADC43B" 00:30:43: 00:30:43:
RADIUS: Calling-Station-Id [31] 12 "4081234567" RADIUS: Called-Station-Id [30] 7 "12346" RADIUS: Service-Type [6] 6 Login [1] RADIUS: NAS-IP-Address [4] 6 10.5.20.100 RADIUS: Delay-Time [41] 6 0 ISDN Se1:23: TX -> CALL_PROC pd = 8 callref = 0x8004 Channel ID i = 0xA98397 ISDN Se1:23: TX -> CONNECT pd = 8 callref = 0x8004 ISDN Se1:23: RX <- CONNECT_ACK pd = 8 callref = 0x0004 ISDN Se1:23: CALL_PROGRESS: CALL_CONNECTED call id 0x64, bchan 22, dsl 1 %ISDN-6-CONNECT: Interface Serial1:22 is now connected to 4081234567 RADIUS: Received from id 6 10.6.20.70:1709, Accounting-response, len 20 RADIUS: authenticator E1 AD 70 9F DC 09 29 32 - 74 47 96 9F 3F 77 27 82 %ISDN-6-CONNECT: Interface Serial1:22 is now connected to 4081234567 RADIUS(0000000E): Encoding nas-port...Only port-type avlbl RADIUS/ENCODE(0000000E): acct_session_id: 14 RADIUS(0000000E): sending RADIUS: Send to unknown id 4 10.6.20.70:1708, Access-Request, len 199 RADIUS: authenticator CE 16 21 8D A5 59 56 9F - B7 E9 CA 5C EC C5 89 A0 RADIUS: User-Name [1] 8 "777777" RADIUS: User-Password [2] 18 * RADIUS: Vendor, Cisco [26] 56 RADIUS: Conf-Id [24] 50 "h323-conf-id=61A46F2C 00000003 62E66E40 RADIUS: Vendor, Cisco [26] 36 RADIUS: Cisco AVpair [1] 30 "h323-ivr-out=transactionID:4" RADIUS: Calling-Station-Id [31] 12 "4081234567" RADIUS: NAS-Port-Type [61] 6 Async [0] RADIUS: Vendor, Cisco [26] 19 RADIUS: cisco-nas-port [2] 13 "ISDN 1:D:23" RADIUS: Calling-Station-Id [31] 12 "4081234567" RADIUS: Service-Type [6] 6 Login [1] RADIUS: NAS-IP-Address [4] 6 10.5.20.100 RADIUS: Received from id 4 10.6.20.70:1708, Access-Accept, len 173 RADIUS: authenticator FF 0D 40 72 0D 80 12 26 - 44 13 D5 0E C4 BB 71 BE RADIUS: Vendor, Cisco [26] 34 RADIUS: Cisco AVpair [1] 28 "h323-credit-amount=7777.77" RADIUS: Vendor, Cisco [26] 26 RADIUS: Cisco AVpair [1] 20 "h323-return-code=0" RADIUS: Vendor, Cisco [26] 30 RADIUS: h323-credit-time [102] 24 "h323-credit-time=54329" RADIUS: Vendor, Cisco [26] 33 RADIUS: h323-billing-model [109] 27 "h323-billing-model=prepay" RADIUS: Vendor, Cisco [26] 24 RADIUS: h323-currency [110] 18 "h323-currency=US" RADIUS: Idle-Timeout [28] 6 30 RADIUS: Received from id E ISDN Se1:23: RX <- DISCONNECT pd = 8 callref = 0x0004 Cause i = 0x8290 - Normal call clearing %ISDN-6-DISCONNECT: Interface Serial1:22 disconnected from 4081234567 , call seconds ISDN Se1:23: TX -> RELEASE pd = 8 callref = 0x8004 ISDN Se1:23: RX <- RELEASE_COMP pd = 8 callref = 0x0004 RADIUS/ENCODE(0000000E): Unsupported AAA attribute timezone RADIUS(0000000E): Encoding nas-port...Only port-type avlbl RADIUS(0000000E): sending RADIUS: Send to unknown id 7 10.6.20.70:1709, Accounting-Request, len 327 RADIUS: authenticator 99 5A B4 45 67 C0 F4 91 - 9B 4B C3 1D 7E DE 7D D1 RADIUS: Acct-Session-Id [44] 10 "0000000E" RADIUS: Vendor, Cisco [26] 56 RADIUS: Conf-Id [24] 50 "h323-conf-id=6C29BC16 BF1911D3 8010E483 RADIUS: RADIUS: Vendor, Cisco h323-call-origin [26] [26] 31 25
"h323-call-origin=answer"
473
00:30:43: RADIUS: Vendor, Cisco [26] 65 00:30:43: RADIUS: Cisco AVpair [1] 59 "h323-incoming-conf-id=6C29BC16 BF1911D3 8010E483 89ADC43B" 00:30:43: RADIUS: Acct-Input-Octets [42] 6 0 00:30:43: RADIUS: Acct-Output-Octets [43] 6 161920 00:30:43: RADIUS: Acct-Input-Packets [47] 6 0 00:30:43: RADIUS: Acct-Output-Packets [48] 6 1012 00:30:43: RADIUS: Acct-Session-Time [46] 6 37 00:30:43: RADIUS: Vendor, Cisco [26] 35 00:30:43: RADIUS: Cisco AVpair [1] 29 "h323-ivr-out=Tariff:Unknown" 00:30:43: RADIUS: User-Name [1] 12 "4081234567" 00:30:43: RADIUS: Acct-Status-Type [40] 6 Stop [2] 00:30:43: RADIUS: NAS-Port-Type [61] 6 Async [0] 00:30:43: RADIUS: Vendor, Cisco [26] 19 00:30:43: RADIUS: cisco-nas-port [2] 13 "ISDN 1:D:23" 00:30:43: RADIUS: Calling-Station-Id [31] 12 "4081234567" 00:30:43: RADIUS: Called-Station-Id [30] 7 "12346" 00:30:43: RADIUS: Service-Type [6] 6 Login [1] 00:30:43: RADIUS: NAS-IP-Address [4] 6 10.5.20.100 00:30:43: RADIUS: Delay-Time [41] 6 0 00:30:43: RADIUS: Received from id 7 10.6.20.70:1709, Accounting-response, len 20 00:30:43: RADIUS: authenticator 78 80 AB D1 82 75 ED ED - E4 1F 12 25 D8 83 F9 6
!voice class aaa 3 is applied to dial-peer voice 1000 pots and a call is made. voice class aaa 3 uses server 10.6.20.70 with auth port 1720 and acct port 1721. The radius daemon has not started. AAA accounting and AAA authorization requests are sent to the appropriate server but no acknowledgement is recieved. Retries are attempted.
00:37:03: %SYS-5-CONFIG_I: Configured from console by console 00:37:11: ISDN Se0:23: RX <- SETUP pd = 8 callref = 0x009E 00:37:11: Bearer Capability i = 0x8090A2 00:37:11: Channel ID i = 0xE1808397 00:37:11: Calling Party Number i = 0x0080, '4081234567', Plan:Unknown, Type:Unknown 00:37:11: Called Party Number i = 0xE9, '12345', Plan:Private, Type:Abbreviated 00:37:11: RADIUS/ENCODE(00000010): Unsupported AAA attribute timezone 00:37:11: RADIUS(00000010): Encoding nas-port...Only port-type avlbl 00:37:11: RADIUS(00000010): sending 00:37:11: RADIUS: Send to unknown id 8 10.6.20.70:1721, Accounting-Request, len 414 00:37:11: RADIUS: authenticator EC F7 FD AB ED 0D 26 BF - F0 A4 D2 88 91 1E D9 22 00:37:11: RADIUS: Acct-Session-Id [44] 10 "00000010" 00:37:11: RADIUS: Vendor, Cisco [26] 56 00:37:11: RADIUS: h323-setup-time [25] 50 "h323-setup-time=*00:37:09.095 UTC Sat Jan 1 2000" 00:37:11: RADIUS: Vendor, Cisco [26] 34 00:37:11: RADIUS: h323-gw-id [33] 28 "h323-gw-id=router." 00:37:11: RADIUS: Vendor, Cisco [26] 56 00:37:11: RADIUS: Conf-Id [24] 50 "h323-conf-id=69EAABEB BF1A11D3 8014E483 89ADC43B" 00:37:11: RADIUS: Vendor, Cisco [26] 31 00:37:11: RADIUS: h323-call-origin [26] 25 "h323-call-origin=answer" 00:37:11: RADIUS: Vendor, Cisco [26] 32 00:37:11: RADIUS: h323-call-type [27] 26 "h323-call-type=Telephony" 00:37:11: RADIUS: Vendor, Cisco [26] 65 00:37:11: RADIUS: Cisco AVpair [1] 59 "h323-incoming-conf-id=69EAABEB BF1A11D3 8014E483 89ADC43B" 00:37:11: RADIUS: Vendor, Cisco [26] 30 00:37:11: RADIUS: Cisco AVpair [1] 24 "subscriber=RegularLine" 00:37:11: RADIUS: User-Name [1] 12 "4081234567" 00:37:11: RADIUS: Acct-Status-Type [40] 6 Start [1] 00:37:11: RADIUS: NAS-Port-Type [61] 6 Async [0]
474
00:37:11: 00:37:11: 00:37:11: 00:37:11: 00:37:11: 00:37:11: 00:37:11: 00:37:11: 00:37:11: 00:37:11: 00:37:11: 00:37:11: 00:37:11: 00:37:16: 00:37:16: 00:37:17: 00:37:21: 00:37:21: 00:37:26: 00:37:26: 00:37:31: 00:37:31: 00:37:31: 00:37:31: 00:37:31: 00:37:31: 00:37:35: 00:37:35: 00:37:35: 00:37:35: 00:37:35: 00:37:35: 00:37:35: 00:37:35: 00:37:35: 634A0A64" 00:37:35: 00:37:35: 00:37:35: 00:37:35: 00:37:35: 00:37:35: 00:37:35: 00:37:35: 00:37:35: 00:37:40: 00:37:45: 00:37:50: 00:37:55: 00:37:55: 00:37:55: 00:37:55: 00:37:55: 00:37:55: 00:38:00: lasted 48 00:38:00: 00:38:00: 00:38:00: 00:38:00: 00:38:00: 00:38:00: 00:38:00: 00:38:00:
RADIUS: Vendor, Cisco [26] 19 RADIUS: cisco-nas-port [2] 13 "ISDN 0:D:23" RADIUS: Calling-Station-Id [31] 12 "4081234567" RADIUS: Called-Station-Id [30] 7 "12345" RADIUS: Service-Type [6] 6 Login [1] RADIUS: NAS-IP-Address [4] 6 10.5.20.100 RADIUS: Delay-Time [41] 6 0 ISDN Se0:23: TX -> CALL_PROC pd = 8 callref = 0x809E Channel ID i = 0xA98397 ISDN Se0:23: TX -> CONNECT pd = 8 callref = 0x809E ISDN Se0:23: RX <- CONNECT_ACK pd = 8 callref = 0x009E ISDN Se0:23: CALL_PROGRESS: CALL_CONNECTED call id 0x65, bchan 22, dsl 0 %ISDN-6-CONNECT: Interface Serial0:22 is now connected to 4081234567 RADIUS: Retransmit id 8 RADIUS: acct-delay-time for 4021D9EC (at 4021DB84) now 5 %ISDN-6-CONNECT: Interface Serial0:22 is now connected to 4081234567 RADIUS: Retransmit id 1 RADIUS: acct-delay-time for 4021D9EC (at 4021DB84) now 10 RADIUS: Retransmit id 2 RADIUS: acct-delay-time for 4021D9EC (at 4021DB84) now 15 RADIUS: Tried all servers. RADIUS: No valid server found. Trying any viable server RADIUS: Tried all servers. RADIUS: No response for id 3 RADIUS/DECODE: parse response no app start; FAIL RADIUS/DECODE: parse response; FAIL RADIUS(00000010): Encoding nas-port...Only port-type avlbl RADIUS/ENCODE(00000010): acct_session_id: 16 RADIUS(00000010): sending RADIUS: Send to unknown id 5 10.6.20.70:1720, Access-Request, len 199 RADIUS: authenticator 4B 6E 67 9F D4 1E 73 37 - 45 D3 CD 7C 70 FD C7 12 RADIUS: User-Name [1] 8 "777777" RADIUS: User-Password [2] 18 * RADIUS: Vendor, Cisco [26] 56 RADIUS: Conf-Id [24] 50 "h323-conf-id=61A46F2C 00000003 62E66E40 RADIUS: Vendor, Cisco [26] 36 RADIUS: Cisco AVpair [1] 30 "h323-ivr-out=transactionID:5" RADIUS: Calling-Station-Id [31] 12 "4081234567" RADIUS: NAS-Port-Type [61] 6 Async [0] RADIUS: Vendor, Cisco [26] 19 RADIUS: cisco-nas-port [2] 13 "ISDN 0:D:23" RADIUS: Calling-Station-Id [31] 12 "4081234567" RADIUS: Service-Type [6] 6 Login [1] RADIUS: NAS-IP-Address [4] 6 10.5.20.100 RADIUS: Retransmit id 5 RADIUS: Retransmit id 5 RADIUS: Retransmit id 5 RADIUS: Tried all servers. RADIUS: No valid server found. Trying any viable server RADIUS: Tried all servers. RADIUS: No response for id 5 RADIUS/DECODE: parse response no app start; FAIL RADIUS/DECODE: parse response; FAIL %ISDN-6-DISCONNECT: Interface Serial0:22 disconnected from 4081234567 , call seconds ISDN Se0:23: TX -> DISCONNECT pd = 8 callref = 0x809E Cause i = 0x8090 - Normal call clearing RADIUS/ENCODE(00000010): Unsupported AAA attribute timezone RADIUS(00000010): Encoding nas-port...Only port-type avlbl RADIUS(00000010): sending RADIUS: Send to unknown id 9 10.6.20.70:1721, Accounting-Request, len 660 RADIUS: authenticator C5 79 B7 D3 92 75 37 D0 - E7 5C 5B 84 99 6E 97 17 RADIUS: Acct-Session-Id [44] 10 "00000010"
475
00:38:00: RADIUS: Vendor, Cisco [26] 56 00:38:00: RADIUS: h323-setup-time [25] 50 "h323-setup-time=*00:37:09.095 UTC Sat Jan 1 2000" 00:38:00: RADIUS: Vendor, Cisco [26] 34 00:38:00: RADIUS: h323-gw-id [33] 28 "h323-gw-id=router." 00:38:00: RADIUS: Vendor, Cisco [26] 56 00:38:00: RADIUS: Conf-Id [24] 50 "h323-conf-id=69EAABEB BF1A11D3 8014E483 89ADC43B" 00:38:00: RADIUS: Vendor, Cisco [26] 31 00:38:00: RADIUS: h323-call-origin [26] 25 "h323-call-origin=answer" 00:38:00: RADIUS: Vendor, Cisco [26] 32 00:38:00: RADIUS: h323-call-type [27] 26 "h323-call-type=Telephony" 00:38:00: RADIUS: Vendor, Cisco [26] 65 00:38:00: RADIUS: Cisco AVpair [1] 59 "h323-incoming-conf-id=69EAABEB BF1A11D3 8014E483 89ADC43B" 00:38:00: RADIUS: Vendor, Cisco [26] 30 00:38:00: RADIUS: Cisco AVpair [1] 24 "subscriber=RegularLine" 00:38:00: RADIUS: Acct-Input-Octets [42] 6 0 00:38:00: RADIUS: Acct-Output-Octets [43] 6 112160 00:38:00: RADIUS: Acct-Input-Packets [47] 6 0 00:38:00: RADIUS: Acct-Output-Packets [48] 6 701 00:38:00: RADIUS: Acct-Session-Time [46] 6 49 00:38:00: RADIUS: Vendor, Cisco [26] 58 00:38:00: RADIUS: h323-connect-time [28] 52 "h323-connect-time=*00:37:09.109 UTC Sat Jan 1 2000" 00:38:00: RADIUS: Vendor, Cisco [26] 61 00:38:00: RADIUS: h323-disconnect-tim[29] 55 "h323-disconnect-time=*00:37:57.739 UTC Sat Jan 1 2000" 00:38:00: RADIUS: Vendor, Cisco [26] 34 00:38:00: RADIUS: h323-disconnect-cau[30] 28 "h323-disconnect-cause=10 " 00:38:00: RADIUS: Vendor, Cisco [26] 35 00:38:00: RADIUS: Cisco AVpair [1] 29 "h323-ivr-out=Tariff:Unknown" 00:38:00: RADIUS: Vendor, Cisco [26] 28 00:38:00: RADIUS: h323-voice-quality [31] 22 "h323-voice-quality=0" 00:38:00: RADIUS: User-Name [1] 12 "4081234567" 00:38:00: RADIUS: Acct-Status-Type [40] 6 Stop [2] 00:38:00: RADIUS: NAS-Port-Type [61] 6 Async [0] 00:38:00: RADIUS: Vendor, Cisco [26] 19 00:38:00: RADIUS: cisco-nas-port [2] 13 "ISDN 0:D:23" 00:38:00: RADIUS: Calling-Station-Id [31] 12 "4081234567" 00:38:00: RADIUS: Called-Station-Id [30] 7 "12345" 00:38:00: RADIUS: Service-Type [6] 6 Login [1] 00:38:00: RADIUS: NAS-IP-Address [4] 6 10.5.20.100 00:38:00: RADIUS: Delay-Time [41] 6 0 00:38:00: ISDN Se0:23: RX <- RELEASE pd = 8 callref = 0x009E 00:38:00: ISDN Se0:23: TX -> RELEASE_COMP pd = 8 callref = 0x809E 00:38:05: RADIUS: Retransmit id 9 00:38:05: RADIUS: acct-delay-time for 4021D9EC (at 4021DC7A) now 5 00:38:10: RADIUS: Retransmit id 4 00:38:10: RADIUS: acct-delay-time for 4021D9EC (at 4021DC7A) now 10 00:38:15: RADIUS: Retransmit id 5 00:38:15: RADIUS: acct-delay-time for 4021D9EC (at 4021DC7A) now 15 00:38:20: RADIUS: Tried all servers. 00:38:20: RADIUS: No valid server found. Trying any viable server 00:38:20: RADIUS: Tried all servers. 00:38:20: RADIUS: No response for id 6 00:38:20: RADIUS/DECODE: parse response no app start; FAIL 00:38:20: RADIUS/DECODE: parse response; FAIL
476
show call accounting-template voice cdr2 CDR template cdr2 is running url: tftp://10.255.255.255/johndoe/sanjose/cdr/cdr2.cdr The last load was successful. attr: h323-gw-id (65)
Totally 1 attrs defined. !The output below is from a call that uses cdr1.cdr which allows only h323-call-origin. debug radius accounting Radius protocol debugging is on Radius packet hex dump debugging is off Radius packet protocol (authentication) debugging is off Radius packet protocol (accounting) debugging is on 02:41:32: RADIUS/ENCODE(00000023): Unsupported AAA attribute timezone 02:41:32: RADIUS(00000023): Encoding nas-port...Only port-type avlbl 02:41:32: RADIUS(00000023): sending 02:41:32: RADIUS: Send to unknown id 26 10.6.20.70:1699, Accounting-Request, len 262 02:41:32: RADIUS: authenticator 84 6E A0 C0 0F 27 79 03 - 59 96 FC 6C F4 17 05 4D 02:41:32: RADIUS: Acct-Session-Id [44] 10 "00000023" 02:41:32: RADIUS: Vendor, Cisco [26] 56 02:41:32: RADIUS: Conf-Id [24] 50 "h323-conf-id=C925CD59 BF2B11D3 8038E483 89ADC43B" 02:41:32: RADIUS: Vendor, Cisco [26] 31 02:41:32: RADIUS: h323-call-origin [26] 25 "h323-call-origin=answer" 02:41:32: RADIUS: Vendor, Cisco [26] 65 02:41:32: RADIUS: Cisco AVpair [1] 59 "h323-incoming-conf-id=C925CD59 BF2B11D3 8038E483 89ADC43B" 02:41:32: RADIUS: User-Name [1] 12 "4081234567" 02:41:32: RADIUS: Acct-Status-Type [40] 6 Start [1] 02:41:32: RADIUS: NAS-Port-Type [61] 6 Async [0] 02:41:32: RADIUS: Vendor, Cisco [26] 19 02:41:32: RADIUS: cisco-nas-port [2] 13 "ISDN 0:D:23" 02:41:32: RADIUS: Calling-Station-Id [31] 12 "4081234567" 02:41:32: RADIUS: Called-Station-Id [30] 7 "12345" 02:41:32: RADIUS: Service-Type [6] 6 Login [1] 02:41:32: RADIUS: NAS-IP-Address [4] 6 10.5.20.100 02:41:32: RADIUS: Delay-Time [41] 6 0 02:41:32: RADIUS: Received from id 26 10.6.20.70:1699, Accounting-response, len 20 02:41:32: RADIUS: authenticator 90 AD C8 09 60 D7 26 01 - DE E0 BC DC C1 F8 CA 2F 02:41:32: %ISDN-6-CONNECT: Interface Serial0:22 is now connected to 4081234567
477
02:41:38: %ISDN-6-CONNECT: Interface Serial0:22 is now connected to 4081234567 02:41:52: RADIUS(00000023): Encoding nas-port...Only port-type avlbl 02:41:59: %ISDN-6-DISCONNECT: Interface Serial0:22 disconnected from 4081234567 , call lasted 26 seconds 02:41:59: RADIUS/ENCODE(00000023): Unsupported AAA attribute timezone 02:41:59: RADIUS(00000023): Encoding nas-port...Only port-type avlbl 02:41:59: RADIUS(00000023): sending 02:41:59: RADIUS: Send to unknown id 27 10.6.20.70:1699, Accounting-Request, len 327 02:41:59: RADIUS: authenticator 13 B7 10 EE 1C 55 7A D2 - 0F 4A A5 2F 1F 85 0E 3A 02:41:59: RADIUS: Acct-Session-Id [44] 10 "00000023" 02:41:59: RADIUS: Vendor, Cisco [26] 56 02:41:59: RADIUS: Conf-Id [24] 50 "h323-conf-id=C925CD59 BF2B11D3 8038E483 89ADC43B" 02:41:59: RADIUS: Vendor, Cisco [26] 31 02:41:59: RADIUS: h323-call-origin [26] 25 "h323-call-origin=answer" 02:41:59: RADIUS: Vendor, Cisco [26] 65 02:41:59: RADIUS: Cisco AVpair [1] 59 "h323-incoming-conf-id=C925CD59 BF2B11D3 8038E483 89ADC43B" 02:41:59: RADIUS: Acct-Input-Octets [42] 6 0 02:41:59: RADIUS: Acct-Output-Octets [43] 6 121600 02:41:59: RADIUS: Acct-Input-Packets [47] 6 0 02:41:59: RADIUS: Acct-Output-Packets [48] 6 760 02:41:59: RADIUS: Acct-Session-Time [46] 6 27 02:41:59: RADIUS: Vendor, Cisco [26] 35 02:41:59: RADIUS: Cisco AVpair [1] 29 "h323-ivr-out=Tariff:Unknown" 02:41:59: RADIUS: User-Name [1] 12 "4081234567" 02:41:59: RADIUS: Acct-Status-Type [40] 6 Stop [2] 02:41:59: RADIUS: NAS-Port-Type [61] 6 Async [0] 02:41:59: RADIUS: Vendor, Cisco [26] 19 02:41:59: RADIUS: cisco-nas-port [2] 13 "ISDN 0:D:23" 02:41:59: RADIUS: Calling-Station-Id [31] 12 "4081234567" 02:41:59: RADIUS: Called-Station-Id [30] 7 "12345" 02:41:59: RADIUS: Service-Type [6] 6 Login [1] 02:41:59: RADIUS: NAS-IP-Address [4] 6 10.5.20.100 02:41:59: RADIUS: Delay-Time [41] 6 0 02:41:59: RADIUS: Received from id 27 10.6.20.70:1699, Accounting-response, len 20 02:41:59: RADIUS: authenticator 7F B2 88 3A 4A 96 05 C6 - D5 81 19 D8 25 3B 4D CB !The output below is from the show debug command. show debug Radius protocol debugging is on Radius packet protocol (accounting) debugging is on !The output below is from a call that uses cdr2 which allows h323-gw-id, but does not allow h323-call-origin. ADIUS/ENCODE(00000025): Unsupported AAA attribute timezone 02:51:35: RADIUS(00000025): Encoding nas-port...Only port-type avlbl 02:51:35: RADIUS(00000025): sending 02:51:35: RADIUS: Send to unknown id 28 10.6.20.70:1709, Accounting-Request, len 265 02:51:35: RADIUS: authenticator 15 F0 7E AB 75 07 10 70 - 5E 3C 54 78 09 18 83 E5 02:51:35: RADIUS: Acct-Session-Id [44] 10 "00000025" 02:51:35: RADIUS: Vendor, Cisco [26] 34 02:51:35: RADIUS: h323-gw-id [33] 28 "h323-gw-id=router." 02:51:35: RADIUS: Vendor, Cisco [26] 56 02:51:35: RADIUS: Conf-Id [24] 50 "h323-conf-id=306F55DD BF2D11D3 803CE483 89ADC43B" 02:51:35: RADIUS: Vendor, Cisco [26] 65 02:51:35: RADIUS: Cisco AVpair [1] 59 "h323-incoming-conf-id=306F55DD
478
BF2D11D3 803CE483 89ADC43B" 02:51:35: RADIUS: User-Name [1] 12 "4081234567" 02:51:35: RADIUS: Acct-Status-Type [40] 6 Start [1] 02:51:35: RADIUS: NAS-Port-Type [61] 6 Async [0] 02:51:35: RADIUS: Vendor, Cisco [26] 19 02:51:35: RADIUS: cisco-nas-port [2] 13 "ISDN 1:D:23" 02:51:35: RADIUS: Calling-Station-Id [31] 12 "4081234567" 02:51:35: RADIUS: Called-Station-Id [30] 7 "12346" 02:51:35: RADIUS: Service-Type [6] 6 Login [1] 02:51:35: RADIUS: NAS-IP-Address [4] 6 10.5.20.100 02:51:35: RADIUS: Delay-Time [41] 6 0 02:51:35: %ISDN-6-CONNECT: Interface Serial1:22 is now connected to 4081234567 02:51:35: RADIUS: Received from id 28 10.6.20.70:1709, Accounting-response, len 20 02:51:35: RADIUS: authenticator D3 D8 59 42 2B 48 96 8D - 5E 2E D8 61 9A 9D 0D 5F 02:51:41: %ISDN-6-CONNECT: Interface Serial1:22 is now connected to 4081234567 02:51:43: %ISDN-6-DISCONNECT: Interface Serial1:22 disconnected from 4081234567 , call lasted 8 seconds 02:51:43: RADIUS/ENCODE(00000025): Unsupported AAA attribute timezone 02:51:43: RADIUS(00000025): Encoding nas-port...Only port-type avlbl 02:51:43: RADIUS(00000025): sending 02:51:43: RADIUS: Send to unknown id 29 10.6.20.70:1709, Accounting-Request, len 330 02:51:43: RADIUS: authenticator 55 35 AB CC 20 64 69 4B - 3F EE 79 04 11 E8 AE 4F 02:51:43: RADIUS: Acct-Session-Id [44] 10 "00000025" 02:51:43: RADIUS: Vendor, Cisco [26] 34 02:51:43: RADIUS: h323-gw-id [33] 28 "h323-gw-id=router." 02:51:43: RADIUS: Vendor, Cisco [26] 56 02:51:43: RADIUS: Conf-Id [24] 50 "h323-conf-id=306F55DD BF2D11D3 803CE483 89ADC43B" 02:51:43: RADIUS: Vendor, Cisco [26] 65 02:51:43: RADIUS: Cisco AVpair [1] 59 "h323-incoming-conf-id=306F55DD BF2D11D3 803CE483 89ADC43B" 02:51:43: RADIUS: Acct-Input-Octets [42] 6 0 02:51:43: RADIUS: Acct-Output-Octets [43] 6 50240 02:51:43: RADIUS: Acct-Input-Packets [47] 6 0 02:51:43: RADIUS: Acct-Output-Packets [48] 6 314 02:51:43: RADIUS: Acct-Session-Time [46] 6 8 02:51:43: RADIUS: Vendor, Cisco [26] 35 02:51:43: RADIUS: Cisco AVpair [1] 29 "h323-ivr-out=Tariff:Unknown" 02:51:43: RADIUS: User-Name [1] 12 "4081234567" 02:51:43: RADIUS: Acct-Status-Type [40] 6 Stop [2] 02:51:43: RADIUS: NAS-Port-Type [61] 6 Async [0] 02:51:43: RADIUS: Vendor, Cisco [26] 19 02:51:43: RADIUS: cisco-nas-port [2] 13 "ISDN 1:D:23" 02:51:43: RADIUS: Calling-Station-Id [31] 12 "4081234567" 02:51:43: RADIUS: Called-Station-Id [30] 7 "12346" 02:51:43: RADIUS: Service-Type [6] 6 Login [1] 02:51:43: RADIUS: NAS-IP-Address [4] 6 10.5.20.100 02:51:43: RADIUS: Delay-Time [41] 6 0 02:51:43: RADIUS: Received from id 29 10.6.20.70:1709, Accounting-response, len 20 02:51:43: RADIUS: authenticator 45 31 ED 45 F4 06 ED 54 - 5E 6F 83 64 4D 2D 34 90
479
Totally 1 attrs defined. show call accounting-template voice cdr2 CDR template cdr2 is running url: tftp://10.255.255.255/johndoe/sanjose/cdr/cdr2.cdr The last load was successful. attr: h323-call-origin (56)
!The output below results from defining a template that does not exist or that cannot be reached. router(config)#$://10.255.255.255/johndoe/sanjose/cdr/cdr4000.cdr Reading cdr template cdr10 fail, put it on retry queue. 01:15:46: hifs ifs could not open file !The output below is for a template with an invalid VSA. show call accounting-template voice cdr1 CDR template cdr1 is running url: tftp://10.255.255.255/johndoe/sanjose/cdr/cdr1.cdr The last load was successful. attr: h323-call-origin (56)
Totally 1 attrs defined. !Template cdr1.cdr is modified on the tftp server to enable an invalid VSA ( for example h323-call-origin) to be put into the template.
480
call accounting-template voice reload cdr1 Loading johndoe/sanjose/cdr/cdr1.cdr from 10.255.255.255 (via Ethernet0): ! [OK - 88/4096 bytes] cam: Fail to reload cdr template cdr1, unloading ... 02:27:29: hifs ifs file read succeeded. size=88, url=tftp://10.255.255.255/johndoe/sanjose/cdr/cdr1.cdr 02:27:29: Error: attr name invalid-vsa-h323-call-origin (0) is not valid in line 3. sh call accounting-template voice cdr1 CDR template cdr1 is running url: tftp://10.255.255.255/johndoe/sanjose/cdr/cdr1.cdr Last load returned errno=8, Exec format error attr: h323-call-origin (56)
The template has been rejected, and previous template still applied.
!Use the show call accounting-template voice summary command to check if a template is loaded and running. !The output below shows two templates successfully loaded and running, and a template that failed to load. show call accounting-template voice summary name url last_load is_running ========================================================================= cdr1 tftp://10.255.255.255/johndoe/sanjose/ success is running cdr2 tftp://10.255.255.255/johndoe/sanjose/ success is running cdr10 tftp://10.255.255.255/johndoe/sanjose/ fail is not running !The output below shows reloading template cdr1 after modifying it. !Initially, the original template cdr1 is loaded as shown: show call accounting-template voice cdr1 CDR template cdr1 is running url: tftp://10.255.255.255/johndoe/sanjose/cdr/cdr1.cdr The last load was successful. attr: h323-call-origin (56)
481
!Additional VSAs are added to modify cdr1 on the tftp server as shown: call accounting call accounting-template voice reload cdr1 Loading johndoe/sanjose/cdr/cdr1.cdr from 10.255.255.255 (via Ethernet0): ! [OK - 1848/3072 bytes] cam: Reload cdr template cdr1 success. 01:35:58: hifs ifs file read succeeded. size=1848, url=tftp://10.255.255.255/johndoe/sanjose/cdr/cdr1.cdr show call accounting-template voice cdr1 CDR template cdr1 is running url: tftp://10.255.255.255/johndoe/sanjose/cdr/cdr1.cdr The last load was successful. attr: h323-call-origin (56) attr: h323-call-type (57) attr: h323-connect-time (59) attr: h323-disconnect-cause (63) attr: h323-disconnect-time (64) attr: h323-gw-id (65) attr: h323-remote-address (73) attr: h323-remote-id (74) attr: h323-setup-time (76) attr: h323-voice-quality (78) attr: subscriber (79) attr: in-portgrp-id (80) attr: out-portgrp-id (81) attr: charged-units (82) attr: disconnect-text (83) attr: info-type (84) attr: logical-if-index (85) attr: peer-address (86) attr: peer-id (87) attr: peer-if-index (88) attr: acom-level (89) attr: tx-duration (90) attr: voice-tx-duration (91) attr: fax-tx-duration (92) attr: noise-level (94) attr: codec-bytes (95) attr: coder-type-rate (96) attr: early-packets (97) attr: late-packets (98) attr: lost-packets (99) attr: gapfill-with-interpolation (100) attr: gapfill-with-prediction (101) attr: gapfill-with-redundancy (102) attr: gapfill-with-silence (103) attr: lowater-playout-delay (104) attr: hiwater-playout-delay (105) attr: ontime-rv-playout (106) attr: receive-delay (107) attr: round-trip-delay (108) attr: remote-udp-port (109) attr: session-protocol (110) attr: vad-enable (111) Totally 42 attrs defined.
482
Troubleshooting AAA and Billing Applications Accounting Server Connectivity Failure and Recovery Detection
Prerequisites for Accounting Server Connectivity Failure and Recovery Detection, page 483 Restrictions for Accounting Server Connectivity Failure and Recovery Detection, page 483 Information About Accounting Server Connectivity Failure and Recovery Detection, page 484 How to Configure Accounting Server Connectivity Failure and Recovery Detection, page 484 Configuration Examples for Accounting Server Connectivity Failure and Recovery Detection, page 491
Establish a working IP network. For more information about configuring IP, refer to the Cisco IOS IP Configuration Guide, Release 12.3. Configure VoIP. For more information about configuring VoIP, refer to the Voice Configuration Library. Configure a TFTP sever to perform storage and retrieval of the audio files, which are required by the Debit Card gateway or other features requiring Tool Command Language Interactive Voice Response (Tcl IVR) scripts and audio files. Program and configure the interface between the RADIUS server and the Cisco voice gateway to operate with VSAs. Create the accounting method list default that includes all RADIUS servers using the aaa accounting connection default start-stop group radius command in global configuration mode. This method list is required by the probe accounting records the Accounting Server Connectivity Failure and Recovery Detection feature uses to determine the state of connectivity to the method list.
483
Troubleshooting AAA and Billing Applications Accounting Server Connectivity Failure and Recovery Detection
Tcl legless GASControls and drives the detection, recovery, and probe algorithms. Application Tcl scriptsPerforms the call treatments to incoming calls and existing calls when notified that the method list is unreachable.
The GAS is a Tcl script with configurable parameters that users can customize for their own network requirements. Users can configure one GAS for each method list, or one GAS script for multiple method lists. Because the RADIUS accounting protocol is User Datagram Protocol (UDP)-based, it is connectionless, and there is no guaranteed connectivity with the RADIUS server. The Accounting Server Connectivity Failure and Recovery Detection feature uses the acknowledgment of accounting requests from the method list to detect connectivity. The GAS determines the state transition of the method list and updates the AAA system with the latest method list status. If the method list is unreachable, the AAA system locates all the active calls associated with the unreachable method list and informs the application script instances of the server unreachable event. The application script applies the appropriate treatments for this new event to the existing calls. For incoming calls, the application script checks the method list status and applies the appropriate treatment. For example, the application can clear the existing calls and reject new incoming calls for this method list. When the method list becomes reachable, the application script instances are notified, and they can take the appropriate action.
Configuring the GAS, page 485 (optional) Loading the GAS, page 486 (required) Starting the GAS, page 487 (optional) Starting the GAS in Global Configuration Mode, page 488 (optional) Verifying the GAS, page 488 (optional) Troubleshooting Accounting Server Connectivity Failure and Recovery Detection, page 489 (optional)
484
Troubleshooting AAA and Billing Applications Accounting Server Connectivity Failure and Recovery Detection
If a mandatory configuration parameter has an invalid type or value, the GAS application displays the following message:
TCL GAS: >> Mandatory Parameter <exact parameter from configuration avpair> invalid value
At least one method list must be configured with the GAS application. If the GAS application fails to read any of the mandatory configuration parameters, it fails and display this message:
TCL GAS:>>>> GasManager.Start Exit Failure <<<<
SUMMARY STEPS
1. 2.
Download the GAS file. Configure the GAS application and mandatory parameters.
485
Troubleshooting AAA and Billing Applications Accounting Server Connectivity Failure and Recovery Detection
DETAILED STEPS
Command or Action
Step 1
Purpose Download the GAS file at Technical Support Software Download for Cisco Tool Command Language Software at http://www.cisco.com/cgi-bin/tablebuild.pl/tclware. The GAS file contains the GAS and a ReadMe file. Refer to the ReadMe file for script-specific information about configuration parameters, including which are mandatory and which are optional.
Step 2
You must configure at least the mandatory parameters before loading the GAS. You must configure the GAS for at least one method list. For information on the changes to the Tcl application programming interface (API) included in the Accounting Server Connectivity Failure and Recovery Detection feature, refer to the TCL IVR Version 2.0 Programmers Guide. The GAS should be configured only by changing the value of its configuration parameters. The Technical Assistance Center (TAC) cannot support this feature, or the system on which it is loaded, if any changes are made to the script itself. Any changes to the GAS are supported by the Cisco Developer Support Program only, which requires a signed Developer Support Agreement. For more information, see the Obtaining Technical Assistance section on page xxvi.
Note
Prerequisites
You must configure any script-specific parameters before loading the GAS.
SUMMARY STEPS
1. 2.
486
Troubleshooting AAA and Billing Applications Accounting Server Connectivity Failure and Recovery Detection
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
Example:
Router# call application voice load GAS
Starting the GAS in Privileged EXEC Mode, page 487 (optional) Starting the GAS in Global Configuration Mode, page 488 (optional)
SUMMARY STEPS
1. 2.
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
Example:
Router# call application session start session_1 GAS
487
Troubleshooting AAA and Billing Applications Accounting Server Connectivity Failure and Recovery Detection
SUMMARY STEPS
1. 2. 3.
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
Example:
Router(config)# call application session start session_1 GAS
SUMMARY STEPS
1. 2. 3.
488
Troubleshooting AAA and Billing Applications Accounting Server Connectivity Failure and Recovery Detection
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
show running-config
Example:
Router# show running-config
Use the show running-config command to verify that the GAS parameters have the correct values.
Step 3
Example:
Router# show voice accounting method
(Optional) Displays connectivity status information for a specified accounting method list or all the accounting method lists.
Use the method-list-name argument to specify a single method list, or omit this argument to display information for all method lists.
SUMMARY STEPS
1. 2. 3. 4. 5. 6. 7. 8. 9.
Attach a console directly to a router running Cisco IOS Release 12.3(8)T or a later release. enable configure terminal no logging console Use Telnet to access a router port and repeat Steps 2 and 3. terminal monitor end debug voice aaa asnl configure terminal
489
Troubleshooting AAA and Billing Applications Accounting Server Connectivity Failure and Recovery Detection
11. end
DETAILED STEPS
Command or Action
Step 1 Step 2
Attach a console directly to a router running Cisco IOS Release 12.2(8)T or a later release.
enable
Example:
Router> enable
Step 3
configure terminal
Example:
Router# configure terminal
Step 4
no logging console
Example:
Router(config)# no logging console
To reenable logging to the console, use the logging console command in global configuration mode.
Step 5
Use Telnet to access a router port and repeat Steps 2 and 3, then continue with step 6.
terminal monitor
Enters global configuration mode in a recursive Telnet session, which allows the output to be redirected away from the console port. Enables logging output on the virtual terminal.
Step 6
Example:
Router(config)# terminal monitor
Step 7
end
Example:
Router(config)# end
Step 8
Example:
Router# debug voice aaa asnl
Enter the no debug voice aaa asnl command when you are finished.
Step 9
configure terminal
Example:
Router# configure terminal
490
Troubleshooting AAA and Billing Applications Accounting Server Connectivity Failure and Recovery Detection
Command or Action
Step 10
no terminal monitor
Example:
Router(config)# no terminal monitor
Step 11
end
Example:
Router(config)# end
Configuration Examples for Accounting Server Connectivity Failure and Recovery Detection
This section provides configuration examples to match the identified configuration tasks in the previous section:
Configuring the GAS: Example, page 491 Loading the GAS: Example, page 493 Starting the GAS: Example, page 493 Verifying the GAS: Example, page 493
TFTP Server Cisco AS5350 Voice Gateway GAS and TCL Calling Application
RADIUS Server Method List ml1 RADIUS Server Method List ml2
PSTN IP Network
88775
In this example, the GAS is configured for two method lists: ml1 and ml2.
call call call call call call call call call application application application application application application application application application voice voice voice voice voice voice voice voice voice GAS GAS GAS GAS GAS GAS GAS GAS GAS tftp://192.255.254.253/app_GAS.2.0.0.0.tcl method-list ml1;ml2 gas-active-timer-ml1 30 detect-failure-responses-ml1 2 recovery-responses-ml1 2 probe-retry-timer-ml1 5 report-accounting-failed-ml1 false probe-user-name-ml1 johndoe acct-inactivity-period-ml1 120
491
Troubleshooting AAA and Billing Applications Accounting Server Connectivity Failure and Recovery Detection
call application voice GAS send-accounting-on-ml1 true call application voice GAS use-gas-debugs-ml1 true call call call call call call call call application application application application application application application application voice voice voice voice voice voice voice voice GAS GAS GAS GAS GAS GAS GAS GAS gas-active-timer-ml2 30 detect-failure-responses-ml2 2 recovery-responses-ml2 5 probe-retry-timer-ml2 10 report-accounting-failed-ml2 true acct-inactivity-period-ml2 90 send-accounting-on-ml2 false use-gas-debugs-ml2 false
The ml1 method list is configured with the following parameter values: Parameter Value gas-active-timer = 30 detect-failure-responses-ml1 = 2 recovery-responses-ml1 = 2 Description Generate a syslog message indicating that the GAS application is active every 30 minutes. After receiving two consecutive failed responses, the method list is declared unreachable. After receiving two consecutive success responses, the method list is declared reachable again. When the method list is in an unreachable state, send probe accounting records every 5 seconds. The application script should not be notified when accounting fails before the method list is marked as unreachable. Use johndoe as the user name field in the probe accounting records. When the method list is in a reachable state and 120 seconds of inactivity have passed after the last accounting record was sent to the method list, a probe accounting record is sent to determine connectivity to the method list. A message is sent when the method list transitions from unreachable to reachable. This behavior should be synchronized with the calling application script. If the application script tears down the existing calls when it is notified that the method list status transitioned from reachable to unreachable, this parameter should be set to true; otherwise, it should be set to false. Debug output is controlled by the debug voip ivr commands and displayed to the terminal. If the use-gas-debugs parameter was set to false, only the value of the use-gas-debugs parameters for the ml1 and ml2 method lists would be displayed. The default value is true.
send-accounting-on-ml1 = true
use-gas-debugs-ml1 = true
492
Troubleshooting AAA and Billing Applications Accounting Server Connectivity Failure and Recovery Detection
In the following example, method lists ml1 and ml2 are defined, and the GAS named GAS is configured:
Router# show running-config Current configuration :4419 bytes ! version 12.2 no service pad service timestamps debug uptime service timestamps log uptime no service password-encryption ! hostname as5300-2 ! logging buffered warnings enable password cisco ! resource-pool disable clock timezone gmt 15 40 ! aaa new-model ! aaa group server radius ml1 server 10.8.159.105 auth-port 1645 acct-port 1646 aaa group server radius ml2 server 10.9.57.101 auth-port 1715 acct-port 1716 ! aaa accounting update newinfo aaa accounting connection default start-stop group radius aaa accounting connection h323 start-stop group radius aaa accounting connection ml1 start-stop group ml1 aaa accounting connection ml2 start-stop group ml2 aaa session-id common ip subnet-zero ! isdn switch-type primary-5ess ! mta receive maximum-recipients 0 no memory check-interval ! !
493
Troubleshooting AAA and Billing Applications Accounting Server Connectivity Failure and Recovery Detection
! controller T1 0 framing esf clock source line primary linecode b8zs pri-group timeslots 1-24 ! controller T1 1 framing esf clock source line secondary 1 linecode b8zs pri-group timeslots 1-24 ! controller T1 2 framing esf linecode b8zs pri-group timeslots 1-24 ! controller T1 3 framing esf linecode b8zs pri-group timeslots 1-24 gw-accounting aaa method ml1 ! interface Loopback1 no ip address no ip route-cache no ip mroute-cache ! interface Ethernet0 ip address 10.8.156.2 255.255.0.0 ! ! interface Serial0:23 no ip address dialer-group 1 isdn switch-type primary-5ess isdn incoming-voice modem fair-queue 64 256 0 no cdp enable ! interface Serial1:23 no ip address isdn switch-type primary-5ess no cdp enable ! interface Serial2:23 no ip address isdn switch-type primary-5ess no cdp enable ! interface Serial3:23 no ip address isdn switch-type primary-5ess no cdp enable ! interface FastEthernet0 ip address 172.19.141.84 255.255.0.0 ip directed-broadcast no ip route-cache no ip mroute-cache duplex auto speed auto
494
Troubleshooting AAA and Billing Applications Accounting Server Connectivity Failure and Recovery Detection
! ip default-gateway 10.8.0.1 ip classless ip route 10.7.0.0 255.255.0.0 10.8.0.1 ip route 10.8.0.1 255.255.255.255 Ethernet0 ip route 10.9.0.0 255.255.0.0 10.8.0.1 ip route 192.255.254.253 255.255.255.255 10.8.0.1 ip route 192.255.254.254 255.255.255.255 10.8.0.1 no ip http server ! access-list 101 permit ip any any dialer-list 1 protocol ip permit dialer-list 1 protocol ipx permit ! radius-server host 10.8.159.105 auth-port 1645 acct-port 1646 radius-server host 10.9.57.101 auth-port 1715 acct-port 1716 radius-server key cisco radius-server authorization permit missing Service-Type radius-server vsa send accounting radius-server vsa send authentication call rsvp-sync ! call application voice GAS tftp://192.255.254.253/app_GAS.2.0.0.0.tcl call application voice GAS method-list ml1;ml2 call application voice GAS gas-active-timer-ml1 5 call application voice GAS detect-failure-responses-ml1 2 call application voice GAS recovery-responses-ml1 2 call application voice GAS probe-retry-timer-ml1 5 call application voice GAS report-accounting-failed-ml1 false call application voice GAS probe-user-name-ml1 johndoe call application voice GAS acct-inactivity-period-ml1 120 call application voice GAS send-accounting-on-ml1 true call application voice GAS use-gas-debugs-ml1 true ! call application voice GAS gas-active-timer-ml2 5 call application voice GAS detect-failure-responses-ml2 2 call application voice GAS recovery-responses-ml2 5 call application voice GAS probe-retry-timer-ml2 10 call application voice GAS report-accounting-failed-ml2 true call application voice GAS acct-inactivity-period-ml2 90 call application voice GAS send-accounting-on-ml2 false call application voice GAS use-gas-debugs-ml2 false ! call application voice calling_app tftp://192.255.254.253/app_session_rw.tcl ! call application session start G1 GAS ! voice-port 0:D ! voice-port 1:D ! voice-port 2:D ! voice-port 3:D ! ! mgcp profile default ! dial-peer cor custom ! ! dial-peer voice 1 pots application calling_app incoming called-number 25170
495
Troubleshooting AAA and Billing Applications Troubleshooting Enhanced Billing Support for SIP Gateways
port 0:D ! dial-peer voice 1800877 voip destination-pattern 1800877.... session target ipv4:10.8.156.3 ! alias exec osperr debug voip sett err alias exec h225 debug cch323 h225 alias exec h245 debyg cch323 h245 alias exec ivr debyg voip ivr alias exec ccapi debub voip ccapi in ! line con 0 exec-timeout 0 0 logging synchronous line aux 0 line vty 0 password lab line vty 1 4 ! end
The following example displays the status history for the ml1 method list:
Router# show voice accounting method Accounting Method List [ml1] ====================== Current Status: --------------unreachable [21:52:39 gmt Dec 4 2002] last record sent time [23:14:59 gmt Dec 4 2002] total probe sent out [84] Status History: --------------(2) unreachable (1) reachable
[21:52:39 gmt Dec 4 2002] [21:46:19 gmt Dec 4 2002] SUCCESS FAILURE Record [Received | Notified ] [Received | Notified | Reported ] Type [from server| to client] [from server| to client | to call ] ------ [-----------|----------] [-----------|------------|----------] START [ 0 | 0 ] [ 0 | 0 | 0 ] UPDATE [ 0 | 0 ] [ 0 | 0 | 0 ] STOP [ 0 | 0 ] [ 84 | 84 | 0 ] ACCT_ON [ 0 | 0 ] [ 0 | 0 | 0 ] ------ [-----------|----------] [-----------|------------|----------] TOTAL [ 0 | 0 ] [ 84 | 84 | 0 ]
Make sure that you can make a voice call. Use the debug ccsip all command to enable all SIP debugging capabilities, or use one of the following SIP debug commands:
debug ccsip calls
496
In addition, debug ccsip events and debug ccsip all include new output specific to the Enhanced Billing Support for SIP Gateways feature. The example shows how the Proxy-Authorization header is broken down into a decoded user name and password.
CCSIP SPI: SIP Call Events tracing is enabled 21:03:21: sippmh_parse_proxy_auth: Challenge is 'Basic'. 21:03:21: sippmh_parse_proxy_auth: Base64 user-pass string is 'MTIzNDU2Nzg5MDEyMzQ1Njou'. 21:03:21: sip_process_proxy_auth: Decoded user-pass string is '1234567890123456:.'. 21:03:21: sip_process_proxy_auth: Username is '1234567890123456'. 21:03:21: sip_process_proxy_auth: Pass is '.'. 21:03:21: sipSPIAddBillingInfoToCcb: sipCallId for billing records = 10872472-173611CC-81E9C73D-F836C2B6@172.18.192.19421:03:21: ****Adding to UAS Request table
Troubleshooting Settlement
The following section is provided to assist in determining if your OSP network is set up correctly. The problems listed have been reported as the most common errors made when configuring settlement in a network. Each section describes a problem and a solution.
Calls are routed through a settlement server, but the originating gateway gets no response or a negative response.
Solution
Check with the settlement provider to make sure that the router is properly registered with that provider. Router registration with settlement provider is normally done outside of OSP.
Tcl IVR script is not used on the originating gateway or terminating gateway.
Solution
Configure a Tcl IVR script for the dial peer using the application application name command.
Note
Tcl/IVR scripts are required for settlement, and classic IVR 1.0 does not support settlement.
Use the show call application voice summary to list all the available scripts on the router.
497
Default is classic SESSION application, which cannot do settlement. The fax_hop_on.tcl script does not work with settlement.
The originating gateway inbound POTS dial peer has no destination pattern set.
Solution
Because some PBX devices do not pass along the calling number in the setup message, the router uses the destination-pattern number or answer-address as an alternative, and a calling number is a required field for settlement.
The originating gateway outbound VoIP dial peer has no session target settlement. The router could make successful calls, but not through a settlement server. The session target specification dictates how the router resolves the terminating gateway address for a particular called number.
Solution
The terminating gateway has no VoIP inbound dial peer. Because the settlement token in the incoming setup message from the originating gateway cannot be validate, the terminating gateway rejects the call.
Solution
Create an inbound dial peer with the session target settlement command.
498
The terminating gateway has an inbound dial peer configured, but with no application command. The default session application (SESSION) processes the call, but it does not support settlement.
Solution
The default session application (SESSION) does not support the settlement feature. Therefore, you must configure the application command in the inbound dial peer.
The terminating gateway clock is not synchronized with the settlement server. The terminating gateway rejects the call because it is too soon or too late to use the settlement token in the incoming setup message.
Solution
Use the ntp or clock set command to synchronize the clocks between the terminating gateway and the settlement server.
The settlement provider on the originating gateway or terminating gateway is not running. No settlement transaction processing is allowed unless the provider is running.
Solution
Enable settlement using the no shutdown command in settlement configuration mode. Use the show settlement command to verify the provider status.
The router cannot use SSL to communicate with the server because the server URL should be https, not http.
Solution
The router cannot use SSL to communicate with the server because the certificates of the server or router were not properly obtained.
499
Solution
Check the certificate enrollment process for both the server and the router.
The originating gateway has multiple dial peers for the same called number, and settlement is never used. The order for rotary dial peers is random unless a dial peer preference is specified. The dial peer with lower preference is chosen first.
Solution
The originating gateway cannot successfully set up a call with the first terminating gateway that is returned from the OSP server. The problem occurs when a gateway attempts to set up the call with the terminating gateways in the order they are received. If for some reason the H.323 call setup is not successful, there is a 15-second timeout by default before the next terminating gateway on the list is contacted.
Solution
The H.323 call setup timeout can be tuned using the h225 timeout command. For example:
voice class h323 1 h225 timeout tcp etablish <value 0 to 30 seconds> dial-peer voice 919 voip application session destination-pattern 919555.... voice-class codec 1 voice-class h323 1 session target settlement
Problem Isolation
To isolate problems with settlement, perform the following tasks:
Check the originating gateway and terminating gateway configuration for dial peers, settlement providers, and certificates. Check the network between the originating gateway, terminating gateway, and the server. Ping each device to make sure that the machines are running. Verify that IP calls can be made successfully. If so, the problem is specific to settlement. Turn on debug voip ivr settlement on the originating gateway to see if the Tcl IVR script initiates a settlement request to the server.
500
Use the debug voip settlement network command on the originating gateway to capture the HTTP requests sent to the server and the response from the server. If the originating gateway gets no response from the server, contact the settlement provider. Turn on debug voip settlement misc to see the list of TOWs returned from the server. If this list is incorrect, contact the settlement provider. If the terminating gateway rejects the settlement token because it is too soon or too late to use it, synchronize the terminating gateway clock with the server.
501
502
Plug the fax machine into a regular analog line and test the fax call while bypassing the voice network. If the problem persists, it could be the fax machine. If the fax machine has a handset, connect the fax machine to the voice network, pick the handset up, and try to make a voice call. If the voice call works, you have verified that your voice network is operational. A voice call must be successful before a fax call can succeed.
Fax Call Flow, page 503 Fax Relay, page 510 Fax Detection, page 525
For information about configuring fax features, refer to the Cisco Fax Services over IP Application Guide.
Fax Pass-Through and Fax Pass-Through with Upspeed, page 504 Cisco Fax Relay, page 505 T.38 Fax Relay, page 507 T.37 Store-and-Forward Fax, page 509
503
For the duration of the call, the DSP listens for the 2100-Hz CED tone to detect a fax or modem on the line. If the CED tone is heard, an internal event is generated to alert the call control stack that a fax or modem changeover is required. The call control stack on the originating gateway instructs the DSP to send an NSE to the terminating gateway, informing the terminating gateway of the request to carry out a codec change. If the terminating gateway supports NSEs, it responds to the originating gateway instruction and loads the new codec. The fax machines are able to communicate on an end-to-end basis with no further intervention by the voice gateways.
Calling fax VoIP VoIP call T.30 CED tone Call control issues NSE NSE NSE accept Change codec Change codec Fax pass-through established
Called fax
FXS
FXS
504
88120
Cisco Fax Relay Fax Setup Phase Cisco Fax Relay Data Transfer Phase
Initially a VoIP call is established as if it were a normal speech call. Call control procedures are followed and the DSP is put into voice mode, after which human speech is expected to be received and processed.
Note
If a fax answer or calling tone (CED or CNG) is heard at any time during the call, the DSP does not interfere with the speech processing. It allows the tone to continue across the VoIP call leg. A normal fax machine, after generating a CED or hearing a CNG, sends a DIS message with the capabilities of the fax machine. The DSP in the Cisco IOS gateway attached to the fax machine that generated the DIS message (normally the terminating gateway) detects the HDLC flag sequence at the start of the DIS message and initiates fax relay switchover. The DSP also triggers an internal event to notify the call control stack that fax switchover is required. The call control stack then instructs the DSP to change the RTP payload type to 96 and to send this payload type to the originating gateway.
When the DSP on the originating gateway receives an RTP packet with payload type set to 96, it triggers an event informing its own call control stack that a fax changeover has been requested by the remote gateway. The originating gateway then sends an RTP packet to the terminating gateway with payload type 97 to indicate that the originating gateway has started the fax changeover. When the terminating gateway receives the payload type 97 packet, the packet serves as an acknowledgement. The terminating gateway starts the fax codec download and is ready for fax relay.
Once the originating gateway has completed the codec download, it sends RTP packets with payload type 96 to the terminating gateway. The terminating gateway responds with an RTP packet with payload type 97, and fax relay can begin between the two gateways. As part of the fax codec download, other parameters such as VAD, jitter buffers, and echo cancellation are changed to suit the different characteristics of a fax call.
505
Figure 48
Called fax
FXS T.30
Fax relay switchover (PT 96) Set codec ACK (PT 97) Download Download fax codec Codec download done (PT 96) fax codec Codec download ACK (PT 97)
88121
506
Figure 49
Fax-relay codec
FXS
VoIP
H.323 T.38 Fax Relay SIP T.38 Fax Relay MGCP T.38 Fax Relay
The detecting terminating gateway sends a ModeRequest message to the originating gateway, and the originating gateway responds with a ModeRequestAck. The originating gateway sends a closeLogicalChannel message to close its VoIP UDP port, and the terminating gateway responds with a closeLogicalChannelAck while it closes the VoIP port.
88122
507
3.
The originating gateway sends an openLogicalChannel message that indicates to which port to send the T.38 UDP information on the originating gateway, and the terminating gateway responds with an openLogicalChannelAck. The terminating gateway sends a closeLogicalChannel message to close its VoIP UDP port, and the originating gateway responds with a closeLogicalChannelAck. Finally the terminating gateway sends an openLogicalChannel message that indicates to which port to send the T.38 UDP stream, and the originating gateway responds with an openLogicalChannelAck. T.38-encoded UDP packets flow back and forth. At the end of the fax transmission, either gateway can initiate another ModeRequest message to return to VoIP mode.
H.323 T.38 Fax Relay Call Flow
4. 5.
6.
Figure 50
Calling fax
Called fax
T.30
VoIP call
ModeRequest ModeRequestAck closeLogicalChannel [1] closeLogicalChannelAck [1] openLogicalChannel [2] openLogicalChannelAck [2] closeLogicalChannel [3] closeLogicalChannelAck [3] openLogicalChannel [4] openLogicalChannelAck [4]
The terminating gateway detects a fax V.21 flag sequence and sends an INVITE with T.38 details in the SDP field to the originating gateway or to the SIP proxy server, depending on the network topology. The originating gateway receives the INVITE message and sends back a 200 OK message. The terminating gateway acknowledges the 200 OK message and sends an ACK message direct to the originating gateway.
2. 3.
508
88123
FXS
VoIP
FXS
4. 5.
The originating gateway starts sending T.38 UDP packets instead of VoIP UDP packets across the same ports. At the end of the fax transmission, another INVITE message can be sent to return to VoIP mode.
SIP T.38 Fax Relay Call Flow
Figure 51
Calling fax
Called fax
T.30
VoIP call
A call is initially established as a voice call. The gateways advertise capabilities in an SDP exchange during connection establishment. If both gateways do not support T.38 fax relay, fax pass-through is used for fax transmission. If both gateways support T.38, they attempt to switch to T.38 upon fax tone detection. The existing audio channel is used for T.38 fax relay, and the existing connection port is reused to minimize delay. If failure occurs at some point during the switch to T.38, the call reverts to the original settings it had as a voice call. If this failure occurs, a fallback to fax pass-through is not supported. Upon completion of the fax image transfer, the connection remains established and reverts to a voice call using the previously designated codec, unless the call agent instructs the gateways to do otherwise.
4.
A fax relay MGCP event allows the gateway to notify the call agent of the status (start, stop, or failure) of T.38 processing for the connection. This event is sent in both call-agent-controlled and gateway-controlled mode.
88124
FXS
VoIP
FXS
509
Cisco recommends that you dedicate a mail server to fax mail and avoid the conflicting configuration requirements of traditional e-mail and fax-mail servers. Optimize each mail server for its individual functionsfor example, fax messages should usually retry transmissions every 5 minutes whereas normal e-mail should retry every 30 minutes, and fax messages should give up after 3 to 4 hours whereas normal e-mail should not give up for 4 to 5 days. A topology for T.37 store-and-forward fax is shown in Figure 52.
Figure 52 T.37 Store-and-Forward Fax Topology
On-ramp faxing
Off-ramp faxing
Document
Document
T.30 T.30
Fax to E-mail
Workstation
E-mail to fax
For more information about T.37 store and forward fax, refer to the Configuring T.37 Store-and-Forward Fax chapter in the Cisco Fax Services over IP Application Guide.
Fax Relay
To troubleshoot T.38 fax relay, perform the following steps:
Make sure that you can make a voice call. Make sure that the desired fax protocol was set using the fax protocol command on both the originating and terminating gateways. Make sure that the fax protocol is configured as T.38 at the global configuration level or at the dial-peer configuration level for both the originating and terminating gateways. Use the show call active {voice | fax} command to display information for the active call table. Use the show dial-peer voice command to display configuration information for dial peers.
510
72734
For H.323 gateways, use the debug cch323 all command to enable all H.323 debugging capabilities, or use one of the following commands to debug problems while making the call:
debug cch323 error debug cch323 h225 debug cch323 h245 debug cch323 RAS debug cch323 session debug voip ccapi inout debug vtsp session
For SIP gateways, use the debug ccsip all command to enable all SIP debugging capabilities, or use one of the following SIP debug commands:
debug ccsip calls debug ccsip error debug ccsip events debug ccsip info debug ccsip media debug ccsip messages debug ccsip states
Identifying and Isolating the Problem, page 511 Checking Basic Connectivity, page 512 Checking for Slips and Other Errors on Digital Interfaces, page 515 Checking Fax Interface Type, page 516 Ensuring That the Fax Codec is Loaded During the Fax Call, page 516 Disabling Fax Relay and Change Codec for Pass-Through, page 517 Checking for Packet Loss on the Voice Network, page 518 Disabling Fax Relay ECM (Cisco Proprietary VoIP Only), page 518 Enabling T.38 Packet Redundancy (T.38 VoIP Only), page 519 Setting the Fax NSF Command to All Zeroes, page 519 Achieving the Final Stages of Resolution, page 519 Debugging Fax Relay, page 520
511
Troubleshooting one issue at a time minimizes confusion and allows for methodical troubleshooting. It is also possible that the solution for this problem resolves other fax relay problems in the network. Most fax relay problems result from poor voice configuration or network design. These lead to basic connectivity problems and physical line or packet loss and jitter problems. After you have identified and isolated the problem, you need to verify the basic voice configuration and monitor the health of the network.
Normal Voice Connectivity Problems, page 512 Configuration Problems Related to Dial Peers, page 512 Other Basic Connectivity Problems Not Relating to Dial Peers, page 515 Fax Connectivity Problems Across the PSTN, page 515
Wrong Dial Peer Being Matched, page 512 Incorrectly Configured Dial Peers on One or Both Sides, page 514
Note
When you have VoIP trunks, you should be able to see all the call legs with the show call active voice brief command. In some versions of Cisco IOS Software Release 12.2, there is a bug in the show call active command. As a result, a fax call that comes through a VoIP trunk no longer appears. When you issue a show call active fax brief command, the call is listed. For more information about this bug, see Cisco bug IDs CSCdx50212 and CSCdv02561 (registered customers only).
Note
Ensure that the configured dial peer is the peer that is being matched.
512
In the command output shown below, you can see that the outbound VoIP call leg is using peer ID 100.
Router# show call active voice brief <snip> Total call-legs: 2 1218 : 51710253hs.1 +415 pid:400 Answer 400 active dur 00:01:08 tx:3411/68220 rx:3410/68200 Tele 3/0/0:43: TX:68200/6820/0ms g729r8 noise:0 acom:2 i/0:-51/-44 dBm 1218 : 51710396hs.1 +272 pid:100 Originate 100 active dur 00:01:09 TX:3466/69320 rx:3467/69340 IP 2.1.1.2:17092 rtt:56ms pl:64730/0ms lost:0/1/0 delay:69/69/70ms g729r8 Total call-legs: 2
A common cause of fax relay problems is that the correctly configured dial peer is not the one being matched. It is also common that there is no particular incoming VoIP dial peer configured on the terminating gateway, and Cisco IOS Software selects the first appropriate (including default) VoIP dial peer as the incoming dial peer. Hence the parameters for this incoming dial peer might not match those of the outbound dial peer on the originating gateway. It is not always necessary to have identical configurations on the outgoing and incoming VoIP dial peers. When you have a fax relay problem, though, make sure you have a dedicated incoming VoIP dial peer on the terminating router and that its configuration matches the configuration of the outgoing VoIP dial peer on the originating router. The following configuration for ISDN-connected routers is an example of specific, matching VoIP dial peers for the destination pattern "5..." outbound on the originating gateway and inbound on the terminating gateway. Originating Gateway
!--- Incoming POTS peer: Dial-peer voice 1 pots Incoming called number. Direct-inward-dial Port 1/0:15 !--- Outgoing VoIP peer: Dial-peer voice 2 voip Destination-pattern 5 Session target ipv4:1.1.1.1 Fax rate 144400 fax protocol t38 ls-redundancy 0 hs-redundancy 0
Terminating Gateway
!--- Outgoing POTS peer : Dial-peer voice 10 pots Destination-pattern 5 No digit-strip Port 2/0:15 !--- Incoming VoIP peer: Dial-peer voice 20 voip Incoming called-number 5 Fax rate 14400 fax protocol t38 Ls-redundancy 0 Hs-redundancy 0
You can also check dial-peer matching by issuing the debug voip ccapi inout command. The debug output from this command (as shown below) includes an ssaSetupPeer message that lists all the dial-peers matching the called number. A ccCallSetupRequest message follows with the outbound peer option indicating the outgoing VoIP dial peer selected. When multiple VoIP dial peers are configured for the same destination, it is possible that the initial call setup could fail and another dial peer could be tried. In this case, another ccCallSetupRequest appears in the debug.
513
On the terminating voice gateway, the first line of the debug voip ccapi inout call trace (as shown below) is a cc_api_call_setup_ind message with a peer_tag option that refers to the incoming VoIP dial peer on the terminating gateway.
debug voip ccapi inoutTerminating Gateway
.Jun 4 21:06:43.461: cc_API_call_setup_ind (vdbPtr=0x62F07650, callInfo={called=5074,called_oct3=0x80, calling=5075, calling_oct3=0x0,>calling_oct3a=0x83, calling_xlated=false, subscriber_type_str=Unknown,fdest=1, peer_tag=400, prog_ind=0},callID=0x635F72D0)
Fax relay is disabled (that is, the fax rate disable command has been issued on the dial peer) while a low bandwidth codec has been in use. The dial peer on one voice gateway is configured for Cisco fax relay but the other voice gateway is a Cisco AS5350/AS5400. Cisco AS5350/AS5400 universal gateways support only T.38 so the negotiation fails. The default dial peer is being used inbound on the terminating gateway, and default parameters do not match those for the outbound dial peer on the originating gateway.
514
The companding type for the US is -law, for Europe and Asia it is a-law. You can issue the show voice call command to see which value is currently configured. If you are on a BRI or E1 port, the companding type on the router does not match the one on the connected device, and calls sometimes fail and sometimes connect, but the voice becomes heavily distorted so that the person becomes unrecognizable and a high low-pitch noise level appears. In Cisco IOS Release 12.2(3) the compand-type command is missing on the BRI ports, leaving the companding type to the default value. For more information about this bug, see Cisco bug IDs CSCdv00152 and CSCdv01861 (registered customers only).
Cisco IOS software incompatibilities on gateway pairs. It is not always required that Cisco IOS software releases match, but you should check releases when problems occur. Compressed Real-Time Transport Protocol (cRTP) has several known problems. Fixes are available for these problems and it makes sense to disable cRTP when problems occur. You can then decide whether a Cisco IOS software upgrade is an appropriate course of action. On Cisco AS5300 voice gateways, ensure that the VCWare and Cisco IOS software are compatible.
515
The T1 or E1 controllers at both originating and terminating gateways should be error free, as shown above. If errors occur, repeat the show controller command several times during the call to see if the number of errors increases. The most common problem of slips is a synchronization problem resulting in clocking errors. In packet voice networks, confirming that the router is clocking from the line is usually sufficient. If it is not, ensure the clock source line command is entered at the controller level. However, in VoATM or TDM networks where a clocking hierarchy is established and the routers may need to pass clock through the network, additional considerations are needed. On Cisco modular acccess routers with AIM voice cards installed, the controller shows controlled slips unless you add the network-clock-participate and network-clock-select commands. On the Cisco 7200VXR platform, the frame-clock-select command is required for the voice cards. This command is particularly important for the Cisco 7200VXR voice gateways because, by default, the internal TDM bus is not driven by the local oscillator. Since the E1 trunks are normally synchronized to the telephony network, the result is hidden clocking errors and intermittent fax transmission problems. More detail is available in Cisco bug ID CSCdv10359 (registered customers only).
Make sure you reload the router; otherwise the command does not take effect. Fax calls fail on the universal gateways listed above with Cisco fax relay (or T.38), so this is an important command to check. The fax interface-type vfc command was not necessary in Cisco IOS software releases prior to Release 12.2. The problem is commonly seen when one of the voice gateways listed above is upgraded to Cisco IOS Release 12.2 or later.
Ensuring That the Fax Codec is Loaded During the Fax Call
Each fax machine displays the remote fax machine ID on its LCD screen at the completion of the fax negotiation phase. It is unlikely that the fax machines could complete negotiation if the fax codec has not been successfully downloaded. On the other hand if no remote fax machine ID is displayed, further debugging in this area is appropriate. There are two ways to make sure that the voice gateways detect the fax transmission and successfully load the fax codec:
Issue the debug vtsp all command and the debug voip ccapi inout call trace. Issue the show voice trace command. Show commands are less resource intensive on the router than debug commands and are preferable in production networks. Shown below is sample output from a show voice trace command on an ISDN interface:
516
BrisVG200gwy01# show voice trace 1/0:15 1/0:15 1 1/0:15 2 1/0:15 3 1/0:15 4 1/0:15 5 1/0:15 6 1/0:15 7 1/0:15 8 1/0:15 9 1/0:15 10 State Transitions: timestamp (state, event) -> ... 63513.792 (S_SETUP_REQUEST, E_TSP_PROCEEDING) -> 63515.264 (S_SETUP_REQ_PROC, E_TSP_ALERT) -> 63515.264 (S_SETUP_REQ_PROC, E_CC_BRIDGE) -> 63515.332 (S_SETUP_REQ_PROC, E_CC_CAPS_IND) -> 63515.332 (S_SETUP_REQ_PROC, E_CC_CAPS_ACK) -> 63515.348 (S_SETUP_REQ_PROC, E_CC_CAPS_IND) -> 63515.348 (S_SETUP_REQ_PROC, E_CC_CAPS_ACK) -> 63515.356 (S_SETUP_REQ_PROC, E_CC_CAPS_IND) -> 63515.356 (S_SETUP_REQ_PROC, E_CC_CAPS_ACK) -> 63518.656 (S_SETUP_REQ_PROC, E_CC_REQ_PACK_STAT) -> 63518.660 (S_SETUP_REQ_PROC, E_DSP_GET_VP_DELAY) -> 63518.660 (S_SETUP_REQ_PROC, E_DSP_GET_VP_ERROR) -> 63518.660 (S_SETUP_REQ_PROC, E_DSP_GET_RX) -> 63518.660 (S_SETUP_REQ_PROC, E_DSP_GET_TX) -> 63521.028 (S_SETUP_REQ_PROC, E_CC_REQ_PACK_STAT) -> 63521.028 (S_SETUP_REQ_PROC, E_DSP_GET_VP_DELAY) -> 63521.028 (S_SETUP_REQ_PROC, E_DSP_GET_VP_ERROR) -> 63521.028 (S_SETUP_REQ_PROC, E_DSP_GET_RX) -> 63521.028 (S_SETUP_REQ_PROC, E_DSP_GET_TX) -> 63524.128 (S_SETUP_REQ_PROC, E_TSP_CONNECT) -> !--- Fax tone detected: 63529.352 (S_CONNECT, E_DSP_TONE_DETECT) -> 63529.356 (S_LFAX_WAIT_ACK, E_PH_CODEC_ACK) -> !--- Fax codec being downloaded to DSPs:
Make sure these commands are entered on both gateways. These commands disable fax relay, disable echo cancellation, and force the call to use a high-bandwidth codec without VAD. The router then samples the tones as it would for a normal voice call, and with the high-bandwidth codec (G.711), the most precise sample possible is captured. The tone to be replayed on the other side is as accurate as possible. The caveat to this step is that since G.711 is a 64- kbps bandwidth codec, each call consumes up to 80 kbps (for VoIP) when additional transport protocol overhead is added.
517
If this test is positive, two things have been accomplished. First, if per-call bandwidth consumption is not a major issue for the network, there is now a potential fax pass-through workaround for the fax relay problem. Second, and more significantly, if bandwidth consumption is an issue, the problem has been isolated to the fax relay software and you should open a TAC case. If this test fails, whatever is causing the fax calls to fail with fax relay is also probably causing the failures with this test. The problem might be that the network might have a large amount of jitter or packet loss.
Disable VAD on the VoIP dial peers. Make a voice call between the same ports where the fax machines are connected. (Fax machines may be able to serve as ordinary phones or you might need to connect the handsets to the same ports where the fax machines are connected.) When the call is connected, there are two main steps to take:
a. Issue the show voice dsp command. You can see in the output that one of the DSP channels has
3.
the configured codec loaded. Usually the column "TX/RX-PAK CNT" shows that the transmit and receive packet counters are equal, meaning that no packets are being lost. If the counters are not equal, packets might be getting lost. Type the show voice dsp command several times at 30-second intervals to determine if the difference increases and packets are being lost.
b. Issue the show voice call summary command to see which port (and timeslot if applicable) is
allocated to the voice call. Type terminal monitor and issue the show voice call command with the voice port (and timeslot if applicable) to get the detailed DSP statistics. In the "***DSP VOICE VP_ERROR STATISTICS***" section of the output, look for the counters. They are usually 0 or below 20. If the any of the counters have higher than 20, investigate the packet loss. If the network appears to be lossy, it is not reasonable to expect fax relay to work reliably. It is possible to disable ECM, but further investigation is probably needed to ensure QoS is provisioned end-to-end so that the voice and fax relay traffic has priority and is never lost during the congestion.
Note
518
where X > 0 and Y = 0 (only make changes to Ls-redundancy) If Cisco proprietary fax relay is in use, an alternative or additional option to disabling ECM is to change fax relay protocol to T.38 so that the T.38 packet redundancy feature can be tested. This feature might alleviate failure due to packet loss. However, T.38 packet redundancy significantly increases bandwidth usage, and it is preferable to eliminate the packet loss altogether, rather than alleviating the failures it causes.
Learn the brands and models of the fax machines that are failing, and investigate those brands and models for known issues. Sometimes there are CARE cases or bugs that address problems for a certain brand of fax machine. For example, a search in the Bug Toolkit (registered customers only) for a Pitney Bowes fax shows a bug with Pitney Bowes fax machines and Cisco fax relay (CSCdu78373 (registered customers only)). This bug is not in the Cisco IOS software but is an incompatibility with the Pitney Bowes proprietary fax signaling protocol. A problem arises when the fax devices on each side of a connection are Pitney Bowes 9920s or 9930s. The workaround is to disable the proprietary protocol on the fax machines or to disable fax relay and use a higher bandwidth codec.
Use search tools to look for known fax problems in the Cisco IOS software release where the problem is occurring. In the previous step, searches were made for a specific fax brand in the hope of identifying a known issue between a certain fax brand and the Cisco fax relay code. The next step is to perform a generic search, because there could be a fax relay bug in the Cisco IOS software release installed.
519
For example, if fax relay using VoFR is not working in Cisco IOS Software Release 12.1(2)T, you can search for bugs using the Bug Toolkit on Cisco.com. In this example, you would use the following values:
Major version: 12.1 Revision: 2 Feature/component: VoFR Keyword: fax
One of the bugs is Cisco bug ID CSCdr65984 (registered customers only), entitled fax doesn't work for vofr. This bug causes all fax relays to fail for VoFR, and an upgrade is needed to a Cisco IOS software release in which this bug is no longer present.
Eliminate hardware faults. In some cases it is easier to isolate the problem by excluding potential problem sources one by one. You can do this by replacing different hardware parts and using alternative IP connections between the gateways. When extra hardware is available, the following steps can help.
Use different ports on the routersIf your configuration involves two gateways connected to
the PBXs or PSTN with E1 or T1 and if you have the FXS ports available, try to connect the fax machines directly to the FXS ports on the voice gateways. This procedure helps you further isolate the problem by excluding the possibility of the E1 cards failing, problems on the telephony side, and E1 synchronization or cable problems.
Try different hardwareIf you have another voice gateway with FXS ports available, try to
connect it directly with the Ethernet crossover cable to each of the voice gateways and send a fax using the fax machine connected to the FXS port. This procedure helps determine if there are problems in the VoX network involving queuing, fragmentation, or prioritization.
Use debug commands on the router to determine what is happeningSee the following section
for details about debug commands that are useful for troubleshooting fax relay problems.
T.30 Messages, page 520 Fax Relay Debug Commands, page 522 Fax Analyzers, page 524
T.30 Messages
The debugs can be difficult to understand if you are not familiar with the messaging that occurs during a typical fax transmission. Figure 53 is a graphical representation of the basic T.30 transactions that occur for a single page fax transmission.
520
Figure 53
T.30 Transactions
Offhook, then dial Send CNG Calling Tone (1100 Hz every 3 sec for .5 sec Answer/Connect CED (Called Terminal Identification) 2100Hz tone Preamble DIS (Digital Identification Signal) with optional NSF and CSI Preamble DCS (Digital Command Signal) withy optional TSI TCF (Training Check) High speed modem training (long) High speed Low speed
CRF (confirmation to Receive) High speed modem training (short) Fax Page transmission Preamble EOP (End of Procedure) Preamble MCF (Message Confirmation Preamble DCN (Disconnect)
Describing the details of these transactions is beyond the scope of this document, but listed below are definitions of the basic transactions that are seen during fax relay. The list is alphabetical for quick reference and includes messages that you are likely to see when you are debugging Cisco fax relay. For more in-depth information on this messaging or for information on messages that are not listed below, see the T.30 specification.
CED (called terminal identification)A 2100 Hz signal that is transmitted by the terminating fax device upon answering a fax call. This signal temporarily disables echo cancellers that are present on the connection to prepare the line for data transmission. CFR (confirmation to receive)A response confirming that the previous messaging and training has been completed and that fax page transmission can begin. CNG (calling tone)An 1100-Hz tone that is on for 0.5 seconds and then off for 3 seconds. This signal identifies the fax terminal as a nonspeech device. The signal also indicates that the initiating fax terminal is awaiting the DIS signal from the terminating fax terminal. CRP (command repeat)A response that indicates that the previous command was received in error and needs to be repeated. (Optional) CSI (called subscriber identification) Can be used to provide the specific identity of the called fax terminal through its international telephone number. (Optional) DCN (disconnect)Ends the fax call and requires no response. DIS (digital identification signal) Identifies the capabilities of the called fax terminal.
88989
521
DTC (digital transmit command) The response to the capabilities identified by the DIS signal. Here is where the calling fax terminal matches its capabilities with those provided in the called fax terminal's DIS message. EOM (end of message) Indicates the end of a complete page of fax information. EOP (end of procedure) Indicates the end of a complete page of fax information and signals that no further pages are to be sent. The other device can proceed to the disconnect phase of the fax call. FTT (failure to train) Used to reject a training signal and request a retrain (retrains usually occur at lower modulation speeds). MCF (message confirmation) Indicates that a message has been satisfactorily received. MPS (multipage signal)Indicates the end of a complete page of fax information and signals that the receiver is ready for additional pages. NSF (nonstandard facilities) Can be used to identify specific capabilities or requirements that are not covered by the T-series specifications. (Optional) RTN (retrain negative) Indicates that a previous message has not been satisfactorily received. Retraining is needed to proceed (usually at a lower modulation speed). RTP (retrain positive) Indicates that a complete message has been received and that additional messages may follow after retraining. TCF (training check) Sent through the higher-speed T.4 modulation system (versus the 300-kbps V.21 modulation used for the previous T.30 signaling) to verify training and indicate the acceptability of sending fax pages at this transmission rate. TSI (transmitting subscriber identification) Identifies the transmitting (calling) fax terminal. (Optional)
debug fax relay t30 all debug vtsp all debug vtsp vofr subframe 3 Additional Debug Commands
Shown below is a copy of a debug from a failed fax relay session. This is a debug from the originating fax gateway running Cisco IOS Release 12.2(7a).
Router# Dec 5 07:49:13.073: Dec 5 07:49:17.985: Dec 5 07:49:20.105: Dec 5 07:49:20.655: 19 bytes Dec 5 07:49:20.720: DEC 5 07:49:22.350:
522
DEC 5 07:49:23.045: DEC 5 07:49:27.346: DEC 5 07:49:28.836: DEC 5 07:49:29.531: DEC 5 07:49:29.740: 0 bytes DEC 5 07:49:30.362: 0 bytes DEC 5 07:49:30.804: 0 bytes DEC 5 07:49:30.852: 0 bytes DEC 5 07:49:33.868: DEC 5 07:49:35.414: DEC 5 07:49:36.113: DEC 5 07:49:36.515: 0 bytes DEC 5 07:49:36.908: 0 bytes DEC 5 07:49:37.559: 0 bytes DEC 5 07:49:37.784: 0 bytes DEC 5 07:49:37.900: 0 bytes DEC 5 07:49:40.133: DEC 5 07:49:41.888: DEC 5 07:49:42.583: DEC 5 07:49:43.173: 0 bytes DEC 5 07:49:44.937: 0 bytes DEC 5 07:49:45.386: 0 bytes DEC 5 07:49:46.941: DEC 5 07:49:48.503: DEC 5 07:49:50.631:
fr-msg-det DCS Fr-MSG-TX FTT fr-msg-det TSI fr-msg-det DCS fr-msg-det bad crc,
1/2:62 1281364300 fr-msg-det bad crc, 1/2:62 1281364740 fr-msg-det bad crc, 1/2:62 1281364790 fr-msg-det bad crc, 1/2:62 1/2:62 1/2:62 1/2:62 1281367800 1281369340 1281370040 1281370440 Fr-MSG-TX FTT fr-msg-det TSI fr-msg-det DCS fr-msg-det bad crc,
1/2:62 1281370830 fr-msg-det bad crc, 1/2:62 1281371480 fr-msg-det bad crc, 1/2:62 1281371700 fr-msg-det bad crc, 1/2:62 1281371820 fr-msg-det bad crc, 1/2:62 1/2:62 1/2:62 1/2:62 1281374050 1281375800 1281376490 1281377080 Fr-MSG-TX FTT fr-msg-det TSI fr-msg-det DCS fr-msg-det bad crc,
1/2:62 1281378840 fr-msg-det bad crc, 1/2:62 1281379290 fr-msg-det bad crc, 1/2:62 1281380840 Fr-MSG-TX FTT 1/2:62 1281382400 fr-msg-det DCN 1/2:62 1281384520 fr-end-dcn
This debug shows the T.30 events that are taking place in the DSP during fax relay. Remember that the debugs are taking place from the perspective of the DSP interacting with the fax device. Any Fr-MSG-TX or transmit message is being transmitted from the DSP to the connected fax device. Any message that the DSP says that it detects (an fr-msg-det message, is a message that it received from the connected fax device. Figure 54 illustrates the directional flow of the DSP messages when the debug fax relay t30 all command is issued.
Figure 54 DSP Message Flow
From the failed fax transaction shown in the debug above, you can see several badcyclic redundancy check (CRC) messages followed by a failure to train (FTT) message from the far side. From the debugs it looks like the problem involves the training signal. The bad crc errors and the FTT message returned from the other side indicate that the signal is corrupted or incompatible with the Cisco fax relay protocol. This debug is taken from a fax relay problem that occurs with a Lexmark Optra fax machine. The
88990
VoX Network
523
Lexmark is V.34-capable and attempts to connect at V.34 rates. V.34 is not supported in Cisco fax relay and the training errors shown here occur. See Cisco bug ID CSCdv89496 (registered customers only) for more details.
debug voip ccapi inout debug hpi all (on the Cisco 5300/2600/3600 and all other voice platforms using the TI c54x DSPs) debug nextport vsmgr detail (on the NextPort DSP platforms (Cisco 5400, 5850))
Fax Analyzers
Sometimes it is necessary to go beyond the debugging capabilities of the Cisco voice gateways to resolve fax relay problems. You can use tools such as protocol analyzers and fax analyzers to see what is occurring during fax relay operation. Fax analyzers such as the Genoa ChannelProbe/FaxProbe by QualityLogic or the HP Telegra can be positioned between the fax device and the Cisco gateway to capture what is occurring. Protocol analyzers such as Sniffer and Domino can be helpful when you need to view the fax relay packets that are being exchanged between the routers. The ability to resolve a complex problem sometimes requires using a combination of equipmentan analyzer to capture the fax traffic at each fax machine and a protocol analyzer to capture the fax relay packets. A single fax call is placed to reproduce the problem, and then the information is captured from the attached devices for analysis. Figure 55 shows where this test equipment is placed in the network.
524
Figure 55
Fax analyzer
Protocol analyzer
Fax analyzer
Most of the fax analyzers have adequate help screens and documentation. The T.30 specification is also very helpful. For the protocol analyzers, decoding can be a little more difficult because sometimes the encodings are proprietary or the analyzer software does not have the specific decode needed. For fax relay using VoFR and VoATM, Cisco gateways use standards-based Annex D from the FRF11 specification. If the protocol analyzer cannot decode the frame, the frame can be manually decoded through use of this specification. With fax relay and VoIP, a Cisco proprietary format is used for the fax relay packets. With fax analyzer and protocol analyzer information, you should be able to resolve fax relay problems. Few fax relay problems reach this point, and when they do, escalation and DE resources should already be involved for further assistance. For more information about troubleshooting fax relay, refer to the Fax Relay Troubleshooting Guide, document 20227.
Fax Detection
Use the following tips to resolve problems that keep fax detection from working correctly:
On the router that you are using for the fax detection application, make sure that you have installed at least the minimum version of Cisco IOS software that is listed in the Cicso Fax Services over IP guide. Before configuring fax detection, make sure that your voice application is functional by putting a series of calls through. Before configuring fax detection, make sure that your fax application is functional by sending a series of faxes. After configuring fax detection, issue the debug voip ivr script command to display debug information from the fax detection script. Put through a series of voice calls and fax calls to ensure correct operation. The debug output that is displayed when you put calls through is indispensable for diagnosing failing calls and finding the source of a problem. It is the only way to verify that parameters are set to the values that you want and that they are actually taking effect. Mistakes such as typing errors in command-line interface (CLI) parameters (for example, typing moode for mode) are not recognized as errors by Cisco IOS. They are accepted without complaint when typed, yet they do not produce the desired effect during operation. It is only by watching the debug output during operation that you find these mistakes. Make sure that you have configured different DTMF digits for fax and for voice. If you configure both to be the same number, you are not notified immediately, as you would be with other Cisco IOS command errors. You find this error only if the debug voip ivr script command is enabled before a failing call comes in.
525
88991
VoX Network
526
A R T
Periodic Monitoring Tasks, page 529 Tools for Monitoring the VoIP Network, page 530
Monitor router behavior during initial installation Monitor normal network operation Isolate problem interfaces, nodes, media, or applications Determine when a network is congested Determine the status of servers, clients, or other neighbors
The following are some of the most commonly used show commands:
show versionDisplays the configuration of the system hardware, the software version, the names and sources of configuration files, and the boot images. show running-configDisplays the router configuration currently running. show startup-configDisplays the router configuration stored in nonvolatile RAM (NVRAM). show interfacesDisplays statistics for all interfaces configured on the router or access server. The resulting output varies, depending on the network for which an interface has been configured. show controllersDisplays statistics for interface card controllers. show flashDisplays the layout and contents of Flash memory. show buffersDisplays statistics for the buffer pools on the router. show memory summaryDisplays memory pool statistics and summary information about the activities of the system memory allocator, and gives a block-by-block listing of memory use. show process cpuDisplays information about the active processes on the router. show stacksDisplays information about the stack utilization of processes and interrupt routines, as well as the reason for the last system reboot.
529
Monitoring the Voice Network Tools for Monitoring the VoIP Network
show cdp neighborsProvides reachability information for directly connected Cisco devices. This is an extremely useful tool for determining the operational status of the physical and data link layers. Cisco Discovery Protocol (CDP) is a proprietary data link layer protocol. show debuggingDisplays information about the type of debugging that is enabled for your router.
You can always use the ? at the command line for a list of subcommands. Like the debug commands, some of the show commands listed previously are accessible only at the routers privileged EXEC mode (enable mode), which is explained in the Debug Command Output on Cisco IOS Voice Gateways chapter. Hundreds of other show commands are available. For details on using and interpreting the output of specific show commands, refer to the Cisco IOS command references.
Cisco Voice Manager, page 530 Quality of Service Device Manager, page 530 Cisco Service Assurance Agent, page 531 CiscoWorks Voice Health Monitor, page 531 Cisco Gateway Management Agent, page 532 Cisco QoS Policy Manager, page 532
Manage the configuration of FXO, FXS, E&M, and ISDN voice interfaces on voice-enabled routers Create and manage local (POTS) dial plans on voice-enabled routers Create and manage VoIP, VoFR, and VoATM network dial plans on voice-enabled routers Generate detailed reports using Telemate.net Quickview
530
Monitoring the Voice Network Tools for Monitoring the VoIP Network
Once the QDM application is uploaded, the context-sensitive online help embedded within the application is designed to provide technical help associated with a particular QoS-related task. For information on the various QoS functions that can be configured in QDM, consult the online help within the QDM application. The Online Help Table of Contents can always be accessed by clicking the Help button in the upper-right corner of the QDM screen and then clicking Table of Contents. A glossary is also available as part of the online help. QDM can be downloaded from Cisco.com and is available free of charge. For more information, see the Quality of Service Device Manager documentation.
A series of availability and health checks on the VoIP equipment in the network. A fault detection and escalation system to notify the users of any faults or exceptions detected.
VHM integrates with network management systems (NMSs) such as HP OpenView Network Node Manager. With VHM, you can:
Discover VoIP network devices and applications on a user-entered schedule Monitor faults in voice and data networks
531
Monitoring the Voice Network Tools for Monitoring the VoIP Network
Run synthetic transaction tests, to check Cisco CallManager functions Check the availability and health of VoIP equipment and applications Obtain the status of each voice device group, such as Voice Cluster, Voice Gateway, Phone Access Switches, and Work Flow Applications Discover and manage Ethernet ports that have IP Phones connected to them Monitor IP phones in the network
For more information about VHM, refer to the CiscoWorks Voice Health Monitor documentation.
532
Prerequisites for Voice Performance Statistics on Cisco Gateways, page 533 Restrictions for Voice Performance Statistics on Cisco Gateways, page 533 Information About Voice Performance Statistics on Cisco Gateways, page 534 Configuring Voice Performance Statistics on Cisco Gateways, page 541 Configuration Examples for Voice Performance Statistics on Cisco Gateways, page 581
Your gateway must be configured to support VoIP and must be functioning properly.
This feature does not support Media Gateway Control Protocol (MGCP). This feature does not support parsing, presentation, or analysis of syslog files. The integrity of statistical information in the syslog files is not guaranteed because of unreliable User Datagram Protocol (UDP) transport. If the gateway clock needs to be synchronized after the gateway is reset or rebooted or during Network Time Protocol (NTP) client synchronization, there may be a problem for collection during the collection intervals. The call-statistics data is dependent on the start and end time of the interval; that is, the collection is time driven, not event driven. The following two situations will result in erroneous call-statistics data:
Clock reset during a collection interval.
533
Voice Performance Statistics on Cisco Gateways Information About Voice Performance Statistics on Cisco Gateways
To avoid any call-statistics data from being collected within an incomplete interval, this feature reports only call-statistics data that is collected during a complete interval. This includes call-statistics data that is pushed to an FTP server or stored on a gateway. This feature cannot assure accuracy or consistency of the reports generated when large clock updates occur during a batch reporting period.
Call statistics cannot be accessed using RADIUS protocols. The signaling behavior of two-stage non-Direct-Inward-Dialing (non-DID) ISDN calls using a default session application is not supported. Digital Signal 0 (DS0) is not supported.
Basic Terminology and Feature Design, page 534 Management of the Statistical Collection, page 537 Management of the Archive Process, page 538 Display of Records and Time Ranges, page 539 Voice Interface Changes During Call-Statistics Collection Periods, page 540
The benefits of this feature are listed in the Benefits of Voice Performance Statistics on Cisco Gateways section on page 541.
Counting accounting records (messages to and from RADIUS servers). Collecting various signal-layer (IP and PSTN interfaces) statistics from individual gateway ports. Displaying the signaling statistics at different aggregation levels. Collecting IECs. Collecting the statistics at user-configured time intervals. Archiving the statistics to an FTP or syslog server and formatting the output. Displaying the statistics on a console. Displaying the available memory and the memory that has been used for the collection of records.
534
Voice Performance Statistics on Cisco Gateways Information About Voice Performance Statistics on Cisco Gateways
Specifying thresholds for packet jitter, lost packets, and packet latency. Specifying the length of time to be used as the maximum call duration. Specifying a maximum time for which to store the statistics in system memory.
What Are the Types of Accounting Statistics?, page 535 What Are the Types of Signaling Statistics and Aggregation Levels?, page 535 What Are IECs?, page 536
Gateway level VoIP level PSTN level Trunk group level Voice-port level
An example of collected statistics at the different aggregation levels for a PSTN statistic labeled X is as follows:
When the aggregation level is gateway: X = 4 When the aggregation level is trunk group:
Trunk group A (configured ports 1 and 3): X = 3 Trunk group B (configured ports 2 and 4): X = 1
535
Voice Performance Statistics on Cisco Gateways Information About Voice Performance Statistics on Cisco Gateways
The following are supported call-statistics fields that can be collected on Cisco gateways:
Incoming callsAll incoming call attempts, whether successful or not. Incoming calls answered by the gatewayIncoming calls that were answered. Incoming calls rejected by the gatewayIncoming calls that, for whatever reason, failed. Outgoing calls attemptedOutgoing calls regardless of whether they were successful. Outgoing calls that receive answersCalls that were answered. Outgoing calls failCalls that failed. Total duration of all incoming and outgoing callsTotal duration from outgoing seizure to disconnect. Total duration of incoming and outgoing answered callsTotal connected time: from answer to disconnect. Originating side disconnected before outgoing calls connected. Number of incoming and outgoing calls whose connected time is less than the configured minimum call duration (MCD). Number of answered incoming and outgoing calls terminated with any cause codes other than normal. Total duration (after the dial delay) on incoming callsDefined as alert sent timesetup in time. Total duration (after the dial delay) on outgoing callsDefined as alert received timesetup out time. Total setup delay durationDefined as setup out timesetup in time. IP-specific statistic fields (exist only in the IP-level statistics):
Number of calls losing more than the configured number of packetsThe default is 1000. Number of calls encountering more than the configured amount of latencyThe default is
250 milliseconds.
Number of calls encountering more than the configured amount of jitterThe default is
250 milliseconds.
Number of incoming and outgoing calls disconnected with each cause codeThe cause codes
are defined in the Call Control Application Programming Interface (CCAPI) and in the International Telecommunication Union Telecommunication Standardization Sector (ITU-T) standard Q.850.
536
Voice Performance Statistics on Cisco Gateways Information About Voice Performance Statistics on Cisco Gateways
The collection of Cisco IOS generated IECs is described in Cisco VoIP Internal Error Codes, Cisco IOS Release 12.3(4)T. To decode internal error codes, see the Voice Gateway Error Decoder for Cisco IOS at the following URL: http://www.cisco.com/univercd/cc/td/doc/product/voice/vtgemd.htm
What Are the Allowable Time Ranges?, page 537 What Are Thresholds?, page 537 What Are the Allowable Storage Capacities?, page 538 How Is Memory Used?, page 538
From the last reset time to the present. You can examine the statistics using the show voice statistics command and reset the statistics using the clear voice statistics csr command. By specific start and end time. That is, a set amount of minutes after the configuration time for preparation of the resource allocation of the gateway. By periodic intervals, with an optional total duration. Allowable intervals are 5 minutes, 15 minutes, 30 minutes, 1 hour, and 1 day. The optional total duration is unlimited but must be a multiple of the specified interval. For example, the interval could be 15 minutes, and the total duration could be 3 hours.
These thresholds are all pre-configured with default settings. The jitter, latency, and lost packets thresholds only apply to IP statistics. In addition, you can configure the minimum call duration (MCD) value for determining which calls are measured during the statistics collection.
Packet Jitter
Jitter is a variation in the delay of received packets. At the sending side, packets are sent in a continuous stream, spaced evenly apart. Because of network congestion, improper queueing, or configuration errors, this steady stream can be interrupted by delays between packets. You can specify the threshold at which a record will not be collected. For example, if you have set a threshold of 250 milliseconds and a delay exceeds that threshold, the message is not collected.
537
Voice Performance Statistics on Cisco Gateways Information About Voice Performance Statistics on Cisco Gateways
Packet Latency
Packet latency is the amount of time that it takes a packet to go from its source to its destination. You can specify the threshold at which a record will not be collected. For example, the gateway can be configured to drop messages that take more than 250 milliseconds to reach the destination.
Lost Packets
Lost packets are a result of jitter that is so great that it causes packets to be out of the range of the jitter buffer. These packets are discarded. You can specify the threshold for lost packets in milliseconds.
Note
Because of unreliable UDP transport, the integrity and completeness of the call statistics in the syslog files are not guaranteed. Figure 56 shows the components as used by this feature.
538
Voice Performance Statistics on Cisco Gateways Information About Voice Performance Statistics on Cisco Gateways
Figure 56
Syslog server
V Workstation
88002
FTP
CNS-PE
You can format the output to display with specified record separators. The separator can be a space, tab, new line, or ASCII character.
What Records Are Displayed Since System Reset or Reboot?, page 539 What Time Ranges Are Displayed?, page 539
539
Voice Performance Statistics on Cisco Gateways Information About Voice Performance Statistics on Cisco Gateways
Adding or removing a PRI or DS1 group Adding or removing a trunk group Adding or removing a trunk in a trunk group
Note
It is recommended that any existing call-statistics collection be stopped and set to zero before any configuration modification is made to any of the voice interfaces. This section has the following subsections:
Addition or Removal of a Voice Port, page 540 Configuration Change of Any Trunk Group, page 540
The addition of a PRI or DS1 group, Foreign Exchange Station (FXS), Foreign Exchange Office (FXO), or ear and mouth (E&M) device. The removal of a PRI or DS1 group, FXS, FXO, or E&M device.
If a new voice interface is added during any collection period, new entries that correspond to the new voice interface are added in the statistics collected for that collection period. If an existing voice interface is removed during any collection period, the statistics that correspond to that voice interface are still kept in the set. The statistics are frozen (that is, nothing more is added) after the time that the voice interface is removed. Gateways still send the statistics for the removed interface to the CNS-PE or syslog server. In either of the above scenarios, the statistics for PSTN ports include all the collected data at the DS1 or channel associated signaling (CAS) level, except the statistics for interfaces added or removed during the collection period.
The addition or removal of a DS1 or CAS group into or from a trunk group.
If you are adding a DS1 or CAS group to a trunk group during any collection period, the
collection process moves the associated statistics from the upper aggregation level (PSTN) to the trunk-group level. The call statistics before the configuration change time are also totalled to the statistics of the trunk-group level at the end of the collection period. In this case, the statistics of the trunk-group level can exceed the limit. However, the PSTN-level statistic is still accurate.
If you are removing a DS1 or CAS group from a trunk group during any collection period, the
collection process removes the trunk-group level of the PSTN aggregation. In contrast to the scenario of adding a DS1 or CAS group, the statistic of the trunk-group level is under the limit.
540
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
any collection period, the existing statistics of all member trunks aggregate to the trunk-group level statistic. That is, the statistic of the trunk-group level is over its limit. The PSTN-level call statistics are still accurate.
If you are removing an existing trunk group from a gateway during any collection period, the
existing statistics of all member trunks are totaled at the configuration change time. The statistics of the trunk-group level and of the PSTN level are accurate.
Note
The inaccurate call statistics that can result from the four scenarios that are listed above are acceptable because the transient information during the configuration change is often unusable.
Gateway call statistics can be audited or compared against the statistics of other network devices for improved monitoring. Malfunctioning DSPs (DS1 only) can be discovered. Discrepancies between RADIUS records sent by the gateway and received and reported on the server can be uncovered. Potential lost revenue can be highlighted. Call-success rates and accuracy of reports can be determined.
Configuring the Duration and Time Periods of Call Statistics on the Gateway, page 543 (required) Configuring the Gateway to Collect Signaling Statistics, page 546 (required) Configuring the Gateway to Collect VoIP AAA Accounting Statistics, page 557 (required) Configuring the FTP Server to Enable Archiving of Statistics from the Gateway, page 566 (optional) Managing the Collection of Voice Statistics, page 566
Configuring the Gateway to Archive Statistics to an FTP Server, page 569 (optional) Configuring the Gateway to Archive Statistics to a Syslog Server, page 570 (optional) Displaying Memory Usage, page 571 (optional) Displaying All Statistics and Pushing Them to an FTP or Syslog Server, page 572 (optional) Clearing the Collected Call Statistics, page 572 (optional) Monitoring the Statistical Reporting, page 573 (optional)
Note
If you need to obtain statistical information since reboot, the configuration should be stored in NVRAM before you restart the gateway.
541
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
Configure the duration or time period for when call statistics are collected on the gateway. See the Configuring the Duration and Time Periods of Call Statistics on the Gateway section on page 543.
Configure the gateway to support the collection of signaling statistics. See the Enabling the Gateway to Collect Signaling Statistics section on page 546.
Configure the call statistics record signaling parameters, changing the default values as needed. See the Configuring the Minimum Call Duration and Signaling Thresholds section on page 548
Configure the gateway to support the collection of accounting statistics. See the Enabling the Collection of VoIP AAA Accounting Statistics on the Gateway section on page 557. Configure accounting on the gateway. Refer to the gw-accounting aaa command configuration in the Cisco IOS Voice Configuration Library, Release 12.3. Specify that the accounting update is new information. Refer to the aaa accounting update new-info command configuration in the Cisco IOS Security Configuration Guide, Release 12.3, and the Cisco IOS Security Command Reference, Release 12.3 T. Define the AAA RADIUS server group. Refer to the aaa group server radius command configuration in the Cisco IOS Security Configuration Guide, Release 12.3, and the Cisco IOS Security Command Reference, Release 12.3 T. Define a designated broadcast accounting server group (accounting acknowledge broadcast command). See the Configuring a Designated Server Group for a Broadcast Method List section on page 559. Define the RADIUS server host, port, key, and vendor specific attributes (VSAs). Refer to the Cisco IOS Security Configuration Guide, Release 12.3 and the Cisco IOS Security Command Reference, Release 12.3 T.
Step 4
Step 5
Step 6
542
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
Optional Tasks for Both Signaling and Accounting Statistics (Configured in Any Order)
Configure the FTP server or syslog server download. See the Configuring the Gateway to Archive Statistics to an FTP Server section on page 569 and the Configuring the Gateway to Archive Statistics to a Syslog Server section on page 570.
Note
Before configuring the gateway to archive statistics to an FTP server, you must first configure the FTP server to support the archiving process. See the Configuring the FTP Server to Enable Archiving of Statistics from the Gateway section on page 566.
Configuring the Duration and Time Periods of Call Statistics on the Gateway
Before you configure the gateway to collect call signaling statistics, VoIP AAA accounting statistics, or Cisco VoIP internal error codes (IECs), you must first configure the duration and time periods for when the call statistics are collected. There are three methods for collecting call statistics: periodic, since the last reset, and for specific times.
Note
These interval methods are mutually exclusive, meaning that the gateway can be configured for only one collection interval at a time. The collection interval configured applies to all call statistics collected. For example, if you configure the collection interval for a periodic interval, and you configure the gateway to collect both signaling and VoIP AAA accounting statistics, then both types of statistics will be collected on the periodic basis. To configure the duration and time period of when call statistics will be collected on the gateway, see one of the following sections:
Configuring the Gateway to Collect Call Statistics on a Periodic Basis, page 543 Configuring the Gateway to Collect Call Statistics Since the Last Reset, page 544 Configuring the Gateway to Collect Call Statistics for a Specific Time Interval, page 545
SUMMARY STEPS
1. 2. 3.
enable configure terminal voice statistics time-range periodic interval start hh:mm {days-of-week {Monday | Tuesday | Wednesday | Thursday | Friday | Saturday | Sunday | daily | weekdays | weekend}} [end hh:mm {days-of-week {Monday | Tuesday | Wednesday | Thursday | Friday | Saturday | Sunday}}] exit
4.
543
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
voice statistics time-range periodic interval start hh:mm {days-of-week {Monday | Tuesday | Wednesday | Thursday | Friday | Saturday | Sunday | daily | weekdays | weekend}} [end hh:mm {days-of-week {Monday | Tuesday | Wednesday | Thursday | Friday | Saturday | Sunday}}]
Example:
Router(config)# voice statistics time-range periodic 60minutes start 12:00 days-of-week Monday end 12:00 days-of-week Friday
Step 4
exit
Example:
Router(config)# exit
Configuring the Gateway to Collect Call Statistics Since the Last Reset
This task configures the gateway to collect call statistics since the last time the clear voice statistics command was entered, or since the last time the gateway was rebooted.
SUMMARY STEPS
1. 2. 3. 4.
544
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
Configures the gateway to collect call statistics since the last reset or since the last time the gateway was rebooted.
Example:
Router(config)# voice statistics time-range since-reset
Step 4
exit
Example:
Router(config)# exit
Configuring the Gateway to Collect Call Statistics for a Specific Time Interval
This task configures the gateway to collect call statistics for a specific time interval.
SUMMARY STEPS
1. 2. 3. 4.
enable configure terminal voice statistics time-range specific start hh:mm day month year end hh:mm day month year exit
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
545
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
Command or Action
Step 3
voice statistics time-range specific start hh:mm day month year end hh:mm day month year
Purpose Configures the gateway to collect call statistics for a specific configured time period.
Example:
Router(config)# voice statistics time-range specific start 10:00 1 January 2004 end 12:00 2 January 2004
Step 4
exit
Example:
Router(config)# exit
Enabling the Gateway to Collect Signaling Statistics, page 546 Configuring the Minimum Call Duration and Signaling Thresholds, page 548 Disabling the Collection of Signaling Statistics, page 549 Displaying the Signaling Statistics for Each Aggregation Level, page 550 Clearing Signaling Statistics, page 556
SUMMARY STEPS
1. 2. 3. 4. 5. 6.
enable configure terminal voice statistics type csr signaling voice statistics max-storage-duration {day value | hour value | minute value} voice statistics display-format separator {space | tab | new-line | char char} exit
546
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
Example:
Router(config)# voice statistics type csr signaling
Note
To enable the collection of both signaling and VoIP AAA accounting statistics on the gateway, enter the command without the signaling keyword as follows: voice statistics type csr.
Step 4
(Optional) Configures the maximum storage time in system memory of the gateway. The keywords and argument are as follows:
Example:
Router(config)# voice statistics max-storage-duration minute 60
dayNumber of days. The value argument has a valid range from 0 to 365. hourNumber of hours. The value argument has a valid range from 0 to 720. minuteNumber of minutes. The value argument has a valid range from 0 to 1440.
Note
This command also applies to the collection of VoIP internal error codes (IECs).
Step 5
(Optional) Specifies the way that displayed information is separated. The default is a comma (,).
Example:
Router(config)# voice statistics display-format separator new-line
Step 6
exit
Example:
Router(config)# exit
547
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
SUMMARY STEPS
1. 2. 3. 4. 5. 6. 7.
enable configure terminal voice statistics field-params mcd value voice statistics field-params lost-packet value voice statistics field-params packet-latency value voice statistics field-params packet-jitter value exit
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
Example:
Router(config)# voice statistics field-params mcd 10
Configures the minimum call duration (MCD) for collecting voice call statistics in milliseconds. Valid values are from 0 to 30 milliseconds. The default is 2 milliseconds. This value applies to both IP and PSTN statistics. Configures the lost voice packet threshold for collecting voice call statistics in milliseconds. Valid values are from 0 to 65535 milliseconds. The default is 1000 milliseconds. This value applies to IP statistics only. Configures the voice packet-latency threshold parameter for voice call statistics in milliseconds. Valid values are from 0 to 500 milliseconds. The default is 250 milliseconds. This value applies to IP statistics only.
Step 4
Example:
Router(config)# voice statistics field-params lost-packet 5000
Step 5
Example:
Router(config)# voice statistics field-params packet-latency 200
548
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
Command or Action
Step 6
voice statistics field-params packet-jitter value
Purpose Configures the voice packet-jitter threshold parameter for voice call statistics in milliseconds. Valid values are from 0 to 1000 milliseconds. The default is 250 milliseconds. This value applies to IP statistics only.
Example:
Router(config)# voice statistics field-params packet-jitter 500
Step 7
exit
Example:
Router(config)# exit
SUMMARY STEPS
1. 2. 3. 4.
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
Example:
Router(config)# no voice statistics type csr signaling
Note
If the gateway is configured to collect both signaling and VoIP AAA accounting statistics, the accounting statistics will continue to be collected after the signaling statistics collection is disabled.
Step 4
exit
Example:
Router(config)# exit
549
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
Displaying Signaling Statistics for All Aggregation Levels, page 550 Displaying Gateway-Level Signaling Statistics, page 551 Displaying VoIP-Level Signaling Statistics, page 552 Displaying PSTN-Level Signaling Statistics, page 553 Displaying Trunk-Group Level Signaling Statistics, page 554 Displaying Voice-Port Level Signaling Statistics, page 555
All commands in this section are entered in privileged EXEC mode. The statistics displayed are based on the time range configured using the voice statistics time-range command. For example, if you set the time range to specify that the gateway collects statistics only since the last reset, then these displays show only the statistics since the gateway was last reset or rebooted. With these commands, you can specify that the display shows either verbose or concise information. The verbose display shows all fields contained in the call statistics records, while the concise display shows only output that contains total calls, answered calls, and answered call duration. The verbose display mode is enabled by default. In addition, you can specify that the gateway push the statistics display from the console to an FTP or syslog server. To configure the gateway to support pushing statistics to an FTP or syslog server, see the Managing the Collection of Voice Statistics section on page 566.
SUMMARY STEPS
1. 2. 3. 4.
enable show voice statistics interval-tag show voice statistics csr interval tag-number aggregation all [mode {concise | verbose}] [push {all | ftp | syslog}] show voice statistics csr since-reset aggregation-level all [mode {concise | verbose}] [push {all | ftp | syslog}]
550
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
Displays the configured interval numbers. This command is necessary to obtain the tag number required in the next step.
Example:
Router# show voice statistics interval-tag
Step 3
show voice statistics csr interval tag-number aggregation all [mode {concise | verbose}] [push {all | ftp | syslog}]
Displays signaling statistics for all aggregation levels for a given interval.
Example:
Router# show voice statistics csr interval 102 aggregation all
Note
This command is valid only if the voice statistics time-range command is configured to support either periodic statistics collection or statistics collection for a specific time period.
Step 4
show voice statistics csr since-reset aggregation-level all [mode {concise | verbose}] [push {all | ftp | syslog}]
Displays signaling statistics for all aggregation levels since the last reset or reboot of the gateway.
Example:
Router# show voice statistics csr since-reset aggregation-level all
Note
This command is valid only if the voice statistics time-range command is configured to the since-reset value.
SUMMARY STEPS
1. 2. 3. 4.
enable show voice statistics interval-tag show voice statistics csr interval tag-number aggregation gateway [mode {concise | verbose}] [push {all | ftp | syslog}] show voice statistics csr since-reset aggregation-level gateway [mode {concise | verbose}] [push {all | ftp | syslog}]
551
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
Displays the configured interval numbers. This command is necessary to obtain the tag number required in the next step.
Example:
Router# show voice statistics interval-tag
Step 3
show voice statistics csr interval tag-number aggregation gateway [mode {concise | verbose}] [push {all | ftp | syslog}]
Example:
Router# show voice statistics csr interval 102 aggregation gateway
Note
This command is valid only if the voice statistics time-range command is configured to support either periodic statistics collection or statistics collection for a specific time period.
Step 4
show voice statistics csr since-reset aggregation-level gateway [mode {concise | verbose}] [push {all | ftp | syslog}]
Displays the gateway-wide level statistics since the last reset or reboot of the gateway.
Example:
Router# show voice statistics csr since-reset aggregation-level gateway
Note
This command is valid only if the voice statistics time-range command is configured to the since-reset value.
SUMMARY STEPS
1. 2. 3. 4.
enable show voice statistics interval-tag show voice statistics csr interval tag-number aggregation ip [mode {concise | verbose}] [push {all | ftp | syslog}] show voice statistics csr since-reset aggregation-level ip [mode {concise | verbose}] [push {all | ftp | syslog}]
552
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
Displays the configured interval numbers. This command is necessary to obtain the tag number required in the next step.
Example:
Router# show voice statistics interval-tag
Step 3
show voice statistics csr interval tag-number aggregation ip [mode {concise | verbose}] [push {all | ftp | syslog}]
Example:
Router# show voice statistics csr interval 102 aggregation ip
Note
This command is valid only if the voice statistics time-range command is configured to support either periodic statistics collection or statistics collection for a specific time period.
Step 4
show voice statistics csr since-reset aggregation-level ip [mode {concise | verbose}] [push {all | ftp | syslog}]
Displays the VoIP-level statistics since the last reset or reboot of the gateway.
Example:
Router# show voice statistics csr since-reset aggregation-level ip
Note
This command is valid only if the voice statistics time-range command is configured to the since-reset value.
SUMMARY STEPS
1. 2. 3. 4.
enable show voice statistics interval-tag show voice statistics csr interval tag-number aggregation pstn [mode {concise | verbose}] [push {all | ftp | syslog}] show voice statistics csr since-reset aggregation-level pstn [mode {concise | verbose}] [push {all | ftp | syslog}]
553
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
Example:
Router# show voice statistics interval-tag
This command is necessary to obtain the tag number required in the next step.
Step 3
show voice statistics csr interval tag-number aggregation pstn [mode {concise | verbose}] [push {all | ftp | syslog}]
Example:
Router# show voice statistics csr interval 102 aggregation pstn
Note
This command is valid only if the voice statistics time-range command is configured to support either periodic statistics collection or statistics collection for a specific time period.
Step 4
show voice statistics csr since-reset aggregation-level all pstn [mode {concise | verbose}] [push {all | ftp | syslog}]
Displays the PSTN-level statistics since the last reset or reboot of the gateway.
Example:
Router# show voice statistics csr since-reset aggregation-level pstn
Note
This command is valid only if the voice statistics time-range command is configured to the since-reset value.
SUMMARY STEPS
1. 2. 3. 4.
enable show voice statistics interval-tag show voice statistics csr interval tag-number aggregation trunk-group {all | trunk-group-label} [mode {concise | verbose}] [push {all | ftp | syslog}] show voice statistics csr since-reset aggregation-level trunk-group {all | trunk-group-label} [mode {concise | verbose}] [push {all | ftp | syslog}]
554
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
Displays the configured interval numbers. This command is necessary to obtain the tag number required in the next step.
Example:
Router# show voice statistics interval-tag
Step 3
show voice statistics csr interval tag-number aggregation trunk-group {all | trunk-group-label} [mode {concise | verbose}] [push {all | ftp | syslog}]
Displays the trunk-group level statistics for a given interval. Display statistics can be specified for a single trunk group or for all trunk groups.
Example:
Router# show voice statistics csr interval 102 aggregation trunk-group 20
Note
This command is valid only if the voice statistics time-range command is configured to support either periodic statistics collection or statistics collection for a specific time period.
Step 4
show voice statistics csr since-reset aggregation-level trunk-group {all | trunk-group-label} [mode {concise | verbose}] [push {all | ftp | syslog}]
Displays the trunk-group level statistics since the last reset or reboot of the gateway. You can display statistics for a specific trunk group or for all trunk groups.
Example:
Router# show voice statistics csr since-reset aggregation-level trunk-group all
Note
This command is valid only if the voice statistics time-range command is configured to the since-reset value.
SUMMARY STEPS
1. 2. 3. 4.
enable show voice statistics interval-tag show voice statistics csr interval tag-number aggregation voice-port {voice-port-label | all} [mode {concise | verbose}] [push {all | ftp | syslog}] show voice statistics csr since-reset aggregation-level voice-port {all | voice-port-label} [mode {concise | verbose}] [push {all | ftp | syslog}]
555
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
Displays the configured interval numbers. This command is necessary to obtain the tag number required in the next step.
Example:
Router# show voice statistics interval-tag
Step 3
show voice statistics csr interval tag-number aggregation voice-port {voice-port-label | all} [mode {concise | verbose}] [push {all | ftp | syslog}]
Displays voice-port level statistics for a given interval. You can display statistics for a specific voice port or for all voice ports.
Example:
Router# show voice statistics csr interval 102 aggregation voice-port all
Note
This command is valid only if the voice statistics time-range command is configured to support either periodic statistics collection or statistics collection for a specific time period.
Step 4
show voice statistics csr since-reset aggregation-level voice-port {all | voice-port-label} [mode {concise | verbose}] [push {all | ftp | syslog}
Displays the voice-port level statistics since the last reset or reboot of the gateway. You can display statistics for a specific voice port or for all voice ports.
Example:
Router# show voice statistics csr since-reset aggregation-level voice-port all
Note
This command is valid only if the voice statistics time-range command is configured to the since-reset value.
SUMMARY STEPS
1. 2.
556
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
Example:
Router# clear voice statistics csr signaling
Enabling the Collection of VoIP AAA Accounting Statistics on the Gateway, page 557 Configuring a Designated Server Group for a Broadcast Method List, page 559 Disabling the Collection of VoIP AAA Accounting Statistics, page 560 Displaying the VoIP AAA Accounting Statistics, page 561 Clearing the VoIP AAA Accounting Statistics, page 562
Prerequisites
The definition of the AAA method list for accounting, the server groups, and the RADIUS servers should be configured. For more information, refer to the Configuring AAA for Cisco Voice Gateways document in the Cisco IOS Voice Configuration Library.
Restrictions
You can define pass criteria for calls on the basis of method lists but not on the basis of server groups. For broadcast method lists, if the gateway attempts to access multiple server groups simultaneously, additional configuration is needed. See the Configuring a Designated Server Group for a Broadcast Method List section on page 559.
557
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
SUMMARY STEPS
1. 2. 3. 4. 5. 6. 7.
enable configure terminal voice statistics type csr accounting voice statistics accounting method method-list-name pass {start-interim-stop | start-stop | stop-only} voice statistics max-storage-duration {day value | hour value | minute value} voice statistics display-format separator {space | tab | new-line | char char} exit
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
Example:
Router(config)# voice statistics type csr accounting
Note
To enable the collection of both accounting and signaling statistics on the gateway, enter the command without the accounting keyword, as follows: voice statistics type csr.
Step 4
Note
Example:
Router(config)# voice statistics accounting method h323 pass stop-only
The method-list-name argument is the same as that configured using the method command in gateway-accounting AAA configuration mode. You can have multiple method lists configured on a gateway at one time.
558
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
Command or Action
Step 5
voice statistics max-storage-duration {day value | hour value | minute value}
Purpose (Optional) Configures the maximum storage time in system memory of the gateway. The keywords and argument are as follows:
Example:
Router(config)# voice statistics max-storage-duration minute 60
dayNumber of days. The value argument has a valid range from 0 to 365. hourNumber of hours. The value argument has a valid range from 0 to 720. minuteNumber of minutes. The value argument has a valid range from 0 to 1440.
Note
This command also applies to the collection of VoIP internal error codes (IECs).
Step 6
(Optional) Specifies the way in which displayed information is separated. The default is a comma (,).
Example:
Router(config)# voice statistics display-format separator new-line
Step 7
exit
Example:
Router(config)# exit
Prerequisites
The collection of accounting statistics should be enabled on the gateway. The pass criteria for the method list must already be defined.
SUMMARY STEPS
1. 2. 3. 4. 5. 6.
enable configure terminal aaa group server radius name accounting acknowledge broadcast end show voice statistics | begin aaa group server
559
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
Example:
Router(config)# aaa group server radius billing-grp
Groups different RADIUS server hosts into distinct lists and distinct methods and enters server group RADIUS configuration mode.
Step 4
Enables the accounting broadcast functionality for the server groups configured in Step 3.
Example:
Router(config-sg-radius)# accounting acknowledge broadcast
Step 5
end
Ends the current configuration session and returns to privileged EXEC mode.
Example:
Router(config-sg-radius)# end
Step 6
Example:
Router# show voice statistics | begin aaa group server
Troubleshooting Tips
Acknowledgements of only designated server groups are considered when deciding whether the accounting for a given call leg is successful. If more than one server group is configured as designated, the gateway considers the response from all server groups in deciding whether the call leg accounting is successful.
SUMMARY STEPS
1. 2. 3.
560
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
4.
exit
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
Example:
Router(config)# no voice statistics type csr accounting
Note
If the gateway is configured to collect both VoIP AAA accounting statistics and signaling statistics, the signaling statistics will continue to be collected after the accounting statistics collection is disabled.
Step 4
exit
Example:
Router(config)# exit
SUMMARY STEPS
1. 2. 3. 4.
enable show voice accounting method [method-list-name] show voice statistics csr interval tag-number accounting {all | method-list method-list-name} [push {all | ftp | syslog}] show voice statistics csr since-reset accounting {all | method-list method-list-name} [push {all | ftp | syslog}]
561
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
Example:
Router# show voice accounting method mll
Step 3
show voice statistics csr interval tag-number accounting {all | method-list method-list-name} [push {all | ftp | syslog}]
Displays the VoIP AAA accounting statistics for the specified interval. You can display all accounting statistics or accounting statistics for a specific method list.
Example:
Router# show voice statistics csr interval 10 accounting all
Step 4
show voice statistics csr since-reset accounting {all | method-list method-list-name} [push {all | ftp | syslog}]
Displays all VoIP AAA accounting statistics since the last reset or reboot of the gateway. You can display all accounting statistics or accounting statistics for a specific method list.
Example:
Router# show voice statistics csr since-reset accounting method-list h323
Step 5s
Example:
Router# show voice accounting response pending
SUMMARY STEPS
1. 2. 3.
enable clear voice statistics csr accounting clear voice accounting method method-list-name
562
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
Example:
Router# clear voice statistics csr accounting
Step 3
Example:
Router# clear voice accounting method h323
Message: Either specific or periodic time-range has existed. Solution: Delete any previously configured specific or periodic time range.
Message: Ending time must be greater than starting time. Solution: Make sure that the configured end time is later than the start time for the time range configured.
Message: Starting time must be future time. Solution: Make sure that the configured start time is in the future.
If accounting statistics are not being collected properly, the best place to start troubleshooting is by verifying your configurations as follows:
Router# show running-config | include voice statistics voice statistics type csr voice statistics accounting method h323 pass stop-only ! Specifies the pass criteria. voice statistics time-range since-reset Router# show running-config | include aaa aaa new-model aaa accounting connection h323 start-stop group radius ! Specifies the method list. aaa session-id common gw-accounting aaa ! Enables accounting on the gateway. radius-server host 1.6.10.203 auth-port 1645 acct-port 1646 ! Specifies RADIUS server IP address.
563
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
If your configurations are correct, turn on debugging with the following debug commands and check the output. You must turn on all three commands:
As long as accounting and signaling statistics are being collected, the output from these three debug commands will display on the console. The following sample output shows that the accounting statistics are not being properly collected by the RADIUS server:
*Nov 22 14:54:49.350: ISDN Se6/0:15 Q931: RX <- SETUP pd = 8 callref = 0x125E Bearer Capability i = 0x8090A3 Standard = CCITT Transfer Capability = Speech Transfer Mode = Circuit Transfer Rate = 64 kbit/s Channel ID i = 0xA98381 Exclusive, Channel 1 Called Party Number i = 0x80, '11' Plan:Unknown, Type:Unknown ! Router#55:02.366: RADIUS: acct-delay-time for 4067CADC (at 4067CDF6) now 10 *Nov 22 14:55:04.366: RADIUS: Retransmit to (10.6.10.203:1645,1646) for id 21669/117 *Nov 22 14:55:04.366: RADIUS(0000053B): Retransmit id 21669/117 *Nov 22 14:55:04.366: RADIUS: acct-delay-time for 40278B3C (at 40278D04) now 15 *Nov 22 14:55:07.366: RADIUS: Retransmit to (10.6.10.203:1645,1646) for id 21669/118 *Nov 22 14:55:07.366: RADIUS(0000053B): Retransmit id 21669/118 *Nov 22 14:55:07.366: RADIUS: acct-delay-time for 4067CADC (at 4067CDF6) now 15 *Nov 22 14:55:09.366: RADIUS: Tried all servers. *Nov 22 14:55:09.366: RADIUS: No valid server found. Trying any viable server.
The line above indicates that the RADIUS server is not found.
*Nov *Nov *Nov *Nov *Nov *Nov 22 22 22 22 22 22 14:55:12.366: 14:55:12.366: 14:55:12.366: 14:55:12.366: 14:55:12.366: 14:55:12.366: RADIUS: Tried all servers. RADIUS: No response from (10.6.10.203:1645,1646) for id 21669/120 RADIUS/DECODE: parse response no app start; FAIL RADIUS/DECODE: parse response; FAIL voip_process_acct_reply(1339): voip_process_acct_reply(1339): event_message->type=0x210, msg_t=2, rsp=2 voip_process_acct_reply: acct notification call back for method=h323 acct_notif_cleanup: acct_ntf_deregistration: acct_ntf_deregistration: deregister with AAA EM, rsp_t=0x4, ev_t=0x210 acct_notif_cleanup: unlock adb voip_aaa_unlock_adb: uid(1339) count=0 voip_aaa_cleanup_adb: dealloc uid (1339) voip_aaa_acct_get_dynamic_attrs: No cdb found from cdb tree
*Nov 22 14:55:12.366: *Nov 22 14:55:12.366: *Nov 22 14:55:12.366: *Nov 22 14:55:12.366: *Nov *Nov *Nov *Nov 22 22 22 22 14:55:12.366: 14:55:12.366: 14:55:12.366: 14:55:12.366:
564
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
The following sample output shows that the RADIUS server was authenticated:
*Nov 22 14:56:46.006: ISDN Se6/0:15 Q931: RX <- SETUP pd = 8 callref = 0x125F Bearer Capability i = 0x8090A3 Standard = CCITT Transfer Capability = Speech Transfer Mode = Circuit Transfer Rate = 64 kbit/s Channel ID i = 0xA98381 Exclusive, Channel 1 Called Party Number i = 0x80, '11' Plan:Unknown, Type:Unknown *Nov 22 14:56:46.010: voip_start_ccapi_accounting(784): *Nov 22 14:56:46.010: voip_start_accounting_internal: *Nov 22 14:56:46.010: voip_start_accounting_internal(784): peer_tag=100 *Nov 22 14:56:46.010: get_acct_params: suppressed=0 *Nov 22 14:56:46.010: get_acct_params(784): Use method h323 set by global config. *Nov 22 14:56:46.014: method: *Nov 22 14:56:46.014: cdrtag: *Nov 22 14:56:46.014: voip_start_accounting_internal: Getting new uid *Nov 22 14:56:46.014: voip_alloc_aaa_uid *Nov 22 14:56:46.014: voip_aaa_acct_get_retrieved_attrs *Nov 22 14:56:46.014: voip_aaa_acct_get_nas_port_details: *Nov 22 14:56:46.014: get_nas_port: avail=1 type=4 nas-port=ISDN 6/0:D:1 *Nov 22 14:56:46.014: voip_aaa_lock_adb: uid(1341) count=1 *Nov 22 14:56:46.014: voip_start_accounting_internal: UID=1341 *Nov 22 14:56:46.014: voip_start_accounting_internal: Telephony Leg *Nov 22 14:56:46.014: voip_start_accounting_internal(784): *Nov 22 14:56:46.014: calling num : *Nov 22 14:56:46.014: called num : 11 *Nov 22 14:56:46.014: account num : *Nov 22 14:56:46.014: setup time : *14:56:46.014 PST Fri *Nov 22 14:56:46.014: gateway id : Router.cisco2.com *Nov 22 14:56:46.014: connection id : 82831163 FDA411D6 8660B639 91DC0E5F *Nov 22 14:56:46.014: call origin : answer *Nov 22 14:56:46.014: call type : Telephony *Nov 22 14:56:46.014: incoming conn id: 82831163 FDA411D6 8660B639 91DC0E5F *Nov 22 14:56:46.018: RADIUS(0000053D): sending *Nov 22 14:56:46.018: RADIUS(0000053D): Send Accounting-Request to 10.6.10.203:1646 id 121, len 462 *Nov 22 14:56:46.018: RADIUS: authenticator C7 53 14 06 45 F2 49 DF - 53 D8 90 B3 1C D1 74 03 *Nov 22 14:56:46.018: RADIUS: Acct-Session-Id [44] 10 0000084C *Nov 22 14:56:46.018: RADIUS: Vendor, Cisco [26] 57 *Nov 22 14:56:46.018: RADIUS: h323-setup-time [25] 51 h323-setup-time=*14:56:46.014 PST *Nov 22 14:56:46.018: RADIUS: Vendor, Cisco [26] 36 *Nov 22 14:56:46.018: RADIUS: h323-gw-id [33] 30 h323-gw-id=Router.cisco2.com *Nov 22 14:56:46.018: RADIUS: Vendor, Cisco [26] 56 *Nov 22 14:56:46.018: RADIUS: Conf-Id [24] 50 h323-conf-id=82831163 FDA411D6 8660B639 91DC0E5F *Nov 22 14:56:46.018: RADIUS: Vendor, Cisco [26] 31 *Nov 22 14:56:46.018: RADIUS: h323-call-origin [26] 25 h323-call-origin=answer *Nov 22 14:56:46.018: RADIUS: Vendor, Cisco [26] 32 *Nov 22 14:56:46.018: RADIUS: h323-call-type [27] 26 h323-call-type=Telephony Accounting-response, len 20 !
565
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
**Nov 22 14:56:49.022: RADIUS: authenticated 08 C6 FC 0F 31 1D FA EA - 68 A7 5D 48 6F 47 96 FA *Nov 22 14:56:49.022: voip_process_acct_reply(1341): *Nov 22 14:56:49.022: voip_process_acct_reply(1341): event_message->type=0x210, msg_t=2, rsp=1 *Nov 22 14:56:49.022: voip_process_acct_reply: acct notification call back for method=h323 *Nov 22 14:56:49.022: acct_notif_cleanup: *Nov 22 14:56:49.022: acct_ntf_deregistration: *Nov 22 14:56:49.022: acct_ntf_deregistration: deregister with AAA EM, rsp_t=0x4, ev_t=0x210 *Nov 22 14:56:49.022: acct_notif_cleanup: unlock adb *Nov 22 14:56:49.022: voip_aaa_unlock_adb: uid(1341) count=0 *Nov 22 14:56:49.022: voip_aaa_cleanup_adb: dealloc uid (1341) *Nov 22 14:56:49.022: voip_aaa_acct_get_dynamic_attrs: No cdb found from cdb tree
Configuring the FTP Server to Enable Archiving of Statistics from the Gateway, page 566 Configuring the Gateway to Archive Statistics to an FTP Server, page 569 Configuring the Gateway to Archive Statistics to a Syslog Server, page 570 Displaying Memory Usage, page 571 Displaying All Statistics and Pushing Them to an FTP or Syslog Server, page 572 Clearing the Collected Call Statistics, page 572 Monitoring the Statistical Reporting, page 573
Configuring the FTP Server to Enable Archiving of Statistics from the Gateway
This task shows how to configure the FTP server to accept archived statistics from a Cisco IOS gateway.
Prerequisites
FTP Server
An FTP server must be configured before you can archive the collected statistics.
FTP Service Port
Normally, the FTP port is a well-known number, such as 21. However, another port number (not well-known) can receive data for specific purposes (for example, security), as long as the FTP client on voice gateways is configured to use the same port number.
User Account and File Directory
In order for the FTP client on the voice gateway to write files on the FTP server, FTP user accounts must be available (or well-known) to the FTP client. The FTP user accounts can be normal UNIX user accounts. The FTP file upload directory in the FTP servers can also be specified for directory management purposes. System administrators can also restrict the privilege level of the user accounts in the upload directory for security and directory management purposes.
566
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
Note
For this task, the external devices are assumed to be UNIX-like platforms (for example, Linux).
Step 1
Install the software. Ensure that both the anonftp package and the wu-ftpd package are installed on the system. The versions installed should, at a minimum, match those below:
anonftp-3.0-9 wu-ftpd-2.6.1-6
Check to see whether the installation can be done with the following command: rpm -qa | egrep '(wu-ftpd|anonftp)'
Step 2
Configure the IP aliasing for virtual domains. Configure the IP aliases for the virtual domains so that there is an IP address routed through one of the available network interfaces. The programs netcfg or linuxconf can also be used to set up the IP aliases (replacing 10.10.10.10 with your actual IP address for the FTP site). If the IP address is to resolve to a domain name, you must set up a DNS server.
Step 3
Configure xinetd.conf. Configure the /etc/xinetd.d/wu-ftpd file to handle FTP access, for example:
[root@wyvern xinetd.d]# cat wu-ftpd # default: on # description: The wu-ftpd FTP server knows the FTP # connections. It uses \ normal,unencrypted # usernames and passwords for authentication. service ftp { disable socket_type wait user server server_args log_on_success log_on_failure nice }
Note
It is very important that the -1 -a is specified in server_args and that the disable line is set to no. This tells inetd.conf to reference the commands in the /etc/ftpaccess file.
Step 4
Edit /etc/ftpaccess. Edit the /etc/ftpaccess file. Make the basic changes using Linuxconf as the root. Additional changes must be made in this file manually. The virtual entry in the file should be placed at the bottom of the file and resembles the following:
# Virtual FTP entries for 10.10.10.10 virtual 10.10.10.10 root /home/domain1 virtual 10.10.10.10 banner /home/ftp/domain1/banner.msg virtual 10.10.10.10 logfile /var/log/virtual/domain1/xferlog
567
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
Where /home/domain1 is the root path for the virtual FTP server, /home/ftp/domain1/banner.msg is the path to the banner message to be displayed upon login, and /var/log/virtual/domain1/xferlog is the path to the transfer log.
Step 5
Specify other options. Specify that all users can have access with the following line:
virtual 10.10.10.10 allow *
If only specific users are to be allowed access, list their usernames, as shown here:
virtual 10.10.10.10 allow user1
If anonymous FTP logins are to be disabled, set the IP address to private as shown here:
virtual 10.10.10.10 private
Step 6
Secure or hide the FTP server. When FTP users log on to the system, they should be allowed into the directory specified in the root path only. There are several steps as follows:
a. b.
Determine whether or not there is one user or a group of users that will be logging into the virtual FTP site. Specify the home directory in the /etc/passwd file for the user specified in the /etc/ftpaccess/ file, followed by a /./. The entry will look like this:
user1:X:2453:group1::/var/ftp/home/domain1/./:/bin/bash
Include the following line in your FTP access file, if user1 is the only user accessing this virtual FTP site, following the virtual configuration lines:
guestuser user1
When logging into 10.10.10.10, user1 is automatically dropped into /home/domain1 but will see this as the / directory. User1 will not be able to move outside of that directory.
c.
Specify a group of users in addition to user1 in /etc/group. You should then add the following line to /etc/ftpaccess following the virtual FTP entry:
guestgroup group1
d.
Specify the administrator of the FTP site (user2 in the example and exempt from the group rule) as follows:
guestgroup group1 realuser user2
Step 7
Provide for basic shell access. Open the /var/ftp (created on the system when the anonftp rpm was installed), and copy /var/ftp/bin, /var/ftp/etc/, and /var/ftp/lib into the root directory of the virtual FTP site (in this case, /var/ftp/home/domain1).
Step 8
Restart services so that the configuration takes effect. Close the configuration file after making all of the changes, and restart the inet services (where FTP services are specified) by typing the following:
/sbin/service xinetd stop
then:
/sbin/service xinetd start
568
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
Note
This procedure can also be used to archive Cisco VoIP internal error codes (IECs) to an FTP server.
SUMMARY STEPS
1. 2. 3. 4.
enable configure terminal voice statistics push ftp url ftp-url [max-file-size value] exit
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
Configures the FTP server location where statistics will be archived. The ftp-url argument is expressed in the following form: ftp://user:password@host:port/path1/path2/
Example:
Router(config)# voice statistics push ftp url ftp://me:secret@abccompanyhost:23/products max-file-size 3000
The max-file-size keyword is optional and specifies the maximum FTP file size, in bytes. The value argument has a valid range from 1024 to 4294967295. The default is 400000000 (4 GB).
Step 4
exit
Example:
Router(config)# exit
Example
The following sample output is the message that you see on your console when the statistics are being archived to the FTP server:
Writing /ftp_files/vstats.3660-1.2002-04-25T020500Z ! Writing /ftp_files/vstats.3660-1.2002-04-25T020500Z.done ! !
569
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
01:43:22: %VSTATS-6-VCSR: SEQ=0: stats_type,version,format,gw_id,start_time,end_time,rec_count VCSR_SIG,1,asc,3660-1,2002-04-25T02:00:00Z,2002-04-25T02:05:00Z,9 record_type,trunk_group_id,voice_port_id,in_call,in_ans,in_fail,out_call,out_ans,out_fail, in_szre_d,out_szre_d,in_conn_d,out_conn_d,orig_disconn,in_ans_abnorm,out_ans_abnorm,in_mcd out_mcd,in_pdd,out_pdd,in_setup_delay,out_setup_delay,lost_pkt,latency,jitter,in_cc_no, out_cc_no,in_cc_id,in_cc_cntr,out_cc_id,out_cc_cntr gw,,,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,16,0,16,0 ip,,,0,0,0,0,0,0,0,0,0,0, 01:43:22: %VSTATS-6-VCSR: SEQ=1: 0,0,0,0,0,0,0,0,0,0,0,0,1,1,16,0,16,0 pstn,,,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,,,,1,1,16,0,16,0 vp,,4/0/0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,,,,1,1,16,0,16,0 vp,,4/0/1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,,,,1,1,16,0,16,0 vp,,4/1/0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,,,,1,1,16,0,16,0 vp,,4/1/1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,,,,1,1,16,0,16,0 vp,,2/0:23,0,0,0,0,0,|0,0,0,0,0,0,0,0,0,0,0,0,0,0,,,,1,1,16,0,16,0 vp,,2/1:23,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,,,,1,1,16,0,16,0 stats_type,version,format,gw_id,start_time,e 01:43:22: %VSTATS-6-VCSR: SEQ=2: nd_time,rec_count VCSR_ACC,1,asc,3660-1,2002-04-25T02:00:00Z,2002-04-25T02:05:00Z,2 acct_type,acct_type_name,acct_pass_criteria,pstn_in_pass,pstn_in_fail,pstn_out_pass, pstn_out_fail,ip_in_pass,ip_in_fail,ip_out_pass,ip_out_fail ml,h323,1,0,0,0,0,0,0,0,0 ml,h323-1,1,0,0,0,0,0,0,0,0
Note
This procedure can also be used to archive Cisco VoIP internal error codes (IECs) to a sylog server.
Prerequisites
The external syslog server must be configured to receive voice call statistics from the gateway. For information about enabling a syslog server to receive voice call statistics information from a gateway, refer to Task 2 in Enabling Management Protocols: NTP, SNMP, and Syslog on Cisco.com. For information about configuring a Solaris syslog server, refer to Task 4 (Using Syslog, NTP, and Modem Call Records to Isolate and Troubleshoot Faults) in the Basic Dial NMS Implementation Guide on Cisco.com.
SUMMARY STEPS
1. 2. 3. 4.
enable configure terminal voice statistics push syslog [max-msg-size value] exit
570
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
Archives voice statistics to an external syslog server and specifies the maximum syslog message size.
Example:
Router(config)# voice statistics push syslog
The max-msg-size keyword is optional and specifies the maximum size in bytes of a voice statistics file to be pushed to the syslog server. Valid values are from 1024 to 4294967295. The default value is 4000000000 (4 GB).
Step 4
exit
Example:
Router(config)# exit
SUMMARY STEPS
1. 2.
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
Example:
Router(config)# show voice statistics memory-usage csr
571
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
Note
This procedure can also be used if you are collecting statistics for VoIP internal error codes (IECs).
SUMMARY STEPS
1. 2. 3.
enable show voice statistics csr since-reset all [mode {concise | verbose}] show voice statistics csr since-reset all push {all | ftp | syslog}
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
Displays all statistics (including both signaling and accounting statistics) since the last reset or reboot of the gateway.
Example:
Router# show voice statistics csr since-reset all mode concise
Step 3
show voice statistics csr since-reset all push {all | ftp | syslog}
Pushes all displayed statistics to either the FTP or syslog server, or to both servers.
Example:
Router# show voice statistics csr since-reset all push syslog
The statistics are first displayed on the console before being pushed to the FTP or syslog server.
Restrictions
Only since-reset counters can be reset. Specific or periodic counts cannot be reset using the clear voice statistics csr command. This command cannot be used in nonprivileged mode.
572
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
SUMMARY STEPS
1. 2. 3.
enable clear voice statistics csr show voice statistics csr since-reset all
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
Example:
Router# clear voice statistics csr
Step 3
Example:
Router# show voice statistics csr since-reset all
Displays the collected statistics since a reset occurred. Enter this command after entering the clear voice statistics csr command to verify that the statistics have been cleared.
Troubleshooting Tips
The gateway does not recognize the clear voice statistics csr command in nonprivileged mode and displays the following message:
Router> clear voice statistics csr ^ % Invalid input detected at '^' marker.
If you see this message, enter this command from privileged EXEC mode.
Using Debug Commands for Monitoring Gateway Reporting, page 574 Using Cause Code Statistics, page 578 Displaying Quality of Service Indicators, page 580
573
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
debug radius accounting debug event-manager debug voice statistics csr debug voice statistics accounting debug voice statistics core
Once the debugging is turned on, you can review the data, evaluate the performance of the network, and identify impaired voice equipment. The following output examples show a collection of records occurring between intervals and a voice call going through the gateway.
Example of Record Collection Between Intervals
In the following example, the gateway was unable to push the data to the FTP server.
vstats_timer_handle_interval_event():Between Intervals! 04:52:37: vstats_acct_interval_end: interval_tag = 4 04:52:37: vstats_acct_interval_end: pushing out, tag=3 04:52:37: vstats_acct_clean_history_stats: 04:52:37: vstats_acct_clean_history_stats: stats (tag=3) not to be deleted 04:52:37: vstats_acct_clean_history_stats: stats (tag=2) not to be deleted 04:52:37: vstats_acct_create_empty_stats: 04:52:37: vstats_acct_create_new_rec_list: 04:52:37: vstats_acct_create_new_rec_list: add acct rec: methodlist=h323, acct-criteria=2 04:52:37: vstats_acct_create_new_rec: 04:52:37: vstats_acct_add_rec_entry: 04:52:37: vstats_acct_add_stats_entry: 04:52:37: vstat_push_driver_file_open():Cannot open ftp://sgcp:sgcp@abc-pc:21//ftp_files/vstats.5400-GW.2003-02-13T162000Z. errno=65540=Unknown error 65540 vstat_push_drv_activate_ftp_file_tx():open file (ftp://sgcp:sgcp@jeremy-pc:21//ftp_files/vstats.5400-GW.2003-02-13T162000Z)=(ftp://sgcp:sg cp@abc-pc:21//ftp_files/vstats.5400-GW.2003-02-13T162000Z)failed! vstats_push_api_push_formatted_text():Start CMD error!
574
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:07: 04:55:08: 04:55:08:
RADIUS: Vendor, Cisco [26] 32 RADIUS: h323-call-type [27] 26 "h323-call-type=Telephony" RADIUS: Vendor, Cisco [26] 65 RADIUS: Cisco AVpair [1] 59 "h323-incoming-conf-id=2F4ED2E3 3EA611D7 800E0002 B935C142" RADIUS: Vendor, Cisco [26] 30 RADIUS: Cisco AVpair [1] 24 "subscriber=RegularLine" RADIUS: Vendor, Cisco [26] 35 RADIUS: Cisco AVpair [1] 29 "gw-rxd-cdn=ton:0,npi:0,#:11" RADIUS: Vendor, Cisco [26] 32 RADIUS: Cisco AVpair [1] 26 "calling-party-category=9" RADIUS: Vendor, Cisco [26] 33 RADIUS: Cisco AVpair [1] 27 "transmission-medium-req=0" RADIUS: User-Name [1] 4 "22" RADIUS: Acct-Status-Type [40] 6 Start [1] RADIUS: NAS-Port-Type [61] 6 Async [0] RADIUS: Vendor, Cisco [26] 20 RADIUS: cisco-nas-port [2] 14 "ISDN 6/0:D:1" RADIUS: NAS-Port [5] 6 0 RADIUS: Calling-Station-Id [31] 4 "22" RADIUS: Called-Station-Id [30] 4 "11" RADIUS: Service-Type [6] 6 Login [1] RADIUS: NAS-IP-Address [4] 6 10.6.43.101 RADIUS: Acct-Delay-Time [41] 6 0 RADIUS(0000001A): Config NAS IP: 0.0.0.0 RADIUS(0000001A): sending RADIUS/ENCODE: Best Local IP-Address 10.6.43.101 for Radius-Server 10.6.10.203 RADIUS(0000001A): Send Accounting-Request to 10.6.10.203:1646 id 21645/50,len427 RADIUS: authenticator E4 98 06 8C 48 63 4F AA - 56 4F 40 12 33 F0 F5 99 RADIUS: Acct-Session-Id [44] 10 "00000021" RADIUS: Vendor, Cisco [26] 57 RADIUS: h323-setup-time [25] 51 "h323-setup-time=*16:22:31.006 UTC Thu Feb 13 2003" RADIUS: Vendor, Cisco [26] 27 RADIUS: h323-gw-id [33] 21 "h323-gw-id=5400-GW." RADIUS: Vendor, Cisco [26] 56 RADIUS: Conf-Id [24] 50 "h323-conf-id=2F4ED2E3 3EA611D7 800E0002 B935C142" RADIUS: Vendor, Cisco [26] 34 RADIUS: h323-call-origin [26] 28 "h323-call-origin=originate" RADIUS: Vendor, Cisco [26] 27 RADIUS: h323-call-type [27] 21 "h323-call-type=VoIP" RADIUS: Vendor, Cisco [26] 65 RADIUS: Cisco AVpair [1] 59 "h323-incoming-conf-id=2F4ED2E3 3EA611D7 800E0002 B935C142" RADIUS: Vendor, Cisco [26] 30 RADIUS: Cisco AVpair [1] 24 "subscriber=RegularLine" RADIUS: Vendor, Cisco [26] 30 RADIUS: Cisco AVpair [1] 24 "session-protocol=cisco" RADIUS: Vendor, Cisco [26] 35 RADIUS: Cisco AVpair [1] 29 "gw-rxd-cdn=ton:0,npi:0,#:11" RADIUS: User-Name [1] 4 "22" RADIUS: Acct-Status-Type [40] 6 Start [1] RADIUS: Calling-Station-Id [31] 4 "22" RADIUS: Called-Station-Id [30] 4 "11" RADIUS: Service-Type [6] 6 Login [1] RADIUS: NAS-IP-Address [4] 6 10.6.43.101 RADIUS: Acct-Delay-Time [41] 6 0 EM: No consumer registered for event type NEWINFO EM: Notify the producer not to produce EM: No consumer registered for event type NEWINFO EM: Notify the producer not to produce RADIUS: no sg in radius-timers: ctx 0x65BAB1BC sg 0x0000 RADIUS: Retransmit to (10.6.10.203:1645,1646) for id 21645/50
575
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
04:55:08: 04:55:09: 04:55:09: 04:55:09: 04:55:10: 04:55:10: 04:55:10: 04:55:10: 04:55:10: 04:55:10: 04:55:10: 04:55:10: 04:55:10: 04:55:10: 04:55:10: 04:55:10: 04:55:10: 04:55:10: 04:55:10: 04:55:10: 04:55:10: 04:55:10: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13:
RADIUS: acct-delay-time for 403963FC (at 403965A1) now 1 RADIUS: no sg in radius-timers: ctx 0x65ADB8EC sg 0x0000 RADIUS: Retransmit to (10.6.10.203:1645,1646) for id 21645/49 RADIUS: acct-delay-time for 40389BFC (at 40389DE6) now 1 RADIUS: no sg in radius-timers: ctx 0x65BAB1BC sg 0x0000 RADIUS: Fail-over to (10.8.159.105:1645,1645) for id 21645/51 RADIUS: acct-delay-time for 403963FC (at 403965A1) now 2 RADIUS/ENCODE: Best Local IP-Address 10.6.43.101 for Radius-Server 10.8.159.105 RADIUS: Received from id 21645/53 10.8.159.105:1645, Accounting-response, len 20 RADIUS: authenticator 57 EF DD 90 0F 88 76 EA - A5 3D A7 44 0D 90 66 16 vstats_acct_rsp_handler: methodlist=h323, rsp_type=0x1 acct_rsp_status=1 callid= 26, incoming=0, leg=2 vstats_acct_rsp_handler: last acct msg not sent yet. methodlist: h323 RADIUS: no sg in radius-timers: ctx 0x65ADB8EC sg 0x0000 RADIUS: Fail-over to (10.8.159.105:1645,1645) for id 21645/52 RADIUS: acct-delay-time for 40389BFC (at 40389DE6) now 2 RADIUS/ENCODE: Best Local IP-Address 10.6.43.101 for Radius-Server 10.8.159.105 RADIUS: Received from id 21645/54 10.8.159.105:1645, Accounting-response, len 20 RADIUS: authenticator 97 88 6C BA DA 22 E7 5E - 73 EC 21 C6 36 1B 93 18 vstats_acct_rsp_handler: methodlist=h323, rsp_type=0x1 acct_rsp_status=callid= 25, incoming=1, leg=1 vstats_acct_rsp_handler: last acct msg not sent yet. methodlist: h323 RADIUS(0000001A): Config NAS IP: 0.0.0.0 RADIUS(0000001A): sending RADIUS/ENCODE: Best Local IP-Address 10.6.43.101 for Radius-Server 10.6.10.203 RADIUS(0000001A): Send Accounting-Request to 10.6.10.203:1646 id 21645/55,len885 RADIUS: authenticator F8 4F F1 30 7E 8B 5B 46 - EF AE 17 2D 5C BA 36 E5 RADIUS: Acct-Session-Id [44] 10 "00000021" RADIUS: Vendor, Cisco [26] 57 RADIUS: h323-setup-time [25] 51 "h323-setup-time=*16:22:31.006 UTC Thu Feb 13 2003" RADIUS: Vendor, Cisco [26] 27 RADIUS: h323-gw-id [33] 21 "h323-gw-id=5400-GW." RADIUS: Vendor, Cisco [26] 56 RADIUS: Conf-Id [24] 50 "h323-conf-id=2F4ED2E3 3EA611D7 800E0002 B935C142" RADIUS: Vendor, Cisco [26] 34 RADIUS: h323-call-origin [26] 28 "h323-call-origin=originate" RADIUS: Vendor, Cisco [26] 27 RADIUS: h323-call-type [27] 21 "h323-call-type=VoIP" RADIUS: Vendor, Cisco [26] 65 RADIUS: Cisco AVpair [1] 59 "h323-incoming-conf-id=2F4ED2E3 3EA611D7 800E0002 B935C142" RADIUS: Vendor, Cisco [26] 30 RADIUS: Cisco AVpair [1] 24 "subscriber=RegularLine" RADIUS: Vendor, Cisco [26] 30 RADIUS: Cisco AVpair [1] 24 "session-protocol=cisco" RADIUS: Vendor, Cisco [26] 35 RADIUS: Cisco AVpair [1] 29 "gw-rxd-cdn=ton:0,npi:0,#:11" RADIUS: Vendor, Cisco [26] 59 RADIUS: h323-connect-time [28] 53 "h323-connect-time=*16:22:31.046 UTC Thu Feb 13 2003" RADIUS: Acct-Input-Octets [42] 6 2241 RADIUS: Acct-Output-Octets [43] 6 81 6 6 6 62 56 32 26 38 113 5 5 "h323-disconnect-time=*16:22:36.070 UTC
RADIUS: Acct-Input-Packets [47] RADIUS: Acct-Output-Packets [48] RADIUS: Acct-Session-Time [46] RADIUS: Vendor, Cisco [26] RADIUS: h323-disconnect-tim[29] Thu Feb 13 2003" 04:55:13: RADIUS: Vendor, Cisco [26] 04:55:13: RADIUS: h323-disconnect-cau[30] 04:55:13: RADIUS: Vendor, Cisco [26]
"h323-disconnect-cause=10"
576
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13:
RADIUS: h323-remote-address[23] 32 "h323-remote-address=10.0.0.110" RADIUS: Vendor, Cisco [26] 24 RADIUS: Cisco AVpair [1] 18 "release-source=1" RADIUS: Vendor, Cisco [26] 29 RADIUS: h323-voice-quality [31] 23 "h323-voice-quality=-1" RADIUS: Vendor, Cisco [26] 57 RADIUS: Cisco AVpair [1] 51 "alert-timepoint=*16:22:31.030 UTC Thu Feb 13 2003" RADIUS: Vendor, Cisco [26] 39 RADIUS: Cisco AVpair [1] 33 "remote-media-address=10.0.0.110" RADIUS: Vendor, Cisco [26] 44 RADIUS: Cisco AVpair [1] 38 "gw-final-xlated-cdn=ton:0,npi:0,#:11" RADIUS: Vendor, Cisco [26] 44 RADIUS: Cisco AVpair [1] 38 "gw-final-xlated-cgn=ton:0,npi:1,#:22" RADIUS: User-Name [1] 4 "22" RADIUS: Acct-Status-Type [40] 6 Stop [2] RADIUS: Calling-Station-Id [31] 4 "22" RADIUS: Called-Station-Id [30] 4 "11" RADIUS: Service-Type [6] 6 Login [1] RADIUS: NAS-IP-Address [4] 6 10.6.43.101 RADIUS: Acct-Delay-Time [41] 6 0 RADIUS(00000019): Using existing nas_port 0 RADIUS(00000019):Config NAS IP: 0.0.0.0 RADIUS(00000019):sending RADIUS/ENCODE: Best Local IP-Address 1.6.43.101 for Radius-Server 10.6.10.203 RADIUS(00000019): Send Accounting-Request to 10.6.10.203:1646 id 21645/56,len766 RADIUS: authenticator 61 60 EB 92 29 5C DE B4 - CE 40 1C AB E3 A1 C8 F7 RADIUS: Acct-Session-Id [44] 10 "00000020" RADIUS: Vendor, Cisco [26] 57 RADIUS: h323-setup-time [25] 51 "h323-setup-time=*16:22:30.994 UTC Thu Feb 13 2003" RADIUS: Vendor, Cisco [26] 27 RADIUS: h323-gw-id [33] 21 "h323-gw-id=5400-GW." RADIUS: Vendor, Cisco [26] 56 RADIUS: Conf-Id [24] 50 "h323-conf-id=2F4ED2E3 3EA611D7 800E0002 B935C142" RADIUS: Vendor, Cisco [26] 31 RADIUS: h323-call-origin [26] 25 "h323-call-origin=answer" RADIUS: Vendor, Cisco [26] 32 RADIUS: h323-call-type [27] 26 "h323-call-type=Telephony" RADIUS: Vendor, Cisco [26] 65 RADIUS: Cisco AVpair [1] 59 "h323-incoming-conf-id=2F4ED2E3 3EA611D7 800E0002 B935C142" RADIUS: Vendor, Cisco [26] 30 RADIUS: Cisco AVpair [1] 24 "subscriber=RegularLine" RADIUS: Vendor, Cisco [26] 35 RADIUS: Cisco AVpair [1] 29 "gw-rxd-cdn=ton:0,npi:0,#:11" RADIUS: Vendor, Cisco [26] 32 RADIUS: Cisco AVpair [1] 26 "calling-party-category=9" RADIUS: Vendor, Cisco [26] 33 RADIUS: Cisco AVpair [1] 27 "transmission-medium-req=0" RADIUS: Vendor, Cisco [26] 59 RADIUS: h323-connect-time [28] 53 "h323-connect-time=*16:22:31.046 UTC Thu Feb 13 2003" RADIUS: Acct-Input-Octets [42] 6 81 RADIUS: Acct-Output-Octets [43] 6 2241 6 6 6 62 56 32 5 113 5 "h323-disconnect-time=*16:22:36.064 UTC
RADIUS: Acct-Input-Packets [47] RADIUS: Acct-Output-Packets [48] RADIUS: Acct-Session-Time [46] RADIUS: Vendor, Cisco [26] RADIUS: h323-disconnect-tim[29] Thu Feb 13 2003" 04:55:13: RADIUS: Vendor, Cisco [26]
577
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:13: 04:55:14: 04:55:14: 04:55:14: 04:55:14: 04:55:14: 04:55:14: 04:55:15: 04:55:15: 04:55:15: 04:55:15: 04:55:15: 04:55:15: 04:55:15: 04:55:15: 04:55:15: 04:55:15: 04:55:15: 04:55:15: 04:55:15: 04:55:15: 04:55:15: 04:55:15: 04:55:15: 04:55:15: 04:55:15: 04:55:15:
RADIUS: h323-disconnect-cau[30] 26 "h323-disconnect-cause=10" RADIUS: Vendor, Cisco [26] 35 RADIUS: Cisco AVpair [1] 29 "h323-ivr-out=Tariff:Unknown" RADIUS: Vendor, Cisco [26] 24 RADIUS: Cisco AVpair [1] 18 "release-source=1" RADIUS: Vendor, Cisco [26] 28 RADIUS: h323-voice-quality [31] 22 "h323-voice-quality=0" RADIUS: User-Name [1] 4 "22" RADIUS: Acct-Status-Type [40] 6 Stop [2] RADIUS: NAS-Port-Type [61] 6 Async [0] RADIUS: Vendor, Cisco [26] 20 RADIUS: cisco-nas-port [2] 14 "ISDN 6/0:D:1" RADIUS: NAS-Port [5] 6 0 RADIUS: Calling-Station-Id [31] 4 "22" RADIUS: Called-Station-Id [30] 4 "11" RADIUS: Service-Type [6] 6 Login [1] RADIUS: NAS-IP-Addres [4] 6 10.6.43.101 RADIUS: Acct-Delay-Time [41] 6 0 RADIUS: no sg in radius-timers: ctx 0x65BAB070 sg 0x0000 RADIUS: Retransmit to (10.6.10.203:1645,1646) for id 21645/55 RADIUS: acct-delay-time for 40553934 (at 40553CA3) now 1 RADIUS: no sg in radius-timers: ctx 0x65BA8284 sg 0x0000 RADIUS: Retransmit to (10.6.10.203:1645,1646) for id 21645/56 RADIUS: acct-delay-time for 405546C4 (at 405549BC) now 1 RADIUS: no sg in radius-timers: ctx 0x65BAB070 sg 0x0000 RADIUS: Fail-over to (10.8.159.105:1645,1645) for id 21645/57 RADIUS: acct-delay-time for 40553934 (at 40553CA3) now 2 RADIUS/ENCODE: Best Local IP-Address 10.6.43.101 for Radius-Server 10.8.159.105 RADIUS: no sg in radius-timers: ctx 0x65BA8284 sg 0x0000 RADIUS: Fail-over to (10.8.159.105:1645,1645) for id 21645/58 RADIUS: acct-delay-time for 405546C4 (at 405549BC) now 2 RADIUS/ENCODE: Best Local IP-Address 10.6.43.101 for Radius-Server 10.8.159.105 RADIUS: Received from id 21645/59 10.8.159.105:1645, Accounting-response, len 20 RADIUS: authenticator B1 C4 5E FC DB FA 74 A4 - 05 E2 34 52 1A 11 26 06 vstats_acct_rsp_handler: methodlist=h323, rsp_type=0x4 acct_rsp_status=1 callid= 26, incoming=0, leg=2 vstats_acct_rsp_handler: increment since-reset counter vstats_acct_rsp_handler: increment interval counter RADIUS: Received from id 21645/60 10.8.159.105:1645, Accounting-response, len 20 RADIUS: authenticator 0E 70 74 2F E5 D8 EE 98 - B9 C0 DA 66 74 ED 84 77 vstats_acct_rsp_handler: methodlist=h323, rsp_type=0x4 acct_rsp_status=1 callid= 25, incoming=1, leg=1 vstats_acct_rsp_handler: increment since-reset counter vstats_acct_rsp_handler: increment interval counter
Private Network-Network Interface (PNNI) references ITU-T standard Q.2931 for the information element (IE) causes. PNNI R15 6.3.6.3 contains the crankback causes. ITU-T standard Q.2931 references ITU-T standard Q.2610. ITU-T standard Q.2610 lists a few cause codes and references ITU-T standard Q.850. ITU-T standard Q.850 lists the bulk of the cause codes.
578
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
For specific information on the call disconnection cause values, see the Cisco IOS Voice Troubleshooting and Monitoring Guide.
Prerequisites
CSR configurations must be enabled before you can examine the voice calls that are made through the gateway.
Restrictions
Statistics of non-DID calls are not consistent with those of the underlying ISDN module.
SUMMARY STEPS
1. 2.
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
Displays all aggregation-level statistics since the last system reset or reboot.
Example:
Router# show voice statistics csr since-reset aggregation-level all
Example
The following sample output shows cause-code statistics since the last reset for all aggregation levels.
Router# show voice statistics csr since-reset aggregation-level all Client Type: VCSR Start Time: 1993-03-01T00:03:15Z
record_type=gw,trunk_group_id=,voice_port_id=,in_call=26,in_ans=16,in_fail=10,out_call=26, out_ans=16,out_fail=10,in_szre_d=387,out_szre_d=380,in_conn_d=330,out_conn_d=323, orig_disconn=0,in_ans_abnorm=0,out_ans_abnorm=0,in_mcd=0,out_mcd=0,in_pdd=2340, out_pdd=12340,in_setup_delay=2340,out_setup_delay=3340,lost_pkt=0,latency=0,jitter=0, in_disc_cc_16=16,in_disc_cc_18=2,in_disc_cc_19=3,in_disc_cc_34=5,out_disc_cc_16=16, out_disc_cc_18=2,out_disc_cc_19=3,out_disc_cc_34=5 ! record_type=ip,trunk_group_id=,voice_port_id=,in_call=26,in_ans=16,in_fail=10,out_call=0, out_ans=0,out_fail=0,in_szre_d=387,out_szre_d=0,in_conn_d=330,out_conn_d=0,orig_disconn=0, in_ans_abnorm=0,out_ans_abnorm=0,in_mcd=0,out_mcd=0,in_pdd=2340,out_pdd=0, in_setup_delay=2340,out_setup_delay=0,lost_pkt=20,latency=15,jitter=10,in_disc_cc_16=16, in_disc_cc_18=2,in_disc_cc_19=3,in_disc_cc_34=5,out_disc_cc_16=3 !
Table 55 shows two types of cause codes listed in the output above.
579
Voice Performance Statistics on Cisco Gateways Configuring Voice Performance Statistics on Cisco Gateways
Table 55
Significant Fields of the show voice statistics csr since-reset aggregation-level all Command
Field
in_disc_cc_16=16
Description Count of incoming calls that are disconnected with a specific cause code number. In this example, the value 16 indicates normal call clearing Count of outgoing calls that are disconnected with a specific cause code number.
out_disc_cc_16=3
Lost packet value: the number of calls losing more than the configured number of packets. The default lost packet threshold is 1000 milliseconds. Packet latency value: the number of calls with voice packets encountering more than the configured amount of latency. The default packet latency threshold is 250 milliseconds. Packet jitter value: the number of calls with voice packets encountering more than the configured amount of jitter. The default packet jitter threshold is 250 milliseconds.
Before you can determine that any voice call with IP voice packets is deviating from the desired level of quality, you must configure the threshold values of lost packets, latency, and jitter. See the following sections:
Configuring the Minimum Call Duration and Signaling Thresholds, page 548 Displaying Memory Usage, page 571
Restrictions
Call statistics for MGCP calls are not guaranteed to be correct and accurate. In addition, statistics of non-DID ISDN calls are not consistent with those of the underlying ISDN module.
SUMMARY STEPS
1. 2.
580
Voice Performance Statistics on Cisco Gateways Configuration Examples for Voice Performance Statistics on Cisco Gateways
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
Displays the voice statistics of the voice calls made through the gateway.
Example:
Router# show voice statistics csr since-reset aggregation-level all
Example
The following sample output displays lost packet, latency, and jitter QoS information:
Router# show voice statistics csr since-reset aggregation-level all Client Type: VCSR Start Time: 1993-03-01T00:03:15Z
record_type=gw,trunk_group_id=,voice_port_id=,in_call=26,in_ans=16,in_fail=10,out_call=26, out_ans=16,out_fail=10,in_szre_d=387,out_szre_d=380,in_conn_d=330,out_conn_d=323, orig_disconn=0,in_ans_abnorm=0,out_ans_abnorm=0,in_mcd=0,out_mcd=0,in_pdd=2340, out_pdd=12340,in_setup_delay=2340,out_setup_delay=3340,lost_pkt=10,latency=3,jitter=5, in_disc_cc_16=16,in_disc_cc_18=2,in_disc_cc_19=3,in_disc_cc_34=5,out_disc_cc_16=16, out_disc_cc_18=2,out_disc_cc_19=3,out_disc_cc_34=5 ! record_type=ip,trunk_group_id=,voice_port_id=,in_call=26,in_ans=16,in_fail=10,out_call=0, out_ans=0,out_fail=0,in_szre_d=387,out_szre_d=0,in_conn_d=330,out_conn_d=0,orig_disconn=0, in_ans_abnorm=0,out_ans_abnorm=0,in_mcd=0,out_mcd=0,in_pdd=2340,out_pdd=0, in_setup_delay=2340,out_setup_delay=0,lost_pkt=10,latency=3,jitter=5,in_disc_cc_16=16, in_disc_cc_18=2,in_disc_cc_19=3,in_disc_cc_34=5,out_disc_cc_16=0 !
User-Specific Configurations for Call Statistic Collection: Example, page 582 Manually Clearing Statistics: Example, page 582 Collection of Aggregation-Level Statistics: Example, page 583 Memory Usage: Example, page 584 Collection of Statistics Since System Reset: Examples, page 584 Designated Server Group: Example, page 587 Location of the FTP Server: Example, page 587 Maximum File Size for the Syslog Server: Example, page 587
581
Voice Performance Statistics on Cisco Gateways Configuration Examples for Voice Performance Statistics on Cisco Gateways
Note
The type of statistics is not shown in a running configuration because the voice statistics type csr command activates only the collection of statistics. If you do not specify a type, both signaling and accounting statistics are collected.
The following example verifies the clearing by showing that all of the parameters have been set to zero:
Router# show voice statistics csr since-reset all Client Type: VCSR Start Time: 2002-04-25T01:48:12Z
record_type=gw,trunk_group_id=,voice_port_id=,in_call=0,in_ans=0,in_fail=0,out_c all=0,out_ans=0,out_fail=0,in_szre_d=0,out_szre_d=0,in_conn_d=0,out_conn_d=0, orig_disconn=0,in_ans_abnorm=0,out_ans_abnorm=0,in_mcd=0,out_mcd=0,in_pdd=0, out_pdd=0,in_setup_delay=0,out_setup_delay=0,lost_pkt=0,latency=0,jitter=0,in_disc_cc_16=0 out_disc_cc_16=0 ! record_type=ip,trunk_group_id=,voice_port_id=,in_call=0,in_ans=0,in_fail=0,out_c all=0,out_ans=0,out_fail=0,in_szre_d=0,out_szre_d=0,in_conn_d=0,out_conn_d=0, orig_disconn=0,in_ans_abnorm=0,out_ans_abnorm=0,in_mcd=0,out_mcd=0,in_pdd=0,out_pdd=0, in_setup_delay=0,out_setup_delay=0,lost_pkt=0,latency=0,jitter=0,in_disc_cc_16=0, out_disc_cc_16=0 ! record_type=pstn,trunk_group_id=,voice_port_id=,in_call=0,in_ans=0,in_fail=0,out_call=0, out_ans=0,out_fail=0,in_szre_d=0,out_szre_d=0,in_conn_d=0,out_conn_d=0,orig_disconn=0, in_ans_abnorm=0,out_ans_abnorm=0,in_mcd=0,out_mcd=0,in_pdd=0,out_pdd=0,in_setup_delay=0, out_setup_delay=0,in_disc_cc_16=0,out_disc_cc_16=0 ! record_type=vp,trunk_group_id=,voice_port_id=4/0/0,in_call=0,in_ans=0,in_fail=0, out_call=0,out_ans=0,out_fail=0,in_szre_d=0,out_szre_d=0,in_conn_d=0,out_conn_d=0, orig_disconn=0,in_ans_abnorm=0,out_ans_abnorm=0,in_mcd=0,out_mcd=0,in_pdd=0,
582
Voice Performance Statistics on Cisco Gateways Configuration Examples for Voice Performance Statistics on Cisco Gateways
out_pdd=0,in_setup_delay=0,out_setup_delay=0,in_disc_cc_16=0,out_disc_cc_16=0 ! Client Type: Voice ACCT Stats Start Time: 2002-04-25T01:48:04Z End Time: 2002-04-25T01:49:30Z methodlist=h323-1,acc_pass_criteria=0,pstn_in_pass=0,pstn_in_fail=0,pstn_out_pass=0, pstn_out_fail=0,ip_in_pass=0,ip_in_fail=0,ip_out_pass=0,ip_out_fail=0
The following example shows the intervals at which statistics were collected:
Router# show voice statistics interval-tag Current Time: 2002-04-25T01:52:11Z INTERVAL-TAG ============== 10 11 12 13 14 15 16 17 18 START TIME ====================== 2002-04-25T01:10:00Z 2002-04-25T01:15:00Z 2002-04-25T01:20:00Z 2002-04-25T01:25:00Z 2002-04-25T01:30:00Z 2002-04-25T01:35:00Z 2002-04-25T01:40:00Z 2002-04-25T01:45:00Z 2002-04-25T01:50:00Z END TIME ====================== 2002-04-25T01:15:00Z 2002-04-25T01:20:00Z 2002-04-25T01:25:00Z 2002-04-25T01:30:00Z 2002-04-25T01:35:00Z 2002-04-25T01:40:00Z 2002-04-25T01:45:00Z 2002-04-25T01:50:00Z 2002-04-25T01:52:11Z
583
Voice Performance Statistics on Cisco Gateways Configuration Examples for Voice Performance Statistics on Cisco Gateways
Example of the show voice statistics csr since-reset accounting all Command, page 584 Example of the show voice statistics csr since-reset aggregation-level all Command, page 585 Example of the show voice statistics csr since-reset aggregation-level gateway Command, page 585 Example of the show voice statistics csr since-reset aggregation-level ip Command, page 585 Example of the show voice statistics csr since-reset aggregation-level pstn Command, page 586 Example of the show voice statistics csr since-reset aggregation-level trunk-group all Command, page 586 Example of the show voice statistics csr since-reset aggregation-level voice-port all Command, page 586
Example of the show voice statistics csr since-reset accounting all Command
584
Voice Performance Statistics on Cisco Gateways Configuration Examples for Voice Performance Statistics on Cisco Gateways
Example of the show voice statistics csr since-reset aggregation-level all Command
record_type=gw,trunk_group_id=1,voice_port_id=2,in_call=120,in_ans=120,in_fail=0 out_call=10,out_ans=10,out_fail=0,in_szre_d=0,out_szre_d=0,in_conn_d=0,out_conn_d=0, orig_disconn=0,in_ans_abnorm=0,out_ans_abnorm=0,in_mcd=0,out_mcd=0,in_pdd=0,out_pdd=0, in_setup_delay=0,out_setup_delay=0,lost_pkt=0,latency=0,jitter=0,in_disc_cc_16=0, out_disc_cc_16=0 ! record_type=ip,trunk_group_id=2,voice_port_id=3,in_call=120,in_ans=120,in_fail=0 out_call=10,out_ans=10,out_fail=0,in_szre_d=0,out_szre_d=0,in_conn_d=0,out_conn_d=0, orig_disconn=0,in_ans_abnorm=0,out_ans_abnorm=0,in_mcd=0,out_mcd=0,in_pdd=0,out_pdd=0, in_setup_delay=0,out_setup_delay=0,lost_pkt=0,latency=0,jitter=0,in_disc_cc_16=0, out_disc_cc_16=0 ! record_type=pstn,trunk_group_id=5,voice_port_id=2,in_call=150,in_ans=100,in_fail=50, out_call=0,out_ans=0,out_fail=0,in_szre_d=0,out_szre_d=0,in_conn_d=0,out_conn_d=0, orig_disconn=0,in_ans_abnorm=0,out_ans_abnorm=0,in_mcd=0,out_mcd=0,in_pdd=0,out_pdd=0, in_setup_delay=0,out_setup_delay=0,in_disc_cc_16=0,out_disc_cc_16=0
Example of the show voice statistics csr since-reset aggregation-level gateway Command
585
Voice Performance Statistics on Cisco Gateways Configuration Examples for Voice Performance Statistics on Cisco Gateways
Example of the show voice statistics csr since-reset aggregation-level pstn Command
Example of the show voice statistics csr since-reset aggregation-level trunk-group all Command
record_type=pstn,trunk_group_id=15,voice_port_id=3,in_call=20,in_ans=20,in_fail=0, out_call=10,out_ans=10,out_fail=0,in_szre_d=0,out_szre_d=0,in_conn_d=0,out_conn_d=0, orig_disconn=0,in_ans_abnorm=0,out_ans_abnorm=0,in_mcd=0,out_mcd=0,in_pdd=0,out_pdd=0, in_setup_delay=0,out_setup_delay=0,in_disc_cc_16=0,out_disc_cc_16=0 ! record_type=pstn,trunk_group_id=16,voice_port_id=4,in_call=20,in_ans=20,in_fail=0, out_call=10,out_ans=10,out_fail=0,in_szre_d=0,out_szre_d=0,in_conn_d=0,out_conn_d=0, orig_disconn=0,in_ans_abnorm=0,out_ans_abnorm=0,in_mcd=0,out_mcd=0,in_pdd=0,out_pdd=0, in_setup_delay=0,out_setup_delay=0,in_disc_cc_16=0,out_disc_cc_16=0 ! record_type=pstn,trunk_group_id=17,voice_port_id=5,in_call=20,in_ans=20,in_fail=0, out_call=10,out_ans=10,out_fail=0,in_szre_d=0,out_szre_d=0,in_conn_d=0,out_conn_d=0, orig_disconn=0,in_ans_abnorm=0,out_ans_abnorm=0,in_mcd=0,out_mcd=0,in_pdd=0,out_pdd=0, in_setup_delay=0,out_setup_delay=0,in_disc_cc_16=0,out_disc_cc_16=0 ! record_type=pstn,trunk_group_id=18,voice_port_id=6,in_call=20,in_ans=20,in_fail=0, out_call=10,out_ans=10,out_fail=0,in_szre_d=0,out_szre_d=0,in_conn_d=0,out_conn_d=0, orig_disconn=0,in_ans_abnorm=0,out_ans_abnorm=0,in_mcd=0,out_mcd=0,in_pdd=0,out_pdd=0, in_setup_delay=0,out_setup_delay=0,in_disc_cc_16=0,out_disc_cc_16=0
Example of the show voice statistics csr since-reset aggregation-level voice-port all Command
586
Voice Performance Statistics on Cisco Gateways Configuration Examples for Voice Performance Statistics on Cisco Gateways
587
Voice Performance Statistics on Cisco Gateways Configuration Examples for Voice Performance Statistics on Cisco Gateways
588
Details of Cause Codes and Debug Values for VoIP, page 589 Internal Cause Codes for SIP and H.323, page 592
Additional cause code information can be found in the Cisco IOS Debug Command Reference.
589
590
Tone Types
Tone Types CC_TONE_RINGBACK 0x1 CC_TONE_FAX 0x2 CC_TONE_BUSY 0x4 CC_TONE_DIALTONE 0x8 CC_TONE_OOS 0x10 CC_TONE_ADDR_ACK 0x20 CC_TONE_DISCONNECT 0x40 CC_TONE_OFF_HOOK_NOTICE 0x80 CC_TONE_OFF_HOOK_ALERT 0x100 CC_TONE_CUSTOM 0x200 CC_TONE_NULL 0x0 Meaning Ring tone Fax tone Busy tone Dial tone Out of service tone Address acknowledgement tone Disconnect tone Tone indicating that the phone is off-hook A more urgent version of CC_TONE_OFF_HOOK_NOTICE Custom toneused when you are specifying a custom tone Null tone
591
Q.850 Release Cause Description Indicates that the destination requested by the calling user cannot be reached because the number is unassigned.
The number is not in the routing table, or it has no path across the ISDN network. 2 The wrong transit network code was dialed. The transit network does not serve this equipment. The transit network does not exist. 3
Indicates that the gateway is asked to route the call through an unrecognized intermediate network.
CC_CAUSE_NO_ROUTE Indicates that the called party cannot be reached because the network that the call has been routed through does not serve the desired destination.
Domain Name System (DNS) resolution failure Invalid session target in configuration 4
Send special Typical scenarios include: information tone The dialed number has a special condition applied to it. Misdialed trunk prefix (national use) Channel unacceptable Call awarded and being delivered in an established channel Typical scenarios include:
Indicates that the called party cannot be reached for reasons that are of a long-term nature and that the special information tone should be returned to the calling party. Indicates the erroneous inclusion of a trunk prefix in a called party number. Indicates that the channel most recently identified is not acceptable to the sending entity for use in this call. Indicates that the user has been awarded the incoming call and that the incoming call is being connected to a channel already established to that user for similar calls.
The wrong trunk prefix was dialed. 6 Failed channel on the network. 7 Successful call.
592
Table 56
H.323 and SIP Standard Category With Corresponding Q.850 Cause Code Information
Standard Category Preemption Preemption. Circuit reserved for reuse Normal call clearing
Q.850 Release Cause Description Indicates the call is being pre-empted. Indicates the call is being pre-empted and the circuit is reserved for reuse by pre-empting exchange. Indicates that the call is being cleared because one of the users involved with the call has requested that the call be cleared. Indicates that the called party is unable to accept another call because the user busy condition has been encountered. This cause value can be generated by the called user or by the network. In the case of user determined user busy, it is noted that the user equipment is compatible with the call. Used when the called party does not respond to a call establishment message with either an alerting or connect indication within the time allotted. The number that is being dialed has an active D-channel, but the far end chooses not to answer. Used when the called party has been alerted but does not respond with a connect indication within the time allotted. This cause is not generated by Q.931 procedures but can be generated by internal network timers. Used when a mobile station has logged off, radio contact is not obtained with a mobile station, or if a personal telecommunication user is temporarily not addressable at any user-network interface.
User busy
17
No user responding
18
No answer from Typical scenarios include: the user (user The user is not answering alerted) the telephone.
19
Subscriber absent
20
593
Table 56
H.323 and SIP Standard Category With Corresponding Q.850 Cause Code Information
Q.850 Release Cause Description Indicates that the equipment sending this cause code does not wish to accept this call, although it could have accepted the call because the equipment sending the cause is neither busy nor incompatible. Might also be generated by the network indicating that the call was cleared because of a supplementary service constraint. The diagnostic field might contain additional information about the supplementary service and reason for rejection.
Subscriber has a service constraint that does not accept this call.
Number changed
22
Returned to a calling party when the called number indicated by the calling party is no longer assigned. The new called party number might be optionally included in this diagnostic field. Used by a general ISUP protocol mechanism that decides that the call should be sent to a different called number. Indicates that the destination indicated by the user cannot be reached because an intermediate exchange has released the call due to reaching a limit in executing the hop counter procedure. Indicates that the user has not been awarded the incoming call. CC_CAUSE_DESTINATION_OUT_ OF_ORDER Indicates that the destination indicated by the user cannot be reached because the destinations interface is not functioning correctly. The signaling message cannot be delivered to the remote party.
23
Call is forwarded
25
Network is overloaded
26 27
Called number failure Transmission Control Protocol (TCP) socket connection failure Problem sending an H.323 SETUP Problem sending a Session Initiation Protocol (SIP) INVITE Send or receive error occurs on connected socket
594
Table 56
H.323 and SIP Standard Category With Corresponding Q.850 Cause Code Information
Q.850 Release Cause Description Indicates that the called party cannot be reached because the called party number is not in a valid format or is not complete. Indicates that a supplementary service requested by the user cannot be provided by the network. Included in the STATUS message when the reason for generating the STATUS message was the prior receipt of a STATUS ENQUIRY message. Reports a normal event only when no other cause in the normal class applies. Indicates that there is no appropriate circuit or channel presently available to handle the call. Indicates that the network is not functioning correctly and that the condition is likely to last for an extended period. Included in a STATUS message to indicate that a permanently established frame mode connection is out of service. Included in a STATUS message to indicate that a permanently established frame mode connection is operational and capable of carrying user information. Indicates that the network is not functioning correctly and that the condition is likely to be resolved quickly. Indicates that the switching equipment generating this cause is experiencing high traffic. Indicates that the network could not deliver access information to the remote user as requested.
the caller is calling out using a network type number (enterprise) rather instead of Unknown or National. 29 A network service is not functioning. 30 A STATUS message is returned. 31 34
Response to STATUS ENQUIRY Normal, unspecified No circuit/channel available Network out of order
Normal operation No B-channels are available to make the selected call. 38 Network failure.
Typical scenarios include: Permanent frame mode Equipment or section connection is out failure. of service Permanent frame mode connection is operational Temporary failure Switching equipment congestion Access information discarded Typical scenarios include:
39
40
Normal operation.
41
Network failure. 42
High traffic 43
Usually reported when the far-end ISDN switch removes some piece of information before tandem-switching a call.
595
Table 56
H.323 and SIP Standard Category With Corresponding Q.850 Cause Code Information
Q.850 Release Cause Description Returned when the circuit or channel indicated by the requested entity cannot be provided by the other side of the interface.
Occurs during glare condition when both sides are selected top-down or bottom-up. Change the Allocation Direction so that one end is top-down and the other is bottom-up. 46 Caller is busy and the priority level of active call is equal or higher than the incoming call. 47
Indicates that there are no pre-emptable circuits or that the called user is busy with a call of equal or higher pre-emptable level. CC_CAUSE_NO_RESOURCE Indicates a resource unavailable event.
Internal resource Typical scenarios include: allocation Out of memory failure Internal access to the TCP socket is unavailable QoS error Typical scenarios include:
49
Quality of service (QoS) error 50 The caller is trying to use a service that is not permitted. 53 Subscriber configuration contains this limitation. 55
Requested facility not subscribed Outgoing calls barred within Closed User Group (CUG) Incoming calls barred within Closed User Group (CUG) Bearer capability not authorized Bearer capability not presently available
Indicates that the user has requested a supplementary service that the user is not authorized to use. Indicates that although the calling party is a member of a CUG for the outgoing CUG call, outgoing calls are not allowed for this member of the CUG. Indicates that although the called party is a member of a CUG for the incoming CUG call, incoming calls are not allowed for this member of the CUG. Indicates that the user has requested a bearer capability which is implemented on the equipment but the user is not authorized to use. Indicates that the user has requested a bearer capability which is implemented by the equipment and is currently unavailable.
A call is placed with a bearer capacity that the service provider does not have the capacity to supply.
596
Table 56
H.323 and SIP Standard Category With Corresponding Q.850 Cause Code Information
Standard Category
Q.850 Release Cause Description Indicates that there is an inconsistency in the designated outgoing access information and subscriber class.
Inconsistency in Typical scenarios include: designated Network error. outgoing access information and subscriber class Service or option not available, unspecified Media negotiation failure Typical scenarios include:
63
Reports a service or option not available event only when no other cause in the service or option not available class applies. CC_CAUSE_BEARER_CAPABILITY_ NOT_IMPLEMENTED Indicates that the equipment sending this cause does not support the bearer capability requested.
65
No codec match occurred. H.323 or H.245 problem leading to failure in media negotiation 66
Channel type not Typical scenarios include: implemented Channel type match not found. Requested facility not implemented Typical scenarios include:
Indicates that the equipment sending this cause does not support the channel type requested. Indicates that the equipment sending this cause does not support the requested supplementary service. Indicates that the calling party has requested an unrestricted bearer service but that the equipment sending this cause only supports the restricted version of the requested bearer capacity. Reports a service or option not implemented event only when no other cause in the service or option not implemented class applies. Indicates that the equipment sending the cause has received a message with a call reference which is not currently in use on the user-network interface. Indicates a call attempt on a channel that is not configured. Indicates a call resume has been attempted with a call identity which differs from that in use for any presently suspended calls.
69
Only restricted Typical scenarios include: digital Routing error. information bearer capability is available (National use) Service or option not implemented, unspecified Invalid call reference value Typical scenarios include:
79
81
The far-end switch did not recognize the call reference for a message sent by the gateway. 82
Identified Typical scenarios include: channel does not Fractional PRI error. exist A suspended call Typical scenarios include: exists, but this Call ID mismatch call identity does not
83
597
Table 56
H.323 and SIP Standard Category With Corresponding Q.850 Cause Code Information
Q.850 Release Cause Description Indicates that the network has received a call suspended request containing a call identity which is already in use for a suspended call. Indicates that the network has received a call resume request containing a call identity information element which does not indicate any suspended call. Indicates that the network has received a call identity information element indicating a suspended call that has in the meantime been cleared wile suspended. Indicates that the called user for the incoming CUG call is not a member of the specified CUG. Indicates that the equipment sending this cause has received a request to establish a call which has compatibility attributes which cannot be accommodated.
Equipment error.
No call suspended
85
Equipment error.
Call having the Typical scenarios include: 86 requested call Network timeout identity has been Call cleared by remote user. cleared User is not a member of Closed User Group (CUG) Incompatible destination Typical scenarios include:
87
88
Number dialed is not capable of this type of call. Caller is calling a restricted line in unrestricted mode. Caller is calling a POTS phone using unrestricted mode. 90 Configuration or dialing error. 91 Network error. Identification mismatch 95
Nonexistent Closed User Group (CUG) Invalid transit network selection (National use) Invalid message received error Mandatory IE missing error
Indicates that the specified CUG does not exist. Indicates that a transit network identification was received which is of an incorrect format. CC_CAUSE_INVALID_MESSAGE Indicates an invalid message event.
An invalid message was received 96 Mandatory Contact field missing in SIP message. Session Description Protocol (SDP) body is missing.
CC_CAUSE_MANDATORY_IE_ MISSING Indicates that the equipment sending this cause code has received a message that is missing an information element (IE). This IE must be present in the message before the message can be processed.
598
Table 56
H.323 and SIP Standard Category With Corresponding Q.850 Cause Code Information
Standard Category
Q.850 Release Cause Description Indicates that the equipment sending this cause has received a message which is missing an information element that must be present in the message before the message can be processed. Indicates that the equipment sending this cause has received a message such that the procedures do not indicate that this is a permissible message to receive while in this call state. Indicates that the equipment sending this cause has received a message which includes information elements or parameters not recognized because the information element or parameter names are not defined or are defined but not implemented by the equipment. CC_CAUSE_INVALID_IE_ CONTENTS Indicates that the equipment sending this cause code has received an IE that it has implemented. However, the equipment sending this cause code has not implemented one or more of the specific fields. CC_CAUSE_MESSAGE_IN_ INCOMP_CALL_STATE Indicates that a message has been received that is incompatible with the call state. CC_CAUSE_RECOVERY_ON_ TIMER_EXPIRY Indicates that a procedure has been initiated by the expiration of a timer in association with error handling procedures.
Message type Typical scenarios include: 97 nonexistent or Message type information is not implemented missing.
Typical scenarios include: Message not compatible with ISDN protocol mismatch call state or ISDN state machine message type violation nonexistent or not implemented An information Typical scenarios include: element or Element mismatch parameter does not exist or is not implemented
98
99
100
Message in Typical scenarios include: 101 invalid call state An unexpected message was received that is incompatible with the call state Call setup timeout failure Typical scenarios include:
102
No H.323 call proceeding No H.323 alerting or connect message received from the terminating gateway Invite expires timer reached maximum number of retries allowed
599
Table 56
H.323 and SIP Standard Category With Corresponding Q.850 Cause Code Information
Standard Category Parameter nonexistent or not implemented passed on (National use) Message with unrecognized parameter discarded Protocol error, unspecified Internal error
Q.850 Release Cause Description Indicates that the equipment sending this cause has received a message which includes parameters not recognized because the parameters are not defined or are defined but not implemented on the equipment. Indicates that the equipment sending this cause has discarded a received message which includes a parameter that is not recognized. Reports a protocol error event only when no other cause in the protocol error class applies. CC_CAUSE_INTERWORKING Indicates that there has been interworking with a network that does not provide causes for actions it takes. Precise cause cannot be ascertained.
Configuration mismatch.
110
Unrecognized parameter.
111
600
I N D EX
Symbols
# prompt
172
ANI
8 187 454
Numerics
16-byte GUID
18 179 225
531
verifying functionality
8 333, 338
456
A
AAA
358, 469 557
358, 469
AAA accounting, statistics accessing privileged exec commands accounting statistics ACF
359 301 535
172
B
BABT telephones bad SIP messages
188 388
admission confirmed admission rejection admission request aggregation levels alternate endpoint alternate gatekeeper analyzers network
176, 178 353
359 354
535
bandwidth confirmation
353
354
B channel
IN-601
Index
BERT
176, 177
BERT/BLERT. <Emphasis>See bit/block error rate testers billing application call leg billing applications bit error rate testers bit rate error testers bitswapping tool BLERT
176, 177 177 176 179 469 177
called number string pattern called-number vofr command callentry ID caller ID call flow fax SIP
503 367 194 194 18 20
block error rate testers block rate error testers boxes breakout fox
176, 177 176, 177
53, 71
BPX/IGX firmware compatibility tool breakout adapter breakout boxes BRJ BRQ
353, 355 353, 355 297
call legs from the perspective of the originating router (figure) 6 call path through the router call routing
352, 388 352 8 6 55, 79 14
H.323 gatekeeper
C
cables fiber-optic testing equipment cable testers CAC
401 359 401 397 176, 177 232 177
call-specific conditions, configuration cannot pass DTMF digits cas-custom command cause codes CCAPI CGMA
589 xxv 271 333
central office
431, 454 431 14, 15, 17 532
269, 415
IN-602
Index
data transfer phase call flow fax setup phase call flow overview
505 505
506
clear mgcp src-stats command clear mgcp statistics command clipped speech
507 296 266 293 260
402 397
Cisco fax relay data transfer call flow (figure) Cisco fax relay fax setup call flow (figure) Cisco Feature Navigator
xxix 506
clock source
260
Cisco IOS Release 12.2(11)T features Cisco IOS Release 12.3(4)T features Cisco IOS Release 12.3(8)T features Cisco IOS Release 12.4(4)T features
452
coder delay
5,
Cisco IOS VoiceXML application components (figure) Cisco IP SoftPhone Cisco IP softphone
339 341
20
Cisco quality of service device manager Cisco service assurance agent Cisco SIP gateway Cisco SIP IP phone inbound calls outbound calls
370 370 370 367 388 371, 372 531
enable
no debug
no logging console
171, 173, 174
router diagnostic
171, 172, 530
show buffers
531 250
CiscoWorks voice health monitor CLASS DSP reason codes (table) CLASS EC FRMR
EC detected FRMR from peer reason code (table) CLASS EC LCL EC condition, locally detected reason code (table) CLASS EC LD
show interfaces show process cpu show stacks show version trace
171, 174
show running-config
172, 529
error correction (EC) detected link disconnect (LD) from peer reason code (table) 256 CLASS HOST requested by host reason code (table) CLASS OTHER code summary (table)
258 247
172, 529
172, 529
IN-603
Index
command syntax conventions configuration voice ports troubleshooting tips congestion connections voice, verifying console terminals disabling logging continuity test
251 356 262 173 422 296 273 236 xxiv 515
debug cdapi command debug commands SIP call filtering voice call filtering debug crm command debug error command
83
277
compand-type command
debug fax dmsp command debug fax fmsp command debug fax foip command debug fax mspi command debug fax mta command
35 35 35 35
359, 360
238 453
creating match lists for MGCP filtering conditions custom document generator for Cisco IOS CVM
530 266
debug http client error command debug ip rsvp detail command debug ip udp command
397 277 275 402 402 402 402
D
DB-15 connector (figure) D channel
272 403 403 403 403 264
debug isdn q931 command debug mgcp all command debug mgcp errors command
debug mgcp events command debug mgcp media command debug mgcp packets command debug mgcp parser command debug mgcp src command debug mrcp error command debug output
35 402
debug call fallback detail command debug call fallback probes command debug call rsvp-sync events command debug cas command debug ccsip command
271 496
debug call rsvp-sync func-trace command debug ccsip calls command debug ccsip error command debug ccsip events command
402
IN-604
Index
debug radius command debug rtr error command debug rtr trace command debug rtsp all command debug rtsp api command
469 403 403 36 36 36 36, 456, 457 36 36, 456, 457 36, 456, 457 272 368
debug voip profile fax relay application command debug voip profile fax relay command debug voip profile help command
36 36 22 22
22
debug voip profile fax relay signaling command debug voip profile modem command
debug rtsp client command debug rtsp error command debug rtsp pmh command debug rtsp socket command debug sigsm r2 command debug tgrm command debug tsp command
36 277
debug voip profile modem pass-through signaling command 23 debug voip profile modem relay signaling command debug voip profile voice application command debug voip profile voice command debug voip rawmsg command
36 501 501 36 25 25 24
debug voip profile voice signaling command debug voip settlement misc command debug voip tsp command debug voip vtsp command
26 36 26
debug voip application vxml command debug voip avlist command debug voip ccapi command
36 36
debug voip ccapi individual command debug voip ccapi inout command cause codes
589 590 36
debug voip vtsp individual command debug vpm all command debug vtsp all command debug vtsp dsp command debug vtsp error command debug vtsp event command debug vtsp port command debug vtsp rtp command
37 37 270 194
26
codec negotiation values debug voip dsm command debug voip dspapi command debug voip hpi command
36, 270, 271, 272, 320, 399, 516, 524 36, 320, 321, 399 36 36 36
36
36 36 36 36
debug vtsp send-nse command debug vtsp session command debug vtsp stats command
36 37 37
debug voip ivr callsetup command debug voip ivr digitcollect command debug voip ivr dynamic command debug voip ivr error command debug voip ivr script command debug voip ivr states command debug voip profile command
21 36
36
debug vtsp vofr subframe 3 command debug vtsp vofr subframe command debug vxml background command debug vxml command
453 453, 454 453 453
524 37
debug voip ivr tclcommands command debug voip profile fax command
36
buffering
21 297
IN-605
Index
handling jitter
297
297
DID support for Cisco 2600 and Cisco 3600 series routers (figure) 224
297
serialization
297
297
destination pattern
290
209 462
319 279
port modem startup-test command SPE back-to-back test SPE start-up test
243
173
test port modem back-to-back command dialed number identification service dial peer attributes matching
8 352
disconnect reason code hexadecimal values (table) disconnect reason types disconnect request distorted speech DNIS
8 179 358 295 259
246
H.323 gatekeeper
7 9
docgen
13
13
voice network matching dial peer matching dial-peer matching dial peers matching inbound dial peers outbound dial peers dial plan mapper
14 7 513
DSP crash dump analysis DSP message flow (figure) DSP resource manager DSPRM DSP state
267 15 309, 310 298 15 11
173
IN-606
Index
E
E&M (receive and transmit) signaling interfaces E&M cabling pins (figure) E&M interface
196, 197 199 201 183
301 301
301 296
echo-cancel enable command echo canceler coverage echo cancellations state echo-cancellation state echo return loss ECMA expression enable command
303 455 173 302 310 309
E&M interface supervision signal description (table) E&M interface types type I type II type III type IV type V
200 202 204 199 206 199 216 199 199
enabling debug for the set filtering conditions enabling MGCP call centric debug enabling trace levels
104 358 359 496 99
80
E&M signaling
E&M supervisory signaling troubleshooting (table) E&M trunk circuit side compatibility E&M type I
200 200 201 199
ERL
error.badfetch error.semantic
E&M type I 2-wire audio operation (figure) E&M type I 4-wire audio operation (figure) E&M type II
202
error.unsupported.format
error codes for subsystem 1 (CCAPI) (table) error codes for subsystem 2 (TCL IVR) (table)
E&M type II 2-wire audio operation (figure) E&M type II 4-wire audio operation (figure) E&M type III
204
error codes for subsystem 3 (application framework) (table) 124 error codes for subsystem 4 (default session application) (table) 126 error codes for subsystem 5 (H.323) (table) error codes for subsystem 7 (SIP) (table) error codes for subsystem 9 (VTSP) (table) error message decode error messages
179 127 133 140
E&M type III 2-wire audio operation (figure) E&M type III 4-wire audio operation (figure) E&M type III signal states (figure) E&M type II signal states (table) E&M type I signal states (table) E&M type V
206 205 202 200
205 206
E&M type V 2-wire audio operation (figure) E&M type V 4-wire audio operation (figure) E&M type V signal states (table) E1 R2 failure E1 R2 interface E1 R2 signaling echo
270 270 270 207
207 208
174 174
55, 84
IN-607
Index
explanation of fields in the show mgcp command (table) 406 explanation of fields in the show mgcp connection command (table) 408 explanation of fields in the show mgcp statistics command (table) 412
fax codec
516
F
fail over failure E1 R2
270 267 332 332 268 356
fax mode testing fax nsf command fax pass-through call flow overview fax relay overview features
505 504 504
framing loss
H.323 busy tone H.323 dial tone loss of frame loss of signal no audio
338
504
513
Cisco IOS Release 12.3(4)T Cisco IOS Release 12.3(8)T Cisco IOS Release 12.4(4)T
333 334
225
call legs from the perspective of the originating router 6 Cisco fax relay data transfer call flow Cisco fax relay fax setup call flow DB-15 connector
264 506 5, 452 507
slip seconds error count unrecognized voice port voice ports shutdown farming, SIP proxy server fax fax gateway fax analyzers fax call flow
503 503
DID support for Cisco 2600 and Cisco 3600 series routers 224 differences in gateway and gatekeeper accounting DSP message flow E&M cabling pins
523 201 200 201 203 112
E&M type I 2-wire audio operation E&M type I 4-wire audio operation E&M type II 2-wire audio operation
IN-608
Index
E&M type II 4-wire audio operation E&M type III 2-wire audio operation E&M type III 4-wire audio operation E&M type III signal states
205
184
173 354
E&M type V 2-wire audio operation E&M type V 4-wire audio operation
four-port analog FXS/DID voice interface card (figure) 225 four-port FXO card front panel (figure) four-wire telephone trunk interface
197 191 185
fax pass-through and fax upspeed call flow four-port FXO card front panel
191 185 190
four-port analog FXS/DID voice interface card four-port FXS/DID card front panel FXS and FXO signaling interfaces FXS signaling interface
184 316
frame-clock-select command
415
gateway between an H.323 terminal and an H.320 terminal 319 GUIDs and callentry IDs in a conference call H.323 call flow
317 508 185, 191 20
frame-relay fragment command framing format framing loss FTT message full GUID
18 38 266
416 416
high-density analog telephony network module IVR control of TCL scripts on an IP call leg MGCP call flow topology MGCP network model QSIG signaling rollover cable
277 265 392 393 458
430
FXO answer and disconnect supervision FXO answer supervision FXO disconnect failure
509 539 193 192 193
syslog and FTP servers and the CNS-PE T.37 store-and-forward fax topology two-port E&M card front panel two-port FXO card front panel two-port FXS card front panel
197 191 185 510
190
disconnect
FXS (foreign exchange station), signaling interfaces FXS and FXO signaling interfaces (figure) FXS idle voltage (table) FXS interface FXS ring failure
49 183 188 184 187 190
183
typical application using ISDN BRI NT/TE VICs or ISDN BVMs 273 filtering output SIP debugs
50, 69 83
IN-609
Index
184
338
G
gatekeeper bandwidth registration
353 348 69 359 316 358
332
gatekeeper in an H.323 network (figure) gatekeeper transaction message protocol gatekeeper update protocol gatekeeper zone bandwidth
353, 357 354
316
gateway between an H.323 terminal and an H.320 terminal (figure) 319 gateway command gateways protocol conversion GCFM
53, 84 84 319 50 358 532
507
gateway management
H.323 and SIP standard category with corresponding Q.850 cause code information (table) 592 H.323 call flow (figure) H.323 call routing H.323 endpoints
319 500 317
voice call debug filtering generic call filtering module generic call filter module GKTMP
358
334 508
52, 70 74
GKFM debug filter rules engine global unique identifier GRQ GUID
356, 357 18, 53, 84 20 18, 53, 84
339
234 301
H
H.225 call setup message (table) H.225 signaling H.245 signaling H.323
Cisco IOS Voice Troubleshooting and Monitoring Guide
I
317
ICMP. <Emphasis>See Internet Control Message Protocol idle line voltage IEC fields (table) IEC format
112 187 115
IN-610
Index
179
impedance command inactive call detection in-band ringback inbound dial peer script association inbound dial peers matching
8
336, 337
276
272 272
ISDN interfaces
272
274
inbound voice-network call leg inbound voice network dial-peer information request response information tags input gain input level
296 306, 307 438 436
IVR control of TCL scripts on an IP call leg (figure) IVR modlue names (table) IVR module dependent list IVR script debugging events loading
458 431 497 458 430 432 19 19
430
displaying information
interactive voice response internal error codes category codes configuration gatekeeper
111 146
113
J
174 178
Internet Control Message Protocol (ICMP) Internetworking Troubleshooting Handbook internetwork performance monitor interrupt request invitation process IPM
175 356 389 179 175
455 296
175
298 310
IPM. <Emphasis>See Internetwork Performance Monitor ip nat service skinny tcp port command IP RTP priority
417 341
L
lead acid battery stacks
210
IN-611
Index
LED problem leg setup status line coding line voltage link point listing
19
173
176, 177
401
endpoints VAD
308
391 397 96
mgcp call-agent command MGCP call centric debug configuration examples information restrictions
105 96 97 99
293, 299
match conditions
96
M
matching conditions
55, 84 8
97 98 393
matching inbound dial peers matching order, dial peer maximum bandwidth H.323 traffic
354 354 9
MGCP control of voice application scripts (figure) mgcp debug-header command MGCP network model (figure)
391 391 100 392
458
media gateway controllers media inactive call detection media pause command media servers troubleshooting media status media streams message capture messages error port unreachable time exceeded system error
174 174 467 55 235 456 431
243 272
modem-mgmt csm debug-rbs command modem startup-test command module-dependent list MRCP client description
455 18 243 99
18
IN-612
Index
8 4
177
OTDR. <Emphasis>See optical time domain reflectometers outbound dial peers, matching outbound POTS call leg outbound POTS dial-peer
7 7 6 6 11
N
NET3
272 178 176, 178 341 516
network-clock-participate command network-clock-select command network configuration soft key network management tools network monitoring network monitors no busy tone
333 173 531 178 388 516 367
277
179
P
packet flow
309 309
network time protocol no debug all command no debug command no dial tone
219, 279
55, 84
173
557
550 538
O
object names and identifier values (table) OBJ parameter one-way audio
19 339 179 176, 177 19
displayed records
539
566 548
IN-613
Index
no ringback
337
physical level troubleshooting pid 0 pinouts digital voice port T1/E1 port PLAR
279 298 233 233
Q
Q.931 alert
336
ping commands
playout delay
277 277
playout-delay mode command port unreachable error message possible check request errors POTS call leg POTS call legs priority queueing
4, 319, 399 3 13
queuing delay
174 376
R
RADIUS server RAI RCF
357 341, 355 458
RAS messages
279 356
339 392
real-time transmission protocol receiver has loss of frame redundancy, T.38 packet reflectometerrs optical time domain (OTDR) reflectometers optical time domain (OTDR) time domain (TDR)
297 178 524 176, 177 263
progress_ind alert command progress_ind setup command progress indication progress indicator prompts #
172 336 333
298
177
176
gatekeeper
348
IN-614
Index
S
S_TRUNKED state SDP
357 391 375 279 403
resource availability indicator retransmitted messages RFC full text, obtaining RIF decoder ring back ringback
275 334 334, 335, 336, 337 336 186 179 xxiii 376
serialization delay
session protocol sipv2 command session target settlement command set filtering conditions
368
80 469, 497 39
265
short header
425
router diagnostic commands RSI format RTP RTSP troubleshooting rules GKFM debug filter engine
457 112 403
show call accounting-template voice command show call accounting voice summary command show call active voice brief command show call active voice command (examples)
285 432 10, 512
480 480
show call application voice command show call fallback cache command show call history voice command
74
(examples)
286 277
rules applied for executing exact and partial matching logic (table) 72
show call history voice record command show call rsvp-sync conf command
403
IN-615
Index
403
show rtr application command show running-config command show sip statistics command show sip status command show stacks command
377
show cdp neighbors command show class-map command show commands (examples)
283 418 171, 172, 530
172, 530
377
245, 247
266, 280
show controller e1 command show controllers command show controller t1 command show debugging command
show traffic-shape command show version command show vfc command show vfc version
310
show dial-peer voice command show dialplan number command show flash command
172, 529
show voice call summary command show voice dsp command show voice hpi capture command show voice port command show voice-port command
show frame-relay ip rtp header-compression command 418 show frame-relay pvc command show frame-relay vofr command show gatekeeper calls command
416, 417, 418, 420 416, 417 355 359 359
show voice port summary command show voice trace command signaling statistics signaling streams SIP
535 55 516 355, 357
277, 280
show gatekeeper endpoints alternates command show gatekeeper zone cluster command show gatekeeper zone status command show interfaces command show isdn status command show mgcp command
172, 529 403 354, 362
496
172, 529
messages
388 389
show mgcp endpoint command show mgcp profile command show policy-map command
83
show policy-map interface serial command show port modem log command show priority command show queue command show rawmsg command
294 172, 529
368
SIP T.38 fax relay call flow (figure) slip errors sniffers
515 266
509
294, 417
IN-616
Index
179
software bug toolkit software compatibility DID E&M FXO FXS SPE
225
232
118 193
syslog and FTP servers and the CNS-PE (figure) syslog message
245 110
539
T
T.30 messages
520 521
SPE port auto-test SPE port startup test SRC CAC problems SSAPP
17
179 17, 35
508
statistics
519
550 538
T1 controller configuration,E1 controller configuration 265 T1 layer 1 problems,E1 layer 1 problems T1 or E1 Port Pinouts (table)
566 548
Cisco IOS Voice Troubleshooting and Monitoring Guide
262
233
managing collection
T1 PRI table
273
IN-617
Index
250
number matching examples using wildcard symbols object names and identifier values
255 19 277
54
EC detected FRMR from peer reason code CLASS EC LCL EC condition, locally detected reason code CLASS EC LD
252
RJ-11-to-RJ-45 pinouts
368
error correction (EC) detected link disconnect (LD) from peer reason code 256 CLASS HOST requested by host reason code CLASS OTHER code summary
258 247 246 199 219
rules applied for executing exact and partial matching logic 72 serialization delay subsystem codes
297 456
symbols used in calling and called number strings troubleshooting voice quality on voice ports VoIP error category codes Tables T1 or E1 Port Pinouts T-CCS
118 142 121 278 429 233 179 116 295
53, 71
disconnect reason code hexadecimal values E&M interface supervision signal description E&M supervisory signaling troubleshooting E&M type II signal states E&M type I signal states E&M type V signal states
202 200 207
error codes for subsystem 1 (CCAPI) error codes for subsystem 2 (TCL IVR)
error codes for subsystem 10 (AFSAPP) error codes for subsystem 3 (application framework) 124
TCL applications MGCP scripting overview TCL script debugging development events loading
458 431 497 458 430 430 458
error codes for subsystem 4 (default session application) 126 error codes for subsystem 5 (H.323) error codes for subsystem 7 (SIP) error codes for subsystem 9 (VTSP)
127 133 140
explanation of felds in the show voice port command 410 explanation of fields in the show mgcp command explanation of fields in the show mgcp connection command 408 explanation of fields in the show mgcp statistics command 412 FXS idle voltage
187 317
392
TDR. <Emphasis>See time domain reflectometers telephone trunk interface telephony SPI terminals
14 173 197 277
H.323 and SIP standard category with corresponding Q.850 cause code information 592 IEC fields
115 19 18
173
IN-618
Index
332 6
171, 174
terminating router/gateway
311
98
bit/block error rate (BERT/BLERT) cable testing fax mode voice mode
TrafficDirector RMON
467
test port modem back-to-back command test voice port command TFTP download third-party tools
369 176, 177, 178 392
troubleshooting voice quality on voice ports (table) TTL. <Emphasis>See time-to-live value TTS description
455 456 456
295
time-division multiplexing
time domain reflectometers (TDRs) time domain reflectors (TDRs) time exceeded error message timesavers, usage in text time-to-live (TTL) value tips collecting debug output tips, usage in text toll bypass no ringback tone tone injection tools CiscoView
174, 175 290 xxv 272, 332 334 98 xxv 174 177 174
176, 177
verifying functionality
357
debug commands
two-port E&M card front panel (figure) two-port FXO card front panel (figure) two-port FXS card front panel (figure) two-wire telephone trunk interface
197
typical application using ISDN BRI NT/TE VICs or ISDN BVMs (figure) 273
U
175
Internetwork Performance Monitor (IPM) TrafficDirector RMON troubleshooting network management third-party VlanDirector
174, 175, 176 175, 176
UK FXS implementation unable to break dial tone unable to send digits unbreakable dial tone upspeed
219
188 188
504
IN-619
Index
URQ
356
voice call debug command voice call debug filter configuration output example set conditions
175, 176 55, 79 62 55, 79
35, 37, 99
use-proxy hwei-gk default inbound-to terminal command 361 use-proxy hwei-gk default outbound-from terminal command 362 utilities
174, 175
50, 69
51, 70
533
V
VAD
296, 308 308 308 308
restrictions
309 193
voice class dualtone-detect-params command voice codec bandwidth calculator voice control messages
235 239 234 180
codecs
restrictions verification
voice-fastpath enable command voice hpi capture command voice mode testing
291 4 235
341 238
239
voice network dial peer matching voice over ATM (VoATM) voice over frame relay voice over IP (VoIP) basic terminology feature design
534 4 533 415 4 4
13
IN-620
Index
533
W
warnings, usage in text
260 xxv 53, 71
183 to ??
codec complexity, configuring configuring configuring troubleshooting tips digital verifying configuration fax mode, testing
229, 291 280 273 231 to ?? 280
verifying configuration
X
xGCP call routing
398
Z
zone bandwidth management zone cluster remote command
279 356 358
voice ports are configured as connection trunk voice ports in shutdown state voice port testing commands voice processor module voice quality
376, 388 ?? to 308 340 15, 17 15 279 289
VoiceXML dialog completion status VoIP bandwidth consumption VoIP call leg VoIP over PPP volt-ohm meters VOM VPM VTSP
209 15 15, 17 260 3, 4, 322, 401 116 293
VTSP-3-DSP_TIMEOUT error
IN-621