利索能及
我要发布
收藏
专利号: 201910169735X
申请人: 南京信息职业技术学院
专利类型:发明专利
专利状态:已下证
更新日期:2026-04-09
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种IEEE 802.11AF的侦查速率选择方法,基于计算IEEE 802.11AF协议中物理速率的发送数据帧的成功率和吞吐量来动态修改发送数据帧的主速率的过程中,使用侦查速率的选择来测试每一个物理速率在当前无线环境下的适应性;其特征在于:通过快速选择IEEE 802.11AF速率资源池中合理的有限的侦查速率,减少由于对所有物理速率测量而带来的带宽浪费和由于选择速率不合适导致的数据传输性能波动和降低;包括以下内容:1)在设定速率控制周期Trc后,通过构建三级速率表来选取侦查速率,这三级速率表分别为:根据IEEE 802.11AF标准规定的所有物理速率按照一定的映射规则组合起来的矩阵资源池即第一级速率表、根据速率周边算法和二分算法并将二分算法得到的速率经过速率过滤算法构建的侦查速率资源池即第二级速率表、从二级速率表中随机选取的由n个速率,n∈[2,

5],构成的将要侦查的速率资源池即用于侦查的第三级速率表;2)侦查速率、主发送速率的使用和控制机制,其中,主发送速率是基于侦查速率选择机制获取的在一个速率控制周期内主要的发送数据的速率,包括使用主发送速率的发送数据时间的控制、主发送速率的释放和保存、开始使用侦查速率发送数据的时间阈值计算、根据开始使用侦查速率发送数据的时间阈值来进行在侦查速率下的数据发送、侦查速率发送数据的时间t的设定以及重新启用主发送速率并进行数据发送;3)在构建第二级速率表的过程中使用速率周边算法构建了第二级速率表中的第一部分侦查速率,使用了二分算法并结合使用速率过滤算法对二分算法获取的速率进行进一步过滤和筛选,构建了第二级速率表的第二部分侦查速率;速率周边算法是从上一个速率控制周期使用的试探速率中获取具有数据发送的最高吞吐量,次高吞吐量,最高成功率的速率的周边相邻的速率,并选入到第二级速率表中,使得第二级速率表的选取在基于上个周期侦查速率的成功率和吞吐量的情况下更具有合理性,其中,具有发送数据的最高吞吐量,次高吞吐量,最高成功率的速率是从上个周期使用的试探速率资源池中根据各个试探速率发送数据的吞吐量和成功率进行统计排序选取的,其理论依据是如果该试探速率具有数据发送的最高吞吐量、次高吞吐量或最高成功率速率,那么它附近速率的发送效果会大概率出现最优;4)根据IEEE 802.11AF标准规定的所有物理速率按照一定的映射规则组合起来的矩阵资源池即第一级速率表中的所有物理速率在映射矩阵中都有一个对应的序号,二分算法通过对当前主发送速率的成功率和吞吐量的分析,构造一个侦查速率选择的随机范围,该范围内的速率是过程性速率,是不能直接进入第二级速率表的速率,需要经过速率过滤机制以进一步缩小侦查速率可选的范围;对二分算法得到的速率进行过滤的速率过滤机制包括理论时间比较算法和skip算法,目的在于过滤由二分法选取的不合适的侦查速率,进一步缩小侦查速率选择的范围,避免由于侦查速率选择不当造成的信道带宽的浪费、性能的波动和降低,以缩短动态速率选择的周期,减少系统吞吐率的波动,提高IEEE 802.11AF无线设备在无线网络环境中的数据吞吐量。

2.根据权利要求1所述的IEEE802.11AF的侦查速率选择方法,其特征在于,包括以下步骤:

步骤1,设定速率控制周期Trc,用于动态速率选择的控制,一方面用于定时从第三级速率表中获取吞吐率和成功率较高的几个速率作为下一个速率控制周期的主发送速率,其次用于定时构建第二级速率表和第三级速率表,还用于定时计算侦查数据帧发送的阈值;

步骤2,构建第一级速率表,根据IEEE 802.11AF标准规定的所有物理速率按照一定的映射规则组合起来的矩阵资源池即第一级速率表,表示速率与索引的矩阵映射关系,引入矩阵映射表的目的是为了针对矩阵映射关系中的索引进行二分算法运算,从而能够方便的选取索引对应的IEEE 802.11AF速率;

步骤3,根据速率周边算法和二分算法并将二分算法得到的过程性速率经过速率过滤算法构建侦查速率资源池即第二级速率表,首先使用速率周边算法获取第二级速率表中的第一部分侦查速率:第一部分侦查速率是由速率周边算法获取,分别为将最高吞吐率对应速率的长间隔和短间隔特征反转后的速率、最高吞吐率对应速率的相邻速率的上一个和下一个速率、次高吞吐率对应速率的相邻速率的上一个和下一个速率和最高成功率对应速率的相邻速率的上一个和下一个速率,其中,具有发送数据的最高吞吐量,次高吞吐量,最高成功率的速率是从上个周期使用的试探速率资源池中根据各个试探速率发送数据的吞吐量和成功率进行统计排序选取的;其次使用二分算法计算过程性速率,并对二分算法获取的过程性速率先后经过理论时间比较算法和skip算法获取第二级速率表中的第二部分侦查速率:第二部分侦查速率是由二分算法结合理论时间比较算法和skip算法获取,分别为二分算法与速率过滤算法得到的首选速率和二分算法与速率过滤算法得到的次选速率;

步骤4,从步骤3的速率周边算法获取的第一部分侦查速率和由二分算法并将二分算法经过理论时间比较算法及skip算法获取第二级速率表中的第二部分侦查速率组合成的第二级速率表中选取n个速率构成第三级速率表,其中n的选取范围为n∈[2,5],第三级速率表为在一个速率控制周期内的某段时间t内用来发送侦查数据帧的侦查速率资源池,t是使用侦查速率发送侦查数据帧的时间;

步骤5,开始使用侦查速率发送数据的时间阈值计算,该阈值用于控制侦查数据帧的发送的时刻,即当发送帧的个数超过控制侦查数据帧发送阈值的时候,在后续的时间t内使用侦查速率发送侦查数据帧,并保存使用侦查速率发送数据之前的主发送速率,用于时间t到时后,将当前的侦查速率恢复到原先的主发送速率进行发送,其中,时间阈值的以帧的个数作为计量,单位为个;时间t为使用侦查速率发送侦查数据帧的时间,与速率控制周期的关系为: 主发送速率是基于本专利提出的侦查速率选择机制获取的在一个速率控制周期内主要的发送数据的速率;

步骤6,使用主发送速率进行数据帧的发送;

步骤7,当使用主发送速率发送数据帧的个数达到侦查数据帧发送阈值的时候,则将在后续的时间t内使用步骤4构建的第三级速率表即试探速率资源池中的侦查速率发送侦查数据帧,并保存之前所使用的主发送速率;

步骤8,使用步骤4构建的第三级速率表即试探速率资源池中的侦查速率对侦查数据帧进行发送的时间t到时之后,恢复主发送速率并继续使用主发送速率在一个速率控制周期剩余的时间内对数据帧进行发送;

步骤9,当速率控制周期到时之后,对第三级速率表中的侦查速率的发送情况进行统计,统计每个速率的成功率和吞吐率,并根据吞吐率和成功率对第三级速率表的速率进行排序,获取最高吞吐率,次高吞吐率,最高成功率的,并根据统计的吞吐率和成功率来选取下一个速率控制周期内的主发送速率,该统计也会作为下一次操作中步骤3的一个速率周边算法的输入。

步骤10,跳转到步骤3,进入下一个速率控制周期并循环执行后续的步骤,直到整个系统由于断电或者其他异常情况导致的系统运行终止。

3.根据权利要求1或2所述的IEEE802.11AF的侦查速率选择方法,其特征在于:所述速率控制周期Trc的设定优选值为100ms。

4.根据权利要求1或2所述的IEEE802.11AF的侦查速率选择方法,其特征在于:所述从第二级速率表中选取n个速率构成第三级速率表,其中n的优选值为n=5。

