CN105162699B - 动态路由协议优化方法及系统 - Google Patents
动态路由协议优化方法及系统 Download PDFInfo
- Publication number
- CN105162699B CN105162699B CN201510467713.3A CN201510467713A CN105162699B CN 105162699 B CN105162699 B CN 105162699B CN 201510467713 A CN201510467713 A CN 201510467713A CN 105162699 B CN105162699 B CN 105162699B
- Authority
- CN
- China
- Prior art keywords
- node
- state
- broadcast
- operating status
- gear
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/18—Loop-free operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
- H04L45/023—Delayed use of routing table updates
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及动态路由协议优化方法及系统,当网路中节点满足状态更新触发条件时,节点才会被触发进入运行状态,周期性发送HELLO链路广播信息以及TC广播信息,达到周期性广播和泛洪目的,经过一段时间后节点恢复到休眠状态,停止发送HELLO链路广播信息以及TC广播信息。当节点不满足状态更新触发条件时,节点不会被触发,即处于休眠状态的节点状态不变,处于运行状态的节点经过一段时间后进入休眠状态,处于延时状态的节点经过一段时间后进入休眠状态,即每个节点经过一段时间后均会进入休眠状态,停止发送HELLO链路广播信息以及TC广播信息,避免了大量链路广播和全网泛洪带来的带宽开销和能量损耗。
Description
技术领域
本发明涉及网络传输技术,特别是涉及一种动态路由协议优化方法及系统。
背景技术
在电力系统中,基于AdHoc(自组织网络)的无线MESH网络(无线多跳网络)进行多跳宽带无线传输数据时,具有无中心、自组织、无线传输、共享带宽、多跳路由、动态拓扑等特性,如图1所示。而目前MESH网络功率控制研究主要集中在最优路由路径选择算法上进行优化,通过选择功率消耗最小的路由路径,达到降低整个网络功耗的需求,但是这种优化不改变周期性广播和泛洪的先验式动态路由协议固有机制带来的网络带宽和能量的损耗。
先验式路由协议又称为表驱动路由协议,在先验式路由协议中,无论是否有通信需求,每两个节点之间都预先建立起路由。每个节点都采用周期性的路由分组广播交换路由信息,最终每个节点维护一张最新的路由表。当检测到网络拓扑结构发生变化时,节点在网络中发送更新消息。收到更新消息的节点将更新自己的路由表,以维护准确的路由信息。源节点一旦要发送数据分组,可立即获取指向目的节点的路由。先验式路由协议一般包括邻居节点探测和路由广播两个过程。节点向各通信节点周期性广播HELLO链路广播信息,来实现邻居节点探测,路由广播通常采用泛洪方式向全网扩散。在节点规模较大的MESH组网环境下,网络中每个节点都会通过周期性广播HELLO链路广播信息进行链路侦听和邻居探测,通过每个节点周期性地广播HELLO链路广播信息、TC广播信息以及MID信息等,同时收到TC广播信息和MID信息的节点根据一定条件进行转发使之泛洪到整个网络,以建立整个网络的网络拓扑表。节点在做链路邻居侦听和网络拓扑信息泛洪时需要发送大量周期性HELLO链路广播信息和TC广播信息,大量广播和泛洪会产生大量的带宽和能源的损耗,不利于网络规模的可扩展性,同时也无法满足无线MESH设备低功耗要求。
发明内容
基于此,有必要针对能量消耗以及网络带宽消耗较大的问题,提供一种能减小带宽开销和能量损耗的动态路由协议优化方法及系统。
一种动态路由协议优化方法,包括如下步骤:
判断节点是否满足状态更新触发条件;
若是,则所述节点转入运行状态,发送HELLO链路广播信息以及TC广播信息;
当所述节点转入运行状态的时间达到第一预设时间时,所述节点转入延时状态,发送HELLO链路广播信息以及TC广播信息;
当所述节点转入延时状态的时间达到第二预设时间时,所述节点转入休眠状态,停止发送HELLO链路广播信息以及TC广播信息;
其中,节点发送的所述HELLO链路广播信息和TC广播信息携带节点的状态信息状态标志信息。
本发明还提供一种动态路由协议优化系统,包括:
判断模块,用于判断节点是否满足状态更新触发条件;
转换模块,用于所述判断模块判定节点满足所述状态更新触发条件,则将所述节点转入运行状态;还用于当所述节点转入运行状态的时间达到第一预设时间时,将所述节点转入延时状态;还用于当所述节点转入延时状态的时间达到第二预设时间时,将所述节点转入休眠状态,停止发送HELLO链路广播信息以及TC广播信息;
发送模块,用于所述节点转入运行状态后,发送HELLO链路广播信息以及TC广播信息;还用于所述节点转入延时状态后,发送HELLO链路广播信息以及TC广播信息;其中,节点发送的所述HELLO链路广播信息和TC广播信息携带节点的状态信息状态标志信息。
上述动态路由协议优化方法及系统,通过增加节点状态更新触发条件,当网路中节点满足状态更新触发条件时,节点才会被触发进入运行状态,周期性发送HELLO链路广播信息以及TC广播信息,达到周期性广播和泛洪目的,经过一段时间后节点恢复到休眠状态,停止发送HELLO链路广播信息以及TC广播信息。当节点不满足状态更新触发条件时,节点不会被触发,即处于休眠状态的节点状态不变,处于运行状态的节点经过一段时间后进入延时状态,再经过一段时间后进入休眠状态,处于延时状态的节点经过一段时间后进入休眠状态。每个节点经过一段时间后均会进入休眠状态,停止发送HELLO链路广播信息以及TC广播信息,达到节点收敛状态。通过控制节点周期性广播和泛洪,当节点进入休眠状态后停止广播和泛洪,避免了大量链路广播和全网泛洪带来的带宽开销和能量损耗。
附图说明
图1为基于AdHoc的无线MESH网络结构图;
图2为链路探测图;
图3为选择性泛洪和无选择性泛洪的结构图;
图4为一实施方式的动态路由协议优化方法的流程图;
图5为另一个实施例的动态路由协议优化方法的子流程图;
图6为网路中数据处理流程;
图7为新节点加入时网络中节点状态变化图;
图8为节点的电量档位或流量发送速录档位发生变化时网络中节点状态变化图;
图9为网络中节点移出时其他节点状态变化图;
图10为检测到状态更新触发条件时处于运行状态下的节点状态变化图;
图11为检测到状态更新触发条件时处于延时状态下的节点状态变化图;
图12为检测到状态更新触发条件时处于休眠状态下的节点状态变化图;
图13为一实施方式的动态路由协议优化系统的模块图;
图14为一实施方式的动态路由协议优化系统的子模块图。
具体实施方式
在网络中,节点向各通信节点周期性发送HELLO链路广播信息,来实现邻居节点探测,以建立节点的邻居表,HELLO链路广播信息只在一跳范围内广播,不能被转发。然而TC广播信息可以被转发,根据TC广播信息来获知网络的拓扑结构。通过HELLO链路广播信息进行链路探测过程如图2所示,首先,节点1向节点2发送HELLO链路广播信息,节点2接收到节点1发送的HELLO链路广播信息,节点2将节点1放入自己的邻居节点集中,并将到节点1的链路标记为非对称状态。节点2向节点1发送HELLO链路广播信息时,HELLO链路广播信息包括有节点1是节点2的非对称状态的邻居节点的信息,当节点1收到HELLO链路广播信息时,节点1将在邻居节点集中将节点2的状态更新为对称状态。节点1再次向节点2发送HELLO链路广播信息时,HELLO链路广播信息包括了节点2是节点1的对称状态的邻居节点的信息,当节点2收到该信息HELLO链路广播信息时,节点2在邻居节点集中将节点1的状态更新为对称状态,从而实现邻居节点探测。路由广播通常采用泛洪方式向全网扩散,即通过周期性发送TC广播信息实现泛洪,如图3所示,包括选择性泛洪和无选择性泛洪。
网络中各节点周期性发送HELLO链路广播信息及TC广播信息,会损耗较大的带宽开销和能量,从而通过控制HELLO链路广播信息及TC广播信息来减少带宽开销和能量损耗,即节点经过一段时间后进入到休眠状态,停止发送HELLO链路广播信息及TC广播信息,只有当满足节点状态更新条件时,处于休眠状态的节点才会被触发更新到运行状态,进入运行状态的节点经过一段时间后还是会进入到休眠状态,停止发送HELLO链路广播信息及TC广播信息。
请参阅图4,提供一种实施方式的动态路由协议优化方法,包括如下步骤:
S100:判断节点是否满足状态更新触发条件。
处于网络中的节点包括三种状态,即休眠状态、延时状态以及运行状态,只有当节点满足状态更新触发条件时,节点才会转入到运行状态,处于运行状态的节点经过一定时间会转入到休眠状态,处于休眠状态的节点经过一定时间会转入到延时状态。
若节点满足状态更新触发条件,则执行步骤:
S200:节点转入运行状态,发送HELLO链路广播信息以及TC广播信息。
节点发送的所述HELLO链路广播信息和TC广播信息携带节点的状态标志信息,该状态标志信息指示发送HELLO链路广播信息和TC广播信息的节点所处的状态,例如,当节点处于运行状态时,节点发送的HELLO链路广播信息和TC广播信息携带的状态标志信息为运行状态标志信息,该运行状态标志信息指示该节点处于运行状态,网络中处于休眠节点接收到处于运行状态节点发送的HELLO链路广播信息和TC广播信息后,会被触发转入运行状态。
节点转入运行状态后,通过发送HELLO链路广播信息以及TC广播信息通知网络中其他节点,让网络中其他节点感知到该节点的变化,由于HELLO链路广播信息以及TC广播信息携带节点的状态标志信息,网络中其他节点接收到发送的HELLO链路广播信息以及TC广播信息可知道该节点的状态。网络中其他处于休眠状态的节点接收到处于运行状态的节点发送的HELLO链路广播信息以及TC广播信息后进入运行状态,并进行路由信息更新。
S300:当节点转入运行状态的时间达到第一预设时间时,节点转入延时状态,发送HELLO链路广播信息以及TC广播信息。
当节点处于延时状态时,节点发送的HELLO链路广播信息和TC广播信息携带的状态标志信息为延时状态标志信息,该延时状态标志信息指示该节点处于延时状态,网络中节点接收到处于延时状态节点发送的这些信息后,节点状态不会被触发转变,发送这些信息的目的是为了让网络中其他节点知道其状态,更新路由信息。
节点在转入运行状态后的第一预设时间里会周期性发送HELLO链路广播信息以及TC广播信息,当节点转入运行状态的时间达到第一预设时间时,节点转入延时状态,节点开始收敛。处于延时状态的节点也会通过发送HELLO链路广播信息以及TC广播信息通知网络中其他节点,让网络中其他节点感知到该节点的变化。处于延时状态的节点的HELLO链路广播信息、TC广播信息发送周期与运行状态相同,并将该节点的延时状态标志信息通过HELLO链路广播信息和TC广播信息泛洪扩散到全网,使该节点在网络节点中保存的对应表项超时定时器关闭,以确保网络中节点进入休眠状态时,协议定义的该节点表项不会因为表项超时定时器过期而失效。
处于运行状态节点周期性广播的周期与处于延时状态节点周期性广播的周期虽然是一样,但作用不同,即处于运行状态的节点周期性广播HELLO链路广播信息和TC广播信息,时用于把节点的路由信息通知到网络中每一个节点,并把保存的该节点的路由信息超时时间设定为正常值,具体为2s-5s。处于延时状态的节点发送的HELLO链路广播信息和TC广播信息,不仅用于把节点的路由信息通知到网络中每一个节点,并且通过HELLO链路广播信息和TC广播信息把网络中所有节点保存的该节点的路由信息的超时时间设定永不超时,保证处于延时状态节点进入休眠状态后,保存的该节点的路由信息不会因为超时而删除导致路由丢失。
S400:当节点转入延时状态的时间达到第二预设时间时,节点转入休眠状态,停止发送HELLO链路广播信息以及TC广播信息。
经过第二预设时间,节点从延时状态转入到休眠状态,即节点处于收敛状态,当网络中所有节点都进入到休眠状态后,网路进入收敛状态。处于休眠状态的节点停止发送HELLO链路广播信息和TC广播信息,当网络中所有节点进入休眠状态时,整个网络进入收敛状态,因此极大的提高了大规模组网时网络性能和可扩展性,有利于减少能耗和带宽消耗。处于该状态情况下,检测到状态更新触发条件时,节点才会被触发进入运行状态。
上述动态路由协议优化方法,通过增加节点状态更新触发条件,当网路中节点满足状态更新触发条件时,节点才会被触发进入运行状态,周期性发送HELLO链路广播信息以及TC广播信息,达到周期性广播和泛洪目的,经过一段时间后节点恢复到休眠状态,停止发送HELLO链路广播信息以及TC广播信息。当节点不满足状态更新触发条件时,节点不会被触发,即处于休眠状态的节点状态不变,处于运行状态的节点经过一段时间后进入延时状态,再经过一段时间后进入休眠状态,处于延时状态的节点经过一段时间后进入休眠状态。每个节点经过一段时间后均会进入休眠状态,停止发送HELLO链路广播信息以及TC广播信息,达到节点收敛状态。通过控制节点周期性广播和泛洪,当节点进入休眠状态后停止广播和泛洪,避免了大量链路广播和全网泛洪带来的带宽开销和能量损耗。
在本具体实施例中,第二预设时间为第一预设时间的两倍。通过对时间的这种设置,可以保证节点最后会进入收敛状态。例如,在节点3先进入STOP状态,而节点4还处于RUN状态,处于RUN状态的节点4周期性广播携带运行状态标志信息的HELLO链路广播信息以及TC广播信息。处于STOP状态的节点3收到携带运行状态标志信息后,满足触发条件进入到运行状态。因为运行状态持续时间为第一预设时间,DELAY状态持续时间为第二预设时间,第二预设时间为第一预设时间的两倍,这就保证了节点4和节点3都会先后由运行状态转入到延时状态,最后进入休眠状态,停止发送HELLO链路广播信息以及TC广播信息。
请参阅图5,在其中一个实施例中,判断节点是否满足状态更新触发条件的步骤之前包括步骤:
S110:检测节点向其他节点发送数据的流量发送速率档位;
S120:检测节点的电量档位;
S130:检测是否收到其他处于运行状态的节点发送的HELLO链路广播信息以及TC广播信息。
节点在向其他节点发送数据时,可以检测到节点的流量发送速率档位,通过检测节点的流量发送速率档位的变化可以判定其他节点的工作状况。当检测到节点向其他节点发送数据的流量发送速率为0时,可判定其他节点中存在僵死节点或其他节点中有节点移出。通过检测节点的电量档位,并根据电量档位可决定节点转发数据的工作状态。通过检测其他处于运行状态的节点发送的HELLO链路广播信息以及TC广播信息,结合节点本身的状态,可判定节点是否满足节点状态更新触发条件。上述检测步骤S110、步骤S120以及步骤S130是一直不断循环进行的。
在其中一个实施例中,状态更新触发条件包括下述条件中的任意一种:
处于休眠状态且接收到其他处于运行状态的节点发送的HELLO链路广播信息以及TC广播信息;
处于休眠状态且向其他节点发送数据的流量发送速率档位发生变化;
处于休眠状态且电量档位发生变化。
当节点接收到其他处于运行状态的节点发送的HELLO链路广播信息以及TC广播信息,说明存在节点状态更新触发的条件,然而,只有同时满足节点处于休眠状态时,才会满足节点状态更新触发条件,触发休眠状态的节点转入运行状态,经过一段时间又恢复到休眠状态。若节点接收到了其他处于运行状态的节点发送的HELLO链路广播信息以及TC广播信息,但是节点处于延时状态或运行状态,节点仍然不满足节点状态更新触发条件,处于延时状态或处于运行状态的节点会经过一段时间后进入到休眠状态。
当节点向其他节点发送数据的流量发送速率档位发生变化,说明存在节点状态更新触发的条件,然而,只有同时满足节点处于休眠状态时,才会满足节点状态更新触发条件,触发休眠状态的节点转入运行状态,经过一段时间又恢复到休眠状态。
当节点的电量档位发生变化,说明存在节点状态更新触发的条件,然而,只有同时满足节点处于休眠状态时,才会满足节点状态更新触发条件,触发休眠状态的节点转入运行状态,经过一段时间又恢复到休眠状态。
在其中一个实施例中,其他处于运行状态的节点包括加入网络的新节点或网络中从休眠状态转入运行状态的节点。
当新节点加入到网络进入运行状态,并开始通过发送HELLO链路广播信息以及TC广播信息通知网络中的节点,网络中其他处于休眠状态的节点收到通知后进入运行状态,并进行路由信息更新。邻居节点在接收到新节点发送的通知后,处于休眠状态的邻居节点转入运行状态,然而,非邻居节点不能直接接收到新节点发送的通知,只有通过新节点的邻居节点从休眠状态转入运行状态后发送HELLO链路广播信息以及TC广播信息通知上述邻居节点的邻居节点,这样逐跳通知其他节点,从而将通知泛洪至整个网络。当处于休眠状态的节点的流量发送速率发生变化,进入运行状态后,也会发送HELLO链路广播信息以及TC广播信息,网络中处于休眠节点接收到该信息后,同样也会转入运行状态。当处于休眠状态的节点的电量档位发生变化,进入运行状态后,也会发送HELLO链路广播信息以及TC广播信息,网络中处于休眠节点接收到该信息后,同样也会转入运行状态。
在其中一个实施例中,节点向其他节点发送数据的流量发送速率档位包括第一速率档位、第二速率档位以及第三速率档位;第一速率档位对应流量发送速率为大于或等于预设速率,第二速率档位对应流量发送速率为大于0且小于预设速率,第三速率档位对应流量发送速率为0。当网络中有节点移出或网络中出现失效节点,向移出的节点发送数据的流量发送速率档位或向失效的节点发送数据的流量发送速率档位变为第三速率档位。
当某个节点移出网络或某个节点失效,网络中处于休眠状态的节点向该移出的节点或失效节点发送数据时,会检测到流量发送速率档位发生变化,向该移出节点或失效节点的流量发送速率档位变为第三速率档位,即流量发送速率为0,这时,该处于休眠状态的节点进入运行状态,并通知网络中其他处于休眠状态的节点,接收到通知的网络中其他处于休眠状态的节点进入运行状态,并更新路由信息。其中,失效节点表示该节点不能再进行数据传输,即该节点已僵死。向移出节点或失效节点发送数据的节点的发送速率档位降为零,从而快速触发路由信息更新到整个网络拓扑,从而把保存在网络节点中的移出节点或失效节点路由信息删除。例如,节点1向节点2发送流量,速度在第一速率档或第二速率档,而节点2突然奔溃,节点2移出网络或节点2僵死,这时节点1检测到节点2的速率降到0,这时满足节点1的触发条件,唤醒整个网络中处于休眠状态的节点进入运行状态,并发送HELLO广播信息和TC广播信息,更新节点的路由信息。根据发送数据的流量发送速率档位的变化,可及时知道网络中的僵死节点或移出节点。
当网络中有节点出现故障,向故障节点发送数据的流量发送速率档位变为第二速率档位;向正常节点发送数据的流量发送速率档位变为第一速率档位。当网络中有节点出现故障,但是该节点还能进行数据传输,只是数据传输速度较慢,向该节点发送数据的流量发送速率档位变为第二速率档位。而向能正常进行通信的节点发送数据的流量发送速率档位处于第一速率档位,正常进行数据传输。
在其中一个实施例中,节点的电量档位包括第一电量档位、第二电量档位以及第三电量档位;第一电量档位对应电量为大于或等于第一电量阈值,第二电量档位对应电量为大于或等于第二电量阈值,且小于第一电量阈值,第三电量档位对应电量为小于第二电量阈值。
在本具体实施例中,根据电量档位,控制节点转发数据,第一电量阈值为1230,当节点的电量大于或等于1230时,节点的电量处于第一电量档位,此时,支持视频和传感器数据的转发,且支持视频和存储在节点本地的传感器数据发送。第二电量阈值为1210,当节点的电量大于或等于1210,且小于1230时,节点的电量处于第二电量档位,此时,不支持视频和传感器数据的转发,支持视频和存储在节点本地的传感器数据发送。当节点的电量小于1210时,节点的电量处于第三电量档位,此时,不支持视频和传感器数据的转发,不支持视频和存储在节点本地的传感器数据发送,支持管理和控制命令的收发,例如,支持telnet、ping命令等的收发,telnet命令一种远程登录命令,ping命令是DOS(Disk OperatingSystem,磁盘操作系统)命令。
下面以具体实施例对上述基于状态模型的动态路由协议优化方法进行简单说明。
请参阅图6,其中实线箭头表示处理流程,虚线箭头表示更新相应信息表。处于非休眠状态的节点通过定时发送HELLO链路广播信息、TC广播信息以及MID消息,当其他节点接收到该消息后会判断消息类型,根据判断结果进行下一步处理。即当消息为TC广播消息时,对TC广播消息进行处理,根据TC广播消息更新拓扑信息表,并将TC广播消息转发给邻居节点。当节点接收到的消息为MID消息时,对MID消息进行处理,根据MID消息更新多接口相关信息表,并将MID信息转发给邻居节点。当消息为HELLO链路广播消息时,首先,进行链路检测,即检测两个节点之间的链路情况,并更新本地链路信息表。然后,计算节点的一跳邻居,更新一跳邻居信息表,再计算节点的二跳邻居,更新二跳邻居信息表。推选MPR(MultiPoint Relay,多点中继站),通过MPR节点转发TC广播信息,更新MPR信息表。再计算MPR Selector,被邻居选为MPR的节点需要周期性地向网络广播信息,信息中包括了把它选为MPR的节点的信息(MPR Selector),并更新MPR Selector信息表。通过路由计算,选择最短的路由路径,并更新路由表。
请参阅图7、8和图9,当有新节点加入网络中、网络中有节点电量档位或流量发送速率档位发生变化以及有节点移出,网络进入状态2。这时网络中各个节点通过发送HELLO链路广播信息和TC广播信息,使网络中所有节点感知到变化,从而使网络中休眠状体的节点重新启动链路广播和网络拓扑信息泛洪,并重启协议定义的相应网络节点表项超时定时器,以充分交换路由信息并进行路由计算。在状态2中,运行状态的节点和延时状态的节点可以共存。
经过一定时间后,网络进入状态3。各个节点充分交换路由信息并完成路由计算后,同时通过HELLO链路广播信息和TC广播信息泛洪,停止保存在网络节点中由协议定义的对应节点表项的超时定时器,以确保网络中节点进入休眠状态时,协议定义的该节点表项不会因为表项超时定时器过期而失效。当节点移出网络,网络中其他节点保存的该节点对应表项因为定时器超时而失效。在状态3中,处于延时状态的节点和处于休眠状态的节点可以共存。
经过一定时间后,网络进入状态1,又称为收敛状态。网络中各个节点路由信息已经交换充分,并且已经通过周期性广播和泛洪停止了网络节点中保存的所有节点表项的超时定时器,同时停止发送HELLO链路广播信息和TC广播信息,在该状态中,网络中的节点只有极少的信息交换,不再发送HELLO链路广播信息和TC广播信息。
网络中节点在不同状态下检测到触发条件时,节点状态转换过程如图10、11和图12所示。节点在不同状态检测到触发条件时,网络中每个节点经过一定时间都会收敛到休眠状态。如图10所示,被触发节点A在运行状态时检测到触发条件,即有接收到运行状态的触发源节点B发送HELLO链路广播信息和TC广播信息,然而,A是继续保持运行状态,直到A进入运行状态的时间达到第一预设时间T后,进入延时状态,再经过第二预设时间2T时间后,进入休眠状态。触发源节点B同样经过第一预设时间T的运行状态后进入延时状态,经过第二预设时间2T的延时状态后,最终进入休眠状态。
如图11所示,被触发节点A在延时状态时检测到触发条件,即有接收到运行状态的触发源节点C发送HELLO链路广播信息和TC广播信息,然而,A是继续保持延时状态,进入延时状态的时间达到第二预设时间2T时间后,进入休眠状态。触发源节点C同样经过第一预设时间T的运行状态后进入延时状态,经过第二预设时间2T的延时状态后,最终进入休眠状态。
如图12所示,被触发节点A在延时状态时检测到触发条件,即有接收到运行状态的触发源节点D发送HELLO链路广播信息和TC广播信息,然而,A是继续保持延时状态,进入延时状态的时间达到第二预设时间2T时间后,进入休眠状态。在A进入休眠状态后,触发源节点D还处在运行状态,A能接收到D发送的HELLO链路广播信息和TC广播信息,此时,处于休眠状态的A被触发进入运行状态,A再经过一定时间回到休眠状态。触发源节点D同样经过第一预设时间T的运行状态后进入延时状态,经过第二预设时间2T的延时状态后,最终进入休眠状态。
请参阅图13,提供一种实施方式的动态路由协议优化系统,包括:
判断模块200,用于判断节点是否满足状态更新触发条件。
处于网络中的节点包括三种状态,即休眠状态、延时状态以及运行状态,只有当节点满足状态更新触发条件时,节点才会转入到运行状态,处于运行状态的节点经过一定时间会转入到休眠状态,处于休眠状态的节点经过一定时间会转入到延时状态。
转换模块400,用于所述判断模块判定节点满足所述状态更新触发条件,则将所述节点转入运行状态;还用于当所述节点转入运行状态的时间达到第一预设时间时,将所述节点转入延时状态;还用于当所述节点转入延时状态的时间达到第二预设时间时,将所述节点转入休眠状态,停止发送HELLO链路广播信息以及TC广播信息。
发送模块800,用于所述节点转入运行状态后,发送HELLO链路广播信息以及TC广播信息;还用于所述节点转入延时状态后,发送HELLO链路广播信息以及TC广播信息;其中,节点发送的所述HELLO链路广播信息和TC广播信息携带节点状态标志信息。
节点发送的所述HELLO链路广播信息和TC广播信息携带节点的状态标志信息,该状态标志信息指示发送HELLO链路广播信息和TC广播信息的节点所处的状态,例如,当节点处于运行状态时,节点发送的HELLO链路广播信息和TC广播信息携带的状态标志信息为运行状态标志信息,该运行状态标志信息指示该节点处于运行状态,网络中处于休眠节点接收到处于运行状态节点发送的HELLO链路广播信息和TC广播信息后,会被触发转入运行状态。
节点转入运行状态后,通过发送HELLO链路广播信息以及TC广播信息通知网络中其他节点,让网络中其他节点感知到该节点的变化,由于HELLO链路广播信息以及TC广播信息携带节点的状态标志信息,网络中其他节点接收到发送的HELLO链路广播信息以及TC广播信息可知道该节点的状态。网络中其他处于休眠状态的节点接收到处于运行状态的节点发送的HELLO链路广播信息以及TC广播信息后进入运行状态,并进行路由信息更新。
当节点处于延时状态时,节点发送的HELLO链路广播信息和TC广播信息携带的状态标志信息为延时状态标志信息,该延时状态标志信息指示该节点处于延时状态,网络中节点接收到处于延时状态节点发送的这些信息后,节点状态不会被触发转变,发送这些信息的目的是为了让网络中其他节点知道其状态,更新路由信息。
节点在转入运行状态后的第一预设时间里会周期性发送HELLO链路广播信息以及TC广播信息,当节点转入运行状态的时间达到第一预设时间时,节点转入延时状态,节点开始收敛。处于延时状态的节点也会通过发送HELLO链路广播信息以及TC广播信息通知网络中其他节点,让网络中其他节点感知到该节点的变化。处于延时状态的节点的HELLO链路广播信息、TC广播信息发送周期与运行状态相同,并将该节点的延时状态标志信息通过HELLO链路广播信息和TC广播信息泛洪扩散到全网,使该节点在网络节点中保存的对应表项超时定时器关闭,以确保网络中节点进入休眠状态时,协议定义的该节点表项不会因为表项超时定时器过期而失效。
处于运行状态节点周期性广播的周期与处于延时状态节点周期性广播的周期虽然是一样,但作用不同,即处于运行状态的节点周期性广播HELLO链路广播信息和TC广播信息,时用于把节点的路由信息通知到网络中每一个节点,并把保存的该节点的路由信息超时时间设定为正常值,具体为2s-5s。处于延时状态的节点发送的HELLO链路广播信息和TC广播信息,不仅用于把节点的路由信息通知到网络中每一个节点,并且通过HELLO链路广播信息和TC广播信息把网络中所有节点保存的该节点的路由信息的超时时间设定永不超时,保证处于延时状态节点进入休眠状态后,保存的该节点的路由信息不会因为超时而删除导致路由丢失。
经过第二预设时间,节点从延时状态转入到休眠状态,即节点处于收敛状态,当网络中所有节点都进入到休眠状态后,网路进入收敛状态。处于休眠状态的节点停止发送HELLO链路广播信息和TC广播信息,当网络中所有节点进入休眠状态时,整个网络进入收敛状态,因此极大的提高了大规模组网时网络性能和可扩展性,有利于减少能耗和带宽消耗。处于该状态情况下,检测到状态更新触发条件时,节点才会被触发进入运行状态。
上述动态路由协议优化系统,通过增加节点状态更新触发条件,当网路中节点满足状态更新触发条件时,节点才会被触发进入运行状态,周期性发送HELLO链路广播信息以及TC广播信息,达到周期性广播和泛洪目的,经过一段时间后节点恢复到休眠状态,停止发送HELLO链路广播信息以及TC广播信息。当节点不满足状态更新触发条件时,节点不会被触发,即处于休眠状态的节点状态不变,处于运行状态的节点经过一段时间后进入延时状态,再经过一段时间后进入休眠状态,处于延时状态的节点经过一段时间后进入休眠状态。每个节点经过一段时间后均会进入休眠状态,停止发送HELLO链路广播信息以及TC广播信息,达到节点收敛状态。通过控制节点周期性广播和泛洪,当节点进入休眠状态后停止广播和泛洪,避免了大量链路广播和全网泛洪带来的带宽开销和能量损耗。
在本具体实施例中,第二预设时间为第一预设时间的两倍。通过对时间的这种设置,可以保证节点最后会进入收敛状态。例如,在节点3先进入STOP状态,而节点4还处于RUN状态,处于RUN状态的节点4周期性广播携带运行状态标志信息的HELLO链路广播信息以及TC广播信息。处于STOP状态的节点3收到携带运行状态标志信息后,满足触发条件进入到运行状态。因为运行状态持续时间为第一预设时间,DELAY状态持续时间为第二预设时间,第二预设时间为第一预设时间的两倍,这就保证了节点4和节点3都会先后由运行状态转入到延时状态,最后进入休眠状态,停止发送HELLO链路广播信息以及TC广播信息。
请参阅图14,在其中一个实施例中,上述动态路由协议优化系统还包括:
第一检测模块120,用于检测节点向其他节点发送数据的流量发送速率档位。
第二检测模块140,用于检测节点的电量档位。
第三检测模块160,用于检测是否收到其他处于运行状态的节点发送的HELLO链路广播信息以及TC广播信息。
节点在向其他节点发送数据时,可以检测到节点的流量发送速率档位,通过检测节点的流量发送速率档位的变化可以判定其他节点的工作状况。当检测到节点向其他节点发送数据的流量发送速率为0时,可判定其他节点中存在僵死节点或其他节点中有节点移出。通过检测节点的电量档位,并根据电量档位可决定节点转发数据的工作状态。通过检测是否收到其他处于运行状态的节点发送的HELLO链路广播信息以及TC广播信息,结合节点本身的状态,可判定节点是否满足节点状态更新触发条件,且上述检测过程是一直不断循环进行的。
在其中一个实施例中,所述状态更新触发条件包括下述条件中的任意一种:
处于休眠状态且接收到其他处于运行状态的节点发送的HELLO链路广播信息以及TC广播信息;
处于休眠状态且向其他节点发送数据的流量发送速率档位发生变化;
处于休眠状态且电量档位发生变化。
当节点接收到其他处于运行状态的节点发送的HELLO链路广播信息以及TC广播信息,说明存在节点状态更新触发的条件,然而,只有同时满足节点处于休眠状态时,才会满足节点状态更新触发条件,触发休眠状态的节点转入运行状态,经过一段时间又恢复到休眠状态。若节点接收到了其他处于运行状态的节点发送的HELLO链路广播信息以及TC广播信息,但是节点处于延时状态或运行状态,节点仍然不满足节点状态更新触发条件,处于延时状态或处于运行状态的节点会经过一段时间后进入到休眠状态。
当节点向其他节点发送数据的流量发送速率档位发生变化,说明存在节点状态更新触发的条件,然而,只有同时满足节点处于休眠状态时,才会满足节点状态更新触发条件,触发休眠状态的节点转入运行状态,经过一段时间又恢复到休眠状态。
当节点的电量档位发生变化,说明存在节点状态更新触发的条件,然而,只有同时满足节点处于休眠状态时,才会满足节点状态更新触发条件,触发休眠状态的节点转入运行状态,经过一段时间又恢复到休眠状态。
在其中一个实施例中,所述其他处于运行状态的节点包括加入网络的新节点或网络中从休眠状态转入运行状态的节点。
当新节点加入到网络进入运行状态,并开始通过发送HELLO链路广播信息以及TC广播信息通知网络中的节点,网络中其他处于休眠状态的节点收到通知后进入运行状态,并进行路由信息更新。邻居节点在接收到新节点发送的通知后,处于休眠状态的邻居节点转入运行状态,然而,非邻居节点不能直接接收到新节点发送的通知,只有通过新节点的邻居节点从休眠状态转入运行状态后发送HELLO链路广播信息以及TC广播信息通知上述邻居节点的邻居节点,这样逐跳通知其他节点,从而将通知泛洪至整个网络。当处于休眠状态的节点的流量发送速率发生变化,进入运行状态后,也会发送HELLO链路广播信息以及TC广播信息,网络中处于休眠节点接收到该信息后,同样也会转入运行状态。当处于休眠状态的节点的电量档位发生变化,进入运行状态后,也会发送HELLO链路广播信息以及TC广播信息,网络中处于休眠节点接收到该信息后,同样也会转入运行状态。
在其中一个实施例中,所述节点向其他节点发送数据的流量发送速率档位包括第一速率档位、第二速率档位以及第三速率档位;所述第一速率档位对应流量发送速率为大于或等于预设速率,所述第二速率档位对应流量发送速率为大于0且小于所述预设速率,所述第三速率档位对应流量发送速率为0。
当某个节点移出网络或某个节点失效,网络中处于休眠状态的节点向该移出的节点或失效节点发送数据时,会检测到流量发送速率档位发生变化,向该移出节点或失效节点的流量发送速率档位变为第三速率档位,即流量发送速率为0,这时,该处于休眠状态的节点进入运行状态,并通知网络中其他处于休眠状态的节点,接收到通知的网络中其他处于休眠状态的节点进入运行状态,并更新路由信息。其中,失效节点表示该节点不能再进行数据传输,即该节点已僵死。向移出节点或失效节点发送数据的节点的发送速率档位降为零,从而快速触发路由信息更新到整个网络拓扑,从而把保存在网络节点中的移出节点或失效节点路由信息删除。例如,节点1向节点2发送流量,速度在第一速率档或第二速率档,而节点2突然奔溃,节点2移出网络或节点2僵死,这时节点1检测到节点2的速率降到0,这时满足节点1的触发条件,唤醒整个网络中处于休眠状态的节点进入运行状态,并发送HELLO广播信息和TC广播信息,更新节点的路由信息。根据发送数据的流量发送速率档位的变化,可及时知道网络中的僵死节点或移出节点。
当网络中有节点出现故障,向故障节点发送数据的流量发送速率档位变为第二速率档位;向正常节点发送数据的流量发送速率档位变为第一速率档位。当网络中有节点出现故障,但是该节点还能进行数据传输,只是数据传输速度较慢,向该节点发送数据的流量发送速率档位变为第二速率档位。而向能正常进行通信的节点发送数据的流量发送速率档位处于第一速率档位,正常进行数据传输。
在其中一个实施例中,节点的电量档位包括第一电量档位、第二电量档位以及第三电量档位;第一电量档位对应电量为大于或等于第一电量阈值,第二电量档位对应电量为大于或等于第二电量阈值,且小于第一电量阈值,第三电量档位对应电量为小于第二电量阈值。
在本具体实施例中,根据电量档位,控制节点转发数据,第一电量阈值为1230,当节点的电量大于或等于1230时,节点的电量处于第一电量档位,此时,支持视频和传感器数据的转发,且支持视频和存储在节点本地的传感器数据发送。第二电量阈值为1210,当节点的电量大于或等于1210,且小于1230时,节点的电量处于第二电量档位,此时,不支持视频和传感器数据的转发,支持视频和存储在节点本地的传感器数据发送。当节点的电量小于1210时,节点的电量处于第三电量档位,此时,不支持视频和传感器数据的转发,不支持视频和存储在节点本地的传感器数据发送,支持管理和控制命令的收发,例如,支持telnet、ping命令等的收发,telnet命令一种远程登录命令,ping命令是DOS(Disk OperatingSystem,磁盘操作系统)命令。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (8)
1.一种动态路由协议优化方法,其特征在于,包括如下步骤:
判断节点是否满足状态更新触发条件;
若是,则所述节点转入运行状态,发送HELLO链路广播信息以及TC广播信息;
当所述节点转入运行状态的时间达到第一预设时间时,所述节点转入延时状态,发送HELLO链路广播信息以及TC广播信息;
当所述节点转入延时状态的时间达到第二预设时间时,所述节点转入休眠状态,停止发送HELLO链路广播信息以及TC广播信息;
其中,节点发送的所述HELLO链路广播信息和TC广播信息携带节点的状态标志信息;
所述状态更新触发条件包括下述条件中的任意一种:
处于休眠状态且接收到其他处于运行状态的节点发送的HELLO链路广播信息以及TC广播信息;
处于休眠状态且向其他节点发送数据的流量发送速率档位发生变化;
处于休眠状态且电量档位发生变化。
2.根据权利要求1所述的动态路由协议优化方法,其特征在于,所述判断节点是否满足状态更新触发条件的步骤之前包括步骤:
检测节点向其他节点发送数据的流量发送速率档位;
检测节点的电量档位;
检测是否收到其他处于运行状态的节点发送的HELLO链路广播信息以及TC广播信息。
3.根据权利要求1或2所述的动态路由协议优化方法,其特征在于,所述其他处于运行状态的节点包括加入网络的新节点或网络中从休眠状态转入运行状态的节点。
4.根据权利要求1或2所述的动态路由协议优化方法,其特征在于,所述节点向其他节点发送数据的流量发送速率档位包括第一速率档位、第二速率档位以及第三速率档位;所述第一速率档位对应流量发送速率为大于或等于预设速率,所述第二速率档位对应流量发送速率为大于0且小于所述预设速率,所述第三速率档位对应流量发送速率为0。
5.一种动态路由协议优化系统,其特征在于,包括:
判断模块,用于判断节点是否满足状态更新触发条件;
转换模块,用于所述判断模块判定节点满足所述状态更新触发条件,则将所述节点转入运行状态;还用于当所述节点转入运行状态的时间达到第一预设时间时,将所述节点转入延时状态;还用于当所述节点转入延时状态的时间达到第二预设时间时,将所述节点转入休眠状态,停止发送HELLO链路广播信息以及TC广播信息;
发送模块,用于所述节点转入运行状态后,发送HELLO链路广播信息以及TC广播信息;还用于所述节点转入延时状态后,发送HELLO链路广播信息以及TC广播信息;其中,节点发送的所述HELLO链路广播信息和TC广播信息携带节点的状态标志信息;
所述状态更新触发条件包括下述条件中的任意一种:
处于休眠状态且接收到其他处于运行状态的节点发送的HELLO链路广播信息以及TC广播信息;
处于休眠状态且向其他节点发送数据的流量发送速率档位发生变化;
处于休眠状态且电量档位发生变化。
6.据权利要求5所述的动态路由协议优化系统,其特征在于,还包括:
第一检测模块,用于检测节点向其他节点发送数据的流量发送速率档位;
第二检测模块,用于检测节点的电量档位;
第三检测模块,用于检测是否收到其他处于运行状态的节点发送的HELLO链路广播信息以及TC广播信息。
7.根据权利要求5或6所述的动态路由协议优化系统,其特征在于,所述其他处于运行状态的节点包括加入网络的新节点或网络中从休眠状态转入运行状态的节点。
8.根据权利要求5或6所述的动态路由协议优化系统,其特征在于,所述节点向其他节点发送数据的流量发送速率档位包括第一速率档位、第二速率档位以及第三速率档位;所述第一速率档位对应流量发送速率为大于或等于预设速率,所述第二速率档位对应流量发送速率为大于0且小于所述预设速率,所述第三速率档位对应流量发送速率为0。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510467713.3A CN105162699B (zh) | 2015-07-31 | 2015-07-31 | 动态路由协议优化方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510467713.3A CN105162699B (zh) | 2015-07-31 | 2015-07-31 | 动态路由协议优化方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105162699A CN105162699A (zh) | 2015-12-16 |
CN105162699B true CN105162699B (zh) | 2018-09-18 |
Family
ID=54803458
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510467713.3A Active CN105162699B (zh) | 2015-07-31 | 2015-07-31 | 动态路由协议优化方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105162699B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105722181B (zh) * | 2016-04-12 | 2019-03-29 | 江苏中科羿链通信技术有限公司 | 无线链状多跳网络中获取邻居节点信息的方法 |
CN110493848B (zh) * | 2019-08-20 | 2021-04-16 | 赛尔网络有限公司 | 用户终端路由ip变化的监测方法、装置、系统及介质 |
CN110996369B (zh) * | 2019-12-16 | 2022-05-24 | 中国人民解放军陆军工程大学 | 一种基于任务驱动的无人机网络路由工作方法 |
CN111010346B (zh) * | 2019-12-23 | 2021-10-19 | 深信服科技股份有限公司 | 基于动态路由的报文处理方法、设备、存储介质及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101567820A (zh) * | 2008-04-24 | 2009-10-28 | 魏昕 | 水声网络中的节能的媒质访问控制方法 |
CN103441940A (zh) * | 2013-08-29 | 2013-12-11 | 华为技术有限公司 | 网络设备由备状态到主状态的切换方法、装置及网络设备 |
CN104093186A (zh) * | 2014-06-26 | 2014-10-08 | 河海大学 | 一种多跳无线传感网络机会路由方法及其系统 |
-
2015
- 2015-07-31 CN CN201510467713.3A patent/CN105162699B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101567820A (zh) * | 2008-04-24 | 2009-10-28 | 魏昕 | 水声网络中的节能的媒质访问控制方法 |
CN103441940A (zh) * | 2013-08-29 | 2013-12-11 | 华为技术有限公司 | 网络设备由备状态到主状态的切换方法、装置及网络设备 |
CN104093186A (zh) * | 2014-06-26 | 2014-10-08 | 河海大学 | 一种多跳无线传感网络机会路由方法及其系统 |
Also Published As
Publication number | Publication date |
---|---|
CN105162699A (zh) | 2015-12-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Macone et al. | MQ-Routing: Mobility-, GPS-and energy-aware routing protocol in MANETs for disaster relief scenarios | |
Li et al. | Localized geographic routing to a mobile sink with guaranteed delivery in sensor networks | |
CN105162699B (zh) | 动态路由协议优化方法及系统 | |
KR20080075151A (ko) | 무선 통신 루트 개선 방법 및 시스템 | |
US20110026500A1 (en) | Low latency mesh network | |
CA2655979A1 (en) | Mobile ad-hoc network (manet) and method for implementing multiple paths for fault tolerance | |
CN103260211B (zh) | 一种改进的aomdv路由方法 | |
CN103209467B (zh) | 接入多个ZigBee网络的方法和装置 | |
Faheem et al. | Dynamic sink location update scope control mechanism for mobile sink wireless sensor networks | |
Awerbuch et al. | The pulse protocol: Energy efficient infrastructure access | |
Sarma et al. | A multipath QoS routing with route stability for mobile ad hoc networks | |
CN101932062A (zh) | 一种Ad Hoc网络环境下的多路径路由方法 | |
Kang et al. | Adaptive resource control scheme to alleviate congestion in sensor networks | |
Karthikeyan et al. | Ant based intelligent routing protocol for MANET | |
CN105007570B (zh) | 一种基于olsr协议的移动自组织网络拥塞控制方法 | |
CN110049451A (zh) | 一种面向野外的移动自组网信息回传的方法、装置和系统 | |
CN105451291A (zh) | 一种aodv路由方法、节点设备及系统 | |
US8462650B2 (en) | Methods for supporting rapid network topology changes with low overhead costs and devices of the same | |
CN113133081A (zh) | 一种无线自组网节能传输方法 | |
Gunasekaran et al. | Xlrp: Cross layer routing protocol for wireless sensor networks | |
Faheem et al. | SN-MPR: A multi-point relay based routing protocol for wireless sensor networks | |
Maekawa et al. | An ant-based routing protocol using unidirectional links for heterogeneous mobile ad-hoc networks | |
Ghrab et al. | Correlation-free MultiPath routing for multimedia traffic in wireless sensor networks | |
WO2015009138A2 (en) | A system and method for managing sleeping mode of wireless nodes in a wireless sensor network | |
Huang et al. | An efficient route maintenance scheme for wireless sensor network with mobile sink |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20200917 Address after: 510620 Tianhe District, Guangzhou, Tianhe South Road, No. two, No. 2, No. Patentee after: Guangzhou Power Supply Bureau of Guangdong Power Grid Co.,Ltd. Address before: 510620 Tianhe District, Guangzhou, Tianhe South Road, No. two, No. 2, No. Patentee before: GUANGZHOU POWER SUPPLY Co.,Ltd. |
|
TR01 | Transfer of patent right |