CN102970702B - 一种基于Zigbee协议的无线传感器网络结构维护方法及系统 - Google Patents
一种基于Zigbee协议的无线传感器网络结构维护方法及系统 Download PDFInfo
- Publication number
- CN102970702B CN102970702B CN201210510343.3A CN201210510343A CN102970702B CN 102970702 B CN102970702 B CN 102970702B CN 201210510343 A CN201210510343 A CN 201210510343A CN 102970702 B CN102970702 B CN 102970702B
- Authority
- CN
- China
- Prior art keywords
- node
- gateway
- information
- child node
- route
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 64
- 238000012423 maintenance Methods 0.000 title claims description 9
- 230000005540 biological transmission Effects 0.000 claims description 7
- 238000012217 deletion Methods 0.000 claims description 3
- 230000037430 deletion Effects 0.000 claims description 3
- 238000004891 communication Methods 0.000 description 5
- 238000001514 detection method Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种基于Zigbee协议的无线传感器网络结构的维护方法及系统,其中,所述方法包括:网关节点预先建立网络拓扑结构信息表的步骤;所述网关节点检测到网关子节点的变化并生成网关子节点变化信息的步骤;网络中路由节点检测到路由子节点的变化并生成路由子节点变化信息并上报至网关节点的步骤;所述网关节点根据网关子节点和路由子节点的变化信息更新所述网络拓扑结构信息表,以供用户查询的步骤。通过本发明的方法,实现了在网关节点处存储并维护有网络中的所有节点的信息,解决了现有技术中不能在网关节点获知网络中的网络结构信息的问题。
Description
技术领域
本发明涉及无线传感器网络领域,尤其涉及一种基于Zigbee协议的无线传感器网络结构维护方法及系统。
背景技术
Zigbee是一种开放性的低成本、低功耗、低数据速率、低复杂度、双向传输、高可靠性的新型短距离无线通信技术,该技术应用简单,电池寿命长,成本低,可靠性高,具有自组网和自恢复能力。
Zigbee可以在数千个节点之间相互协调实现通信。这些节点只需要很少的能量,以接力的方式通过无线电波将数据从一个节点传到另一个节点,所以它们的通信效率非常高。因此Zigbee在传感器网络、智能家居、工业自动化等领域有着广泛的应用。
为了方便的获知网络的信息,需要对网络的结构进行监控和维护。以基于Zigbee协议的无线传感器网络为例,目前,主要通过在网络的全功能节点处即网关节点和路由节点处维护一张只与全功能节点直接关联的节点信息的关联表对网络进行管理。当上述关联表中的节点发生变化时,进行更新。但因为只保存直接关联的节点信息,因此,上述方式无法使用户从网关处获知整个网络的主要结构信息。
发明内容
本发明旨在提供一种基于Zigbee协议的无线传感器网络结构维护方法及系统,以实现在网关节点处对网络中所有节点信息的维护。
基于此,本发明提供了一种基于Zigbee协议的无线传感器网络结构的维护方法,所述方法包括:
网关节点预先建立网络拓扑结构信息表的步骤;
所述网关节点检测到网关子节点的变化,所述网关节点生成网关子节点变化信息的步骤,所述网关子节点包括网络中与网关节点存在父子关系的路由节点和/或终端节点;
网络中路由节点检测到路由子节点的变化,所述路由节点生成路由子节点变化信息并上报至所述网关节点的步骤;
所述网关节点根据网络中节点的变化信息更新所述网络拓扑结构信息表,以供用户查询的步骤,所述网络中节点包括所述网关子节点和所述路由子节点;
其中,所述网关节点预先建立网络拓扑结构信息表的步骤包括;
所述网关节点在所述网络中广播节点信息收集命令;
网络中的节点根据收到的所述广播节点信息收集命令返回自身的节点信息至所述网关节点;
所述网关节点将所述网络中的节点返回的所述节点信息进行组合生成网络拓扑结构信息表并存储。
优选的,所述网关节点检测到网关子节点的变化,生成网关子节点变化信息,其中,所述网关子节点变化信息包括网关子节点加入信息和网关子节点丢失信息;
所述网关节点检测到网关子节点的变化,生成网关子节点加入信息,包括:
当一节点以所述网关节点为父节点加入所述网络时,所述网关节点生成网关子节点加入信息;
所述网关节点检测到网关子节点的变化,生成网关子节点丢失信息,包括:
所述网关节点根据待发送数据的目的节点确定下一跳网关子节点;
所述网关节点将所述待发送数据发送至所述下一跳网关子节点;
所述网关节点根据所述待发送数据的接收状态判断所述下一跳网关子节点是否丢失;
当所述网关子节点丢失时,则所述网关节点生成网关子节点丢失信息。
优选的,所述网关节点根据网络中节点的变化信息更新所述网络拓扑结构信息表,包括:
当所述节点的变化信息为节点的加入信息时,所述网关节点根据网络拓扑结构信息表的内容判断所述节点是否存在于所述网络中;
若所述节点存在于所述网络中,则所述网关节点更新所述网络拓扑结构信息表中存储的所述节点的相应信息;
若所述节点未存在于所述网络中,则所述网关节点在所述网络拓扑结构信息表中为所述节点分配存储空间,并增加对应的父子信息;
当所述节点的变化信息为节点的丢失信息时,所述网关节点根据网络拓扑结构信息表的内容判断所述节点是否已经存在于所述网络中;
若所述节点存在于所述网络中,则所述网关节点在所述网络拓扑结构信息表中删除所述节点的信息;
若所述节点未存在于所述网络中,则所述网关节点提示出错。
优选的,所述网络中路由节点检测到路由子节点的变化,生成路由子节点变化信息并上报至所述网关节点;其中,所述路由子节点变化信息包括路由子节点加入信息和路由子节点丢失信息;
所述路由节点检测到路由子节点的变化,生成路由子节点加入信息,包括:
当一节点以所述路由节点为父节点加入所述网络时,所述路由节点生成路由子节点加入信息;
所述路由节点上报所述路由子节点加入信息至所述网关节点;
所述路由节点检测到路由子节点的变化,生成路由子节点丢失信息,包括:
所述路由节点根据待发送数据的目的节点确定下一跳节点;
所述路由节点将所述待发送数据发送至所述下一跳节点;
所述路由节点根据所述待发送数据的接收状态确定所述下一跳节点是否丢失;
若所述下一跳节点丢失,且所述下一跳节点为所述路由节点的子节点,则在所述路由节点的协议层生成路由子节点丢失信息并上报至所述路由节点的应用层;
当所述路由节点的应用层接收到所述路由子节点丢失信息时,所述路由节点将所述路由子节点丢失信息上报至所述网关节点;
若所述下一跳节点丢失,且所述下一跳节点为路由节点的父节点,则在所述路由节点的协议层生成路由父节点丢失信息并上报至所述路由节点的应用层;
当所述路由节点的应用层接收到所述路由父节点丢失信息时,所述路由节点开启节点加入流程,选择合适的节点为父节点重新加入所述网络。
优选的,所述方法还包括:
所述路由节点根据所述路由子节点的变化信息更新存储于所述路由节点的路由节点拓扑结构信息表,以供用户查询所述路由节点处的拓扑结构信息。
优选的,所述路由节点根据所述路由子节点的变化信息更新存储于所述路由节点的路由节点拓扑结构信息表包括:
当所述路由子节点的变化信息为加入信息时,所述路由节点根据路由节点拓扑结构信息表的内容判断所述路由子节点是否已经存在于所述网络中;
若是,则更新在所述路由节点拓扑结构信息表中所存储的所述路由子节点的信息;
若否,则在所述路由节点拓扑结构信息表中为所述路由子节点分配存储空间,并增加对应的父子信息;
当所述路由子节点的变化信息为丢失信息时,所述路由节点根据路由节点拓扑结构信息表的内容判断所述路由子节点是否已经存在于所述网络中;
若是,则所述路由节点在所述路由节点拓扑结构信息表中删除所述路由子节点的信息;
若否,则所述路由节点提示出错。
优选的,所述方法还包括:
终端节点根据待发送数据目的节点确定下一跳终端父节点;
所述终端节点发送所述待发送数据至所述下一跳终端父节点;
所述终端节点根据所述待发送数据的接收状态判断所述终端父节点是否丢失;
若所述终端父节点丢失,则生成终端父节点丢失信息;
所述终端节点根据所述终端父节点丢失信息开启孤点加入流程,选择所述终端节点的父节点为父节点加入所述网络;
若无法加入,则所述终端节点开启节点加入流程,选择其他合适的节点为父节点加入所述网络。
优选的,所述网络拓扑结构信息表采用分级动态链表形式,在每一级中存储上一级节点对应的子节点信息。
对应上述方法,本发明还提供了一种基于Zigbee协议的无线传感器网络结构的维护系统,所述系统包括网关节点、路由节点和终端节点;
所述网关节点包括:
网络拓扑结构信息表建立单元,用于预先建立网络拓扑结构信息表;
网关子节点变化信息生成单元,用于在检测到网关子节点的变化时生成网关子节点变化信息;所述网关子节点包括网络中与网关节点存在父子关系的路由节点和/或终端节点;
网关更新单元,用于根据网络中节点的变信息更新所述网络拓扑结构信息表,以供用户查询;所述网络中节点包括所述网关子节点和所述路由子节点;
所述路由节点包括:
路由子节点变化信息生成单元,用于在检测到路由子节点的变化时生成路由子节点变化信息并上报至所述网关节点;
路由节点信息返回单元,用于根据接收到的广播节点信息收集命令返回自身的节点信息至所述网关节点;
所述终端节点包括:
终端节点信息返回单元,用于根据接收到的广播节点信息收集命令返回自身的节点信息至所述网关节点;
所述网络拓扑结构信息表建立单元包括:
广播单元,用于在所述网络中广播节点信息收集命令;
网络拓扑结构信息表建立子单元,用于根据路由节点信息返回单元和终端节点信息返回单元返回的节点信息进行组合生成网络拓扑结构信息表并存储。
优选的,所述网关子节点变化信息生成单元,包括:网关子节点加入信息生成单元和网关子节点丢失信息生成单元;
所述网关子节点加入信息生成单元,用于在检测到网关子节点的变化时,生成网关子节点加入信息;
所述网关子节点加入信息生成单元,具体用于当一节点以所述网关节点为父节点加入所述网络时,生成网关子节点加入信息;
所述网关子节点丢失信息生成单元,用于在检测到网关子节点的变化,生成网关子节点丢失信息,包括:
第一下一跳节点确定单元,用于根据待发送数据的目的节点确定下一跳网关子节点;
第一数据发送单元,用于将所述待发送数据发送至所述下一跳网关子节点;
网关子节点丢失判断单元,用于根据所述待发送数据的接收状态判断所述下一跳网关子节点是否丢失;
网关子节点丢失信息生成子单元,用于当所述网关子节点丢失时,生成网关子节点丢失信息。
优选的,所述网关更新单元包括:
网关加入信息判断单元,用于当所述节点的变化信息为节点的加入信息时,根据网络拓扑结构信息表的内容判断所述节点是否存在于所述网络中;
网关加入信息更新子单元,用于在所述节点存在于所述网络中时,更新所述网络拓扑结构信息表中存储的所述节点的相应信息;
网关分配单元,用于在所述节点未存在于所述网络中时,在所述网络拓扑结构信息表中为所述节点分配存储空间,并增加对应的父子信息;
网关丢失信息判断单元,用于当所述节点的变化信息为节点的丢失信息时,根据网络拓扑结构信息表的内容判断所述节点是否已经存在于所述网络中;
网关丢失信息删除单元,用于在若所述节点存在于所述网络中时,在所述网络拓扑结构信息表中删除所述节点的信息;
网关提示单元,用于在所述节点未存在于所述网络中时,提示出错。
优选的,所述路由子节点变化信息生成单元包括路由子节点加入信息生成单元和路由子节点丢失信息生成单元;
所述路由子节点加入信息生成单元,用于在检测到路由子节点的变化时,生成路由子节点加入信息;
所述路由子节点加入信息生成单元,包括:
路由子节点加入信息生成子单元,用于当一节点以所述路由节点为父节点加入所述网络时,生成路由子节点加入信息;
所述路由子节点丢失信息生成单元,具体用于在检测到路由子节点的变化时,生成路由子节点丢失信息;包括:
第二下一跳节点确定单元,用于根据待发送数据的目的节点确定下一跳节点;
第二数据发送单元,用于将所述待发送数据发送至所述下一跳节点;
路由子节点丢失判断单元,用于根据所述待发送数据的接收状态确定所述路由节点的下一跳节点是否丢失;
协议层上报单元,用于在所述下一跳路由子节点丢失,且所述下一跳路由节点为所述路由节点的子节点时,在所述路由节点的协议层生成路由子节点丢失信息并上报至所述路由节点的应用层;
应用层上报单元,用于在所述路由节点的应用层接收到所述路由子节点丢失信息时,将所述路由子节点丢失信息上报至所述网关节点;
所述协议层上报单元,还用于在所述下一跳节点丢失,且所述下一跳节点为路由节点的父节点时,在所述路由节点的协议层生成路由父节点丢失信息并上报至所述路由节点的应用层;
应用层上报单元,还用于当所述路由节点的应用层接收到所述路由父节点丢失信息时,开启节点加入流程,选择合适的节点为父节点重新加入所述网络。
优选的,所述路由节点还包括:
路由更新单元,用于根据所述路由子节点的变化信息更新存储于所述路由节点的路由节点拓扑结构信息表,以供用户查询所述路由节点处的拓扑结构信息。
优选的,所述路由更新单元包括:
路由加入信息判断单元,用于当所述路由子节点的变化信息为加入信息时,根据路由节点拓扑结构信息表的内容判断所述路由子节点是否已经存在于所述网络中;
路由加入信息更新子单元,用于在所述路由子节点已经存在于所述网络中时,更新在所述路由节点拓扑结构信息表中所存储的所述路由子节点的信息;
路由分配单元,用于在所述路由子节点未存在于所述网络中时,在所述路由节点拓扑结构信息表中为所述路由子节点分配存储空间,并增加对应的父子信息;
路由丢失信息判断单元,用于当所述路由子节点的变化信息为丢失信息时,根据路由节点拓扑结构信息表的内容判断所述路由子节点是否已经存在于所述网络中;
路由丢失信息删除单元,用于在所述路由子节点已经存在于所述网络中时,在所述路由节点拓扑结构信息表中删除所述路由子节点的信息;
路由提示单元,用于在所述路由子节点未存在于所述网络中时提示出错。
优选的,所述终端节点还包括:
终端父节点确定单元,用于根据待发送数据目的节点确定下一跳终端父节点;
终端数据发送单元,用于发送所述待发送数据至所述下一跳终端父节点;
终端父节点丢失判断单元,用于根据所述待发送数据的接收状态判断所述终端父节点是否丢失;
终端父节点丢失信息生成单元,用于在所述终端父节点丢失时,生成终端父节点丢失信息;
孤点加入单元,用于根据所述终端父节点丢失信息开启孤点加入流程,选择所述终端节点的父节点为父节点加入所述网络;
节点加入单元,用于在所述父节点无法通过孤点加入流程加入时,开启节点加入流程,选择其他合适的节点为父节点加入所述网络。
与现有技术相比,本发明具有如下有益效果:
本发明中网关节点预先建立网络拓扑结构信息表;网关节点检测到网关子节点即网络中与网关节点存在父子关系的路由节点和/或终端节点的变化后生成网关子节点变化信息,网络中路由节点检测到路由子节点的变化后生成路由子节点变化信息并上报至所述网关节点;网关节点根据网络中节点即所述网关子节点和所述路由子节点的变化信息更新网络拓扑结构信息表,供用户查询,通过上述过程使得在网关节点处维护了网络中所有节点的信息,在后续用户查询时可以直接从网关节点处获知所有节点的信息。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明网络中各类型节点连接示意图;
图2是本发明方法实施例流程图;
图3是本发明中网关节点生成网关子节点丢失信息流程图;
图4是本发明路由节点生成路由子节点丢失信息流程图;
图5是本发明终端节点生成终端父节点变化信息流程图;
图6是本发明网关节点更新网络拓扑结构信息表流程图;
图7是本发明网络拓扑结构信息表结构图;
图8是本发明网络中各节点信息维护示意图;
图9是本发明系统实施例结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
在本发明中,子节点和父节点是依据基于ZigBee协议的网络中的节点通信关系划分的。当网络中的某台设备通过另一台设备加入网络时,这两台设备就构成了父子关系,新接入的设备成为子节点,而另一台设备称为该子节点的父节点。例如,设备A通过设备B加入到该ZigBee网络中,则设备A称为子节点,设备B称为设备A这个子节点的父节点。
在网络中,节点包括网关节点、路由节点和终端节点三种类型。如图1所示,网关节点为a1,终端节点为a3,路由节点为a2。其中,路由节点a2和终端节点a3经常会发生掉电、错误、离开或信号变弱等情况,导致不能被检测,我们称之为节点丢失。当有路由节点a2和终端节点a3加入网络时,为节点加入。
节点的丢失和加入都是节点的一种变化,在网络中是经常发生的情况。为保证网络的稳定,用户需要掌握网络的现状以便及时作出调整。
为此,本发明实施例1提供了一种基于Zigbee协议的无线传感器网络结构的维护方法,参见图2,所述方法包括:
S11、网关节点预先建立网络拓扑结构信息表的步骤。
网关节点预先建立网络拓扑结构信息表的方法有多种,本发明实施例2提供了一种具体方式,包括如下步骤:
所述网关节点在所述网络中广播节点信息收集命令。
网络中的节点根据收到的所述广播节点信息收集命令返回自身的节点信息至所述网关节点。
所述网关节点将所述网络中的节点返回的所述节点信息进行组合生成网络拓扑结构信息表并存储。
需要说明的是,本发明用以在网关节点处查询网络中所有节点的状态,因此本发明中的拓扑结构信息表应当包含建立该信息表时网络中所有节点的信息。
S12、所述网关节点检测到网关子节点的变化,所述网关节点生成网关子节点变化信息的步骤,所述网关子节点包括网络中与网关节点存在父子关系的路由节点和/或终端节点。
S13、网络中路由节点检测到路由子节点的变化,所述路由节点生成路由子节点变化信息并上报至所述网关节点的步骤。
S14、所述网关节点根据网络中节点的变化信息更新所述网络拓扑结构信息表,以供用户查询的步骤,所述网络中节点包括所述网关子节点和所述路由子节点。
为使本发明更加清楚,以下分几部分对上述实施例进行介绍。
首先对网关节点生成网络中网关子节点的变化信息进行介绍。
在本发明中,网关节点生成网关子节点变化信息可以通过多种方法实现。
比如,可以通过网关节点周期性查询的方式。即网关节点每隔一定的时间向网关子节点发送查询信息,若网关子节点正常回复,则认为该网关子节点正常,否则认为该网关子节点离开网络。但这种方式中网络结构信息的反映实时性与查询周期的长短直接相关,查询周期设置较长,系统网络结构信息的变化反映时间就增长,实时性变差。若查询周期设置较短,就增大了传输的数据量,占用了网络有限的资源。
另一种方式是通过变化节点主动上报的方式对网络进行监控。即当网关子节点发生变化时,主动上报变化信息至网关节点。但这种方式不具备对突发情况(如节点忽然丢失、损坏等)的反映能力。
针对此,本发明实施例3提供了一种优选的方式,能够解决上述两种方式存在的问题。
如前所述,节点的变化包括节点加入和节点丢失两种情况,对应的该优选的方式具体包括网关节点检测网关子节点的变化生成网关子节点加入信息和网关节点检测网关子节点的变化,生成网关子节点丢失信息。
其中,网关节点检测网关子节点的变化生成网关子节点加入信息包括:
当一节点以网关节点为父节点加入网络时,网关节点生成网关子节点加入信息。
参见图3,网关节点检测网关子节点的变化生成网关子节点丢失信息包括如下步骤:
S21、网关节点根据待发送数据的目的节点确定下一跳网关子节点。
对于网络中的节点来说,其待发送数据可以是本节点自己构造的数据,也可以是接收的其它节点发送来并由本节点转发的数据。对于网关节点来说,不可能接收其它节点发送的数据,因此,此处的待发送数据实际是指网关节点自身构造的数据。
网关节点在网络层获取到该待发送数据的目的节点,进而查询本节点所保存的路由表,确定出下一跳节点。
S22、网关节点将上述待发送数据发送至确定出的下一跳网关子节点。
S23、网关节点根据待发送数据的接收状态判断下一跳网关子节点是否丢失。
S24、当判断出该下一跳网关子节点丢失时,网关节点生成网关子节点丢失信息。
如果确定出的下一跳网关子节点仍处于网络中,即下一跳网关子节点未丢失,则该下一跳网关子节点会接收到该待发送数据。如果该下一跳网关子节点丢失,则网关节点的ZigBee协议栈底层(即应用层以下的协议层)可以获知该下一跳网关子节点并未接收到该待发送数据,同时在该协议栈底层生成指示该下一跳网关子节点丢失的丢失指示消息。本发明中当在协议栈底层生成该丢失指示消息后,会将该丢失指示消息逐层上报,最终由网络层将该丢失指示消息上报给应用层的ZigBee设备对象(ZDO,ZigbeeDeviceObiect),以便ZigBee协议栈中应用层的ZigBee设备对象获取到该下一跳网关子节点丢失的信息。
本发明中为了能够让Zigbee协议栈中应用层的应用对象获取到节点丢失,当从ZigBee设备对象中获取到丢失指示消息时,提取出该消息中包含的节点的网络信息,并进一步将该节点的网络信息作为节点丢失信息上报给应用对象,进而使得应用对象可以实时获取到节点丢失信息。
需要说明的是,该丢失指示消息中包含的节点的网络信息可以包括:丢失节点的网络地址,以及丢失节点与本节点的通信关系,如,丢失节点为本节点的子节点或者丢失节点为本节点的父节点。此处的通信关系为网关节点的子节点。其中,丢失指示消息中所包含节点的网络信息被认为是丢失节点的网络信息。
其次,对路由节点检测到路由子节点的变化,生成路由子节点变化信息进行介绍。
同网关节点相同,根据路由子节点的不同变化,路由节点在检测到路由子节点时可能会生成路由子节点加入信息,也有可能生成路由子节点丢失信息。
其中,当一节点以路由节点为父节点加入网络时,该路由节点生成路由子节点加入信息。之后路由节点会将该信息上报至网关节点,以便网关节点据此更新网络拓扑结构信息表。
同网关节点生成网关子节点的丢失信息类似,参见图4,路由节点生成路由子节点的丢失信息包括如下步骤:
S31、路由节点根据待发送数据的目的节点确定下一跳节点。
S32、路由节点将待发送数据发送至所述确定出的下一跳节点。
S33、路由节点根据待发送数据的接收状态确定该下一跳节点是否丢失。
S34、若该下一跳节点丢失,且该下一跳节点为路由节点的子节点,则在路由节点的协议层生成路由子节点丢失信息并上报至路由节点的应用层。
S35、当路由节点的应用层接收到路由子节点丢失信息时,路由节点将路由子节点丢失信息上报至网关节点。
S36、若下一跳节点丢失,且下一跳节点为路由节点的父节点,则在路由节点的协议层生成路由父节点丢失信息并上报至路由节点的应用层。
S37、当路由节点的应用层接收到路由父节点丢失信息时,路由节点开启节点加入流程,选择合适的节点为父节点重新加入网络。
在网络中,网关节点只有子节点,其发送的待发送数据也只能是自己构造的。与之不同的是,路由节点既有子节点也有父节点,其发送的待发送数据既可以是自己构造的,也可以是从上一跳节点接收的。根据目的节点的不同,路由节点有可能将数据发送至父节点,也有可能发送至子节点,即路由节点的下一跳节点有可能是路由子节点,也有可能是路由父节点。由于后续的处理方式不同,因此,要对其进行判断。
具体的,如果该路由节点的下一跳节点丢失,则路由节点的ZigBee协议栈底层(即应用层以下的协议层)可以获知该下一跳节点并未接收到该待发送数据,同时在该协议栈底层生成指示该下一跳节点丢失的丢失指示消息。本发明中当在协议栈底层生成该丢失指示消息后,会将该丢失指示消息逐层上报,最终由网络层将该丢失指示消息上报给应用层的ZigBee设备对象(ZDO,ZigbeeDeviceObiect),以便ZigBee协议栈中应用层的ZigBee设备对象获取到该下一跳节点丢失的信息。
本发明中为了能够让Zigbee协议栈中应用层的应用对象获取到节点丢失信息,当从ZigBee设备对象中获取到丢失指示消息时,提取出该消息中包含的节点的网络信息,并进一步将该节点的网络信息作为节点丢失信息上报给应用对象,进而使得应用对象可以实时获取到节点丢失信息。
需要说明的是,该丢失指示消息中包含的节点的网络信息可以包括:丢失节点的网络地址,以及丢失节点与路由节点的通信关系,如,丢失节点为路由节点的子节点或者丢失节点为路由节点的父节点。
当应用对象根据节点丢失信息发现丢失节点为路由子节点时,会将该节点丢失信息上报至网关节点。
当应用对象根据节点丢失信息发现丢失节点为路由节点的父节点时,该应用对象开启节点加入流程,选择合适的节点为父节点重新加入网络。
在本发明中,除网关节点和路由节点检测节点变化生成节点变化信息外,还包括终端节点检测节点变化生成节点变化信息的步骤。
终端节点只有父节点,因此,终端节点根据对节点的检测只会生成终端父节点变化信息。具体过程如图5所示,包括:
S41、终端节点发送待发送数据至下一跳终端父节点。
终端节点的待发送数据是自己构造的。
S42、终端节点根据待发送数据的接收状态判断终端父节点是否丢失。
S43、若终端父节点丢失,则生成终端父节点丢失信息。
同上述方式类似,如果该终端节点的父节点丢失,则终端节点的ZigBee协议栈底层(即应用层以下的协议层)可以获知该终端父节点并未接收到该待发送数据,同时在该协议栈底层生成指示该终端父节点丢失的丢失指示消息。本发明中当在协议栈底层生成该丢失指示消息后,会将该丢失指示消息逐层上报,最终由网络层将该丢失指示消息上报给应用层的ZigBee设备对象(ZDO,ZigbeeDeviceObiect),以便ZigBee协议栈中应用层的ZigBee设备对象获取到该终端父节点丢失的信息。
当从ZigBee设备对象中获取到丢失指示消息时,提取出该消息中包含的节点的网络信息,并进一步将该节点的网络信息作为节点丢失信息上报给应用对象,进而使得应用对象可以实时获取到节点丢失信息。
需要说明的是,该丢失指示消息中包含的节点的网络信息可以包括:丢失节点的网络地址,以及丢失节点与终端节点的通信关系,此处为终端节点的父节点。
S44、终端节点根据终端父节点丢失信息开启孤点加入流程,选择终端节点的父节点为父节点加入网络。
孤点加入流程即以该丢失的父节点为父节点,将其重新加入网络。
S45、若无法加入,则终端节点开启节点加入流程,选择其他合适的节点为父节点加入网络。
在原父节点无法加入时,选择其他合适的节点为终端节点的父节点加入网络。
本发明中,待发送数据可以为任意数据,如可以为与协议栈相关的数据,也可以是普通通信数据。
上述过程中涉及发送待发送数据的节点判断下一跳节点是否接收到待发送数据。其具体判断方式有多中,其中一种方式为:判断ZigBee协议栈底层在指定时间内是否接收到该下一跳节点返回的确认接收到待发送数据的消息,如果是,则该下一跳节点处于网络中;如果否,则下一跳节点丢失。也就是说,如果该下一跳节点接收到待发送数据后,会向其上一跳节点回复一个确认消息,以表示自己接收到待发送数据。当发送待发送数据的节点的协议层在指定时间内没有检测或接收到该下一跳节点返回的确认消息,则在协议层中生成指示下一跳节点丢失的丢失指示消息。
需要明确的是,有时候下一跳节点只是暂时的失去联系,而非真正的丢失,尤其是下一跳子节点,可以通过孤立加入申请,很快的加入网络,恢复正常的运行状态。因此,在发现下一跳子节点失去联系时,可定时一段时间,再作判断。比如定时一段时间比如三秒后,下一跳子节点仍旧失去联系,则确定下一跳子节点丢失,生成下一跳子节点丢失信息。
关于上述网关节点、路由节点以及终端节点检测节点的变化生成相关节点丢失信息的具体过程可参见申请号为201110391507.0,发明名称为“基于ZigBee协议获取节点丢失信息的方法和系统”以及申请号为201110391517.0,发明名称为“基于ZigBee协议获取节点丢失信息的方法和系统”的专利申请。此处不再详述。
接下来对网关节点更新网络拓扑结构信息表的过程进行描述。通过上述过程可知,路由节点会将自身生成的路由子节点丢失信息以及路由子节点加入信息上报至网关节点,因此,在网关节点处就汇集了路由子节点的变化信息和网关子节点的变化信息。网关节点根据这些变化信息更新网络拓扑结构信息表。其具体过程参见图6:
S51、判断节点的变化信息为节点的加入信息还是节点的丢失信息。若为节点的加入信息,转入步骤S52;若为节点的丢失信息,转入步骤S55。
S52、网关节点根据网络拓扑结构信息表的内容判断节点是否存在于网络中。若存在于所述网络中,转入步骤S53。若没有存在于所述网络中,则转入步骤S54。
S53、网关节点更新网络拓扑结构信息表中存储的该节点的相应信息。
S54、网关节点在所述网络拓扑结构信息表中为该节点分配存储空间,并增加对应的父子信息。
S55、网关节点根据网络拓扑结构信息表的内容判断该节点是否已经存在于所述网络中。若存在于所述网络中,转入步骤S56,若否,转入步骤S57。
S56、网关节点在网络拓扑结构信息表中删除该节点的信息。
S57、网关节点提示出错。
考虑到网关资源有限,为节省存储空间,网络拓扑结构信息表可以选用分级动态链表的形式,具体如图7所示。
本发明优选实施例中,可同时在路由节点处维护路由节点拓扑结构信息表,以供用户查询该路由节点处的拓扑结构信息。具体过程如下:
判断路由子节点的变化信息为节点加入信息还是节点丢失信息。
若为节点加入信息,则路由节点根据路由节点拓扑结构信息表的内容判断该路由子节点是否已经存在于所述网络中。如果存在于所述网络中,则路由节点更新所述路由节点拓扑结构信息表中存储的该路由子节点的信息;如果没有存在于所述网络中,则路由节点在路由节点拓扑结构信息表中为路由子节点分配存储空间,并增加对应的父子信息。
当路由子节点的变化信息为丢失信息时,路由节点根据路由节点拓扑结构信息表的内容判断路由子节点是否已经存在于网络中。
若存在于所述网络中,则路由节点在路由节点拓扑结构信息表中删除该路由子节点的信息;若否,则所述路由节点提示出错。
图8为本发明中网络各节点信息的维护示意图。
其中,终端节点生成其父节点丢失信息,并根据其父节点丢失信息开启孤点加入流程,将父节点重新加入所述网络。其具体加入过程参见之前实施例,此处不再详述。
路由节点生成路由子节点加入信息、路由子节点丢失信息和路由父节点丢失信息。路由节点根据路由父节点丢失信息开启节点加入流程,选择一个合适的节点作为父节点,以此重新加入所述网络;并根据路由子节点加入信息和路由子节点丢失信息更新路由节点网络结构信息表,同时将路由子节点加入信息和路由子节点丢失信息上报至网关节点。
网关节点生成网关子节点加入信息、网关子节点丢失信息,接收路由节点上报的路由子节点加入和路由子节点丢失信息,并据此更新网络拓扑结构信息表。
本发明实施例4提供了一种基于Zigbee协议的无线传感器网络结构的维护系统,参见图9,所述系统包括网关节点1,路由节点2以及终端节点3。其中,网关节点1包括:
网络拓扑结构信息表建立单元11,用于预先建立网络拓扑结构信息表。
网关子节点变化信息生成单元12,用于在检测到网关子节点的变化时生成网关子节点变化信息;所述网关子节点包括网络中与网关节点存在父子关系的路由节点和/或终端节点。
网关更新单元13,用于根据网络中节点的变信息更新所述网络拓扑结构信息表,以供用户查询;所述网络中节点包括所述网关子节点和所述路由子节点。
路由节点2包括:
路由子节点变化信息生成单元21,用于在检测到路由子节点的变化时生成路由子节点变化信息并上报至所述网关节点。
路由节点信息返回单元22,用于根据接收到的广播节点信息收集命令返回自身的节点信息至所述网关节点。
终端节点3包括:
终端节点信息返回单元31,用于根据接收到的广播节点信息收集命令返回自身的节点信息至所述网关节点。
其中,网络拓扑结构信息表建立单元11包括:
广播单元111,用于在所述网络中广播节点信息收集命令。
网络拓扑结构信息表建立子单元112,用于根据路由节点信息返回单元22和终端节点信息返回单元31返回的节点信息进行组合生成网络拓扑结构信息表并存储。
在网络中节点的变化分节点的加入和节点丢失两种情况。对应的,网关子节点变化信息生成单元,包括:网关子节点加入信息生成单元和网关子节点丢失信息生成单元。路由子节点变化信息生成单元,包括:路由子节点加入信息生成单元和路由子节点丢失信息生成单元。
其中,网关子节点加入信息生成单元,用于在检测到网关子节点的变化时,生成网关子节点加入信息,其具体用于当一节点以网关节点为父节点加入网络时,生成网关子节点加入信息。
网关子节点丢失信息生成单元,用于在检测到网关子节点的变化,生成网关子节点丢失信息,包括:
第一下一跳节点确定单元,用于根据待发送数据的目的节点确定下一跳网关子节点。
第一数据发送单元,用于将所述待发送数据发送至所述下一跳网关子节点。
网关子节点丢失判断单元,用于根据所述待发送数据的接收状态判断所述下一跳网关子节点是否丢失。
网关子节点丢失信息生成子单元,用于当所述网关子节点丢失时,生成网关子节点丢失信息。
所述路由子节点加入信息生成单元,用于在检测到路由子节点的变化时,生成路由子节点加入信息;具体包括:
路由子节点加入信息生成子单元,用于当一节点以所述路由节点为父节点加入所述网络时,生成路由子节点加入信息;
路由子节点丢失信息生成单元,具体用于在检测到路由子节点的变化时,生成路由子节点丢失信息;包括:
第二下一跳节点确定单元,用于根据待发送数据的目的节点确定下一跳节点;
第二数据发送单元,用于将所述待发送数据发送至所述下一跳节点;
路由子节点丢失判断单元,用于根据所述待发送数据的接收状态确定所述路由节点的下一跳节点是否丢失;
协议层上报单元,用于在所述下一跳路由子节点丢失,且所述下一跳路由节点为所述路由节点的子节点时,在所述路由节点的协议层生成路由子节点丢失信息并上报至所述路由节点的应用层;
应用层上报单元,用于在所述路由节点的应用层接收到所述路由子节点丢失信息时,将所述路由子节点丢失信息上报至所述网关节点;
协议层上报单元,还用于在所述下一跳节点丢失,且所述下一跳节点为路由节点的父节点时,在所述路由节点的协议层生成路由父节点丢失信息并上报至所述路由节点的应用层;
应用层上报单元,还用于当所述路由节点的应用层接收到所述路由父节点丢失信息时,开启节点加入流程,选择合适的节点为父节点重新加入所述网络。
在本发明中,终端节点也可检测其父节点的变化,生成父节点变化信息。此时,终端节点还包括:
终端父节点确定单元,用于根据待发送数据目的节点确定下一跳终端父节点;
终端数据发送单元,用于发送所述待发送数据至所述下一跳终端父节点;
终端父节点丢失判断单元,用于根据所述待发送数据的接收状态判断所述终端父节点是否丢失;
终端父节点丢失信息生成单元,用于在所述终端父节点丢失时,生成终端父节点丢失信息;
孤点加入单元,用于根据所述终端父节点丢失信息开启孤点加入流程,选择所述终端节点的父节点为父节点加入所述网络;
节点加入单元,用于在所述父节点无法通过孤点加入流程加入时,开启节点加入流程,选择其他合适的节点为父节点加入所述网络。
通过上述介绍可知,路由子节点丢失信息以及路由子节点加入信息会被上报至网关节点,因此,在网关节点处就汇集了路由子节点的变化信息和网关子节点的变化信息。网关更新单元根据这些变化信息更新网络拓扑结构信息表。网关更新单元具体包括:
网关更新单元包括:
网关加入信息判断单元,用于当所述节点的变化信息为节点的加入信息时,根据网络拓扑结构信息表的内容判断所述节点是否存在于所述网络中;
网关加入信息更新子单元,用于在所述节点存在于所述网络中时,更新所述网络拓扑结构信息表中存储的所述节点的相应信息;
网关分配单元,用于在所述节点未存在于所述网络中时,在所述网络拓扑结构信息表中为所述节点分配存储空间,并增加对应的父子信息;
网关丢失信息判断单元,用于当所述节点的变化信息为节点的丢失信息时,根据网络拓扑结构信息表的内容判断所述节点是否已经存在于所述网络中;
网关丢失信息删除单元,用于在若所述节点存在于所述网络中时,在所述网络拓扑结构信息表中删除所述节点的信息;
网关提示单元,用于在所述节点未存在于所述网络中时,提示出错。
在本发明的优选实施例中,可同时在路由节点处维护路由节点拓扑结构信息表,以供用户查询该路由节点处的拓扑结构信息。此时,路由节点还包括:
路由更新单元,用于根据所述路由子节点的变化信息更新存储于所述路由节点的路由节点拓扑结构信息表,以供用户查询所述路由节点处的拓扑结构信息;
所述路由更新单元包括:
路由加入信息判断单元,用于当所述路由子节点的变化信息为加入信息时,根据路由节点拓扑结构信息表的内容判断所述路由子节点是否已经存在于所述网络中;
路由加入信息更新子单元,用于在所述路由子节点已经存在于所述网络中时,更新在所述路由节点拓扑结构信息表中所存储的所述路由子节点的信息;
路由分配单元,用于在所述路由子节点未存在于所述网络中时,在所述路由节点拓扑结构信息表中为所述路由子节点分配存储空间,并增加对应的父子信息;
路由丢失信息判断单元,用于当所述路由子节点的变化信息为丢失信息时,根据路由节点拓扑结构信息表的内容判断所述路由子节点是否已经存在于所述网络中;
路由丢失信息删除单元,用于在所述路由子节点已经存在于所述网络中时,在所述路由节点拓扑结构信息表中删除所述路由子节点的信息;
路由提示单元,用于在所述路由子节点未存在于所述网络中时提示出错。
值得注意的是,本发明系统与本发明的方法相对应,因此对系统不再详述,相关部分参见方法实施例即可。
以上对本发明所提供的一种基于Zigbee协议的无线传感器网络结构的维护方法及系统,进行了介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种基于Zigbee协议的无线传感器网络结构的维护方法,其特征在于,所述方法包括:
网关节点预先建立网络拓扑结构信息表的步骤;
所述网关节点检测到网关子节点的变化,所述网关节点生成网关子节点变化信息的步骤,所述网关子节点包括网络中与网关节点存在父子关系的路由节点和/或终端节点;
网络中路由节点检测到路由子节点的变化,所述路由节点生成路由子节点变化信息并上报至所述网关节点的步骤;
所述网关节点根据网络中节点的变化信息更新所述网络拓扑结构信息表,以供用户查询的步骤,所述网络中节点包括所述网关子节点和所述路由子节点;
其中,所述网关节点预先建立网络拓扑结构信息表的步骤包括;
所述网关节点在所述网络中广播节点信息收集命令;
网络中的节点根据收到的所述广播节点信息收集命令返回自身的节点信息至所述网关节点;
所述网关节点将所述网络中的节点返回的所述节点信息进行组合生成网络拓扑结构信息表并存储。
2.根据权利要求1所述的方法,其特征在于,
所述网关节点检测到网关子节点的变化,生成网关子节点变化信息,其中,所述网关子节点变化信息包括网关子节点加入信息和网关子节点丢失信息;
所述网络中路由节点检测到路由子节点的变化,生成路由子节点变化信息并上报至所述网关节点;其中,所述路由子节点变化信息包括路由子节点加入信息和路由子节点丢失信息;
所述网关节点检测到网关子节点的变化,生成网关子节点加入信息,包括:
当一节点以所述网关节点为父节点加入所述网络时,所述网关节点生成网关子节点加入信息;
所述网关节点检测到网关子节点的变化,生成网关子节点丢失信息,包括:
所述网关节点根据待发送数据的目的节点确定下一跳网关子节点;
所述网关节点将所述待发送数据发送至所述下一跳网关子节点;
所述网关节点根据所述待发送数据的接收状态判断所述下一跳网关子节点是否丢失;
当所述网关子节点丢失时,则所述网关节点生成网关子节点丢失信息;
所述路由节点检测到路由子节点的变化,生成路由子节点加入信息,包括:
当一节点以所述路由节点为父节点加入所述网络时,所述路由节点生成路由子节点加入信息;
所述路由节点上报所述路由子节点加入信息至所述网关节点;
所述路由节点检测到路由子节点的变化,生成路由子节点丢失信息,包括:
所述路由节点根据待发送数据的目的节点确定下一跳节点;
所述路由节点将所述待发送数据发送至所述下一跳节点;
所述路由节点根据所述待发送数据的接收状态确定所述下一跳节点是否丢失;
若所述下一跳节点丢失,且所述下一跳节点为所述路由节点的子节点,则在所述路由节点的协议层生成路由子节点丢失信息并上报至所述路由节点的应用层;
当所述路由节点的应用层接收到所述路由子节点丢失信息时,所述路由节点将所述路由子节点丢失信息上报至所述网关节点;
若所述下一跳节点丢失,且所述下一跳节点为路由节点的父节点,则在所述路由节点的协议层生成路由父节点丢失信息并上报至所述路由节点的应用层;
当所述路由节点的应用层接收到所述路由父节点丢失信息时,所述路由节点开启节点加入流程,选择合适的节点为父节点重新加入所述网络。
3.根据权利要求1所述的方法,其特征在于,所述网关节点根据网络中节点的变化信息更新所述网络拓扑结构信息表,包括:
当所述节点的变化信息为节点的加入信息时,所述网关节点根据网络拓扑结构信息表的内容判断所述节点是否存在于所述网络中;
若所述节点存在于所述网络中,则所述网关节点更新所述网络拓扑结构信息表中存储的所述节点的相应信息;
若所述节点未存在于所述网络中,则所述网关节点在所述网络拓扑结构信息表中为所述节点分配存储空间,并增加对应的父子信息;
当所述节点的变化信息为节点的丢失信息时,所述网关节点根据网络拓扑结构信息表的内容判断所述节点是否已经存在于所述网络中;
若所述节点存在于所述网络中,则所述网关节点在所述网络拓扑结构信息表中删除所述节点的信息;
若所述节点未存在于所述网络中,则所述网关节点提示出错。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述路由节点根据所述路由子节点的变化信息更新存储于所述路由节点的路由节点拓扑结构信息表,以供用户查询所述路由节点处的拓扑结构信息,具体包括:
当所述路由子节点的变化信息为加入信息时,所述路由节点根据路由节点拓扑结构信息表的内容判断所述路由子节点是否已经存在于所述网络中;
若是,则更新在所述路由节点拓扑结构信息表中所存储的所述路由子节点的信息;
若否,则在所述路由节点拓扑结构信息表中为所述路由子节点分配存储空间,并增加对应的父子信息;
当所述路由子节点的变化信息为丢失信息时,所述路由节点根据路由节点拓扑结构信息表的内容判断所述路由子节点是否已经存在于所述网络中;
若是,则所述路由节点在所述路由节点拓扑结构信息表中删除所述路由子节点的信息;
若否,则所述路由节点提示出错。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述方法还包括:终端节点根据待发送数据目的节点确定下一跳终端父节点;
所述终端节点发送所述待发送数据至所述下一跳终端父节点;
所述终端节点根据所述待发送数据的接收状态判断所述终端父节点是否丢失;
若所述终端父节点丢失,则生成终端父节点丢失信息;
所述终端节点根据所述终端父节点丢失信息开启孤点加入流程,选择所述终端节点的父节点为父节点加入所述网络;
若无法加入,则所述终端节点开启节点加入流程,选择其他合适的节点为父节点加入所述网络。
6.一种基于Zigbee协议的无线传感器网络结构的维护系统,其特征在于,所述系统包括网关节点、路由节点和终端节点;
所述网关节点包括:
网络拓扑结构信息表建立单元,用于预先建立网络拓扑结构信息表;
网关子节点变化信息生成单元,用于在检测到网关子节点的变化时生成网关子节点变化信息;所述网关子节点包括网络中与网关节点存在父子关系的路由节点和/或终端节点;
网关更新单元,用于根据网络中节点的变化信息更新所述网络拓扑结构信息表,以供用户查询;所述网络中节点包括所述网关子节点和所述路由子节点;
所述路由节点包括:
路由子节点变化信息生成单元,用于在检测到路由子节点的变化时生成路由子节点变化信息并上报至所述网关节点;
路由节点信息返回单元,用于根据接收到的广播节点信息收集命令返回自身的节点信息至所述网关节点;
所述终端节点包括:
终端节点信息返回单元,用于根据接收到的广播节点信息收集命令返回自身的节点信息至所述网关节点;
所述网络拓扑结构信息表建立单元包括:
广播单元,用于在所述网络中广播节点信息收集命令;
网络拓扑结构信息表建立子单元,用于根据路由节点信息返回单元和终端节点信息返回单元返回的节点信息进行组合生成网络拓扑结构信息表并存储。
7.根据权利要求6所述的系统,其特征在于,
所述网关子节点变化信息生成单元,包括:网关子节点加入信息生成单元和网关子节点丢失信息生成单元;
所述路由子节点变化信息生成单元,包括:路由子节点加入信息生成单元和路由子节点丢失信息生成单元;
所述网关子节点加入信息生成单元,用于在检测到网关子节点的变化时,生成网关子节点加入信息;
所述网关子节点加入信息生成单元,具体用于当一节点以所述网关节点为父节点加入所述网络时,生成网关子节点加入信息;
所述网关子节点丢失信息生成单元,用于在检测到网关子节点的变化,生成网关子节点丢失信息,包括:
第一下一跳节点确定单元,用于根据待发送数据的目的节点确定下一跳网关子节点;
第一数据发送单元,用于将所述待发送数据发送至所述下一跳网关子节点;
网关子节点丢失判断单元,用于根据所述待发送数据的接收状态判断所述下一跳网关子节点是否丢失;
网关子节点丢失信息生成子单元,用于当所述网关子节点丢失时,生成网关子节点丢失信息;
所述路由子节点加入信息生成单元,用于在检测到路由子节点的变化时,生成路由子节点加入信息;
所述路由子节点加入信息生成单元,包括:
路由子节点加入信息生成子单元,用于当一节点以所述路由节点为父节点加入所述网络时,生成路由子节点加入信息;
所述路由子节点丢失信息生成单元,具体用于在检测到路由子节点的变化时,生成路由子节点丢失信息;包括:
第二下一跳节点确定单元,用于根据待发送数据的目的节点确定下一跳节点;
第二数据发送单元,用于将所述待发送数据发送至所述下一跳节点;
路由子节点丢失判断单元,用于根据所述待发送数据的接收状态确定所述路由节点的下一跳节点是否丢失;
协议层上报单元,用于在所述下一跳路由子节点丢失,且所述下一跳路由节点为所述路由节点的子节点时,在所述路由节点的协议层生成路由子节点丢失信息并上报至所述路由节点的应用层;
应用层上报单元,用于在所述路由节点的应用层接收到所述路由子节点丢失信息时,将所述路由子节点丢失信息上报至所述网关节点;
所述协议层上报单元,还用于在所述下一跳节点丢失,且所述下一跳节点为路由节点的父节点时,在所述路由节点的协议层生成路由父节点丢失信息并上报至所述路由节点的应用层;
应用层上报单元,还用于当所述路由节点的应用层接收到所述路由父节点丢失信息时,开启节点加入流程,选择合适的节点为父节点重新加入所述网络。
8.根据权利要求6所述的系统,其特征在于,所述网关更新单元包括:
网关加入信息判断单元,用于当所述节点的变化信息为节点的加入信息时,根据网络拓扑结构信息表的内容判断所述节点是否存在于所述网络中;
网关加入信息更新子单元,用于在所述节点存在于所述网络中时,更新所述网络拓扑结构信息表中存储的所述节点的相应信息;
网关分配单元,用于在所述节点未存在于所述网络中时,在所述网络拓扑结构信息表中为所述节点分配存储空间,并增加对应的父子信息;
网关丢失信息判断单元,用于当所述节点的变化信息为节点的丢失信息时,根据网络拓扑结构信息表的内容判断所述节点是否已经存在于所述网络中;
网关丢失信息删除单元,用于在若所述节点存在于所述网络中时,在所述网络拓扑结构信息表中删除所述节点的信息;
网关提示单元,用于在所述节点未存在于所述网络中时,提示出错。
9.根据权利要求6所述的系统,其特征在于,所述路由节点还包括:
路由更新单元,用于根据所述路由子节点的变化信息更新存储于所述路由节点的路由节点拓扑结构信息表,以供用户查询所述路由节点处的拓扑结构信息;
所述路由更新单元包括:
路由加入信息判断单元,用于当所述路由子节点的变化信息为加入信息时,根据路由节点拓扑结构信息表的内容判断所述路由子节点是否已经存在于所述网络中;
路由加入信息更新子单元,用于在所述路由子节点已经存在于所述网络中时,更新在所述路由节点拓扑结构信息表中所存储的所述路由子节点的信息;
路由分配单元,用于在所述路由子节点未存在于所述网络中时,在所述路由节点拓扑结构信息表中为所述路由子节点分配存储空间,并增加对应的父子信息;
路由丢失信息判断单元,用于当所述路由子节点的变化信息为丢失信息时,根据路由节点拓扑结构信息表的内容判断所述路由子节点是否已经存在于所述网络中;
路由丢失信息删除单元,用于在所述路由子节点已经存在于所述网络中时,在所述路由节点拓扑结构信息表中删除所述路由子节点的信息;
路由提示单元,用于在所述路由子节点未存在于所述网络中时提示出错。
10.根据权利要求6-9任一项所述的系统,其特征在于,所述终端节点还包括:
终端父节点确定单元,用于根据待发送数据目的节点确定下一跳终端父节点;
终端数据发送单元,用于发送所述待发送数据至所述下一跳终端父节点;
终端父节点丢失判断单元,用于根据所述待发送数据的接收状态判断所述终端父节点是否丢失;
终端父节点丢失信息生成单元,用于在所述终端父节点丢失时,生成终端父节点丢失信息;
孤点加入单元,用于根据所述终端父节点丢失信息开启孤点加入流程,选择所述终端节点的父节点为父节点加入所述网络;
节点加入单元,用于在所述父节点无法通过孤点加入流程加入时,开启节点加入流程,选择其他合适的节点为父节点加入所述网络。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210510343.3A CN102970702B (zh) | 2012-12-03 | 2012-12-03 | 一种基于Zigbee协议的无线传感器网络结构维护方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210510343.3A CN102970702B (zh) | 2012-12-03 | 2012-12-03 | 一种基于Zigbee协议的无线传感器网络结构维护方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102970702A CN102970702A (zh) | 2013-03-13 |
CN102970702B true CN102970702B (zh) | 2016-03-02 |
Family
ID=47800500
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210510343.3A Active CN102970702B (zh) | 2012-12-03 | 2012-12-03 | 一种基于Zigbee协议的无线传感器网络结构维护方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102970702B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103312547B (zh) * | 2013-06-18 | 2016-06-29 | 华为技术有限公司 | 通信方法、装置及系统 |
CN104780588B (zh) * | 2014-01-10 | 2018-09-21 | 中国电信股份有限公司 | 用于控制传感节点加入的方法和汇聚节点 |
CN106304260B (zh) * | 2015-05-18 | 2019-10-01 | 美的集团股份有限公司 | 加入ZigBee网络的方法和装置 |
CN107231394B (zh) * | 2016-03-25 | 2020-08-11 | 阿里巴巴集团控股有限公司 | 一种数据源地址分发树的构造方法和用于复制数据的方法 |
CN111314101B (zh) * | 2018-12-11 | 2023-10-24 | 中兴通讯股份有限公司 | 基于ZigBee网络的传感器父节点设置方法、装置及系统 |
CN115001980B (zh) * | 2022-05-26 | 2024-05-28 | 国网湖北省电力有限公司恩施供电公司 | 一种低压智能开关网络拓扑结构系统及其构建方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101140695A (zh) * | 2007-09-30 | 2008-03-12 | 浙江大学 | 基于ZigBee无线传感器网络的温室环境监控系统 |
CN102572156A (zh) * | 2012-01-11 | 2012-07-11 | 南京航空航天大学 | 基于无线传感器网络的儿童警报车载系统及方法 |
CN102622896A (zh) * | 2012-04-05 | 2012-08-01 | 郭海锋 | 一种基于GPRS/3G与ZigBee网络的车速信息采集系统 |
-
2012
- 2012-12-03 CN CN201210510343.3A patent/CN102970702B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101140695A (zh) * | 2007-09-30 | 2008-03-12 | 浙江大学 | 基于ZigBee无线传感器网络的温室环境监控系统 |
CN102572156A (zh) * | 2012-01-11 | 2012-07-11 | 南京航空航天大学 | 基于无线传感器网络的儿童警报车载系统及方法 |
CN102622896A (zh) * | 2012-04-05 | 2012-08-01 | 郭海锋 | 一种基于GPRS/3G与ZigBee网络的车速信息采集系统 |
Also Published As
Publication number | Publication date |
---|---|
CN102970702A (zh) | 2013-03-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102970702B (zh) | 一种基于Zigbee协议的无线传感器网络结构维护方法及系统 | |
CN101483902B (zh) | 一种保障服务质量的无线多媒体传感器网络路由方法 | |
CN102057731A (zh) | 建立无线多跳网络的方法 | |
CN101119372B (zh) | 适用于移动无线传感器网络的协作节能路由图构造方法 | |
CN104115526A (zh) | 通信网络中高效的代理表管理 | |
CN103582065A (zh) | 一种无线传感器网络的高效自组网路由方法 | |
CN102695204A (zh) | 一种用于工业无线网络的业务控制方法及系统 | |
KR100747551B1 (ko) | 토폴로지 관리 테이블을 이용한 센서 네트워크의 토폴로지관리 방법 | |
CN102685786A (zh) | 无线传感器网络接入电信网络的方法及系统 | |
CN102457903B (zh) | 无线传感器网络通过多网关接入到电信网的接入控制方法及装置 | |
CN103001874B (zh) | 一种基于节点标签集的延迟容忍移动社会网络路由方法 | |
CN101325545B (zh) | 工业无线通信网络中一种冗余路径的设计方法 | |
KR20060007419A (ko) | ad-hoc 네트워크, 네트워크 장치 및 ad-hoc네트워크에 대한 구성 관리 방법 | |
CN112950916A (zh) | 一种基于ZigBee的无线抄表系统及其应用方法 | |
CN101355469B (zh) | 网络地址的处理方法与路由节点 | |
CN106255167A (zh) | 一种基于低功耗有损网络路由协议的无线传感器网络及其计算方法 | |
Khlaifi et al. | Routing protocols for A border monitoring application | |
EP3869739B1 (en) | Method for monitoring apparatus | |
Al-Fares et al. | A hierarchical routing protocol for survivability in wireless sensor network (WSN) | |
Singh et al. | Energy efficient fixed-cluster architecture for wireless sensor networks | |
Siyi et al. | Quality of service assessment routing protocols for performance in a smart building: A case study | |
CN102984296B (zh) | 一种网络地址配置及网络合并的方法 | |
Kenny et al. | Below cross-layer: an alternative approach to service discovery for MANETs | |
Abouelkhair et al. | Hierarchal energy efficient network protocol for wireless sensing | |
Nasser et al. | Multiple Base station and Packet Priority-based clustering scheme in Internet of Things |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |