自组网中基于静态编队的分簇路由方法和系统的制作方法

文档序号:10627480阅读:390来源:国知局
自组网中基于静态编队的分簇路由方法和系统的制作方法
【专利摘要】本发明提出一种自组网中基于静态编队的分簇路由方法,包括:根据静态编队结构进行簇划分,各簇内包含至少一个簇头节点和至少一个网关节点,所述网关节点是能与至少一个其它簇的节点进行直接通信的节点;所述各簇头建立和维护簇头间的虚拟路由表。本发明使各编队内部和编队之间均能提供较小的端到端时延,同时充分利用静态编队的拓扑结构特征,减少整个网络的控制信令开销,从而节省节点能量损耗。
【专利说明】
自组网中基于静态编队的分簇路由方法和系统
技术领域
[0001]本发明涉及无线自组网,尤其涉及自组网中基于静态编队的分簇路由方法和系统。
【背景技术】
[0002]移动自组织网络是由多个节点通过无线链路组成的多跳自组织网络,具有无中心节点、网络拓扑动态变化、不依赖于任何固定的网络基础设施等特点,因此能实现快速组网,可广泛应用于军事通信。
[0003]在军事行动中,常形成以编队为基本作战单元的作战体系,编队内部统一管理,编队之间协同工作,具有较强的机动性和灵活性。在行军作战或驻军休息时,编队内部结构基本固定,具有静态编队特征。在这种组织结构的应用场景中,编队内部各个节点依赖电池进行能量供给,因此需要提供一种既能满足业务需求,又能节省网络开销减少电池能量损耗的高效路由方法。
[0004]目前常见于移动自组织网络的路由算法主要分为两类:主动路由算法(Table-Driven)和按需路由算法(On-Demand)。在主动路由中,每个节点都在本地维护一个包含到达其他所有节点的路由信息表,并与其他节点周期性交换该路由信息。当节点有数据需要发送时,直接查询路由表即可。因此主动路由能保证较好的实时性以及服务质量,但是需要花费较大的代价维护路由信息。与主动路由不同,按需路由不需要周期性广播路由更新信息,只有在节点有通信需求时才会建立路由,因此大大减少了发送控制分组带来的开销,但会带来较大的数据包发送时延。
[0005]在基于编队的军事通信中,无论是编队内部还是编队之间的业务,往往都有较高的实时性要求,且由于节点能量受限,开销控制也是路由方法需要考虑的重点。但编队内部拓扑结构相对稳定,可利用编队进行自然分簇,编队内部某些特殊节点进行业务转发。在这种业务需求和网络拓扑特征下,单纯的按需路由或主动路由都无法提供较好的性能保障。
[0006]在传统的分簇路由协议中,往往采用簇内主动路由簇间按需路由相结合的寻路方法。这种方法能保证簇内业务的实时性,对簇间业务,当源和目的节点对之间相距跳数较多时,存在较大的端到端时延。且由于簇间采用基于洪泛的路由查找,所有节点都需要广播路由请求消息,路由控制信令的开销较大。同时,这种方法没有充分利用静态编队的拓扑结构特征。

【发明内容】

