一种判断节点移动的方法和设备与流程

文档序号:18481615发布日期:2019-08-20 23:48阅读:234来源:国知局
一种判断节点移动的方法和设备与流程

本发明涉及无线通信领域,尤其涉及基于网际网络通讯协定第6版IPv6的一种判断节点移动的方法和设备。



背景技术:

针对IPv6(Internet Protocol Version6,网际网络通讯协定第6版)无线传感网因其有限的计算能力和通信能力,IETF(Internet Engineering Task Force,互联网工程任务组)ROLL(Routing Over Low Power and Lossy networks,低功耗有损网络路由)工作组在RFC6550中提出了一种适应于IPV6无线传感网的RPL(IPv6Routing Protocol for Low-Power and Lossy Networks,低功耗有损网络IPv6路由协议)路由机制,但该RPL路由机制是针对静态的IPv6无线传感网络设计的,无法满足IPV6无线传感网在移动场景中的需求。

为了保证RPL路由机制在移动场景下的正确执行,需要解决IPV6无线传感网中节点的移动性问题,文献《Mobility Enhanced RPL For Wireless Sensor NetWork》中提到设计了一个动态的DIS(Destination Oriented Directed Acyclic Graph Information Solicitation,有向五环图请求消息)管理机制用于判断IPV6无线传感网中节点的移动问题。

具体地,所述动态DIS管理机制是通过改变一个节点自身发送DIS消息的发送周期,进而改变该节点的邻居节点回复的DIO(Destination Oriented Directed Acyclic Graph Information Object,有向无环图信息对象)消息的发送周期,使得IPv6无线传感网中的移动节点能够根据网络实际情况及时更新无环图信息,以保持移动节点和网络拓扑的连通。

由于IPv6无线传感网中的节点发生移动时,将引起该节点的Rank值(即该节点到IPv6无线传感网汇聚节点的跳数值,其中,跳数的计算方式是一个节点与另一个节点能够直接进行通信,且不通过其他节点进行通信的计为一跳)、备选父节点集和首选父节点发生改变,因此直接将一个节点的首选父节点改变作为IPv6无线传感网中该节点发生移动的判断标识,也就是说,只要一个节点的首选父节点发生改变,就确定该节点发生了移动。

如图1所示,为IPv6无线传感网的网络拓扑结构示意图。

从图1中可以看出,父节点A连接了三个子节点:B1、B2和B3;节点B1连接了两个子节点:C1和C2,节点B2连接了一个子节点C3,B3连接了两个子节点:C4和C5;节点C1连接了一个子节点D1,节点C2连接了一个子节点D2,节点C3连接了一个子节点D3,节点C4连接了一个子节点D4,C5连接了一个子节点D5。假设D5是一个可以移动的节点,节点D5当前的首选父节点为C5,备选父节点集{A、B1、B2、B3、C1、C2、C3、C4、D1、D2、D3和D4},按照动态DIS管理机制,当节点D5的首选父节点C5发生改变时,则确定节点D5发生移动,但是在IPv6无线传感网中节点C5失效(或者不能工作的情况下)的时候,为了保证网络拓扑中各个节点的连通,节点D5需要选择新的首选父节点,也就意味着节点D5的首选父节点发生变化,但是此时,节点D5也许并没有移动,也就是说首选节点的改变并不能说明节点发生的移动,即简单通过节点的首选父节点的改变来确定节点发生移动,是相当不准确的。

综上所述,亟需一种判断节点移动的方法,用于解决现有技术中判断节点移动所存在的判断准确度低的问题。



技术实现要素:

本发明实施例提供了一种判断节点移动的方法和设备,用于解决现有即使中判断节点移动所存在的判断准确度低的问题。

根据本发明的第一方面,提供了一种判断节点移动的方法,包括:

第一节点在确定自身当前状态出现异常时,广播至少两个接收信号强度指示RSSI请求消息;

第一节点接收第二节点返回的、针对所述第一节点广播的至少两个RSSI请求消息中的至少两个RSSI请求消息分别测量到的信号强度测量值,并

根据接收到的至少两个信号强度测量值,分别计算所述第一节点与所述第二节点之间的至少两个路径损耗值;

所述第一节点在确定至少两个路径损耗值均不相同的所述第二节点的数量大于设定阈值时,判断所述第一节点发生移动。

在第一方面可能的实现方式中,第一种可能的实现方式中,广播至少两个RSSI请求消息,包括:

先后广播至少两次RSSI请求消息,其中,所述RSSI请求消息用于指示接收到所述RSSI请求消息的第二节点对所述RSSI请求消息的信号强度进行测量并返回测量结果。

在第一方面可能的实现方式中,或者,在第一方面的第一种可能的实现方式中,第二种可能的实现方式中,根据接收到的至少两个信号强度测量值,分别计算所述第一节点与所述第二节点之间的至少两个路径损耗值,包括:

根据接收到的至少两个信号强度测量值中的任意一个信号强度测量值,基于该信号强度测量值和该信号强度测量值所针对的RSSI请求消息的发射功率值,计算所述第一节点与所述第二节点之间的一个路径损耗值。

在第一方面可能的实现方式中,或者,在第一方面的第一种可能的实现方式中,或者,在第一方面的第二种可能的实现方式中,第三种可能的实现方式中,所述第一节点在确定得到的至少两个路径损耗值均不相同的所述第二节点的数量大于设定阈值时,判断所述第一节点发生移动,包括:

所述第一节点计算确定至少两个路径损耗值均不相同的所述第二节点的数量与返回信号强度测量值的第二节点的总数的比值;

在计算得到的比值大于设定阈值时,判断所述第一节点发生移动。

在第一方面可能的实现方式中,或者,在第一方面的第一种可能的实现方式中,或者,在第一方面的第二种可能的实现方式中,或者,在第一方面的第三种可能的实现方式中,第四种可能的实现方式中,第一节点确定自身当前状态出现异常,包括:

所述第一节点在检测到的当前的Rank值发生变化时,确定自身当前状态出现异常;或者

所述第一节点在检测到其父节点集发生变化时,确定自身当前状态出现异常;或者

所述第一节点在检测到其首选父节点发生变化时,确定自身当前状态出现异常。

根据本发明的第二方面,提供了一种判断节点移动的设备,包括:

广播模块,用于在确定自身当前状态出现异常时,广播至少两个接收信号强度指示RSSI请求消息;

接收计算模块,用于接收第二节点返回的、针对所述广播模块广播的至少两个RSSI请求消息中的至少两个RSSI请求消息分别测量到的信号强度测量值,并根据接收到的至少两个信号强度测量值,分别计算所述第一节点与所述第二节点之间的至少两个路径损耗值;

判别模块,用于在确定所述接收计算模块得到的至少两个路径损耗值均不相同的所述第二节点的数量大于设定阈值时,判断所述第一节点发生移动。

在第二方面可能的实现方式中,第一种可能的实现方式中,所述广播模块,具体用于先后广播至少两次RSSI请求消息,其中,所述RSSI请求消息用于指示接收到所述RSSI请求消息的第二节点对所述RSSI请求消息的信号强度进行测量并返回测量结果。

在第二方面可能的实现方式中,或者,在第二方面的第一种可能的实现方式中,第二种可能的实现方式中,所述接收计算模块,具体用于根据接收到的至少两个信号强度测量值中的任意一个信号强度测量值,基于该信号强度测量值和该信号强度测量值所针对的RSSI请求消息的发射功率值,计算所述第一节点与所述第二节点之间的一个路径损耗值。

在第二方面可能的实现方式中,或者,在第二方面的第一种可能的实现方式中,或者,在第二方面的第二种可能的实现方式中,第三种可能的实现方式中,所述判别模块,具体用于计算确定至少两个路径损耗值均不相同的所述第二节点的数量与返回信号强度测量值的第二节点的总数的比值;并在计算得到的比值大于设定阈值时,判断所述第一节点发生移动。

在第二方面可能的实现方式中,或者,在第二方面的第一种可能的实现方式中,或者,在第二方面的第二种可能的实现方式中,或者,在第二方面的第三种可能的实现方式中,第四种可能的实现方式中,所述广播模块,具体用于在检测到的当前的Rank值发生变化时,确定自身当前状态出现异常;或者

在检测到其父节点集发生变化时,确定自身当前状态出现异常;或者

在检测到其首选父节点发生变化时,确定自身当前状态出现异常。

根据本发明提供的第三方面,提供了一种节点设备,包括:

信号发射器,用于在确定自身当前状态出现异常时,广播至少两个接收信号强度指示RSSI请求消息;

处理器,用于接收第二节点返回的、针对所述第一节点广播的至少两个RSSI请求消息中的至少两个RSSI请求消息分别测量到的信号强度测量值,并根据接收到的至少两个信号强度测量值,分别计算所述第一节点与所述第二节点之间的至少两个路径损耗值;以及在确定至少两个路径损耗值均不相同的所述第二节点的数量大于设定阈值时,判断所述第一节点发生移动。

在第三方面可能的实现方式中,第一种可能的实现方式中,所述信号发射器,具体用于先后广播至少两次RSSI请求消息,其中,所述RSSI请求消息用于指示接收到所述RSSI请求消息的第二节点对所述RSSI请求消息的信号强度进行测量并返回测量结果。

在第三方面可能的实现方式中,或者,在第三方面的第一种可能的实现方式中,第二种可能的实现方式中,所述处理器,具体用于根据接收到的至少两个信号强度测量值中的任意一个信号强度测量值,基于该信号强度测量值和该信号强度测量值所针对的RSSI请求消息的发射功率值,计算所述第一节点与所述第二节点之间的一个路径损耗值。

在第三方面可能的实现方式中,或者,在第三方面的第一种可能的实现方式中,或者,在第三方面的第二种可能的实现方式中,第三种可能的实现方式中,所述处理器,具体用于计算确定至少两个路径损耗值均不相同的所述第二节点的数量与返回信号强度测量值的第二节点的总数的比值;并在计算得到的比值大于设定阈值时,判断所述第一节点发生移动。

在第三方面可能的实现方式中,或者,在第三方面的第一种可能的实现方式中,或者,在第三方面的第二种可能的实现方式中,或者,在第三方面的第三种可能的实现方式中,第四种可能的实现方式中,所述信号发射器,具体用于在检测到的当前的Rank值发生变化时,确定自身当前状态出现异常;或者

在检测到其父节点集发生变化时,确定自身当前状态出现异常;或者

在检测到其首选父节点发生变化时,确定自身当前状态出现异常。

本发明有益效果如下:

本发明实施例通过第一节点在确定自身异常时,广播至少两个RSSI请求消息,接收第二节点返回的、针对第一节点广播的至少两个RSSI请求消息中的至少两个RSSI请求消息分别测量到的信号强度测量值,并根据接收到的至少两个信号强度测量值,分别计算所述第一节点与所述第二节点之间的至少两个路径损耗值;在确定至少两个路径损耗值均不相同的所述第二节点的数量大于设定阈值时,判断所述第一节点发生移动,这样,不再是单一的依靠节点出现异常作为判断节点移动的唯一条件,而是在节点检测到自身状态出现异常时,进一步判断该节点与自身相邻节点之间通信的信号质量,利用与自身相邻节点之间通信的信号质量发生改变能够及时准确判断出节点是否真正发生移动,提高了判断节点移动的准确度。

附图说明

图1为IPv6无线传感网的网络拓扑结构示意图;

图2为本发明实施例一的一种判断节点移动的方法的流程图;

图3为本发明实施例二的一种判断节点移动的方法的流程示意图;

图4为本发明实施例三的一种判断节点移动的设备的结构示意图;

图5为本发明实施例四的一种节点设备的结构示意图。

具体实施方式

为了实现本发明的目的,本发明实施例提供了一种判断节点移动的方法和设备,通过第一节点在确定自身异常时,广播至少两个RSSI请求消息,接收第二节点返回的、针对第一节点广播的至少两个RSSI请求消息中的至少两个RSSI请求消息分别测量到的信号强度测量值,并根据接收到的至少两个信号强度测量值,分别计算所述第一节点与所述第二节点之间的至少两个路径损耗值;在确定至少两个路径损耗值均不相同的所述第二节点的数量大于设定阈值时,判断所述第一节点发生移动。

这样,不再是单一的依靠节点出现异常作为判断节点移动的唯一条件,而是在节点检测到自身状态出现异常时,进一步判断该节点与自身相邻节点之间通信的信号质量,利用与自身相邻节点之间通信的信号质量之间发生改变,能够及时准确判断出节点是否真正发生移动,提高了判断节点移动的准确度。

需要说明的是,本发明实施例应用在存在有向无环图拓扑结构的网络系统架构中,例如:IPv6网络中,及时确定节点的状态,保持网络拓扑更好的连通性。

下面结合说明书附图对本发明各个实施例进行详细描述。

实施例一:

如图2所示,为本发明实施例一的一种判断节点移动的方法的流程图,所述方法包括:

步骤101:第一节点在确定自身当前状态出现异常时,广播至少两个接收信号强度指示RSSI请求消息。

其中,所述RSSI(Received Signal Strength Indication,接收信号强度指示)请求消息用于指示接收到所述RSSI请求消息的第二节点对所述RSSI请求消息的信号强度进行测量并返回测量结果。

在步骤101中,在IPv6无线传感网中,通过RPL路由机制构建了无环图拓扑网络,第一节点属于该无环图拓扑网络中的一个任意节点。为了能够使无环图拓扑网络中每个节点保持连通性,第一节点周期性地向该第一节点的其他邻居节点(或者第二节点)发送DIS消息,并周期性接收该第一节点的其他邻居节点(或者第二节点)返回的DIO消息,并记录每一次接收该第一节点的其他邻居节点(或者第二节点)返回的DIO消息的时间长度值,例如:5s。

当所述第一节点记录的前后相邻两次接收到该第一节点的其他邻居节点返回的DIO消息的时间长度值相差比较大(例如:第一节点记录的一次接收到的该第一节点的其他邻居节点返回的DIO消息的时间长度值是5s,第一节点相邻的后一次接收到的该第一节点的其他邻居节点返回的DIO消息的时间长度值是15s,则认为前后相邻两次接收到该第一节点的其他邻居节点返回的DIO消息的时间长度值相差比较大)时,确定所述第一节点处于不稳定的环境中,容易出现异常状态。

具体地,所述第一节点确定自身当前状态出现异常的方法包括但不限于以下几种:

第一种方式:

所述第一节点在检测到的当前的Rank值发生改变时,确定自身当前状态出现异常。

