一种定向航空自组网中无冲突动态时隙分配方法

文档序号:33633342发布日期:2023-03-28 23:44阅读:77来源:国知局
一种定向航空自组网中无冲突动态时隙分配方法

1.本发明涉及一种定向航空自组网中无冲突动态时隙分配方法。


背景技术:

2.航空自组网(aeronautical ad hoc network,aanet),又称机载网络(airborne network,an)、飞行器自组网(fyling ad hoc network,fanet),最早是美军依据网络中心战的需求而产生的飞行器之间的自组网技术。航空自组网是移动自组织网络(mobile ad hoc networks,manet)在空域组网时的表现形式之一,可以认为是manet的一种特殊形式。它所采用的manet架构具有无需基础设施、灵活的动态组网、自愈性和抗毁性强等特点,能大幅提升各类作战飞行器的协同作战能力。
3.为了克服无人机间通信距离远且使用高端频带信号衰减大等问题,航空自组网物理层一般使用定向天线。特别是随着集成电路和信号处理技术的发展,相控阵天线技术得以迅速发展,在航空自组网中使用相控阵天线通信成为首选。因此,定向传输是航空自组网主要的通信形式。
4.目前针对定向传输的航空自组网媒体接入协议(mac),根据不同的接入机制,可作出如下分类:基于随机接入机制、调度接入机制和二者的混合模式。
5.在航空自组网基于调度接入机制的媒体接入协议中,时分复用(time division multiple access,tdma)机制最为广泛,其基本思想是:将时间划分为帧,每一帧再被划分为多个时隙。根据协议的时隙分配算法,将一段时隙分配给一条或者多条链路,使其在对应的时隙中发送传输队列中的包。当采取合适的算法时,可以完全避免包的碰撞,和基于竞争机制的mac协议相比,tdma机制在一定程度上组网灵活性有所降低,但保障了数据的可靠传递。
6.根据帧结构设计和时隙分配算法的不同,可分为固定分配的tdma和动态分配的tdma,前者将每一帧内固定的某个或某段时隙分配给传输链路,后者根据节点的传输需求动态地调整控制帧和数据传输帧的长度,以及时隙分配策略。
7.目前研究航空自组网基于调度机制的mac协议主要集中在全向传输的假设下,基于定向传输条件下的面向业务需求的调度式时隙分配方法未见公开报道。为保证网络健壮性、提高网络吞吐量、降低关键数据的交付时延,需要针对定向传输网络的特点,在空间维和时间维同时调度无线资源。


技术实现要素:

8.本发明的目的是提供一种定向航空自组网中无冲突动态时隙分配方法,保证无冲突,从而满足关键信息无法容忍丢包的特殊需求。
9.一种定向航空自组网中无冲突动态时隙分配方法,一次调度链路的时隙分配被分为需求交换阶段和数据传输阶段;在需求交换阶段,每个节点运行输入一致的配对交换算法,在该阶段完成后,每个节点获得邻居节点的传输需求;在数据传输阶段,根据全网的传
输需求,基于最大化同时传输链路的时隙分配算法构建无冲突链路集合,实现每次调度中的并行传输链路。
10.本发明的每个节点分布式独立运行该分配方法,递归地遍历邻居节点集合,将自身的发送需求和已经获知的其他节点的发送需求组合在一起,与未和自身进行需求交换的节点交换报文需求。
11.本发明交换动作的控制由传输需求矩阵trm结合并发判定矩阵cdm的主子式进行判定。
12.本发明的每一个节点维护n-1个包到达时间向量patv记录节点对邻居节点的待传输包的队列,在传输链路集合tlg中根据patv逐步构建无冲突的可用链路子集。
13.一次调度链路的时隙分配被分为需求交换阶段和数据传输阶段。在需求交换阶段,每个节点运行输入一致的配对交换算法,在该阶段完成后,能保证每个节点获得邻居节点的传输需求。在数据传输阶段,根据全网的传输需求,基于最大化同时传输链路的时隙分配算法构建无冲突链路集合,实现每次调度中尽可能多的并行传输链路。
附图说明
14.下面结合附图对本发明进一步说明。
15.图1为第k次调度帧结构示意图。
具体实施方式
16.一种定向航空自组网中无冲突动态时隙分配方法,一次调度链路的时隙分配被分为需求交换阶段和数据传输阶段;在需求交换阶段,每个节点运行输入一致的配对交换算法,在该阶段完成后,每个节点获得邻居节点的传输需求;在数据传输阶段,根据全网的传输需求,基于最大化同时传输链路的时隙分配算法构建无冲突链路集合,实现每次调度中的并行传输链路。
17.本发明使用的航空自组网,其网络抽象模型描述如下:
18.(1)每个飞行节点都有全网唯一且不变的id编号;
19.(2)所有的飞行节点都能获得自身精确的位置信息,以及实现严格的时间同步;
20.(3)时间被划分为等长的时隙;
21.(4)每个飞行节点都配备有波束宽度θ的单波束相控阵天线,波束可定向到三维空间内的任意一个方向,且天线可在全向和定向传输模式之间切换;
22.(5)不考虑信号传输过程中飞行的机翼对信号的遮挡;
23.(6)所有飞行节点配备参数一致的半双工无线收发信机。
24.1.调度时隙划分
25.基于需求告知的无冲突链路调度算法,将协议分为需求告知阶段和数据传输阶段。
26.将一次调度的时间划分为需求告知阶段和数据传输阶段。如图1所示为第k次调度的帧结构示意图,其中,第k次调度的需求告知(requirement inform)阶段被划分为rik个时隙,每个交换时隙划分为两个子时隙,第一子时隙的发送和接收节点在第二子时隙在维持两节点收发关系的情况下,进行收发状态的转换,保证一对节点交换彼此的传输需求。
27.相应地,第k次调度的数据传输(data transmission)阶段被划分为dtk个时隙,每个数据传输时隙划分为两个子时隙,发送节点在第一个子时隙向接收节点传输数据包,接收节点在第二个子时隙用于向发送节点回复ack包。特殊应用需求下,一次到达的数据包是等长度的,且一个子时隙的时长可以满足数据包或ack包的处理、传输和传播时延。
28.2.节点维持的信息矩阵
29.下面对每个节点维持的信息矩阵的类型和相应的功能进行详细描述。
30.(1)包到达和调度规则
31.设每个节点包的到达仅发生在时隙的开始,且包到达间隔服从参数为λ的指数分布,即在时隙的开始每个节点有1/λ的概率到达一个包,该节点的邻居接收到此包的概率是相等的,即在每个时隙中,每条传输链路有1/[λ(n-1)]的概率存在一个包的传输需求。在一次调度过程中,新到达的包存储在节点的待传输队列中,待本次调度结束,在下一次调度中完成需求交换阶段后的数据传输阶段进行传输,即第k+1次调度仅负责第k次调度过程中已经存储在节点队列中的包。特别地,第一次调度的包为全网完成邻居发现时,即建网初始时刻各个传输链路待传输的包。
[0032]
(2)包到达时间向量
[0033]
设网络节点总数为n,每一个节点维护n-1个包到达时间向量(packet arrival time vector)来记录节点对邻居节点的待传输包的队列,记作patvi(j)
k+1
,k≥0。含义为在第k+1次调度中节点i对节点j的包到达时间向量。基于上述调度准则,第k+1次调度中的包到达向量维度等于第k次调度耗费的时隙长度,即patvi(j)
k+1
为(rik+dtk)维的列向量,其中变量rik表示第k次调度的需求告知阶段中的时隙数,变量dtk表示第k次调度的数据传输阶段的时隙数。
[0034]
(2)传输需求矩阵
[0035]
设定n
×
n传输需求矩阵(transmission requirement matrix,trm)trm
k+1
(m,n)=(tr
ij
)
k+1
,k≥0,表示在第k+1次调度需求告知阶段的第n个时隙前(包括n),编号为m的节点已经获悉的网络中其他节点在第k次调度期间累积的发送需求。
[0036]
根据上述包到达时间向量的定义,在第k+1次调度的需求告知阶段的开始,由于每个节点仅了解自身的传输需求,所以任意编号节点的传输需求矩阵可表示为:
[0037][0038]
令第k+1次调度的需求告知阶段耗费ri
k+1
个时隙,则需求告知阶段完成后,任意节点的trm
k+1
应满足下式:
[0039][0040]
假设第3次调度中,需求告知阶段耗费了3个时隙,数据传输耗费了9个时隙,则patv3(2)4=(001000100000)
t
表示在第3次调度中,3号节点在第3个时隙和第7个时隙收到了上层对目的节点为2号节点的发包需求,此次调度的发包需求将在第4次调度中进行传输。
[0041]
假设1号节点和2号节点在第k+1次调度需求告知阶段的第1个时隙交换了需求,则对于1号与2号节点,有:
[0042][0043]
3.需求交换阶段协议设计
[0044]
在需求告知阶段,每个节点将自身的发送需求和已经获知的其他节点的发送需求与未和自身进行需求交换的节点相交换,即流言式地交换信息。在需求告知阶段完成后,每个节点都获知了网络中其他节点的传输需求。
[0045]
定义并发判定矩阵cdm(concurrency definition matrix)。
[0046]
cdm
n(n-1)
×
n(n-1)
=(cdm
i,j
),若i号链路和j号链路能并发传输,则cdm
i,j
为1,反之,为0。由此可知cdm的最大主子式即为最大并发链路的集合。
[0047]
为了充分利用定向传输的空分复用能力,在一个时隙内应尽可能地避免并发传输链路之间的冲突的条件下,令多对节点进行需求传输,才能更快地完成需求交换阶段。
[0048]
算法1:需求交换算法
[0049]
[0050][0051][0052]
4.数据传输阶段协议设计
[0053]
定义网络中所有的n(n-1)条传输链路构成的集合tlg(total link group)为:
[0054]
tlg={link(1,2,patv1(2)k),link(1,3,patv1(3)k),

,link(1,n,patv1(n)k),

,
[0055]
link(n,n-1,patvn(n-1)k)}={l1,l2,...,l
n(n-1)
}。
[0056]
定义传输链路集合txlg(transmission link group),txlg={txlg1,txlg2,

,txlgm},txlg中的每一个子集合txlgi是能够同时传输的链路集合。
[0057]
在每一个时隙,为了尽可能地最大化同时传输的链路数目,即每一个时隙的输出都为txlg中具有最多的同时传输链路的子集合txlg
max
,提出基于同时传输链路数目最大化的(maximizing concurrent transmission link,mctl)时隙分配算法:
[0058]
在数据传输阶段的第c个时隙中,将tlg中第一个具有非零patv的链路加入子集合txlg1,再判断第二个具有非零patv的链路(令其为li)是否能与txlg1内的链路同时传输。
[0059]
若能,则新增子集合txlg2=txlg1+{li}与txlg3={li};若不能同时传输,则txlg仅新增子集合txlg2={li}。
[0060]
继续判定第三个具有非零patv的链路lm与txlg={txlg1,txlg2,

,txlgm}中的各个集合是否能同时传输。
[0061]
若该链路能与某一子集合txlgk同时传输,则新增子集合txlg
m+1
=txlgk+{lm},同时加入子集合txlg
m+2
={lm};若lm与子集合txlg中的所有子集合都不能同时传输,则仅新增自己和txlg
m+1
={lm}。
[0062]
按照上述过程循环,直至l
n(n-1)
被判定完毕。
[0063]
在txlg中包含元素最多的子集合txlg
max
,则该集合为这个时隙的链路调度结果。在优先服务先到包的准则下,将txlg
max
中所有链路的patv中行数最小的非零元素(表示此待传输的包到达得最早)加入到lsm的第c列中,并在patv中将这些链路的对应元素置0,代表在第c个时隙txlg
max
中所有链路发送的是待传输队列中到达最早的包。
[0064]
若tlg中所有的传输链路对应的patv均为零向量,则终止该次调度,记录下耗费的时隙数dt,进入下次调度的需求交换阶段。反之,则当前时隙值加1,并重复上述流程。
[0065]
在数据传输阶段,每个节点采取相同的准则进行该阶段的时隙分配。
[0066]
算法2:最大化同时传输链路时隙分配(mctl)算法
[0067][0068]
按照上述调度规则,协议中的每个节点全局化“思考”,分布式运行,既避免了中心节点的统一控制,又实现了无冲突链路调度的需求,使数据包得到了可靠的传输保障。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1