一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种动态调整数据窗口大小的方法与流程

2022-11-13 13:17:43 来源:中国专利 TAG:


1.本发明涉及通信技术领域,是一种动态调整数据窗口大小的方法。


背景技术:

2.无线自组网利用动态组网,无线中继实现终端之间互联互通,具有自组织,自修复能力强,组网效率高等优点。能够满足特定情况下的应用需求,对现有无线通信体系进行了补充与完善,无论在理论研究上还是实践应用上都有重要价值。但这种新型的无线网络模式在带来诸多优点的同时,也面临着诸多挑战。
3.无线自组网在紧急通信、灾害搜救行动、农田检测等特殊专用领域受到了广泛的应用。本文考虑专网物联网(private internet of things,p-iot)的自组网模式,在该场景中主要传递控制指令以及话音、图像、文本等消息,控制指令需要低时延和高成功投递率才能够使控制指令精准传达,而对于话音、图像等信息,则需要满足大吞吐量和时效性的要求。在设计协议时,将考虑对业务信息进行优先级划分,满足不同业务的qos需求,使高优先级业务数据能够有较低的时延以及较高的成功投递率。
4.另一方面,在专用物联网的自组网模式中,通常节点接入量较大,而且业务往往具有突发性,以至于对无线媒体的竞争非常激烈。因此,为了提高网络接入的灵活性和资源利用率,就在此引入了多信道自组织网络。在单信道无线自组织网络中,重点是如何避免碰撞,提高通信效率,而在多信道的无线自组织网络中,重点则是如何为不同的节点分配信道,使其能够充分利用信道资源,提高系统吞吐量。为了实现信道的成功预约,此处使用基于分割时隙的多信道mac协议。
5.基于时隙分割的多信道mac协议在时间轴上划分为交替出现的控制窗口和数据窗口,在控制窗口期间,所有的节点都切换到同一控制信道上去,进行数据信道的预约,等控制窗口结束后,节点再根据在控制窗口中信道的预约情况,切换到相应的数据信道中去。数据窗口过长,则会导致数据信道空闲,造成浪费,如果过短,则节点在数据信道上无法将数据传输完毕。所以设置一个合理的数据窗口大小是很重要的。


技术实现要素:

6.本发明为克服现有技术的不足,本发明针对专用物联网的自组网模式中多种业务优先级需求不同的特点和控制信令带来时延开销的问题,提供一种动态调整数据窗口大小的方法。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。
7.一种动态调整数据窗口大小的方法,所述方法包括以下步骤:
8.步骤1:在控制窗口按照802.11dcf机制,在第k周期进行控制信令的交换,并通过控制信令的交换,获得各个节点在第k 1周期要发送分组的优先级与分组个数;
9.步骤2:节点在第k周期按照第k-1周期估计的数据窗口大小进行连续发送分组;
10.步骤3:估计第k 1周期的数据窗口大小,在第k周期数据窗口结束后,进入第k 1传输周期的控制窗口阶段,重复步骤1至步骤3。
11.优选地,所述步骤1具体为:
12.步骤1.1:当前周期为第k周期,为了实现节点在第k 1周期将要发送分组优先级与个数的统计,cts和res帧中增加了一个扩展域,下一分组状态{p
k 1
,n
k 1
},其中p
k 1
表示在第k 1周期将要发送的分组的优先级,n
k 1
则表示在第k 1周期将要发送的分组的个数,个数是给定节点在第k周期进行的统计,得知第k 1周期将要发的第一个分组的优先级p
k 1
与目的地址,n
k 1
就等于与这第一个分组有着相同优先级和目的地址的分组个数;每个节点本地都维护一个下一周期要发送的分组矢量{

,npsi,

},npsi为节点i在下一周期的分组状态,lnpsv由一跳内的邻居节点的nps决定;
13.步骤1.2:在第k周期的控制窗口阶段,有数据帧要发送的节点将发送rts,接收节点接收到rts后,计算下一分组状态nps,更新本地维护的lnpsv,并将下一分组状态值设置在cts的nps域中,发送cts;
14.步骤1.3:发送节点接收到cts帧后,读取cts帧中的nps域,将nps值更新到本地的lnpsv中,发送节点就开始统计其本地的下一分组状态,将统计得到的数值更新到lnpsv中,将该值放置在res帧中的nps域中,并发送res;
15.步骤1.4:收发节点对一跳范围内的邻居节点将分别通过cts、res获得接收节点和发送节点在下一周期的分组发送情况,并将获取到的nps域的值,更新在本地的lnpsv上。
16.优选地,当节点发送完与第一个发送的分组同一优先级、同一目的地址的分组后,数据窗口还有剩余时间,则节点继续发送下一优先级中与该分组有着同一目的地址的分组。
17.优选地,当数据窗口剩余的时间不足以发送完同一优先级、同一目的地址的分组,则取消剩余分组的发送,在下一周期的控制窗口重新进行竞争。
18.优选地,所述步骤3具体为:
19.在第k周期的控制窗口结束时,lnpsv中存放了一跳范围内节点在第k 1周期将要发送的分组的优先级和个数,将根据优先级与分组数目的不同,动态的调整数据窗口的大小;
20.当在lnpsv中不存在最高优先级业务的话,此处将对每个节点要发送的分组个数取均值,每个信道能够发送分组个数的最大值取m,每个信道上传输数据帧的个数通过下式表示:
[0021][0022]
数据包长度固定,那么在数据信道传输一个数据包的时间通过下式表示:
[0023]
t
data
=l h sifs δ ack difs δ
[0024]
其中,h为传输引入的mac层和物理层的开销的时间,l为传输数据负载的时间,ack表示为传输ack包的时间;
[0025]
数据窗口的大小通过下式确定:
[0026]
t
dw
=t
data
·ntrans

