基于802.11e EDCA的自适应参数调节机制研究
扫描二维码
随时随地手机看文章
1 IEEE 802.11e及其EDCA机制存在的问题
IEEE工作组于2005年底正式推出了IEEE 802.11e协议。该协议增强了原有的IEEE 802.11MAC信道接入方式,并支持优先级QoS和参数化QoS;该协议中包含了两种接入模式,即增强型分布式信道访问EDCA(Enhanced Distributed Channel Access)与混和协调功能控制信道访问HCCA(HCF,Controlled Channel Access)。其中,增强型分布式信道访问(EDCA)是分布式信道访问(DCF)的增强版,只能在竞争期 CP(Contention Period)内使用,提供了不同优先级的QoS。混合控制信道访问(HCCA)则扩展了点协调功能(PCF),在竞争期和无竞争期CFP(Contention Free Period)内均可使用,提供了参数化的QoS。
增强型分布式信道访问(EDCA)机制是目前学者研究的热点,与IEEE 802.11标准的DCF机制相比较其改进主要集中在两个方面:接入控制与碰撞管理机制[3]。
(1)接入控制:在增强型分布式信道访问(EDCA)机制模式下,传送数据类似IEEE 802.11b的分布式协调功能(DCF),依然是基于 CSMA/CA (Carrier Sense Medium Access with Collision Avoidance),它将IEEE 802.11b的访问队列AC从一个队列变为8个不同优先级的队列,不同的AC有不同的任意帧间隔AIFS(Arbitrary Inter Frame Space)、竞争窗口CW(Contention Window)和传输机会TXOP(Transmission Opportunities),对于各式的数据,分别进入其对应的队列。目前的研究以4个队列最为常见,如对于声音、图像、尽力而为(best effort)、背景流(backgound),有其对应的队列和不同的参数设置表,可以让这些队列在竞争信道时的优先级有差异,各队列的传送优先级从高到低依次为:声音(AC0)>图像(AC1)>尽力而为(best effort,AC2)>背景流(backgound,AC3),这样可以使实时性强的数据较快地得到服务。
(2)碰撞管理机制:在802.11e协议中, EDCA机制对来自不同站点的业务(队列)之间没有优先级设置,它们必须通过公平竞争获得信道。协议中除了涉及两个不同站的队列碰撞即真正的物理层碰撞之外,还有一种新的碰撞——虚拟碰撞,也叫内部碰撞。 虚拟碰撞中涉及的碰撞队列来自于同一个站点,如果从某站点发出的几个队列,在某一时间间隙同时完成退避,站点内部的调度器会允许高优先级发送,优先权最高的队列将首先访问信道,之后其他队列将执行与真正的碰撞一样的行为,且其竞争窗口增加了一倍,再次争抢信道[4]。虚拟碰撞实现了队列优先级的区分,同时在某种程度上,加大了队列碰撞的机率。
对于EDCA参数,802.11e标准中给出了一组建议值, 适合于大部分情况下的网络应用。由于WLAN网络业务是随时变化的,在网络规模较大且网络拓扑(负载)变化频繁的情况下,标准中的建议值往往不足以满足业务需求,音视频等实时业务也常常得不到及时的服务,且低优先级业务受到很大的限制。因此对研究具有动态调节EDCA参数的机制就显得尤为重要和迫切,以满足WLAN网络业务QoS的需要。
2 a-EDCA算法机制
802.11b网络处于高负荷状态时,一方面,帧头开销及帧间间隔占用了信道传输时间;另一方面,冲突频繁,有较多的碰撞与重传,从而使业务总吞吐量有所下降。802.11e标准中的EDCA中采用了区分优先级的策略,是以牺牲低优先级业务的带宽为前提的,使低优先级业务受到了很大的限制。当网络规模较大且负载变化频繁,尤其负荷变大时,网络吞吐量严重下降并出现低谷现象。出现这一现象的主要原因是EDCA中优先传输的音频和视频流的帧长较短,传输的帧越短,帧的开销比例就越大,且对背景流和尽力而为业务而言,AIFS与CW都较大,相当于空闲时隙增大,从而导致网络吞吐量下降。遵循什么原则来设置或实时调整EDCA参数是目前学术界关注的热点[5-6],但基于802.11e标准参数建议值进行WLAN性能优化的算法则不多[7],不能满足实际WLAN网络业务的需要。通过对802.11e标准参数建议及实际WLAN网络业务的分析研究,笔者提出了一种自适应调节EDCA机制——adaptive-EDCA机制(a-EDCA)。该算法参数设置仍然以802.11e EDCA中默认的参数为基础, a-EDCA算法参数设置如表1所示。
a-EDCA参数调整机制是根据网络运行的具体条件动态地调整参数 CWmin和CWmax,从而及时适应网络负载的变化。各个接入点AP连续监测网络流量,通过参数调节算法确定CW的值,并广播数据帧到内部其他站点,各站点在收到信息之后以更新后的参数值竞争信道,从而达到公平占用信道的目的。a-EDCA机制算法的基本思想是:接入点AP一直监听网络状态,以1 s作为时间周期来判断网络吞吐量的变化,引入吞吐量变化门限值为0.3 Mb/s,当检测到吞吐量变化量达到门限值时,就及时进行调整。当网络负载变大时,若检测到吞吐量减小,接入点AP将各业务流窗口CW[i]减小为原来的1/2,相对延长了高优先级业务的退避时间,缩短了低优先级业务的退避时间,有效减少了碰撞机率。网络负载减少时,若检测到吞吐量减小,则同时将各业务流的退避窗口CW[i]减小为原值的1/3,减少空闲时间。若检测到吞吐量增大,则同时将各业务流的退避窗口CW[i]增大为原值的2倍。每作一次调整,对4个队列的窗口CWmin和CWmax同时进行同倍数的调整,所以4队列的业务流量比例始终不变,a-EDCA机制算法流程图如图1所示。[!--empirenews.page--]
3 a-EDCA算法仿真分析
为了验证a-EDCA机制算法性能,根据网络实际应用中的具体情况,建立了模拟仿真环境,并利用网络仿真工具对该算法进行了仿真。仿真工具选择NS2,仿真时物理层采用802.11b,物理带宽设为6 Mb/s,整个仿真时间为3 min。开始时假设只有2个站分别发送声音(AC0)、图像(AC1)、尽力而为(best effort,AC2)以及背景流4种业务流。每经过15 s,发送各业务流的移动站增长一倍。60 s时发送各业务流的移动站达到16个,即发送4种业务的站共计64个;在60 s~105 s时间段内,保持64个发送站数目不变;105 s~165 s时间段内,发送各业务流的移动站开始每隔15 s以1/2递减,到165 s时4种业务流的移动站递减到2个;165 s~180 s时间段内,各业务流移动站没有增减变化。分别对a-EDCA、EDCA算法的整体吞吐量及a-EDCA、EDCA算法4种业务流的吞吐量进行了仿真,仿真结果如图2、图3及图4所示。图3、4中AC0为声音,AC1为图像,AC2为尽力而为, AC3为背景流。
从图2的仿真结果可以看出,a-EDCA使整个网络的吞吐量基本稳定在5 Mb/s左右,与EDCA相比较信道利用率得到了很大的提高。从图3与图4的仿真结果可以看出,在a-EDCA算法中,4种业务流的比例基本保持稳定,在为音视频实时业务提供及时服务的前提下,保证了高低优先级业务的公平性。
本文提出的a-EDCA算法能够根据当前的网络负载及业务分布情况来动态调整EDCA参数,以达到自适应网络业务需求的目的,实现了网络性能的最优化。通过仿真分析可知,该算法在为音视频实时业务提供及时服务的同时,保证了低优先级业务的带宽,提高了信道利用率。文中的站点来自于同一个站,主要是为了研究虚拟碰撞问题,不同站之间的竞争依然基于DCF机制,因此本文提出的算法在无线局域网中具有较大的推广应用价值。