[0007]为了克服上述问题,本发明提出一种自组网中基于静态编队的分簇路由方法,包括:根据静态编队结构进行簇划分,各簇内包含至少一个簇头节点和至少一个网关节点,所述网关节点是能与至少一个其它簇的节点进行直接通信的节点;所述各簇头建立和维护簇头间的虚拟路由表。
[0008]优选的,所述建立和维护簇头间的虚拟路由表包括:各簇头周期性产生簇头消息,通过网关节点发送给其他簇头;所述簇头消息包括本簇头ID和其一跳邻居簇的簇头ID ;各簇头接收到其他簇头的簇头消息后,存储其中的虚拟连接关系,并继续转发所述接收到的簇头消息;各簇头基于所述虚拟连接关系,建立和维护簇头间的虚拟路由表。
[0009]优选的,该方法还包括:所述各簇的簇内节点建立和维护本簇内节点间的路由表,具体包括:所述各簇的簇内各节点通过周期性发送拓扑控制消息,获取与簇内其他各节点的邻接关系和链路质量信息,计算簇内节点间基于链路质量的路由表。
[0010]进一步的,所述簇头间的虚拟路由表的建立和维护具体包括:各簇头周期性产生簇头消息,所述簇头消息包含簇头ID和其邻居簇的簇头ID ;各簇头通过簇内路由表将所述簇头消息发送给本簇网关节点;所述本簇网关节点接收所述簇头消息,广播给其他簇的网关节点;所述其他簇的网关节点收到所述簇头消息,单播给所述其他簇的簇头;所述其他簇的簇头接收所述簇头消息,存储其中的虚拟连接关系,并采用上述传播方式继续传播所述簇头消息;所述各簇头基于所述虚拟连接关系,建立和维护簇头间的虚拟路由表。其中,所述本簇的网关节点为一个时,则所述本簇的簇头将所述簇头消息单播给所述本簇网关节点;所述本簇的网关节点为一个以上时,则所述本簇的簇头将所述簇头消息组播给所述本族各网关节点。
[0011]优选的,还包括:簇内业务采用主动或按需路由算法建立路由;簇间业务由源节点所在簇的簇头节点根据所述簇头间虚拟路由表,通过网关节点发送到目的节点所在簇的簇头,再由目的簇簇头发送到目的节点。
[0012]进一步的,所述簇间业务的数据包的传递过程具体包括:所述源节点根据簇内路由表将所述数据包发送给本簇的簇头节点;本簇簇头节点通过所述簇头间虚拟路由表,查找去往目的节点所在簇的一跳邻居簇头,将所述数据包发送给与所述一跳邻居簇之间的本簇网关节点;所述本簇网关节点接收所述数据包并广播给其一跳邻居节点;所述下一跳簇头所在簇的网关节点接收所述数据包并单播给所述下一跳簇头;所述下一跳簇头根据簇头间虚拟路由表通过网关节点将接收到的数据包传递给其下一跳簇头或目的节点所在簇的簇头;所述目的节点所在簇的簇头接收数据包后,根据簇内路由表将所述数据包发送给所述目的节点。
[0013]基于相同的构思,本发明还提出一种实现上述方法的系统,所述系统根据静态编队结构进行簇划分,各簇包括至少一个簇头节点和至少一个网关节点;所述网关节点负责与系统其他簇的节点进行直接通信;所述簇头负责建立和维护系统中各簇头间的虚拟路由表。
[0014]优选的,在所述建立和维护系统中各簇头间的虚拟路由表中,所述簇头,用于周期性产生簇头消息,通过所述网关节点发送给其他簇头;所述簇头消息包括本簇头ID和其一跳邻居簇的簇头ID ;接收其他簇头的簇头消息,存储其中的虚拟连接关系,并继续转发所述接收到的簇头消息;基于所述虚拟连接关系,建立和维护所述簇头间的虚拟路由表;所述网关节点,用于接收所述簇头的簇头消息,并转发给其他簇;接收其他簇的簇头消息并转发给本簇簇头。
[0015]优选的,在对簇间业务的传递中,还包括:所述簇头用于接收源节点和/或其他簇发送的数据包,根据所述簇头间虚拟路由表查找去往目的节点所在簇的一跳邻居簇头,将所述数据包发送给与所述一跳邻居簇之间的本簇网关节点;所述簇头判断目的节点在本簇时,则所述簇头接收并转发数据包给所述目的节点;所述网关节点用于接收本簇簇头发送的数据包并广播给其一跳邻居节点;或接收来自其他簇的数据包并转发给本簇簇头。
[0016]本发明提出的方法和系统使各编队内部和编队之间均能提供较小的端到端时延,同时充分利用静态编队的拓扑结构特征,减少整个网络的控制信令开销,从而节省节点能量损耗。
【附图说明】
[0017]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0018]图1为本发明实施例的簇内和簇间路由示意图。
【具体实施方式】
[0019]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例;需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0020]本发明提出一种自组网中基于静态编队的分簇路由方法,包括:根据静态编队结构进行簇划分,各簇内包含至少一个簇头节点和至少一个网关节点,所述网关节点是能与至少一个其它簇的节点进行直接通信的节点;所述各簇头建立和维护簇头间的虚拟路由表。
[0021]优选的,所述建立和维护簇头间的虚拟路由表包括:各簇头周期性产生簇头消息,通过网关节点发送给其他簇头;所述簇头消息包括本簇头ID和其一跳邻居簇的簇头ID ;各簇头接收到其他簇头的簇头消息后,存储其中的虚拟连接关系,并继续转发所述接收到的簇头消息;各簇头基于所述虚拟连接关系,建立和维护簇头间的虚拟路由表。
[0022]优选的,该方法还包括:所述各簇的簇内节点建立和维护本簇内节点间的路由表,具体包括:所述各簇的簇内各节点通过周期性发送拓扑控制消息,获取与簇内其他各节点的邻接关系和链路质量信息,计算簇内节点间基于链路质量的路由表。
[0023]进一步的,所述簇头间的虚拟路由表的建立和维护具体包括:各簇头周期性产生簇头消息,所述簇头消息包含簇头ID和其邻居簇的簇头ID ;各簇头通过簇内路由表将所述簇头消息发送给本簇网关节点;所述本簇网关节点接收所述簇头消息,广播给其他簇的网关节点;所述其他簇的网关节点收到所述簇头消息,单播给所述其他簇的簇头;所述其他簇的簇头接收所述簇头消息,存储其中的虚拟连接关系,并采用上述传播方式继续传播所述簇头消息;所述各簇头基于所述虚拟连接关系,建立和维护簇头间的虚拟路由表。其中,所述本簇的网关节点为一个时,则所述本簇的簇头将所述簇头消息单播给所述本簇网关节点;所述本簇的网关节点为一个以上时,则所述本簇的簇头将所述簇头消息组播给所述本簇各网关节点。
[0024]优选的,还包括:簇内业务采用主动或按需路由算法建立路由;簇间业务由源节点所在簇的簇头节点根据所述簇头间虚拟路由表,通过网关节点发送到目的节点所在簇的簇头,再由目的簇簇头发送到目的节点。
[0025]进一步的,所述簇间业务的数据包的传递过程具体包括:所述源节点根据簇内路由表将所述数据包发送给本簇的簇头节点;本簇簇头节点通过所述簇头间虚拟路由表,查找去往目的节点所在簇的一跳邻居簇头,将所述数据包发送给与所述一跳邻居簇之间的本簇网关节点;所述本簇网关节点接收所述数据包并广播给其一跳邻居节点;所述下一跳簇头所在簇的网关节点接收所述数据包并单播给所述下一跳簇头;所述下一跳簇头根据簇头间虚拟路由表通过网关节点将接收到的数据包传递给其下一跳簇头或目的节点所在簇的簇头;所述目的节点所在簇的簇头接收数据包后,根据簇内路由表将所述数据包发送给所述目的节点。
[0026]基于相同的构思,本发明还提出一种实现上述方法的系统,所述系统根据静态编队结构进行簇划分,各簇包括至少一个簇头节点和至少一个网关节点;所述网关节点负责与系统其他簇的节点进行直接通信;所述簇头负责建立和维护系统中各簇头间的虚拟路由表。
[0027]优选的,在所述建立和维护系统中各簇头间的虚拟路由表中,所述簇头,用于周期性产生簇头消息,通过所述网关节点发送给其他簇头;所述簇头消息包括本簇头ID和其一跳邻居簇的簇头ID ;接收其他簇头的簇头消息,存储其中的虚拟连接关系,并继续转发所述接收到的簇头消息;基于所述虚拟连接关系,建立和维护所述簇头间的虚拟路由表;所述网关节点,用于接收所述簇头的簇头消息,并转发给其他簇;接收其他簇的簇头消息并转发给本簇簇头。
[0028]优选的,在对簇间业务的传递中,还包括:所述簇头用于接收源节点和/或其他簇发送的数据包,根据所述簇头间虚拟路由表查找去往目的节点所在簇的一跳邻居簇头,将所述数据包发送给与所述一跳邻居簇之间的本簇网关节点;所述簇头判断目的节点在本簇时,则所述簇头接收并转发数据包给所述目的节点;所述网关节点用于接收本簇簇头发送的数据包并广播给其一跳邻居节点;或接收来自其他簇的数据包并转发给本簇簇头。
[0029]本发明提出的方法和系统使各编队内部和编队之间均能提供较小的端到端时延,同时充分利用静态编队的拓扑结构特征,减少整个网络的控制信令开销,从而节省节点能量损耗。
[0030]本发明方法的主要步骤包括:
[0031]首先根据编队结构进行分簇划分,编队内所有节点形成一个独立簇,簇内某个特殊节点成为簇头,如排长等;簇内有些能与其他簇的节点进行直接通信的节点,成为网关节点。
[0032]然后,针对簇内和簇间业务,进行不同的寻路方式。
[0033]对于簇内业务,可以采用主动路由0LSR,每个节点周期性发送拓扑控制消息获取与簇内所有其他节点之间的邻接关系和链路质量信息,基于该邻接关系,采用Dijkstra算法计算簇内节点之间基于链路质量的路由表;
[0034]对于簇间业务,则可以主要由簇头节点和网关节点进行转发。簇头和簇头节点之间不一定能直接通信,却可以建立簇头之间的”虚拟路径”。
[0035]具体方式为:
[0036]首先,簇头节点周期性产生簇头信息,该消息包含簇头自身和周围一跳邻居簇簇头ID;然后,簇头利用簇内主动路由信息,将簇头信息单播给网关节点(如有多个网关节点,则通过组播方式广播给所有网关节点);
[0037]网关节点收到簇头信息后,将该消息广播给自己的一跳邻居节点(广播范围可以限于一跳);
[0038]邻居网关节点收到簇头信息后,将该消息单播给自己的簇头节点;
[0039]簇头节点收到其他簇头节点的信息后,存储与其他簇头之间的”虚拟连接”关系,并继续转发其他节点的簇头信息。
[0040]利用这种方式,网络中的簇头节点便能拿到与其他所有簇头节点之间的”虚拟拓扑”连接关系。基于该连接关系,簇头节点便可计算到网络中其他簇头节点的”虚拟路由”。这里簇头与簇头节点之间不一定能直接进行通信,但是基于建立起来的拓扑关系,簇头节点可以快速高效的得到去往其他簇头的大致路径,通过网关节点的转发,便能建立簇头与簇头之间的数据通信。因此,把簇头节点之间建立起来的连接关系称为”虚拟路由”。
[0041]上述方法中,充分利用静态编队属性,结合静态编队的拓扑特征进行路由选择;簇内节点建立基于链路质量的主动路由,不但能保证链路上的传输速率,且能满足簇内业务较高的实时性要求;利用簇头节点之间建立的”虚拟路由”信息,进行跨簇业务的路由选择时,不再以洪泛的方式进行路由查询,大大节省了网络中的控制信令开销;同时基于簇头之间提前建立起来的”虚拟路由”,可快速将数据包传输至目的节点;簇头节点之间周期性进行簇头信息的交互,保证了簇头之间”虚拟路径”的实时性。
[0042]实施例:以图1所示的拓扑下簇内和簇间路由为例:
[0043]1、簇内路由:
[0044]簇内采用传统主动路由0LSR,每个节点周期性发送带有链路质量的拓扑控制信息,簇内其他节点对该消息进行转发,从而获取簇内所有节点之间的连接关系,基于该连接矩阵,采用Dijkstra算法计算基于链路质量的路由表;
[0045]2、簇间”虚拟路由”:
[0046]以簇I的簇头A节点为例。
[0047](I)A周期性产生簇头消息,该消息包含A自身ID以及周围邻居簇簇2和簇4的簇头B和M的ID ;
[0048](2)A将该簇头消息通过簇内主动路由组播给簇I所有的网关节点(若只有一个网关节点,则进行单播);
[0049](3)簇I网关节点收到簇头消息后,将该消息进行广播,广播范围仅限一跳邻居;
[0050](4)簇2和簇4内与簇I相邻的网关节点收到簇I网关节点广播的簇头消息后,将该消息单播给自己所在簇的簇头B和M ;
[0051](5)B和M收到A的簇头消息后,存储其中的邻接关系,并采用2) — 4)的传播方式继续传播该簇头消息;
[0052]其他簇头采用相同的方式,周期性产生簇头消息并对外传播。
[0053]通过以上方式建立簇头之间的邻接关系(如:A的一跳邻簇簇头为B和M,两跳邻簇簇头为C和N),基于该邻接关系,采用Dijkstra算法,计算簇头到簇头之间最短跳数的”虚拟路由”。
[0054]3、簇间数据传输:
[0055]以簇I内节点i与簇2内节点j之间的数据通信为例:
[0056](I)节点i在有和节点j的数据通信需求时,先将数据包发送给簇I的簇头A节占.V,
[0057](2)簇头A以节点j所在簇的簇头ID⑶为索引,查找本地”’虚拟路由表”中去往B的下一跳簇头信息;由于B是A的邻簇,A去往B的下一跳簇头即为B ;
[0058](3)簇头A将数据包单播给与簇2之间的网关节点d,d收到数据包后将数据包广播给自己的一跳邻居;
[0059](4) e作为d的一跳邻居,收到数据包后将数据包单播给所在簇的簇头B ;
[0060](5)簇头B最后将数据包单播给簇成员j节点。
[0061 ] 本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:R0M、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
[0062]最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
【主权项】
1.一种自组网中基于静态编队的分簇路由方法,其特征在于,包括: 根据静态编队结构进行簇划分,各簇内包含至少一个簇头节点和至少一个网关节点,所述网关节点是能与至少一个其它簇的节点进行直接通信的节点;所述各簇头建立和维护簇头间的虚拟路由表。2.根据权利要求1所述的方法,其特征在于,所述建立和维护簇头间的虚拟路由表包括: 各簇头周期性产生簇头消息,通过网关节点发送给其他簇头;所述簇头消息包括本簇头ID和其一跳邻居簇的簇头ID ; 各簇头接收到其他簇头的簇头消息后,存储其中的虚拟连接关系,并继续转发所述接收到的簇头消息; 各簇头基于所述虚拟连接关系,建立和维护簇头间的虚拟路由表。3.根据权利要求1所述的方法,其特征在于,该方法还包括: 所述各簇的簇内节点建立和维护本簇内节点间的路由表,具体包括: 所述各簇的簇内各节点通过周期性发送拓扑控制消息,获取与簇内其他各节点的邻接关系和链路质量信息,计算簇内节点间基于链路质量的路由表。4.根据权利要求3所述的方法,其特征在于,所述簇头间的虚拟路由表的建立和维护具体包括: 各簇头周期性产生簇头消息,所述簇头消息包含簇头ID和其邻居簇的簇头ID ; 各簇头通过簇内路由表将所述簇头消息发送给本簇网关节点; 所述本簇网关节点接收所述簇头消息,广播给其他簇的网关节点; 所述其他簇的网关节点收到所述簇头消息,单播给所述其他簇的簇头; 所述其他簇的簇头接收所述簇头消息,存储其中的虚拟连接关系,并采用上述传播方式继续传播所述簇头消息; 所述各簇头基于所述虚拟连接关系,建立和维护簇头间的虚拟路由表。5.根据权利要求4所述的方法,其特征在于,所述本簇的网关节点为一个时,则所述本簇的簇头将所述簇头消息单播给所述本簇网关节点;所述本簇的网关节点为一个以上时,则所述本簇的簇头将所述簇头消息组播给所述本簇各网关节点。6.根据权利要求1?5任意一项所述的方法,其特征在于,还包括: 族内业务米用主动或按需路由算法建立路由; 簇间业务由源节点所在簇的簇头节点根据所述簇头间虚拟路由表,通过网关节点发送到目的节点所在簇的簇头,再由目的簇簇头发送到目的节点。7.根据权利要求6所述的方法,其特征在于,所述簇间业务的数据包的传递过程具体包括: 所述源节点根据簇内路由表将所述数据包发送给本簇的簇头节点; 本簇簇头节点通过所述簇头间虚拟路由表,查找去往目的节点所在簇的一跳邻居簇头,将所述数据包发送给与所述一跳邻居簇之间的本簇网关节点; 所述本簇网关节点接收所述数据包并广播给其一跳邻居节点; 所述下一跳簇头所在簇的网关节点接收所述数据包并单播给所述下一跳簇头;所述下一跳簇头根据簇头间虚拟路由表通过网关节点将接收到的数据包传递给其下一跳簇头或目的节点所在簇的簇头; 所述目的节点所在簇的簇头接收数据包后,根据簇内路由表将所述数据包发送给所述目的节点。8.一种实现如权利要求1所述的方法的系统,其特征在于,所述系统根据静态编队结构进行簇划分,各簇包括至少一个簇头节点和至少一个网关节点; 所述网关节点负责与系统其他簇的节点进行直接通信; 所述簇头负责建立和维护系统中各簇头间的虚拟路由表。9.根据权利要求8所述的系统,其特征在于,在所述建立和维护系统中各簇头间的虚拟路由表中, 所述簇头,用于周期性产生簇头消息,通过所述网关节点发送给其他簇头;所述簇头消息包括本簇头ID和其一跳邻居簇的簇头ID ;接收其他簇头的簇头消息,存储其中的虚拟连接关系,并继续转发所述接收到的簇头消息;基于所述虚拟连接关系,建立和维护所述簇头间的虚拟路由表; 所述网关节点,用于接收所述簇头的簇头消息,并转发给其他簇;接收其他簇的簇头消息并转发给本簇簇头。10.根据权利要求8或9所述的系统,其特征在于,在对簇间业务的传递中,还包括: 所述簇头用于接收源节点和/或其他簇发送的数据包,根据所述簇头间虚拟路由表查找去往目的节点所在簇的一跳邻居簇头,将所述数据包发送给与所述一跳邻居簇之间的本簇网关节点;所述簇头判断目的节点在本簇时,则所述簇头接收并转发数据包给所述目的节点。 所述网关节点用于接收本簇簇头发送的数据包并广播给其一跳邻居节点;或接收来自其他簇的数据包并转发给本簇簇头。
【文档编号】H04W40/24GK105992300SQ201510075783
【公开日】2016年10月5日
【申请日】2015年2月12日
【发明人】施钱宝, 孙鹏, 董付现, 李静叶
【申请人】北京信威通信技术股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1