APP下载

基于最大传输机会的无线网格网络拥塞缓解策略

2012-01-05曾晓丽

成都信息工程大学学报 2012年2期
关键词:队列控制策略信道

李 帅, 曾晓丽, 胡 伟

(成都信息工程学院网络工程学院,四川成都610225)

0 引 言

近年来,无线局域网(WLAN)在接入领域中得到了迅速发展,依据其数据传输速率的较大优势,WLAN被认为是3G或后3G移动数据通信的一个主要竞争者。但WLAN也有不足之处,其中最主要的一个就是接入点(AP)的覆盖范围有限,若要在一个相对较大的区域提供无线覆盖,就需要配置多个接入点,因而增加了网络建设成本。因此近年来人们把目光转向一种新的网络结构——无线Mesh网络(WMN)。WMN是一种高容量、高速率的分布式网络。从组网方式讲,WMN可以看成是WLAN和移动Ad hoc网络的融合,具有较强的灵活性和健壮性。自IEEE802.11WLAN工作组于2004年成立Mesh任务组以来,针对WMN的802.11s协议草案已经成功问世,预计在2012年年底正式的协议标准可以出台。

早期的无线网络拥塞控制研究都把注意力集中在甄别数据包的丢失是由无线信道冲突还是拥塞造成的[1-2]。文献[1]提出一种间接的TCP协议,针对无线网络采用改进的协议可以通知上层无线网络断开、移动和其他的无线链路参数,如可用信道容量等,但是方案破坏了TCP连接的端对端语义。

目前关于无线网络的拥塞控制主要是在TCP拥塞控制的基础上进行一些改进,多是在传输层实现或者在传输层结合底层的一些信息进行跨层设计,如文献[3-4]。文献[5]使用跨层设计将拥塞控制移至MAC层,提出NTCP的算法,基于802.11 DCF的MAC层修改添加了两种新帧NTR(Not to Receive)和FRTS(Future Request To Send)。拥塞节点用NT R帧告诉邻居节点发生拥塞,不在接受数据,之后立刻进行发送数据,拥塞节点采用FRTS代替RTS告诉邻居节点还有多少数据未发送完毕。方法采用对流入数据和流出数据对比的方法获取拥塞状态,当流入数据大于流出数据是即认为发生拥塞。算法对拥塞反应灵敏,能够很快的对拥塞节点作出反应。相比传统的TCP-Reno,NTCP吞吐量更加稳定,端到端的延时也明显小于传统TCP层的拥塞控制算法。但算法没有实现不同业务不同区分,无法提供Qos。文献[6]也采用跨层设计的方法,MAC层同样采用802.11 DCF,针对节点上通过的数据流建立轻量级的数据库用于记录流的源地址和最后一次的更新时间,设计了两个新的模块,拥塞评估模块和速率调整模块。拥塞控制模块利用存放流信息的数据库和MAC层的丢包信息对当前节点的拥塞状态进行评估,如果出现拥塞将向应用层发送拥塞报告,并触发速率调整模块,速率调整模块根据拥塞评估信息进行计算决定需要调整的速率,应用层修改新的发送速率。该策略利用跨层设计,将MAC的丢包信息迅速的反映到上层的速率调整,拥塞控制灵敏迅速,网络的性能指标吞吐量、延时、丢包等都得到了显著的提高,是跨层拥塞控制设计的代表。但研究没有采用最新的802.11e里面的EDCA接入机制,无法在MAC层接入的时候就对不同的业务提供Qos服务。

在链路层实现拥塞控制最早是在802.11s草案[7]中提出。武昌盛,方旭明等[8]将经济学的定价理论应用到无线多跳网络的拥塞控制中,基于IEEE802.11s提出了基于定价理论的拥塞控制策略,通过统计4类业务接收发送速率差,对业务定价,将定价信息反馈到上游节点,调整竞争窗口达到拥塞控制,在网络拥塞比较严重的时候会加剧信道竞争,增加信道竞争造成的时间开销。文中研究的无线Mesh网络中的拥塞控制策略是在802.11s协议草案的基础上进行改进,针对前人研究调整信道竞争参数存在加剧拥塞的情况,根据拥塞情况动态分配发送机会TXOP。

1 IEEE802.11s中的EDCA接入机制

在802.11s草案中采用802.11e EDCA(Enhanced Distributed Channel Access),定义了4种不同的信道接入类别AC(Access Category),每个接入类别对应不同优先级的业务数据。为了针对不同优先级的业务数据提供有区别的服务质量,EDCA规定每个AC都有一个独立的分组发送队列,并且不同的AC执行相互独立的退避算法为其队列中分组竞争信道的接入使用权。每个AC的使用不同的接入参数来竞争信道。这些参数包括:最小竞争窗口(Congestion Window min[AC])、最大竞争窗口(Congestion Window max[AC])、AIFS[AC](Arbitration Inter Frame Space)、TXOP[AC]。

当节点某个AC队列中有数据要发送并且当前信道处于忙碌状态,节点启动对应AC的退避计数器,计数器的初始值在[0,CW[AC]]区间上随机选择一个整数值,每检测到信道连续空闲达到AISF[AC]时间后减1,减到0时,节点开始发送数据或者RTS(Require To Send)帧。如果节点内多个AC退避计数同时减为0,优先级高的节点先发送,低的按发送碰撞处理再次退避。节点内的AC是否成功竞争到信道的使用权取决于是否在发送RTS帧后的短帧间隔内收到CTS(Clear To Send),收到CTS的AC将在TXOP[AC]长的时间里可以连续发送多个数据分组而无需再次竞争信道。

在EDCA竞争机制下信道的竞争变成了节点内不同优先级AC的竞争和节点间AC的竞争。因此拥塞的检测和拥塞控制对象都需要从节点转移到节点内各个AC队列。TXOP值不随着转发节点的拥塞程度改变,会带来业务间和节点间的不公平的性[9]。因此提出一种根据节点各个AC发送队列状态动态改变TXOP[AC]的拥塞控制策略。

2 拥塞控制策略

2.1 802.11s草案中的拥塞控制策略

802.11s草案中提出的拥塞控制是在数据链路层实现的,采用hop-by-hop的逐跳拥塞控制方式,拥塞控制分为“本地拥塞检测”、“拥塞控制信令交互”和“目标速率控制”,通过检测本地各个AC业务的发送速率和接收速率差来判断是否向上游节点发送拥塞控制信令,如果接收速率大于发送速率就通过拥塞交互信令通知上游节点提高AIFS来减缓CW(竞争窗口)的减小速度以达到降低节点信道接入优先级,相反的接收速率小于发送速率就降低AIFS来加快上游节点CW的减小速度从而提高上游节点的信道接入优先级。

草案中的拥塞控制策略在网络初始阶段各个节点的AC发送队列中待发送的数据分组不多的时候能够起到很好的拥塞控制效果,网络运行一段时间后处于无线Mesh网中间转发节点中的各个AC发送队列被需要转发的数据分组几乎充满,单纯的调整上游节点的AIFS提高中间节点有接入信道机会是不够的,竞争到一次信道的使用权后,发送少量数据就释放信道,不足以改变中间节点某类AC队列仍然拥塞的状态。需要给拥塞的AC业务较大的TXOP,让该类业务在最大传输机会这段时间内不用竞争信道把更多缓存的数据分组发送出去,从而缓解拥塞。

2.2 基于TXOP的拥塞控制策略

上面已经提到提高TXOP[AC]在网络严重拥塞情况下的潜在效果,文献[8]聚焦TXOP提出的一种无线局域网中TXOP动态分配方法,不适用无线Mesh网。受文献[8]启发,在802.11s基本拥塞控制基础上提出了一种修改拥塞业务TXOP的拥塞控制策略TCC。

