在自适应退避算法中确定竞争窗变化因子的方法及系统转让专利

申请号 : CN201410497328.9

文献号 : CN104219779B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 谢宁吴军王晖

申请人 : 深圳大学

摘要 :

本发明适用于电通信技术领域,提供了一种自适应退避算法中竞争窗的确定方法及系统。方法包括下述步骤:步骤A:初始化系统,并将竞争窗CW的值初始化为系统默认值CWmin;步骤B:记录信道状态,并结合历史信道状态,在步骤A系统默认值的基础上更新竞争窗CW的值;步骤C:通过更新后的竞争窗CW的值获得退避时隙,并在此退避时隙期间获得信道利用率,再进一步根据信道利用率获得传输概率;步骤D:根据所述传输概率p确定竞争窗变化因子α。本发明通过考虑加入新的变量信道利用率来获得竞争窗变化因子的优化值,通过过去退避时候发生冲突的比例大小来动态调整,这样获得的变化因子是变化的,竞争窗也是动态调整的。

权利要求 :

1.一种在自适应退避算法中确定竞争窗变化因子的方法,其特征在于,包括下述步骤:步骤A:初始化系统,并将竞争窗CW的值初始化为系统默认值CWmin;

步骤B:记录信道状态,并结合历史信道状态,在步骤A系统默认值的基础上更新竞争窗CW的值;

步骤C:通过更新后的竞争窗CW的值获得退避时隙,并在此退避时隙期间根据下述公式获得信道利用率q:其中,Total_slots为所述退避时隙,Busy_slots为在所述退避时隙期间经历的冲突数,获得所述退避时隙的公式为Tbackoff=Random(0,CW)*aSlotTime,即从0至竞争窗CW值之间随机选择一个整数乘以系统规定好的时隙数aSlotTime;

再进一步根据信道利用率q获得传输概率p:p=1-qm,其中,m为参数最大重传次数;

步骤D:根据所述传输概率p确定竞争窗变化因子α:α=1+qm。

2.一种在自适应退避算法中确定竞争窗变化因子的系统,其特征在于,包括:竞争窗值更新模块,用于在初始化系统后将竞争窗CW的值初始化为系统默认值,并根据检测到的系统当前信道状态和记录的历史信道状态,在系统默认值的基础上更新竞争窗CW的值;

信道利用率及传输概率计算模块,用于通过所述竞争窗值更新模块更新后的竞争窗CW的值获得退避时隙,并在此退避时隙期间根据下述公式获得信道利用率q:其中,Total_slots为所述退避时隙,Busy_slots为在所述退避时隙期间经历的冲突数,获得所述退避时隙的公式为Tbackoff=Random(0,CW)*aSlotTime,即从0至竞争窗CW值之间随机选择一个整数乘以系统规定好的时隙数aSlotTime;

再进一步根据信道利用率q获得传输概率p:p=1-qm,其中,m为参数最大重传次数;

竞争窗变化因子确定模块,用于根据传输概率p确定竞争窗变化因子α:α=1+qm。

说明书 :

在自适应退避算法中确定竞争窗变化因子的方法及系统

技术领域

[0001] 本发明属于电通信技术领域,尤其涉及一种在自适应退避算法中确定竞争窗变化因子的方法及系统。

背景技术

[0002] 在过去几十年,随着无线终端技术的发展,分布式网络正经历着一个高速发展的阶段,如无线局域网(Wireless LANs),无线自组织网(Wireless ad hoc networks)以及无线mesh网(Wireless mesh networks)。在这些网络中,由于其移动性,低成本,灵活性等优点,分布式网络已经得到迅速的普及和推广,逐渐产业化,走进日常生活。
[0003] 在无线分布式网络中,MAC(Medium access control媒体接入控制)协议主要负责无线节点的调度和数据的收发,而使用最广泛的MAC协议则是IEEE 802.11。IEEE 802.11MAC协议定义了两种信道接入方式:DCF(Distributed coordinate function,分布式协调功能)和可自由选择的PCF(Point coordinate function,集中式协调功能)。
[0004] DCF协议也就是大家所熟知的CSMA/CA(Carrier Sense Multiple Access with Collision Avoidance,带冲突避免的载波侦听多址接入)。当多个节点竞争信道时,DCF协议采用物理监控和虚拟载波监控机制,检测信道状态,如信道忙则采用随机退避机制使得节点延迟接入,以此来有效减小冲突概率,所以退避机制的选择直接影响到整个网络性能的好坏。
[0005] 802.11协议中使用最广泛的退避算法是BEB(Binary exponential backoff,二进制指数退避)算法。当节点想接入信道时,先检测信道状态,如果信道繁忙,则节点需延迟接入,直到监测到信道空闲DIFS(DCF interframe space)个时隙后再次接入。在信道空闲DIFS时隙后,节点则在下次传输前随机产生一个退避时间,并对退避时间作倒计时操作,直到退避时间到达零,则节点发送数据。退避时间为Tbackoff=Random(0,CW)*aSlotTime,其中,CW为竞争窗,一个大于0的整数,Random(0,CW)表示在0-CW之间随机取一个整数,aSlotTime指a slot time,也就是系统默认的一个时隙的时间,CWmin是由物理层特性决定的,为初始化值。退避规则如下:
[0006] CW=min(2iCWmin,CWmax) 经历冲突
[0007] CW=CWmin  成功发送
[0008] BEB算法实现容易,故作为802.11的标准退避算法。但是当节点成功发送一次后,其竞争窗重置为最小值,这样该节点在下次争用信道时仍有更大机会争用成功,在节点数较多时,容易导致严重的不公平问题。
[0009] 为了改进BEB的不公平问题,MILD(Multiplicative Increase Leaner Decrease乘性增加线性减小)算法在经历冲突时,将CW乘以一个因子δI;在成功发送后,则减去一个因子δD,同时采用CW复制机制-在数据包中加入一个区域,记录CW值,发送数据包时,邻节点复制并采用源节点的CW,以此来保证邻节点都有相同的CW。其规则如下:
[0010] CW=min(δICW,CWmax)  经历冲突
[0011] CW=max(CW-δD,CWmin) 成功发送
[0012] MILD算法有效解决了BEB中的不公平问题,但是复制机制要求在包中加入另外的空间存储竞争窗,这样增加了算法的复杂性。同时,当在不同区域的节点使用不同的竞争窗值时,在相邻区域的中间节点很难决定使用哪个区域的竞争窗,这就是迁移问题。
[0013] 后面又有学着提出HBAB(History Based Adaptive Backoff,基于历史记录的自适应退避)算法,该算法将过去的信道状态纳入考虑范围,以此来反映网络状态,据此来决定是否该增加CW还是减小CW,当传输失败时,CW乘以一个参数α;传输成功时,则需要进一步检查信道的状态历史,基于这个历史来调整CW。
[0014] HBAB算法实现较为简单,且加入考虑历史信道状态;但是其参数α是根据经验值分配,故不能有效反映实际信道状态,也不大适合实时变化较快的信道。
[0015] 总之,传统的退避算法,有些要根据估计节点数来动态调整CW,此类算法获得的CW能有效反映理论环境,但是计算估计节点数需要大量的计算,同时如果估计错误,则可能对整个算法的效果产生不良的影响。而有些算法则简单的考虑通过线性或者乘性的规则来改变CW,如上文中的BEB和HBAB,其CW都是简单的乘2或者初始化为CWmin,HBAB的相比BEB的改进在其能根据信道历史状态来变化CW,但是其变化因子α根据经验值直接分配,此两种算法实现较为容易,但是不能有效反应实时的信道环境。

发明内容