具体地,所述第一节点检测当前信号到达无环图拓扑网络的汇聚节点的Rank值,将检测到的当前的Rank值与存储在本地的之前检测的Rank值进行比较,判断检测到的当前的Rank值与存储在本地的之前检测的Rank值是否相同,在确定检测到的当前的Rank值与存储在本地的之前检测的Rank值不相同时,确定自身当前状态出现异常。

由于Rank值表征了所述第一节点与汇聚节点之间信号的跳数,当检测到的Rank值发生变化时,可以表明所述第一节点当前的状态可能出现了异常,即接入无环图拓扑网络的状态发生了异常,位置是否发生了移动,需要做进一步的判断。

第二种方式:

所述第一节点在检测到其父节点集发生变化时,确定自身当前状态出现异常。

需要说明的是,所述第一节点的父节点集是指在无环图拓扑网络中,与所述第一节点的相邻的所有节点的集合;或者与所述第一节点之间信号传输的时长是一跳的所有节点的集合。

具体地,所述第一节点在向所述第一节点相邻的其他节点发送DIS消息之后的一个周期内,确定接收到其他节点返回的DIO消息的数量,当所述第一节点当前接收到其他节点返回的DIO消息的数量小于相邻前一次接收到其他节点返回的DIO消息的数量时,确定所述第一节点的父节点集中的父节点数量减少;当所述第一节点当前接收到其他节点返回的DIO消息的数量大于相邻前一次接收到其他节点返回的DIO消息的数量时,确定所述第一节点的父节点集中的父节点数量增加。

即所述第一节点确定检测到其父节点集发生变化,表明所述第一节点当前的状态可能出现了异常,即接入无环图拓扑网络的状态发生了异常,位置是否发生了移动,需要做进一步的判断。

第三种方式:

所述第一节点在检测到其首选父节点发生变化时,确定自身当前状态出现异常。

具体地,由于IPv6无线传感网中的节点和RPL路由拓扑保持连通性,一旦所述第一节点的首选父节点发生变化,所述第一节点需要调整首选父节点,因此,当所述第一节点在向所述第一节点的首选父节点发送DIS消息后,设定时间周期内没有接收到或者超过设定时间周期接收到所述首选父节点返回的DIO消息,则确定所述首先父节点发生改变,表明所述第一节点当前的状态可能出现了异常,即接入无环图拓扑网络的状态发生了异常,位置是否发生了移动,需要做进一步的判断。

需要说明的是,所述第一节点确定自身当前状态出现异常的方式至少包括上述方式的一种,这里不做其他限定。

所述第一节点在确定当前状态出现异常时,广播至少两个接收信号强度指示RSSI请求消息。

还可以是所述第一节点在确定当前状态出现异常时,广播至少两次接收信号强度指示RSSI请求消息。

可选地,广播的每次/每个RSSI请求消息中携带了广播的RSSI的发射功率值,所述RSSI请求消息中携带RSSI的发射功率值一方面可以使得接收到所述RSSI请求消息的第二节点计算出所述第二节点与所述第一节点之间的路径损耗值;另一方面可以使得接收到所述RSSI请求消息的第二节点确定所述第一节点广播的至少两个所述RSSI请求消息是否是同一个RSSI请求消息。。

需要说明的是,广播至少两个/或者两次RSSI请求消息中携带的RSSI的发射功率可以相同,也可以不同。

所述第一节点在广播RSSI请求消息时,可以是周期性广播;还可以是定时广播;也可以是间隔设定时长广播,这里广播时间不做进一步限制。

所述第一节点广播至少两个接收信号强度指示RSSI请求消息,所述RSSI请求消息用于指示接收到所述RSSI请求消息的第二节点对接收到的广播的所述RSSI请求消息的信号强度进行测量,并向所述第一节点返回测量结果。

可选地,第一节点广播RSSI请求消息的发射功率仅支持距离所述第一节点一跳距离的邻居节点接收到,也就是说第一节点和能够接收到RSSI请求消息的邻居节点之间的距离为一跳距离,这样能够更精确地判断所述第一节点是否发生移动。

步骤102:第一节点接收第二节点返回的、针对所述第一节点广播的至少两个RSSI请求消息中的至少两个RSSI请求消息分别测量到的信号强度测量值。

在步骤102中,由于所述第一节点在广播RSSI请求消息的过程中可能发生了移动,那么针对同一个第二节点接收到所述第一节点广播的所述RSSI请求消息的数量与所述第一节点广播的RSSI请求消息的数量不一定相同,因此,所述第二节点测量能够接收到的所述第一节点广播的所述RSSI请求消息,并将测量到的所述RSSI请求消息的信号强度值返回给所述第一节点。

例如:在第一节点广播RSSI请求消息时,有些节点能够接收到所述第一节点广播的所有RSSI请求消息;而有些节点只能够接收到所述第一节点广播的所述RSSI请求消息的一部分,这都与第一节点是否在移动有关联。

假设所述第一节点在第一时间周期广播一个RSSI请求消息1,在第二时间周期又广播一个RSSI请求消息2,在第三时间周期又广播一个RSSI请求消息3,那么在第一时间周期广播RSSI请求消息1时,能够接收到所述RSSI请求消息1的第二节点对接收到的所述RSSI请求消息1进行测量,并将测量得到的信号强度测量值1返回给所述第一节点;

在第二时间周期广播RSSI请求消息2时,能够接收到所述RSSI请求消息2的第二节点对接收到的所述RSSI请求消息2进行测量,并将测量得到的信号强度测量值2返回给所述第一节点;

在第三时间周期广播RSSI请求消息3时,能够接收到所述RSSI请求消息3的第二节点对接收到的所述RSSI请求消息3进行测量,并将测量得到的信号强度测量值3返回给所述第一节点。

例如:能够接收到的所述RSSI请求消息1的第二节点包括:节点A1、节点A2、节点A3和节点A4,节点A1对接收到的所述RSSI请求消息1进行测量,得到的信号强度测量值为a11,节点A2对接收到的所述RSSI请求消息1进行测量,得到的信号强度测量值为a21,节点A3对接收到的所述RSSI请求消息1进行测量,得到的信号强度测量值为a31,节点A4对接收到的所述RSSI请求消息1进行测量,得到的信号强度测量值为a41;

能够接收到的所述RSSI请求消息2的第二节点包括:节点A2、节点A3、节点A4和节点A5,节点A2对接收到的所述RSSI请求消息2进行测量,得到的信号强度测量值为a22,节点A3对接收到的所述RSSI请求消息2进行测量,得到的信号强度测量值为a32,节点A4对接收到的所述RSSI请求消息2进行测量,得到的信号强度测量值为a42,节点A5对接收到的所述RSSI请求消息2进行测量,得到的信号强度测量值为a52;

能够接收到的所述RSSI请求消息3的第二节点包括:节点A1、节点A2、节点A3和节点A5,节点A1对接收到的所述RSSI请求消息3进行测量,得到的信号强度测量值为a13,节点A2对接收到的所述RSSI请求消息3进行测量,得到的信号强度测量值为a23,节点A3对接收到的所述RSSI请求消息3进行测量,得到的信号强度测量值为a33,节点A5对接收到的所述RSSI请求消息3进行测量,得到的信号强度测量值为a53。

所述第一节点接收第二节点返回的、针对所述第一节点广播的至少两个RSSI请求消息中的RSSI请求消息分别测量到的信号强度测量值,如表1所示,为所述第一节点在广播三个RSSI请求消息后接收到的第二节点返回的信号强度测量值:

表1

由表1中可以看出,第二节点A5没有接收到RSSI请求消息1,第二节点A1没有接收到RSSI请求消息2,第二节点A4没有接收到RSSI请求消息3。

为了评估第一节点与第二节点之间路径损耗,需要第二节点至少接收到所述第一节点广播的两个RSSI请求消息,并对接收到的至少两个RSSI请求消息分别进行测量,得到针对每一个RSSI请求消息测量到的信号强度测量值。

步骤103:所述第一节点根据接收到的至少两个信号强度测量值,分别计算所述第一节点与所述第二节点之间的至少两个路径损耗值。

在步骤103中,所述第一节点根据接收到的所述第二节点返回的至少两个信号强度测量值,分别计算所述第一节点与所述第二节点之间的至少两个路径损耗值。

其中,所述路径损耗值等于信号的发射功率至于接收到该信号的信号强度测量值之间的差值。

具体地,根据接收到的至少两个信号强度测量值中的任意一个信号强度测量值,基于该信号强度测量值和该信号强度测量值所针对的RSSI请求消息的发射功率值,计算所述第一节点与所述第二节点之间的一个路径损耗值。

仍以上述表格中的数据为例,假设所述第一节点接收到第二节点A1返回的信号强度测量值a11和a13,所述第一节点根据接收到的信号强度测量值a11,确定信号强度测量值a11对应的广播的请求消息是RSSI请求消息1,并获取广播RSSI请求消息1的发射功率值b1,那么计算得到的所述第一节点与所述第二节点A1之间的一个路径损耗值为b1-a11之间的差值;

所述第一节点根据接收到的信号强度测量值a13,确定信号强度测量值a13对应的广播的请求消息是RSSI请求消息3,并获取广播RSSI请求消息3的发射功率值b3,那么计算得到的所述第一节点与所述第二节点A1之间的另一个路径损耗值为b3-a13之间的差值。

假设所述第一节点接收到第二节点A2返回的信号强度测量值a21、a22和a23,所述第一节点根据接收到的信号强度测量值a21,确定信号强度测量值a21对应的广播的请求消息是RSSI请求消息1,并获取广播RSSI请求消息1的发射功率值b1,那么计算得到的所述第一节点与所述第二节点A2之间的一个路径损耗值为b1-a21之间的差值;

所述第一节点根据接收到的信号强度测量值a22,确定信号强度测量值a22对应的广播的请求消息是RSSI请求消息2,并获取广播RSSI请求消息2的发射功率值b2,那么计算得到的所述第一节点与所述第二节点A1之间的另一个路径损耗值为b2-a22之间的差值;

所述第一节点根据接收到的信号强度测量值a23,确定信号强度测量值a23对应的广播的请求消息是RSSI请求消息3,并获取广播RSSI请求消息3的发射功率值b3,那么计算得到的所述第一节点与所述第二节点A1之间的另一个路径损耗值为b3-a23之间的差值。

步骤104:所述第一节点在确定至少两个路径损耗值均不相同的所述第二节点的数量大于设定阈值时,判断所述第一节点发生移动。

在步骤104中,针对返回信号强度测量值的任意一个第二节点,所述第一节点利用步骤103中所述的方式计算所述第一节点与每一个第二节点之间的路径损耗值,并针对每一个第二节点执行以下操作:

所述第一节点将计算得到的针对该第二节点的至少两个路径损耗值中任意两个路径损耗值进行比较,判断计算得到的任意两个路径损耗值是否相同;

当比较结果是所述第一节点与所述第二节点之间存在至少两个路径损耗值均不相同时,则确定所述第二节点属于所述第一节点的不稳定节点。

当属于所述第一节点的不稳定节点的第二节点的数量大于设定阈值时,确定所述第一节点发生移动。

或者,所述第一节点判断计算得到的针对一个第二节点的至少两个路径损耗值中任意两个路径损耗值是否相同,并确定判断结果是至少两个路径损耗值均不相同的所述第二节点的数量;

所述第一节点计算确定至少两个路径损耗值均不相同的所述第二节点的数量与返回信号强度测量值的第二节点的总数的比值;

在计算得到的比值大于设定阈值时,判断所述第一节点发生移动。

通过本发明实施例一的方案,第一节点在确定自身异常时,广播至少两个RSSI请求消息,接收第二节点返回的、针对第一节点广播的至少两个RSSI请求消息中的至少两个RSSI请求消息分别测量到的信号强度测量值,并根据接收到的至少两个信号强度测量值,分别计算所述第一节点与所述第二节点之间的至少两个路径损耗值;在确定至少两个路径损耗值均不相同的所述第二节点的数量大于设定阈值时,判断所述第一节点发生移动。

这样,不再是单一的依靠节点出现异常作为判断节点移动的唯一条件,而是在节点检测到自身状态出现异常时,进一步判断该节点与自身相邻节点之间通信的信号质量,利用与自身相邻节点之间通信的信号质量发生改变,能够及时准确判断出节点是否真正发生移动,提高了判断节点移动的准确度。

实施例二:

如图3所示,为本发明实施例二的一种判断节点移动的方法的流程示意图,本发明实施例二是与本发明实施例一在同一构思下的发明,所述方法包括:

步骤201:第一节点在确定自身当前状态出现异常时,连续广播两次接收信号强度指示RSSI请求消息。

其中,每一次广播的所述RSSI请求消息用于指示接收到所述RSSI请求消息的第二节点对所述RSSI请求消息的信号强度进行测量并返回测量结果。

在步骤201中,在IPv6无线传感网中,通过RPL路由机制构建了无环图拓扑网络,第一节点属于该无环图拓扑网络中的一个任意节点。为了能够使无环图拓扑网络中每个节点保持连通性,第一节点周期性地向该第一节点的其他邻居节点(或者第二节点)发送DIS消息,并周期性接收该第一节点的其他邻居节点(或者第二节点)返回的DIO消息,并记录每一次接收该第一节点的其他邻居节点(或者第二节点)返回的DIO消息的时间长度值,例如:5s。

当所述第一节点记录的前后相邻两次接收到该第一节点的其他邻居节点返回的DIO消息的时间长度值相差比较大时,确定所述第一节点处于不稳定的环境中,容易出现异常状态。

具体地,所述第一节点确定自身当前状态出现异常的方法包括但不限于以下几种:

第一种方式:

所述第一节点在检测到的当前的Rank值发生改变时,确定自身当前状态出现异常。

具体地,所述第一节点检测当前信号到达无环图拓扑网络的汇聚节点的Rank值,将检测到的当前的Rank值与存储在本地的之前检测的Rank值进行比较,判断检测到的当前的Rank值与存储在本地的之前检测的Rank值是否相同,在确定检测到的当前的Rank值与存储在本地的之前检测的Rank值不相同时,确定自身当前状态出现异常。

由于Rank值表征了所述第一节点与汇聚节点之间信号的跳数,当检测到Rank值发生变化时,可以表明所述第一节点当前的状态出现了异常,即接入无环图拓扑网络的状态发生了异常,位置是否发生了移动,需要做进一步的判断。

第二种方式:

所述第一节点在检测到其父节点集发生变化时,确定自身当前状态出现异常。

需要说明的是,所述第一节点的父节点集是指在无环图拓扑网络中,与所述第一节点的相邻的所有节点的集合;或者与所述第一节点之间信号传输的时长是一跳的所有节点的集合。

具体地,所述第一节点在向所述第一节点相邻的其他节点发送DIS消息之后的一个周期内,确定接收到其他节点返回的DIO消息的数量,当所述第一节点当前接收到其他节点返回的DIO消息的数量小于相邻前一次接收到其他节点返回的DIO消息的数量时,确定所述第一节点的父节点集中的父节点数量减少;当所述第一节点当前接收到其他节点返回的DIO消息的数量大于相邻前一次接收到其他节点返回的DIO消息的数量时,确定所述第一节点的父节点集中的父节点数量增加。

第三种方式:

所述第一节点在检测到其首选父节点发生变化时,确定自身当前状态出现异常。

具体地,由于IPv6无线传感网中的节点和RPL路由拓扑保持连通性,一旦所述第一节点的首选父节点发生变化,所述第一节点需要调整首选父节点,因此,当所述第一节点在向所述第一节点的首选父节点发送DIS消息后,设定时间周期内没有接收所述首选父节点返回的DIO消息,则确定所述首先父节点发生改变,进而确定当前所述第一节点状态出现异常。

需要说明的是,所述第一节点确定自身当前状态出现异常的方式至少包括上述方式的一种,这里不做其他限定。

所述第一节点在确定当前状态出现异常时,连续广播第一参考信号和广播第二参考信号。

需要说明的是,所述连续广播可以是短时间内广播了两次,还可以是周期性地广播了两次,这里不做限定。

步骤202:所述第一节点先后两次接收第二节点返回的、针对所述第一节点广播的所述RSSI请求消息分别测量到的信号强度测量值。

在步骤202中,所述第二节点接收所述第一节点第一次广播的所述RSSI请求消息,并对接收到所述RSSI请求消息进行测量,得到第一信号强度测量值;

所述第二节点接收所述第一节点第二次广播的所述RSSI请求消息,并对接收到的所述RSSI请求消息进行测量,得到第二信号强度测量值。

所述第二节点将测量得到的所述第一信号强度测量值和所述第二信号强度测量值返回给所述第一节点。

步骤203:所述第一节点根据接收到的所述第一信号强度测量值,计算所述第一节点与所述第二节点之间的第一路径损耗值;并根据接收到的所述第二信号强度测量值,计算所述第一节点与所述第二节点之间的第二路径损耗值。

其中,所述路径损耗值等于信号的发射功率至于接收到该信号的信号强度测量值之间的差值。

所述第一节点根据接收到的第一信号强度测量值,确定第一信号强度测量值对应的广播RSSI请求消息的第一发射功率值,计算得到的所述第一节点与所述第二节点A1之间的第一路径损耗值为第一发射功率值与第一信号强度测量值之间的差值;

所述第一节点根据接收到的第二信号强度测量值,确定第二信号强度测量值对应的广播RSSI请求消息的第二发射功率值,计算得到的所述第一节点与所述第二节点A1之间的第二路径损耗值为第二发射功率值与第二信号强度测量值之间的差值。

同时,所述第一节点接收到其他多个第二节点返回的、针对所述第一节点广播的至少两个RSSI请求消息中的至少两个RSSI请求消息分别测量到的信号强度测量值,并根据接收到的至少两个信号强度测量值,分别计算所述第一节点与所述第二节点之间的至少两个路径损耗值。

步骤204:所述第一节点在确定至少两个路径损耗值均不相同的所述第二节点的数量大于设定阈值时,判断所述第一节点发生移动。

在步骤204中,所述第一节点在得到与所述第二节点之间的第一路径损耗值和第二路径损耗值之后,比较所述第一路径损耗值与所述第二路径损耗值是否相同,并在所述第一路径损耗值与所述第二路径损耗值不相同时,确定所述第一节点相对于第二节点处于不稳定状态。

也就是说,在针对返回信号强度测量值的任意一个第二节点,所述第一节点利用步骤203中所述的方式计算所述第一节点与每一个第二节点之间的路径损耗值,并针对每一个第二节点执行以下操作:

所述第一节点将计算得到的针对该第二节点的至少两个路径损耗值中任意两个路径损耗值进行比较,判断计算得到的任意两个路径损耗值是否相同;

当比较结果是所述第一节点与所述第二节点之间存在至少两个路径损耗值均不相同时,则确定所述第二节点属于所述第一节点的不稳定节点。

当属于所述第一节点的不稳定节点的第二节点的数量大于设定阈值时,确定所述第一节点发生移动。

或者,所述第一节点判断计算得到的针对一个第二节点的至少两个路径损耗值中任意两个路径损耗值是否相同,并确定判断结果是至少两个路径损耗值均不相同的所述第二节点的数量;

所述第一节点计算确定至少两个路径损耗值均不相同的所述第二节点的数量与返回信号强度测量值的第二节点的总数的比值;

在计算得到的比值大于设定阈值时,判断所述第一节点发生移动。

通过本发明实施例二的方案,第一节点在确定自身当前状态出现异常时,连续(或者先后)广播两次RSSI请求消息,接收第二节点返回的、针对第一节点广播的两次RSSI请求消息分别测量到的信号强度测量值,并根据接收到的两个信号强度测量值,分别计算所述第一节点与所述第二节点之间的两个路径损耗值;在确定两个路径损耗值均不相同的所述第二节点的数量大于设定阈值时,判断所述第一节点发生移动。

这样,不再是单一的依靠节点出现异常作为判断节点移动的唯一条件,而是在节点检测到自身状态出现异常时,进一步判断该节点与自身相邻节点之间通信的信号质量,利用节点位置的改变对通信的信号质量的改变原理,能够及时准确判断出节点是否真正发生移动,提高了判断节点移动的准确度。

实施例三:

如图4所示,为本发明实施例三的一种判断节点移动的设备的结构示意图,本发明实施例三是与本发明实施例一和本发明实施例二在同一发明构思下的发明,所述设备包括:广播模块11、接收计算模块12和判别模块13,其中:

广播模块11,用于在确定自身当前状态出现异常时,广播至少两个接收信号强度指示RSSI请求消息;

接收计算模块12,用于接收第二节点返回的、针对所述广播模块广播的至少两个RSSI请求消息中的至少两个RSSI请求消息分别测量到的信号强度测量值,并根据接收到的至少两个信号强度测量值,分别计算所述第一节点与所述第二节点之间的至少两个路径损耗值;

判别模块13,用于在确定所述接收计算模块得到的至少两个路径损耗值均不相同的所述第二节点的数量大于设定阈值时,判断所述第一节点发生移动。

可选地,所述广播模块11,具体用于先后广播至少两次RSSI请求消息,其中,所述RSSI请求消息用于指示接收到所述RSSI请求消息的第二节点对所述RSSI请求消息的信号强度进行测量并返回测量结果。

可选地,所述接收计算模块12,具体用于根据接收到的至少两个信号强度测量值中的任意一个信号强度测量值,基于该信号强度测量值和该信号强度测量值所针对的RSSI请求消息的发射功率值,计算所述第一节点与所述第二节点之间的一个路径损耗值。

可选地,所述判别模块13,具体用于计算确定至少两个路径损耗值均不相同的所述第二节点的数量与返回信号强度测量值的第二节点的总数的比值;并在计算得到的比值大于设定阈值时,判断所述第一节点发生移动。

可选地,所述广播模块11,具体用于在检测到的当前的Rank值发生变化时,确定自身当前状态出现异常;或者

在检测到其父节点集发生变化时,确定自身当前状态出现异常;或者

在检测到其首选父节点发生变化时,确定自身当前状态出现异常。

需要说明的是,本发明实施例三所述的用于判断节点是否发生移动的设备既可以是节点设备中的逻辑部件,也可以是节点设备中的物理实体单元,这里不做限定。

实施例四:

如图5所示,为本发明实施例四的一种节点设备的结构示意图,本发明实施例四是与本发明实施例一和本发明实施例二在同一发明构思下的发明,所述节点设备包括:信号发射器21和处理器22,其中,信号发射器21和处理器22通过总线23连接。具体地,

信号发射器21,用于在确定自身当前状态出现异常时,广播至少两个接收信号强度指示RSSI请求消息;

处理器22,用于接收第二节点返回的、针对所述第一节点广播的至少两个RSSI请求消息中的至少两个RSSI请求消息分别测量到的信号强度测量值,并根据接收到的至少两个信号强度测量值,分别计算所述第一节点与所述第二节点之间的至少两个路径损耗值;以及在确定至少两个路径损耗值均不相同的所述第二节点的数量大于设定阈值时,判断所述第一节点发生移动。

可选地,所述信号发射器21,具体用于先后广播至少两次RSSI请求消息,其中,所述RSSI请求消息用于指示接收到所述RSSI请求消息的第二节点对所述RSSI请求消息的信号强度进行测量并返回测量结果。

可选地,所述处理器22,具体用于根据接收到的至少两个信号强度测量值中的任意一个信号强度测量值,基于该信号强度测量值和该信号强度测量值所针对的RSSI请求消息的发射功率值,计算所述第一节点与所述第二节点之间的一个路径损耗值。

可选地,所述处理器22,具体用于计算确定至少两个路径损耗值均不相同的所述第二节点的数量与返回信号强度测量值的第二节点的总数的比值;并在计算得到的比值大于设定阈值时,判断所述第一节点发生移动。

可选地,所述信号发射器21,具体用于在检测到的当前的Rank值发生变化时,确定自身当前状态出现异常;或者

在检测到其父节点集发生变化时,确定自身当前状态出现异常;或者

在检测到其首选父节点发生变化时,确定自身当前状态出现异常。

需要说明的是,本发明实施例四所述的节点设备既可以是节点设备中的逻辑部件,也可以是节点设备中的物理实体单元,这里不做限定。

本领域的技术人员应明白,本发明的实施例可提供为方法、装置(设备)、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、装置(设备)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1