一种基于位置及拥塞状况的竞争窗口调整机制方法及系统
技术领域
本发明涉及信息技术领域,尤指无线网状网络基于位置及拥塞状况的竞争窗口调整机制方法,可用于IEEE 802.11s WMN及其它具有网关的分布式控制宽带无线网络。
背景技术
无线网状网络(Wireless Mesh Networks,WMN)是下一代网络关键组网技术之一,用于扩大网络覆盖范围、降低网络建设成本、构建无线因特网等用途。
无线网络区别于有线网络的一个最大的特点在于无线链路上的存在的竞争与冲突,如果没有一种有效的冲突避免策略,有限的频谱资源将难以得到充分利用,造成无线网络容量与整体性能的下降。无线网络的特殊性决定其无法像有线网络那样进行冲突检测,而只能进行冲突避免。IEEE 802.11无线局域网(WLAN)是目前应用最为广泛的宽带无线网络,采用带有冲突避免的载波监听多址接入(CSMA/CA)技术实现对媒体资源的共享,退避机制与竞争窗口(Contention Window,CW)是其中的核心思想。IEEE 802.11于2003年成立了工作组s,扩展802.11WLAN对于Mesh结构的支持,正式标准预计将于2009年问世。
IEEE 802.11s WMN的一种可能的网络结构如图1所示,其中MR在构建骨干网Mesh结构的同时作为接入点(AP)为用户终端(UT)提供因特网接入服务。其中AP之间的链路采用IEEE 802.11a/g技术,UT与AP之间的链路采用IEEE802.11b技术,以此来避免不同层次链路间的干扰。
在IEEE 802.11s WMN中,多跳的组网与接入方式虽然提供了灵活方便以及大范围的因特网覆盖,但是随着用户终端以及骨干网设备的不断增加,网络中的业务总量也会随之相应地增长,网络中的主要业务流经链路是来往于用户终端与因特网网关之间的无线链路。这种特殊的业务流向造成网络在靠近网关节点的地域形成业务流密集区域,这些区域中的节点除了发送自身业务外,还可能中继转发其它节点的数据。当网络资源利用接近饱和时,靠近网关的节点相对于远离网关的节点而言将面临更多的竞争而较难获得接入媒体的机会,造成业务流密集地区节点缓冲队列中的数据包数迅速增加。此外,即使其成功地从竞争中胜出,由于节点自身业务流比转发业务流到达率高的原因,节点会较多地发送自身产生的数据包,而对所要中继的数据包进行丢弃。然而,这些被丢弃的转发数据包在其先前的传输过程中已经参与了多跳链路上每一个转发节点的信道竞争,已经占用了相当一部分的网络资源(竞争成功而占用频带资源),同时对其他参与竞争的节点造成了影响(竞争失败而进行退避)。因此,较多地丢弃这样的数据包对于网络的容量以及宝贵的频谱资源而言都是不利的。
IEEE 802.11默认竞争机制
媒体访问控制(Medium Access Control,MAC)子层协议定义了数据包怎样在媒体上进行传输。IEEE 802.11是自组网研究中采用最多的MAC层协议,允许多个用户在一个共享的媒体上共享资源,包括节点接入媒体的方式以及数据包的分片重组与CRC校验等功能。协议包括分布式控制机制(Distributed Coordination Function,DCF)。
IEEE 802.11DCF系统采用随机接入的机制。节点在发送数据前首先监听信道的情况,如果信道空闲时间大于一个分布式帧间间隔(Distributed Interframe Space,DIFS),节点就进行发送;如果信道非空闲,则根据监听到的信息进行延迟接入直到信道空闲。在节点延迟接入后,由于其它邻近节点也在等待这一信道空闲时刻的到来,为了避免发生冲突节点需要选择一个随机的时间长度进行退避。退避后再次监听信道情况,如果信道空闲则发送数据,并且在发送成功后根据退避算法重新设定CW值;否则节点延迟接入,同时设定CW值。具体流程如图2所示。
IEEE 802.11DCF采用二进制指数退避机制。节点在发送数据时,先根据当前节点CW值选取一个随机数α(0~CW之间均匀分布),并以α个时隙作为节点的退避时间来启动退避计时器。CW的大小取决于传输失败的次数,其初始值为CWmin,每次传输失败时CW的值扩大一倍(一般CW的取值为2m-1,扩大后应为2m+1-1),直到其扩大至CWmax;如果传输成功,则将CW重新设定为CWmin。退避计时器工作时若节点检测到媒体空闲,退避计时器以时隙为单位递减计时;否则停止计时,直到节点检测到媒体空闲时间大于一个DIFS后继续递减计时。当退避计时器递减到0时,如果媒体仍然空闲,节点就接入媒体。
综上所述,现有IEEE 802.11协议是针对点对多点网络结构而提出的,将其应用到WMN时无法满足WMN特有业务性质的需求,容易在网关附近的区域形成热区。热区中的节点难以竞争到网络资源造成节点缓冲队列迅速填满,进而导致大量地丢弃多跳转发业务流的数据包,形成网络的空间不公平性。同时,由于转发数据包已经参与了先前多跳链路上的竞争,造成网络总体性能急剧下降。
针对上述问题,现有的解决策略通常是根据网络中实际的拥塞情况动态调整节点的竞争窗口参数或者采用其他退避算法来提高网络性能。例如,一种是以节点在一段时间内发送的碰撞概率为参数调整CWmax,使网络中不同区域内的节点根据实际拥塞状况获得合适的竞争窗口参数。还有一种是提出滑动竞争窗口的思想,同时调整CWmin(最小竞争窗口参数)与CWmax(最大竞争窗口参数),并且采用线性增大线性减小的退避算法改善了二进制指数退避机制总是有利于最近成功完成传输的节点的缺陷。另一种是根据Ad hoc网络中多跳业务流面临的问题,以多跳链路中相邻的两个节点所发送数据包序号之间的差值为参数调整竞争窗口,并且改进了退避算法等等。
可见,现有的解决策略基本都是从各节点本身的角度出发,根据网络中局部的拥塞情况来进行相应的调整,而无法从全局角度优化网络性能,适用范围也局限于点对多点的基础设施结构网络与Ad hoc网络。此外,这些策略采用不同的方法来判断拥塞情况,调整竞争窗口与改进的退避算法也各不相同,适用的网络场景也有差异,很难衡量不同策略之间的优劣,都无法较好地解决WMN中存在的问题。
因此,实有必要对现有的竞争窗口调整机制做进一步改进。
发明内容
本发明所要解决的技术问题是防止在WMN网络中,网关节点附近的区域业务较为密集,区域中的节点面临更多的竞争与拥塞,导致转发数据包的大量丢失,造成网络空间不公平性以及整体性能下降的现象出现。
为了解决上述技术问题,本发明提出的是Mesh网络基于位置及拥塞状况的竞争窗口调整机制方法,根据网络运行的不同阶段以及实际网络状况,提出相应的调整机制,缓解热区及多跳业务造成的网络总体性能下降。
为了解决上述技术问题,本发明采用如下技术方案:
一种基于位置及拥塞状况的竞争窗口调整机制方法,用于无线网状网络及其它具有网关的分布式控制宽带无线网络,该方法包括以下步骤:
步骤一,设置节点初始竞争窗口参数;
步骤二,设置节点动态竞争窗口参数;
其特征在于:所述步骤一是指根据IEEE 802.11s WMN网络中节点距离网关的跳数来初步决定节点MAC层竞争窗口的参数;所述步骤二是指在网络运行过程中根据业务流上下游节点之间发送数据包序号的差值判断拥塞而做出进一步调整。
作为本发明的优选方案之一,该方法进一步包括重新设置竞争窗口参数。
作为本发明的优选方案之一,所述重新设置竞争窗口参数时,如果重置后原先的最小竞争窗口参数仍然在新产生的参数范围之内,则将新的最小竞争窗口参数替换为原先的最小竞争窗口参数。
作为本发明的优选方案之一,如步骤一中网络中节点距离网关的跳数无法获知,则暂时采用IEEE 802.11默认竞争机制接入媒体。
本发明进一步包括一种基于位置及拥塞状况的竞争窗口调整机制系统,其特征在于:该系统包括初始竞争窗口设置模块及动态竞争窗口设置模块,该系统进步包括具有实时更新的节点路由表提供给初始竞争窗口设置模块及业务流信息模块提供给动态竞争窗口设置模块。
作为本发明的优选方案之一,所述业务流信息包括该流的源节点地址、目的节点地址、下游节点地址、当前发送数据包序号以及监听到的下游节点发送数据包序号。
本发明提出了一种基于位置及拥塞状况的竞争窗口调整机制方法,能够在不引入过多控制开销以及实现复杂度的情况下,从全局角度评估网络的拥塞情况,区分业务流密集区域与非密集区域的节点并且给与适当的竞争窗口,同时缓解WMN中的空间不公平现象,提高网络的总体性能。
附图说明
图1是现有技术中IEEE 802.11s WMN规划示意图;
图2是现有技术中IEEE 802.11DCF冲突避免机制示意图;
图3是现有技术中IEEE 802.11s WMN路由树结构示意图;
图4是本发明竞争窗口调整模块示意图;
图5是本发明竞争窗口调整流程图。
具体实施方式
下面结合附图对技术方案的实施作进一步的详细描述:
IEEE 802.11s二层路由机制
IEEE 802.11s工作组的目的是提供一个可管理、低复杂度的WLAN网状网规范,2006年SEE-Mesh与Wi-Mesh联合提出IEEE 802.11s草案,并在此基础上进行IEEE 802.11s标准的开发。
通常情况下路由协议运行在网络层,然而WMN组网是在MAC层实现的,因此草案中强制定义了一种扩展的二层路由机制,称为混合无线Mesh协议(Hybrid Wireless Mesh Protocol,HWMP)。HWMP协议由树状路由与按需路由两部分组成,其中按需路由不在本专利讨论范围之内。树状路由协议是一种先验式的路由协议,通过预先指派一个根节点(通常为网关节点)来维护网络拓扑结构。在网络中的一个节点通过某种机制被指派为根节点后,该节点广播一个“根声明信息”来向其他节点声明自己的存在,该信息中包含两个主要字段:距离信息以及序列号。其他节点根据收到的声明信息得到自己到根节点的距离(即跳数),并且在更新距离字段后重新广播该信息,直到遍历网络中的所有节点,这样就建立起一棵以网关节点为根节点的路由树,使网络中的所有节点都拥有到达根节点的路由。
序列号字段用来区分不同时刻发出的声明信息以及避免形成路由环路。在路由维护时,根节点周期性地以递增的序列号广播声明信息,来及时适应网络的动态变化;节点一旦选择某一其它作为其通往树根的父节点,也需要周期性的发送路由维护信息并等待父节点对该信息的反馈来跟踪网络的局部变化。如果节点出于某种原因需要更换父节点(不论是主动还是被动),都要向根节点发送一条重新注册的信息,使得从该节点到达根节点路径上的所有节点都能够及时更新路由表。
树状路由机制为IEEE 802.11s WMN提供了先验式路由,网络中的所有节点都具有到达网关的路由以及跳数信息。一种具体的网络构成如图3所示。
本发明提出的是Mesh网络基于位置及拥塞状况的竞争窗口调整机制,根据网络运行的不同阶段以及实际网络状况,提出相应的调整机制,缓解热区及多跳业务造成的网络总体性能下降。
由于靠近网关的节点面临更多的竞争,应该给与更高的信道接入概率,以保证业务流密集地区的节点内缓存的数据包能够及时发送,避免产生拥塞。信道接入概率与节点选择的随机退避时隙数有关,即与节点竞争窗口的参数有关。因此,在网络初始化阶段,节点根据IEEE802.11s扩展的二层路由机制从树状路由表中获得自己与网关节点之间的跳数,并且按照这一跳数设置CWmin(最小竞争窗口参数)与CWmax (最大竞争窗口参数)的取值,这样网络中的每个节点就具有了自己的竞争窗口参数,使得位于网络中不同位置的节点得以区分。就参数取值而言,节点的CWmin与CWmax应根据节点距离网关跳数的增加而增大。
为了更好地保证节点接入信道的概率,可以有选择性地引入类似的退避机制。通常退避机制中竞争窗口的变化可以分为线性与比例型两种,这里仅对比例型调整举一例:假设节点当前竞争窗口为CW,在发送失败时将其扩大为(1+β)×CW(通常β介于0~1之间,IEEE 802.11默认退避机制中β取值为1,本例中β随节点距离网关跳数的增加而增大),发送成功时则将其设置为相应的CWmin。
该方法的优点在于能够从全局角度控制网络中节点发送数据包的概率,缓解网络热区中节点的拥塞状况,避免过多地丢弃转发数据包而浪费网络资源,提升网络容量与整体性能。多跳业务流中相邻节点间存在竞争关系,容易形成网络瓶颈。根据上述网络初始化时的初步竞争窗口参数配置,上游节点与下游节点之间已经得到区分,但是仍然无法适应网络的动态变化。因此在网络运行阶段,多跳业务流中的每一对相邻节点中,某一节点根据其下游节点的拥塞情况对CWmin进行进一步调整。
IEEE 802.11s WMN采用二层路有机制,因此可以在MAC层区分不同的流(具有相同源地址与目的地址并且具有相同路由的数据包)。在某一时刻,节点根据其所发送的数据包的序号以及其监听到下游节点发送的数据包序号之差来判断下游节点缓冲队列中缓存的数据包数(对于多条业务流流经同一节点的情况,这一差值为各业务流数据包序列号差值之和),以此衡量下游节点的拥塞情况,并根据这一差值调整自己的CWmin值。调整时下游节点拥塞情况越严重,CWmin值的增加幅度越大,避免节点在下游拥塞的情况下向网络中注入过多的数据;如果下游节点的拥塞情况较轻,则可以适当减小CWmin的值,提高网络的资源利用率。
该方法的优点在于能够实时地感知多跳链路上节点的拥塞情况,减少不必要的竞争,提高网络的容量与资源利用率。
下面给出本专利在IEEE 802.11s WMN应用中的一个具体实例。
实例中假设根节点(网关)已经通过相应的树状路由机制建立起完整的路由树,并且周期性地使用根声明信息更新网络的最新拓扑变化,使得网络中的节点都具有实时更新的路由表。IEEE 802.11s草案中规定的根声明信息的具体结构如表1所示。其中Hop Count与Metric字段提供了更新路由表的主要信息与依据。
表1根声明信息结构
Octets:1 |
1 |
1 |
1 |
1 |
6 |
4 |
4 |
4 |
Element ID |
Length |
Flags |
HopCount |
TimetoLive |
Originator Address |
SequenceNumber |
LifeTime |
Metric |
初始竞争窗口参数设置
节点初始竞争窗口参数根据其距离网关的跳数而定,跳数越大则相应的参数值越大;同样,可选退避机制中的参数β也随节点距离网关的跳数而变化。一种使用可选退避机制的可能的参数取值如表2所示,其中参数CWmax的值取决于相应的CWmin与β的值,保证在经历五次发送失败后竞争窗口CW达到接近CWmax的数值(IEEE 802.11默认退避机制下CWmin的值为31,CWmax的值为1023,β的值为1,五次发送失败后竞争窗口CWmin从扩大到CWmax)。如果由于切换等原因导致节点无法从自己的路由表中获得到达网关的跳数信息,则暂时采用IEEE 802.11默认竞争机制接入媒体,直到竞争窗口参数重置周期到来。
表2初始竞争窗口参数
跳数 |
CWmin |
CWmax |
β |
1 |
7 |
60 |
0.5 |
2 |
15 |
175 |
0.6 |
3 |
31 |
455 |
0.7 |
… |
… |
… |
… |
动态竞争窗口参数设置
网络运行时的动态竞争窗口调整机制需要节点维护一张信息表,表中记录所有流经该节点的业务流fi的信息。对于每一条不同的业务流,需要记录的信息包括该流的源节点地址、目的节点地址、下游节点地址、当前发送数据包序号fi send以及监听到的下游节点发送数据包序号fi listen。某一时刻节点与其下游节点发送数据包序号之差为,
新的CWmin参数调整方法见下式:
newCWmin=CWmin+γ×(Δ-X)×(CWmax-CWmin)(2)
式中参数γ为调整因子,控制竞争窗口调整的尺度;参数X为判断拥塞的门限制,根据实际拥塞情况决定增大或减小竞争窗口参数,提高资源利用效率。
竞争窗口参数重置
网络拓扑结构及链路环境的变化会造成网络路由树的变更,网络运行过程中的动态调整也会造成竞争窗口参数发生较大变化,因此需要周期性地引入竞争窗口参数重置,避免网络失去平衡。如果重置周期过大,竞争窗口参数无法适应网络变化;反之,则会造成重置过于频繁,降低动态调整方案的性能。因此,重置周期应选择适当的值。由于动态调整仅对CWmin进行,所以可以作这样的处理:重置竞争窗口,如果重置后原先的CWmin仍然在新产生的参数范围之内,则将新的CWmin替换为原先的CWmin。这样处理的好处是能够在重置参数的同时兼顾当前网络中多跳业务流的拥塞情况。
本发明的关键技术方案在于:(1)根据IEEE 802.11s WMN网络中节点距离网关的跳数来初步决定节点MAC层竞争窗口的参数;(2)在网络运行过程中根据业务流上下游节点之间发送数据包序号的差值判断拥塞,做出进一步调整。
本发明可能的应用范围:IEEE 802.11s WMN、具有网关的分布式控制宽带无线网络,以及其他相关下一代网络。
以上实施例仅用以说明而非限制本发明的技术方案。如,具体实施时,可以根据实际网络规划,综合考虑算法实现复杂度与协议开销等因素,有选择性地应用上述竞争窗口调整机制的方案等均不脱离本发明精神和范围,均应涵盖在本发明的权利要求范围当中。