5.根据权利要求2所述的IEEE802.11AF的侦查速率选择方法,其特征在于:所述步骤3中的使用二分算法计算过程性速率的具体方法为:根据上一个速率控制周期Trc中选取速率的成功率统计情况来快速选择下一个速率控制周期Trc的侦查速率,减少侦查速率的选择周期,降低系统吞吐率的波动,二分算法具体如下:情况1:如果上一个速率控制周期Trc中的最大侦查速率的成功率大于90%,则说明能够继续选取较高速率为侦查速率,侦查速率选取算法如下:第一步,获取侦查速率在矩阵映射表中对应索引选择范围的低边界,计算公式为:

RateIdxl=RateIdxprev+(RateIdxmax-RateIdxprev)/2

其中,RateIdxl为计算出的待选取侦查速率对应索引范围的低边界,RateIdxprev为上一次选取的侦查速率的索引,RateIdxmax为IEEE 802.11AF协议标准中规定的最大物理速率在矩阵映射表中的索引;

第二步,使用随机方法在[RateIdxl,RateIdxmax]范围内选取下一次即将侦查的侦查速率在一级速率矩阵映射图中的索引,计算公式为:RateIdx=RAND([RateIdxl,RateIdxmax])

其中,RateIdx为侦查速率在一级速率矩阵映射图中的索引,RAND(.)为随机方法,RateIdxl为计算出的待选取侦查速率对应索引范围的低边界,RateIdxprev为上一次选取的侦查速率的索引,RateIdxmax为IEEE 802.11AF协议标准中规定的最大物理速率在矩阵映射表中的索引;

第三步,将矩阵索引映射成对应的速率,其计算公式为:

Rateprob=MAP(RateIdx)

其中,Rateprob为在下一次要使用的侦查速率,MAP(.)为一级速率映射表中速率与索引的映射方法;

情况2:如果上一个速率控制周期Trc中的最小侦查速率的成功率小于90%,则说明需要选取较低速率为侦查速率,侦查速率选取算法如下:第一步,获取侦查速率在矩阵映射表中对应索引选择范围的低边界,计算公式为:

RateIdxl=(0+RateIdxprev)/2

其中,RateIdxl为计算出的待选取侦查速率对应索引范围的低边界,RateIdxprev为上一次选取的侦查速率的索引;

第二步,使用随机方法在[RateIdxl,RateIdxmax]范围内选取下一次即将侦查的侦查速率在一级速率矩阵映射图中的索引,计算公式为:RateIdx=RAND([RateIdxl,RateIdxprev])

其中,RateIdx为侦查速率在一级速率矩阵映射图中的索引,RAND(.)为随机方法,RateIdxl为计算出的待选取侦查速率对应索引范围的低边界,RateIdxprev为上一次选取的侦查速率的索引;

第三步,将矩阵索引映射成对应的速率,其计算公式为:

Rateprob=MAP(RateIdx)

其中,Rateprob为在下一次要使用的侦查速率,MAP(.)为一级速率映射表中速率与索引的映射方法;

情况3:其他情况下,侦查速率选择的范围保持不变。

6.根据权利要求2所述的IEEE802.11AF的侦查速率选择方法,其特征在于:所述步骤3中的理论时间比较算法构造第二级速率表的第二部分侦查速率的具体方法为:第二级速率表中存在的二分算法与速率过滤算法得到的首选速率和二分算法与速率过滤算法得到的次选速率之间有使用的优先级次序,排在首位的则优先选择使用,优先侦查,具体实现步骤如下:首先,计算二分算法选出的侦查速率对固定长度l的数据帧的理论传输时间Tprob;

其次,计算第二级速率表中首选和次选侦查速率对固定长度l的数据帧的理论传输时间,分别为Tfirst和Tsecond;

再者,通过对三个时间值的比较来判断当前的侦查速率选择是否恰当以及将该侦查速率放在第二级速率表中的哪个位置比较合适,其基本算法如下:如果:Tprob<Tfirst说明待选侦查速率的传输时间要短,吞吐率在理论上要大,所以在这种情况下,可以选择该侦查速率并将该侦查速率替换首选的侦查速率,原先的首选侦查速率替换次选侦查速率;

