SIP协议报文及故障分析培训 2012.8
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
网络质量是通信企业生命线
SIP协议报文及故障分析培训
第一部分抓包软件的使用
第二部分SIP协议流程
第三部分SIP协议故障分析
2
抓包原理
抓取网络报文的基本原理是将网络中正常传输的报文做一个“复制”操作,将报文转移到要抓包的电脑上。
通常采用的办法是使用交换机的端口镜像功能或者使用网络集线器(HUB )。
3
Wireshark软件简介
Wireshark(前身Ethereal)是一个网络封包分析软件。
网络封包分析软件的功能是抓取网络封包,并尽可能显示出最为详细的网络封包资料。
在过去,网络封包分析软件是非常昂贵,或是专门属于营利用的软件。
Ethereal的出现改变了这一切。
在GNUGPL通用许可证的保障范围底下,使用者可以以免费的代价取得软件与其源代码,并拥有针对其源代码修改及客制化的权利。
Ethereal 是目前全世界最广泛的网络封包分析软件之一。
4
5
Wireshark 主界面
开始抓包停止抓包
过滤条件
Wireshark选择网卡
选择网卡
勾选这3项
点击start开始抓包
6
筛选呼叫
选择voip call
7
查看呼叫流程图
1选择要分析的
呼叫
2点击flow
3查看流程图
8
回放呼叫语音
1选择要分析的
呼叫
2点击Player
3点击Decode
9
查看RTP丢包率
1选择RTP-
Show all streams
10
查看RTP丢包率
查看lost列值
11
第一部分抓包软件的使用
第二部分SIP协议流程
第三部分SIP协议故障分析
12
SIP典型应用
13
14
15
表示需要采取进一步动作,以
完成该请求
重定向响应3XX OK
200表示请求已经被成功接受、处
理
成功响应2XX 排队
182呼叫正在前转181振铃180试呼叫
100表示已经接收到请求消息,正在对其进行处理消息响应(呼叫进展响应)1XX 消息功能
状态码序号
16
请求超时
408要求代理权407不允许的方法405没有找到404禁止
403要求鉴权401错误请求400表示请求消息中包含语法
错误或者SIP 服务器不能完成对该请求消息的处理
客户出错4XX 消息功能
状态码序号
17
表示请求不能在任何SIP 服
务器上实现
全局故障6XX 服务器不可用
5035XX 拒绝
603服务器内部错误500表示SIP 服务器故障不能完成
对正确消息的处理
服务器出错此处不接受
488呼叫事务不存在481服务暂时不可用
480间隔太短4234XX 消息功能
状态码序号
注册流程
SoftSwitch
Sip phone
Register
401 Unauthorized
Register
200 OK
18
19
第一部分抓包软件的使用
第二部分SIP协议流程
第三部分SIP协议故障分析
20
1、网络或者配置问题
报文解析:图中可以看到,10.51.250.253一直向10.51.250.254发register(注册)报文,但是10.51.250.254未给任何回应。
出现这种情况一般为以下三种情况:
1、网络不通,目的IP不可达。
检查办法:
ping对端IP看是否可以ping通,如ping不通则将重点放在检查网络上。
2、注册服务器IP填错。
检查办法:
查看报文中destination一列是否是注册服务器的IP;
使用软终端测试是否可以注册上。
21
3、注册服务器端口填错。
检查办法:
报文中Dst Port为注册服务器端口号,查看报文中的端口号和实际要配置的是否一致。
22
2、注册账号错误
第一次注册包发上之后,局端立刻回应403,一般为注册账号有误或局端账号未开好。
23
3、注册账号密码错误
第一个注册包发上后,局端给了401 Unauthorized,说明注册账号没错,局端要求认证。
24
设备再发第二次注册包,这次注册包里携带账号的密码(红框内部分)
在设备发出第二次注册包后,局端给了403 forbidden,说明账号的密码错了,账号是存在的。
也有可能是这个账号其它地方已经注册了,局端不允许再次注册。
25
1、呼叫403或503
Invite报文一发出局端就回应403和503的状况比较常见,原因也很类似,主要检查账号是否注册上,局端账号数据是否做好。
26
2、呼叫局端回480
呼叫有鉴权过程(407),但是最后局端回480,一般账号没有问题,检查被叫号码是否拨错以及账号相关参数是否设置对。
27
二、SIP呼叫失败
3、呼叫局端回488
呼叫有鉴权过程(407),但是局端最后回488 not acceptable,说明局端对设备携带的某些参数不认可,不接受。
重点检查语音编码是否有错。
28
由于存在1.9%的丢包导致传真失败,传真类问题先检查丢包率。
29
相关技术规范要求:
网络等级单向时延(ms)包丢失率抖动(ms)
良好0~400~0.1%0~10
较差*40~1000.1%~1%10~20
恶劣*100~4001%~5%20~60
来源:通信行业标准YD/T 1071-2000 《IP电话网关设备技术要求》
30
四、网络丢包导致POS失败
丢包率达到6.4%导致刷POS失败。
31
DTMF 主要用于通话中的按键音检测(二次拨号),比如拨打10086或拨打电话银行后,需要再按键选择所需的服务。
拨打有总机的电话,再拨分机号也属于DTMF。
DTMF故障表现通常为按键无效(即已经按下话机下正确的按键,但是无法进入正常的语音菜单流程)或按键错误(比如按分机号8001,实际接通了9001)。
DTMF有三种格式SIP info /inband/RFC2833
终端设备的DTMF格式必须与局端配置一致。
目前国内局端多用inband,少数用RFC2833,几乎没有用sip info。
32
1、inband
Inband DTMF又称为带内,特点是把按键音放在语音报文中传输,所以从RTP还原的波形图中可以看到按键音的波形(RFC2833和sip info在波形图中都看不到)。
33
2、SIP INFO
SIP info 属于带外信令,即把按键音还原成SIP报文传输,所以过滤SIP就可以看到用户按了什么键(报文中红色框住部分就是info报文)。
34
解开一个info报文,可以看到signal=1\r\n,表面用户按了数字1。
35
3、RFC2833
RFC2833与SIP info一样属于带外信令,RFC2833有两种payload(载荷值)97和101,如果两端payload设置值不一样也会导致DTMF失败。
RFC2833 用户一个按键,设备要发6-10遍以防丢失。
在过滤条件中输rtp.p_type== 101,如果有过滤出内容说明用的是RFC2833 并且payload值设定为101.图中用户按了1和0两个数字。
36
在过滤条件中输rtp.p_type== 97,如果有过滤出内容说明用的是RFC2833 并且payload值设定为101.图中用户按了1和0两个数字。
如果过滤条件中输rtp.p_type== 97 or rtp.p_type== 101 过滤不出任何报文,说明DTMF用的不是RFC 2833。
37
38 38。