[0027][0028]
优选地,数据窗口的大小与两个因素有关,一是在每个信道上传输数据帧的个数,即n
trans
,二是在数据信道上传输一个数据帧的时间,用t
data
表示。
[0029]
优选地,当在lnpsv中存在最高优先级的业务,则n
trans
就取最高优先级业务包的个数,如果存在多个最高优先级业务,则取其中的最大值。
[0030]
一种动态调整数据窗口大小系统,所述系统包括:
[0031]
交换模块,所述交换模块在控制窗口按照802.11dcf机制,在第k周期进行控制信令的交换,并通过控制信令的交换,获得各个节点在第k 1周期要发送分组的优先级与分组个数;
[0032]
分组模块,所述分组模块通过节点在第k周期按照第k-1周期估计的数据窗口大小进行连续发送分组;
[0033]
数据窗确定模块,所述数据窗确定模块在估计第k 1周期的数据窗口大小,在第k周期数据窗口结束后,进入第k 1传输周期的控制窗口阶段。
[0034]
一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行,以用于实现一种动态调整数据窗口大小的方法。
[0035]
一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,当所述处理器运行所述存储器存储的计算机程序时,所述处理器执行一种动态调整数据窗口大小的方法。
[0036]
本发明具有以下有益效果:
[0037]
本发明将为减少控制信令带来的时延开销和保障不同优先级的业务需求,根据优先级和业务负载,对下一周期的数据窗口进行了动态调整,降低了网络的整体时延,保障了最高优先级业务的低时延和高可靠性。
[0038]
本发明在控制窗口阶段,通过cte、res的交换,获取网络中各个节点下一周期要发送的数据分组优先级及与该分组有着同一优先级同一目的地址的分组个数,根据该值,从网络负载和业务优先级这两个方面考虑,动态调整下一周期的数据窗口大小,在下一周期的数据窗口期间,连续发送多个数据分组,从而降低因控制信令带来的时延开销,同时保证不同优先级业务的传输需求。
附图说明
[0039]
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0040]
图1为动态调整数据窗口大小的流程图;
[0041]
图2为仿真得到的动态调整数据窗口大小前后网络的时延性能;
[0042]
图3为仿真得到的动态调整数据窗口大小前后优先级3的时延性能;
[0043]
图4为仿真得到的动态调整数据窗口大小前后优先级8的时延性能;
[0044]
图5为仿真得到的动态调整数据窗口大小前后优先级8的成功到达率性能。
具体实施方式
[0045]
下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0046]
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
[0047]
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
[0048]
此外,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
[0049]
以下结合具体实施例,对本发明进行了详细说明。
[0050]
具体实施例一:
[0051]
根据图1至图5所示,本发明为解决上述技术问题采取的具体优化技术方案是:本发明涉及一种动态调整数据窗口大小的方法。
[0052]
一种动态调整数据窗口大小的方法,所述方法包括以下步骤:
[0053]
步骤1:在控制窗口按照802.11dcf机制,在第k周期进行控制信令的交换。并通过控制信令的交换,获得各个节点在第k 1周期要发送分组的优先级与分组个数;
[0054]
步骤2:节点在第k周期按照第k-1周期估计的数据窗口大小进行连续发送分组;
[0055]
所述步骤2具体为:
[0056]
如果节点发送完与第一个发送的分组同一优先级、同一目的地址的分组后,数据窗口还有足够的剩余时间,则节点继续发送下一优先级中与该分组有着同一目的地址的分组。相应的,如果数据窗口剩余的时间不足以发送完同一优先级、同一目的地址的分组,则取消剩余分组的发送,在下一周期的控制窗口重新进行竞争。这样可以充分利用信道资源,进一步减少业务的时延。
[0057]
步骤3:估计第k 1周期的数据窗口大小,在第k周期数据窗口结束后,进入第k 1传输周期的控制窗口阶段,重复步骤1、2、3。
[0058]
具体实施例二:
[0059]
本技术实施例二与实施例一的区别仅在于:
[0060]
所述步骤1具体为:
[0061]
当前周期为第k周期,为了实现节点在第k 1周期将要发送分组优先级与个数的统计,cts和res帧中增加了一个扩展域——下一分组状态(next packet state,nps){p
k 1
,n
k 1
},其中p
k 1
表示在第k 1周期将要发送的分组的优先级,n
k 1
则表示在第k 1周期将要发送的分组的个数,这个个数是给定节点在第k周期进行的统计,首先可以得知第k 1周期将要发的第一个分组的优先级p
k 1
与目的地址,n
k 1
就等于与这第一个分组有着相同优先级和目的地址的分组个数。每个节点本地都维护一个下一周期要发送的分组矢量(local next packet state vector,lnpsv){

,npsi,

},npsi为节点i在下一周期的分组状态,lnpsv由一跳内的邻居节点的nps决定。
[0062]
首先在第k周期的控制窗口阶段,有数据帧要发送的节点将发送rts,接收节点接收到rts后,会计算自己的下一分组状态nps,更新本地维护的lnpsv,并将下一分组状态值设置在cts的nps域中,发送cts。
[0063]
发送节点接收到cts帧后,读取cts帧中的nps域,将nps值更新到本地的lnpsv中,发送节点就开始统计其本地的下一分组状态,将统计得到的数值更新到lnpsv中。随后,将该值放置在res帧中的nps域中,并发送res。
[0064]
收发节点对一跳范围内的邻居节点将分别通过cts、res获得接收节点和发送节点在下一周期的分组发送情况,并将获取到的nps域的值,更新在本地的lnpsv上。
[0065]
具体实施例三:
[0066]
本技术实施例三与实施例二的区别仅在于:
[0067]
当节点发送完与第一个发送的分组同一优先级、同一目的地址的分组后,数据窗口还有剩余时间,则节点继续发送下一优先级中与该分组有着同一目的地址的分组。
[0068]
具体实施例四:
[0069]
本技术实施例四与实施例三的区别仅在于:
[0070]
当数据窗口剩余的时间不足以发送完同一优先级、同一目的地址的分组,则取消剩余分组的发送,在下一周期的控制窗口重新进行竞争。
[0071]
具体实施例五:
[0072]
本技术实施例五与实施例四的区别仅在于:
[0073]
所述步骤3具体为:
[0074]
在第k周期的控制窗口结束时,lnpsv中存放了一跳范围内节点在第k 1周期将要发送的分组的优先级和个数,将根据优先级与分组数目的不同,动态的调整数据窗口的大小。数据窗口的大小与两个因素有关,一是在每个信道上传输数据帧的个数,即n
trans
,二是在数据信道上传输一个数据帧的时间,用t
data
表示。
[0075]
此处为了保障最高优先级业务,也就是控制指令业务的低时延,如果发现在lnpsv中存在最高优先级的业务,则n
trans
就取最高优先级业务包的个数,如果存在多个最高优先级业务,则取其中的最大值。如果在lnpsv中不存在最高优先级业务的话,为了提高话音、视频业务的吞吐量,此处将对每个节点要发送的分组个数取均值,但此时的数据窗口大小是有上限的,每个信道能够发送分组个数的最大值取m,这样做是为了防止在数据窗口期间到来的最高优先级业务等待太久。因此可得,每个信道上传输数据帧的个数如式所示。
[0076][0077]
假设数据包长度固定,那么在数据信道传输一个数据包的时间表示为
[0078]
t
data
=l h sifs δ ack difs δ
[0079]
其中h为传输引入的mac层和物理层的开销的时间,l为传输数据负载的时间,ack表示为传输ack包的时间。
[0080]
由此可得,数据窗口的大小取为
[0081]
t
dw
=t
data
·ntrans
[0082]
下面通过仿真验证本发明的可行性。仿真条件设置如下表1和表2
[0083]
表1、仿真条件
[0084][0085]
表2、优先级业务比例
[0086][0087][0088]
按照上述参数进行仿真结果如图2~图5所示,其中图2为各动态调整数据窗口大小前后网络的时延性能,图3为动态调整数据窗口大小前后优先级3的时延性能,图4为动态调整数据窗口大小前后优先级8的时延性能,图5为动态调整数据窗口大小前后优先级8的
成功到达率性能。从图中我们可以看到,基于数据窗口动态控制的mac协议在时延的性能上有着显著的提升。主要降低了低优先级业务的时延。高优先级业务的低时延和高成功到达率仍能有效保证。
[0089]
具体实施例六:
[0090]
本技术实施例六与实施例五的区别仅在于:
[0091]
数据窗口的大小与两个因素有关,一是在每个信道上传输数据帧的个数,即n
trans
,二是在数据信道上传输一个数据帧的时间,用t
data
表示。
[0092]
具体实施例七:
[0093]
本技术实施例七与实施例六的区别仅在于:
[0094]
当在lnpsv中存在最高优先级的业务,则n
trans
就取最高优先级业务包的个数,如果存在多个最高优先级业务,则取其中的最大值。
[0095]
具体实施例八:
[0096]
本技术实施例八与实施例七的区别仅在于:
[0097]
本发明提供一种动态调整数据窗口大小系统,其特征是:所述系统包括:
[0098]
交换模块,所述交换模块在控制窗口按照802.11dcf机制,在第k周期进行控制信令的交换,并通过控制信令的交换,获得各个节点在第k 1周期要发送分组的优先级与分组个数;
[0099]
分组模块,所述分组模块通过节点在第k周期按照第k-1周期估计的数据窗口大小进行连续发送分组;
[0100]
数据窗确定模块,所述数据窗确定模块在估计第k 1周期的数据窗口大小,在第k周期数据窗口结束后,进入第k 1传输周期的控制窗口阶段。
[0101]
具体实施例九:
[0102]
本技术实施例九与实施例八的区别仅在于:
[0103]
本发明提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行,以用于实现一种动态调整数据窗口大小的方法。
[0104]
具体实施例十:
[0105]
本技术实施例十与实施例九的区别仅在于:
[0106]
本发明提供一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,当所述处理器运行所述存储器存储的计算机程序时,所述处理器执行一种动态调整数据窗口大小的方法。
[0107]
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或n个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“n个”的含义是至少两个,例如两个,三
个等,除非另有明确具体的限定。流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更n个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或n个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,n个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
[0108]
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
[0109]
以上所述仅是一种动态调整数据窗口大小的方法的优选实施方式,一种动态调整数据窗口大小的方法的保护范围并不仅局限于上述实施例,凡属于该思路下的技术方案均属于本发明的保护范围。应当指出,对于本领域的技术人员来说,在不脱离本发明原理前提下的若干改进和变化,这些改进和变化也应视为本发明的保护范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献