一种定向自组网邻居发现方法与流程

文档序号:33474070发布日期:2023-03-15 09:33阅读:72来源:国知局
一种定向自组网邻居发现方法与流程

1.本发明属于无线自组织网络通信技术领域,涉及一种定向自组网邻居发现方法。


背景技术:

2.传统自组网进行数据收发时使用全向天线,这种天线覆盖面广,但针对特定方向上的有效功率却不大,容易造成功率浪费,还会给周围其他节点的通信带来干扰,降低网络容量和通信质量。随着天线技术的发展,定向天线应用于自组网网络中,极大地提高了网络容量,减少了干扰问题,提高了安全性,并增大了通信距离。目前,定向天线中的相控阵天线具备高带宽、高增益和波束捷变等优点,能够为隐形飞行平台提供高速安全的数据交互。
3.早期自组网通信方式主要是利用节点地面控制站或组网中作为控制中心的节点进行集群组网通信,各组网网络节点通过地面控制站或控制中心节点进行数据中继转发,组网节点不能直接进行通信。该种通信方式的弊端在于,当地面控制站或控制中心节点无法正常工作时,自组网网络将直接瘫痪。为此,领域内又催生出无中心自组网通信,实现集群网络节点的多跳、无中心和自组织的无线网络。
4.由于没有中心控制节点,无中心自组网中的每个节点在网络中具有相同功能,网络中任意一个节点发生故障,不会对整个通信网络造成很大影响。因此,无中心自组网具有很强的鲁棒性和抗毁性。
5.自组网中的每个节点都能够进行邻居发现,发现的邻居可能是未入网节点,也可能是未连接的在网节点。为提升邻居发现效率,对于这两类不同的邻居节点,宜采用不同的操作流程。然而,在现有的邻居发现解决方案中均没有对二者进行区分处理的介绍。


技术实现要素:

6.针对上述技术问题,本发明提供一种定向自组网邻居发现方法,将邻居发现从时段上划分为新入网节点发现和在网节点发现,并设计不同的建链流程,以提升邻居发现效率。
7.一种定向自组网邻居发现方法,在定向自组网中,每个节点装载多副多波束天线,每副天线同时形成多个波束,邻居发现使用专有频段和波束;邻居发现时帧由新入网节点发现时段t1和在网节点发现时段t2组成,新入网节点发现时段t1包含2a+1个时隙,在网节点发现时段t2包含b个时隙,其中a为波位图的波位数,,k为定向自组网可容纳得到最大节点数,表示向上取整,时隙为邻居发现过程中的最小时间单位,时隙长度设置为波位驻留时间的二分之一;每个节点在初始化完成后,通过邻居发现波束按照既定波位图轮询扫描,进行邻居发现,且以时帧为周期依次进入新入网节点发现和在网节点发现;发现新邻居节点后,通过邻居发现波束以外的波束完成建链及通信流程。
8.进一步的,新入网节点发现流程具体包括以下步骤:
步骤a1,在网节点a在t1时段按照既定波位图轮询扫描,在每个波位上驻留2个时隙,第1个时隙是发送时隙,用于发送hello消息,第2个时隙是接收时隙,用于接收hello-reply消息;步骤a2,新入网节点b采用多波束进行全向持续接收;若新入网节点b在既定时间范围内接收到在网节点a发送的hello消息,则根据其中携带的时间信息进行时间粗同步校正,并根据其中携带的位置信息调整波束指向并切换至窄波束发送状态,向在网节点a回复hello-reply消息,然后再切换回多波束全向接收状态,同时重置接收计时器;若新入网节点b在既定时间范围内未接收到在网节点a发送的hello消息,将自身节点状态修改为在网节点,并开始邻居发现;步骤a3,在网节点a接收到hello-reply消息,判断自身有没有空闲波束;若有空闲波束,则直接跳转执行步骤a4;若没有空闲波束,再判断是否存在连接优先级低于新入网节点b的已连接节点,若存在,则选择断开连接优先级最低的已连接节点,跳转步骤a4,若不存在,则跳转执行步骤a7;步骤a4,在网节点a选择一空闲波束,根据hello-reply消息携带的新入网节点b的位置消息,与新入网节点b建立链接,在下一发送时隙向新入网节点b发送ack消息;步骤a5,新入网节点b接收到ack消息,则与在网节点a建链成功,否则继续等待hello消息;步骤a6,在网节点a更新网络节点信息表;步骤a7,结束。
9.进一步的,在网节点发现流程具体包括以下步骤:步骤b1,在网节点a根据其网络节点消息表,判断以其所在位置为中心,半径r范围内是否存在未连接节点;若不存在,则t2时段的节点状态按照发送、接收逐时隙循环切换,波位随机选择,跳转执行步骤b7;若存在,且半径r范围内的邻居节点数<在网节点a可连接的最大节点数s,则未连接节点在完成与在网节点的时隙匹配后,跳转执行步骤b4;若存在,且半径r范围内的邻居节点数≥在网节点a可连接的最大节点数s但存在连接优先级高于已连接节点的未连接节点,则顺序执行步骤b2;步骤b2,在网节点a的已连接节点和半径r范围内的未连接节点的集合记为p,将集合p中的节点按照连接优先级从高到低进行排序,从中选择s个连接优先级最高的节点,,其中表示集合中的元素个数,min{a,b}表示取a、b之间的较小值,n为在网节点a的波束数目;步骤b3,对于s个节点中的未连接节点,按照优先级从高到低的顺序,根据其编号依次与在网节点a进行时隙匹配,若未连接节点找不到能够与在网节点a匹配的接收时隙,则跳过该未连接节点,集合p中剩余节点依序递补,直至s个节点的接收时隙选择完毕或者在网节点a无空闲发送时隙可选;
步骤b4,在网节点a在与未连接节点匹配后的发送时隙,根据网络节点信息表中的节点位置信息调整波束指向对应的未连接节点,并发送hello消息;步骤b5,未连接节点c接收到hello消息,若没有空闲波束,则跳转执行步骤b7,若有空闲波束,则根据hello消息中携带的位置信息,通过空闲波束向在网节点a回复hello-reply消息,完成与在网节点a的建链,并更新网络节点信息表,步骤b6,在网节点a收到hello-reply消息,更新网络节点信息表;步骤b7,结束。
10.进一步的,连接优先级根据其连接节点的位置和节点优先级确定,具体为连接优先级=ω1*节点优先级+ω2/两节点之间的距离,其中ω1、ω2为权重系数。
11.进一步的,hello消息包含节点的编号、时间信息、位置信息、运动速度、运动方向;hello-reply消息包含节点的编号、位置信息、运动速度、运动方向、节点优先级;ack消息包含节点的位置信息、网络节点信息表,网络节点信息表包含其他节点的编号、位置信息、运动速度、运动方向、节点优先级、是否是邻居节点。
12.进一步的,节点的编号指的是网络为每个节点分配的一个b位二进制编号,节点的收发状态根据该二进制编号设定,其中“0”代表该节点处于接收时隙,“1”代表该节点处于发送时隙。
13.进一步的,每个节点的接收计时器计时阈值根据其二进制编号设定。
14.本发明对新入网节点与在网节点的邻居发现进行区分,直接从时段上进行明确划分,采用不同的交互建链流程,大大提升了邻居发现效率。
附图说明
15.图1为邻居发现时帧划分示意图;图2为实施例1公开的定向自组网邻居发现方法主体流程图;图3为新入网节点发现交互流程图;图4为在网节点发现交互流程图。
具体实施方式
16.下面结合附图和具体实施方式对本发明作进一步详细的说明。本发明的实施例是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显而易见的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。
17.实施例1本实施例公开的定向自组网邻居发现方法,在定向自组网中,每个节点装载多副多波束天线,每副天线同时形成多个波束,邻居发现使用专有频段和波束,邻居发现时帧由新入网节点发现时段t1和在网节点发现时段t2组成,如图1所示。
18.新入网节点发现时段t1包含2a+1个时隙,其中a为波位图的波位数,时隙为邻居发现过程中的最小时间单位,时隙长度设置为波位驻留时间的二分之一。新入网节点发现时段t1包含2a+1个时隙,可以保证完成一轮波位扫描。
19.在网节点发现时段t2包含b个时隙,其中,k为定向自组网可容纳得到最大节点数,表示向上取整。
20.每个节点在初始化完成后,通过邻居发现波束按照既定波位图轮询扫描,进行邻居发现,且以时帧为周期依次进入新入网节点发现和在网节点发现;发现新邻居节点后,通过邻居发现波束以外的波束完成建链及通信流程,如图2所示。
21.为便于时隙分配,本实施例中,网络为每个节点分配一个b位二进制节点号,节点的收发状态根据该二进制编号设定,其中“0”代表该节点处于接收时隙,“1”代表该节点处于发送时隙。
22.新入网节点发现流程,如图3所示,具体包括以下步骤:步骤a1,在网节点a在t1时段按照既定波位图轮询扫描,在每个波位上驻留2个时隙,第1个时隙是发送时隙,用于发送hello消息,第2个时隙是接收时隙,用于接收hello-reply消息。
23.步骤a2,新入网节点b采用多波束进行全向持续接收;若新入网节点b在既定时间范围内接收到在网节点a发送的hello消息,则根据其中携带的时间信息进行时间粗同步校正,并根据其中携带的位置信息调整波束指向并切换至窄波束发送状态,向在网节点a回复hello-reply消息,然后再切换回多波束全向接收状态,同时重置接收计时器;若新入网节点b在既定时间范围内未接收到在网节点a发送的hello消息,将自身节点状态修改为在网节点,并开始邻居发现;这里的既定时间由接收计时器计时阈值确定,本实施例中,每个节点的接收计时器计时阈值根据其二进制编号设定,即编号越小,等待接收hello消息的时长越短。
24.步骤a3,在网节点a接收到hello-reply消息,判断自身有没有空闲波束;若有空闲波束,则直接跳转执行步骤a4;若没有空闲波束,再判断是否存在连接优先级低于新入网节点b的已连接节点,若存在,则选择断开连接优先级最低的已连接节点,跳转步骤a4,若不存在,则跳转执行步骤a7;步骤a4,在网节点a选择一空闲波束,根据hello-reply消息携带的新入网节点b的位置消息,与新入网节点b建立链接,在下一发送时隙向新入网节点b发送ack消息;步骤a5,新入网节点b接收到ack消息,则与在网节点a建链成功,否则继续等待hello消息;步骤a6,在网节点a更新网络节点信息表;步骤a7,结束。
25.上述新入网节点发现流程包括三次握手流程,分别通过hello消息、hello-reply消息和ack消息,其中hello消息包含节点的编号、时间信息、位置信息、运动速度、运动方向,hello-reply消息包含节点的编号、位置信息、运动速度、运动方向、节点优先级,ack消息包含节点的位置信息、网络节点信息表,网络节点信息表包含其他节点的编号、位置信息、运动速度、运动方向、节点优先级、是否是邻居节点。
26.在网节点发现流程,如图4所示,具体包括以下步骤:步骤b1,在网节点a根据其网络节点消息表,判断以其所在位置为中心,半径r范围内是否存在未连接节点;若不存在,则t2时段的节点状态按照发送、接收逐时隙循环切换,波位随机选择,跳转执行步骤b7;若存在,且半径r范围内的邻居节点数<在网节点a可连接的最大节点数则未连接节点在完成与在网节点的时隙匹配后,跳转执行步骤b4;若存在,且半径r范围内的邻居节点数=在网节点a可连接的最大节点数但存在连接优先级高于已连接节点的未连接节点,则顺序执行步骤b2;此处的半径r在网络设计时已确定,通常为其最大通信半径;步骤b2,在网节点a的已连接节点和半径r范围内的未连接节点的集合记为p,将集合p中的节点按照连接优先级从高到低进行排序,从中选择s个连接优先级最高的节点,,其中表示集合中的元素个数,min{a,b}表示取a、b之间的较小值,n为在网节点a的波束数目;步骤b3,对于s个节点中的未连接节点,按照优先级从高到低的顺序,根据其编号依次与在网节点a进行时隙匹配,若未连接节点找不到能够与在网节点a匹配的接收时隙,则跳过该未连接节点,集合p中剩余节点依序递补,直至s个节点的接收时隙选择完毕或者在网节点a无空闲发送时隙可选;步骤b4,在网节点a在与未连接节点匹配后的发送时隙,根据网络节点信息表中的节点位置信息调整波束指向对应的未连接节点,并发送hello消息;步骤b5,未连接节点c接收到hello消息,若没有空闲波束,则跳转执行步骤b7,若有空闲波束,则根据hello消息中携带的位置信息,通过空闲波束向在网节点a回复hello-reply消息,完成与在网节点a的建链,并更新网络节点信息表,步骤b6,在网节点a收到hello-reply消息,更新网络节点信息表;步骤b7,结束。
27.上述在网节点发现流程的整体宗旨是,尽可能连接其半径r范围内的所有节点,在可连接节点数不允许的情况下,优先选择连接优先级相对较高的节点建立连接。本实施例通过网络节点信息表,进行未连接节点排查,相比于波位轮询的新入网节点发现方式,大大提高了建链效率,这也体现了本发明将新入网节点发现流程与在网节点发现流程区分对待的意义所在。
28.值得说明的是,本实施例中的在网节点a、新入网节点b、未连接节点c 均为针对该类节点的泛指,而并非特指某一个节点。
29.显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域及相关领域的普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1