EDCA接入机制为各个业务单独分配有限空间的发送队列,因此TCC通过检测各类业务的发送队列的剩余空间来判断是否发生拥塞。802.11s草案中没有明确各类业务发送队列分配的具体参数,研究过程中为了消除不同发送队列造成的干扰,为4类业务分配相同的发送队列缓存空间,大部分基于队列的拥塞控制研究都直接把发送队列中缓存的数据占用预分配空间的百分比做为拥塞程度的表征,按照惯例用这个百分比表示拥塞程度Congestion Level(CL)。一般基于队列的拥塞控制研究中,队列中缓存数据占到队列预分配空间的80%~90%即视为发生拥塞,依此从90%开始划分出两个拥塞等级(CL1,CL2),p定义为TXOP的分配额度,在不同的拥塞级别下分配不同的额度,同时为了保证原有业务优先级的一致性,不同的业务在发生拥塞时TXOP分配额度pac也加以区分,pac1、pac2分别表示特定业务在两种拥塞级别下分配的最大传输机会额度百分比,pac1、pac2的确定目前没有足够的理论依据,通过大量仿真选择可以使系统性能最佳的经验值作分配,如表1所示。

表1 拥塞程度与分配额度

pac1,pac2都是定值,实际的额度百分比p由拥塞程度和各类业务发送队列状态决定,根据发送队列状态调整,按照以上要求把待发送队列中所有分组大小Qac和队列中来自别的节点的数据分组Qrac纳入p的公式设计:

在达到CL1之前所有业务都使用802.11e默认TXOP作为信道接入参数,一旦某类业务被判定为拥塞将根据CL和p分配最大传输机会,最大传输机会是一个时间Qac和p确定在分配的时间内要发送多少数据,通过网卡的传输速率确定TXOP:

公式(2)中TXOPAC是将要分配给拥塞队列的最大传输机会,dr是网卡的传输速率仿真中采用802.11b网卡0<dr<11(单位Mb/s)。如果队列中缓存的其它节点的数据增多就会分配更多的发送机会。提出的拥塞控制策略是通过监测发送队列来判定拥塞程度,中转节点接收或发送数据都会改变发送队列的拥塞情况,因此TCC的执行过程如图1所示。

在一次接收数据过程中统计更新发送队列拥塞程度,在一次接收完成后通过TCC策略调整TXOP;转发节点获得信道使用权限,开始使用调整后的TXOP发送某类业务数据,并统计发送队列拥塞情况,发送完数据后台更新TXOP。竞争到信道的使用权,使用TCC策略分配的传输机会发送数据。

TCC根据转发节点某类业务发送队列实时情况分配竞争到信道后信道使用时间TXOP。

图1 TCC拥塞控制策略流程图

3 仿真和分析

仿真在NS2仿真软件中进行,采用的网络拓扑如图3所示。节点1发送业务到节点0,中间需要节点2转发。节点5到节点6是干扰节点,造成节点2信道资源不足。节点4到节点3也有业务,用来造成节点0信道资源不足。

仿真中设定的节点1到节点0之间的业务见表2。其他节点之间(5到6、4到3)的业务也做了类似的定义。其中Voice业务优先级最高,定义为prio-0等级,Video业务和Date业务分别为prio-1和prio-2业务。表中各种业务的业务量都比较大,属于网络负载较大的情况。

图2 网络仿真拓扑

表2 节点1和节点0之间的业务结构

仿真结果见图3~图5。图3中A、C、E柱体表示在不使用TCC拥塞策略情况下信道竞争所造成的时间消耗比,B、D、F柱体代表TCC拥塞策略下的时间消耗比,未发生拥塞时,两种策略没有明显的差别,随着拥塞程度加剧TCC按节点某类业务发送队列拥塞程度动态分配TXOP的优势逐渐显露,当拥塞达到CL2时TCC策略的优势已经非常明显。

由图4可知,浅色曲线表示在不使用TCC拥塞策略情况下,节点1和节点0之间的总吞吐量。其吞吐量稳定在1.2Mbps左右。蓝色曲线表示在使用TCC拥塞控制策略情况下节点1和节点0之间的总吞吐量。由以上结果可知,在使用TCC策略情况下,网络总吞吐量得到明显提高。这首先是由于本策略中转发节点根据自身某类业务拥塞情况动态地调整自身TXOP提高了拥塞情况下某类业务的最大传输机会,有效地通过增加拥塞业务的发送时间缓解了转发节点附近的信道因过度竞争造成的时间消耗问题,降低了上游节点信道使用时间。

