无线mesh传感器网络路径构建方法、装置及网关的制作方法

文档序号:7773758阅读:131来源:国知局
无线mesh传感器网络路径构建方法、装置及网关的制作方法
【专利摘要】本申请公开一种无线mesh传感器网络路径构建方法,在构建路径的过程中,充分考虑了路由节点的实际应用需求,在建立主路由链接数时,根据节点分层的结果,按照跳数优先的原则,首先为第一层中的路由节点建立主路由链接和次路由链接,并且,充分考虑到各个传感器的链接数,或链接数和服务质量,将服务质量作为第二指标,依次为其他层的路由节点建立了主路由链接和次路由链接,再根据所述主路由链接和次路由链接构建主路由路径和冗余路径,最大程度上保证网络连通性,挖掘存在路径,避免了单点拥塞,以及因单点拥塞导致的设备故障的问题。
【专利说明】无线mesh传感器网络路径构建方法、装置及网关
【技术领域】
[0001]本发明涉及传感器网络领域,特别是涉及一种无线mesh传感器网络路径构建方法、装置及网关。
【背景技术】
[0002]无线传感器网络(Wireless Sensor Network, WSN)是由大量的静止或移动的传感器以自组织和多跳的方式构成的无线网络,以协作地感知、采集、处理和传输网络覆盖地理区域内被感知对象的信息,并最终把这些信息发送给网络的所有者。无线传感器网络被称为本世纪人类面临的新的发展机遇,将推动计算机网络时代向传感器网络时代转变,应用于环境监测和保护、医疗护理、军事等多个重要领域。
[0003]在现有的无线mesh (网状)传感器网络中,当构建的路由为单径路由时,若发生网络拥塞或链路断开,则会使无线通信受到干扰或中断,因此,在实际应用中,通常构建多路径路由进行无线通信,从而在多路径中有路径断裂时,可将数据资源重新分配给其他稳定的路径,由其他路径照常通信,而不需要进行路由发现,保证了无线通信工作的稳定性。目前,为无线mesh传感器网络构建多路径的路由的方法,首先建立一条主路径,继而获取构建所述主路径的邻居节点,将所述邻居节点作为替代节点,建立冗余路径,例如,将路由路径节点序列中,相邻两节点作为三角形两顶点原则,寻找该相邻两节点的替代节点序列,从中获取替代节点构建冗余路径。当主路径发生故障时,由所述冗余路径进行无线通信,保证了通信质量。
[0004]但是,发明人在本申请的研究过程中发现,采用现有技术提供的方式构建多路径路由时,获取构建冗余路径的替代节点时,只是根据邻居节点获取获取所述替代节点,没有依据实际的应用需求,容易导致单点拥塞,甚至发生设备故障。

【发明内容】

[0005]有鉴于此,本发明的目的在于提供一种无线mesh传感器网络路径构建方法,以解决现有技术中,在构建无线mesh传感器网络中的冗余路径时,所存在的容易导致单点拥塞,甚至发生设备故障的问题,具体实施方案如下:
[0006]一种无线mesh传感器网络路径构建方法,在根据距离源节点的最短路径,为网络内的各个路由节点分层后,所述无线mesh传感器网络路径构建方法还包括:
[0007]I)将与所述源节点的最短路径为I跳的路由节点确定为第一层的路由节点,为所述第一层的各个路由节点与所述源节点建立主路由链接,并确定下一层作为当前参考层;
[0008]2)根据所述当前参考层中的各个路由节点的链接数,或链接数和服务质量,依次为所述当前参考层中的各个路由节点建立主路由链接;
[0009]3)当所述当前参考层中的各个路由节点都建立主路由链接后,根据链接数,或链接数和服务质量,依次为所述当前参考层中的各个路由节点建立次路由链接,并在所述当前参考层的各个路由节点均建立次路由链接后,选取下一层作为当前参考层,并返回步骤2),为所述当前参考层中的各个路由节点建立主路由链接,直到为网络中的各层路由节点均建立了主路由链接和次路由链接;
[0010]4)根据考察节点的主路由链接,构建所述考察节点的主路由路径;
[0011]5)沿所述考察节点的主路由链接上行,直到所述考察节点的主路由链接和次路由链接经过的路由节点不同时,确定所述次路由链接中,不同于所述主路由链接的路由节点为当前节点,并根据所述当前节点的主路由链接和次路由链接,确定所述考察节点的冗余路径。
[0012]优选的,所述为网络内的各个路由节点分层,包括:
[0013]根据获取到的各个传感器的链路信号强度,获取链路信号强度符合标准的可靠链接;
[0014]获取所述可靠链接对应的路由节点距离所述源节点的最短路径的跳数;
[0015]将所述跳数相同的路由节点,确定为同一层的路由节点。
[0016]优选的,所述依次为所述当前参考层中的各个路由节点建立主路由链接,包括:
[0017]11)选取所述当前参考层中,可选链接数最小的路由节点,作为当前参考节点;
[0018]12)在所述当前参考节点的上一层的路由节点中,获取与所述当前参考节点间为可靠链接,且当前已链接数最小的路由节点;
[0019]13)若当前已链接数最小的路由节点只存在一个时,则建立所述路由节点与所述当前参考节点的链接,作为主路由链接,若当前已链接数最小的路由节点存在两个以上时,选取服务质量最好的路由节点,建立所述路由节点与所述当前参考节点的链接,作为主路由链接;
[0020]14)获取所述当前参考层中,未建立主路由链接的路由节点,并从中选取可选链接数最小的路由节点,作为当前参考节点,返回执行步骤12)的操作,直到所述当前参考层中不包含需要建立主路由链接的路由节点。
[0021]优选的,所述依次为所述当前参考层的各个路由节点建立次路由链接,包括:
[0022]21)选取所述当前参考层中,可选链接数最小的路由节点,作为当前参考节点;
[0023]22)在所述当前参考节点的上层或同层的路由节点中,排除已和所述当前参考节点建立主路由链接的路由节点,获取其他与所述当前参考节点间为可靠链接,且当前已链接数最小的路由节点;
[0024]23)若当前已链接数最小的路由节点只有一个时,建立所述路由节点与所述当前参考节点的链接,作为次路由链接,若当前已链接数最小的路由节点存在两个以上时,选取服务质量最好的路由节点,建立所述路由节点与所述当前参考节点的链接,作为次路由链接,若不存在当前已链接数最小的路由节点,则选取与所述当前参考节点建立了主路由链接的路由节点,建立该路由节点与所述当前参考节点的链接,作为次路由链接;
[0025]24)获取所述当前参考层中,未建立次路由链接的路由节点,并从中选取可选链接数最小的路由节点,作为当前参考节点,返回执行步骤22)的操作,直到所述当前参考层中不包含需要建立次路由链接的路由节点。
[0026]优选的,所述确定所述考察节点的冗余路径,包括:
[0027]31)沿所述考察节点的主路由链接上行,判断所述考察节点的主路由链接和次路由链接分别对应的下一跳节点是否相同,如果相同,则由所述主路由链接确定所述考察节点的下一跳节点作为当前节点,直到所述考察节点的主路由链接和次路由链接不同,根据所述次路由链接得到下一跳节点,并将所述下一跳节点作为当前节点;
[0028]32)判断所述当前节点是否为所述源节点,如果是,则冗余路径的构建结束,如果否,继续执行后续步骤的操作;
[0029]33)当所述当前节点不是所述源节点时,判断所述当前节点的主路由链接的下一跳节点是否存在于所述考察节点的主路由路径中;
[0030]34)若所述当前节点的主路由链接的下一跳节点不存在于所述考察节点的主路由路径中,由所述当前节点的主路由链接获取下一跳节点,并确定所述下一跳节点作为当前节点,返回执行步骤32)的操作;
[0031]35)若所述当前节点的主路由链接的下一跳节点存在于所述考察节点的主路由路径中,由所述当前节点的次路由链接获取下一跳节点,并确定所述下一跳节点作为当前节点,返回执行步骤32)的操作。
[0032]优选的,所述无线mesh传感器网络路径构建方法还包括:
[0033]对比所述各个路由节点的主路由路径和冗余路径,判断是否存在节点重用;
[0034]根据判断结果,确定存在节点重用时,产生警告信息。
[0035]相应的,本发明还公开了一种无线mesh传感器网络路径构建装置,包括节点分层模块,所述节点分层模块用于根据距离源节点的最短路径,为网络内的各个路由节点分层,并且所述无线mesh传感器网络路径构建装置还包括:
[0036]当前参考层确定模块,用于将与所述源节点的最短路径为I跳的路由节点确定为第一层的路由节点,为所述第一层的各个路由节点与所述源节点建立主路由链接,并确定下一层作为当前参考层;
[0037]主路由链接建立模块,用于根据所述当前参考层中的各个路由节点的链接数,或链接数和服务质量,依次为所述当前参考层中的各个路由节点建立主路由链接;
[0038]次路由链接建立模块,用于当所述当前参考层中的各个路由节点都建立主路由链接后,根据链接数,或链接数和服务质量,依次为所述当前参考层中的各个路由节点建立次路由链接,并在所述当前参考层的各个路由节点均建立次路由链接后,选取下一层作为当前参考层,由所述主路由链接建立模块执行相应的操作,为所述当前参考层中的各个路由节点建立主路由链接,直到为网络中的各层路由节点均建立了主路由链接和次路由链接;
[0039]主路由路径建立模块,用于根据考察节点的主路由链接,构建所述考察节点的主路由路径;
[0040]冗余路径建立模块,用于沿所述考察节点的主路由链接上行,直到所述考察节点的主路由链接和次路由链接经过的路由节点不同时,确定所述次路由链接中,不同于所述主路由链接的路由节点为当前节点,并根据所述当前节点的主路由链接和次路由链接,确定所述考察节点的冗余路径。
[0041]优选的,所述节点分层模块包括:
[0042]可靠链接获取单元,用于根据获取到的各个传感器的链路信号强度,获取链路信号强度符合标准的可靠链接;
[0043]跳数获取单元,用于获取所述可靠链接对应的路由节点距离所述源节点的最短路径的跳数;[0044]确定单元,用于将所述跳数相同的路由节点,确定为同一层的路由节点。
[0045]优选的,所述主路由链接建立模块包括:
[0046]第一选取单元,用于选取所述当前参考层中,可选链接数最小的路由节点,作为当前参考节点;
[0047]第一获取单元,用于在所述当前参考节点的上一层的路由节点中,获取与所述当前参考节点间为可靠链接,且当前已链接数最小的路由节点;
[0048]主路由链接建立单元,用于根据所述获取单元获取的结果,若当前已链接数最小的路由节点只存在一个时,则建立所述路由节点与所述当前参考节点的链接,作为主路由链接,若当前已链接数最小的路由节点存在两个以上时,选取服务质量最好的路由节点,建立所述路由节点与所述当前参考节点的链接,作为主路由链接;
[0049]第一确定单元,用于获取所述当前参考层中,未建立主路由链接的路由节点,并从中选取可选链接数最小的路由节点,作为当前参考节点,并由所述第一获取单元对所述当前参考节点执行相应的操作,直到所述当前参考层中不包含需要建立主路由链接的路由节点。
[0050]优选的,所述次路由链接建立模块包括:
[0051]第二选取单元,用于选取所述当前参考层中,可选链接数最小的路由节点,作为当前参考节点;
[0052]第二获取单元,用于在所述当前参考节点的上层或同层的路由节点中,排除已和所述当前参考节点建立主路由链接的路由节点,获取其他与所述当前参考节点间为可靠链接,且当前已链接数最小的路由节点;
[0053]次路由链接建立单元,用于若当前已链接数最小的路由节点只有一个时,建立所述路由节点与所述当前参考节点的链接,作为次路由链接,若当前已链接数最小的路由节点存在两个以上时,选取服务质量最好的路由节点,建立所述路由节点与所述当前参考节点的链接,作为次路由链接,若不存在当前已链接数最小的路由节点,则选取与所述当前参考节点建立了主路由链接的路由节点,建立该路由节点与所述当前参考节点的链接,作为次路由链接;
[0054]第二确定单元,用于获取所述当前参考层中,未建立次路由链接的路由节点,并从中选取可选链接数最小的路由节点,作为当前参考节点,并由所述第二获取单元对所述当前参考节点执行相应的操作,直到所述当前参考层中不包含需要建立次路由链接的路由节点。
[0055]优选的,所述冗余路径建立模块包括:
[0056]第一判断单元,用于沿所述考察节点的主路由链接上行,判断所述考察节点的主路由链接和次路由链接分别对应的下一跳节点是否相同,如果相同,则由所述主路由链接确定所述考察节点的下一跳节点作为当前节点,直到所述考察节点的主路由链接和次路由链接不同,根据所述次路由链接得到下一跳节点,并将所述下一跳节点作为当前节点;
[0057]第二判断单元,用于判断所述当前节点是否为所述源节点,如果是,则冗余路径的构建结束,如果否,继续执行后续步骤的操作;
[0058]第三判断单元,用于当所述当前节点不是所述源节点时,判断所述当前节点的主路由链接的下一跳节点是否存在于所述考察节点的主路由路径中;[0059]第三确定单元,用于若所述当前节点的主路由链接的下一跳节点不存在于所述考察节点的主路由路径中,由所述当前节点的主路由链接获取下一跳节点,并确定所述下一跳节点作为当前节点,由所述第二判断单元对所述当前节点执行相应的操作;
[0060]第四确定单元,用于若所述当前节点的主路由链接的下一跳节点存在于所述考察节点的主路由路径中,由所述当前节点的次路由链接获取下一跳节点,并确定所述下一跳节点作为当前节点,由所述第二判断单元对所述当前节点执行相应的操作。
[0061]优选的,所述无线mesh传感器网络路径构建装置还包括:
[0062]对比单元,用于对比所述各个路由节点的主路由路径和冗余路径,判断是否存在节点重用;
[0063]警告单元,用于根据判断结果,确定存在节点重用时,产生警告信息。
[0064]相应的,本发明还公开了一种网关,所述网关中包括:
[0065]如上所述的无线mesh传感器网络路径构建装置。
[0066]本申请所公开的无线mesh传感器网络路径构建方法,适用于mesh拓扑网络结构中,该方法通过路由节点的主路由链接和次路由链接,为各路由节点构建了主路由路径和冗余路径,提高了路由传输的可靠性。并且,在构建路径的过程中,充分考虑了路由节点的实际应用需求,在建立主路由链接数时,根据节点分层的结果,按照跳数优先的原则,首先为第一层中的路由节点建立主路由链接和次路由链接,并且,充分考虑到各个传感器的链接数,或链接数和服务质量,将服务质量作为第二指标,依次为其他层的路由节点建立了主路由链接和次路由链接,再根据所述主路由链接和次路由链接为构建主路由路径和冗余路径,最大程度上保证网络连通性,挖掘存在路径,避免了单点拥塞,以及因单点拥塞导致的设备故障的问题。
【专利附图】

