一种基于分区树的多跳无线自组织网络构建方法

文档序号:7645415阅读:160来源:国知局
专利名称:一种基于分区树的多跳无线自组织网络构建方法
技术领域
本发明属于无线通信网络技术领域,具体来说涉及一种多跳无线自组织网络的构建方 法与路由技术。
背景技术
无线通信系统有两种网络结构有基础设施网络和无基础设施网络。有基础设施网络 结构通常是对有线通信网的一种扩展,有线网络被用作骨干网,连接到特殊的有线/无线转
接点,即基站BS (Base Station)或接入点AP (Access Point),它们负责协调覆盖区域内的 移动节点通过一个或多个传输信道接入网络。传输信道可以是FDMA (Frequency-Division Multiple Access)中的某个步员带,也可以是TDMA (Time Division Multiple Access)中的某 个时隙,或者是CDMA (Code Division Multiple Access)中的某个码道。BS或AP与有线 骨干网相连并且覆盖一个区域,必须预先规划、设计和布署,构成有基础设施网络结构, 如蜂窝移动通信系统、无线局域网等。
无基础设施网络结构一般也称为AdHoc网络或无线自组织网络,简称无线自组网,它 是由多个移动节点组成的多跳无线网络。这是由于无线自组织网络具有动态变化的网络拓 扑结构,采用异步通信技术,多个节点共享同一个通信信道。为了提高信道利用率,移动 节点的发射功率较低,加上信号受到无线信道中的噪声、信道衰落和障碍物的影响,使得 移动节点的通信距离受到限制,因此,无线自组织网络的无线信道共享方式不是一跳共享 的,而是多跳共享广播信道,如图l所示,节点A和节点E无法直接通信,但节点A的数 据可以通过路径A—B—C—D—E多跳到达节点E,从而完成通信。移动节点之间是一种对等 的关系,每个节点都具备路由器的功能,可以通过存储转发技术帮助其他节点构成通信链 路。与有基础设施网络最大的区别是不需要预设的基础实施(BS和AP),网络的组织是临 时的、按需的、自动的,采用分布式的控制方式。由此,无线自组织网络特别适用于要求 临时、快速组网的某些特殊环境,如军事领域、灾难求援、会议室、家庭等场合。 ,
作为一种无中心分布控制网络,无线自组网是一种自治的无线多跳网络,整个网络没 有固定的基础设施,可以在不利用或不便利用现有网络基础设施的情况下,提供一种通信 支撑环境,拓宽了移动网络的应用场合。在自组网中每个节点不仅能移动,而且都兼有路 由器和主机两种功能,能完成发现和维持到其他节点的路由,以任意的方式动态地保持与 其他节点的联系。因此,无线自组网的突出特点在于"自组织性"、"多跳组网"、"分布式控制"和"动态变化的网络拓扑结构"。
针对无线自组网的特点,组网方式不同于有中心接入并且是单跳网络的包含固定基础 网络设施的网络,需要构建一种新型的、具有良好可扩展性的网络结构,因为自组网的多 跳、动态本质导致它的配置信息不可能使全网所有节点都严格地同步更新,如果扩展性不 好,当网络中存在大量可移动节点的情况下,网络的性能和通信业务质量都会受到影响。
初始的无线自组网是一种平面结构,网络中各节点地位是相同的,能够建立无线链路 的节点之间构成邻居关系。平面结构的主要优点是网络中没有特殊的节点,网络流量均匀 地分散在网络中,路由算法易于实现;主要缺点是可扩展性差,在一定程度上限制了网络 的规模。为了降低自组织网络的系统开销、提高网络路由的效率、解决自组织网络的扩展 性问题,可以对网络进行逻辑划分,某些在地里空间上相邻的节点构成一个相对独立的区 域,使整个网络由若干个逻辑上相对独立的分区构成,实现网络的分层结构。分层网络结 构可扩展性好,适用于大型网络的构建。
路由协议与网络结构密切相关,按照路由协议所依据的网络逻辑拓扑结构形式的不同, 无线自组网路由协议可分为平面结构路由协议和分层结构路由协议。在平面结构路由协议 中,所有节点都处于同一平面中,每个节点的功能也都相同,路由协议实现相对容易。但 当无线自组网规模增大,平面结构路由协议就会因链接和处理开销的增加而变得不适用, 此时就需要采用分级路由技术以获得可扩展的有效路由,也即分层结构路由协议。分层结 构路由协议可以降低开销和减少拓扑结构变化对路由带来的影响。
在目前的自组织网络研究中,已提出了一些分层网络结构及路由协议的构建方法
(1) 自组网路标路由协议LANMAR (Landmark Ad hoc Routing Protocol) 。 LANMAR 将整个网络划分为许多逻辑子网,每个逻辑子网中的成员很可能趋向于在一起作为一个整 体移动,而且在每个逻辑子网中选择一个节点作为界标(Landmark)节点,依靠Landmark 节点进行全网范围内数据分组的路由。LANMAR的每个节点都维护两种路由到自己某个 限定范围内所有节点的本地路由和到网络中所有Landmark节点的距离矢量路由。当目的节 点在本地路由范围内时,根据本地路由转发数据分组;否则首先向目的节点所属逻辑子网 的Landmark节点转发, 一旦目的节点出现某一中间节点的本地路由范围内时,就根据中间 节点的本地路由进行转发。LANMAR减少了控制开销和路由表大小,是一种易于扩展的路 由框架。
(2) 区域路由协议ZRP (Zone Routing Protocol)。 ZRP以多范围(Multi-scope)技术 为基础,将整个网络分成若干个以节点为中心, 一定的跳数为半径的虚拟区,构建一种区 域路由框架。在区域内采用先应式路由协议时刻维护着路由信息,区域外采用反应式路由 协议按需进行路由选择,且区域的大小可以进行调整,每个区域的半径长度可以由用户设
定,以适应局部或暂时的网络变化,使网络的整体性能最佳。
(3) 虚拟基站VBS (Virtual Base Station)。 VBS的基本思想是模仿移动蜂窝网的结构 和操作,为无线自组网设计一种集中式的体系结构-虚拟基站结构,并以此为基础设计路 由协议。根据某种原则,网络中的一些节点被其邻近节点选为虚拟基站,负责管理数据分 组的转发,当节点发送数据时,发送至自己的虚拟基站即可,由虚拟基站负责先转发至目 的节点所属的虚拟基站,然后再转发至目的节点。即使两个节点属于同一个虚拟基站,也 需要依靠虚拟基站转发,不能直接通信。虚拟基站还接收其他虚拟基站转发的、目的节点 在自己管辖范围内的分组并转发至目的节点。VBS有利于提供通信的QoS保证和自组网移 动用户的管理。
(4) 群首网关交换路由CGSR(Clusterhead Gateway Switch Routing)。 CGSR是在DSDV (Destination-Sequenced Distance Vector)协议的基础上结合分级路由机制设计的,所使用
的网络结构是整个网络被划分为重叠的群(Cluster),在每个群中选出一个群首,管理群中 的其他的成员,控制对信道的访问,进行路由及带宽分配。所有在群首通信范围一跳内的 节点都属于该群,在两个以上群首通信范围一跳内的节点称为网关节点,两个群首不能直 接通信,必须通过网关节点。CGSR中只有群首和网关节点才转发分组,减少了路由中涉 及的节点个数。
(5) 分级状态路由HSR (Hierarchical State Routing)。 HSR是一种在逻辑上分为多层
的分级链路状态协议,它将移动节点进行逻辑划分并多层次分群,节点分为三类群首节
点、网关节点、内部节点,整个网络由分群和群首组成。协议中每个节点都至少有一个HID (Hierarchical ID)表示的分级地址,低层的群首可作为高层的成员。每个节点监视并在群 内广播其邻居节点的状态信息,群首总结本群的链路状态消息,并在处于更高一层的邻居 群首中传播。上层节点向其下层的群内成员广播上层的链路状态信息,最后每个节点都得 到以HID表示的全部节点的分级路由信息,并汇总到该节点的HSR表中。物理分群中的 各个节点相互广播其链路信息,群首负责对分群节点的信息进行总结并通过网关向邻近群 首发送信息。HSR中每个节点又具有逻辑地址,根据节点的逻辑地址对其位置进行管理, 在每个逻辑子网内至少存在一个归属代理(HomeAgent),负责管理本子网内节点逻辑地址 与当前物理地址之间的对应关系,并为所管理的节点转发数据分组。节点需要向归属代理 进行注册,通告最新的物理地址。由于采用网络的逻辑地址与分级地址进行路由选择,因 此可以适应网络结构的变化。
以上技术中,(1)适应于节点比较密集的网络,但在漂移节点和孤立节点数目过多的 情况下,协议的控制和存储开销较大;(2)可以根据网络特性对节点的路由区域半径进行 调整,使系统的整体路由开销最小,但是采用何种路由区域半径的调整方法,对其性能的
影响较大;(3)虽然有利于提供通信业务的QoS保证,但在网络中节点移动速度较高的情 况下,维护虚拟基站及路由的开销较大;(4)可以通过使用群首--网关序列来高效地传递数 据分组,但由于限定分组的传输必须经过群首网关序列,有可能产生非最优路径;(5)协 议比较复杂,得到的路径可能为非最优路径,当网络中节点移动速度较高时,路由开销较 大。这些已有的网络分层构建方法在可靠性、开销控制、有效性和复杂性等方面还不能很 好地满足多跳无线自组织网络的要求。