如果:Tfirst<Tprob<Tsecond说明待选侦查速率的传输时间虽然比首选主速率要长,但是比次选侦查速率要短,在这种情况下,可以选择该侦查速率并将该侦查速率替换次选的侦查速率;

其他情况:该待选侦查速率不适合侦查,删除并使用二分算法重新选择新的侦查速率。

7.根据权利要求2所述的IEEE802.11AF的侦查速率选择方法,其特征在于:所述步骤3中的skip算法构造第二级速率表的第二部分侦查速率的具体方法为:对于IEEE 802.11AF中的所有速率都维护一个skip计数,skip计数用来记录该速率在系统运行过程中被选择为侦查速率的次数,该次数越少就应该多给该速率选择的机会,在使用二分算法结合速率过滤机制算法构建第二级速率表的时候,对二分算法计算出的未经过速率过滤机制算法侦查速率进行过滤和优选,具体如下:如果SkipCount≥20,则选择该侦查速率,并且将该侦查速率替换首选的侦查速率;

如果10<SkipCount≤20,则选择该侦查速率,并且将该侦查速率替换次选的主速率,其中,SkipCount为skip计数。

8.根据权利要求2所述的IEEE802.11AF的侦查速率选择方法,其特征在于:所述步骤3中的速率周边算法构造第二级速率表的第一部分侦查速率的具体方法为:速率周边算法是从上一个速率控制周期使用的试探速率中获取具有数据发送的最高吞吐量,次高吞吐量,最高成功率的速率的周边相邻的速率,并选入到第二级速率表中,使得第二级速率表的选取在基于上个周期侦查速率的成功率和吞吐量的情况下更具有合理性,其中,具有发送数据的最高吞吐量,次高吞吐量,最高成功率的速率是从上个周期使用的试探速率资源池中根据各个试探速率发送数据的吞吐量和成功率进行统计排序选取的,其理论依据是如果该试探速率具有数据发送的最高吞吐量、次高吞吐量或最高成功率速率,那么它附近速率的发送效果会大概率出现最优,由速率周边算法获取的第一部分速率分别为将最高吞吐率对应速率的长间隔和短间隔特征反转后的速率、最高吞吐率对应速率的相邻速率的上一个和下一个速率、次高吞吐率对应速率的相邻速率的上一个和下一个速率和最高成功率对应速率的相邻速率的上一个和下一个速率。

9.根据权利要求2所述的IEEE802.11AF的侦查速率选择方法,其特征在于:所述步骤5中计算侦查数据帧发送的阈值的具体方法为:在一个速率控制周期中,如果侦查数据帧的发送次数比较频繁,则对带宽的浪费会比较严重,所以选择一个好的侦查数据帧发送步数对于系统的优化至关重要,由于IEEE 802.11AF协议标准中的聚合度即AMPDU中包含的平均MPDU的个数是衡量数据发送快慢的一个重要指标,所以使用了基于AMPDU含有的平均MPDU的个数作为主要参数来设置侦查速率选择和侦查数据帧的发送阈值max_step,其中,AMPDU中含有的平均MPDU的个数使用EWMA算法来计算,其步骤如下:首先,计算AMPDU中含有的平均MPDU个数,其计算公式为:

AverageCount=λ*AverageCountPrev+(1-λ)*AverageCountNow其中,AverageCount为最终计算得到的AMPDU中含有的平均MPDU个数,

AverageCountPrev是之前计算的平均个数,而AverageCountNow为当前计算的平均个数,λ∈[0,1]为EWMA算法加权值;

其次,以计算出的AverageCount为标准来计算对应的侦查数据帧发送次数,即:

如果:AverageCount≥10;

则:MaxStept=MaxStept-1+2*AverageCount;

如果5≤AverageCount<10;

则:MaxStept=MaxStept-1+AverageCount;

如果:1<AverageCount<5;

其他情况: