基于IEEE 802.11无线局域网的视频流接入控制
2008-05-20
作者:马 杰, 刘元安, 冯锡平
摘 要:从理论上分析了基于IEEE 802.11b无线局域网" title="无线局域网">无线局域网的UDP可用带宽,重点分析了视频码流数目N、视频帧率与视频帧的平均帧长度间的关系,给出了分析结果。在此基础上,说明了无线局域网上视频流" title="视频流">视频流接入控制机制的必要性。实验结果表明,其结果很好地反映了802.11无线局域网上视频码流传输的实际特性,为实现基于IEEE 802.11无线局域网的视频流接入控制提供了依据。
关键词:无线局域网 视频传输 DCF机制 丢包率 接入控制
随着WLAN应用的普及,除数据业务外,更多的用户要求WLAN上能够承载视频业务,WLAN上的视频传输已成为一个研究热点。由于视频流的实时性要求使用UDP协议作为承载协议,因此基于802.11的UDP协议分析是研究基于WLAN视频传输的关键。由于UDP协议是一个无连接协议,发送端与接收端" title="接收端">接收端不建立连接且不提供数据正确传送的保证机制,因此在利用UDP传输视频时,必须近似估计出UDP的可用带宽。如果视频流的输出带宽大于可用带宽,那么在传输过程中将会导致高视频丢包率和大时延" title="时延">时延值,接收端图像质量严重下降,影响视频通信的效果。文献[2]给出了基于802.11b的UDP可用带宽与用户数的关系,文献[3]给出了UDP可用带宽与VOIP语音终端数目的关系,重点分析了音频数据包的采样间隔和编码类型对UDP吞吐量的影响。文献[4]在文献[3]的基础上给出了基于802.11的VOIP系统的接入控制机制,保证VOIP语音终端的数目小于系统所允许的最大值,防止由于接入用户数过多引起每个VOIP终端系统性能的严重下降。本文重点分析了当UDP承载视频流时的性能,首先从时延值和丢包率的角度分析了承载视频流的UDP性能与视频流数目的关系,给出了一定条件下单个视频所占用的UDP可用带宽。在此基础上,说明了基于802.11 WLAN的视频流接入控制机制的必要性,分析了图像质量要求对视频码流接入数目的影响,并且指出了视频码流接入控制机制的实现途径。最后,通过搭建相应的实验平台对理论进行验证,并给出了实验结果。
1 基于DCF的视频码流可用带宽分析
1.1 DCF接入控制机制
IEEE 802.11定义了两种访问机制:DCF机制和PCF机制。虽然PCF是针对实时业务制定的,但是PCF在当前的产品中并未实现,因此本文主要讨论DCF下的视频传输。DCF基于CSMA/CA协议,只提供“尽力而为”的异步传送方式,DCF包括基本的接入方式和使用RTS/CTS帧的接入方式,本文主要考虑基本DCF的工作机制。802.11标准中,通过帧与帧之间的间隔IFS来控制对无线媒体访问的优先级,有3种类型的帧间隔:短IFS、PCF IFS(PIFS)和DCF IFS(DIFS)。基本的DCF工作机制如下所述,如果在MAC检测到有一帧数据等待发送,站点首先检测媒体是否空闲,如果空闲并且空闲的时间超过DIFS间隔,则站点可以立即发送该数据。如果检测到媒体“忙”,那么站点持续侦听,直到媒体再次空闲且空闲的时间大于DIFS间隔,此时,媒体并不立即发送数据,而是选择一个随机避让时间,在该时间结束后立即发送数据。如果在避让的过程中,检测到媒体空闲,则减小避让计数器的值;当检测到媒体又处于忙的状态,则冻结计数器,直到媒体再次空闲后重新启动该计数器。当一个分组被正确接收后,接收端要在SIFS间隔内发送一个用于确认上一帧数据被正确接收的ACK帧,对接收到的分组进行确认。如果源站点在SIFS间隔内没有接收到ACK帧,则假定上一帧数据发送失败,将避让计数器的值CW加倍后,重新发送该帧数据。在站点正确发送一帧数据完毕之后,即使持续检测到媒体空闲时间大于DIFS间隔,为了保证BSS内的多个站点之间“公平”占用无线媒体,站点也不立即发送数据,而是必须启动避让计数器,执行避让过程,即使当前BSS中只有一个接收端和一个发送端。典型的MAC层数据帧" title="数据帧">数据帧的传送过程如图1所示。
1.2 视频码流可用带宽分析
文献[2]的第2部分分析了802.11b的可用带宽,在此基础上,给出了802.11b用于承载视频时的UDP可用带宽和视频码流数目N以及帧率之间的关系,引用文献[2]的部分公式和结论。这里首先假设一个BSS内有N个同样统计特性的视频码流,视频帧的平均长度和帧率相同。N表示单向码流数目,如果当前BSS内有N0个站点完成双向视频码流传输,那么此时N取值为2N0。视频帧经过RTP/UDP/IP/MAC 4层封装。如果IP层分组大于MAC层的MTU值,在IP层将对该分组进行分段处理,基础结构BSS模式下MTU值为1 500字节,除去RTP/UDP/IP帧头的12/8/20字节,视频帧长度允许的最大值为1 460字节,在发送视频帧之前,按照最大值1 460长度对视频帧进行分割。
由视频流的实时性可知,在下一个视频帧到来之前,前一个在缓冲区内等待被发送的视频帧应该被正确传送出去(这里假设缓冲区已满,且不影响下面的推导和结论),否则,下一帧由于不能被正确发送而导致丢失,称这一假设为条件1。假定无线链路的误码率很低,在无线链路上没有数据丢包现象发生,主要考虑视频流由于“过载”而导致缓冲区“溢出”,进而带来视频数据帧的丢失情况。假定帧率为K帧/s,每帧数据从进入缓冲区到被正确发送所允许的最大时间间隔为TP,取值为TP=1/K秒,K通常取值30、20或10等。假设视频帧的平均长度为Lavg,视频码流数目为N的前提下,为了满足条件1,公式(1)必须成立:
N·Tf≤Tp ( 1)
其中Tf为正确发送一帧视频数据所用的时间,包括视频帧长值加上开销字节的和大于1 500字节的情况。这里引用文献[2]中的部分推导和结论,在视频帧长为L且L值小于或等于1 460字节时,正确完成一帧传送所用的时间为T,则可知:
DIFS和SIFS的取值为固定值,802.11b中的取值分别为50μs和10μs;tpr的取值是发送PLCP帧头和前导序列的时间,为与802.11兼容,802.11b标准规定PLCP帧头和前导序列用1Mbps速率发送。PLCP帧头和前导序共192b,耗时192μs;tack为R工作速率下发送14字节ACK帧体的时间;ttr工作速率为R时,发送一帧PSDU所用的时间,单位为μs,取值如下:
R的取值为802.11b规定的4种物理速率:1Mbps、2Mbps、5.5Mbps和11Mbps,这里固定R的取值为11Mbps,Lrtp、Ludp、Lip、Lmac和Lcrc的大小分别为12、8、20、30和4字节。公式(2)中tcont为1.1节中所述的视频帧发送数据之前的“避让”时间,其取值为一个随机值,这里取其概率平均值,简化了文献[2]结论。由于考虑视频流传输占用的带宽较大,假定N取值较小,因而忽略文献[2]公式(4)中Pc(N)的取值,也就是忽略N0个站点在DIFS间隔后,“至少有两个站点选择同一个时隙SLOT进行发送”的概率。在N取值较小时,该假设对tcont的取值并没有大的影响。因此,给出:
在T值己知的条件下,正确发送一帧视频数据所用的时间Tf,可以由T计算得出,这里假定视频帧的平均长度满足公式(8),表明按照最大切割长度LMTU、分割长度为Lavg、视频数据帧可分割为m个长度为LMTU的视频帧和一个长度为Lseg的分段。
公式(10)中,C、D和R的取值为常数,m的取值与Lavg相关,是Lavg除以LMUT取整的值。因此,公式中只有Lavg和N两个变量。将已知的DIFS、SIFS和其他常数代入公式(10),得到公式(11),其中Lavg的单位为字节,Tp的取值为μs。
固定N的取值,计算Lavg值,得到下面的结果。图2是视频帧长与码流数N的关系,其中横坐标是视频码流数目值,纵坐标是对应N值下视频码流所允许的视频帧平均长度的最大值。
在Tp、N和Lavg取值已知的情况下,可以得到在不同Tp值下,每个站点用来传输视频码流的可用带宽随着N取值变化的情况,图3给出了比较结果。以帧率为30帧/秒分析,从图3中可以得知,理论上单个站点的视频码流可用带宽的最大值可以达到6.5Mbps,随着N取值的增加,视频码流带宽值逐步减小,在N取值为14时,理论上的最大可用带宽值为360kbps。同样N取值的情况下,帧率为10帧/s时视频码流带宽最大,30帧/s时视频码流带宽最小。
1.3 WLAN的视频流接入控制
在上面的假设和分析的基础上,结合视频码流的统计特性,可以给出设计基于802.11的视频流接入控制机制的必要性和实现途径。在N取值一定时,视频数据包的平均长度必须小于一定值,否则一段时间过后,缓冲区将会溢出导致时延值过高和数据包的大量丢失,控制视频数据包的长度可以通过更改量化系数QP或者其他方法进行。进而,在帧率一定和平均长度受到限制的前提下,视频码流的输出速率必须小于一定的值,这就要求在视频码流发送端必须有一定的速率控制机制。在N值一定时,视频码流的接入控制主要在视频流的发送端实现,在得到当前视频码流数目的前提下,必须通过速率控制机制或者通过更改QP值等方法控制视频码流数据帧的长度和视频码流的输出速率。
另外一方面,如果视频码流的图像质量和视频数据帧的平均长度受限时,即在丢包率满足最小要求的前提下,接收端的视频数据解码后,图像的PSNR值必须大于一定值、接收端在发送视频数据帧时,视频数据帧的长度必须大于一定值才能保证图像的输出质量满足要求。此时,必须在发送端控制视频码流的接入数目,否则,当N值大于所允许的最大值时,同样会导致视频帧产生高时延值和视频数据包的大量丢失。在视频帧长度和视频码流输出速率一定的前提下,视频码流的接入控制机制应该在AP上或者通过统一的服务器控制来实现。在视频帧长度已经确定的情况下,在新的视频码流需要接入时,首先检测当前BSS内的视频码流的数目,判断是否已经饱和。如果N值已经达到饱和,为保证单个视频码流的图像质量,此时应拒绝新的视频码流的接入。
2 实验以及结果分析
为验证上面的理论分析,搭建相应的实验平台设置一个典型的室内办公室环境,在办公室内设有一个DLink公司的AP,其型号为D1-614+;在100M以太网上与AP相连的PC机做为视频通信的一端,在室内有若干配有USB接口无线网卡的台式机和笔记本作为视频通信的另一端,网卡的型号为DWL-120+。在这里,为了保证无线网卡与AP处于“最佳”的通信状态,设置所有的网卡均匀分布在AP周围,同时设置网卡的速率为11Mbps;在以太网上没有其他数据流对视频流的传输产生干扰;设置笔记本为视频的发送端,PC机为对应的视频的接收端;在视频发送端利用MPEG-4编码器[5]对标准的测试序列进行压缩编码,编码的帧格式为IBBPBBPBBPBBI排列,利用TM5算法控制视频帧的切割长度。首先,固定PC机和笔记本的数目及视频码流数目,改变视频帧的编码长度,发送视频码流,在视频的接收端观察视频码流的接收状况。在此基础上,改变视频码流的数目,重复进行实验,观察不同码流数目和视频帧长度下每个视频码流终端的视频数据包接收状况,部分结果如下所述。
图4给出了帧率为30帧/s,一台笔记本与对应的PC机完成双向视频传输,码流数目N值为2,帧长度为12 500字节和13 000字节时,视频码流的丢包率状况,其中12 500字节是公式(11)和计算得出的理论上视频帧平均长度的最大值,图中给出的是截取180s内丢包率的值。从图4可以得知,当帧长为12 500字节时,在视频双向传输的过程中基本上没有数据包丢失;而帧长增加到13 000字节时,丢包率明显增加,均值在3%以上,最大值达到14%,如此高的丢包率将会导致视频质量的严重下降。由于无线链路处于“最佳的”工作状态,不存在由于误码率过高导致数据包丢失的情况,数据包的丢失主要是因网络拥塞和时延值过大导致的。因此,通过实验测试得知,当帧率为30帧/s和码流数目为2时,视频帧的平均切割长度应该小于12 500字节,才能保证接收端得到较好的图像质量。图5给出了帧率为20帧/s,码流数目为2时,帧长为19 000字节和20 000字节时丢包率的对比情况,可知视频帧的切割长度必须小于19 000字节。同样,通过图6可知,帧率为10帧/s时,视频码流数目为14时,最佳长度为5 500字节。对比上面理论计算得到的最佳值,实验得到的最佳取值和理论计算所得到的值十分接近,比理论值略小,随着视频码流数目N的增加,实验值和理论值的偏差略微增大,这主要是由于AP定期发送信标帧导致。此外,随着N取值的增加,公式(6)中用来估计“避让”的时间比实际所用的时间少,因此也导致实验测试的值比理论计算值略小。从图4~图6的实验结果可以得知,前面的理论分析方法和结果可以做为802.11上视频码流接入控制机制的理论基础和参考依据,在视频码流数目N一定的情况下,视频帧的平均切割长度必须小于一定值。
为了说明“视频码流帧长受到限制时,视频码流数目N必须小于所能允许的最大值”这一个结论,图7在图4的基础上给出了视频码流N值从14增加到16时丢包率的对比情况。假设为了保证接收端图像的质量,发送端视频帧的长度不能小于5 500字节。从中可以得知,当N值增加到16时,视频码流丢包率的平均值大于20%,已经不能完成正常的图像通信。因此,为了保证已经存在的视频码流的带宽和单路的图像质量,在无线局域网上必须设有一种码流接入控制机制,当检测到视频码流数目N值已经达到饱和状态时,应该拒绝增加新的视频码流数的要求,以保证已经存在的视频通流完成正常的通信。
在前面实验的基础上,利用文献[6]给出的视频码流传输的评估工具,可以得到不同视频码流数目和视频帧长度下的丢包率、时延抖动和图像传输质量PSNR值。
论文从理论分析并通过实验测试了基于IEEE 802.11b的UDP可用带宽,重点分析和测试视频码流数目N、帧率和视频帧的平均长度之间的关系,为无线局域网上视频传输系统的设计和视频码流接入控制机制的实现提供了重要的参考依据。一定误码率条件下的带宽分析以及接入控制机制的实现将在今后的工作中展开。本文中的分析方法和实验方法同样适合于基于802.11a和802.11g WLAN的视频传输系统。
参考文献
1 ANSI/IEEE.802.11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications, 2000
2 Martin Heusse,Franck Rousseau,Gilles Berger-Sabbatel et al.Performance Anomaly of 802.11b. In: Proceedings of IEEE INFOCOM 2003, San Francisco, USA, 2003
3 Sachin Garg and Marthin Kappes. An experimental study of throughput for UDP and VoIP traffic in IEEE 802.11b net-works. IEEE WCNC 2003;3(3):1748~1753
4 Sachin Garg,Martin Kappes. Admission control for VoIP traf-fic in IEEE 802.11 networks. In:IEEE Global Telecommuni-cations Conference, 2003
5 Winder S A J. Version: Microsoft-FDAM-1-2.3-001213 User Manual, 2004
6 Klaue J, Rathke B, and Wolisz A. EvalVid-A framework for video transmission and quality evaluation. In: Proc of the 13th International Conference on Modelling Techniques and Tools for Computer Performance Evaluation, Urbana,Illinois, USA,2003(收稿日期:2006-02-23)