发明内容
本发明的目的针对现有技术的不足提供一种基于分区树的多跳无线自组织网络构建方 法,实现一种网络结构规模可控、扩展性好,并且网络系统开销小的多跳无线自组织网络, 有效地提高网络的路由效率和网络性能。
一种基于分区树的多跳无线自组织网络构建方法,其特征在于包括各分区中心节点(称 为根节点)的确定过程、根节点之间的互连过程、根节点之间互连路由维护过程、分区树 的生成过程、分区树的动态维护过程和基于分区树的路由选择过程,如图2所示。所述的 各分区中心节点(根节点)的确定过程、根节点之间的互连过程、根节点之间互连路由维 护过程、分区树的生成过程、分区树的动态维护过程和基于分区树的路由选择过程分别采 用下面的具体步骤实现。
各分区中心节点(根节点)的确定过程,其具体步骤包括
(1) 初始网络中的所有节点处于平等的地位,各节点都具有网络唯一标识符(ID或地 址),各节点类型均设置为"初始节点";
(2) 根据节点间的相互连接关系,采用下述的方式一或方式二在网络中选取某些节点 确定为分区的中心节点,这些被选取的分区中心节点称为根节点,它们的节点类型设置为
"根节点";
方式一通过手工方式采用静态配置的方法确定各分区的根节点,根节点的配置信息 至少包括节点类型等基本参数;
方式二通过根节点自动发现的方式;首先给定一规则,确定成为根节点必须满足的 条件(如ID Number、邻居节点的个数、处理能力大小、剩余电量的大小、稳定性高低或 其他可衡量的量化值);然后实施根节点自动发现过程从网络中任选一个节点(一般可以 选择方便管理的节点),向全网广播根节点自动发现请求消息RADRQ( Root AutoDiscovering ReQuest),该分组中包含源节点ID、消息类型、根节点选择条件等内容,RADRQ消息的 格式如图3所示。所有节点都对收到的RADRQ消息进行转发,并记录收到该消息的邻居 ID,满足根节点选择条件的节点向源节点回复应答消息RADRP (Root AutoDiscoveringRePly),通知自己已经成为根节点,RADRP沿RADRQ的反向路由到达源节点,RADRP 消息的格式如图4所示。通过全部返回的RADRP消息可以获取全网根节点的信息。
(3) 根节点广播自己的节点信息,信息内容至少包括节点ID、节点类型;
(4) 根节点记录收到的其他根节点的信息。 分区中心节点(根节点)确定过程的流程如图5所示。
根节点之间的互连过程,其具体步骤包括
(1) 根节点通过收到其他根节点的广播消息获取其他根节点的信息;
(2) ID Number小的根节点(源节点)向ID Number大的根节点(目的节点)广播发 送路由请求消息RREQ (Route Request);或者是ID Number大的根节点(源节点)向ID Number小的根节点(目的节点)广播发送路由请求消息RREQ; RREQ的内容包括消息类 型、目的节点ID、目的节点序列号、源节点ID、源节点序列号等;
(3) 收到RREQ的中间节点根据RREQ中的信息,建立到源节点的路由;
(4) 如果中间节点有最新的到达目的根节点的路由,则通过应答消息RREP (Route Reply)回复该RREQ,否则继续广播该RREQ消息;RREP的内容包括消息类型、目的节 点ID、目的节点序列号、源节点ID等;
(5) 目的根节点收到RREQ后,比较收到的所有RREQ.消息,选取一条最优的路由(最 优的条件可以是跳数最少、或时延最小、或能量消耗最小、或稳定度最高或其他可衡量的 量化值等);
(6) 目的根节点沿最优路由的反向路由向源根节点回复应答消息RREP;
(7) 收到RREP的中间节点建立到目的根节点的路由,并设置自己的节点类型为"互 连节点";
(8) 收到RREP的源根节点建立到目的根节点的路由。 根节点之间互连过程的流程如图6所示。
根节点之间互连路由维护过程,其具体步骤包括
(1) 根节点与互连节点都周期性地向相邻的互连节点或根节点发送一个特定的确认消 息(如"Hello消息")来确保路由的有效性;
(2) 如果根节点或互连节点检测到下一跳不可达,就向利用该损坏链路的活跃上游互 连节点或根节点发送RERR (Route ERRor)消息;RERR的内容包括消息类型、不可达的 目的节点ID、不可达的目的节点序列号、不可达的节点个数等;
(3) 发送或收到这个RERR消息的互连节点将自己的节点类型设置为"旬始节点";
(4) 收到这个RERR消息的互连节点再依次将该RERR消息转发到它们各自的活跃邻 居互连节点或根节点;
(5) 源根节点在收到该RERR消息后,则发起新的互连过程。
分区树的生成过程,其具体步骤包括
(1) 定义"树节点"为加入到分区树中的节点;节点的"深度"为"树节点"与根节 点之间的跳数,根节点设置自己的深度为0,初始节点、互连节点的深度为空;
(2) 根节点、树节点周期性地广播"分区树建立消息",消息的内容包括节点ID、节 点类型、节点深度、子孙节点数、其他可选参数(包括邻居节点数、剩余电量、处理能力、 稳定性等);"分区树建立消息"格式如图7所示;
(3) 收到"分区树建立消息"的初始节点设置自己的类型为"树节点"、自己的深度 在"分区树建立消息"中的深度上加1、父节点设置为"分区树建立消息"中节点ID,并 向父节点回复"树节点更新消息",消息的内容包括节点ID、节点类型、节点深度、子孙 节点数、节点路由列表;"树节点更新消息"格式如图8所示;
(4) 父节点收到"树节点更新消息"后,更新自己的子孙节点数、节点路由列表,并 继续向自己的父节点发送"树节点更新消息",直到根节点;
(5) 如果初始节点收到多个"分区树建立消息",将根据给定的选择规则选取其中一 个消息予以回复,丢弃其余的"分区树建立消息"。选择规则为比较节点深度、子孙节点数 和其他可选参数,选取最优的节点作为自己的父节点;
(6) 如果时间T (T>0)后还有初始节点由于只与互连节点相连无法加入分区树,这 时与该初始节点相邻的所有互连节点中的一个升级为根节点,并从最近的根节点获取其他 根节点的路由信息,并通知其他根节点自己己升级成为根节点;
(7) 直到所有的初始节点加入到分区树中成为树节点;
(8) 互连节点不发送"分区树建立消息",收到"分区树建立消息"的根节点和互连 节点将丢弃该分组。
分区树生成过程的流程如图9所示。
分区树的动态维护过程,其具体步骤包括
(1) 子节点通过父节点周期性发送的"分区树建立消息"来识别父节点是否仍然存在;
(2) 父节点通过与子节点之间的信息交换来识别子节点是否仍然存在,如果在规定的 时间内子节点没有信息需要发给父节点,则子节点主动发送一个特定的消息(如"Hello消 息")来维持它们之间的父子邻接关系;
(3) 如果父节点检测到某个子节点的邻接关系已不存在,则将该子节点从邻接关系表 中删除,更新自己的子孙节点数、节点路由列表,并通过"树节点更新消息"通告自己的 父节点;
(4) 如果子节点检测到父节点的邻接关系已经不存在,则设置自己的类型为"初始节 点",并通过"树节点释放消息"通告自己所有的子孙节点将节点类型设置为"初始节点", 清空与分区树相关的所有参数;"树节点释放消息"格式如图IO所示;
(5) 类型设置为"初始节点"的节点开始重新加入分区树。
基于分区树的路由选择过程,其具体步骤包括
(1) 每个根节点通过根节点之间的互连过程获得了到达其他根节点的路由信息;
(2) 在分区树的生成过程中,父节点通过"树节点更新消息"中的节点路由列表获得 了自己所有子孙节点的路由信息,根节点知道所在分区树的所有节点的路由信息;
(3) 如果数据分组的目的节点是自己的子孙节点,则直接发送至该节点;
(4) 如果数据分组的目的节点不是自己的子孙节点,则将分组发送给自己的父节点;
(5) 如果数据分组是由互连节点发出,且査询不到路由信息时,则将分组发给最近的 根节点;
(6) 如果根节点査询不到数据分组目的节点的路由信息,将向其他根节点发送路由查 询消息,消息的内容包括消息类型、目的根节点ID、源根节点ID、数据分组目的节点ID;
(7) 知道数据分组目的节点路由信息的根节点或互连节点向源根节点回复路由应答消 息,消息内容包括消息类型、目的根节点ID、源根节点ID、数据分组目的节点ID;
(8) 收到路由应答消息后,根节点将数据分组发给知道最优路由的根节点或互连节点;
(9) 根节点或互连节点接收到数据分组后,根据已有路由将分组发送至目的节点。 基于分区树的路由选择过程的流程如图11所示。
以上六个过程组成了基于分区树的多跳无线自组织网络的构建方法,该方法适用于各 种规模的多跳无线自组织网络。
本发明所提供的一种基于分区树的多跳无线自组织网络构建方法,具有如下优点
(1) 采用了分层的网络结构,根节点和互连节点组成了网络的骨干部分, 一颗分区树 就构成了一个分区,且树节点的移动只会产生局部的调整,因此具有分布式特点,适合于 大规模无线自组织网络,可扩展性好。
(2) 通过设置相应的策略来确定根节点的选择和分区树的生成,可以灵活控制骨干部 分和分区树的规模,从而有效控制网络的整体布署和网络的传输效率。
(3) 骨干部分和分区树都具有自适应的维护过程,能保证网络中数据的传输效率和可 靠性。
(4) 节点不需要维护到达其他所有节点的路由信息,其中根节点只需要维护到达其他 根节点的路由信息和自己子孙节点的路由信息,互连节点只需要维护经过它的互连路由信 息,树节点只需要维护自己的子孙节点的路由信息,这样降低了系统信息对节点资源的消 耗,减少了系统信息的转发次数,由此降低了网络系统的开销。
(5) 路由实现是路由算法与树形拓扑结构相结合,其中根节点之间的互连采用路由算 法,而分区树内的数据传输不需要采用路由算法,因为分区树的生成就已具备寻路的功能, 因此降低了无线组网和路由算法的难度,提高了网络的可靠性和稳定性。
(6) 路由选择具有先应式路由和按需路由的特点,路由选择开销小。分区树中的父节 点都掌握了自己子孙节点的路由信息,因此分区树内部的路由信息就形成了先应式路由; 分区树之间也有部分先应式路由,那就是根节点之间已有的互连路由;只有当根节点也不 知道目的节点的路由时,才会发起路由查询的过程,这就是按需路由,但是这个过程并不 需要建立新的路由,只需要在已有的互连路由中选择一条即可,与建立新的路由相比,路 由过程时延小。
综上所述,本发明所提供的一种基于分区树的多跳无线自组织网络构建方法,与传统 的无线组网技术相比,是一种扩展性好、网络结构规模可控、网络系统开销小、路由效率 高的新型多跳无线自组织网络构建方式,从而有效提高网络的传输效率和网络性能。


