[0084] 步骤S33,当Pc>Pcmax时,判定当前网络阻塞,增大初始竞争窗口值CWinit= min[CWold+CWstep2,CWmax];其中,CWstep2为第二初始竞争窗口值步长;
[0085] 在Pc>Pcmax时,表示冲突较严重,网络相对阻塞,应增大竞争窗口值,降低冲突。
[0086] 步骤S34,当Pcmin≤Pc≤Pcmax时,判定当前网络良好,保持初始竞争窗口值CWinit=min[CWold,CWmax]。
[0087] 本实施例将实际碰撞概率Pc与网络吞吐量最大化时的最优碰撞概率Pcopt 比较,动态调整初始竞争窗口值CWinit,能更好的反映网络的冲突情况,使竞争窗口值接近最优值,从而在网络相对空闲时,提高时隙利用率,减小延迟,在网络相对阻塞时,降低冲突。
[0088] 如图5所示,图5为本发明竞争窗口值自适应调整方法的第一实施例中调整初始竞争窗口值的第二实施方案的流程图。
[0089] 步骤S30具体包括:
[0090] 步骤S31,比较实际碰撞概率Pc与碰撞概率阈值下限Pcmax=Pcopt-DL和碰撞概率阈值上限Pcmin=Pcopt+DL的大小;其中,DL为互动容忍门限;
[0092] 其中,竞争窗口阈值Thr(n)是当前参与竞争站点数n的函数,可为根据图1所示实施例中竞争站点数与碰撞概率的关系曲线仿真所得的经验值。
[0093] 步骤S322,判定当前竞争窗口值CWold相对当前网络适中,初始竞争窗口值步长CWstep1=0,保持初始竞争窗口值CWinit=min[CWold,CWmax];
[0094] 步骤S323,判定当前竞争窗口值CWold相对当前网络过大,初始竞争窗口值步长CWstep1>0,减小初始竞争窗口值CWinit= min[CWold-CWstep1,CWmax];
[0095] 由于当前竞争窗口值CWold相对当前网络过大,应大幅度递减,调整的第一初始竞争窗口值步长CWstep1=2-1·CWold,初始竞争窗口值CWinit= min[2-1·CWold,CWmax],减半递减,尽快减轻由于竞争窗口值过大带来的吞吐量下降。
[0096] 步骤S33,当Pc>Pcmax时,判定当前网络阻塞,增大初始竞争窗口值CWinit= min[CWold+CWstep2,CWmax];其中,CWstep2为第二初始竞争窗口值步长;
[0097] 此时,CWstep2=f(CWold)·L(n),其中,f(CWold)为CWold的减函数,L(n)为n的增函数,通过这两个函数得到的CWstep2,使得CWinit近似满足图1所示实施例中竞争站点数与碰撞概率的关系曲线。可以看出,在参与竞争站点数n一定时,L(n)不变,随着CWold值增大,f(CWold)减小,CWstep2减小。在CWold值较大的情况下,碰撞概率变小,此时需要用数值较小的步长对CW进行调整,即慢调CW,这样更有利于将CW调整到最优值;而在CW值较小的情况下,碰撞概率较大,需要采用数值较大的步长对CW进行调整,即快调CW, 有利于将CW更快调整到最优值。
[0098] 步骤S34,当Pcmin≤Pc≤Pcmax时,判定当前网络良好,保持初始竞争窗口值CWinit=min[CWold,CWmax]。
[0099] 本实施例根据实际碰撞概率Pc分别与网络吞吐量最大化时的最优碰撞概率Pcopt和竞争窗口阈值Thr(n)的比较结果,对初始竞争窗口值CWinit进行调整,在网络相对空闲且当前竞争窗口值CWold相对当前网络过大时,使竞争窗口值大幅度递减,尽快减轻由于竞争窗口值过大带来的吞吐量下降;在网络阻塞时,增大竞争窗口值,降低冲突。
[0100] 如图6所示,图6为本发明竞争窗口值自适应调整方法的第一实施例中调整重传竞争窗口值的流程图。
[0101] 步骤S40具体包括:
[0102] 步骤S41,从媒体接入控制层获取误包率PER;
[0103] 其中,误包率PER=校验错误的帧数÷总校验帧数。
[0104] 步骤S42,判断误包率PER是否远大于实际碰撞概率Pc;如果是,则执行步骤S43;如果否,则执行步骤S44;
[0105] 可以进一步的将PER>a·Pc判定为PER远大于Pc,a为倍数,具体倍数可根据实际网络状况而定,例如,当a=100时,则在PER大于100倍Pc时,判定为PER远大于Pc。
[0106] 步骤S43,判定数据帧传输失败原因是由网络环境恶劣导致,保持重传竞争窗口值CWnew=min[CWold,CWmax];
[0107] 步骤S44,判定数据帧传输失败原因是由碰撞导致,增大重传竞争窗口值CWnew= min[CWold+CWstep3,CWmax];其中,CWstep3为重传竞争窗口值步长;
[0108] 此时,CWstep3= f(CWold)·L’(n),其中,f(CWold)为CWold的减函数,L’(n)为n的第二增函数,通过这两个函数得到的CWstep3,使得CWnew近似满足图1所示实施例中竞争站点数与碰撞概率的关系曲线。可以看出,在参与竞争站点数n一定时,L’(n)不变,随着CWold值增大,f(CWold)减小,CW step3减小。在CWold值较大的情况下,碰撞概率变小,此时需要用数值较小的步长对CW进行调整,即慢调CW,这样更有利于将CW调整到最优值;而在CW值较小的情况下,碰撞概率较大,需要采用数值较大的步长对CW进行调整,即 快调CW,有利于将CW更快调整到最优值。此外,L’(n)可与图5所示实施例中的L(n)相同。
[0109] 本实施例将实际碰撞概率与误包率相比,能更好的反映网络的冲突情况,动态调整重传竞争窗口值,使竞争窗口值最终接近最优值,从而提高网络吞吐量,减小延迟。
[0110] 如图7所示,图7为本发明竞争窗口值自适应调整方法的第二实施例的流程图。
[0111] 步骤S501,设置CWinit=min[CWmin,CWmax];
[0112] 在802.11n协议中,将CWmin规定为16;
[0113] 步骤S502,从区间[0,CW-1]上的均匀分布中选取一个随机数作为随机回退时长;
[0114] 步骤S503,站点侦听到信道空闲时,后延DIFS时长;
[0115] 步骤S504,判断信道是否空闲;如果否,则执行步骤S505;如果是,则执行步骤S506;
[0116] 步骤S505,回退计数器冻结,暂停回退计数,返回步骤S503;
[0117] 步骤S506,继续回退计数,判断回退计数是否到达0;如果否,则返回步骤S504;如果是,则执行步骤S507;
[0118] 在回退时段期间,若信道保持空闲状态,则继续回退计数,并判断回退计数器是否到达0,如果信道忙碌,则暂停回退计数,直至信道重新空闲后,再继续计数。
[0119] 步骤S507,传输数据帧;
[0120] 步骤S508,判断数据帧是否传输成功;如果是,则执行步骤S509;如果否,则执行步骤S510;
[0121] 步骤S509,执行调整初始竞争窗口值的流程;
[0122] 调整初始竞争窗口值的流程可参照图1至图5所示实施例,在此不作赘述。
[0123] 步骤S510,判断是否达最大重传次数;如果是,则执行步骤S511;如果否,则执行步骤S512;
[0124] 步骤S511,丢弃此数据帧;
[0125] 步骤S512,执行调整重传竞争窗口值的流程。
[0126] 调整重传始竞争窗口值的流程可参照图1、图2和图6所示实施例,在此不作赘述。
[0127] 由于本实施例的调整初始竞争窗口值的流程和调整重传竞争窗口值的流程采用了前述图1至图6所示实施例的所有技术方案,本实施例同样能够更好的反映网络的冲突情况,初始竞争窗口值及重传竞争窗口值联合动态调整,使竞争窗口值最终接近最优值,从而提高网络吞吐量,减小延迟。
[0128] 如图8所示,图8为本发明竞争窗口值自适应调整装置的第一实施例的结构示意图。本发明提出的竞争窗口值自适应调整装置包括:
[0129] 测量模块10,用于测量当前参与竞争站点数n;
[0130] 获取模块20,用于根据当前参与竞争站点数n,获取当前竞争窗口值CWold的实际碰撞概率Pc和网络吞吐量最大化时的最优碰撞概率Pcopt;
[0131] 第一调整模块30,用于在数据帧传输成功时,根据实际碰撞概率Pc和最优碰撞概率Pcopt,调整初始竞争窗口值CWinit;
[0132] 第二调整模块40,用于在数据帧传输失败时,根据实际碰撞概率Pc,调整重传竞争窗口值CWnew。
[0133] 本实施例根据当前网络中的参与竞争站点数计算实际碰撞概率和最优碰撞概率,在数据帧传输成功时,将实际碰撞概率并与使网络吞吐量最大化时的最优碰撞概率相比,以此动态调整初始竞争窗口值;在数据帧传输失败时,将实际碰撞概率与误包率相比,以此动态调整重传竞争窗口值。本实施例能更好的反映网络的冲突情况,初始竞争窗口值及重传竞争窗口值联合动态调整,这样能使竞争窗口值最终接近最优值,从而提高网络吞吐量,减小延迟。
[0134] 如图9所示,图9为本发明竞争窗口值自适应调整装置的第二实施例的结构示意图。
[0135] 获取模块20具体包括:
[0136] 第一获取单元21,用于在当前参与竞争站点数n和当前竞争窗口值CWold时,确定实际碰撞概率Pc=1-(1-τ)n-1[1+(n-1)τ];其中,τ为在当前竞争窗口值CWold时,站点在信道时隙开始时的发送概率;
[0137] 第二获取单元22,用于在当前参与竞争站点数n和网络吞吐量最大化时,确定最优碰撞概率Pcopt=1-(1-τopt)n-1[1+(n-1)τopt];其中,τopt为在网络吞吐量最大化时,站点在信道时隙开始时的发送概率。
[0138] 本实施例的τ与当前参与竞争站点数n和当前竞争窗口值CWold有关,τ opt与当前参与竞争站点数n和最优CW值有关,即它是根据最大网络吞吐量所得。这两个参数可统计计算得到。根据当前网络中的参与竞争站点数n计算当前竞争窗口值CWold的实际碰撞概率Pc和网络吞吐量最大化时的最优碰撞概率Pcopt,并以此动态调整初始竞争窗口值CWinit和重传竞争窗口值CWnew,能更好的反映网络的冲突情况,使竞争窗口值接近最优值,从而提高网络吞吐量,减小延迟。
[0139] 如图10所示,图10为本发明竞争窗口值自适应调整装置的第三实施例的结构示意图。
[0140] 第一调整模块30具体包括:
[0141] 第一比较单元31,用于比较实际碰撞概率Pc与碰撞概率阈值下限Pcmax=P copt-DL和碰撞概率阈值上限Pcmin=Pcopt+DL的大小;其中,DL为互动容忍门限,互动容忍门限DL可通过仿真获得;
[0142] 第一调整单元32,用于当Pc
[0143] 第二调整单元33,用于当Pc>Pcmax时,判定当前网络阻塞,增大初始竞争窗口值CWinit= min[CWold+CWstep2,CWmax];其中,CWstep2为第二初始竞争窗口值步长;此时,CWstep2=f(CWold)·L(n),其中,f(CWold)为CWold的减函数,L(n)为n的增函数,通过这两个函数得到的CWstep2,使得CWinit近似满足图1所示实施例中竞争站点数与碰撞概率的关系曲线。可以看出,在参与竞争站点数n一定时,L(n)不变,随着CWold值增大,f(CWold)减小,CWstep2减小。在CWold值较大的情况下,碰撞概率变小,此时需要用数值较小的步长对CW进行调整,即慢调CW,这样更有利于将CW调整到最优值;而在CW值较小的情况下,碰撞概率较大,需要采用数值较大的步长对CW进行调整,即快调CW,有利于将CW更快调整到最优值。
[0144] 第三调整单元34,用于当Pcmin≤Pc≤Pcmax时,判定当前网络良好,保持初始竞争窗口值CWinit=min[CWold,CWmax]。
[0145] 本实施例在Pc
Pcmax时,表示冲突较严重,网络相对阻塞,应增大竞争窗口值,降低冲突。本实施例将实际碰撞概率Pc与网络吞吐量最大化时的最优碰撞概率Pcopt比较,动态调整初始竞争窗口值CWinit,能更好的反映网络的冲突情况,使竞争窗口值接近最优值,从而在网络相对空闲时,提高时隙利用率,减小延迟,在网络相对阻塞时,降低冲突。[0146] 本发明实施例的第一调整单元32具体用于:
[0147] 当Pc
[0148] 如果是,则判定当前竞争窗口值CWold相对当前网络适中,初始竞争窗口值步长CWstep1=0,保持初始竞争窗口值CWinit=min[CWold,CWmax];
[0149] 如果否,则判定当前竞争窗口值CWold相对当前网络过大,初始竞争窗口值步长CWstep1>0,减小初始竞争窗口值CWinit= min[CWold-CWstep1,CWmax]。
[0150] 本实施例在CWold大于竞争窗口阈值Thr(n)时,由于当前竞争窗口值CWold相对当前网络过大,应大幅度递减,调整的第一初始竞争窗口值步长CWstep1=2-1·CWold,初始竞争窗口值CWinit= min[2-1·CWold,CWmax],减半递减,尽快减轻由于竞争窗口值过大带来的吞吐量下降。本实施例根据实际碰撞概率Pc分别与网络吞吐量最大化时的最优碰撞概率Pcopt和竞争窗口阈值Thr(n)的比较结果,对初始竞争窗口值CWinit进行调整,在网络相对空闲且当前竞争窗口值CWold相对当前网络过大时,使竞争窗口值大幅度递减,尽快减轻由于竞争窗口值过大带来的吞吐量下降;在网络阻塞时,增大竞争窗口值,降低冲突。
[0151] 如图11所示,图11为本发明竞争窗口值自适应调整装置的第四实施例的结构示意图。
[0152] 第二调整模块40具体包括:
[0153] 误包率获取单元41,用于从媒体接入控制层获取误包率PER,其中,误包率PER=校验错误的帧数÷总校验帧数;
[0154] 第二比较单元42,用于判断误包率PER是否远大于实际碰撞概率Pc;
[0155] 第四调整单元43,用于当PER远大于Pc时,判定数据帧传输失败原因是由网络环境恶劣导致,保持重传竞争窗口值CWnew=min[CWold,CWmax];
[0156] 第五调整单元44,用于当PER并非远大于Pc时,则判定数据帧传输失败原因是由碰撞导致,增大重传竞争窗口值CWnew= min[CWold+CWstep3,CWmax];其中,CWstep3为重传竞争窗口值步长。此时,CWstep3= f(CWold)·L’(n),其中,f(CWold)为CWold的减函数,L’(n)为n的第二增函数,通过这两个函数得到的CWstep3,使得CWnew近似满足图1所示实施例中竞争站点数与碰撞概率的关系曲线。可以看出,在参与竞争站点数n一定时,L’(n)不变,随着CWold值增大,f(CWold)减小,CWstep3减小。在CWold值较大的情况下,碰撞概率变小,此时需要用数值较小的步长对CW进行调整,即慢调CW,这样更有利于将CW调整到最优值;而在CW值较小的情况下,碰撞概率较大,需要采用数值较大的步长对CW进行调整,即快调CW,有利于将CW更快调整到最优值。此外,L’(n)可与图5所示实施例中的L(n)相同。
[0157] 本实施例可将PER>a·Pc判定为PER远大于Pc,a为倍数,具体倍数可根据实际网络状况而定,例如,当a=100时,则在PER大于100倍Pc时,判定为PER远大于Pc。本实施例将实际碰撞概率与误包率相比,能更好的反映网络的冲突情况,动态调整重传竞争窗口值,使竞争窗口值最终接近最优值,从而提高网络吞吐量,减小延迟。
[0158] 以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。