




下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、基于网络抓包技术的视频流监测系统研究 基于网络抓包技术的视频流监测系统研究宋亚楷*作者简介:宋亚楷(1985),男,主要研究方向网络管理与测试. (北京邮电大学信息与通信工程学院,北京 100876)摘要:本文的主要研究工作是提出了一种视频流监测系统的解决方案。该方案的主要是针对视频流业务消耗带宽大,实时性要求高,对网络损伤敏感的三大特点。通过对数据包捕获,协议分析,实时监测结果显示等方面研究了视频流的实时质量监测系统,并提出开发原型,进行了初步开发。本文主要采用的算法是RFC4445 标准中提出的MDI 视频流质量指标,该指标由延迟参
2、数(DF)和媒体流失率(MLR)。关键词:视频流通信技术;数据包捕获;监测;MDI中图分类号:TN919.11Research of video-stream communication monitor systembased on the technology of packet captureSong Yakai(School of information and communication engineering, Beijing University of posts andtelecommunications, Beijing 100876)Abstract: In this pap
3、er, a solution of video-stream communication monitor system is propsed, whichfocus on the feature of the video-stream service: wideband requirement, real time ,network damagesensitive. This paper focus on three points for the solution: packet capture,protocol analysis, real timedisplay. The main alg
4、orithm used by the system is from RFC4445 criterion document which proposedthe MDI indactor to evaluate the quality of the video stream. And the MDI indactor contains twoparameters: DF(Delay Factor ) and MLR(Media Loss Rate).Key words: Video Stream communication technology; Packet Capture; Monitor;
5、MDI0 引言随着通信和互联网技术的发展,网络带宽和数据率在不断提高,视频流业务与之相对应,成为一个重要的业务方向,另外用户对于视频流业务的需求也在迅速增长,随着未来网民的个人价值观和网络行为特征日趋复杂化和多样化,网民的视频消费结构也将呈现多元化的特点。消费需求结构的多元化将驱动中国网络视频市场竞争格局向追求规模和追求差异化两个方向发展。视频流业务有以下几个主要特点:消耗带宽大,实时性要求高,对网络损伤敏感。带宽要求随着通信基础设施的发展在逐渐得到满足,但是实时性和抗干扰的要求还是比较难以满足,而这两个特点恰恰是影响用户体验的重要因素。因此,关于视频流实时监测的需求随之产生。本文正是基于对视
6、频流实时监测的需求,针对视频流业务的消耗带宽大,实时性要求高,对网络损伤的敏感度比较大的特点,通过对视频流数据包捕获,数据包解析处理和协议分析以及实时监测结果显示三个主要方面进行研究和开发,得到一个视频流实时监测系统的解决方案并抽象出一个普遍适用的通信测试、管理、监测等系统研发的基本架构模型,对于以后实验室相关项目的开发和研究有一定的指导意义。 1 数据包捕获技术研究1.1 网络数据包捕获的原理以太网具有共享介质的特征,信息是以明文的形式在以太网上传输的,当网卡被设置为混杂模式时可以捕获任何一个在同一个在同一冲突域上传输的数据包。运用这一原理使网络数据包捕获系统能够拦截到我们所要的信
7、息,这是捕获数据包的物理基础。网卡具有4 种工作模式:广播模式,多播传送模式,直接模式,混杂模式1。网卡的缺省工作模式包含广播模式和直接模式,即它只接收广播帧和发给自己的帧。如果采用混杂模式,网卡将接受同一网络内所有主机所发送的数据包,这样就可以到达对所有数据包进行捕获的目的。1.2 利用WinPcap 实现网络数据包的捕获WinPcap 为数据包捕获提供了Windows 下的一个平台,它是由伯克利分组捕获库派生而来的分组捕获库2,它是在Windows 操作平台上来实现对底层包的截取过滤,它的体系结构是由一个核心的包过滤驱动程序,一个底层的动态连接库Packet.dll 和一个高层的独立于系统
8、的函数库Libpcap 组成3,其结构图如图1.1 所示。第一个模块NPF(netgroup packet filter),是一个虚拟设备驱动程序文件,它的功能是过滤数据包,并把这些数据包原封不动地传给用户态模块。第二个模块Packet.dll 为win32 平台提供了一个公共的接口,不同版本的 Windows系统都有自己的内核模块和用户层模块。Packet.dll 用于解决这些不同,调用Packet.dll 的程序可以运行在不同版本的Windows 平台上,而无需重新编译。第3 个模块Wpcap.dll 是不依赖于操作系统的,它提供了更加高层、抽象的函数。WinPcap 的优势在于提供了一套
9、标准的抓包接口,充分考虑了各种性能和效率的优化,包括对于NPF 内核层次上的过滤器支持,支持内核态的统计模式,提供了发送数据包的能力。图1.1 WinPcap 结构图WinPcap 的优势在于提供了一套标准的抓包接口,充分考虑了各种性能和效率的优化,包括对于NPF 内核层次上的过滤器支持,支持内核态的统计模式,提供了发送数据包的能力。利用WinPcap 对网络数据包进行捕获的步骤及相关代码函数如下:(1)开启指定网卡:WinPcap 提供了pcap_findalldevs()这个函数来获取当前机器上所配置 网络接口的内容,接口的全部信息都保存在pcap_if 结构的链表中,链表的每项
10、内容含有全面的网卡信息,而pcap_open_live(const char *device,int snaplen,int promisc,int to_ms,char*ebuf)是专门用于打开指定网卡设备的,第3 个参数如果设置为1,则代表将网卡设置为混杂模式,同时该函数如果调用成功,则返回指定网卡的操作句柄。(2)设置过滤规则:用户可以根据需要设置相应的过滤条件,例如只接收UDP 或TCP数据包,实现过滤规则的设置关键是对pcap_compile(pcap_t *p,struct bpf_program *fp,char*str,int optimize,bpf_u_int32 netm
11、ask)和pcap_setfilter(pcap_t *p, struct bpf_program *fp)两个函数进行正确的配置。(3) 捕获并解析网络数据包:WinPcap 提供了几种捕包函数以适应不同的情况,有的需要有回调函数支持,而有的是支持非阻塞模式的,用户可以根据实际情况进行选择,例如Pcap_loop(pcap_t *p,int cnt,pcap_handler callback,u_char *user)是支持回调的,在回调函数中就可以对所捕获的数据包进行解析。2 MDI 指标研究与分析2.1 视频质量评价标准近年来,国际标准化研究机构非常重视视频质量评估的研究。在1997 年
12、,ITU-T 和ITU-R的研究小组联合在一起成立了视频质量专家组 (Video Quality Experts Group,VQEG),专门从事视频质量评估的研究和相关标准的制定,力图在全球提供一个开放的研究环境。该机构成立以来得到了很多机构和企业的支持,提出了一系列的关于视频质量评估的标准4。目前评定视频质量主要有MDI、V-Factor 、和VQS 等指标。2.2 RFC4445 标准及MDI 指标研究MDI(RFC4445)指标是目前对视频流测试和测量的最好指标,适用于通过网络传输的任何一种媒体流。根据RFC4445 文档定义,MDI 有两部分组成,DF(delay factor)延迟
13、参数和MLR(media loss rate)媒体丢失率5。关于延迟参数DF 值的计算,RFC4445 文档描述,定义一个虚拟的缓冲区VB,缓冲区大小VB=收到的字节数-流出的字节数,计算每一个数据包到达时的VB 值,统计出计算间隔时间内的Max(VB)和Min(VB)得出DF 值。VB 值的具体计算如下:DF=Max(X)-Min(X)/媒体流速度VB(i,pre)=sum(Si)-MR*Ti , j=1 i-1VB(I,post)=VB(I,pre)+SiSi 表示第i 个包的大小;MR:媒体流速度;Ti 表示第i 个包到达的时间。Media Loss Rate (媒体丢包率,简称MLR)
14、:MLR 的单位是每秒的媒体数据包丢失数量。该数值表明被测试视频的传输丢包速率。MLR=(p_expected-p_received)/interval。MDI 用于精确测量和监测影响视频传输质量的网路抖动和延迟,可以准确的反映媒体流的质量,提供比主观观测更加精确的测量结果6。3 系统实现与结果显示该监测系统的主要功能是从海量的数据包中快速过滤出需要的信息,然后通过分析计算打出MDI 分数,从而评价网络传输性能。该系统可以测试多路视频用户,并通过边打分边 显示视频图像的方式是用户能够直观的感受到具体的某项网络性能损伤带来的画面质量损失,而且对于测试计算出的指标画出曲线图,方便工作人员
15、排查故障原因。该监测系统软件安装在通用PC 或平板电脑的Windows 操作系统下,其测试节点位置可以在服务器端,也可以在用户端(如图3.1 所示)图3.1 视频监测系统解决方案的监测范围该监测系统的基本架构图3.2 所示:该监测系统的底层技术是数据包捕获技术,这个技术在数据采集处理模块被采用,主要采用了WinPcap 的接口进行数据包捕获和数据包过滤;在数据存储模块实现了数据的存储和处理;并通过数据显示模块将实时的监测结果显示出来,便于运维人员进行监测。其中数据采集处理模块采用了跨平台的使用WinPcap 作为解决方案的Wireshark 开源软件的底层抓包部分;数据存储模块实现了数据的临时
16、存储和MDI计算,采用了RFC4445 标准规定的算法;数据显示模块主要是利用了跨平台的GTK 架构,这样方便以后向嵌入式或者基于其他操作系统的仪表上进行移植和集成。图3.2 监测系统基本架构该监测系统的结果显示如图3.3 所示(其中横坐标轴均为时间):图3.3 监测系统实时结果显示4 结论经过半年左右的调查,研究和开发,IPTV 视频流监测系统初具雏形,并能在测试环境中可以实现对视频流性能进行实时的评价和监测,对于IPTV 业务运维工作人员有一定的实时指导意义。另外,该监测系统是一个可扩充、跨平台、兼容性好的监测系统框架,可以方便的对其进行扩充和移植,这样对于该监测系统的产品化、仪表化是很有意义的,从而使得该视频流实时监测系统成为可用的系统。在技术层面,该系统底层移植了开源软件Wireshark 的WinPcap 抓包系统;流程中采用 了RFC4445 标准规定的MDI 算法,将获取的数据进行计算得出MDI 指标;上层显示过程中,采取了跨平台的GTK 架构,有助于进行跨平台移植,可以将该视频流监测系统仪表化,有利于其产品化和规模化生产。在理论
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025届河北省永年县一中高一物理第二学期期末监测模拟试题含解析
- 教育技术应用与文化传承的关系研究
- 教育技术中的专利申请与风险规避
- 2025届江西省丰城二中高二物理第二学期期末预测试题含解析
- 2025届广东省广州市番禺区禺山高级中学物理高一下期末调研模拟试题含解析
- 探索教育游戏化如何影响孩子的情绪认知能力
- 教育技术项目的投资规划与风险控制
- 福建省师范大学附中2025年高一物理第二学期期末考试试题含解析
- 医疗培训中融入教育心理学的效果评估
- 技术如何塑造现代办公模式
- 2025至2030年中国森林消防车行业市场全景评估及未来趋势研判报告
- 2025生产与运作管理试题及答案
- 暑假的一次冒险经历记事作文4篇范文
- 入职预支薪资协议书
- 《中国特色社会主义理论体系的形成和发展》(课件)
- 职业技术学院婴幼儿托育服务与管理专业人才培养方案
- 2025台州市椒江区辅警考试试卷真题
- 中学生零食消费情况调查与分析
- 国开本科《管理英语4》机考总题库及答案
- 软装行业竞品分析报告
- 公司收购公司协议书
评论
0/150
提交评论