图1多跳无线通信示意图,其中节点之间的连线表示两个节点之间存在无线链路,可 以直接通信。
图2本发明所提供方法的组成示意图。
图3根节点自动发现请求消息RADRQ的格式。
图4根节点自动发现应答消息RADRP的格式。
图5分区中心节点(根节点)确定过程流程图。
图6根节点之间互连过程流程图。
图7 "分区树建立消息"格式。
图8 "树节点更新消息"格式。
图9分区树生成过程流程图。
图10 "树节点释放消息"格式。
图ll基于分区树的路由选择过程流程图。
图12实施例初始网络图,其中节点之间的连线表示两个节点之间存在无线链路,可以 直接通信。
图13实施例中根节点确定后的网络示意图。
图14实施例中根节点之间互连后的网络示意图。
图15实施例中根节点之间互连路由的维护示意图。
图16实施例中分区树生成过程的网络示意图。
图17实施例中分区树生成过程完成后的网络示意图。
图18实施例中分区树动态维护过程的网络示意图。
图19实施例中网络节点重新加入分区树的网络示意图。
图20实施例中节点S发送数据分组给节点12的路由示意图。
具体实施例方式
本发明所提供的一种基于分区树的多跳无线自组织网络构建方法,涉及到如下一些概念
初始节点初始网络中的所有节点,它们之间处于一种平等的地位。
分区、分区树根据本发明方法所生成的一颗树形成一个相对独立的区域,每一个这 样区域称为一个"分区",所生成的树即称为"分区树"。 根节点即分区树的根节点,是一个分区的中心节点。
互连节点根节点之间互连路由所包含的节点,特殊情况下,互连节点可以升级成为 根节点。
树节点分区树中除根节点之外的其他所有节点。
深度分区树中树节点到根节点的跳数。根节点的深度为0,初始节点的深度为空。
父节点分区树中一个树节点的上一级节点。
子节点分区树中一个树节点或根节点的下一级节点。
子孙节点分区树中一个树节点或根节点的所有下级节点。
下面结合附图和实施例对本发明作进一步地说明
实施例1
初始网络如图12所示,总共22个节点,它们都为初始节点,具有网络唯一标识符(ID 或地址),处于对等的地位,节点之间有连线表示两个节点之间存在无线链路,可以直接通
一、 确定各分区中心节点(根节点)
首先,给定一个选择根节点的条件,这个实施例中假设邻居节点数大于等于4的节点 即可成为根节点。然后有两种方式来确定根节点, 一种方式是通过手工方式采用静态配置 的方法将满足条件的初始节点配置为"根节点";另一种方式通过根节点自动发现方式,从 网络中任选一个源节点(如图12中的节点S),向全网广播根节点自动发现请求消息 RADRQ,所有节点都对收到的RADRQ消息进行转发,并记录收到该消息的邻居ID,满 足根节点选择条件的节点配置自己的节点类型为"根节点",并向源节点S回复应答消息 RADRP,通知自己已经成为根节点,RADRP沿RADRQ的反向路由到达源节点S,通过 接收到的全部RADRP消息,S可以获取全网根节点的信息。
图12中有三个节点满足成为根节点的条件,并被配置为"根节点",如图13所示的节 点l、 2、 3。节点l、 2、 3将广播自己的节点信息,内容包括节点ID和节点类型。三个根 节点都将记录收到的其他两个根节点的信息。
二、 根节点之间的互连
根节点1、 2、 3获取了其他根节点的信息后,就可以开始它们之间的互连过程。本实 施例假设由ID Number小的根节点(源节点)向ID Number大的根节点(目的节点)广播 发送路由请求消息RREQ,即1向2、 3发送,2向3发送,这样可以避免重复的路由査询。
收到RREQ的中间节点根据RREQ中的信息,建立到源节点的路由。如果中间节点有 最新的到达目的根节点的路由,则通过应答消息RREP回复该RREQ,否则继续广播该 RREQ消息。
目的根节点2或3收到RREQ后,比较收到的所有RREQ消息,选取一条最优的路由 (假设本实施例的最优的条件是跳数最少,如果跳数相等,则选取负荷低的节点),并沿最 优路由的反向路由向源根节点回复应答消息RREP。如图14所示,节点1和2是邻居,所 以2选取到1的路由是直连路由;1和3之间的最优路由是1—4—3; 2和3之间的路由有 两条跳数均为3,它们是2—1—4—3和2—5—6—3,但由于1为根节点,且有一条路由已 经过节点4,所以选择2—5—6—3。收到RREP的中间节点4、 5、 6建立到目的根节点的 路由,并设置自己的节点类型为"互连节点"。收到RREP的源根节点l或2建立到目的根 节点的路由。
三、 根节点之间互连路由的维护
根节点与互连节点都周期性地向相邻的互连节点或根节点发送"Hello消息"来确保路 由的有效性,如果根节点或互连节点检测到下一跳不可达,就向利用该损坏链路的活跃上游互连节点或根节点发送RERR消息。如图15所示,当节点5检测到节点6发生故障变得 不可达,将向上游节点2发送RERR消息,并设置自己的节点类型为"初始节点"。
根节点2在收到该RERR消息后,确定到节点3的路由己经失效,则发起新的路由査 询过程,建立新的互连路由2—1—4—3。
四、 分区树的生成
首先,根节点l、 2、 3设置自己的深度为0,初始节点、互连节点的深度为空;然后, 根节点1、 2、 3开始周期性地广播"分区树建立消息"。以图16中节点1所在分区树的建 立为例,收到"分区树建立消息"的初始节点7、 8设置自己的类型为"树节点"、自己的 深度设置为1、父节点设置为节点1,并向父节点1回复"树节点更新消息"。节点7、 8成 为树节点后也开始广播"分区树建立消息",收到该消息的节点9将设置自己的类型为"树 节点"、自己的深度设置为2、父节点设置为节点7,并向父节点7回复"树节点更新消息"; 收到"分区树建立消息"的节点S、 IO将设置自己的类型为"树节点"、自己的深度设置为 2、父节点设置为节点8,并向父节点8回复"树节点更新消息"。
父节点收到"树节点更新消息"后,更新自己的子孙节点数、节点路由列表,并继续 向自己的父节点发送"树节点更新消息",直到根节点。这样节点1所在的分区树建立完成, 根节点2、 3所在的分区树将也按相同的过程予以建立。
如果初始节点如S收到节点8和9发送"分区树建立消息",将根据给定的选择规则(本 实施例的规则为选择深度较小的节点作为父节点)选取节点8的消息予以回复,丢弃节点 9的"分区树建立消息"。
如果时间T (T>0)后还有初始节点如图16中的节点11由于只与互连节点和初始节点 相连而无法加入分区树,这时与初始节点11相邻的互连节点5升级为根节点,并从最近的 根节点2获取其他根节点的路由信息,并通知其他根节点l、 3自己已升级成为根节点。如 果这时需要了解全网的根节点信息,只需重新发起根节点自动发现过程即可。
升级成为根节点的节点5将广播"分区树建立消息",这样节点11、 12就可以加入到 根节点5所在的分区树。直到所有的初始节点都加入到分区树中成为树节点后,分区树生 成过程结束,如图n所示。
五、 分区树的动态维护
子节点通过父节点周期性发送的"分区树建立消息"来识别父节点是否仍然存在;父 节点通过与子节点之间的信息交换来识别子节点是否仍然存在,如果在规定的时间内子节 点没有信息需要发给父节点,则子节点主动发送一个"Hello消息"来维持它们之间的父子
邻接关系。
如果父节点检测到某个子节点的邻接关系已不存在,则将该子节点从邻接关系表中删 除,更新自己的子孙节点数、节点路由列表,并通过"树节点更新消息"通告自己的父节 点;如果子节点检测到父节点的邻接关系已经不存在,则设置自己的类型为"初始节点", 并通过"树节点释放消息"通告自己所有的子孙节点将节点类型设置为"初始节点",清空 与分区树相关的所有参数。类型设置为"初始节点"的节点开始重新加入分区树。
如图18中节点8由于发生故障无法发送任何消息,当父节'点1检测到与8的邻居关系 已不存在,就将子节点8从邻接关系表中删除,更新自己的子孙节点数、节点路由列表, 由于l为根节点,所以不需要发送"树节点更新消息"通告自己的父节点。当子节点S和 IO检测到与父节点8的邻接关系已不存在,就设置自己的类型为"初始节点",由于S和 10没有子节点,所以不需要发送"树节点释放消息"通告自己的子孙节点。
类型设置为"初始节点"的节点S和10将分别以节点9和节点13为父节点重新加入 分区树,如图19所示。
六、基于分区树的路由选择
如图17所示,本实施例的网络中有四个根节点1、 2、 3和5,它们两两之间具有互连 路由,在建立的四颗分区树中,父节点知道自己所有子孙节点的路由信息,四个根节点就 知道所在分区树的所有节点的路由信息。
如果数据分组的目的节点是自己的子孙节点,则直接发送至该节点;如果数据分组的 目的节点不是自己的子孙节点,则将分组发送给自己的父节点。如果数据分组是由互连节 点发出,且査询不到路由信息时,则将分组发给最近的根节点。
如果根节点査询不到数据分组目的节点的路由信息,将向其他根节点发送路由查询消 息,知道数据分组目的节点路由信息的根节点或互连节点向源根节点回复路由应答消息。 收到路由应答消息后,根节点将数据分组发给知道最优路由的根节点或互连节点,根节点 或互连节点接收到数据分组后,根据已有路由将分组发送至目的节点。
假设图17中节点S有数据分组需要发送给节点12,由于S没有子节点,S将数据分组 发给父节点8,节点8査到目的节点12不属于自己的子孙节点,就将数据分组发给根节点 1,在节点1具备的路由信息中也査不到到达节点12的路由,于是,节点1向另外3个根 节点2、 3、 5发送路由查询消息,根节点5知道节点12的路由信息,将向根节点l回复路 由应答消息,告知节点1自己知道到达节点12的路由信息。根节点1收到根节点5的路由 应答消息后,就将数据分组发送给根节点5,根节点5收到数据分组后,将其转发给子节 点11,由于节点12是节点11的子节点,节点11直接将数据分组发送给节点12,如图20所示。
以上实施例说明的就是本发明所提供的一种基于分区树的多跳无线自组织网络构建方 法的具体实施方式
。本发明所提供的组网技术具有路由效率高、可扩展性好、网络开销小 等优点,从而能有效提高网络的传输效率和网络性能。
权利要求
1、一种基于分区树的多跳无线自组织网络构建方法,其特征在于包括各分区根节点的确定过程、根节点之间的互连过程、根节点之间互连路由维护过程、分区树的生成过程、分区树的动态维护过程和基于分区树的路由选择过程。
2、 根据权利要求l所述的网络构建方法,其特征在于所述各分区根节点的确定过程包括以下步骤(1) 初始网络中的所有节点处于平等的地位,各节点都具有网络唯一标识符,各节点 类型均设置为"初始节点";(2) 根据节点间的相互连接关系,采用下述的方式一或方式二在网络中选取某些节点确定为分区的根节点,它们的节点类型设置为"根节点";方式一通过手工方式采用静态配置的方法确定各分区的根节点,根节点的配置信息 至少包括节点类型;方式二通过根节点自动发现的方式;首先给定一规则,确定成为根节点必须满足的 条件;然后实施根节点自动发现过程从网络中任选一个节点,向全网广播根节点自动发现请求消息RADRQ, RADRQ消息至少包括源节点ID、消息类型和根节点选择条件,所 有节点都对收到的RADRQ消息进行转发,并记录收到该消息的邻居ID,满足根节点选择 条件的节点向源节点回复应答消息RADRP,通知自己已经成为根节点,RADRP沿RADRQ 的反向路由到达源节点,通过全部返回的RADRP消息获取全网根节点的信息;(3) 根节点广播自己的节点信息,信息内容至少包括节点ID、节点类型;(4) 根节点记录收到的其他根节点的信息。
3、 根据权利要求l所述的网络构建方法,其特征在于所述根节点之间的互连过程包括 以下步骤(1) 根节点通过收到其他根节点的广播消息获取其他根节点的信息;(2) 源节点向目的节点广播发送路由请求消息RREQ; RREQ的内容至少包括消息类 型、目的节点ID、目的节点序列号、源节点ID、源节点序列号;(3) 收到RREQ的中间节点根据RREQ中的信息,建立到源节点的路由;(4) 如果中间节点有最新的到达目的根节点的路由,则通过应答消息RREP回复该 RREQ,否则继续广播该RREQ消息;RREP的内容至少包括消息类型、目的节点ID、目 的节点序列号、源节点ID;(5) 目的根节点收到RREQ后,比较收到的所有RREQ消息,选取一条最优的路由;(6) 目的根节点沿最优路由的反向路由向源根节点回复应答消息RREP; (7) 收到RREP的中间节点建立到目的根节点的路由,并设置自己的节点类型为"互 连节点";(8) 收到RREP的源根节点建立到目的根节点的路由。
4、 根据权利要求3所述的网络构建方法,其特征在于步骤(2)所述的源节点为ID Number 小的根节点,目的节点为ID Number大的根节点;或者源节点为ID Number大的根节点, 目的节点为ID Number小的根节点。
5、 根据权利要求3所述的网络构建方法,其特征在于所述最优的路由条件为跳数最少、 或时延最小、或能量消耗最小、或稳定度最高。
6、 根据权利要求l所述的网络构建方法,其特征在于所述根节点之间互连路由维护过 程包括以下步骤-(1) 根节点与互连节点都周期性地向相邻的互连节点或根节点发送一个特定的确认信 息来确保路由的有效性;(2) 如果根节点或互连节点检测到下一跳不可达,就向利用该损坏链路的活跃上游互 连节点或根节点发送RERR消息;RERR的内容至少包括消息类型、不可达的目的节点ID、 不可达的目的节点序列号、不可达的节点个数;(3) 发送或收到这个RERR消息的互连节点将自己的节点类型设置为"初始节点";(4) 收到这个RERR消息的互连节点再依次将该RERR消息转发到它们各自的活跃邻 居互连节点或根节点;(5) 源根节点在收到该RERR消息后,则发起新的互连过程。
7、 根据权利要求l所述的网络构建方法,其特征在于所述分区树的生成过程包括以下 步骤(1) 定义"树节点"为加入到分区树中的节点;节点的"深度"为"树节点"与根节 点之间的跳数,根节点设置自己的深度为0,初始节点、互连节点的深度为空;(2) 根节点、树节点周期性地广播"分区树建立消息","分区树建立消息"的内容至 少包括节点ID、节点类型、节点深度、子孙节点数;(3) 收到"分区树建立消息"的初始节点设置自己的类型为"树节点"、自己的深度 在"分区树建立消息"中的深度上加1、父节点设置为"分区树建立消息"中节点ID,并 向父节点回复"树节点更新消息","树节点更新消息"的内容至少包括节点ID、节点类型、 节点深度、子孙节点数、节点路由列表;(4) 父节点收到"树节点更新消息"后,更新自己的子孙节点数、节点路由列表,并 继续向自己的父节点发送"树节点更新消息",直到根节点;(5) 如果初始节点收到多个"分区树建立消息",将根据给定的选择规则选取其中一个消息予以回复,丢弃其余的"分区树建立消息";(6) 如果时间T (T>0)后还有初始节点由于只与互连节点相连无法加入分区树,这 时与该初始节点相邻的所有互连节点中的一个升级为根节点,并从最近的根节点获取其他 根节点的路由信息,并通知其他根节点自己己升级成为根节点;(7) 直到所有的初始节点加入到分区树中成为树节点;(8) 互连节点不发送"分区树建立消息",收到"分区树建立消息"的根节点和互连 节点将丢弃该数据分组。
8、 根据权利要求l所述的网络构建方法,其特征在于所述分区树的动态维护过程包括 以下步骤(1) 子节点通过父节点周期性发送的"分区树建立消息"来识别父节点是否仍然存在;(2) 父节点通过与子节点之间的信息交换来识别子节点是否仍然存在,如果在规定的 时间内子节点没有信息需要发给父节点,则子节点主动发送一个特定的信息来维持它们之 间的父子邻接关系;G)如果父节点检测到某个子节点的邻接关系已不存在,则将该子节点从邻接关系表 中删除,更新自己的子孙节点数、节点路由列表,并通过"树节点更新消息"通告自己的 父节点;(4) 如果子节点检测到父节点的邻接关系已经不存在,则设置自己的类型为"初始节 点",并通过"树节点释放消息"通告自己所有的子孙节点将节点类型设置为"初始节点", 清空与分区树相关的所有参数;(5) 类型设置为"初始节点"的节点开始重新加入分区树。
9、 根据权利要求1所述的网络构建方法,其特征在于所述基于分区树的路由选择过程 包括以下步骤(1) 每个根节点通过根节点之间的互连过程获得了到达其他根节点的路由信息;(2) 在分区树的生成过程中,父节点通过"树节点更新消息"中的节点路由列表获得 了自己所有子孙节点的路由信息,根节点知道所在分区树的所有节点的路由信息;(3) 如果数据分组的目的节点是自己的子孙节点,则直接发送至该节点;(4) 如果数据分组的目的节点不是自己的子孙节点,则将分组发送给自己的父节点;(5) 如果数据分组是由互连节点发出,且査询不到路由信息时,则将分组发给最近的 根节点;(6) 如果根节点査询不到数据分组目的节点的路由信息,将向其他根节点发送路由查 询消息,路由查询消息的内容至少包括消息类型、目的根节点ID、源根节点ID、数据分组 目的节点ID;(7) 知道数据分组目的节点路由信息的根节点或互连节点向源根节点回复路由应答消 息,路由应答消息的内容至少包括消息类型、目的根节点ID、源根节点ID、数据分组目的 节点ID;(8) 收到路由应答消息后,根节点将数据分组发给知道最优路由的根节点或互连节点;(9) 根节点或互连节点接收到数据分组后,根据已有路由将分组发送至目的节点。
全文摘要
本发明公开了一种基于分区树的多跳无线自组织网络构建方法,包括各分区根节点的确定过程、根节点之间的互连过程、根节点之间互连路由维护过程、分区树的生成过程、分区树的动态维护过程和基于分区树的路由选择过程。本发明与传统的无线组网技术相比,是一种扩展性好、网络结构规模可控、网络系统开销小、路由效率高的新型多跳无线自组织网络构建方式,从而有效提高网络的传输效率和网络性能。
文档编号H04L12/44GK101197748SQ20071003183
公开日2008年6月11日 申请日期2007年11月30日 优先权日2007年11月30日
发明者刘桂开, 军 张, 岗 韦 申请人:华南理工大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1