CN102711159B - 基于ZigBee协议处理丢失节点的方法和系统 - Google Patents
基于ZigBee协议处理丢失节点的方法和系统 Download PDFInfo
- Publication number
- CN102711159B CN102711159B CN201210147513.6A CN201210147513A CN102711159B CN 102711159 B CN102711159 B CN 102711159B CN 201210147513 A CN201210147513 A CN 201210147513A CN 102711159 B CN102711159 B CN 102711159B
- Authority
- CN
- China
- Prior art keywords
- node
- network
- loss
- layer
- device object
- 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
Landscapes
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种基于ZigBee协议处理丢失节点的方法和系统,包括:当检测到应用层的ZigBee设备对象中接收到丢失指示消息,通过应用框架中指定的第一消息接口将该丢失指示消息上报给应用对象;当丢失节点为本节点的原父节点时,触发网络扫描以确定出本节点对应的潜在父节点;通过ZigBee设备对象向潜在父节点发送网络加入请求,以便重新通过该潜在父节点加入网络;当丢失节点为本节点的原子节点时,则触发ZigBee设备对象向网络层发送删除该原子节点的请求,以便在网络层中删除该原子节点的信息。该方法能够及时对丢失节点进行处理,以减少网络中断时间,提高网络稳定性和适应性。
Description
技术领域
本发明涉及短距离无线通信技术领域,更具体的说是涉及一种基于ZigBee协议处理丢失节点的方法和系统。
背景技术
ZigBee是一种新兴的具有短距离、低速率、低功耗、高可靠性、双向传输等特点的无线通信技术。基于ZigBee协议的网络可以在数千个节点之间相互协调实现通信,网络中的节点仅需很少的能量,就可以以接力的方式通过无线电波将数据从一个节点传送到另一个节点,通信效率非常高。
当ZigBee协议网络中的节点发生掉电、错误、离开或信号变弱不能被其他节点检测到时,被称为节点丢失。如果ZigBee协议网络中的某节点丢失,该节点及其子节点将无法连接到网络,且该节点的父节点也无法与其进行相应的通信。因此,当基于ZigBee协议的网络中,与某节点的具有通信关系的子节点或父节点丢失后,如果该节点不能够及时对与其具有通信关系的节点丢失情况进行处理,则可能导致通信中断,甚至是整个网络瘫痪。例如,以ZigBee网络中的节点A为例,如果节点A的父节点A1丢失后,则该节点A以及子节点将无法接收到任何信息,同时如果该父节点A1无法及时获取其子节点A的丢失信息,并对该丢失的节点A进行处理,也会影响到该父节点A1的通信,且如果父节点A1不断向该节点A发送数据,则会造成大量的通信数据的浪费。
但是现有的基于ZigBee协议的网络中节点的协议栈高层(即应用层中的应用对象)不能及时获取到与其具有通信关系的其他节点的丢失情况,无法及时进行丢失节点的处理,且现有技术中并没有比较完善的处理丢失节点的方法,当检测到网络中出现丢失节点时也无法实现网络的自组织以及网络的动态调整,从而无法保证网络的稳定性,例如,现有技术中当本节点的原父节点丢失后,对该种情况的处理也仅局限于本节点与该原父节点的重新连接,但是如果本节点与该原父节点的重新连接失败,则本节点将无法重新加入其原来所在的网络。因此,当本ZigBee网络中有节点丢失后,该网络中就可能出现通信异常、甚至网络瘫痪的情况。
因此本领域技术人员迫切需要解决的技术问题是,如何能够对ZigBee网络中节点的丢失情况进行及时处理,减少网络通信中断时间,提高网络的稳定性和适应性。
发明内容
有鉴于此,本发明提供一种基于ZigBee协议处理丢失节点的方法和系统,可以及时的获取到与本节点具有通信关系的节点丢失信息,并当与本节点具有通信关系的节点丢失时,能够及时对丢失节点进行处理,以减少网络中断时间,提高网络稳定性和适应性。
为实现上述目的,本发明提供如下了一种基于ZigBee协议处理丢失节点的方法,包括:
对应用层的ZigBee设备对象进行监测;
如果检测到所述ZigBee设备对象中接收到丢失指示消息,则通过应用框架中指定的第一消息接口将该丢失指示消息上报给应用对象,其中,该丢失指示消息中包含丢失节点与本节点的通信关系;
当根据应用对象中获取到的所述通信关系确定出所述丢失节点为本节点的原父节点时,则触发网络扫描,以确定出本节点对应的潜在父节点;
通过ZigBee设备对象向所述潜在父节点发送网络加入请求,如果在网络层中接收到所述潜在父节点返回的确认接受加入的响应消息,则将所述潜在父节点作为本节点的当前父节点;
当根据应用对象中获取到的所述通信关系确定出所述丢失节点为本节点的原子节点时,则触发所述ZigBee设备对象向所述网络层发送删除该原子节点的请求,以便在网络层响应所述删除该原子节点的请求,在网络层中删除该原子节点信息。
另一方面,本发明还提供了一种基于ZigBee协议处理丢失节点的系统,包括:
监测单元,用于对应用层的ZigBee设备对象进行监测;
消息捕获单元,用于当监测单元检测到所述ZigBee设备对象中接收到丢失指示消息,则通过应用框架中指定的第一消息接口将该丢失指示消息上报给应用对象,其中,该丢失指示消息中包含丢失节点与本节点的通信关系;
第一处理单元,用于当根据应用对象中获取到的所述通信关系确定出所述丢失节点为本节点的原父节点时,则触发网络扫描,以确定出本节点对应的潜在父节点;
网络加入单元,用于通过ZigBee设备对象向所述潜在父节点发送网络加入请求,如果在网络层中接收到所述潜在父节点返回的确认接受加入的响应消息,则将所述潜在父节点作为本节点的当前父节点;
第二处理单元,用于当根据应用对象中获取到的所述通信关系确定出所述丢失节点为本节点的原子节点时,则触发所述ZigBee设备对象向所述网络层发送删除该原子节点的请求,以便网络层响应所述删除该原子节点的请求,在网络层中删除该原子节点信息。
经由上述的技术方案可知,与现有技术相比,本发明提供了一种ZigBee协议处理丢失节点的方法和系统,该方法当检测到ZigBee设备对象中接收到丢失指示消息时,将该丢失指示消息上报给应用对象,进而根据应用对象中获取到的丢失指示消息确定出丢失节点与本节点的通信关系;当丢失节点为本节点的父节点时,触发网络扫描,以确定本节点对应的潜在父节点,进而向该潜在父节点发送网络加入请求,以便重新加入网络;当丢失节点为本节点的原子节点时,则触发ZigBee设备对象向网络层发送删除该原子节点的请求,以便在网络层中删除该原子节点的信息。通过该方法可以在应用对象中及时获取到与本节点具有通信关系的其他节点的丢失情况,并根据丢失节点与本节点的通信关系,触发重新查询新的父节点并通过新的父节点重新加入网络或者移除丢失的子节点的操作,实现了网络自适应变化,减少了网络通信中断的时间,进而提高了网络稳定性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明一种基于ZigBee协议处理丢失节点的方法实施例1的流程图;
图2为本发明一种基于ZigBee协议处理丢失节点的方法实施例2的流程图;
图3为本发明中子节点以孤点方式加入网络的交互流程示意图;
图4为本发明触发网络扫描并重新加入网络的协议栈流程交互示意图;
图5为本发明一种基于ZigBee协议处理丢失节点的方法实施例3的流程示意图;
图6为本发明基于ZigBee协议的一种网络结构示意图;
图7为将ZDO中获取的丢失指示消息上报给应用对象的流程示意图;
图8为本发明一种基于ZigBee协议处理丢失节点的方法实施例4的流程示意图;
图9为本发明一种基于ZigBee协议处理丢失节点的系统实施例1的结构示意图;
图10为本发明一种基于ZigBee协议处理丢失节点的系统实施例2的结构示意图;
图11为本发明一种基于ZigBee协议处理丢失节点的系统实施例3的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1,示出了本发明一种基于ZigBee协议处理丢失节点的方法实施例1的流程示意图,该方法包括:
步骤101:对应用层的ZigBee设备对象进行监测。
对应用层(APL,Application layer)中的ZigBee设备对象进行监测,以及时确定该ZigBee设备对象中是否接收到丢失指示消息。如果应用层的ZigBee设备对象中接收到丢失指示消息,则说明与本节点具有通信关系的某节点丢失。其中,与本节点具有通信关系的节点丢失是指该节点不能与本节点进行通信连接,无法向本节点发送消息或接收本节点发送的消息。
步骤102:如果检测到ZigBee设备对象中接收到丢失指示消息,则通过应用框架中指定的第一消息接口将该丢失指示消息上报给应用对象,其中,该丢失指示消息中包含丢失节点与本节点的通信关系。
当检测到本节点的应用层的ZigBee设备对象中接收到丢失指示消息时,则说明与本节点具有通信关系的节点出现丢失情况。为了应用层的应用对象能够及时获知该节点的丢失信息,本发明中在应用框架中增设了一个第一消息接口,以便通过该第一消息接口将该ZigBee设备对象中接收到的丢失指示消息上报给应用对象,使得应用对象捕获到节点丢失信息。其中,该应用框架为ZigBee协议栈中ZigBee设备对象与应用对象进行交互的环境。
其中,该丢失指示消息中包含本节点与丢失节点的通信关系,当然,还可以包含该丢失节点的其他信息,如该丢失节点的网络地址、丢失节点为路由节点还是终端节点等网络信息。其中,在本发明中该本节点与丢失节点的通信关系包括:丢失节点为本节点的子节点或者是丢失节点为本节点的父节点。
需要说明的是,子节点和父节点是依据基于ZigBee协议的网络中的节点通信关系划分的。当网络中的某台设备通过另一台设备加入网络时,这两台设备就构成了父子关系,新接入的设备成为子节点,而另一台设备称为该子节点的父节点。例如,设备A通过设备B加入到该ZigBee网络中,则设备A称为子节点,设备B称为设备A这个子节点的父节点。
步骤103:当根据应用对象中获取到的该通信关系确定出丢失节点为本节点的原父节点时,则触发网络扫描,以确定出本节点对应的潜在父节点。
当根据通信关系确定出丢失节点为本节点的父节点时,则说明本节点与该父节点无法进行通信,且本节点与其原来所在的网络出现连接中断。为了能够重现恢复网络连接,本节点需要重新加入该网络。本发明中当应用对象中捕获到父节点丢失信息后,则触发网络扫描,以便重新找寻新的父节点加入原网络,该原网络也就是本节点丢失该父节点前所在的ZigBee协议网络,对应的,本节点进行网络扫描重新找寻的新的父节点也是出于该原网络中的节点。
在该步骤中将已经于本节点出现通信中断的父节点称为原父节点,以便与本节点后续重新确定的本节点的新父节点相区别。
步骤104:通过ZigBee设备对象向该潜在父节点发送网络加入请求,如果在网络层中接收到潜在父节点返回的确认接受加入的响应消息,则将该潜在父节点作为本节点的当前父节点。
当确定出潜在父节点后,则触发通过ZigBee设备对象向该潜在父节点发送网络加入请求。具体的,通过ZigBee设备对象将网络加入请求发送给网络层,进而通过网络层(NWK,network layer)向该潜在父节点发送网络加入请求。如果该潜在父节点接受本节点的加入请求,则在该潜在父节点的网络层建立与本节点之间的关联关系,同时,该潜在父节点向本节点返回确认接受加入的响应消息,本节点在介质访问控制层(MAC,Media Access Control)接收到该潜在父节点发送的确认接受加入的响应消息后,会将该响应消息上报给网络层,网络层接收到该响应消息后,并在网络层的关联表中建立本节点与该潜在父节点之间的关联关系,并将该潜在父节点作为本节点的新父节点,即将该潜在父节点作为本节点的当前父节点,同时,在该网络层中会添加该选定的当前父节点信息(也就是该潜在父节点的信息),从而使得本节点通过该当前父节点加入网络。其中,该新确定出的当前父节点信息包括:该当前父节点与本节点的关联关系,该当前父节点的地址信息,该当前父节点对应的网络标识(PIN ID)等。
步骤105:当根据应用对象中获取到的所述通信关系确定出所述丢失节点为本节点的原子节点时,则触发ZigBee设备对象向网络层发送删除该原子节点的请求,以便网络层响应删除该原子节点的请求,在网络层中删除该原子节点的信息。
当根据该应用对象中获取到的通信关系确定出所述丢失节点为本节点丢失的子节点,也就是本节点的原子节点时,则执行节点移除流程,触发ZigBee设备对象向网络层发送删除该原子节点的请求。当在网络层接收到删除该原子节点的请求,则网络层响应该请求,并删除关联表中该原子节点信息,该原子节点信息也就是在本节点中存储的与该原子节点对应的信息,可以包括:该原子节点的关联信息,如该原子节点与本节点之间的父子节点的关联关系,以及该原子节点的子节点信息等。该原子节点对应的信息还可以包括该原子节点的路由信息以及该原子节点的网络地址等等。
在网络层中删除该原子节点信息后,本节点将不会再向该原子节点发送通信数据,从而避免了本节点向该原子节点发送数据,从而造成数据浪费,以及通信中断。
本实施例中通过对ZigBee设备对象进行监测,并当检测到ZigBee设备对象中接收到丢失指示消息时,将该丢失指示消息上报给应用对象,由于丢失指示消息中包含丢失节点的信息,从而使得应用对象中能够实时获取到丢失节点的信息。同时根据应用对象中获取到的丢失指示消息可以确定出丢失节点与本节点的通信关系,进而当丢失节点为本节点的原父节点时,触发网络扫描,以确定本节点对应的潜在父节点,进而向该潜在父节点发送网络加入请求,以便重新加入网络;当丢失节点为本节点的原子节点时,则触发ZigBee设备对象向网络层发送删除该原子节点的请求,以便在网络层中删除该原子节点信息。因此,当应用对象中获取到与本节点具有通信关系的其他节点丢失时,可以实时处理节点丢失情况,实现了网络自适应变换,减少了网络通信中断的时间,进而提高了网络稳定性。
可以理解的是,当在网络层中接收到潜在父节点返回的确认接受加入的响应消息后,在网络层中添加本节点与潜在父节点的关联信息,并将潜在父节点作为本节点的当前父节点的同时,还可以进一步将该确定的当前父节点的信息发送给本节点的ZigBee设备对象,并通过在应用框架中预设的第二消息接口将该当前父节点信息上报给所述应用对象。
本发明中在应用框架中可以增设第二消息接口,进而通过该第二消息接口将该最新确定出的本节点的当前父节点信息上报给应用对象,进而使得用户可以获知该子节点的当前父节点的相关信息。
对应的,当丢失节点为本节点的原子节点时,在网络层响应ZigBee设备对象中删除该原子节点的请求,并在网络层中删除该原子节点的信息后,也可以通过将该删除了该原子节点信息的消息上报给ZigBee设备对象,以便通过应用框架中预设的第三消息接口将网络层删除该原子节点相关信息的消息上报给应用对象,进而使得用户获知该信息。
另外,当本节点的原父节点丢失后,本节点确定出新的父节点即确定出的本节点的当前父节点后,该当前父节点可以将其添加本节点为子节点的信息发送给网关节点,以便网关节点获知网络结构的变化信息。同样,当本节点的网络层将原子节点的关联信息删除后,应用程序也会触发本节点的ZigBee设备对象将本节点与该原子节点之间关联关系的变化信息发送给网关节点。
参见图2,示出了本发明一种基于ZigBee协议处理丢失节点的方法实施例2的流程示意图,该方法包括:
步骤201:对应用层的ZigBee设备对象进行监测。
步骤202:如果检测到ZigBee设备对象中接收到丢失指示消息,则通过应用框架中指定的第一消息接口将该丢失指示消息上报给应用对象,其中,该丢失指示消息中包含丢失节点与本节点的通信关系。
其中,该应用框架中增设的接收该丢失指示消息的第一消息接口可以为NWK_STATE_CHANGE函数。
其中,步骤201和步骤202的操作过程与实施例1中步骤101和102的操作过程相似,在此不再赘述。
步骤203:根据应用对象中获取到的丢失节点与本节点的通信关系,判断丢失节点是否为本节点的原父节点,如果是,则进入步骤204;如果否,则进入步骤208。
根据应用对象中获取到的丢失节点与本节点的通信关系,就可以确定出丢失节点是本节点的子节点还是父节点,从而针对丢失节点的不同情况,采取不同的方式对节点丢失情况进行处理。
步骤204:触发执行以孤点方式加入网络的操作,以便本节点以孤点方式加入网络。
本实施例中当确定出丢失节点为本节点的原父节点时,首先触发孤点方式加入网络。本发明触发执行以孤点方式加入网络的操作,具体可以包括:应用对象向该ZigBee设备对象发送指示消息,以指示在ZigBee设备对象向该原父节点发出孤点加入请求,该孤点加入请求由ZigBee设备对象向网络层传输,并最终经由介质访问控制层将该孤点加入请求发送出去。该原父节点如果接受本节点的孤点加入请求,则会返回该孤点加入请求对应的确认信息。当检测到本节点接收到该确认信息后,则说明本节点以孤点方式成功加入网络。
当本节点为终端节点时,如果本节点的原父节点丢失后,本节点便可以启动孤点加入流程,进而减少由于后续网络扫描所产生的数据量。一般情况下可以设定启动孤点加入流程的次数,如果经过该设定次数的孤点加入流程后,本节点仍未成功加入网络,则可以执行后续进行网络扫描,以确定潜在父节点的操作。
为了能够清楚的描述以孤点方式加入网络的流程,参见图3,为以孤点方式加入网络的流程示意图。当本发明中当在本节点的应用对象中捕获到其原父节点丢失时,可以首先触发执行图3所示的孤点加入流程。由于本节点与该原父节点之间为父子节点的关系,因此,图中的子节点可以认为是本节点,而该父节点则为本节点的丢失的原父节点。
当本节点作为该原父节点的子节点时,如果子节点需要发起孤点加入请求,以下为子节点侧的操作:
a1、在应用层APL中调用NLME-JOIN.request原语,本发明中可以通过应用对象向ZigNee设备对象发送指令,由该ZigBee设备对象调用该NLME-JOIN.request原语,并设置RejoinNetwork=TURE。通过在应用层APL调用该NLME-join.request原语可以将孤点加入请求发送到网络层NWK。
a2、在网络层NWK调用MLME-SCAN.request原语以指示介质访问控制层MAC进行孤点扫描,并通过介质访问控制层MAC向该原父节点发送孤点加入请求。
a3、当孤点扫描结束时,在介质访问控制层调用MLME-SCAN.confirm原语,将扫描结果上传给网络层NWK。
a4、如果该原父节点接受该子节点的孤点加入请求,也就是孤点扫描成功,则在网络层调用NLME-JOIN.confirm原语将孤点请求结果告知应用层的ZigBee设备对象,进而通过应用框架中预设的消息接口将该ZigBee设备对象中获取到的孤点请求结果上报给应用对象。如果孤点扫描失败,则网络层终止操作,并告知应用层,孤点加入失败,该过程也是通过在网络层调用NLME-JOIN.confirm原语来实现。
以下为该原父节点侧的操作:
b1、该原父节点在介质访问控制层接收到该子节点发送的孤点加入请求后,在介质访问控制层调用MLME-ORPHAN.indication原语,以便将该子节点的孤点加入请求上报给网络层。
b2、在网络层中首先查看其孤点设备是否是该子节点,如果是,则比较IEEE地址。
b3、当IEEE地址匹配时,该原父节点为该子节点分配网络地址,并通过在网络层调用MLME-ORPHAN.response原语来指示介质访问控制层将该原父节点接受该子节点的孤点接入请求通知该子节点。
b4、当子节点的孤点加入成功时,在介质访问控制层MAC调用MLME-COMM-STATUS.indication原语,以将该子节点的孤点加入成功信息通知网络层。
b5、在网络层中调用NLME-JOIN.indication原语,以实现将该子节点的孤点加入成功信息通知应用层。
步骤205:判断本节点是否通过孤点方式成功加入网络,如果是,则结束,如果否,则进入步骤206。
由于孤点加入一般适用于终端节点,如果本节点为路由节点时,则会出现孤点方式加入网络不成功。即时本节点为终端节点也会出现不能成功的以孤点方式加入网络的情况。因此,需要判断是否通过孤点加入方式成功加入网络,如果是,则可以结束;如果否,则需要进一步的触发进行网络扫描的操作。
步骤206:触发网络扫描,以确定出本节点对应的潜在父节点。
本发明中触发网络扫描可以是通过应用对象向该ZigBee设备对象发送启动网络扫描的指示,从而触发ZigBee设备对象向网络层发送网络扫描请求。当网络层接收到该网络扫描请求,根据该网络扫描请求执行网络扫描的过程与现有的网络扫描的过程相同。具体的,当在网络层接收到该网络扫描请求时,通过网络层向介质访问控制层发送网络扫描指示,以指示在所述介质访问控制层执行网络扫描。当检测到介质访问控制层中完成网络扫描时,通过介质访问控制层将扫描结果返回给网络层,并通过网络层将该扫描结果上报给ZigBee设备对象,其中,扫描结果中包含网络中多个待定父节点的网络信息;根据待定父节点的网络信息,从多个待定父节点中选择出一个待定父节点作为潜在父节点。其中,该待定父节点的网络信息包括:该待定父节点的网络地址信息、该待定父节点是否允许其他设备以其子节点的方式加入,以及该待定父节点对应的网络标识(PAN ID)等。
在介质访问控制层完成网络扫描后,如果有多个设备满足均符合本节点找寻父节点的条件,则将这多个满足条件的节点均作为待定父节点,进而根据各个待定父节点的网络地址,将待定父节点中节点深度最小的节点作为潜在父节点。如果这几个待定父节点的深度相同,则从中随机选择一个待定父节点作为潜在父节点。
步骤207:通过ZigBee设备对象向所述潜在父节点发送网络加入请求,如果在网络层中接收到潜在父节点返回的确认接受加入的响应消息,则将该潜在父节点作为本节点的当前父节点。
当网络层接收到该潜在父节点返回的确认接受加入的响应消息时,在网络层中会建立本节点与该潜在父节点的关联关系,具体的,将该潜在父节点作为本节点确定的新的父节点,在网络层中建立本节点与该潜在父节点设置为父子关联关系,从而通过该确定出的新父节点(即该潜在父节点)重新加入网络。当然,在建立本节点与该潜在父节点的关联关系的同时,还需要在网络层中添加该潜在父节点的相关信息,如该潜在父节点的网络地址,该潜在父节点对应的网络标识(PAN ID)等。
如果在网络层接收到的是该潜在父节点拒绝该本节点加入的消息,则在网络层的关联表中,把该潜在父节点的信息删除,并将该潜在父节点位(potential parent bit)置为零,以确保本节点不会通过网络层再向该潜在父节点发送网络加入请求。同时,本节点将会重新从待定父节点中选择另一个潜在父节点,从而向该新选择出的潜在父节点发送加入请求,以便重新加入网络。
步骤208:延迟设定时间后,判断该原子节点是否丢失,如果是,进入步骤209;如果否,结束。
为了防止由于子节点的暂时性丢失,而将子节点判定为丢失的情况出现,在本实施例中还增加了延迟指定时间,再重新判断子节点是否丢失的操作。例如,该子节点仅是短时间未无法与父节点进行通信联系,延迟指定时间后,父节点检测到该子节点能够与其进行网络连接;或者是子节点暂时性丢失后,该子节点又通过本发明的以上任意一种方式通过该父节点重新加入网络。
延迟设定时间后,判断该原子节点是否丢失,具体的可以是通过检测ZigBee设备对象中是否接收到指示该原子节点丢失的丢失指示消息,进而判断该原子节点是否为永久性丢失。
步骤209:触发ZigBee设备对象向网络层发送删除该原子节点的请求,以便网络层响应删除该原子节点的请求,在网络层中删除该原子节点信息。
当确定出该原子节点为永久性丢失时,本发明将触发ZigBee设备对象发起删除该原子节点的流程。具体的,该在应用层通过应用对象触发ZigBee设备对象调用NMLE-LEAVE.request原语,向网络层发送删除该原子节点的请求,并在网络层调用MCPS-DATA.request原语以向介质访问控制层发送删除该原子节点的请求。介质访问控制层可以将该删除原子节点的请求发送给该原子节点,如果收到该原子节点返回的确认信息或者到达设定时长后未收到该原子节点的确认信息,本节点在介质访问控制层调用MCPS-DATA.confirm原语,以向网络层返回确认删除该子节点的信息,在网络层接收到该确认删除的信息后,将网络层的关联表中该原子节点的关联信息以及路由信息等删除,同时,在网络层调用NLME-LEAVE.confirm原语,将删除原子节点的信息上报给应用层中的ZigBee设备对象。当然,ZigBee设备对象获取该原子节点删除的消息后,也可以通过应用框架中预设的消息接口,将该原子节点删除的消息上报给应用对象。
本实施例中当获取到丢失节点为本节点的原父节点时,首先触发孤点方式加入网络,如果孤点加入不成功,则触发网络扫描,以确定潜在父节点,并通过潜在父节点加入网络。在触发网络扫描前先采用孤点方式加入网络,这样如果孤点方式加入成功,则可以进一步减少由于网络扫描所带来的数据资源消耗。同时,当获取到丢失节点为本节点的原子节点时,本实施例中添加了延迟预设时间后,判断该原子节点是否丢失的操作,从而避免当子节点暂时性丢失而删除该子节点的情况出现。
其中,步骤206和步骤207,通过网络扫描,确定出潜在父节点时,可以通过ZigBee设备对象向网络层发送网络加入请求,并依次通过网络层和介质访问控制层向该潜在父节点发送网络加入请求。如果该潜在父节点接收本节点的网络加入请求,则会向本节点返回确认接受加入的响应消息。为了清楚的描述该过程,参见图4,示出了本发明触发网络扫描并重新加入网络的协议栈流程交互示意图。
当确认本节点原父节点丢失,且触发网络扫描后,协议栈主要执行网络扫描、网络加入的操作。本节点在找寻潜在父节点以重新加入到该网络时,本节点即作为子节点进行相应的网络扫描、网络加入。
以上过程可以具体包括:
c1、应用层APL调用NLME-NETWORK DISCOVERY.request原语,启动网络扫描,向网络层发送网络扫描请求。其中,在调用NLME-NETWORKDISCOVERY.request原语时,对该原语函数进行参数设置,如,设定扫描的信道,以及信道扫描的时间。由于本发明中本节点的原父节点丢失后,本节点需要重新加入原来所处的网络,因此,设定的扫描信道也与本节点原来所处的网络所对应的信道相同。
c2、网络层NWK调用MLME-SCAN.request原语向介质访问控制层MAC发送网络扫描请求。介质访问控制层依据该网络扫描请求,执行主动或被动扫描。在子节点(也可以理解为本节点)网络扫描的过程,处于该扫描信道中有其他节点接收到该请求,将会向本节点回复信标帧(becon帧),在该becon帧中包含发送该信标帧的节点设备的地址信息,以及发送该信标帧的节点设备是否允许本节点以其子节点方式加入的信息。
c3、当在介质访问控制层MAC接收到其他节点回复的beacon帧后,在介质访问控制层MAC调用MLME-BEACON-NOTIFY.indication原语,将其他节点返回的响应信息(即该beacon帧数据信息)发送给网络层NWK。在网络层对该beacon帧数据进行分析,如果发送该信标帧的节点允许本节点作为其子节点加入网络,则在网络层的关联表中添加发送该信标帧的节点的相关信息。
c4、当网络扫描结束时,介质访问控制层将调用MLME-SCAN.confirm原语通知网络层。
c5、网络层NWK调用NLME-NETWORK-DISOVERY.confirm原语,告知应用层APL的ZigBee设备对象网络扫描结束,进而使得应用层APL中应用对象获知扫描结果。在应用层根据应用对象中获取到的扫描结果,将网络层的关联表中所发现的所有节点信息作为待定父节点信息,从待定父节点中选择出一个潜在父节点,进而进行网络加入的操作。需要说明的是,由于本发明中本节点所在的原父节点丢失后,本节点需要重新找寻新的父节点加入本节点原来所在的网络,因此,确定出的潜在父节点均与该本节点原来所在的网络相同,具体的可以根据各个待定父节点的网络标识来确定。例如,本节点在丢失父节点前所处的ZigBee网络为网络A,则本节点确定出的潜在父节点也应该处于网络A。
c6、在应用层APL中根据确定出的潜在父节点信息,触发ZigBee设备对象调用NLME-JOIN.request原语向网络层NWK发送网络加入请求,以便本节点作为该潜在父节点的子节点加入网络。
c7、在网络层NWk中调用NLME-ASSOCATION.request原语向介质访问控制层发送网络加入请求,通过该介质网络控制层向该潜在父节点发送网络加入请求,以便进行关联操作。
c8、当在介质访问控制层中接收到该潜在父节点的确定接受加入的请求后,在介质访问控制层中调用MLME-ASSCOCATION.confirm原语,将网络加入请求的结果返回给网络层NWK。
c9、网络层NWK调用NLME-JOIN.confirm原语将网络加入请求的结果上报给应用层APL的ZigBee设备对象,进而通过应用框架中指定的消息接口将该网络加入请求结果通知给应用对象。
另外,当本节点通过该潜在父节点成功加入网络后,该潜在父节点即为本节点确定出的当前父节点,如果本节点为路由节点,则在应用层中还可以调用NLME-START-ROUTER原语以向该确定的当前父节点发送消息,以将本节点的类型为路由节点的信息以通知该当前父节点。
参见图5,示出了本发明一种基于ZigBee协议处理丢失节点的方法实施例3的流程示意图,该方法包括:
步骤501:当需要向其他节点发送数据时,根据待发送数据中的目的节点信息确定下一跳节点,并将待发送数据发送给下一跳节点。
其中,当需要向其他节点发送数据时,可以包含多种情况,可以是本节点的构造数据并需要向外发送,如,本节点构造报文,并将该报文向其他节点发送;也可以是当本节点的协议栈底层接收到其他节点发送的数据,经过分析确定该数据的目的节点不是本节点,则在网络层中需要确定下一跳节点,进而将该数据转发出去。
无论是本节点构造的数据,还是接收到其他节点发送的且需要本节点进行转发的数据,均会将该数据作为待发送数据,并在网络层获取该待发送数据的目的节点,进而查询本节点所保存的路由表,确定出下一跳节点。如,节点A向目的节点为节点D的报文,在发送该报文的过程中需要依次经过节点A、节点B和节点C,并由节点C将该报文转发给节点D。在该过程中,当节点A需要先该报文发送给节点B,则节点B为节点A的下一跳节点,同理当节点B接收到该报文后,该节点B需要将报文转发给节点C,则节点C为该节点B的下一跳节点。当在网络层中确定出下一跳节点后,就可以将该待发送数据向ZigBee协议栈中网络层以下协议层传输,并最终将该数据发送到该下一跳节点。
需要说明的是,本发明所说的数据可以为任意数据,如可以为与协议栈相关的数据,也可以是本节点或其他节点构造的普通通信数据等。另外,根据待发送的数据的目的节点的不同,该下一跳节点可能是本节点的子节点,也可能是本节点的父节点。
步骤502:根据待发送数据的接收状态判断下一跳节点是否丢失,并当该下一跳节点丢失时,生成指示该下一跳节点丢失的丢失指示消息,并将所述丢失指示消息上报给应用层的ZigBee设备对象,所述丢失指示消息中包含所述下一跳节点的网络信息。
当将该待发送数据向该下一跳节点发送后,如果该下一跳节点仍处于网络中,即该下一跳节点未丢失,则该下一跳节点会接收到该待发送数据。如果该下一跳节点丢失,则本节点的ZigBee协议栈底层(即应用层以下的协议层)可以获知该下一跳节点并未接收到该待发送数据,同时在该协议栈底层生成指示该下一跳节点丢失的丢失指示消息。本发明中当在协议栈底层生成该丢失指示消息后,会将该丢失指示消息逐层上报,最终由网络层将该丢失指示消息上报给应用层的ZigBee设备对象(ZDO,Zigbee Device Obiect),以便ZigBee协议栈中应用层的ZigBee设备对象获取到该下一跳节点丢失的信息。
确定该下一跳节点是否接收到该待发送数据的方式有多种,其中一种方式可以为:判断ZigBee协议栈底层在指定时间内是否接收到该下一跳节点返回的确认接收到所述待发送数据的消息,如果是,则该下一跳节点处于网络中;如果否,则下一跳节点丢失。也就是说,如果该下一跳节点接收到该待发送数据后,该下一跳节点会向该本节点回复一个确认消息,以确定其接收到该待发送数据。如,该下一跳节点接收到本节点发送的该待接收报文后,该下一跳节点向本节点回复应答信号。当本节点中应用层以下的协议层在指定时间内没有检测或接收到该下一跳节点返回的确认消息,则在ZigBee协议栈中应用层以下的协议层中生成指示该下一跳节点丢失的丢失指示消息。
其中,在该丢失指示消息中包括该下一跳节点的网络信息,具体的,该下一跳节点的网络信息包括下一跳节点与本节点的通信关系,该下一跳节点与本节点的通信关系可以表明该下一跳节点为本节点的子节点或者是父节点的信息。该下一跳节点的网络信息还可以包括该下一跳节点的网络地址。当然在丢失指示消息中还可以包含该下一跳节点丢失的时间等其他信息。
步骤503:当检测到所述ZigBee设备对象中接收到丢失指示消息,则通过应用框架中指定的第一消息接口将该丢失指示消息上报给应用对象。
步骤504:根据该下一跳节点与本节点的通信关系,判断该下一跳节点是否为本节点的原父节点,如果是,则进入步骤505;如果否,则进入步骤509。
步骤505:触发ZigBee设备对象通过孤点方式加入网络。
步骤506:判断本节点是否通过孤点方式成功加入网络,如果是,则结束,如果否,则进入步骤507。
步骤507:触发网络扫描,以确定出本节点对应的潜在父节点。
步骤508:通过ZigBee设备对象向潜在父节点发送网络加入请求,如果在网络层中接收到所述潜在父节点返回的确认接受加入的响应消息,则将所述潜在父节点作为本节点的当前父节点。
步骤503至步骤508的操作与实施例2中相应步骤的操作类似,在此不再赘述。
步骤509:确定出该下一跳节点为本节点的原子节点,并延迟设定时间后,判断所述下一跳节点是否仍处于丢失状态,如果是,进入步骤510;如果否,结束。
延迟设定时间后判断该下一跳节点是否仍处于丢失状态,如果是,则说明该下一跳节点永久性丢失。当然延迟设定时间后判断该下一跳节点是否丢失的过程,也可以向该下一跳节点发送数据,或者是在向该下一跳节点转发数据的过程中,确定出该下一跳节点丢失,进而检测到在ZigBee设备对象中接收到指示该下一跳节点丢失的丢失指示消息。
步骤510:触发所述ZigBee设备对象向所述网络层发送删除该下一跳节点的关联信息的请求,以便网络层响应删除该下一跳节点的关联信息的请求,在网络层中删除该下一跳节点的关联信息。
当网络层将该下一跳节点的关联信息删除后,该下一跳节点已经不再是本节点的子节点,本节点所在的网络结构发生了相应的改变。则本节点的应用对象中构造相应的消息,将该网络结构的变化通知网关节点。
需要说明的是,应用对象中捕获到的丢失节点的信息为在进行数据通信过程中确定出的下一跳节点的信息,该下一跳节点可以为本节点的子节点或者为本节点的父节点。该下一跳节点与本节点的具体通信关系,需要根据网络中数据发送的具体过程来确定。
本发明中节点所发送和转发的数据可以为任意数据,在网络中的节点进行数据的发送和转发的过程中,就可以获取到与本节点具有通信关系的其他节点的丢失情况。换言之,只要是网络中有节点构造并发送数据,构造数据的源节点到目的节点的路径上的所有节点均可以在进行数据转发的过程中,获取到与其具有通信关系的其他节点的丢失与否的信息。
为了清楚的介绍本发明获取节点丢失信息的方法,下面以一个具体的应用场景进行详细的介绍,参见图6,为基于ZigBee协议的一种网络结构示意图,在该网络组成结构中包括网关节点、多个路由节点和多个终端节点,在该网络中任意节点均可以作为数据发送的源节点,则源节点到目的节点的发送路径上的任意节点均可以通过本发明的获取节点丢失信息的方法,在应用层的应用对象中捕获到其下一跳节点的丢失情况信息。
特别的,当网关节点作为发送数据的源节点,并将某叶子节点作为该数据的目的节点时,则可以在一次数据的发送过程中,完成该网关节点到该叶子节点上各个节点丢失情况的检测。其中,叶子节点是指树形网络中处于最底端的节点,该节点没有子节点。如图6中,终端节点1、终端节点2、路由节点4和终端节点3均为叶子节点。图中箭头方向表示数据发送过程中的数据流向。
以图6中的网关节点为发送数据的源节点,终端节点1为该数据的目的节点为例来描述处于路径1中的各个节点中的应用对象中捕获其他节点丢失情况信息的过程。具体包括:
A、首先该网关节点构造目的节点为终端节点1的数据包,并将该数据包作为待发送数据,确定出该待发送数据的下一跳节点为路由节点1,将该待发送数据发送给路由节点,并在确定待发送数据以及进行数据发送的同时启动节点丢失状态检测机制,也就是启动相应的检测节点丢失程序。
B、当该网关节点启动自身的检测机制后,判断在指定时间内ZigBee协议栈底层(本发明中指应用层以下的协议层)是否接收到该路由节点1返回的确认接收到该数据的消息,如果否,则在协议栈底层生成指示该路由节点1丢失的丢失指示消息,并将该丢失指示消息上报给应用层的ZigBee设备对象。之后应用程序从ZigBee设备对象接收到的丢失指示消息中解析出出下一跳节点的网络信息,即路由节点1的网络信息,并Zigbee设备对象中的失步指示函数,将路由节点1的网络信息作为丢失节点信息,并依据丢失节点信息设置该失步指示函数的参数信息生成节点丢失情况报告,进而将该节点丢失情况报告上报给应用对象,以便应用对象捕获到该路由节点1丢失的信息。如果该网关节点的ZigBee协议栈底层在指定时间内接收到该路由节点1返回的确认接收到该数据的消息,则说明路由节点1而处于网络中,路由节点1将进行数据的转发操作,进入步骤C。
C、路由节点1接收到该网关节点的发送的数据,在该路由节点1自身协议栈的网络层中对该数据进行分析,判断出该数据的目的节点不是自身,并确认出该数据的下一跳节点为路由节点2,路由节点1将该数据作为待发送数据,并将该待发送数据发送给路由节点2,并在确定待发送数据以及发送数据的同时开启路由节点1自身的节点丢失检测机制。
D、路由节点1启动自身的节点丢失检测程序后,如果路由节点2丢失,则在路由节点1的协议栈底层不会接收到该路由节点2的返回的确定接收该数据的消息,进而在其协议栈底层生成指示该路由节点2丢失的丢失指示消息,并将该丢失指示消息上报给ZigBee设备对象中,进而调用ZigBee设备对象中的失步指示函数,并将路由节点2的网络信息作为丢失节点的信息,设置该失步指示函数的参数信息得到节点丢失情况报告,并将该节点丢失情况报告上报给应用对象,使得路由节点1的应用层的应用对象捕获到路由节点2的丢失信息。
E、如果路由节点2未丢失,则路由节点2接收到路由节点1发送的数据后,路由节点2将接收到的数据作为待发送数据,分析该数据并确定出下一跳节点为终端节点1,则路由节点2将该数据发送给终端节点1,并启动自身的节点丢失检测机制,来确定终端节点1是否丢失,该过程与路由节点1的应用对象获取路由节点2是否丢失的过程相似,不再赘述。当然,如果终端节点1未丢失,则终端节点1会接收到该路由节点2转发的数据。
由以上步骤A至E可以看出,在网关节点向终端节点1发送数据的过程中,处于图3的路径1中的各个节点在发送或转发数据的过程中,就可以在应用对象中捕获其下一跳节点的丢失情况,无需每个节点单独构造并发送检测数据,节省了数据资源消耗,进而也减少了网络中传输的数据量。
其中,该网关节点发送的数据可以为其构造的查询节点丢失情况的数据,也可以为通讯用的普通数据或报文。当该路径1中的任意节点在应用对象中捕获到其下一跳节点丢失后,该节点都可以根据其应用对象中获取的下一跳节点的信息,将该下一跳节点的丢失情况通知给其他节点。如,路由节点1的应用对象捕获到路由节点2丢失后,该在路由节点1的应用层中构造包含该路由节点2丢失信息的报文,并将该报文发送给网关节点,以便网关节点获取该路由节点2的丢失信息。
在以上的应用场景中是以网关节点向某叶子节点发送数据为例进行介绍的,因此,在网关节点向终端节点1发送数据的过程中,每个节点在应用对象中捕获到的其下一跳节点的丢失信息,均为其子节点的丢失情况信息。也就是说,在以上场景中,各个节点的下一跳节点均为其子节点。
当图6中任意叶子节点向网关节点发送数据时,则在数据的发送路径上,每个节点的下一跳节点均为其父节点。如,路由节点4构造目的节点为网关节点的报文,则该路由节点4发送该报文时,路由节点4的下一跳节点为路由节点4的父节点,即路由节点3,路由节点4在数据发送的过程中可以启动自身的检测节点丢失的程序,如果路由节点3丢失,则在路由节点4的应用对象中也可以捕获到该路由节点3丢失的信息。
当然,本发明获取节点丢失信息的应用并不限于由网关节点向叶子节点发送数据或者是由叶子节点发送数据的过程,任意节点之间发送数据时,处于数据发送路径上的节点均可以在其应用对象中捕获到其下一跳节点的丢失情况信息。如,路由节点2构造目的节点为网关节点的数据并发送,则在该数据发送过程中,如果路由节点1丢失,路由节点2也可以在其应用对象中捕获到该路由节点1的丢失信息。
可以理解的是,本实施例当从该ZigBee设备对象接收到丢失指示消息后,将该下一跳节点作为丢失节点信息上报给应用层的方式有多种,可以根据需要来进行设定。其中一种方式可以通过调用ZigBee设备对象(ZDO,ZigbeeDevice Obiect)中的失步指示函数来完成将该丢失指示消息中包含的丢失节点信息上报给应用对象的操作,该过程可以包括:
当在ZigBee设备对象中接收到丢失指示消息时,调用ZigBee设备对象中的失步指示函数;
将该丢失指示消息中的下一跳节点的网络信息作为丢失节点信息,并依据丢失节点信息设置失步指示函数的参数信息,生成包含丢失节点信息的节点丢失情况报告;
将所述节点丢失情况报告上报给应用框架指定的消息处理接口中,通过该指定的消息处理接口将节点丢失报告中的丢失节点信息上报给应用层的应用对象。
当在ZigBee设备对象(ZDO,Zigbee Device Obiect)接收到网络层上报的丢失指示消息时,调用ZigBee设备对象中的失步指示函数,并将该下一跳的网络信息作为丢失节点信息设置该失步指示函数的参数信息,以生成节点丢失情况报告。通过将该节点丢失情况报告上报到应用框架中指定的任务层进行处理,并将处理后的节点丢失情况报告上报到指定的消息处理接口中,以便可以通过应用框架中的该消息处理接口将该节点丢失情况报告上报给应用对象,从而完成应用对象捕获该丢失节点信息的操作。
其中,在生成节点丢失情况报告后还可以设置该节点丢失情况报告的任务处理标识。与此对应,将节点丢失情况报告上报给应用框架指定的消息处理接口中可以包括:依据该节点丢失情况报告的任务处理标识,将节点丢失情况报告上报给与该任务处理标识对应的消息处理接口中。也就是说,当在ZigBee设备对象中生成节点丢失情况报告后,通过在ZigBee设备对象中设置该节点丢失情况报告的消息ID,并依据该消息ID将该包含丢失节点信息的报告消息发送到应用层操作系统消息队列中,操作系统会负责将该节点丢失情况报告发送到指定层次的接收任务中。
为了清楚的介绍本发明中将ZigBee设备对象(ZDO,Zigbee DeviceObiect)中接收到的丢失指示消息中上报给应用对象的过程,下面一个具体实例进行介绍。参见图7,为将ZDO中获取的丢失指示消息上报给应用对象的流程示意图,其中,调用的失步指示函数具体为调用ZDO中的voidZDO SyncIndicationCB()函数,如,void ZDO SyncIndicationCB(byte type,uint16 shortAddr),并利用该失步指示函数生成节点丢失报告,并上报到应用层,该流程包括:
1、调用void ZDO_SyncIndicationCB(byte type,uint16 shortAddr),并依据丢失指示消息中包含的丢失节点信息设置该失步指示函数的参数信息,生成节点丢失情况报告。
例如,该节点丢失情况报告生成函数的程序代码可以为:
ZDO_NwkChangeCBMsg*msgPtr;
msgPtr=(ZDO_NwkChangeCBMsg*)osal_msg_allocate(sizeof(osal_event_hdr_t)+2);
msgPtr->hdr.event=NWK_STATE_CHANGE;//Command ID
msgPtr->hdr.status=type;
msgPtr->addr=shortAddr;
其中,该函数中包含节点丢失情况报告的消息类型,本节点与丢失节点的通信关系,以及丢失节点的网络地址。其中,该丢失节点即为下一跳节点其中,type值表示本节点与该下一跳节点的通信关系,当type为:0–child时,表示下一跳节点为本节点的子节点;当type为:1–parent时,表示下一跳节点为本节点的原父节点。其中,shortAddr表示下一跳节点的网络地址。
2、将节点丢失情况报告的消息发送给应用层中的应用框架(APP,Application framework)层中的指定任务层。
例如,该步骤的操作代码可以为:
osal_msg_send(NwkChange_TaskID,(byte*)msgPtr);
将消息发送到APP层的NwkChange_TaskID任务层,在操作系统队列中进行处理。在该步骤中可以设置节点丢失情况报告的消息任务ID,依据该消息任务ID将节点丢失情况报告发送到指定任务层。
3、在APP层中设置该节点丢失报告的消息的处理接口,对该消息做进一步处理,以便最终能在应用对象中捕获到该丢失节点信息。
例如,可以将该消息发送到APP层预设的SampleApp_NwkChangCB函数接口来接收该丢失指示消息,进而在该SampleApp_NwkChangCB函数中根据丢失指示消息进行丢失节点的处理。。
关于图7的以上过程适用于本发明任一实施例中将ZigBee设备对象中接收到的丢失节点信息上报给应用对象的操作。
参见图8,示出了本发明一种基于ZigBee协议处理丢失节点的方法实施例4的流程示意图,本实施例的方法包括:
步骤801:在超帧周期内通过介质访问控制层接收原父节点发送的信标,如果在介质访问控制层未收到所述信标,则在介质访问控制层生成指示所述原父节点丢失的丢失指示消息,所述丢失指示消息中包含父节点的网络信息,该网络信息中包含有原父节点与本节点的通信关系。
其中,原父节点也就是本节点的父节点,此处用原父节点是为了当该父节点丢失后,将该原父节点与本节点后续重新确定的父节点相区别。
在信标模式的ZigBee网络中,父节点会周期性的发送信标,以使节点同步和传递网络相关信息,子节点在MAC层中通过捕获父节点信标进行同步,以便在信道中进行数据发送或接收。
正常情况下,只要子节点在父节点的通讯范围内,就能够接收到父节点发送的信标,当在超帧周期内,子节点没有接收到父节点的发送的信标,就表明子节点检测不到父节点的信号,也就是父节点丢失,则该父节点为本节点的原父节点。当本节点(即,子节点)的MAC层在超帧周期内,没有接收到该原父节点发送的信标时,节点会在MAC层中生成丢失指示消息(在本实施例中该丢失指示消息也可以称为失步指示),来指示信标丢失情况。在获取到父节点信标丢失时,在MAC层中会获取该原父节点的网络信息,以便在生成的丢失指示消息中包含该原父节点的网络信息。
其中,该原父节点的网络信息,可以包括:父节点的网络地址,以及该原父节点与本节点的通信关系(即该子节点通过该父节点进入ZigBee网络)。该原父节点的网络信息还可以包括该原父节点信标丢失时间等信息,也可以包含其他信息。当然失步指示中还可以包括该原父节点的其他信息,在此不加以限制。
生成失步指示(丢失指示消息)的过程具体的可以为:当子节点在MAC层未接收到该原父节点的发送的信标,子节点会在MAC层产生一个状态为BEACON_LOST的MLME-SYNC-LOST.indication的失步指示原语,用于向网络层指示信标丢失情况。
步骤802:通过网络层将所述丢失指示消息上报给ZigBee设备对象。
当介质访问控制层生成丢失指示消息后,会将该丢失指示消息上报到介质访问控制层的上层即网络层,由网络层将失步指示报告发送给ZigBee设备对象中,以便在ZigBee设备对象中最终获取到该丢失指示消息中的该原父节点的网络信息。
其中该步骤的过程可以包括:将介质访问控制层生成的失步指示发送到网络层;
在网络层中对MAC层上报的失步指示进行封装处理,并将在网络层封装处理后的失步指示上报给ZigBee设备对象。
将失步指示发送到网络层后,在网络层中会依据ZigBee协议规定对失步指示进行一些封装处理,然后再将封装处理后的失步指示上报到ZigBee设备对象中。具体的封装处理可以为:将所述失步指示发送到网络层,在网络层中依据失步指示生成失步指示报告,该失步指示报告中会包括父节点的网络信息。与失步指示相对应,在失步指示报告中也可以包含父节点的其他信息。
依据失步指示生成失步指示报告的过程可以为:当将MAC层生成的状态为BEACON_LOST的MLME-SYNC-LOST.indication的失步指示原语发送到网络层后,网络层产生一个NLME-SYNC.indication的失步指示报告,以便发送通过该失步指示报告将失步消息上报给应用对象。
步骤803:当检测到所述ZigBee设备对象中接收到丢失指示消息,则通过应用框架中指定的第一消息接口将该丢失指示消息上报给应用对象。
步骤804:根据该应用对象中获取到的丢失节点与本节点的通信关系,确定出丢失节点为本节点的原父节点。
本实施例中是通过本节点是否接收到原父节点发送的信标来确定该原父节点是否丢失,因此,在本实施例中ZigBee设备对象中获取到的丢失节点只能为本节点的原父节点。
步骤804:触发ZigBee设备对象通过孤点方式加入网络。
步骤805:判断本节点是否通过孤点方式成功加入网络,如果是,则结束,如果否,则进入步骤806。
步骤806:触发网络扫描,以确定出本节点对应的潜在父节点。
步骤807:通过ZigBee设备对象向潜在父节点发送网络加入请求,如果在网络层中接收到所述潜在父节点返回的确认接受加入的响应消息,在网络层中建立该潜在父节点与本节点的父子节点关联关系,将所述潜在父节点作为本节点的当前父节点。
步骤808:将该潜在父节点与本节点父节点关联关系信息上报给ZigBee设备对象,以便通过应用框架中预设的第二消息接口潜在父节点与本节点父节点关联关系信息上报给应用对象。
本实施例中还可以通过判断在介质访问控制层未收到原父节点发送的信标,来确定本节点的原父节点是否丢失,并在该原父节点丢失时在介质访问控制层生成指示所述原父节点丢失的丢失指示消息,进而将该丢失指示消息向协议栈高层组成上报,当ZigBee设备对象中接收到该丢失指示消息后,通过应用框架中指定的消息接口将该丢失指示消息上报给应用对象,进而使得应用对象能够即时获知本节点的父节点的丢失情况,进而触发孤点加入或者网络扫描以重新加入网络,进而减少网络中断时间。
对应本发明基于ZigBee协议处理丢失节点的方法,参见图9,示出了本发明一种基于ZigBee协议处理丢失节点的系统实施例1的结构示意图,该系统包括:监测单元910、消息捕获单元920、第一处理单元930、网络加入单元940和第二处理单元950。
该监测单元910,用于对应用层的ZigBee设备对象进行监测。
消息捕获单元920,用于当监测单元检测到所述ZigBee设备对象中接收到丢失指示消息,则通过应用框架中指定的第一消息接口将该丢失指示消息上报给应用对象,其中,该丢失指示消息中包含丢失节点与本节点的通信关系。
其中,该丢失指示消息中包含本节点与丢失节点的通信关系,当然,还可以包含该丢失节点的其他信息,如该丢失节点的网络地址等、丢失节点为路由节点还是终端节点等信息。其中,在本发明中该本节点与丢失节点的通信关系包括:丢失节点为本节点的子节点或者是丢失节点为本节点的父节点。
第一处理单元930,用于当根据应用对象中获取到的所述通信关系确定出所述丢失节点为本节点的原父节点时,则触发网络扫描,以确定出本节点对应的潜在父节点。
网络加入单元940,用于通过ZigBee设备对象向所述潜在父节点发送网络加入请求,如果在网络层中接收到所述潜在父节点返回的确认接受加入的响应消息,则将所述潜在父节点作为本节点的当前父节点。
当第一处理单元确定出本节点可以通过某节点加入网络,即确定出潜在父节点后,则网络加入单元触发通过ZigBee设备对象向该潜在父节点发送网络加入请求。
第二处理单元950,用于当根据应用对象中获取到的所述通信关系确定出所述丢失节点为本节点的原子节点时,则触发所述ZigBee设备对象向所述网络层发送删除该原子节点的请求,以便网络层响应所述删除该原子节点的请求,在网络层中删除该原子节点的信息。
其中,当丢失节点为本节点的原父节点,该第一处理单元需要触发网络扫描,以确定本节点对应的潜在父节点。具体的,该第一处理单元930,可以包括:触发单元、扫描单元、扫描结果上报单元和选择单元。
其中,该触发单元,用于触发所述ZigBee设备对象向网络层发送网络扫描请求。
该扫描单元,用于当在所述网络层接收到该网络扫描请求后,通过所述网络层向介质访问控制层发送网络扫描指示,以指示在所述介质访问控制层执行网络扫描。
该扫描结果上报单元,用于当检测到所述介质访问控制层中完成网络扫描时,通过所述介质访问控制层将扫描结果返回给所述网络层,并由所述网络层将所述扫描结果上报给所述ZigBee设备对象,其中,扫描结果中包含网络中待定父节点的网络信息。
该选择单元,用于根据所述待定父节点的网络信息,从所述待定父节点中选择潜在父节点。
参见图10,示出了本发明一种基于ZigBee协议处理丢失节点的系统实施例2的结构示意图,本实施例的系统与实施例1的不同之处在于:
本实例中该网络加入单元940,具体用于通过ZigBee设备对象向所述潜在父节点发送网络加入请求,当网络层中接收到潜在父节点返回的确定接受接入的响应消息后,在网络层中建立本节点与所述潜在父节点的关联关系,将该潜在父节点作为本节点的当前父节点,并添加该当期父节点的信息。
对应的,本实施例的系统还包括:第一处理信息上报单元960,用于将网络加入单元确定的该父节点信息发送给所述ZigBee设备对象,并通过在应用框架中预设的第二消息接口将该当前父节点信息上报给所述应用对象。
由于当本节点的原父节点丢失时,如果本节点为终端节点,则本节点还可以通过孤点方式加入网络,因此,本实施例中,该第一处理单元930中还可以包括:孤点加入触发单元931,用于触发执行以孤点方式加入网络的操作,以便本节点以孤点方式加入网络,如果以孤点方式加入网络失败时,则触发网络扫描的操作。
另外,为了避免当本节点的原子节点暂时性丢失时,本节点将该原子节点删除,在本实施例中该第二处理单元950,还包括:
判断单元951,用于当判断出该丢失节点为本节点的原子节点时,延迟设定时间后,判断所述原子节点是否丢失,如果是,则执行触发所述ZigBee设备对象向所述网络层发送删除该原子节点的请求。
参见图11,示出了本发明一种基于ZigBee协议处理丢失节点的系统实施例3的结构示意图,本实施例的系统与实施例1和实施例2的不同之处在于:
本实施例中还设置有数据发送单元970和节点丢失检测单元980。
其中,数据发送单元970,用于当需要向其他节点发送数据时,根据待发送数据中的目的节点信息确定下一跳节点,并将所述待发送数据发送给所述下一跳节点。
节点丢失检测单元980,用于根据所述待发送数据的接收状态判断所述下一跳节点是否丢失,当所述下一跳节点丢失时,生成指示所述下一跳节点丢失的丢失指示消息,并将所述丢失指示消息上报给应用层的ZigBee设备对象,所述丢失指示消息中包含所述下一跳节点与本节点的通信关系,该下一跳节点为所述丢失节点。
当节点丢失检测单元将丢失指示消息上报给应用层的ZigBee设备对象后,通过监测单元910可以检测到该ZigBee设备对象中接收到该丢失指示消息,进而执行消息捕获单元的操作。
本实施例在本节点进行数据发送的过程中便可以获取到本节点的子节点或父节点的丢失情况,并通过消息捕获单元将节点丢失信息上报给应用对象,使得应用对象中可以实时获取到节点丢失的情况,进而根据丢失节点与本节点的通信关系触发相应的处理,以减少网络中断,加强网络的稳定性以及对节点丢失的适应性。
另外,本发明中还可以包括丢失节点信息获取单元和丢失节点信息上报单元。
其中,该丢失节点信息获取单元,用于在超帧周期内通过介质访问控制层接收原父节点发送的信标,如果在介质访问控制层未收到所述信标,则在介质访问控制层生成指示所述原父节点丢失的丢失指示消息,所述丢失指示消息中包含所述原父节点与本节点的通信关系。
丢失节点信息上报单元,用于通过网络层将所述丢失指示消息上报给ZigBee设备对象。
如果本节点的父节点丢失,则通过丢失节点信息获取单元在超帧周期内获取到本节点的父节点丢失信息,并通过丢失节点信息上报单元将本节点的原父节点丢失情况上报给ZigBee设备对象,进而通过监测单元检测到ZigBee设备对象中接收到丢失指示消息,由消息捕获单元将该丢失指示消息上报到应用对象,使得应用对象能够实时的获取到本节点的原父节点丢失情况,并触发对父节点丢失情况进行处理,以重新加入网络。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (15)
1.一种基于ZigBee协议处理丢失节点的方法,其特征在于,包括:
对应用层的ZigBee设备对象进行监测;
如果检测到所述ZigBee设备对象中接收到丢失指示消息,则通过应用框架中指定的第一消息接口将该丢失指示消息上报给应用对象,其中,该丢失指示消息中包含丢失节点与本节点的通信关系,所述应用对象为基于ZigBee协议的网络中节点的协议栈高层;
当根据应用对象中获取到的所述通信关系确定出所述丢失节点为本节点的原父节点时,则触发网络扫描,以确定出本节点对应的潜在父节点;
通过ZigBee设备对象向所述潜在父节点发送网络加入请求,如果在网络层中接收到潜在父节点返回的确认接受加入的响应消息,则将该潜在父节点作为本节点的当前父节点;
当根据应用对象中获取到的所述通信关系确定出所述丢失节点为本节点的原子节点时,则触发所述ZigBee设备对象向所述网络层发送删除该原子节点的请求,以便在网络层响应所述删除该原子节点的请求,在网络层中删除该原子节点信息。
2.根据权利要求1所述的方法,其特征在于,所述将该潜在父节点作为本节点的当前父节点,具体包括:
在网络层中建立本节点与该潜在父节点的关联关系,将该潜在父节点作为本节点的当前父节点,并添加该当前父节点信息;
在将潜在父节点作为本节点的当前父节点的同时,还包括:
将该当前父节点信息发送给所述ZigBee设备对象,并通过在应用框架中预设的第二消息接口将该当前父节点信息上报给所述应用对象。
3.根据权利要求1所述的方法,其特征在于,所述触发网络扫描具体包括:
触发所述ZigBee设备对象向网络层发送网络扫描请求;
当在所述网络层接收到该网络扫描请求后,通过所述网络层向介质访问控制层发送网络扫描指示,以指示在所述介质访问控制层执行网络扫描;
当检测到所述介质访问控制层中完成网络扫描时,通过所述介质访问控制层将扫描结果返回给所述网络层,并由所述网络层将所述扫描结果上报给所述ZigBee设备对象,其中扫描结果中包含网络中待定父节点的网络信息;
根据所述待定父节点的网络信息,从所述待定父节点中选择潜在父节点。
4.根据权利要求1所述的方法,其特征在于,所述丢失节点为本节点的原父节点时,触发网络扫描之前,还包括:
触发执行以孤点方式加入网络的操作,以便本节点以孤点方式加入网络;
如果以孤点方式加入网络失败时,则触发网络扫描的操作。
5.根据权利要求1所述的方法,其特征在于,当丢失节点为本节点的原子节点时,在触发所述ZigBee设备对象向所述网络层发送删除该原子节点的请求之前,还包括:
判断所述原子节点是否丢失,如果是,则执行触发所述ZigBee设备对象向所述网络层发送删除该原子节点的请求。
6.根据权利要求1所述的方法,其特征在于,在检测到所述ZigBee设备对象中接收到丢失指示消息之前包括:
当需要向其他节点发送数据时,根据待发送数据中的目的节点信息确定下一跳节点,并将所述待发送数据发送给所述下一跳节点;
根据所述待发送数据的接收状态判断所述下一跳节点是否丢失,当所述下一跳节点丢失时,生成指示所述下一跳节点丢失的丢失指示消息,并将所述丢失指示消息上报给应用层的ZigBee设备对象,所述丢失指示消息中包含所述下一跳节点与本节点的通信关系,该下一跳节点为所述丢失节点。
7.根据权利要求1所述的方法,其特征在于,在检测到所述ZigBee设备对象中接收到丢失指示消息之前包括:
在超帧周期内通过介质访问控制层接收原父节点发送的信标,如果在介质访问控制层未收到所述信标,则在介质访问控制层生成指示所述原父节点丢失的丢失指示消息,所述丢失指示消息中包含所述原父节点与本节点的通信关系;
通过网络层将所述丢失指示消息上报给ZigBee设备对象。
8.根据权利要求1所述的方法,其特征在于,当在网络层中删除该原子节点的关联信息之后,还包括:
将本节点移除所述原子节点的信息通知网关节点。
9.一种基于ZigBee协议处理丢失节点的系统,其特征在于,包括:
监测单元,用于对应用层的ZigBee设备对象进行监测;
消息捕获单元,用于当监测单元检测到所述ZigBee设备对象中接收到丢失指示消息,则通过应用框架中指定的第一消息接口将该丢失指示消息上报给应用对象,其中,该丢失指示消息中包含丢失节点与本节点的通信关系,所述应用对象为基于ZigBee协议的网络中节点的协议栈高层;
第一处理单元,用于当根据应用对象中获取到的所述通信关系确定出所述丢失节点为本节点的原父节点时,则触发网络扫描,以确定出本节点对应的潜在父节点;
网络加入单元,用于通过ZigBee设备对象向所述潜在父节点发送网络加入请求,如果在网络层中接收到潜在父节点返回的确认接受加入的响应消息,则将该潜在父节点作为本节点的当前父节点;
第二处理单元,用于当根据应用对象中获取到的所述通信关系确定出所述丢失节点为本节点的原子节点时,则触发所述ZigBee设备对象向所述网络层发送删除该原子节点的请求,以便网络层响应所述删除该原子节点的请求,在网络层中删除该原子节点信息。
10.根据权利要求9所述的系统,其特征在于,网络加入单元,具体用于通过ZigBee设备对象向所述潜在父节点发送网络加入请求,当网络层中接收到潜在父节点返回的确定接受加入的响应消息后,在网络层中建立本节点与所述潜在父节点的关联关系,将该潜在父节点作为本节点的当前父节点,并添加该当前父节点的信息;
该系统还包括:第一处理信息上报单元,用于将网络加入单元确定的该当前父节点信息发送给所述ZigBee设备对象,并通过在应用框架中预设的第二消息接口将该当前父节点信息上报给所述应用对象。
11.根据权利要求9所述的系统,其特征在于,所述第一处理单元,包括:
触发单元,用于触发所述ZigBee设备对象向网络层发送网络扫描请求;
扫描单元,用于当在所述网络层接收到该网络扫描请求后,通过所述网络层向介质访问控制层发送网络扫描指示,以指示在所述介质访问控制层执行网络扫描;
扫描结果上报单元,用于当检测到所述介质访问控制层中完成网络扫描时,通过所述介质访问控制层将扫描结果返回给所述网络层,并由所述网络层将所述扫描结果上报给所述ZigBee设备对象,其中,扫描结果中包含网络中待定父节点的网络信息;
选择单元,用于根据所述网络信息,从所述待定父节点中选择潜在父节点。
12.根据权利要求9所述的系统,其特征在于,所述第一处理单元,还包括:
孤点加入触发单元,用于触发执行以孤点方式加入网络的操作,以便本节点以孤点方式加入网络,如果以孤点方式加入网络失败时,则触发网络扫描的操作。
13.根据权利要求9所述的系统,其特征在于,第二处理单元,还包括:
判断单元,用于当判断出该丢失节点为本节点的原子节点时,判断所述原子节点是否丢失,如果是,则执行触发所述ZigBee设备对象向所述网络层发送删除该原子节点的请求。
14.根据权利要求9所述的系统,其特征在于,还包括:
数据发送单元,用于当需要向其他节点发送数据时,根据待发送数据中的目的节点信息确定下一跳节点,并将所述待发送数据发送给所述下一跳节点;
节点丢失检测单元,用于根据所述待发送数据的接收状态判断所述下一跳节点是否丢失,当所述下一跳节点丢失时,生成指示所述下一跳节点丢失的丢失指示消息,并将所述丢失指示消息上报给应用层的ZigBee设备对象,所述丢失指示消息中包含所述下一跳节点与本节点的通信关系,该下一跳节点为所述丢失节点。
15.根据权利要求9所述的系统,其特征在于,还包括:
丢失节点信息获取单元,用于在超帧周期内通过介质访问控制层接收原父节点发送的信标,如果在介质访问控制层未收到所述信标,则在介质访问控制层生成指示所述原父节点丢失的丢失指示消息,所述丢失指示消息中包含所述原父节点与本节点的通信关系;
丢失节点信息上报单元,用于通过网络层将所述丢失指示消息上报给ZigBee设备对象。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210147513.6A CN102711159B (zh) | 2012-05-11 | 2012-05-11 | 基于ZigBee协议处理丢失节点的方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210147513.6A CN102711159B (zh) | 2012-05-11 | 2012-05-11 | 基于ZigBee协议处理丢失节点的方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102711159A CN102711159A (zh) | 2012-10-03 |
CN102711159B true CN102711159B (zh) | 2015-09-09 |
Family
ID=46903678
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210147513.6A Active CN102711159B (zh) | 2012-05-11 | 2012-05-11 | 基于ZigBee协议处理丢失节点的方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102711159B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103476053A (zh) * | 2013-09-11 | 2013-12-25 | 四川九洲电器集团有限责任公司 | 一种基于ZigBee网络的故障设备智能退网方法 |
CN106304014B (zh) * | 2015-05-22 | 2019-07-05 | 中国科学院沈阳计算技术研究所有限公司 | 用于减少ZigBee无线传感器网络孤立点的通信方法 |
CN106444640A (zh) * | 2016-11-30 | 2017-02-22 | 南京阿凡达机器人科技有限公司 | 一种机器人内部模块无线组网的系统和方法 |
CN110557802B (zh) * | 2019-07-22 | 2021-02-26 | 华为技术有限公司 | 一种ZigBee终端设备重上线方法及ZigBee终端设备 |
CN110972163A (zh) * | 2019-12-03 | 2020-04-07 | 成都亿佰特电子科技有限公司 | 一种ZigBee终端节点网络管理方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008148410A1 (en) * | 2007-06-06 | 2008-12-11 | Telecom Italia S.P.A. | Method for managing the transfer of information packets across a wireless network and routing nodes implementing it |
CN101588293A (zh) * | 2009-04-24 | 2009-11-25 | 常熟理工学院 | Ad Hoc网络与IPv6网络全IP通信互联系统 |
CN101827416A (zh) * | 2010-04-02 | 2010-09-08 | 华为技术有限公司 | 无线传感器网络中节点切换方法、网络及网络节点 |
WO2010133038A1 (zh) * | 2009-05-22 | 2010-11-25 | 华为技术有限公司 | 信息推送的方法、装置和系统以及获取信息的方法和装置 |
CN102655510A (zh) * | 2012-05-08 | 2012-09-05 | 华中师范大学 | 基于p-tractert源路径发现技术的应用层组播系统 |
-
2012
- 2012-05-11 CN CN201210147513.6A patent/CN102711159B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008148410A1 (en) * | 2007-06-06 | 2008-12-11 | Telecom Italia S.P.A. | Method for managing the transfer of information packets across a wireless network and routing nodes implementing it |
CN101588293A (zh) * | 2009-04-24 | 2009-11-25 | 常熟理工学院 | Ad Hoc网络与IPv6网络全IP通信互联系统 |
WO2010133038A1 (zh) * | 2009-05-22 | 2010-11-25 | 华为技术有限公司 | 信息推送的方法、装置和系统以及获取信息的方法和装置 |
CN101827416A (zh) * | 2010-04-02 | 2010-09-08 | 华为技术有限公司 | 无线传感器网络中节点切换方法、网络及网络节点 |
CN102655510A (zh) * | 2012-05-08 | 2012-09-05 | 华中师范大学 | 基于p-tractert源路径发现技术的应用层组播系统 |
Also Published As
Publication number | Publication date |
---|---|
CN102711159A (zh) | 2012-10-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10715408B2 (en) | Methods and apparatus for capturing and/or using packets to facilitate fault detection | |
CN102711159B (zh) | 基于ZigBee协议处理丢失节点的方法和系统 | |
CN103179599B (zh) | Wlan性能的监控方法、设备及系统 | |
US9456355B2 (en) | Signaling tracing method, apparatus and system | |
Theodorou et al. | Software defined topology control strategies for the internet of things | |
WO2019170210A1 (en) | Communication connection control procedure for supporting and conducting handover | |
CN112512059A (zh) | 网络优化方法、服务器、网络侧设备、系统和存储介质 | |
WO2011150707A1 (zh) | 一种m2m业务中终端状态或事件管理的方法及系统 | |
US10149134B2 (en) | Near field discovery method, user equipment, and storage medium | |
JP3917958B2 (ja) | 移動通信システムにおける中継器遠隔制御システム及びその方法 | |
EP3892026B1 (en) | Node outage determination and reporting in a mesh network | |
WO2023045304A1 (zh) | 组网方法、装置、设备及存储介质 | |
CN107682262B (zh) | 通信路径的处理方法与装置 | |
KR102435334B1 (ko) | 네트워크 시스템의 서비스 가용성을 최대로 보장하기 위한 적응형 bfd 프로토콜과 그 장치 | |
CN111182265B (zh) | 一种视频监控设备级联方法及装置 | |
EP3381220A1 (en) | Method and apparatus for access point to station connection | |
CN101686199B (zh) | 以太网保护系统中控制报文的处理方法、装置及系统 | |
CN103036648A (zh) | 一种capwap报文处理方法及装置 | |
CN104038955B (zh) | 一种移动通信系统中的故障检测及处理的方法及基站 | |
JP6518029B2 (ja) | 管理装置、無線通信システム、無線端末装置および通信制御プログラム | |
CN102523594B (zh) | 基于ZigBee协议获取节点丢失信息的方法和系统 | |
CN111835551A (zh) | 运行通信基础设施中的网络部件和监控实体的方法和设备 | |
CN101938758A (zh) | 用户面连接状态获取方法及装置 | |
CN112040470A (zh) | 一种漫游评估的方法、网络管理设备及接入点设备 | |
CN102497399B (zh) | 基于ZigBee协议获取节点丢失信息的方法和系统 |
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 |