[0016] 本发明所要解决的第一个技术问题在于提供一种在自适应退避算法中确定竞争窗变化因子的方法,旨在根据过去实时的信道状态,自适应调整CW的改变规则,以此增加吞吐量,减小延迟,提高网络性能。
[0017] 本发明是这样实现的,一种在自适应退避算法中确定竞争窗的方法,包括下述步骤:
[0018] 步骤A:初始化系统,并将竞争窗CW的值初始化为系统默认值CWmin;
[0019] 步骤B:记录信道状态,并结合历史信道状态,在步骤A系统默认值的基础上更新竞争窗CW的值;
[0020] 步骤C:通过更新后的竞争窗CW的值获得退避时隙,并在此退避时隙期间根据下述公式获得信道利用率q:
[0021]
[0022] 其中,Total_slots为所述退避时隙,Busy_slots为在所述退避时隙期间经历的冲突数;
[0023] 再进一步根据信道利用率q获得传输概率p:p=1-qm,其中,m为参数最大重传次数;
[0024] 步骤D:根据所述传输概率p确定竞争窗变化因子α:α=1+qm。
[0025] 本发明所要解决的第二个技术问题在于提高一种在自适应退避算法中确定竞争窗变化因子的系统,包括:
[0026] 竞争窗值更新模块,用于在初始化系统后将竞争窗CW的值初始化为系统默认值,并根据检测到的系统当前信道状态和记录的历史信道状态,在系统默认值的基础上更新竞争窗CW的值;
[0027] 信道利用率及传输概率计算模块,用于通过所述竞争窗值更新模块更新后的竞争窗CW的值获得退避时隙,并在此退避时隙期间根据下述公式获得信道利用率q:
[0028]
[0029] 其中,Total_slots为所述退避时隙,Busy_slots为在所述退避时隙期间经历的冲突数;
[0030] 再进一步根据信道利用率q获得传输概率p:p=1-qm,其中,m为参数最大重传次数;
[0031] 竞争窗变化因子确定模块,用于根据传输概率p确定竞争窗变化因子α:α=1+qm。
[0032] 与传统的HBAB算法相比,本发明提供的竞争窗确定方法中竞争窗变化因子α的取值不固定,而是通过考虑加入新的变量---信道利用率来获得α的优化值,根据过去退避时候发生冲突的比例大小来动态调整α值,这样获得的α值是变化的,是根据实际情况来获得的,故竞争窗大小也是动态调整的,可有效减小整个网络的不公平性,同时增加系统吞吐量,减小系统时延。

附图说明

[0033] 图1是本发明实施例提供的在自适应退避算法中确定竞争窗变化因子的方法的实现流程图;
[0034] 图2是本发明实施例提供的竞争窗变化因子随信道利用率的线性变化和曲线变化对比图;
[0035] 图3、图4是本发明实施例提供的仿真软件在不同节点数情况下,系统吞吐量和时延的对比示意图;
[0036] 图5、图6是本发明实施例提供的仿真软件当固定节点数为50,在不同最大重传次数情况下,系统吞吐量和时延的对比示意图;
[0037] 图7是本发明实施例提供的在自适应退避算法中确定竞争窗变化因子的系统的结构原理图;
[0038] 图8本发明实施例提供的信道利用率的示意图。

具体实施方式

[0039] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0040] 本发明通过考虑加入新的变量信道利用率来获得α的优化值,根据过去退避时候发生冲突的比例大小来动态调整α值,最终实现竞争窗的动态调整。
[0041] 图1示出了本发明提供的在自适应退避算法中确定竞争窗变化因子的方法的实现流程,详述如下。
[0042] 在步骤A中,初始化系统,并将竞争窗CW的值初始化为系统默认值。
[0043] 本发明中,竞争窗CW具有一最小值CWmin和最大值CWmax,系统默认的竞争窗值位于此最小值CWmin和最大值CWmax之间。
[0044] 在步骤B中,记录信道状态,并结合历史信道状态,在步骤A系统默认值的基础上更新竞争窗CW的值。
[0045] 首先检查系统当前信道状态并记录,然后结合存储的历史信道状态进行更新。
[0046] 本发明基于HBAB算法实现,HBAB算法规则如下表:
[0047]当前信道状态 历史信道状态 CW 值
0(忙) 00(忙, 忙) CW=CW*α
0(忙) 01(忙, 闲) CW=CW*α
0(忙) 10(闲, 忙) CW=CW*α
0(忙) 11(闲, 闲) CW=CW*α
1(闲) 11(闲, 闲) CW=CWmin
1(闲) 01(忙, 闲) CW=CWmin
1(闲) 10(闲, 忙) CW=CWmin
1(闲) 00(忙, 忙) CW=CW/α
[0048] 表一
[0049] 上表一中0表示发送失败或冲突,1表示发送成功,α表示竞争窗因子。可知当当前信道状态为忙时,竞争窗CW根据规则更新为CW*α,当当前信道状态为闲时,除了过去信道历史状态为00(表示过去两次发送都遭遇失败或冲突)的情况,竞争窗直接变为竞争窗最小值CWmin,如过去两次发送都经历了冲突,则竞争窗大小变为CW/α。
[0050] 在步骤C中,通过更新后的竞争窗CW的值获得退避时隙,并在此退避时隙期间获得信道利用率,再进一步根据信道利用率获得传输概率。
[0051] 获得退避时隙的公式为Tbackoff=Random(0,CW)*aSlotTime,即从0至竞争窗CW值之间随机选择一个整数乘以系统规定好的时隙数aSlotTime,以此来获得所需退避的时隙值。
[0052] 在退避时隙期间,通过下述公式获得信道利用率:
[0053]
[0054] 其中,Total_slots为所述退避时隙,Busy_slots为在所述退避时隙期间经历的冲突数,即,在退避期间,如果碰到冲突则停止退避的原理来计数的,停止一次则加一。图8示出了信道利用率的示意图,slot time表示退避时隙,有阴影填充部分表示有冲突部分,记为slot time(busy),无填充部分则表示没有冲突,记为slot time(dile)。
[0055] 本发明中,在上述信道利用率基础上具体可通过两种方式获得传输概率,方式一,传输概率p则可以表示为:p=1-q, p∈(0,1)。由于方式一为线性变化,可能导致α变化过快,故方式二中加入参数最大重传次数m,获得新的α值:p=1-qm,α=1+qm,本发明中,参数最大重传次数表示的是节点竞争信道的最大重传次数,当节点竞争信道失败时,会进入重传阶段,做下一次竞争,但是系统不会无休止的让节点多次进入竞争,以免影响系统容量,当节点的重传次数超过m的时候,则节点会采取丢包的措施,即将发送的数据包丢弃,所以m值对系统容量的影响也很大。
[0056] 图2示出了方式一的线性变化和方式二的曲线变化中竞争窗变化因子的对比,可见,当采用线性变化时,α值在1和2之间做线性增加的变化-随着信道利用率的增加而增加,减小而减小,但是考虑在比较极端的情况下,即节点数较多和较少时的情况,节点数较多时,信道利用率高,冲突大,α值可能就取到接近2,当节点数较小时,信道利用率低,冲突小,α值可能取到接近于1,这样可能造成α取值的震荡。如果采用曲线形式,一方面是基于慢慢变化的考虑,即减小α取值的震荡,同时加入考虑m取值,可以发现,当节点重传次数很多的时候,如果我们采用较小的α变化,则其接入信道机会更大,这样能增加整个系统的公平性。比如说在信道利用率为0.9的情况,这时冲突很大,在线性变化时,α取值一直为1.9,而对于重传次数较大的节点,采用曲线变化则可以变成小于1.9的值,这样能给节点更小的CW,这样可以使得重传次数多的节点更高优先级下次争用信道,以此来增加系统的公平性。
[0057] 在步骤D中,根据所述传输概率p确定竞争窗变化因子α:α=1+qm。
[0058] 对于方式一,新的竞争窗变化因子α:α=2-p,α∈(1,2)。对于方式二,新的竞争窗变化因子α:α=1+qm。竞争窗变化因子α确定后,再根据上表一定义的规则来确定竞争窗CW。
[0059] 上述算法实现简单,且采用自适应的退避算法,相比现有算法,能有效减小整个网络的不公平性,同时增加系统吞吐量,减小系统时延。具体可采用OPNET 14.5仿真软件来仿真,仿真参数按照IEEE 802.11标准,详见表二。
[0060]数据速率 1Mbps
时隙数 20μs
SIFS 10μs
DIFS 50μs
CWmin 31
CWmax 1024
包大小 1024bit
仿真时间 300s
[0061] 表二
[0062] 仿真场景为300×300平方米的区域,网络节点随机分布,通信传输范围为300米,仿真时间为300秒,采用基本的接入方式(即不使用RTS/CTS模式)仿真。仿真考虑两种情况:
[0063] (1)不同节点数情况下,比较系统吞吐量和时延,见图3和图4;
[0064] (2)固定节点数为50,在不同最大重传次数情况下,比较系统吞吐量和时延,见图5和图6。
[0065] IEEE 802.11协议目前已广泛应用于实际生活中,如校园网、办公室网络、城市建筑通信以及军事通信网等。而本发明对IEEE 802.11协议中HBAB算法的改进,如能结合硬件设备改进,将能更好的促进无线通信尤其是移动通信的发展。
[0066] 图7示出了本发明提供的自适应退避算法中竞争窗的确定系统的结构原理,为了便于描述,仅示出了与本发明相关的部分。
[0067] 参照图7,该在自适应退避算法中确定竞争窗变化因子的系统包括竞争窗值更新模块71、信道利用率及传输概率计算模块72和竞争窗变化因子确定模块73。竞争窗值更新模块71在初始化系统后将竞争窗CW的值初始化为系统默认值,并根据检测到的系统当前信道状态和记录的历史信道状态,在系统默认值的基础上更新竞争窗CW的值。信道利用率及传输概率计算模块72通过竞争窗值更新模块71更新后的竞争窗CW的值获得退避时隙,并在此退避时隙期间获得信道利用率,再进一步根据信道利用率获得传输概率。竞争窗变化因子确定模块73根据传输概率p确定竞争窗变化因子α,然后根据竞争窗变化因子以及所述信道利用率及传输概率计算模块72计算的传输概率可进一步确定竞争窗CW。
[0068] 作为本发明的一个实施例,信道利用率及传输概率计算模块72具体根据下述公式获得信道利用率q:
[0069]
[0070] 其中,Total_slots为所述退避时隙,Busy_slots为在所述退避时隙期间经历的冲突数,传输概率p则可以表示为:p=1-q, p∈(0,1)。然后竞争窗值确定模块73根据下述公式确定新的竞争窗变化因子α:α=2-p,α∈(1,2)。
[0071] 作为本发明的另一实施例,信道利用率及传输概率计算模块72具体根据下述公式获得信道利用率q:
[0072]
[0073] 其中,Total_slots为所述退避时隙,Busy_slots为在所述退避时隙期间经历的冲突数;
[0074] 传输概率p则可以表示为:p=1-qm,其中,m为参数最大重传次数。然后竞争窗值确定模块73根据下述公式确定新的竞争窗变化因子α:α=1+qm。
[0075] 综上所述,通过比较HBAB算法和BEB算法可知,HBAB算法相比BEB算法,其实就是加入考虑了信道状态,进而进一步的调整竞争窗,最大的变化在于变化规则中,当现在的状态为空闲,而过去历史状态为两个繁忙时,其不是直接将竞争窗置为竞争窗最小值,而是取值为竞争窗除以α,另外,算法作者推荐α取值在1-2之间,这样相比BEB直接为两倍变化,也相当于加入考虑慢退避的思想,有效避免竞争窗变化过大;但是现有的HBAB的缺点在于α取值的固定性,算法作者并没有给出α的最优值,而是依照经验值直接分配在1-2之间,而本发明提供的新算法则重点解决α的优化,通过考虑加入新的变量信道利用率来获得α的优化值,根据过去退避时候发生冲突的比例大小来动态调整α值,这样获得的α值是根据实际情况来获得的,是一变化值,故竞争窗大小也是动态调整的。
[0076] 以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。