【附图说明】
[0067]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0068]图1为本发明实施例公开的一种无线mesh传感器网络路径构建方法的工作流程示意图;
[0069]图2为现有技术公开的一种无线mesh网络结构示意图;
[0070]图3为本发明实施例公开的一种无线mesh传感器网络路径构建方法中,节点分层后的路由节点链接状态示意图;
[0071]图4为本发明实施例公开的一种无线mesh传感器网络路径构建方法中,建立主路由链接的工作流程示意图;
[0072]图5为本发明实施例公开的一种无线mesh传感器网络路径构建方法中,建立次路由链接的工作流程示意图;
[0073]图6为本发明实施例公开的一种无线mesh传感器网络路径构建方法中,建立路由链接后的路由节点链接状态示意图;
[0074]图7为本发明实施例公开的一种无线mesh传感器网络路径构建方法中,建立冗余路径的工作流程示意图;
[0075]图8为本发明实施例公开的一种无线mesh传感器网络路径构建方法中,建立路径后的路由节点链接状态示意图;
[0076]图9为本发明实施例公开的一种无线mesh传感器网络路径构建装置的结构示意图。
【具体实施方式】
[0077]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0078]在无线mesh传感器网络中,需要创建冗余路径,以保证路由的可靠性。本申请公开了一种无线mesh传感器网络路径构建方法,以解决现有技术中,在构建无线mesh传感器网络中的冗余路径时,所存在的容易导致单点拥塞,甚至发生设备故障的问题。
[0079]无线mesh传感器网络中,包括网关和多个传感器,其中所述传感器具备路由功能,能够产生实时数据、向网关传输数据和接收网关传输的管理命令,因此,在进行路径构建时,通常将传感器称为路由节点或节点,其中,所述传感器产生和传输的数据包括自身的服务质量,例如自身的链路强度信息等。
[0080]本申请公开的无线mesh传感器网络路径构建通常应用于网关,参见图1所示的工作流程示意图,在根据距离源节点的最短路径,为网络内的各个路由节点分层后,所述无线mesh传感器网络路径构建方法包括以下步骤:
[0081]步骤S11、将与所述源节点的最短路径为I跳的路由节点确定为第一层的路由节点,为所述第一层的各个路由节点与所述源节点建立主路由链接,并确定下一层作为当前参考层。
[0082]在为无线mesh传感器网络构建路径时,预先根据各个传感器距离源节点的最短路径,为网络内的各个路由节点分层后,开始执行路径构建的操作。其中,所述源节点为网络拓扑中的网关,也可以被称为数据汇聚点。路由节点,指的是无线mesh网络中的各个传感器,也可以被称为节点。
[0083]通常,当网络中的链路的信号强度更新时,需要重新构建无线mesh传感器网络中的路径。当发生一些触发事件时,会导致网络中的链路的信号强度更新,从而需要重新构建路径。例如,新的路由节点加入无线mesh传感器网络中后,会向网关传输设备加入请求,所述网关接收到设备加入请求后执行路径构建的操作;或者,当网络内有链路失效时,网关接收到链路失效(Path-Fail)报告后,重新构建路径;另外,网络内的路由节点会周期性的向网关传输邻居设备链接状态报告,所述邻居设备链接状态报告中包括相应链路的信号强度,或者,还可以包括其他的服务质量信息。所述网关在接收到网络中各个路由节点的邻居设备链接状态报告后,会生成相应的链路信号强度矩阵,当网关根据所述链路信号强度矩阵,确定网络中的链接状态发生改变时,则执行相应的构建路径的操作。
[0084]在为第一层中各个路由节点与源节点建立主路由链接前,预先需要初始化路由信息,其中,所述路由信息包括自身的服务质量信息,如链路信号强度信息等。[0085]通过所述链路信号强度,能获取该路由节点的累计信号强度,当路由节点a与上行邻居节点b构建一条路由链路后,所述路由节点a的累计信号强度,等于a和b构建的链路的链路信号强度和节点b的累计信号强度之和,即路由节点a的累计信号强度cumulative Strength (a) =a 和 b 构建的链路的链路信号强度 SignalStrength (a,b) + 路由节点b的累计信号强度cumulativeStrength (b)。
[0086]所述链路信号强度信息和累计信号强度表征了对应路由节点的服务质量,并且,各层中的路由节点在建立主路由链路和次路由链路后,都需要更新该层中各个路由节点的累计信号强度。
[0087]步骤S12、根据所述当前参考层中的各个路由节点的链接数,或链接数和服务质量,依次为所述当前参考层中的各个路由节点建立主路由链接。
[0088]考虑到实际应用需求及路由节点的可靠路由链接能力,并在一定程度上实现负载均衡,需要限制每个路由节点的链接数。通常,可限制每个路由节点的最大路由链接数为4,即上行最多路由链接两个路由节点,下行最多路由链接两个路由节点。每个路由节点的两条上行路由链接中信号强度或其他服务质量指标较好的设为主路由链接,记为PO,主路由链接必须是该节点与其上一层邻居节点的链接;另一条为次路由链接,记为P1,次路由链接必须是该路由节点与其同层或上一层邻居节点的链接。
[0089]当然,也可以为每个路由节点设置其他数目的最大路由链接数,从而为每个路由节点分配两条以上的路由链接,本申请对此不作限定。
[0090]另外,在确定当前参考层中的各个路由节点建立主路由链接的顺序时,主要是依据链接数。当根据所述链接数,无法确定建立主路由链接的顺序时,则需要综合考虑链接数和服务质量,其中,所述服务质量通常为链路信号强度和累计信号强度,其中所述累计信号强度为该路由节点距离源节点所经过的链路的信号强度之和,其中每个链路的链路信号强度,可通过链路信号强度矩阵获取。当然,也可以考虑其他服务质量指标对应的服务质量,本申请对此不做限定。
[0091]路由节点会向网关传输数据,该数据中包括各节点的链路信号强度和累计信号强度,网关在接收到该数据后,会建立相应的链路信号强度矩阵。通过所述链路信号强度矩阵,网关可以获取该路由节点的链路信号强度和累计信号强度。当需要依据链接数和服务质量,依次为当前参考层中的各个路由节点建立主路由链接,且所述服务质量包括链路信号强度和累计信号强度时,在步骤Sll中,为第一层中的各个路由节点直接与源节点建立主路由链接后,需要更新该层各个路由节点的累计信号强度(cumulative Strength)。并且,在每层中的各个路由节点均建立主路由链接后,需要重新更新该层中,存储在链路信号强度矩阵中的各个路由节点的累计信号强度。
[0092]步骤S13、当所述当前参考层中的各个路由节点都建立主路由链接后,根据链接数,或链接数和服务质量,依次为所述当前参考层中的各个路由节点建立次路由链接。
[0093]其中,次路由链接通常记为P1,其信号强度或其他服务质量指标稍逊于所述主路由链接PO,是该路由节点与其同层或上一层邻居节点的链接。
[0094]当所述服务质量包括链路信号强度和累计信号强度时,在每层中的各个路由节点均建立次路由链接后,需要重新更新存储在链路信号强度矩阵中的该层中各个路由节点的累计信号强度。[0095]步骤S14、判断所述当前参考层是否为网络内的最低层,若否,则执行步骤S15的操作,若是,则执行步骤S16的操作;
[0096]步骤S15、当所述当前参考层不是网络内的最低层时,选取下一层作为当前参考层,并返回执行步骤S12的操作,以便为新确定的所述当前参考层中的各个路由节点建立主路由链接,直到为网络中的各层路由节点均建立了主路由链接和次路由链接;
[0097]步骤S16、根据考察节点的主路由链接,构建所述考察节点的主路由路径;
[0098]其中,所述考察节点为网络中需要与源节点建立路径的路由节点,所述主路由路径为该路由节点到所述源节点的上行路径。其中,主路由路径的选取方法与冗余路由路径的选取方法分两次完成,前者优先。
[0099]在构建所述考察节点的主路由路径时,从所述考察节点开始,通过所述考察节点的主路由链接PO得到下一跳路由节点,并由下一跳的路由节点在此通过其主路由链路PO得到再下一跳节点。由此迭代直到源节点,所经过的路径即为所述考察节点上行的主路由路径。而所述考察节点的下行路径,只需将上行的主路由路径反向即可。也就是说,所述考察节点的主路由路径,即为其相应的主路由链接所确定的路径。
[0100]步骤S17、沿所述考察节点的主路由链接上行,直到所述考察节点的主路由链接和次路由链接经过的路由节点不同时,确定所述次路由链接中,不同于所述主路由链接的路由节点为当前节点,并根据所述当前节点的主路由链接和次路由链接,确定所述考察节点的冗余路径。
[0101]为了保证网络中各个路由节点的连通性,在构建冗余路径时,所述冗余路径需要和主路由路径在最大程度上使路由节点不相交,从而能够应对链接失效或路由节点故障等问题,提高网络的可靠性。
[0102]因此,在构建考察节点的冗余路径时,从所述考察节点开始,沿其主路由链接PO上行,直到发现所述考察节点的主路由链接PO和次路由链接Pl不同时,则开始路径分叉,确定所述考察节点的次路由链接PI中,不同于所述主路由链接的路由节点为当前节点,并判断所述当前节点的主路由链接PO中的下一跳节点,是否在所述考察节点的主路由链接中,如果不是,则通过所述当前节点的主路由链接PO确定冗余路径的下一跳节点,将其作为当前节点;如果所述当前节点的主路由链接PO中的下一跳节点,存在所述考察节点的主路由链接中,则通过所述当前节点的次路由链接Pl确定冗余路径的下一跳节点,将器作为当前节点。根据上述方式迭代,直到获取所述考察节点的冗余路径。
[0103]本申请的步骤Sll至步骤S17,公开了一种无线mesh传感器网络路径构建方法,该方法预先为网络内的各个路由节点进行分层,之后依据路由节点的可选链接数,或可选链接数和服务质量,为网络内的各个路由节点依次建立路由链接,其中,所述路由链接包括主路由链接和次路由链接;然后,根据所述主路由链接和次路由链接,为考察节点分别建立主路由路径和冗余路径。
[0104]本申请所公开的无线mesh传感器网络路径构建方法,适用于mesh拓扑网络结构中,该方法通过路由节点的主路由链接和次路由链接,为各路由节点构建了主路由路径和冗余路径,提高了路由传输的可靠性。并且,在构建路径的过程中,充分考虑了路由节点的实际应用需求,在建立主路由链接数时,根据节点分层的结果,按照跳数优先的原则,首先为第一层中的路由节点建立主路由链接和次路由链接,并且,充分考虑到各个传感器的链接数,或链接数和服务质量,将服务质量作为第二指标,依次为其他层的路由节点建立了主路由链接和次路由链接,再根据所述主路由链接和次路由链接为构建主路由路径和冗余路径,最大程度上保证网络连通性,挖掘存在路径,避免了单点拥塞,以及因单点拥塞导致的设备故障的问题。
[0105]进一步的,在本申请公开的无线mesh传感器网络路径构建方法中,为网络中的路由节点建立主路由链接前,还需要为网络内的各个路由节点分层,所述为网络内的各个路由节点分层,包括:
[0106]首先,根据获取到的各个传感器的链路信号强度,获取链路信号强度符合标准的可靠链接;
[0107]其次,获取所述可靠链接对应的路由节点距离所述源节点的最短路径的跳数;
[0108]最后,将所述跳数相同的路由节点,确定为同一层的路由节点。
[0109]本申请中,进行节点分层,主要是为了使各个路由节点呈现层次关系,以便对路由节点进行管理和进行后续的操作。参见图2所示的现有技术中的无线mesh网络结构示意图,该图中,包括网关1,和路由节点I至11共10个路由节点,具有可靠链接的两个邻居路由节点之间,形成邻居链接,并通过虚线表示。按照上述方法对该无线mesh网络中的各个传感器进行分层后,参见图3所示的节点分层后的路由节点链接示意图,展示了分层后的路由节点的分布情况。
[0110]网络中的各个无线传感器,会定期向网关传输自身的信号强度,以及所构成的链路的链路信号强度,为保证数据传输的可靠性,因此,需要确定获取链路信号强度符合标准的可靠链接,而构成可靠链接的两个路由节点互为邻居节点。如果链路信号强度过小,则视为不可靠链接。
[0111]另外,在获取各条的所述可靠链接对应的路由节点距离所述源节点的最短路径跳数时,通常可采用Di jkstra单源最短路径算法,以距离源节点的跳数为为路径代价,对路由节点进行分层。该算法中,首先初始化集合S,使集合S中仅有源节点;然后,根据获取到的可靠链接确定的路由节点,从非S集合中取出具有最短特殊路径的路由节点U,其中,从源节点到路由节点U,之间只经过集合S中的路由节点的路径称为从源节点到路由节点U的特殊路径,为所述路由节点U的当前最短路径,通常用depth记录当前每个路由节点所对应的最短特殊路径的长度,即该路由节点距离源节点的跳数,当获取所述路由节点U的cbpth后,将所述路由节点U放置于集合S中,并记录所述路由节点U距离源节点的距离,即跳数,并用该跳数表示所述路由节点U的深度d印th,也就是说,当一个路由节点距离源节点的最短路径及其长度已知时,才能将该路由节点放置于集合S中;根据上述获取路由节点U距离源节点的跳数的方法,利用已存入到集合S中的路由节点,继续获取网络中其他路由节点距离所述源节点的跳数,即cbpth,直到集合S中包含有网络内所有具有可靠链接的路由节点时,节点分层完毕,否则继续按照上述步骤,获取各个路由节点距离源节点的跳数d印th。根据所述跳数,对路由节点进行分层,跳数相同,即深度相同的路由节点为同一层,离源节点越远的节点,深度越大。
[0112]根据上述对源节点进行分层的方法,能够使各个路由节点呈现层次关系,在后续对路由节点进行管理时,如计算获取各个路由节点的主路由链接和次路由链接时,依靠分层的结果,决定为路由节点确定主路由链接和次路由链接的顺序,从而不会产生环状路由,避免由于环状路由导致数据循环转发,产生网络振荡的问题。
[0113]另外,在步骤S12和S13中,分别公开了根据当前参考层中的各个路由节点的链接数,或链接数和服务质量,依次为所述当前参考层中的各个路由节点建立主路由链接和次路由链接的步骤。
[0114]为了给网络中的路由节点建立主路由链接和次路由链接,本申请采用了基于可选链接数的动态路由链接选取方法。其中,可选路由链接数指对于尚未建立主路由链接,或次路由链接的路由节点,其上行邻居节点中未达到路由链接限制的邻居节点数量。为了避免数据的循环转发及环状路由,每个路由节点的上行下一跳节点,必须是深度相同或比其小的节点,即深度为depth的节点的上行节点必须在其深度为depth和(depth-l)的邻居节点中选取。
[0115]由于主路由链接,必须链接至上一层的路由节点,而次路由链接则可链接至上一层的路由节点或同层路由节点,因此,在利用可选链接数的动态路由链接选取方法建立主路由链接和次路由链接时,深度为depth的路由节点的主路由链接的上行邻居节点,必须在深度为(depth-Ι)的邻居节点中选取,该路由节点的次路由链接的上行邻居节点,可在深度为depth和(depth-1)的邻居节点中选取。
[0116]基于可选链接数的动态路由链接选取方法建立主路由链接时,每建立一次上行路由链接后,需要重新计算该层中,各个路由节点可选的上行路由链接数,以及上一层中,各个路由节点的已链接数,选取可选路由链接数最小的路由节点作为下一次准备链接上行邻居的路由节点,与该路由节点的上层邻居节点中,当前已链接数最少的邻居节点建立链接。在为本层中的各个路由节点均建立主路由链接后,再为该层中的各个路由节点建立次路由链接。当该层中具有可靠链接的路由节点均建立主路由链接和次路由链接后,再按照上述方法为下一层中的路由节点建立主路由链接和次路由链接。
[0117]其中,参见图4所示的工作流程示意图,所述依次为所述当前年参考层中的各个路由节点建立主路由链接包括:
[0118]步骤S121、选取所述当前参考层中,可选链接数最小的路由节点vi,作为当前参考节点,其中,该可选路由链接数指对于尚未建立主路由链接的路由节点,其上行邻居节点中未达到路由链接限制的邻居节点数量。
[0119]步骤S122、在所述当前参考节点Vi可链接的上层路由节点中,选择路由节点Wi,路由节点Wi为与当前参考节点Vi间为可靠链接,且当前已链接数最小的路由节点。其中,当所述路由节点Wi为与当前参考节点Vi间为可靠链接时,则称所述路由节点Wi为Vi的上行邻居节点。
[0120]步骤S123、判断在步骤S122中,获取到的路由节点Wi是否为两个以上,若是,则执行步骤S124的操作,若否,则执行步骤S125的操作。
[0121]步骤S124、当根据步骤S123的判断结果,得知当前已链接数最小的路由节点Wi只存在一个时,则建立所述路由节点Wi与所述当前参考节点Vi的链接,作为主路由链接,之后执行步骤S126的操作。
[0122]步骤S125、当根据步骤S123的判断结果,得知当前已链接数最小的路由节点Wi存在两个以上时,选取其中服务质量最好的路由节点Wil,建立所述路由节点Wil与所述当前参考节点Vi的链接,作为主路由链接,之后执行步骤S126的操作。[0123]其中,所述服务质量通常由所述当前参考节点Vi与路由节点Wi构建的链路的链路信号强度(Signal Strength)和路由节点Wi的累计信号强度(cumulative Strength)之和决定。这种情况下,使链路信号强度和累计信号强度之和最大的路由节点与当前参考节点Vi构建的链路的服务质量最好,确定该节点为路由节点Wil,建立其与与所述当前参考节点Vi的链接,作为主路由链接。并且,以链路信号强度和累计信号强度之和作为衡量服务质量的指标时,在建立当前参考节点Vi的主路由链接后,还需要更新其对应的累计信号强度,当前参考节点Vi的累计信号强度,为路由节点Wil与当前参考节点Vi的构建的链路信号强度和路由节点Wil的累计信号强度之和,即cumulative Strength (Vi)=Signal Strength(wn, Vi) +cumulative Strength (wilo
[0124]当前,还可以由其他指标来衡量路由节点的服务质量,本申请对此不作限定。
[0125]步骤S126、判断所述当前参考层中是否存在未建立主路由链接的路由节点,若无,则说明当前参考层中的各个路由节点均已经建立主路由链接,若还存在未建立主路由链接的路由节点,则执行步骤S127的操作。
[0126]步骤S127、获取所述当前参考层中,未建立主路由链接的路由节点,并从中选取可选链接数最小的路由节点,作为当前参考节点,返回执行步骤S122的操作,以为其建立主路由链接。
[0127]当所述当前参考层中的各个路由节点的主路由链接建立完毕后,则开始为所述当前参考层中的路由节点建立次路由链接。
[0128]步骤S13中,当所述当前参考层中的各个路由节点都建立主路由链接后,根据链接数,或链接数和服务质量,依次为所述当前参考层中的各个路由节点建立次路由链接。参见图5所示的工作流程示意图,所述依次为所述当前参考层的各个路由节点建立次路由链接,包括:
[0129]步骤S131、选取所述当前参考层中,可选链接数最小的路由节点,作为当前参考节点。
[0130]步骤S132、在所述当前参考节点的上层或同层的路由节点中,排除已和所述当前参考节点建立主路由链接的路由节点,获取其他与所述当前参考节点间为可靠链接,且当前已链接数最小的路由节点。
[0131]为了挖掘潜在路径,增强网络的连通性,在为当前参考节点构建次路由链接时,不再考虑已经和所述当前参考节点构建了主路由链接的路由节点,因此,需要进行排除。另夕卜,所述次路由链接可以包括与所述当前参考节点为同层的路由节点,因此,在选取与当前参考节点间为可靠链接,且当前已链接数最小的路由节点时,同时考虑所述当前参考节点的上层或同层到的路由节点。
[0132]步骤S133、若当前已链接数最小的路由节点只有一个时,建立所述路由节点与所述当前参考节点的链接,作为次路由链接;若当前已链接数最小的路由节点存在两个以上时,选取服务质量最好的路由节点,建立所述路由节点与所述当前参考节点的链接,作为次路由链接;若不存在当前已链接数最小的路由节点,则选取与所述当前参考节点建立了主路由链接的路由节点,建立该路由节点与所述当前参考节点的链接,作为次路由链接。
[0133]在构建次路由链接时,采用的方法类似建立主路由链接的方法。不同的是,需要从当前参考节点Vi中可链接的上层或同层的路由节点中,选取一个不同于Wi的路由节点Wii,若不存在这样的路由节点Wii,则选取与所述当前参考节点建立了主路由链接的路由节点,与其建立次路由链接。
[0134]步骤S134、判断所述当前参考层中,是否还存在其他未建立次路由链接的路由节点,若否,则说明所述当前参考层的次路由链接建立完毕,若是,则执行步骤S135的操作;
[0135]步骤S135、获取所述当前参考层中,未建立次路由链接的路由节点,并从中选取可选链接数最小的路由节点,作为当前参考节点,返回执行步骤S132的操作,为所述当前参考节点建立次路由链接。
[0136]以10个路由节点及I个源节点总共11个节点为例,路由链接建立后的链接状态如图6所示。
[0137]当当前参考层的主路由链接及次路由链接建立完毕,考察下一个深度的各路由节点,直到所有深度的所有路由节点遍历完毕。
[0138]步骤S16中,公开了一种构建考察节点的主路由路径的方法。在构建所述考察节点的主路由路径时,主要是依据所述考察节点的主路由链接,从所述考察节点开始,通过所述考察节点的主路由链接PO得到下一跳路由节点,并由下一跳的路由节点在此通过其主路由链路PO得到再下一跳节点。由此迭代直到源节点,所经过的路径即为所述考察节点上行的主路由路径。而所述考察节点的下行路径,只需将上行的主路由路径反向即可。
[0139]在为所述考察节点建立了主路由路径后,步骤S17中,公开了建立冗余路径的步骤,参见图7所示的工作流程示意图,确定所述考察节点的冗余路径,包括:
[0140]步骤S171、沿所述考察节点的主路由链接上行,判断所述考察节点的主路由链接和次路由链接分别对应的下一跳节点是否相同,若是,则执行步骤S172的操作,若否,则执行步骤S173的操作;
[0141]步骤S172、当所述考察节点的主路由链接对应的下一跳节点,和其次路由链接对应的下一跳节点相同时,则由所述主路由链接确定所述考察节点的下一跳节点作为当前节点,然后执行步骤S174的操作;
[0142]步骤S173、当所述考察节点的主路由链接对应的下一跳节点,和其次路由链接对应的下一跳节点不同时,则根据所述次路由链接得到下一跳节点,并将所述下一跳节点作为当前节点,然后执行步骤S174的操作;
[0143]步骤S174、判断所述当前节点是否为所述源节点,若是,则冗余路径的构建结束,若否,则执行步骤S175的操作;
[0144]步骤S175、当根据判断结果,确定所述当前节点不是源节点时,判断所述当前节点的下一跳节点是否存在于所述考察节点的主路由路径中,若否,则执行步骤S176的操作,若是,则执行步骤S177的操作;
[0145]步骤S176、若所述当前节点的主路由链接的下一跳节点不存在于所述考察节点的主路由路径中,由所述当前节点的主路由链接获取下一跳节点,并确定所述下一跳节点作为当前节点,返回执行步骤S174的操作;
[0146]步骤S177、若所述当前节点的主路由链接的下一跳节点存在于所述考察节点的主路由路径中,由所述当前节点的次路由链接获取下一跳节点,并确定所述下一跳节点作为当前节点,返回执行步骤S174的操作。
[0147]在构建冗余路径时,主要采取的是最大不交叉的原则,以便挖掘潜在的路径。这种方法中,首先从考察节点开始,判断所述考察节点的主路由链路PO与次路由链路Pl对应的下一跳节点是否相同,如果相同,则由主路由链路PO得到下一跳节点作为当前节点,并从当前节点开始,继续进行该判断过程,直到主路由链接PO与次路由链接Pl对应的下一跳节点不同,则由当前节点的次路由链接Pl得到下一跳节点,并将该点作为当前节点;判断当前节点是否为源节点,如果是,则冗余路径构建完毕,如果否,则判断当前节点的主路由链接PO的下一跳节点是否已存在于考察节点的主路由路径中,如果存在,而同时当前节点的次路由链接Pl的下一跳节点不存在于考察节点的主路径中,则由当前节点的次路由链接Pl得到下一跳节点,避免节点相交;否则由当前节点的主路由链接PO得到下一跳节点,将下一跳节点作为当前节点;判断所述当前节点是否为源节点,并在不是源节点的情况下,继续按照上述方法进行迭代计算,以为所述考察节点构建冗余路径。
[0148]参见图8所示的链路结构示意图,以路由节点10为例,该路由节点的主路径为:路由节点10-路由节点6-路由节点2-路由节点I,冗余路径选取至路由节点6开始分叉,沿路由节点6的次路由链接获取下一跳的路由节点7,再由路由节点7的主路径链接上行至路由节点3,所以节点10的冗余路径为:路由节点10-路由节点6-路由节点7-路由节点
3-路由节点I。
[0149]以路由节点11为例,该路由节点的主路径为:路由节点11-路由节点9-路由节点
4-路由节点1,冗余路径选取至路由节点8,而路由节点8的主路由链接的下一跳节点4存在于路由节点11的主路由路径中,此时按照尽量不交叉的原则避让该主路径节点,即路由节点4,沿路由节点8的次路由链接的下一跳节点5上行,由此路由节点11的冗余路径为:路由节点11-路由节点8-路由节点5-路由节点I。
[0150]本申请所公开的构建冗余路径的方法,综合考虑路由节点的主路由链接和次路由链接,使考察节点的冗余路径和主路由路径尽量不交叉,最大程度上保证了网络的连通性,挖掘潜在路径。
[0151]进一步的,在构建冗余路径后,本申请公开的无线mesh传感器网络路径构建方法还包括:
[0152]对个所述各个路由节点的主路径和冗余路径,判断是否存在节点重用;
[0153]根据判断结果,确定存在节点重用时,产生警告信息。
[0154]为了避免出现节点重用的情况,本申请在构建冗余路径后,还需要考虑各个路由节点的主路由路径和冗余路径,在确定存在节点重用时,通过产生警告信息的方式,提醒工作人员及时采取措施,例如,设置中继路由设备,从而使各个路由节点负载均衡。
[0155]另外,在建立主路由路径和冗余路径后,还可以对更新路径进行封装。这种情况下,每次建立主路由路径和冗余路径后,将其与上一次建立的主路由路径和冗余路径进行对比,获取变动后的主路由路径,和/或冗余路径,将变动后主路由路径,和/或冗余路径信息,以及待回收的路径信息,进行打包封装,并将封装后的路径信息传输至网关,由网关存储,以避免局部路径变动所导致的全网链路重新调度。
[0156]本申请公开一种无线mesh传感器网络路径构建方法,该方法适用于无线mesh拓扑网络结构中,并通过路由节点的主路由链接和次路由链接,为各路由节点构建了主路由路径和冗余路径,提高了路由传输的可靠性。本方法中,在构建路径的过程中,充分考虑了路由节点的实际应用需求,在建立主路由链接数时,根据节点分层的结果,按照跳数优先的原则,将跳数最为第一指标,首先为第一层中的路由节点建立主路由链接和次路由链接,并且,充分考虑到各个传感器的链接数,或链接数和服务质量,将服务质量作为第二指标,依次为其他层的路由节点建立了主路由链接和次路由链接,再根据所述主路由链接和次路由链接为构建主路由路径和冗余路径,最大程度上保证网络连通性,挖掘存在路径,避免了单点拥塞,以及因单点拥塞导致的设备故障的问题。
[0157]而且,该方法时间复杂度及空间复杂度较低,对网络层协议及相关设备无额外需求,便于实现及在嵌入式平台长期运行。
[0158]进一步的,本申请在构建主路由链接和次路由链接前,根据各个路由节点距离源节点的最短路径对应的跳数,进行节点分层。通过节点分层,使各个传感器具有一定的层次,并且,在后续的路径构建过程中,依据节点分层的结果,决定了各个路由节点建立主路由链接和次路由链接的顺序,以及主路由路径和冗余路径构建过程中下一跳节点的选取,避免环状路由,以及环状路由导致的网络振荡的产生,降低了对网络拓扑的要求。
[0159]另外,本申请中,考虑了实际应用需求和路由节点的路由链接能力,通常对单个路由节点的路由链接数进行了限制,使其具有两条上行链路和两条下行链路,一定程度上实现负载均衡。当然,不同的应用需求下,还可以对路由节点的路由链接数进行其他数目的限制,例如,使一个路由节点具有三条上行链路和三条下行链路。
[0160]相应的,本发明还公开了一种无线mesh传感器网络路径构建装置,参见图9所示的结构示意图,所述无线mesh传感器网络路径构建装置包括节点分层模块11,所述节点分层模块用于根据距离源节点的最短路径,为网络内的各个路由节点分层,并且,所述无线mesh传感器网络路径构建装置还包括:当前参考层确定模块12、主路由链接建立模块13、次路由链接建立模块14、主路由路径建立模块15和冗余路径建立模块16,其中,
[0161]所述当前参考层确定模块12,用于将与所述源节点的最短路径为I跳的路由节点确定为第一层的路由节点,为所述第一层的各个路由节点与所述源节点建立主路由链接,并确定下一层作为当前参考层;
[0162]所述主路由链接建立模块13,用于根据所述当前参考层中的各个路由节点的链接数,或链接数和服务质量,依次为所述当前参考层中的各个路由节点建立主路由链接;
[0163]所述次路由链接建立模块14,用于当所述当前参考层中的各个路由节点都建立主路由链接后,根据链接数,或链接数和服务质量,依次为所述当前参考层中的各个路由节点建立次路由链接,并在所述当前参考层的各个路由节点均建立次路由链接后,选取下一层作为当前参考层,由所述主路由链接建立模块13执行相应的操作,为所述当前参考层中的各个路由节点建立主路由链接,直到为网络中的各层路由节点均建立了主路由链接和次路由链接;
[0164]所述主路由路径建立模块15,用于根据考察节点的主路由链接,构建所述考察节点的主路由路径;
[0165]所述冗余路径建立模块16,用于沿所述考察节点的主路由链接上行,直到所述考察节点的主路由链接和次路由链接经过的路由节点不同时,确定所述次路由链接中,不同于所述主路由链接的路由节点为当前节点,并根据所述当前节点的主路由链接和次路由链接,确定所述考察节点的冗余路径。
[0166]进一步的,本申请中的节点分层模块11包括:可靠链接获取单元、跳数获取单元和确定单元,其中,
[0167]所述可靠链接获取单元,用于根据获取到的各个传感器的链路信号强度,获取链路信号强度符合标准的可靠链接;
[0168]所述跳数获取单元,用于获取所述可靠链接对应的路由节点距离所述源节点的最短路径的跳数;
[0169]所述确定单元,用于将所述跳数相同的路由节点,确定为同一层的路由节点。
[0170]进一步的,所述主路由链接建立模块13包括:第一选取单元、第一获取单元、主路由链接建立单元和第一确定单元,其中,
[0171]所述第一选取单元,用于选取所述当前参考层中,可选链接数最小的路由节点,作为当前参考节点;
[0172]所述第一获取单元,用于在所述当前参考节点的上一层的路由节点中,获取与所述当前参考节点间为可靠链接,且当前已链接数最小的路由节点;
[0173]所述主路由链接建立单元,用于根据所述获取单元获取的结果,若当前已链接数最小的路由节点只存在一个时,则建立所述路由节点与所述当前参考节点的链接,作为主路由链接,若当前已链接数最小的路由节点存在两个以上时,选取服务质量最好的路由节点,建立所述路由节点与所述当前参考节点的链接,作为主路由链接;
[0174]所述第一确定单元,用于获取所述当前参考层中,未建立主路由链接的路由节点,并从中选取可选链接数最小的路由节点,作为当前参考节点,并由所述第一获取单元对所述当前参考节点执行相应的操作,直到所述当前参考层中不包含需要建立主路由链接的路由节点。
[0175]另外,所述次路由链接建立模块14包括:第二选取单元、第二获取单元、次路由链接建立单元和第二确定单元,其中,
[0176]所述第二选取单元,用于选取所述当前参考层中,可选链接数最小的路由节点,作为当前参考节点;
[0177]所述第二获取单元,用于在所述当前参考节点的上层或同层的路由节点中,排除已和所述当前参考节点建立主路由链接的路由节点,获取其他与所述当前参考节点间为可靠链接,且当前已链接数最小的路由节点;
[0178]所述次路由链接建立单元,用于若当前已链接数最小的路由节点只有一个时,建立所述路由节点与所述当前参考节点的链接,作为次路由链接,若当前已链接数最小的路由节点存在两个以上时,选取服务质量最好的路由节点,建立所述路由节点与所述当前参考节点的链接,作为次路由链接,若不存在当前已链接数最小的路由节点,则选取与所述当前参考节点建立了主路由链接的路由节点,建立该路由节点与所述当前参考节点的链接,作为次路由链接;
[0179]所述第二确定单元,用于获取所述当前参考层中,未建立次路由链接的路由节点,并从中选取可选链接数最小的路由节点,作为当前参考节点,并由所述第二获取单元对所述当前参考节点执行相应的操作,直到所述当前参考层中不包含需要建立次路由链接的路由节点。
[0180]另外的,所述冗余路径建立模块16包括:第一判断单元、第二判断单元、第三判断单元、第三确定单元和第四确定单元,其中,[0181]所述第一判断单元,用于沿所述考察节点的主路由链接上行,判断所述考察节点的主路由链接和次路由链接分别对应的下一跳节点是否相同,如果相同,则由所述主路由链接确定所述考察节点的下一跳节点作为当前节点,直到所述考察节点的主路由链接和次路由链接不同,根据所述次路由链接得到下一跳节点,并将所述下一跳节点作为当前节
占.[0182]所述第二判断单元,用于判断所述当前节点是否为所述源节点,如果是,则冗余路径的构建结束,如果否,继续执行后续步骤的操作;
[0183]所述第三判断单元,用于当所述当前节点不是所述源节点时,判断所述当前节点的主路由链接的下一跳节点是否存在于所述考察节点的主路由路径中;
[0184]所述第三确定单元,用于若所述当前节点的主路由链接的下一跳节点不存在于所述考察节点的主路由路径中,由所述当前节点的主路由链接获取下一跳节点,并确定所述下一跳节点作为当前节点,由所述第二判断单元对所述当前节点执行相应的操作;
[0185]所述第四确定单元,用于若所述当前节点的主路由链接的下一跳节点存在于所述考察节点的主路由路径中,由所述当前节点的次路由链接获取下一跳节点,并确定所述下一跳节点作为当前节点,由所述第二判断单元对所述当前节点执行相应的操作。
[0186]进一步的,本申请所公开的无线mesh传感器网络路径构建装置还包括:
[0187]对比单元,用于对比所述各个路由节点的主路由路径和冗余路径,判断是否存在节点重用;
[0188]警告单元,用于根据判断结果,确定存在节点重用时,产生警告信息。
[0189]本申请公开的无线mesh传感器网络路径构建方法,在构建路径的过程中,充分考虑了路由节点的实际应用需求,在建立主路由链接数时,根据节点分层的结果,按照跳数优先的原则,将跳数最为第一指标,首先为第一层中的路由节点建立主路由链接和次路由链接,并且,充分考虑到各个传感器的链接数,或链接数和服务质量,将服务质量作为第二指标,依次为其他层的路由节点建立了主路由链接和次路由链接,再根据所述主路由链接和次路由链接为构建主路由路径和冗余路径,最大程度上保证网络连通性,挖掘存在路径,避免了单点拥塞,以及因单点拥塞导致的设备故障的问题。
[0190]而且,该方法时间复杂度及空间复杂度较低,对网络层协议及相关设备无额外需求,便于实现及在嵌入式平台长期运行。
[0191]进一步的,本申请在构建主路由链接和次路由链接前,根据各个路由节点距离源节点的最短路径对应的跳数,进行节点分层。通过节点分层,使各个传感器具有一定的层次,并且,在后续的路径构建过程中,依据节点分层的结果,决定了各个路由节点建立主路由链接和次路由链接的顺序,以及主路由路径和冗余路径构建过程中下一跳节点的选取,避免环状路由,以及环状路由导致的网络振荡的产生,降低了对网络拓扑的要求。
[0192]另外,本申请中,考虑了实际应用需求和路由节点的路由链接能力,通常对单个路由节点的路由链接数进行了限制,使其具有两条上行链路和两条下行链路,一定程度上实现负载均衡。当然,不同的应用需求下,还可以对路由节点的路由链接数进行其他数目的限制,例如,使一个路由节点具有三条上行链路和三条下行链路。
[0193]相应的,本发明还公开了一种网关,所述网关中包括如上所述的无线mesh传感器网络路径构建装置。[0194]本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0195]所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0196]在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0197]所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0198]另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
[0199]所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM, Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0200]对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
【权利要求】
1.一种无线mesh传感器网络路径构建方法,其特征在于,在根据距离源节点的最短路径,为网络内的各个路由节点分层后,所述无线mesh传感器网络路径构建方法还包括: 1)将与所述源节点的最短路径为I跳的路由节点确定为第一层的路由节点,为所述第一层的各个路由节点与所述源节点建立主路由链接,并确定下一层作为当前参考层; 2)根据所述当前参考层中的各个路由节点的链接数,或链接数和服务质量,依次为所述当前参考层中的各个路由节点建立主路由链接; 3)当所述当前参考层中的各个路由节点都建立主路由链接后,根据链接数,或链接数和服务质量,依次为所述当前参考层中的各个路由节点建立次路由链接,并在所述当前参考层的各个路由节点均建立次路由链接后,选取下一层作为当前参考层,并返回步骤2),为所述当前参考层中的各个路由节点建立主路由链接,直到为网络中的各层路由节点均建立了主路由链接和次路由链接; 4)根据考察节点的主路由链接,构建所述考察节点的主路由路径; 5)沿所述考察节点的主路由链接上行,直到所述考察节点的主路由链接和次路由链接经过的路由节点不同时,确定所述次路由链接中,不同于所述主路由链接的路由节点为当前节点,并根据所述当前节点的主路由链接和次路由链接,确定所述考察节点的冗余路径。
2.根据权利要求1所述的方法,其特征在于,所述为网络内的各个路由节点分层,包括: 根据获取到的各个传感器的链路信号强度,获取链路信号强度符合标准的可靠链接; 获取所述可靠链接对应的路由节点距离所述源节点的最短路径的跳数;` 将所述跳数相同的路由节点,确定为同一层的路由节点。
3.根据权利要求1所述的方法,其特征在于,所述依次为所述当前参考层中的各个路由节点建立主路由链接,包括: 11)选取所述当前参考层中,可选链接数最小的路由节点,作为当前参考节点; 12)在所述当前参考节点的上一层的路由节点中,获取与所述当前参考节点间为可靠链接,且当前已链接数最小的路由节点; 13)若当前已链接数最小的路由节点只存在一个时,则建立所述路由节点与所述当前参考节点的链接,作为主路由链接,若当前已链接数最小的路由节点存在两个以上时,选取服务质量最好的路由节点,建立所述路由节点与所述当前参考节点的链接,作为主路由链接; 14)获取所述当前参考层中,未建立主路由链接的路由节点,并从中选取可选链接数最小的路由节点,作为当前参考节点,返回执行步骤12)的操作,直到所述当前参考层中不包含需要建立主路由链接的路由节点。
4.根据权利要求1所述的方法,其特征在于,所述依次为所述当前参考层的各个路由节点建立次路由链接,包括: 21)选取所述当前参考层中,可选链接数最小的路由节点,作为当前参考节点; 22)在所述当前参考节点的上层或同层的路由节点中,排除已和所述当前参考节点建立主路由链接的路由节点,获取其他与所述当前参考节点间为可靠链接,且当前已链接数最小的路由节点; 23)若当前已链接数最小的路由节点只有一个时,建立所述路由节点与所述当前参考节点的链接,作为次路由链接,若当前已链接数最小的路由节点存在两个以上时,选取服务质量最好的路由节点,建立所述路由节点与所述当前参考节点的链接,作为次路由链接,若不存在当前已链接数最小的路由节点,则选取与所述当前参考节点建立了主路由链接的路由节点,建立该路由节点与所述当前参考节点的链接,作为次路由链接; 24)获取所述当前参考层中,未建立次路由链接的路由节点,并从中选取可选链接数最小的路由节点,作为当前参考节点,返回执行步骤22)的操作,直到所述当前参考层中不包含需要建立次路由链接的路由节点。
5.根据权利要求1所述的方法,其特征在于,所述确定所述考察节点的冗余路径,包括: 31)沿所述考察节点的主路由链接上行,判断所述考察节点的主路由链接和次路由链接分别对应的下一跳节点是否相同,如果相同,则由所述主路由链接确定所述考察节点的下一跳节点作为当前节点,直到所述考察节点的主路由链接和次路由链接不同,根据所述次路由链接得到下一跳节点,并将所述下一跳节点作为当前节点; 32)判断所述当前节点是否为所述源节点,如果是,则冗余路径的构建结束,如果否,继续执行后续步骤的操作; 33)当所述当前节点不是所述源节点时,判断所述当前节点的主路由链接的下一跳节点是否存在于所述考察节点的主路由路径中; 34)若所述当前节点的主路由链接的下一跳节点不存在于所述考察节点的主路由路径中,由所述当前节点的主路由链接获取下一跳节点,并确定所述下一跳节点作为当前节点,返回执行步骤32)的操作; 35)若所述当前节点的主路由链接的下一跳节点存在于所述考察节点的主路由路径中,由所述当前节点的次路由链接获取下一跳节点,并确定所述下一跳节点作为当前节点,返回执行步骤32)的操作。
6.根据权利要求1所述的方法,其特征在于,所述无线mesh传感器网络路径构建方法还包括: 对比所述各个路由节点的主路由路径和冗余路径,判断是否存在节点重用; 根据判断结果,确定存在节点重用时,产生警告信息。
7.一种无线mesh传感器网络路径构建装置,其特征在于,包括节点分层模块,所述节点分层模块用于根据距离源节点的最短路径,为网络内的各个路由节点分层,并且所述无线mesh传感器网络路径构建装置还包括: 当前参考层确定模块,用于将与所述源节点的最短路径为I跳的路由节点确定为第一层的路由节点,为所述第一层的各个路由节点与所述源节点建立主路由链接,并确定下一层作为当前参考层; 主路由链接建立模块,用于根据所述当前参考层中的各个路由节点的链接数,或链接数和服务质量,依次为所述当前参考层中的各个路由节点建立主路由链接; 次路由链接建立模块,用于当所述当前参考层中的各个路由节点都建立主路由链接后,根据链接数,或链接数和服务质量,依次为所述当前参考层中的各个路由节点建立次路由链接,并在所述当前参考层的各个路由节点均建立次路由链接后,选取下一层作为当前参考层,由所述主路由链接建立模块执行相应的操作,为所述当前参考层中的各个路由节点建立主路由链接,直到为网络中的各层路由节点均建立了主路由链接和次路由链接;主路由路径建立模块,用于根据考察节点的主路由链接,构建所述考察节点的主路由路径; 冗余路径建立模块,用于沿所述考察节点的主路由链接上行,直到所述考察节点的主路由链接和次路由链接经过的路由节点不同时,确定所述次路由链接中,不同于所述主路由链接的路由节点为当前节点,并根据所述当前节点的主路由链接和次路由链接,确定所述考察节点的冗余路径。
8.根据权利要求7所述的装置,其特征在于,所述节点分层模块包括: 可靠链接获取单元,用于根据获取到的各个传感器的链路信号强度,获取链路信号强度符合标准的可靠链接; 跳数获取单元,用于获取所述可靠链接对应的路由节点距离所述源节点的最短路径的跳数; 确定单元,用于将所述跳数相同的路由节点,确定为同一层的路由节点。
9.根据权利要求7所述的装置,其特征在于,所述主路由链接建立模块包括: 第一选取单元,用于选取所述当前参考层中,可选链接数最小的路由节点,作为当前参考节点; 第一获取单元,用于在所述当前参考节点的上一层的路由节点中,获取与所述当前参考节点间为可靠链接,且当前已链接数最小的路由节点; 主路由链接建立单元,用于根据所述获取单元获取的结果,若当前已链接数最小的路由节点只存在一个时,则建立所述路由节点与所述当前参考节点的链接,作为主路由链接,若当前已链接数最小的路由节点存在两个以上时,选取服务质量最好的路由节点,建立所述路由节点与所述当前参考节点的链接,作为主路由链接; 第一确定单元,用于获取所述当前参考层中,未建立主路由链接的路由节点,并从中选取可选链接数最小的路由节点,作为当前参考节点,并由所述第一获取单元对所述当前参考节点执行相应的操作,直到所述当前参考层中不包含需要建立主路由链接的路由节点。
10.根据权利要求7所述的装置,其特征在于,所述次路由链接建立模块包括: 第二选取单元,用于选取所述当前参考层中,可选链接数最小的路由节点,作为当前参考节点; 第二获取单元,用于在所述当前参考节点的上层或同层的路由节点中,排除已和所述当前参考节点建立主路由链接的路由节点,获取其他与所述当前参考节点间为可靠链接,且当前已链接数最小的路由节点; 次路由链接建立单元,用于若当前已链接数最小的路由节点只有一个时,建立所述路由节点与所述当前参考节点的链接,作为次路由链接,若当前已链接数最小的路由节点存在两个以上时,选取服务质量最好的路由节点,建立所述路由节点与所述当前参考节点的链接,作为次路由链接,若不存在当前已链接数最小的路由节点,则选取与所述当前参考节点建立了主路由链接的路由节点,建立该路由节点与所述当前参考节点的链接,作为次路由链接; 第二确定单元,用于获取所述当前参考层中,未建立次路由链接的路由节点,并从中选取可选链接数最小的路由节点,作为当前参考节点,并由所述第二获取单元对所述当前参考节点执行相应的操作,直到所述当前参考层中不包含需要建立次路由链接的路由节点。
11.根据权利要求7所述的装置,其特征在于,所述冗余路径建立模块包括:第一判断单元,用于沿所述考察节点的主路由链接上行,判断所述考察节点的主路由链接和次路由链接分别对应的下一跳节点是否相同,如果相同,则由所述主路由链接确定所述考察节点的下一跳节点作为当前节点,直到所述考察节点的主路由链接和次路由链接不同,根据所述次路由链接得到下一跳节点,并将所述下一跳节点作为当前节点; 第二判断单元,用于判断所述当前节点是否为所述源节点,如果是,则冗余路径的构建结束,如果否,继续执行后续步骤的操作; 第三判断单元,用于当所述当前节点不是所述源节点时,判断所述当前节点的主路由链接的下一跳节点是否存在于所述考察节点的主路由路径中; 第三确定单元,用于若所述当前节点的主路由链接的下一跳节点不存在于所述考察节点的主路由路径中,由所述当前节点的主路由链接获取下一跳节点,并确定所述下一跳节点作为当前节点,由所述第二判断单元对所述当前节点执行相应的操作; 第四确定单元,用于若所述当前节点的主路由链接的下一跳节点存在于所述考察节点的主路由路径中,由所述当前节点的次路由链接获取下一跳节点,并确定所述下一跳节点作为当前节点,由所述第二判断单元对所述当前节点执行相应的操作。
12.根据权利要求7所述的装置,其特征在于,所述无线mesh传感器网络路径构建装置还包括: 对比单元,用于对比所述各个路由节点的主路由路径和冗余路径,判断是否存在节点重用; 警告单元,用于根据判断结果,确定存在节点重用时,产生警告信息。
13.一种网关,其特征在于,所述网关中包括: 如权利要求7至权利要求12任一项所述的无线mesh传感器网络路径构建装置。
【文档编号】H04W84/18GK103491592SQ201310485879
【公开日】2014年1月1日 申请日期:2013年10月16日 优先权日:2013年10月16日
【发明者】钟晨, 章维, 陆卫军, 张健 申请人:浙江中控技术股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1