利用WireShark工具定位视频质量问题的方法内部公开利用WireShark工具定位视频质量问题的方法杭州华三通信技术有限公司H3CTechnologiesCo.,Ltd.版权所有侵权必究Allrightsreserved2008-07-16华为三康机密,未经许可不得扩散第1页,共10页利用WireShark工具定位视频质量问题的方法内部公开修订记录RevisionRecord日期Date修订版本RevisionVersion修改章节SecNo.修改描述ChangeDescription作者Author2010-11-181.00初稿整理完成罗翔2008-07-16华为三康机密,未经许可不得扩散第2页,共10页利用WireShark工具定位视频质量问题的方法内部公开目录2008-07-16华为三康机密,未经许可不得扩散第3页,共10页利用WireShark工具定位视频质量问题的方法内部公开1...............................................................................................................................面临的问题42解决方案..............................................................................42.1原始抓包文件中过滤出TS视频流..................................................42.1.1抓包文件中过滤出TS流...................................................52.1.2TS流中过滤出TS视频流...................................................72.2将视频流报文转换为视频文件.....................................................81面临的问题在IP监控的实际应用中,IP监控的视频报文常常运行在无保障的IP网络中。一旦出现2008-07-16华为三康机密,未经许可不得扩散第4页,共10页利用WireShark工具定位视频质量问题的方法内部公开视频质量问题,定位问题的第一步,就是要确认该问题是否与网络相关。如何确认呢?在MPPV1中,我们可以通过在编码侧和解码侧两端进行抓包,然后利用ethereal的rtpstreamanalysis功能快速统计出丢包率的方式来确认。但是对于MPPV3,由于改用TS协议进行打包,而ethereal又不提供TS流的分析功能,导致我们很难判断TS流是否在网络中被正常发送和接收。2解决方案WireShark帮助我们解决了这个难题。WireShark可以正常的解析TS流报文,虽然它不提供“tsstreamanalysis”,但是通过WireShark,我们可以将捕获的报文转换为视频文件。有了这个功能,在定位问题时,我们只需要将编码、解码两端的抓包还原视频文件,然后使用VLC或者是迅雷看看等工具进行播放对比,同样可以判断问题是出现在网络侧还是出现在监控侧,提高我们定位问题的效率。下面就为大家介绍具体的使用方法。2.1原始抓包文件中过滤出TS视频流要实现将抓包转换为TS视频文件,我们必须在原始抓包文件中将TS视频流报文过滤出来。参考图1,我们可以看到在原始的抓包文件中包含sip、ssh、pppoe、arp、ts音频流、ts视频流等多种协议报文。要达成我们过滤TS视频流报文的目的,需要分两步进行:在抓包文件中,首先将TS流过滤出来在TS流中,将TS视频流过滤出来图1-原始抓包文件2008-07-16华为三康机密,未经许可不得扩散第5页,共10页利用WireShark工具定位视频质量问题的方法内部公开2.1.1抓包文件中过滤出TS流通过对TS流音频、TS流视频的报文分析,我们可以发现TS流的UDP目的端口号是固定的,即udp53340端口。图2-TS音频流UDP目的端口图3-TS视频流UDP目的端口通过以udp目的端口53340为过滤条件,我们可以在抓包文件中将TS流过滤出来。这里教大家一个过滤报文的小窍门:以往我们在过滤报文时,往往苦恼无法记住WireShark或者是ethereal等抓包工具过滤报文的语法,但实际上,聪明的开发者早就体会到了我等菜鸟的苦衷,我们只需在报文中选中需要过滤的字段,点击右键,选择“applyasfilter”,WireShark就可以自动的生成过滤条件,将所需的报文过滤出来!图4-在报文中选择要过滤的字段2008-07-16华为三康机密,未经许可不得扩散第6页,共10页利用WireShark工具定位视频质量问题的方法内部公开图5-filter工具栏自动生成过滤条件参考图4,之前提到需要以udp目的端口53340为过滤条件,那么只需要在报文中选中“Destinationport:53340(53340)”这个字段,点击右键,在右键菜单中选中“ApplyasFilter”,此时Wire...