簡介
本文檔介紹在CLI中為Cisco IP電話7800/8800系列生成的調試日誌分析,以解決單向音訊問題。
排除Cisco Phone 7800/8800系列單向音訊故障
對單向音訊問題進行故障排除時,第一個任務是繪製拓撲並確定傳送和接收RTP流的RTP介質(即時協定)路徑和裝置。一個特別複雜的任務是確定IP電話是否在傳送和接收資料流。
最常見的方法是收集來自Cisco IP電話的封包擷取,如各文章所述。但在大多數情況下,當問題間歇性出現時,很難確定下次會受到單向音訊問題影響的電話。
本文使用了一種替代方法。它非常有用,特別是在處理零星的單向音訊問題時。
捕獲日誌
步驟1.在IP電話上啟用SSH。
步驟2.可選步驟。配置將電話日誌轉儲到Syslog伺服器。
如前所述,單向音訊問題通常間歇性出現。如果有多部電話受到影響,則需要配置將日誌轉儲到遠端Syslog伺服器的選項。
在Cisco Unified Communications Manager(CUCM)中啟用以下引數。
重置電話。
步驟3.通過SSH協定登入電話的CLI。
步驟4.啟用電話日誌。
DEBUG> settmask -p ms -t 0xfffff -b LOG_DEBUG
DEBUG> debug lsm vcm fim fsm gsm
debugs: fim fsm gsm lsm sip-state sip-messages sip-reg-state ccdefault vcm
DEBUG> debug jvm SIPCC
DEBUG> Successfully executed the command.
步驟5.開始轉儲日誌。
DEBUG> sdump
步驟6.重置電話以取消日誌收集。
通話詳細資訊
Calling phone firmware: sip78xx.10-3-1-12
Calling phone ip address: 10.62.153.20
Calling phone number: 5035
Called phone ip address: 10.229.16.243
Called phone number: 2211
CUCM version: 11.0.1.20000-2
CUCM Publisher ip address: 10.48.47.143
CUCM Subscriber ip address: 10.48.47.136
CUBE: 10.62.150.10
訊號分析
首先,需要查詢存在單向音訊問題的呼叫的信令。
最簡單的方法是使用被叫號碼作為搜尋引數。
附註:在Cisco IP電話7800/8800系列中,所有傳送和接收的SIP消息都可以通過「sipio-sent」和「sipio-recv」搜尋字串找到。
電話向CUCM使用者伺服器傳送INVITE消息。接收標準回覆。Call-ID記錄允許跟蹤此特定呼叫的所有相關消息。
0611 DEB Dec 21 14:33:00.127717 JAVA-sipio-sent---> INVITE sip:2211@10.48.47.136;user=phone SIP/2.0^M
Via: SIP/2.0/TCP 10.62.153.20:52464;branch=z9hG4bK2037857c^M
From: "5035" <sip:5035@10.48.47.136>;tag=c80084aa872103164b6d6bb1-699aac4f^M
To: <sip:2211@10.48.47.136>^M
Call-ID: c80084aa-8721000b-302564ee-403d3d01@10.62.153.20^M
Max-Forwards: 70^M
Date: Wed, 21 Dec 2016 14:33:00 GMT^M
CSeq: 101 INVITE^M
User-Agent: Cisco-CP7821/10.3.1^M
Contact: <sip:2fbf6265-bffc-4f99-b8b2-40dce7ed2d19@10.62.153.20:52464;transport=tcp>^M
Expires: 180^M
Accept: application/sdp^M
Allow: ACK,BYE,CANCEL,INVITE,NOTIFY,OPTIONS,REFER,REGISTER,UPDATE,SUBSCRIBE,INFO^M
Remote-Party-ID: "5035" <sip:5035@10.48.47.136>;party=calling;id-type=subscriber;privacy=off;screen=yes^M
Supported: replaces,join,sdp-anat,norefersub,resource-priority,extended-refer,X-cisco-callinfo,X-cisco-serviceuri,X-cisco-escapecodes,X-cisco-service-control,X-cisco-srtp-fallback,X-cisco-monrec,X-cisco-config,X-cisco-sis-7.0.0,X-cisco-xsi-8.5.1^M
Allow-Events: kpml,dialog^M
Content-Length: 348^M
Content-Type: application/sdp^M
Content-Disposition: session;handling=optional^M
^M
v=0^M
o=Cisco-SIPUA 7726 0 IN IP4 10.62.153.20^M
s=SIP Call^M
t=0 0^M
m=audio 27986 RTP/AVP 9 0 8 116 18 101^M
c=IN IP4 10.62.153.20^M
a=rtpmap:9 G722/8000^M
a=rtpmap:0 PCMU/8000^M
a=rtpmap:8 PCMA/8000^M
a=rtpmap:116 iLBC/8000^M
a=fmtp:116 mode=20^M
a=rtpmap:18 G729/8000^M
a=fmtp:18 annexb=yes^M
a=rtpmap:101 telephone-event/8000^M
a=fmtp:101 0-15^M
a=sendrecv^M
0650 DEB Dec 21 14:33:00.171483 JAVA-sipio-recv<--- SIP/2.0 100 Trying^M
0782 DEB Dec 21 14:33:00.249127 JAVA-sipio-recv<--- SIP/2.0 180 Ringing^M
在8秒內,被叫方應答呼叫,音訊流建立。記下協商的介質地址非常重要。媒體地址在INVITE和200 OK消息中協商為早期提供SIP模式,在200 OK後為ACK為延遲提供模式。
1150 DEB Dec 21 14:33:08.179266 JAVA-sipio-recv<--- SIP/2.0 200 OK^M
Via: SIP/2.0/TCP 10.62.153.20:52464;branch=z9hG4bK2037857c^M
From: "5035" <sip:5035@10.48.47.136>;tag=c80084aa872103164b6d6bb1-699aac4f^M
To: <sip:2211@10.48.47.136>;tag=59591~c6f18c49-d13e-4c97-aefc-039c35dcaca0-37698453^M
Date: Wed, 21 Dec 2016 14:32:59 GMT^M
Call-ID: c80084aa-8721000b-302564ee-403d3d01@10.62.153.20^M
CSeq: 101 INVITE^M
Allow: INVITE, OPTIONS, INFO, BYE, CANCEL, ACK, PRACK, UPDATE, REFER, SUBSCRIBE, NOTIFY^M
Allow-Events: presence^M
Supported: replaces^M
Server: Cisco-CUCM11.0^M
Call-Info: ; security= NotAuthenticated; orientation= to; gci= 2-6064; isVoip; call-instance= 1^M
Send-Info: conference, x-cisco-conference^M
Remote-Party-ID: <sip:2211@10.48.47.136>;party=called;screen=no;privacy=off^M
Session-ID: f329a19bdd6e9960881d66e6bab59592;remote=7d416919fab94807bcc061c4baa59591^M
Remote-Party-ID: <sip:2211@10.48.47.136;user=phone>;party=x-cisco-original-called;privacy=off^M
Contact: <sip:2211@10.48.47.136:5060;transport=tcp>^M
Content-Type: application/sdp^M
Content-Length: 236^M
^M
v=0^M
o=CiscoSystemsCCM-SIP 59591 1 IN IP4 10.48.47.136^M
s=SIP Call^M
c=IN IP4 10.62.150.10^M
b=TIAS:64000^M
b=AS:64^M
t=0 0^M
m=audio 23672 RTP/AVP 0 101^M
a=ptime:20^M
a=rtpmap:0 PCMU/8000^M
a=rtpmap:101 telephone-event/8000^M
a=fmtp:101 0-15^M
最後,找到呼叫終止消息。
2081 DEB Dec 21 14:33:18.688956 JAVA-sipio-recv<--- BYE sip:2fbf6265-bffc-4f99-b8b2-40dce7ed2d19@10.62.153.20:52464;transport=tcp SIP/2.0^M
Via: SIP/2.0/TCP 10.48.47.136:5060;branch=z9hG4bK17c47b18ed76^M
From: <sip:2211@10.48.47.136>;tag=59591~c6f18c49-d13e-4c97-aefc-039c35dcaca0-37698453^M
To: "5035" <sip:5035@10.48.47.136>;tag=c80084aa872103164b6d6bb1-699aac4f^M
Date: Wed, 21 Dec 2016 14:33:07 GMT^M
Call-ID: c80084aa-8721000b-302564ee-403d3d01@10.62.153.20^M
User-Agent: Cisco-CUCM11.0^M
Max-Forwards: 70^M
CSeq: 101 BYE^M
Reason: Q.850;cause=16^M
Session-ID: f329a19bdd6e9960881d66e6bab59592;remote=7d416919fab94807bcc061c4baa59591^M
Remote-Party-ID: <sip:2211@10.48.47.136;user=phone>;party=x-cisco-original-called;privacy=off^M
Content-Length: 0^M
^M
媒體流分析
在分析任何黑盒裝置時,請注意時間戳,尤其是與呼叫上下文的關係。
查詢確認傳輸尚未啟用。
0407 NOT Dec 21 14:33:00.082822 ms-RTCPMGR.rtcpm_getSr[A:17] TX stream state not connected [ingress=0][state=0]
1144 NOT Dec 21 14:33:08.152988 ms-RTCPMGR.rtcpm_getSr[A:17] TX stream state not connected [ingress=7][state=1]
更新接收(RX)音訊流引數的消息。
1380 NOT Dec 21 14:33:08.220957 ms-RTPSESSION.ms_updateRTPRxParam[A:17] UPDATE RX [mediaType(codec)=4][dynamicPayloadType=0][hootNumTalkers=0][dtmfPayloadType=101][pktperiod=20][security=0]
1481 INF Dec 21 14:33:08.282028 ms-RCVMGR.receiveManagerStartReceive[A:17] Start RX 5: syncId 5, codec 16, rtnCode 0
顯示有關已傳輸(TX)音訊流的資訊的消息。
1668 DEB Dec 21 14:33:08.380273 ms-RTPSESSION.startRTPSessionTx[A:17] enter
1670 DEB Dec 21 14:33:08.380395 ms-RTPMGR.rtpmgr_txStart[A:17] [streamId=7] enter
1673 INF Dec 21 14:33:08.380609 ms-MGRRTP.rtpTransmitStart[A:17] TX [CT=1][msPktSz=20][Ssrc=0xE322D7C2][Csrc=0x0][fTyp=0][SPF=80][FPP=2][pktSz=236][Buf=Y]
1674 INF Dec 21 14:33:08.380670 ms-MGRRTP.rtpTransmitStart[A:17] RFC2833: [PT=101][tsscale=8][pktPeriod=20][step=10][sizeof=4]
1771 NOT Dec 21 14:33:08.407650 ms-RTPSESSION.ms_startRTPSessionTx[A:17] START TX: [mediaType(codec)=4][pkt size=20][remote IPv4=10.62.150.10][rport=23672][groupid=8][callid=8]
可使用ONHOOK狀態轉換找到呼叫終止。
2113 NOT Dec 21 14:33:18.699974 JAVA-SIPCC-CC_API: 1/8, cc_int_onhook: GSM -> SIP: ONHOOK
After the call is terminated RTP statistics will be displayed. From this message it is clear that the phone did not receive any packets, so the next step would be to enable packet captures on the CUBE.
2121 NOT Dec 21 14:33:18.701225 ms-MS.statm_printDecoderStats[A:17]
[Rx Count=0][Rx Lost=0][Pkts Discarded=0][Rx Octets=0]
[Avg Jitter=0][Max Jitter=0]
[RFC2833=0]
[CCR=0.0000][ICR=0.0000][MaxCR=0.0000][CS=0][SCS=0]
Encoder stats display that 514 packets were sent.
2124 NOT Dec 21 14:33:18.701897 ms-MS.statm_printEncoderStats[A:17]
[Tx Count=514][TX Octets=82240]
提示:呼叫持續時間可以通過在分組化週期上劃分所傳輸的分組數來計數。在本例中, 514 / 50 = 10.28秒。
相關資訊