- UID
- 863084
|
随着网络技术的发展和应用,用户对网络的移动性和可靠性要求越来越高,基于IEEE 802.11系列标准的无线Mesh网络近年来得到了快速、广泛的应用。在无线Mesh网络中,任何无线设备节点都可以同时作为接入点(AP)和路由器,网络中的每个节点都可以发送和接收信号,每个节点都可以与一个或者多个对等节点进行直接通信。但由于无线网络本身的特性和多种物理层传输技术的应用,合适的媒体接入控制MAC协议对无线Mesh网络至关重要。
在无线Mesh网络中应用的MAC协议包括:CSMA/CA、DCF、PCF等,为了在MAC子层实现对不同业务流的QoS支持,IEEE 802.11e工作组在IEEE 802.11中DCF机制的基础上提出了增强分布式信道接入机制(Enhanced Distributed Channel Access,EDCA),使得无线Mesh网络可以更好地提供音频和视频业务的服务。
EDCA将不同的业务流分为4个不同的优先等级AC(Access Categories),每一个AC对应一个队列,通过设置仲裁帧间间隔(Arbitration Interframe Space,AIFS)、最小竞争窗口值CWmin、最大竞争窗口CWmax和传输机会TXOP(TraNSmission Opportunity)4个参数值实现不同业务流间的业务区分。文献研究表明,由于无线网络状况的移动性和复杂性,EDCA算法中4个参数的静态设置并不能使无线网络的性能实现最优,特别在高负载或突发业务量较大的状况下,由于无线网络中有较高的冲突率,EDCA的网络性能急剧下降,无法满足网络用户的要求。也有相关研究通过CW的自适应调整机制及相关退避算法的改进,如Lamia Romdhani提出的AEDCF机制(Adaptive EDCF,AEDCF);Younggoo Kwon提出的快速碰撞解决机制(Fast Collision Resolutio,FCR)等,使得EDCA算法更适合无线网络环境。但这些研究都没有考虑EDCA算法本身及参数AIFS、CWmin、CWmax和TXOP调整后对无线Mesh网络公平性(节点间和不同业务流间)带来的影响。
本文提出了一种基于公平的EDCA算法(Fairness-based EDCA,FEDCA)。FEDCA算法的基本思想是通过加权轮询的方式确定传输的数据接入类别和本次信道侦听的时间,通过公平因子的计算确定TXOP参数,以达到保证网络公平性的条件下提高网络性能和QoS保证的目的。并通过仿真结果验证该算法的可行性。
1 EDCA算法
EDCA是IEEE 802.11e工作组在IEEE 802.11协议中DCF机制基础上进行QoS支持提出的,其基本的接入信道方式与DCF保持一致,各移动节点以CSMA/CA方式通过竞争获得信道接入的机会。同时EDCA提供了不同类型业务数据传输的多种信道接入类别AC,可以实现不同业务的服务区分。
1.1 EDCA算法简介
为保证不同业务的不同QoS要求,EDCA算法定义了上层的8类业务类别(Traffic Category,TC)和本层的4类基于IEEE 802.1D的接入类别(Access Category,AC),8类TC分别映射至4类AC的队列中:AC_VO,AC_VI,AC_BE和AC_BK,分别代表语音(Voice)类,视频(Video)类,尽力而为(Best Effort)类和背景(Background)类的业务。为实现4个AC队列不同优先级的区别,定义了4个参数:仲裁帧间间隔AIFS、最小竞争窗口值CWmin、最大竞争窗口CWmax和传输机会TXOP.不同的AC通过不同的参数设置,控制其接入信道的过程,从而实现了不同业务类型的区分。
某一移动节点通过两个阶段实现一个AC队列内的数据发送。首先在一个节点内部争夺传输机会TXOP,获得传输机会的队列才有可能获得信道接入的机会。其次,获得信道接入机会的分组再在不同的节点间通过CSMA/CA方式获得信道接入机会才可以进行数据传输。EDCA算法完成数据传输第一阶段的任务:不同队列通过竞争获得传输机会。
IEEE 802.11e EDCA的基本访问机制如图1所示。
图1 IEEE 802.11e EDCA的基本访问机制
当因竞争信道发生冲突时,就进入退避过程。在此过程中,将退避计数器Backoff Timer置为[0,CW[AC]]范围内的任一整数值:Backoff_Timer(BT)=uniform[0,CW]×aSlotTime.CW[AC]的初始值设为CWmin[AC].当发生碰撞时,CW[AC]的值就增加为(CW[AC]+1)×2-1,当CW[AC]增加到CWmax[AC]时,就维持CWmax[AC]的值不变,不再增加。当数据帧成功发送之后,将CW[AC]的值重置为CWmin[AC],继续侦听信道。退避计时器每检测到一个空闲时隙,其值(BT)减1,最先减到零的数据帧占用信道,若节点内多个AC的退避计时器同时减到零,则较高优先级队列的数据帧将占用信道,其他数据帧又进入新一轮的退避过程。
1.2 EDCA算法分析
从图1中可以看出,较高优先级的AC通过设置较小的AIFS、CWmin和CWmax将优先获得无线信道的访问权,从而实现不同不同业务的业务区分。IEEE 802.11e标准中给出了一组EDCA参数建议值,适合于大部分情况下的网络应用。但由于无线网络本身的移动性和可扩展性,在网络规模较大或网络流量动态变化时,标准中的建议值会对无线Mesh网络各移动节点及某一节点下的不同业务流造成不公平的现象,具体体现在以下几个方面:
(1)AIFS、AIFSN设置值导致节点间的不公平性。IEEE 802.11e标准中给出AIFS[AC]=aSIFSTime+AIFSN[AC]×aSlotTime.网络中所有移动节点AIFS、AIFSN值相同,这样有可能在网络中引起准同步现象(某一节点本次通过竞争获得信道使得下次竞争获得信道的概率增大)的出现,导致无线网络中其他节点多次竞争而无法获得信道的现象频繁出现,从而使得不同节点接入信道、共享资源的不公平,同时进一步降低网络链路的利用率,影响业务流的服务质量。
(2)AIFSN值的固定设置导致不同等级业务流间的不公平。由于高优先级的AIFSN值较小,在高优先级需传输的数据较多的情况下,低优先级的业务流在竞争信道时始终无法获得信道,必然导致低优先级业务的“饥饿”现象。
(3)CWmin和CWmax的设置。从EDCA的基本访问机制来看,CW[AC]的值成为影响AC队列发送数据和发送数据失败后重新竞争获得信道的关键因素。CWmin和CWmax值虽然实现了不同业务间的业务区分,但在网络高负载情况下,同样会导致低优先级业务的“饥饿”现象。
(4)TXOP的设置。TXOP反映了获得数据发送机会的队列最大发送数据帧数。如果采用IEEE 802.11e标准中的参考值,就会导致不公平的信道竞争机制在各业务流间更大的不公平。
(5)EDCA算法没有考虑节点的移动性及信道干扰导致误码对网络公平性的影响。
基于此,为提高无线网络的公平性、网络性能及不同业务流的QoS保证,FEDCA算法对EDCA算法中的AIFSN、CWmin、CWmax和TXOP四个参数依据公平性原则进行调整,以保证移动节点间和不同等级业务间的公平。 |
|