利用WireShark工具定位视频质量问题的方法.docx

上传人:b****5 文档编号:6928564 上传时间:2023-01-12 格式:DOCX 页数:6 大小:788.76KB
下载 相关 举报
利用WireShark工具定位视频质量问题的方法.docx_第1页
第1页 / 共6页
利用WireShark工具定位视频质量问题的方法.docx_第2页
第2页 / 共6页
利用WireShark工具定位视频质量问题的方法.docx_第3页
第3页 / 共6页
利用WireShark工具定位视频质量问题的方法.docx_第4页
第4页 / 共6页
利用WireShark工具定位视频质量问题的方法.docx_第5页
第5页 / 共6页
点击查看更多>>
下载资源
资源描述

利用WireShark工具定位视频质量问题的方法.docx

《利用WireShark工具定位视频质量问题的方法.docx》由会员分享,可在线阅读,更多相关《利用WireShark工具定位视频质量问题的方法.docx(6页珍藏版)》请在冰豆网上搜索。

利用WireShark工具定位视频质量问题的方法.docx

利用WireShark工具定位视频质量问题的方法

利用WireShark工具定位视频质量问题的方法

 

利用WireShark工具定位视频质量

问题的方法

 

 

杭州华三通信技术有限公司

H3CTechnologiesCo.,Ltd.

版权所有XX

Allrightsreserved

修订记录RevisionRecord

日期

Date

修订

版本

RevisionVersion

修改

章节

SecNo.

修改描述

ChangeDescription

作者

Author

2010-11-18

1.00

初稿整理完成

罗翔

 

1面临的问题

在IP监控的实际应用中,IP监控的视频报文常常运行在无保障的IP网络中。

一旦出现视频质量问题,定位问题的第一步,就是要确认该问题是否与网络相关。

如何确认呢?

在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-原始抓包文件

2.1.1抓包文件中过滤出TS流

通过对TS流音频、TS流视频的报文分析,我们可以发现TS流的UDP目的端口号是固定的,即udp53340端口。

图2-TS音频流UDP目的端口

图3-TS视频流UDP目的端口

通过以udp目的端口53340为过滤条件,我们可以在抓包文件中将TS流过滤出来。

这里教大家一个过滤报文的小窍门:

以往我们在过滤报文时,往往苦恼无法记住WireShark或者是ethereal等抓包工具过滤报文的语法,但实际上,聪明的开发者早就体会到了我等菜鸟的苦衷,我们只需在报文中选中需要过滤的字段,点击右键,选择“applyasfilter”,WireShark就可以自动的生成过滤条件,将所需的报文过滤出来!

 

图4-在报文中选择要过滤的字段

图5-filter工具栏自动生成过滤条件

参考图4,之前提到需要以udp目的端口53340为过滤条件,那么只需要在报文中选中“Destinationport:

53340(53340)”这个字段,点击右键,在右键菜单中选中“ApplyasFilter”,此时Wireshark就会自动在Filter工具栏中生成“udp.dstport==53340”的过滤条件(参考图5),就可以自动将所有的TS流报文过滤出来啦!

细心的读者可能还会注意到图4右键菜单中另一个选项,即“PrepareasFilter”,那么它和“ApplyasFilter”有什么区别呢?

在本例中,如果选择“ApplyasFilter”,WireShark会立即执行“udp.dstport==53340”这个过滤条件;如果选择“PrepareasFilter”,WireShark则是将“udp.dstport==53340”这个过滤条件在Fitler栏中显示出来,而不会立即执行过滤。

当完成过滤后,需要将过滤出来的报文另存为一个新的文件ts.cap。

注意,在选择SAVEAS后,一定要选择“Displayed”(参考图6),才能将所需的TS流报文另存为ts.cap。

 

图6-将TS流报文另存为ts.cap

2.1.2TS流中过滤出TS视频流

打开刚才建立的ts.cap文件,找到TS音频流报文,在其IS0/IEC封装中找到“PacketizedElementaryStream”字段,选择“stream:

audio-stream(0xc0)”后,点击右键,在右键菜单中选择“PrepareasFilter”,filter工具栏中即出现TS音频流过滤条件:

mpeg-pes.stream==0xc0(参考图7)。

图7-TS音频流过滤条件

由于我们不需要TS音频流,所以我们要修改过滤条件。

在filter工具栏中将“mpeg-pes.stream==0xc0”修改为“!

mpeg-pes.stream==0xc0”,“!

”在这里表示反向选择,即WireShark会在ts.cap中将除TS音频流之外的报文都过滤出来。

过滤完成后,将过滤的结果另存为ts-video.cap。

至此,我们就得到了一个纯粹的TS视频流抓包文件了。

2.2将视频流报文转换为视频文件

打开刚才创建的ts-video.cap文件,在“Analyze”下拉菜单中选中“FollowUDPStream”(参考图8)。

选择完成后,在跳出的对话框中,将格式选为“raw”,然后点击“saveas”,将文件命令为ts-video.ts,点击“save”后即可完成视频文件的转换!

(参考图9、图10)。

图8-WireShark“followudpstream”菜单

 

图9-WireShark“followudpstream”对话框

 

图10-保存为ts-video.ts文件

完成转换之后,我们就可以通过VLC或者是迅雷看看播放我们转换过的ts-video.ts文件了,下图就是播放的截图。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 其它模板

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1