图5展示了拥塞策略对网络在丢包方面的明显改善,这得益于TCC拥塞控制策略在发生丢包之前就对拥塞节点进行调整,一定程度上减轻了由丢包所造成的信道消耗,从而提高了网络资源的利用率。

图5 两种策略下转发节点2丢包率对比

5 结束语

在IEEE 802.11s的拥塞控制策略的基础上提出了一种根据转发节点发送队列拥塞情况动态分配最大传输机会TXOP的拥塞控制策略TCC。策略避开了同类研究中信道竞争参数的调整,主要针对无线Mesh网中的中间转发节点,将拥塞判别定位于4类业务的发送队列,针对不同业务的特性提出了不同的拥塞判定,依拥塞程度分配最大传输机会。通过仿真可以看出拥塞控制策略降低了拥塞节点附近信道竞争所造成的时间消耗,网络吞吐也有改善,丢包得到了显著改善。不过由于策略只针对拥塞的转发节点调整竞争到信道后才能生效的TXOP,并没有增加拥塞节点的信道接入机会,网络吞吐抖动比较明显。策略仍需进一步改进,将转发节点拥塞信息反馈周边节点,在拥塞时适当提高拥塞业务的信道接入机会。

[1] A Bakre,B Badrinath.I-TCP:indirect TCP for mobile hosts[C].In Proc.of IEEE ICDCS,1995.

[2] H Balakrishnan,S Seshan,R H Katz.Improving reliable trans-port and handoff performance in cellular wireless networks[J].Wireless Networks,1995.

[3] Yung Yi,Sanjay Shakkottai.Hop-by-hop Congestion Control over a Wireless Multi-hop Network[C].INFOCOM 2004.

[4] Dzmitry Kliazovich,Fabrizio Granelli.Cross-Layer Congestion Control in Multi-hop Wireless Local Area Networks[C].First International Conference on Wireless Internet,2005,164-171.

[5] 刘拥民,蒋新华,年晓红,等.无线网络拥塞控制最新研究进展[J].计算机工程与应用,2007,43(24).

[6] 宋文,方旭明.无线Mesh网络公平感知路由算法设计与仿真[J].系统仿真学报,2007,19(18):4320-4355.

[7] Vijoy Pandey,Dipak Ghosal,Biswanath Mukherjee.Pricing-Based Approaches in the Design of Next-Generation Wireless Networks[J].IEEE,Communications suwey and tutorials,2007.

[8] Hiroki Nishiyama,Nirwan Ansari,Nei Kato.Wireless Loss-Tolerant Congestion Control protocol based on dynamic aimd theory[J].IEEE,Wireless Communications,2010.

[9] Anita Kanavall,Jayashree M,P Deepa Shenoy.Hop by Hop Congestion Control System for Adhoc Networks[C].TENCON IEEE Region 10 Conference 2008.

[10] 庞前娟,李精华,嵇建波,等.改进无线网络TCP协议的跨层设计方法[J].计算机工程,2010,36.

[11] Christos Antonopoulos,Stavros Koubias.Congestion Control FrameWork for Ad-hoc Wireless Networks[J].Wireless Per Commun 2010,52:753-755.

[12] Draft P802.11s:D11.0,[EB/OL]http://goo.gl/kbmmu,2011-04.

[13] 武昌盛,方旭明.基于IEEE802.11s协议的公平拥塞控制策略研究[D].成都:西南交通大学,2008.

[14] Li Tianji,Leith D.Achieving End-to-End Fairnessin 802.11e-based Wireless Multi-hop Mesh Network[C].Proc.Of the 3rd Int'1 Conf.

[15] 陈晨,高新波,张素兵.无线局域网中TXOP动态分配方法[J].计算机工程,2010,36(7).

猜你喜欢

队列控制策略信道
队列里的小秘密
基于多队列切换的SDN拥塞控制*
工程造价控制策略
在队列里
现代企业会计的内部控制策略探讨
丰田加速驶入自动驾驶队列
容错逆变器直接转矩控制策略
基于Z源逆变器的STATCOM/BESS控制策略研究
基于导频的OFDM信道估计技术
一种改进的基于DFT-MMSE的信道估计方法