SIP协议报文及故障分析培训 2012.8
sip故障分析处理

目录1 Sip故障常见分析方法: (1)1.1 Wireshark显示环境的配置: (2)1.1.1 设置显示列的源和目的端口增加包显示的可读性 (2)1.1.2 调整包的显示 (5)1.1.3 设置时间显示格式 (5)1.1.4 设置显示的过滤表达式标签 (5)1.1.5 添加协议的解析端口 (7)1.1.6 强制解析包为某种协议 (10)1.1.7 用ctrl+f进行查找需要的字段 (13)1.1.8 用packet detail里的字段进行查找 (15)1.1.9 抓包文件的保存 (16)●抓包整个保存 (16)●有选择的保存 (17)2 SIP回复消息解析 (21)3 工作中Sip故障类问题 (23)3.1 SIP信令触发类问题 (23)3.2 SIP终端注册类问题 (25)3.3 SIP基本呼叫类问题 (33)3.4 SIP呼叫语音视频单通或双不通类问题 (40)3.5 SIP二次拨号类问题 (46)3.6 SIP消息跟踪丢失类问题 (49)3.7 SIP呼叫周期性失败类问题 (50)3.8 SIP匿名呼叫类问题 (50)3.9 SIP呼叫主叫用户无法听回铃音类问题 (51)3.10 SIP和中继网关对接类问题 (53)3.11 SIP补充业务类问题 (54)3.12 SIP一号通,彩铃,UC呼叫类问题 (55)3.13 SIP呼叫号码显示类问题 (60)3.14 SIP传真类问题 (60)3.15 SIP长时间通话断话类问题 (63)3.16 SIP大面积呼损类问题 (63)1Sip故障常见分析方法:Sip协议是基于udp的协议,常见分析问题方法可分位抓包协议分析和日志分析,协议分析通过抓取的终端或者注册,代理服务器的流程,分析那个流程出错,进而找到原因。
日志分析通过设备内部的spms,as,cscf,mrf之间的流程关系,来确定程序内部处理的故障。
通过sip协议分析,我们先确定外部信令流程的故障,日志来确定程序的问题。
SIP协议介绍及FTTH故障处理

• 注册
Client B Client A
Register 401 unauthorized
Proxy A
INVITE
Proxy B
Proxy A
INVITE
-1414-
SIP消息结构 SIP消息结构
• SIP 消息基于文本,采 消息基于文本, 用UTF-8编码中的 ISO 编码中的 10646字符集,信息的 字符集, 字符集 每一行必须通过CRLF终 每一行必须通过 终 止。 • 包含3部分 包含 部分 – Start-Line首行 首行 – Header头域 头域 – Body消息体 消息体
-1313-
SIP基本消息流程 SIP基本消息流程
• 会话建立
Client A
INVITE 100 TRYING 100 TRYING 100 TRYING Register 180 RINGING 180 RINGING 180 RINGING 200 OK 200 OK 200 OK 200 OK
-4-
会话相关协议
• SDP (Session Description Protocol) – 总是做为 消息体出现 总是做为SIP消息体出现 – 会话描述协议和会话管理协议(SIP)是互相独立的 会话描述协议和会话管理协议( ) • RTP (Real-time Transmission Protocol) – 用于在IP网上传输经过打包的实时媒体流,例如 语音, 用于在 网上传输经过打包的实时媒体流,例如. 语音,视频 网上传输经过打包的实时媒体流
-8-
事务和对话( 事务和对话(续)
• 事务
一个请求和其所有的相应
Invite 183
对话
SIP协议解析(华为内部)

4
PRACK
5
ACK
6
BYE
7 487 Request Terminated
SGA
成功的SIP-T呼叫流程
SoftX3000A
SoftX3000B
IAM
1 INVITE
IAM
ACM
2 100 Trying 3 180 Ring
4 200 OK
ACM ANM
ANM
5 ACK
SGB
Conversation
呼叫参数; 呼叫处理和控制:包括呼叫重定向、呼叫转移、终止
呼叫等等。
术语
呼叫 事务
SIP是一个客户/服务器协议。客户和服务器之间的操 作从第1个请求至最终响应为止的所有消息构成一个 SIP事务。
SIP URL——寻址方式,例如:
Sip; 55500200@127.0.0.1:5061; User=phone; Sip: alice@;method=REGISTER;
ACK
证实已收到对于INVITE请求的最终响应。该消息仅和INVITE消息配套 使用。
BYE
结束会话
CANCEL
取消尚未完成的请求,对于已完成的请求(即已收到最终响应的请求) 则没有影响
REGISTER 注册
OPTIONS 查询服务器的能力
响应消息
序号 1xx
2xx 3xx 4xx
5xx 6xx
状态码
200 OK
SIP实体之间的SIP呼叫流程
SIP PhoneA
SoftX3000
SIP PhoneB
1
INVITE
2 100 Trying
3
407
4
ACK
sip错误代码报告

1xx = 通知性应答∙100 正在尝试∙180 正在拨打∙181 正被转接∙182 正在排队∙183 通话进展2xx = 成功应答∙200 OK∙202 被接受:用于转介3xx = 转接应答∙300 多项选择∙301 被永久迁移∙302 被暂时迁移∙305 使用代理服务器∙380 替代服务4xx = 呼叫失败∙400 呼叫不当∙401 未经授权:只供注册机构使用,代理服务器应使用代理服务器授权407∙402 要求付费(预订为将来使用)∙403 被禁止的∙404 未发现:未发现用户∙405 不允许的方法∙406 不可接受∙407 需要代理服务器授权∙408 呼叫超时:在预定时间内无法找到用户∙410 已消失:用户曾经存在,但已从此处消失∙413 呼叫实体过大∙414 呼叫URI过长∙415 不支持的媒体类型∙416 不支持的URI方案∙420 不当扩展:使用了不当SIP协议扩展,服务器无法理解该扩展∙421 需要扩展∙423 时间间隔过短∙480 暂时不可使用∙481 通话/事务不存在∙482 检测到循环∙483 跳数过多∙484 地址不全∙485 模糊不清∙486 此处太忙∙487 呼叫被终止∙488 此处不可接受∙491 呼叫待批∙493 无法解读:无法解读 S/MIME文体部分5xx = 服务器失败∙500 服务器内部错误∙501 无法实施:SIP呼叫方法在此处无法实施∙502 不当网关∙503 服务不可使用∙504 服务器超时∙505 不支持该版本:服务器不支持SIP协议的这个版本∙513 消息过长6xx = 全局失败∙600 各处均忙∙603 拒绝∙604 无处存在∙606 不可使用代码详解:SIP协议应答码应答代码应答码是包含了,并且扩展了HTTP/1.1应答码。
并不是所有的HTTP/1.1应答码都适当应用,只有在折里指出的是适当的。
其他HTTP/1.1应答码不应当使用。
并且,SIP也定义了新的应答码系列,6xx。
SIP协议原理-报文分析-20091020-A

SIP PhoneB的IP 地址为191.169.150.100;
SIP PhoneA为主叫,SIP PhoneB为被叫,主叫先挂机; SIP PhoneA的电话号码为1000;
SIP PhoneB的电话号码为1001。
HUAWEI TECHNOLOGIES CO., LTD.
Huawei Confidential
180 Trying 200 OK
ACK
同一个SoftX3000控制下的两个UAC间的呼叫
在下面的实例中,我们基于以下约定:
������
SoftX3000的IP 地址为191.169.200.61; ������ SIP PhoneA的IP 地址为191.169.150.101;
������
������ ������
HUAWEI TECHNOLOGIES CO., LTD.
SIP/2.0 401 Unauthorized From: <sip:6540012@191.169.150.30 >;tag=16838c16838 To: <sip:6540012@191.169.150.30 >;tag=946e6f96 CSeq: 2762 REGISTER Call-ID: 1-reg@191.169.150.251 Via: SIP/2.0/UDP 191.169.150.251 WWW-Authenticate: Digest SIP/2.0 200 OK realm="",nonce="20 From: 0361722310491179922" <sip:6540012@191.169.150.30>; Content-Length: 0 tag=16838c16838 To: <sip:6540012@191.169.150.30>; tag=946e6f96 CSeq: 2763 REGISTER Call-ID: 1-reg@191.169.150.251 Via: SIP/2.0/UDP 191.169.150.251
SIP协议简介培训PPT(16张)

•
9、别再去抱怨身边人善变,多懂一些道理,明白一些事理,毕竟每个人都是越活越现实。
•
10、山有封顶,还有彼岸,慢慢长途,终有回转,余味苦涩,终有回甘。
•
11、人生就像是一个马尔可夫链,你的未来取决于你当下正在做的事,而无关于过去做完的事。
•
12、女人,要么有美貌,要么有智慧,如果两者你都不占绝对优势,那你就选择善良。
•
19、大家常说一句话,认真你就输了,可是不认真的话,这辈子你就废了,自己的人生都不认真面对的话,那谁要认真对待你。
•
20、没有收拾残局的能力,就别放纵善变的情绪。
•
1、不是井里没有水,而是你挖的不够深。不是成功来得慢,而是你努力的不够多。
•
2、孤单一人的时间使自己变得优秀,给来的人一个惊喜,也给自己一个好的交代。
•
16、成功的秘诀在于永不改变既定的目标。若不给自己设限,则人生中就没有限制你发挥的藩篱。幸福不会遗漏任何人,迟早有一天它会找到你。
•
17、一个人只要强烈地坚持不懈地追求,他就能达到目的。你在希望中享受到的乐趣,比将来实际享受的乐趣要大得多。
•
18、无论是对事还是对人,我们只需要做好自己的本分,不与过多人建立亲密的关系,也不要因为关系亲密便掏心掏肺,切莫交浅言深,应适可而止。
响应消息
西安邮电学院NGN课程建设小组
SIP请求消息结构
SIP请求命令的格式,由起始行、消息头和 消息体组成
西安邮电学院NGN课程建设小组
SIP响应消息结构
SIP响应消息的格式,由起始行、消息头和 消息体组成
西安邮电学院NGN课程建设小组
基本消息流程
一、SIP用户注册流程 用户每次开机时都需要向服务器注册,当SIP Client的地址发生改变时也需要 重新注册。注册信息必须定期刷新。下面以SIP Phone向SoftX3000注册的流 程为例,说明SIP用户的注册流程
sip协议培训讲议

Sip协议基本介绍
.
SIP 协议基础
SIP(Session Initiation Protocol,即初 始会话协议)是IETF提出的基于文本编码 的IP电话/多媒体会议协议。用于建立、修 改并终止多媒体会话。SIP协议可用于发起 会话,也可以用于邀请成员加入已经用其它 方式建立的会话。 IETF:Internet任务组,SIP由该机构制定。 RFC3261:SIP的请求评论文档。
SIP实体-代理服务器
代理服务器(Proxy Server)
目的:接收请求,决定将这些请求传送到何处,并且将它们传送 到下一服务器(使用下一跳路由原理)。 3类代理: 保留呼叫状态代理(Call Stateful Proxy):
存储从INVITE到BYE的一个会话所有状态信息;
SIP响应代码
以下列出的是SIP的响应代码及其意义 1××:临时应答-表示请求已经接收,正在处理这个请
求。
了这
2××:成功处理-表示请求已经成功接收,并且正确处理 个请求。
3××:重定向-还需要附加的操作才能完成这个请求,本请求转发到其 它服务器上处理。 4××:客户端错误-请求包含错误的格式或者不能在这个服务器上完 成。 5××:服务器错误-服务器不能正确的处理这个显然合法的请求。 6××:全局错误-请求不能被任何服务器处理。
SIP请求消息
请求消息格式: 请求行 *消息头部(1个或多个头部) CRLF(空行) [消息体] 请求行的格式由方法名,请求URL和协议的版本组成。 例如:INVITE sip:test@:5060 SIP/2.0 其中消息头部采用HTTP那样的键值对。 例如:to : Bob<sip:bob@>
技术培训讲义SIP介绍

技术培训讲义S I P介绍 Corporation standardization office #QS8QHH-HHGX8Q8-GNHHJ8中国网通宽带电话工程技术培训教材系列技术培训讲义SIP介绍目录1.SIP协议背景1.1SIP在未来网络中的方向未来的信息网是一个统一的基于IP的网络平台,在不同的用户终端上为用户提供丰富的综合性新业务未来的电信市场毫无疑问将是一个充斥着多运营商(业务供应商)以及多种业务的市场。
随着电信市场向多元化发展的速度愈来愈快,市场竞争也愈加残酷,用户的要求也愈来愈多,原有的一些电信业务为运营商所带来的利润值正在逐渐减少,而传统运营商(有线网络)及新兴的运营商都花了大量资金来拓展IP网络,如何从这些已有的有线网络和新兴IP网络中获取利润正成为运营商压在心头的一个严峻问题。
在平等竞争的市场环境中,锁定用户的价格因素不再是一个关键因素,所能提供的丰富和便捷的的业务服务将愈加重要,在这样一个市场驱动因素下,要求运营商(业务供应商)必须高效地为市场推出新的增值的综合业务。
要在不同种类的终端上提供种类繁多且统一的增值业务就要求将原来相互独立的不同的网络进行融合,最终是将数据网络、语音网络进行融合,将固定网络和移动通讯网络进行融合。
将原来相互独立的系统演变到一个统一的基于IP的核心网上来,可以使开发和运营的成本大大降低。
例如,可以将有线网络上的新一代VoIP业务方便地移植到移动电话上来。
电信运营商(业务供应商)采用统一的IP核心网不仅可以降低成本、提高竞争能力,还可以快速进入无线移动通信等新领域。
需要一个公共的协议来进行多设备供应商之间、多协议之间的翻译和互通要将电话技术和数据、多媒体信息技术进行融合来为用户提供综合性新业务,网络设备供应商必须寻找正确的解决方案,因为运营商(业务供应商)不可能把钱花在一个较好而非最佳的方案上,解决方案必须是足够灵活以适应和容纳将来的创新,便于新业务的引入。
- 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。