基于NS-2的无线网络视频QoS平台的实现
随着无线网络技术的飞速发展,无线多媒体通信的业务量将远远超过传统业务。视频业务,特别是实时视频业务将是未来无线网络业务的主体,因此面向无线网络的视频QoS保障问题成为新的研究热点。在QoS保障机制的研究过程中,由于网络的复杂性和经济条件的制约,网络仿真技术非常重要。网络仿真技术通过建立网络设备和网络链路的统计模型,并模拟网络流量的传输,从而获取网络设计或优化所需的网络性能数据。
在分析EvalVid 工具集的基础上,结合NS技术,提出一种利用NS-2建立无线网络中图像QoS研究仿真平台的方法。NS支持的协议广泛,采用开放的体系结构,用户很容易根据需求开发新的协议,因此使用NS针对具体的无线视频业务研究网络传输策略及其传输性能非常合适。
2 网络视频的QoS研究
Jirka Klaue给出统一评价视频传输质量的框架和工具集一EvalVid。EvalVid具有模块化结构,可在所用的的视频编码策略下,通过trace文件实现网络之间的交互作用,很容易在任何网络环境下使用。EvalVid评估框架如图1所示。
(1)信源视频信源可能是QCIF(176×144)或CIF(352×288)格式的YUV视频信息。
(2)视频编码器和解码器用来对YUV视频进行编解码以适应网络的传输,编码策略可采用MPEG,H.261等。
(3)视频发送器 VS从编码的视频文件中产生trace文件,即视频trace文件和发送trace文件。VS读取视频编码器输出的视频压缩文件,将大视频帧分成较小的分段以在网络环境中经UDP分组传输。发送trace文件记录每个传输的UDP分组时间戳,分组id和分组负载大小。视频trace文件记录视频文件中每个帧的信息。视频trace文件和发送trace文件在随后的视频质量评估中使用。
(4)评价trace利用原始编码视频文件、视频trace文件、发送trace文件和接收trace文件中记录的分组时间戳、分组id和分组载荷大小等信息,ET产生一个帧/分组丢失、帧/分组延时抖动报告和一个重建的视频文件。
(5)重建视频数字视频质量的评价通过逐帧比较实现。如果选用的编解码器不能处理丢失的帧,则通过插入最近成功解码的帧代替每一个丢失的帧的错误隐藏技术处理。
(6)主观和客观质量评价(PSNR、MOS)主观质量评价直接反映人眼的感觉,是相对较为准确的图像质量评价方法。常用的指标是基于5级质量制或5级损伤制的平均意见分(MOS分)。视频图像质量的客观评价通过某些数学准则衡量,常用峰一峰信噪比(PSNR)。其定义如下:
式中,M和N是视频帧的宽度和高度的维数;x(i,j)和x'(i,j)是原始像素和重构像素在(i,j)点的亮度或色度值。
Chih-Heng Ke等将EvalVid和NS-2结合,给出视频流质量评估的新工具集。NS-2和EvalVid的结合通过3个连接模拟代理实现,即MyTrafficTrace,MyUDP和MyUDPSink。设计这些接口既要读取视频trace文件,又要产生视频传输质量评估用的数据。
MyTrafficTrace代理从VS的输出文件中提取视频trace文件的帧类型和帧大小。此外该代理将视频帧分割成小的分段,并在适当的时间发送这些分段至低层UDP,发送时间由用户在模拟描述文件中设定。
MyUDP是UDP代理的延伸。此新代理允许用户指定发送trace的输出文件名。它记录每个传输分组的时间戳,分组id和分组大小。
MyUDP代理的任务对应于在真实网络环境中的cp-dump或win-dump工具的任务。MyUDPSink是接收代理,接收MyUDP发送的视频帧分组,此代理也在用户指定的文件中记录每个接收分组的时间戳、分组id和负载大小。在此基础上扩展,提出一种适合无线视频传输的质量评价体系。
3 基于NS-2的无线网络视频QoS平台实现
3.1 NS-2中的无线模块
NS中的无线模块最初由CMU的Monarch 工作组引入到NS。由CMU/Monarch引入的无线模块可进行纯无线网络仿真,扩展后的无线模块还支持无线和有线网络联合仿真以及移动IP。还有一些其他无线模块可在NS-2中使用,包括Blueware,Blue2Hoc,Mobiwan,GPRS,CIMS等。无线模块以MobileNode为基本核心,并通过一些附加特性以支持多跳Adhoc网络和无线局域网仿真。MobileNode由基本Node增加无线和移动节点所需功能,可在OTCL中设定其各种网络构件,如链路层(LL)、连接到LL上的ARP模块、接口队列(ifql、ifqlen)MAC层和网络接口等。移动节点通过网络接口连接到无线信道上。目前MobileNode支持的ad-hoc路由协议包括DSVD、DSR、TORA和AODV。
3.2 无线网络视频仿真的过程
由于在视频传输的仿真中,需在网络中传输真实的视频码流,凶此必须扩展并修改NS-2,添加视频传输仿真过程所需的网络元素,包括代理,即MyTrafficTrace、MyUDP和MyUDPSink。如果研究者要验证其提出的传输策略,则需使用C++和OTcl对网络元素编程,将其提出的策略加到网络元素中,然后重新编译NS。在完成对NS-2的扩展后,就可利用NS进行仿真。过程如下:
(1)利用选定的视频编码器对原始视频编码,并从中提取视频分组的相关信息,编写程序产生传输用的trace文件。trace文件的格式为分组序号,时间戳,分组大小>。
(2)根据所研究的真实网络的特性,设置物理层(MAC层)的基本属性;建立各种节点并配置其参数,设定节点的运动特性;配置网络拓朴结构,确定链路的基本特性,如延迟、带宽和选择策略等。
(3)建立协议代理,将协议代理绑定到相应的节点上,建立代理之间的连接;确定网络上的业务量分布,将视频业务量和各种背景业务量绑定到相应的协议代理上。
(4)设置Trace对象。Trace对象把仿真过程中发生的特定类型事件记录在trace文件中。NS-2通过trace文件保存整个仿真过程。仿真完成后,可以分析研究trace文件。
(5)编写其他辅助过程,设定仿真结束时间,至此OTcl脚本编写完成。用NS-2解释执行已编写的OTcl脚本。
(6)分析trace文件,得出所需的数据。也可用Nam等工具观看网络仿真运行过程。根据trace文件判断编码产生的压缩视频分组流中哪些分组要在传输过程中丢失。基于该方法,可以从压缩视频文件中丢弃传输丢失的分组,从而产生新的传输后的视频压缩文件。
(7)利用视频解码器对传输后的视频压缩文件进行解码,从主观和客观上可观察视频的传输质量。
平台 实现 QoS 网络视频 NS-2 无线 基于 相关文章:
- 智能手机差异化从主平台到外围(05-10)
- Telefonica新智能测试平台整合M2M通信测量(02-21)
- 以软件为核心的无线测试平台的设计(03-18)
- 支持终端一致性测试的TD-SCDMA协议测试平台(03-28)
- 基于ARM平台的RFID中间件系统设计(05-16)
- 物联网跨平台设计如何做?十大策略来帮你!(02-03)