CN108737142A - 一种调整节点检测参数的方法、节点和网状网络 - Google Patents
一种调整节点检测参数的方法、节点和网状网络 Download PDFInfo
- Publication number
- CN108737142A CN108737142A CN201710267630.9A CN201710267630A CN108737142A CN 108737142 A CN108737142 A CN 108737142A CN 201710267630 A CN201710267630 A CN 201710267630A CN 108737142 A CN108737142 A CN 108737142A
- Authority
- CN
- China
- Prior art keywords
- node
- gateway
- confidence level
- quality
- detection parameters
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
- H04L41/0816—Configuration setting characterised by the conditions triggering a change of settings the condition being an adaptation, e.g. in response to network events
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0631—Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0677—Localisation of faults
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0876—Network utilisation, e.g. volume of load or congestion level
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/16—Threshold monitoring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
- H04W40/04—Communication route or path selection, e.g. power-based or shortest path routing based on wireless node resources
- H04W40/10—Communication route or path selection, e.g. power-based or shortest path routing based on wireless node resources based on available power or energy
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Mobile Radio Communication Systems (AREA)
- Small-Scale Networks (AREA)
Abstract
本申请公开了一种调整节点检测参数的方法、节点和网状网络,涉及通信技术领域,用以解决传统方式中在网关故障的网状网络的中,其他节点由于检测参数固定从而导致的确定网关故障时间非常长的问题,该方法包括:第一节点获取目标节点发送的故障通知;第一节点根据故障通知,获取当前链路质量以及网状网络中的最大链路质量,当前链路质量表示当前时刻第一节点与网关之间的链路质量;第一节点根据当前链路质量、最大链路质量以及预设检测参数,调整第一节点的检测参数。本发明实施例提供的方法通过根据当前链路质量、最大链路质量以及预设检测参数对检测参数的调整,使得不同节点具有不同检测参数。
Description
技术领域
本发明实施例涉及通信技术领域,尤其涉及一种调整节点检测参数的方法、节点和网状网络。
背景技术
网状(mesh)网络,包括网关和多个节点。在网状网络中,网关用于发起组网,控制多个节点中的每个节点加入网状网络,并实现多个节点间,或者节点与其他网络间的通信。在网状网络中多个节点中的任一个节点不仅能够传送和接收数据,而且还可以将与其相连的节点发送的数据转发给多个节点中的其他节点或者网关,因此,两个非相连的节点通信时,其中一个节点可以选择与其相连的节点作为父节点并和N个(大于或等于1)节点组成链路以实现两个非相连的节点的通信或者实现该节点和网关之间的通信。
在由网关发起并维护的网状网络中,网关故障可能导致网状网络崩溃。传统方式中,通常在网关故障时,各个节点可以通过脱离网状网络并加入其他网络以继续通信。但是每个节点需要根据固定的检测参数先检测确定其与网关之间的链路故障后,再通过切换父节点以建立新的链路,再重复检测和建立新的链路的过程,直至超过重连次数阈值之后仍然无法与网关之间通信,才能确定网关故障,然后脱离该网关所组建的网状网络。
传统方式中,这样,对于较大规模的网状网络(网络中节点数量非常多),在由网关故障导致的网络故障时,造成每个节点确定网关故障的时间非常长,从而无法快速脱离网状网络。
发明内容
本申请提供一种调整节点检测参数的方法、节点和网状网络,用以解决传统方式中在网关故障的网状网络的中,其他节点由于检测参数固定从而导致的确定网关故障时间非常长的问题。
为达到上述目的,本申请采用如下技术方案:
第一方面,提供一种调整节点检测参数的方法,用于包括网关和多个节点的网状网络中,多个节点中包括第一节点,本发明实施例提供的方法包括:第一节点获取目标节点发送的故障通知,该故障通知用于指示网关故障以及用于指示多个节点中每个节点调整各自的检测参数,目标节点为所述多个节点中确定网关存在故障的节点;第一节点根据所述故障通知,获取当前链路质量以及网状网络中的最大链路质量,当前链路质量表示当前时刻第一节点与网关之间的链路质量;第一节点根据当前链路质量、所述最大链路质量以及预设检测参数,调整第一节点的检测参数,检测参数包括心跳丢失阈值和重连次数阈值。
本申请提供一种调整节点检测参数的方法,通过获取网关故障的故障通知,第一节点根据当前时刻第一节点与网关之间的链路质量、最大链路质量和预设检测参数,以对第一节点的检测参数调整,由于不同的节点与网关之间的链路质量不同,链路质量好的节点的通信状态好,链路质量不好的节点通信质量差,因此,根据当前时刻第一节点与网关之间的链路质量、最大链路质量和预设检测参数,以对第一节点的检测参数调整,这样在网状网络中每个节点均可以以第一节点调整检测参数的方式来根据自己到网关的链路质量、最大链路质量和预设检测参数调整各自的检测参数,且由于每个节点的检测参数是根据该节点的链路质量调整的,因此不同的链路质量所确定的节点的检测参数也不同,从而在网状网络中能够使得通信状态好的节点和通信状态不好的节点具有不同的检测参数,这样通信质量好的节点和通信质量不好的节点确定网关故障的时间也会存在差异,相比与现有技术可以加快节点确定网状网络故障的时间。
结合第一方面,在第一方面的第一种可能的实现方式中,第一节点根据当前链路质量、最大链路质量以及预设检测参数,调整第一节点的检测参数,包括:第一节点获取所述当前链路质量与所述最大链路质量之商,将当前链路质量与最大链路质量之商与预设检测参数相乘的乘积,作为第一节点调整后的检测参数。本发明实施例通过当前链路质量和最大链路质量之商来调整检测参数,一方面,由于当前链路质量小于或等于最大链路质量,因此,当前链路质量和最大链路质量之商是个小于或等于1的数,这样可以使得调整后的检测参数小于或等于调整前的检测参数,另一方面,由于不同的节点到网关的链路质量不同,这样即使每个节点在调整之前具有相同的检测参数,也可以基于不同的链路质量,(链路质量好的节点的通信质量好,链路不好的节点通信质量不好)将每个节点的检测参数调整为不同,使得通信质量好的节点和通信质量不好的节点具有不同的检测参数。
结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,故障通知中携带有目标节点确定的网关故障的可信度(即第一可信度),本发明实施例提供的方法还包括:第一节点获取当前时刻网关故障的可信度(即第二可信度);第一节点根据第一可信度、第二可信度以及第一可信度和所述第二可信度分别对应的权重,更新当前时刻所述网关故障的可信度。本发明实施例结合网关故障的可信度,可以更加准确反映网关的工作状态,减少链路质量差的节点对网状网络产生的影响。
结合第一方面至第一方面的第二种可能的实现方式中任一种可能的实现方式,在第一方面的第三种可能的实现方式中,第一节点根据第一可信度、第二可信度以及第一可信度和第二可信度分别对应的权重,更新当前时刻网关故障的可信度之后,本发明实施例提供的方法还包括:第一节点根据当前时刻更新后的网关故障的可信度与当前时刻生成的随机数之间的关系,以及当前时刻第一节点的工作状态,调整第一节点的工作状态。在更新网关故障的可信度之后,可以根据当前时刻生成的随机数之间的关系将第一节点的工作状态调整,这样可以缩短节点确定网关的故障时间。
结合第一方面至第一方面的第三种可能的实现方式中任意一种可能的实现方式,在第一方面的第四种可能的实现方式中,第一节点根据当前时刻更新后的所述网关故障的可信度与当前时刻生成的随机数之间的关系,以及当前时刻第一节点的工作状态,调整第一节点的工作状态,包括:第一节点在确定当前时刻更新后的所述网关故障的可信度大于所述随机数,如果当前时刻第一节点的工作状态为入网状态,则第一节点将当前时刻第一节点的工作状态调整为重连状态;或者,如果当前时刻第一节点的工作状态为重连状态,则第一节点放弃与标节点建立新的链路,以及将第一节点的重连次数阈值减小预设步长。
结合第一方面至第一方面的第四种可能的实现方式中任意一种可能的实现方式,在第一方面的第五种可能的实现方式中,第一节点根据所述故障通知,获取当前链路质量,包括:第一节点根据网状网络的最大延迟、网状网络的通信延迟、网状网络的最大延迟与网状网络的通信延迟之商的权重和网状网络的最大跳数、当前时刻第一节点与所述网关之间的链路的跳数、网状网络的最大跳数、当前时刻第一节点与网关之间的链路的跳数之商的权重,获取当前链路质量。
结合第一方面至第一方面的第五种可能的实现方式中任意一种可能的实现方式,在第一方面的第六种可能的实现方式中,本发明实施例提供的方法还包括:第一节点确定当前时刻更新后的网关故障的可信度大于或等于随机数,第一节点将第一节点的工作状态调整为重连状态后,第一节点以第一节点调整后的检测参数与网状网络中所有节点中任意一个节点重建连接。
第二方面,本发明实施例提供一种调整节点检测参数的方法,用于包括网关和多个节点的网状网络中,多个节点中包括目标节点,本发明实施例提供的方法包括:目标节点向网状网络广播发送用于指示网关故障以及用于指示多个节点中每个节点调整各自的检测参数的故障通知,检测参数至少包括心跳丢失阈值和重连次数阈值。
结合第二方面,在第二方面的第一种可能的实现方式中,本发明实施例提供的方法还包括第一节点,本发明实施例提供的方法还包括:目标节点接收第一节点发送的用于指示目标节点建立所述第一节点与网关之间的链路的重连连接请求消息;目标节点向第一节点单播发送故障通知。
结合第二方面或第一方面的第一种可能的实现方式中,在第二方面的第二种可能的实现方式中,故障通知中携带有所述目标节点确定的所述网关故障的可信度。
第三方面,提供一种节点,包括:获取单元,用于获取目标节点发送的故障通知,该故障通知用于指示网关故障以及用于指示多个节点中每个节点调整各自的检测参数,目标节点为多个节点中确定网关存在故障的节点,以及用于根据故障通知,获取当前链路质量以及网状网络中的最大链路质量,当前链路质量表示当前时刻第一节点与网关之间的链路质量;调整单元,用于根据当前链路质量、最大链路质量以及预设检测参数,调整第一节点的检测参数,检测参数至少包括心跳丢失阈值和重连次数阈值。
结合第三方面,在第三方面的第一种可能的实现方式中,获取单元,还用于获取所述当前链路质量与最大链路质量之商;调整单元,具体用于:将当前链路质量与最大链路质量之商与预设检测参数相乘的乘积,作为第一节点调整后的检测参数。
结合第三方面或第三方面的第一种可能的实现方式,在第三方面的第三种可能的实现方式中,故障通知中携带有第一可信度,第一可信度为目标节点确定的网关故障的可信度,获取单元,还用于获取第二可信度,第二可信度为当前时刻第一节点获取的网关故障的可信度;本发明实施例提供的节点还包括:更新单元,用于根据第一可信度、第二可信度以及第一可信度和第二可信度分别对应的权重,更新当前时刻网关故障的可信度。
结合第三方面至第三方面的第二种可能的实现方式中任意一种可能的实现方式,在第三方面的第三种可能的实现方式中,调整单元,用于根据当前时刻更新后的网关故障的可信度与当前时刻生成的随机数之间的关系,以及当前时刻第一节点的工作状态,调整第一节点的工作状态。
结合第三方面至第三方面的第三种可能的实现方式中任意一种可能的实现方式,在第三方面的第四种可能的实现方式中,调整单元具体用于:在确定当前时刻更新后的网关故障的可信度大于随机数,如果当前时刻第一节点的工作状态为入网状态,则第一节点将当前时刻第一节点的工作状态调整为重连状态;或者,如果当前时刻第一节点的工作状态为重连状态,则第一节点放弃与所述目标节点建立新的链路,以及将第一节点的重连次数阈值减小预设步长。
结合第三方面至第三方面的第四种可能的实现方式中任意一种可能的实现方式,在第三方面的第五种可能的实现方式中,获取单元,用于根据网状网络的最大延迟、所述网状网络的通信延迟、网状网络的最大延迟与网状网络的通信延迟之商的权重和所述网状网络的最大跳数、当前时刻第一节点与网关之间的链路的跳数、所述网状网络的最大跳数、当前时刻第一节点与网关之间的链路的跳数之商的权重,获取当前链路质量。
第四方面,本发明实施例提供一种节点,用于包括网关和多个节点的网状网络中,该节点作为多个节点中的目标节点,该节点包括:发送单元,用于向网状网络广播发送故障通知,该故障通知用于指示网关故障以及用于指示多个节点中每个节点调整各自的检测参数,检测参数至少包括心跳丢失阈值和重连次数阈值。
结合第四方面,在第四方面的第一种可能的实现方式中,上述多个节点还包括第一节点,节点还包括:接收单元,用于接收第一节点发送的用于指示目标节点建立第一节点与所述网关之间的链路的重连连接请求消息;发送单元还用于向第一节点单播发送故障通知。
结合第四方面或第四方面的第一种可能的实现方式,在第四方面的第二种可能的实现方式中,故障通知中携带有目标节点确定的网关故障的可信度。
第五方面,提供一种节点,该节点包括处理器、存储器、系统总线和通信接口;其中,存储器用于存储计算机执行指令,处理器与存储器通过系统总线连接,当节点运行时,处理器执行存储器存储的计算机执行指令,以使节点执行如第一方面至第一方面的第六种可能的实现方式中任意一种可能的实现方式所描述的调整节点检测参数的方法。
第六方面,提供一种目标节点,该节点包括处理器、存储器、系统总线和通信接口;其中,存储器用于存储计算机执行指令,处理器与存储器通过系统总线连接,当目标节点运行时,处理器执行存储器存储的计算机执行指令,以使目标节点执行如第二方面至第二方面的第二种可能的实现方式中任意一种可能的实现方式所描述的调整节点检测参数的方法。
第七方面,提供一种计算机可读存储介质,包括指令,当其在节点上运行时,使得节点执行如第一方面至第一方面的第六种可能的实现方式中任意一种可能的实现方式所描述的调整节点检测参数的方法,或者,当其在目标节点上运行时,使得目标节点执行如第二方面至第二方面的第二种可能的实现方式中任意一种可能的实现方式所描述的调整节点检测参数的方法。
第八方面,提供一种包含指令的计算机程序产品,当其在节点上运行时,使得节点执行如第一方面至第一方面的第六种可能的实现方式所描述的调整节点检测参数的方法,或者,当其在目标节点上运行时,使得目标节点执行如第二方面至第二方面的第二种可能的实现方式中任意一种可能的实现方式所描述的调整节点检测参数的方法。
第九方面,提供一种网状网络,包括:网关以及多个节点,其中,多个节点中存在至少一个目标节点和至少一个节点,该目标节点为第四方面或第四方面的第二种可能的实现方式所描述的目标节点,该节点为第一方面至第一方面的第六种可能的实现方式中任意一项所述的节点。
本申请在上述各方面提供的实现方式的基础上,还可以进行进一步组合以提供更多实现方式。
附图说明
图1为本发明实施例提供的一种网状网络的架构示意图;
图2为本发明实施例提供的节点工作状态的示意图;
图3为本发明实施例提供的一种节点的硬件结构示意图;
图4为本发明实施例提供的一种调整节点检测参数的方法的流程示意图一;
图5为本发明实施例提供的一种调整节点检测参数的方法的流程示意图二;
图6为本发明实施例提供的一种调整节点检测参数的方法的流程示意图三;
图7为本发明实施例提供的一种调整节点检测参数的方法的流程示意图四;
图8为本发明实施例提供的一种调整节点检测参数的方法的流程示意图五;
图9为本发明实施例提供的一种调整节点检测参数的方法的流程示意图六;
图10为本发明实施例提供的一种节点的结构示意图;
图11为本发明实施例提供的又一种节点的结构示意图。
具体实施方式
为了便于清楚描述本发明实施例的技术方案,在本发明的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分,本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定。
本发明实施例中,通过目标节点(可以理解为网状网络最先确定网关故障的节点)向网状网络广播或向某个尝试与目标节点建立新的链路的节点单播发送故障通知,指示网关故障并使得该网状网络中除该目标节点外的其他节点在接收到故障通知后,分别计算当前时刻自己到网关之间链路的链路质量,进而根据链路质量和网状网络中的最大链路质量来调整各自的检测参数。由于不同的节点与网关之间的链路质量不同,这样使得链路质量好的节点和链路质量不好节点具有不同的检测参数,链路质量好的节点所需要的检测参数通常比较小,检测参数不同可以使得链路质量好的节点缩短节点确定网关故障的时间。
本发明实施例提供的调整节点检测参数的方法可以应用于无线网状网络中,也可以应用于有线网状网络中。
本发明实施例以无线网状网络为例,如图1所示。图1示出了本发明实施例提供的一种调整节点检测参数的方法所应用的网状网络,该网状网络包括网关201,多个节点(例如,节点202、节点203、节点204、节点205以及节点206)。可以理解的是,本发明实施例中可以包括比图1更多或者更少的节点。
其中,网关201用于发起组网以及控制多个节点202~206加入网状网络,还用于实现多个节点与其他网络之间通信,或者多个节点中任意两个节点之间的通信。
在图1中任意一个节点可以与其相连的节点直接通信,任意两个不相连的节点之间需要通信时,该任意两个不相连的节点中的一个节点会选择与其相连的一个节点作为父节点,并组成由该节点到需要通信的节点之间的链路。例如,节点202需要和节点206通信,则节点202可以选择与其相连的节点204或者节点205作为父节点,并通过所选择的父节点(节点204或者节点205)构成链路,以建立节点202和节点206的通信,例如,以节点202选择节点204作为父节点,则节点202和节点206之间的链路包括:节点202、节点204、节点206或者节点202、节点204、节点205、节点206。
在图1所示的系统中,若任意一个节点与网关直接连接,则该节点与网关可以直接通信,例如,节点202与网关201。若任意一个节点与网关之间没有直接连接,则该节点可以通过选择父节点以建立该节点到网关之间的链路。例如,节点203可以通过选择父节点202建立到达网关的链路,该链路包括节点203、节点202以及网关201。
本发明实施例中若两个节点之间直接连接,则组成一跳的网络,否则组成多跳的网络。例如,节点202与网关201之间的跳数为1,节点201与节点204之间的链路包括网关201、节点202和节点204时,则节点201与节点204的跳数为2。如何确定跳数是现有技术中比较成熟的方案,本发明实施例在此不再赘述。
本发明实施例中选择父节点的节点可以称为子节点,子节点与父节点是个相对的概念。每个节点在向上路由中作为与该节点相连的节点的子节点,向下路由中作为与该节点相连的节点的父节点,其中,没有父节点的节点为网关。
如图2所示,图2示出了本发明实施例提供的网状网络中每个节点的工作状态,如图2所示,本发明实施例中任意一个节点具有四个工作状态,分别为:入网(Joined)状态、重连(Retry)状态、离网等待(Leave wait)状态以及离网(Leave)状态,本发明实施例中的每个节点的四个状态之间可以根据网关的状态(故障或者正常)或者网状网络的状态切换。
其中,在入网状态时,节点按照预设检测周期性的向网关发送心跳或者周期性的接收网关发送的心跳,当节点确定连续未接收到网关发送的心跳回复次数或者连续未接收到网关发送的心跳的次数大于心跳丢失阈值时,则节点确定其与网关之间的链路故障,于是节点从入网状态调整为重连状态。
可以理解的是,任意一个节点在处于入网状态时,该任意一个节点可以与网状网络中的多个节点中与其相连的节点可以通信(例如,接收收据、发送收据等),以及通过选择父节点建立达到网关的链路,从而与网关通信。
在重连状态时,节点可以通过选择与其相连的节点作为父节点,并与其建立新的到达网关的链路,若节点确定与父节点重连次数超过重连次数阈值时,再次更改父节点并重复上述过程,直至节点确定所有与其相连的父节点均无法建立新的到达网关的链路,则节点从重连状态切换为离网等待状态。
在节点处于离网等待状态的预设时间内,节点向尝试与其建立新链路的节点发送故障通知,该故障通知用于指示网关故障以及其他节点调整各自的检测参数(例如,心跳丢失阈值和/或重连次数阈值)。最后,节点在离网等待的预设时间后,退出如图1所示的网状网络,加入其他网络。
本发明实施例中,心跳丢失阈值用于确定一个节点与网关之间的链路的通信状态,重连次数阈值用于在一个节点与网关之间的链路故障后,限制该节点在选择与其相连的节点作为父节点时,与父节点之间的最大的重连次数。
可以理解的是,如上述,网关的作用是用于发起组网以及控制多个节点中每个节点加入网状网络以及将多个节点发送的数据转发至其他网络或者将其他网络发送的数据转发至多个节点,因此在网关故障的网状网络中,势必导致网状网络的崩溃,此时,节点在确定网关故障后,可以通过脱离网状网络,当然,有的网状网络中网关故障后,还可以在一段时间内修复,因此,若网关修复的时间在预设时间内,则处于离网等待状态的节点可以重新加入该网关组成的网状网络。
需要说明的是,一般情况下,网关故障修复后,通常处于安全考虑更改网络的安全密钥,因此,处于离网等待状态节点需要在获取的更改后的密钥才能成功加入网状网络中。
进一步地,本发明实施例中,图1中任意一个节点的结构可以如图3所示。本发明实施例以节点202为例介绍,如图3所示,节点202包括存储器301、处理器302、系统总线303以及通信组件304。其中,存储器301可用于存储数据、软件程序以及模块,主要包括存储程序区和存储数据区,存储程序区可存储操作系统、至少一个功能所需的应用程序等,存储数据区可存储服务器的使用所创建的数据等。处理器302通过运行或执行存储在存储器301内的软件程序和/或模块,以及调用存储在存储器301内的数据、软件程序以及模块,执行节点202的各种功能和处理数据。系统总线303包括地址总线、数据总线、控制总线,用于传输数据和指令;通信组件304用于支持节点202和其他设备之间进行有线或无线方式的通信。
其中,系统总线303可以分为地址总线、数据总线、控制总线等。为便于表示,图3中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
可以理解的是,图3仅是示例性的给出了本发明实施例提供的任意一个节点的结构,在实际使用过程中节点可以包括比图3所示的更多组件。
如图4所示,本发明实施例提供一种调整节点检测参数的方法,该方法应用于如图1所示的网状网络,该方法包括:
S101、目标节点在确定网关故障之后,目标节点广播发送故障通知,该故障通知用于指示网关故障以及用于指示多个节点中每个节点调整各自的检测参数。
目标节点为多个节点中确定网关存在故障的节点。
目标节点通常是该网状网络的多个节点中最先确定网关故障的节点。在由网关故障引起的网状网络的通信状态故障的情况下,最先确定网关故障的节点通常是与网关之间的链路跳数最少的节点,例如,如图1中所示的节点202。
由于目标节点广播发送故障通知时,可能存在节点(例如,第一节点)正在执行任务或者网络因素不佳,未收到目标节点广播发送的故障通知,因此,该节点在确定当前时刻其与网关之间的链路故障后,会依旧从所有与该节点相连的节点中选择一个节点作为父节点(例如,目标节点)重建到达网关的新链路。所以,为了保证网状网络中每个节点均能接收到故障通知,并根据故障通知调整各自的检测参数,本发明实施例中目标节点还可以在预设时间(预设时间为目标节点处于离线等待的时间)内接收到任意一个节点(例如,第一节点)发送的重连连接请求消息时,向该第一节点单播发送故障通知。
可以理解的是,本发明实施例中目标节点广播或者单播发送的故障通知可以是新定义消息,也可以是对现有协议中的消息进行扩展。
示例性的,该目标节点可以通过传输控制协议(Transmission ControlProtocol,TCP)或者用户数据报协议(User Datagram Protocol,UDP)或者链路控制层协议(Link Control Protocol,LCP)广播或者单播发送的故障通知。
S102、第一节点获取故障通知。
由于目标节点向第一节点发送故障通知可以是单播发送的也可以是广播发送的,因此,第一节点可以从网状网络中获取目标节点发送的故障通知,也可以从目标节点处接收其单播发送的故障通知,具体是接收单播发送的故障通知还是广播发送的故障通知,需要结合实际情况分析,本发明实施例在此不再赘述。
可以理解的是,传统方式中,任意一个节点在接收到其他节点发送的重连连接请求消息后通常是与其他节点建立新的链路,并反馈建立新的链路的响应,而本申请中目标节点是向其他节点单播发送故障通知,因此,本申请中的单播消息中携带的故障通知可以是在现有协议的基础上对传统的消息中的扩展,也可以是一种新的消息形式。
S103、第一节点根据故障通知,获取当前链路质量以及网状网络中的最大链路质量,当前链路质量表示当前时刻第一节点与所述网关之间的链路质量。
可选的,网状网络中的最大链路质量可以是预设设定的,在网状网络初始化时每个节点均存储有最大链路质量。
S104、第一节点根据当前链路质量、最大链路质量以及预设检测参数,调整第一节点的检测参数,检测参数至少包括心跳丢失阈值和重连次数阈值。
本申请提供一种调整节点检测参数的方法,通过获取网关故障的故障通知,第一节点根据当前时刻第一节点与网关之间的链路质量、最大链路质量和预设检测参数,以对第一节点的检测参数调整,由于不同的节点与网关之间的链路质量不同,链路质量好的节点的通信状态好,链路质量不好的节点通信质量差,因此,根据当前时刻第一节点与网关之间的链路质量、最大链路质量和预设检测参数,以对第一节点的检测参数调整,这样在网状网络中每个节点均可以以第一节点调整检测参数的方式来根据自己到网关的链路质量、最大链路质量和预设检测参数调整各自的检测参数,且由于每个节点的检测参数是根据该节点的链路质量调整的,因此不同的链路质量所确定的节点的检测参数也不同,从而在网状网络中能够使得通信状态好的节点和通信状态不好的节点具有不同的检测参数,这样通信质量好的节点和通信质量不好的节点确定网关故障的时间也会存在差异,相比与现有技术可以加快节点确定网状网络故障的时间。
可选的,结合图4,如图5所示,目标节点确定网关故障的过程可以参见图4中的步骤S105-S107。
S105、在目标节点处于入网状态时,目标节点确定当前时刻目标节点与网关之间的链路故障。
可以理解的是,在目标节点确定当前时刻目标节点到网关之间的链路故障后,目标节点按照如图2所示的工作状态,从入网状态调整为重连状态。
虽然,目标节点可以通过丢失的心跳次数或者心跳回复次数确定其与网关之间的链路故障,但是其并不能确定其与网关之间的链路故障是由网关故障引起的还是由链路中任意一个节点故障引起的,因此,目标节点将通过更换父节点以建立新的达到网关之间的链路,并在无法建立到达网关的新的链路后,确定网关故障。
S106、目标节点从与目标节点相连的N个节点中选择M个节点作为父节点。
其中,本发明实施例中的N为大于或等于1的整数,M为大于或等于1的整数,其中,M小于或等于N。
具体的N的数量需要结合实际网状网络中的拓扑结构来确定,本发明实施例对此不进行限定。
可以理解的是,本发明实施例中可以目标节点所选择的M的数量可以根据需要设置,例如,可以使得M=N,即将目标节点的5个相连节点中的每个节点均作为父节点,也可以通过设置预设阈值,并保证M与N之商大于或等于预设阈值即可,例如,若N=5,且预设阈值为80%,则可以从5个相连节点中任选4个节点或5个节点作为父节点。
可以理解的是,在实际过程中,目标节点并非一次均与选择的M个节点重新连接,而是每次向M个节点中的一个节点X发送重连连接请求消息(重连连接请求消息用于目标节点与节点X建立达到网关的新的链路),直至目标节点与节点X的重连次数达到重连次数阈值时,才向M个节点中的一个节点Y重新发送重连连接请求消息。
由于目标节点所选择的父节点不同,目标节点到网关之间的链路也不同,且目标节点所选择的父节点也有可能存在多个父节点,因此,目标节点到网关之间的多条新的链路需要根据实际情况确定,但是不同的链路其并不构成对本发明实施例方案的限制。
S107、目标节点按照预设规则向M个父节点中的每个父节点重连连接请求消息,目标节点若确定与M个父节点中的每个父节点的重连次数均大于重连次数阈值,则目标节点确定网关故障。
其中,预设规则为:目标节点每次从M个父节点中选择一个父节点,并向其发送重连连接请求消息,目标节点在确定与所选择一个父节点的重连次数均大于重连次数阈值,则从M个父节点中重新选择一个父节点,以此类推。若在重连过程中目标节点通过某个父节点重建与网关之间的链路,则目标节点将不再向M个父节点中的其他节点发送重连连接请求消息。
可选的,一方面,本发明实施例提供的步骤S105所描述的过程可以通过以下方式实现:目标节点通过当前时刻与网关建立的链路向网关发送心跳或者通过当前时刻与网关建立的链路接收网关发送的心跳;目标节点确定连续未接收到网关发送的心跳回复次数大于心跳丢失阈值或者连续未接收到网关发送的心跳的次数大于心跳丢失阈值,则目标节点确定当前时刻目标节点到网关之间的链路故障。
可以理解的是,不同的检测时刻节点与网关之间的链路不同,目标节点通过当前时刻目标节点到网关之间的链路向网关发送心跳。
另一方面,本发明实施例提供的步骤S105所描述的过程还可以通过以下方式实现:目标节点根据当前时刻目标节点与网关之间链路的链路质量,以及目标节点连续未接收到网关发送的心跳的次数大于心跳丢失阈值或者连续未接收到网关发送的心跳回复消息的次数大于心跳丢失阈值,确定网关故障。
具体的,每个节点与网关之间的链路均存在链路质量,每个节点与网关之间的链路质量和最大链路质量之商大于0或小于等于1,若一个节点的链路质量和最大链路质量之商为0表示该一个节点与网关之间链路的链路质量非常差,若另一个节点的链路质量为1表示该另一个节点与网关之间链路的链路质量非常好,因此,若目标节点的链路质量和最大链路质量之商的值为1且该目标节点连续未接收到网关发送的心跳包的次数或者连续未接收到网关发送的心跳回复的次数达到心跳丢失阈值,则目标节点确定网关故障。
可选的,结合图5,如图6所示,本发明实施例中的步骤S104可以通过以下图6所示的步骤:S108和S109来实现:
S108、第一节点获取当前链路质量与最大链路质量之商。
S109、第一节点将当前链路质量与所述最大链路质量之商与预设检测参数相乘的乘积,作为第一节点调整后的检测参数。
可选的,本发明实施例的检测参数为:心跳丢失阈值和重连次数阈值。
可以理解的是,检测参数还可以为除心跳丢失阈值和重连次数阈值之外的其余参数,例如,时延等,本发明实施例在此不再列举,任何可以反映节点与网关之间链路状态的参数均可以作为本申请的检测参数。
本发明实施例中的预设检测参数可以为网状网络组网时系统预先设定的,即为多个节点中每个节点均设置相同的心跳丢失阈值和重连次数阈值,或者为多个节点中每个节点均设置不相同的心跳丢失阈值和重连次数阈值。
当然,本发明实施例中的预设检测参数还可以为任一个节点在当前调整时刻之前的一个调整时刻调整后的检测参数,例如,当前调整时刻之前的一个调整时刻调整后的检测参数为A,则当前时刻此节点可以将链路质量R×A确定为此节点调整后的检测参数,又或者预设检测参数为系统预设的检测参数B,则当前时刻此节点也可以将链路质量R×B确定为此节点调整后的检测参数,本发明实施例对此不限定。
下述将分别结合检测参数为心跳丢失阈值和重连次数阈值介绍如何调整心跳丢失阈值和重连次数阈值。本发明实施例以预设检测参数为:最大心跳丢失阈值和最大重连次数阈值为例进行说明:
一方面,检测参数为心跳丢失阈值,则对心跳丢失阈值调整可以通过公式HT=MaxHT×(RQ/RQmax)实现。其中,HT表示调整后的心跳丢失阈值,MaxHT表示最大心跳丢失阈值,RQ表示当前时刻第一节点与网关之间的链路质量,RQmax表示最大链路质量。
本发明实施例中的当前时刻第一节点与网关之间的链路质量与最大链路质量之商为大于或等于0,且小于或等于1的数。
可以理解的是,第一节点所选择的父节点不同,第一节点与网关之间的链路不同,不同的链路使得第一节点与网关之间的链路质量不同,因此,第一节点与网关之间存在的链路中每条链路对应一个心跳丢失阈值。可以理解为:若第一节点通过链路A向网关发送心跳,则第一节点若通过链路A连续未接收到网关发送的心跳回复次数大于链路A的心跳丢失阈值,则第一节点确定链路A故障。
一般情况下,一个节点只需要确定其到网关之间的一个链路的心跳丢失阈值即可,仅只有在达到心跳丢失阈值且重新选择父节点重连时,才需要根据新建的链路的心跳丢失阈值判断新建的链路的状态。
另一方面,检测参数为重连次数阈值,则对重连次数阈值调整可以通过公式HT=MaxRT×(RQ/RQmax)确定,其中,RT表示调整后的重连次数阈值,MaxRT表示最大重连次数阈值,RQ表示当前时刻第一节点与网关之间的链路质量,RQmax表示最大链路质量。
可以理解的是,第一节点所选择的父节点不同,第一节点与网关之间的链路也不同,不同的链路对应不同的链路质量,因此,第一节点对不同的父节点重连的次数阈值也不同,相应的若第一节点选择节点A作为父节点,第一节点选择节点A作为父节点时的重连次数阈值为5,则第一节点在与节点A重连次数达到5次后依旧失败,最终第一节点确定网关故障,并进入离网等待状态以在预设时间后脱离网状网络。
本发明实施例中最大心跳丢失阈值和最大重连次数阈值可以是系统初始化时设置的,此时多个节点中每个节点的最大心跳丢失阈值和最大重连次数阈值可以相同,也可以不相同。
当然,本发明实施例的故障通知中还可以携带节点标识,例如,携带目标节点的标识,节点标识用于唯一识别目标节点。
可以理解的是,本发明实施例中每个节点中还可以存储网状网络的拓扑结构,即每个节点到网关之间的距离,这样在接收到携带节点标识的故障通知后,第一节点可以根据节点标识确定网关故障的可信度,因为一般情况下,与网关之间跳数最少的节点发送的网关故障的可信度相较于与网关之间跳数最多的节点发送的网关故障的可信度较高。
由于第一节点在无法与网关通信时,其通常通过更换父节点重连后,若依旧连接失败,才将确定网关故障,但是,对于其余节点而言,为了确定网络故障是由网关故障引起的,因此,本发明实施例中故障指示消息中携带有第一可信度,第一可信度为所述目标节点确定的网关故障的可信度,这样做的目的是为了使得第一节点通过更新网关故障的可信度,从而准确地确定网关是否故障。其中,网关故障的可信度用于表示网关故障的可能性,网关故障的可信度的值大于或等于0,小于或等于1,网关故障的可信度的值越大表示网关故障的可能性越大。例如,网关故障的可信度的值为0表示网关故障的可能性为0,网关故障的可信度的值为1表示网关处于故障状态。
可以理解的是,本发明实施例中每个节点均可以有一个网关故障的可信度,该网关的故障的可信度为默认值,例如,在网关未故障时,每个节点存储的网关的故障的可信度为0。每个节点的网关的故障的可信度在其与网关存在数据交互时恢复为默认值。
如图结合图4,如图7所示,本发明实施例提供的方法还包括:
S110、第一节点获取第二可信度,第二可信度为当前时刻第一节点获取的网关故障的可信度。
其中,第二可信度为网状网络组网时由系统设置的,或者是第一节点通过链路质量获取的。
S111、第一节点根据第一可信度、第二可信度以及第一可信度和第二可信度分别对应的权重,更新当前时刻网关故障的可信度。
可选的,本发明实施例中的步骤S111可以具体通过以下方式实现:
第一节点根据公式R=RQ1×α+RQ2×β更新当前时刻网关故障的可信度,其中,R表示当前时刻更新后的网关故障的可信度,RQ1表示第二可信度,RQ2表示目标节点发送的网关故障的可信度,即第一可信度,α表示RQ1的权重,β表示RQ2的权重,且α+β=1。
本发明实施例中的α和β的值可以根据需要设置,只要保证α+β=1即可,示例性的,本发明实施例中的α=0.8,β=0.2。
需要说明的是,故障通知中的网关故障的可信度可以通过目标节点和网关之间的链路质量代替,在这种情况下,第一节点可以根据目标节点和网关之间的链路质量采用上述公式更新当前时刻网关故障的可信度。
第一节点在更新当前时刻网关故障的可信度后,可以根据更新后的当前时刻网关故障的可信度和随机数之间的关系,并结合第一节点当前时刻所处的工作状态,结合图7,如图8所示,本发明实施例提供的方法还包括:
S112、第一节点根据当前时刻更新后的网关故障的可信度与当前时刻生成的随机数之间的关系,以及当前时刻第一节点的工作状态,调整第一节点的工作状态。
其中,随机数的预设范围为0-1。
具体的,当前时刻第一节点所处的工作状态不同,在当前时刻更新后的所述网关故障的可信度大于所述随机数的情况下,对应调整后的工作状态存在差异,因此,本发明实施例中的步骤S112具体可以通过以下方式实现:第一节点在确定当前时刻更新后的网关故障的可信度大于随机数,如果当前时刻第一节点的工作状态为入网状态,则第一节点将当前时刻第一节点的工作状态调整为重连状态;或者,如果当前时刻第一节点的工作状态为重连状态,则第一节点放弃与所述目标节点建立新的链路,以及将第一节点的重连次数阈值减小预设步长。
其中,预设步长为小于重连次数阈值的正整数。示例性的,预设步长可以为1。
例如,当前时刻第一节点的工作状态为Jion状态,第一节点接收到第一故障通知后,第一节点根据步骤S111对网关故障的可信度更新,并生成随机数,若更新后的网关故障的可信度大于随机数则第一节点将第一节点的状态从Jion状态调整为Retry状态。这样可以尽快使得第一节点进入重连状态,进一步缩短了第一节点确定网关故障的时间。
例如,当前时刻第一节点处于Retry状态,在每次Retry连接前,第一节点生成随机数,若第一节点根据S111确定更新后的网关故障的可信度大于随机数,则第一节点跳过与目标节点的此次重连(正常情况下,第一节点在与目标节点重建连接时,只有达到重连次数阈值,且依旧与目标节点重连失败,第一节点才跳过与目标节点,并选择所有与第一节点相连的节点中除目标节点之外的一个节点B重建连接),第一节点并将重连次数阈值减少预设步长,并立即与节点B以减少预设步长的重连次数阈值重建连接。即Retry状态的第一节点通过节点A重建连接时,若节点A为Leave wait节点,则Retry状态的第一节点收到节点A发送的故障通知,且执行S112后跳过与节点A继续重建连接,并将重连次数阈值(例如,5)减1,并与节点B重新建立连接,此时,第一节点与节点B重新建立连接时的重连次数阈值为4,并根据步骤S111更新网关故障的可信度。这样第一节点将放弃与目标节点进行重连,且在重新选择节点作为父节点是,由于重连次数阈值已减少,这样可以进一步缩短第一节点确定网关故障的时间。
可选的,本发明实施例中的步骤S103可以通过以下方式具体实现:第一节点根据网状网络的最大延迟、网状网络的通信延迟、网状网络的最大延迟与网状网络的通信延迟之商的权重和网状网络的最大跳数、当前时刻第一节点与所述网关之间的链路的跳数、网状网络的最大跳数、当前时刻第一节点与网关之间的链路的跳数之商的权重,获取当前链路质量。
示例性的,第一节点根据公式RQ=λ1×(Md/Ad)+λ2(Mh/H)获取当前时刻第一节点与网关之间的链路质量,其中,RQ表示当前时刻第一节点与网关之间的链路质量,Md表示网状网络的最大延迟,Ad表示网状网络的通信延迟,Mh表示网状网络的最大跳数,H表示当前时刻第一节点与网关通信时链路的跳数,λ1和λ2表示权重因子且λ1+λ2=1。
本发明实施例中的通信延迟指数据包通过节点发送到网关,然后收到网关作出响应的这一过程所需要的时间。
本发明实施例中最大延迟(MaxDelay,Md)由网状网络设置,表示通信延迟的最大值。
本发明实施例中跳数Hop指任意一个节点与网关通信时所建立的链路包括的节点数目。
本发明实施例中最大跳数MaxHop由网状网络设置,表示一个节点与网关通信时包括的最多节点数目。
本发明实施例中的λ1和λ2可以根据需要设置,只要保证λ1+λ2=1即可,实际情况下,延迟反应网络阻塞程度,延迟时间长表示网状网络的网络比较拥堵,跳数反应网状网络的拓扑情况,跳数多意味着网状网络中的节点到网关的链路中包括的节点数量多。示例性的,本发明实施例可以设置每个节点的延迟和跳数对到网关链路质量影响的权重是一致的,例如,λ1=0.5,λ2=0.5。
可选的,本发明实施例提供的方法还包括:
S113、第一节点确定当前时刻更新后的网关的故障可信度大于或等于随机数,则根据第一节点调整后的检测参数与第二节点重连,第二节点为网状网络中与节点相连的所有节点中任意一个节点。
如图9所示,图9示出了本发明实施例提供的一种调整节点检测参数的方法的具体实施例,在图9与图4-8的区别在于,图9中在步骤S101之后,增加了步骤S114以及在S112之后增加了S120,即更新后的网关的故障的可信度小于随机数则执行S120。
S114、目标节点判断是否存在未超过重连次数阈值及存在未尝试的相连连接,若是在执行步骤S115,若否,则发送故障通知,并执行S116。
S115、目标节点更新网关故障的可信度,并根据更新后的网关故障的可信度与随机数之间的关系确定是否重建连接。
S116、目标节点判断离网等待的时间是否超过预设时间,若是,则执行S117,若否则执行S118。
S117、目标节点从网状网络中脱离。
S118、判断是否接收到其他节点发送的重连连接请求消息,若是则执行S110,若否,则执行S119。
S119、目标节点向第一节点单播发送故障通知。
并在第一节点执行完步骤S112之后,增加了S120:在确定更新后的网关故障可信度小于随机数时,第一节点脱离网状网络。
可以理解的是,本发明实施例通过对每个节点的检测参数调整,使得不同的节点具有不同的检测参数,在如图1所示的网状网络中,节点202与网关201是直接连接的节点,节点202的心跳丢失阈值和重试次数较节点203、节点204、节点205和节点206小。由于节点202的心跳丢失阈值和重连次数阈值小,则节点202首先发现网关201故障,并向节点202、节点203、节点204、节点205和节点206发送故障通知,该故障通知用于指示网关故障,以及指示每个节点调整各自的心跳丢失阈值和/或重连次数阈值。节点202、节点203、节点204、节点205和节点206根据故障通知以及节点202与网关之间的链路质量调整更新网关故障的可信度。由于节点202与网关之间的跳数很低,因此通信延迟低。所以根据节点202与网关之间的链路质量,获取的网关更新后的故障的可信度将会很高。并且会在通过节点202尝试重建连接时进一步提高。从而节点202、节点203、节点204、节点205和节点206都将快速的发现网关故障,并且离网。
上述主要从节点的角度对本发明实施例提供的方案进行了介绍。可以理解的是,节点等为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明实施例的范围。
本发明实施例可以根据上述方法示例对节点等进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本发明实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
如图10所示,本发明实施例提供一种节点,用于包括网关和多个节点的网状网络中,节点作为多个节点中的第一节点,节点40包括:
获取单元401,用于获取目标节点发送的故障通知,该故障通知用于指示网关故障以及用于指示多个节点中每个节点调整各自的检测参数,所述目标节点为所述多个节点中确定所述网关存在故障的节点。
获取单元401,还用于根据故障通知,获取当前链路质量以及所述网状网络中的最大链路质量,所述当前链路质量表示当前时刻所述第一节点与所述网关之间的链路质量。
调整单元402,用于根据当前链路质量、最大链路质量以及预设检测参数,调整第一节点的检测参数,检测参数至少包括心跳丢失阈值和重连次数阈值。
可选的,获取单元401,还用于获取当前链路质量与所述最大链路质量之商。
调整单元402,具体用于:将当前链路质量与最大链路质量之商与预设检测参数相乘的乘积,作为第一节点调整后的检测参数。
可选的,故障通知中携带有第一可信度,所述第一可信度为目标节点确定的网关故障的可信度,获取单元401,还用于获取第二可信度,第二可信度为当前时刻所述第一节点获取的网关故障的可信度。
本发明实施例提供的节点40还包括:
更新单元403,用于根据第一可信度、第二可信度以及第一可信度和所述第二可信度分别对应的权重,更新当前时刻网关故障的可信度。
可选的,调整单元402,用于根据当前时刻更新后的网关故障的可信度与当前时刻生成的随机数之间的关系,以及当前时刻第一节点的工作状态,调整第一节点的工作状态。
可选的,调整单元402具体用于:在确定所述当前时刻更新后的所述网关故障的可信度大于随机数,如果当前时刻第一节点的工作状态为入网状态,则第一节点将当前时刻所述第一节点的工作状态调整为重连状态;或者,如果当前时刻第一节点的工作状态为重连状态,则第一节点放弃与目标节点建立新的链路,以及将第一节点的重连次数阈值减小预设步长。
可选的,获取单元401,用于根据网状网络的最大延迟、网状网络的通信延迟、网状网络的最大延迟与网状网络的通信延迟之商的权重和网状网络的最大跳数、当前时刻第一节点与网关之间的链路的跳数、网状网络的最大跳数、当前时刻第一节点与网关之间的链路的跳数之商的权重,获取当前链路质量。
可选的,本发明实施例中的节点还包括:生成单元404,用于生成随机数。
可以理解的是,本发明实施例中的获取单元401,调整单元402、更新单元403、生成单元404可以集成在如图1所示的处理器中。
如图11所示,本发明实施例提供的另一种节点,用于包括网关和多个节点的网状网络中,该节点用作多个节点中的目标节点,节点50包括:
发送单元501,用于向网状网络广播发送故障通知,该故障通知用于指示网关故障以及用于指示多个节点中每个节点调整各自的检测参数,检测参数至少包括心跳丢失阈值和重连次数阈值。
可选的,多个节点还包括第一节点,节点50还包括:
接收单元502,用于接收第一节点发送的重连连接请求消息,重连连接请求消息用于指示所述目标节点建立所述第一节点与网关之间的链路。
发送单元501还用于,向第一节点单播发送故障通知。
可选的,故障通知中携带有目标节点确定的网关故障的可信度。
可以理解的是,本发明实施例中的发送单元501,接收单元502可以集成在如图1所示的处理器中。
一方面,本发明实施例提供一种计算机可读存储介质,计算机可读存储介质中存储有指令,当计算机可读存储介质在计算机上运行时,使得节点执行上述实施例中由第一节点所执行的步骤,例如,过程S102、S103、S104、S108、S109、S110以及S111、S112以及S113、S120。
又一方面,本发明实施例提供一种计算机可读存储介质,计算机可读存储介质中存储有指令,当计算机可读存储介质在计算机上运行时,使得节点执行S101、S105、S106、S107、S114、S115、S116、S117、S118以及S119。
在上述实施例中,可以全部或部分的通过软件、硬件、固件或者其任意组合来实现。当使用软件程序实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例多描述的流程或功能。所述计算机可以使通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点,计算机、节点或数据中心通过有线(例如,同轴电缆、光纤、数字用户线DSL)或无线(例如,红外、无线、微波等)方式向另一个网站站点、计算机、节点或数据中心传输。计算机可读存储介质可以是计算机能够读取的任何可用介质或者是包含一个或多个可用介质集成的节点、数据中心等数据存储设备。所述可用介质可以使磁性介质,(例如,软盘,硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如,固态硬盘(Solid State Disk,SSD))等。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,节点,或者网络设备等)或处理器执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:快闪存储器、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (16)
1.一种调整节点检测参数的方法,用于包括网关和多个节点的网状网络中,所述多个节点中包括第一节点,其特征在于,所述方法包括:
所述第一节点获取目标节点发送的故障通知,该故障通知用于指示网关故障以及用于指示多个节点中每个节点调整各自的检测参数,所述目标节点为所述多个节点中确定所述网关存在故障的节点;
所述第一节点根据所述故障通知,获取当前链路质量以及所述网状网络中的最大链路质量,所述当前链路质量表示当前时刻所述第一节点与所述网关之间的链路质量;
所述第一节点根据所述当前链路质量、所述最大链路质量以及预设检测参数,调整所述第一节点的检测参数,所述检测参数包括心跳丢失阈值和重连次数阈值。
2.根据权利要求1所述的方法,其特征在于,所述第一节点根据所述当前链路质量、所述最大链路质量以及预设检测参数,调整所述第一节点的检测参数,包括:
所述第一节点获取所述当前链路质量与所述最大链路质量之商;
所述第一节点将所述当前链路质量与所述最大链路质量之商与所述预设检测参数相乘的乘积,作为所述第一节点调整后的检测参数。
3.根据权利要求1或2所述的方法,其特征在于,所述故障通知中携带有第一可信度,所述第一可信度为所述目标节点确定的所述网关故障的可信度,所述方法还包括:
所述第一节点获取第二可信度,所述第二可信度为当前时刻所述第一节点获取的网关故障的可信度;
所述第一节点根据所述第一可信度、所述第二可信度以及所述第一可信度和所述第二可信度分别对应的权重,更新当前时刻所述网关故障的可信度。
4.根据权利要求3所述的方法,其特征在于,所述第一节点根据所述第一可信度、所述第二可信度以及所述第一可信度和所述第二可信度分别对应的权重,更新当前时刻所述网关故障的可信度之后,所述方法还包括:
所述第一节点根据当前时刻更新后的所述网关故障的可信度与当前时刻生成的随机数之间的关系,以及当前时刻所述第一节点的工作状态,调整所述第一节点的工作状态。
5.根据权利要求4所述的方法,其特征在于,所述第一节点根据当前时刻更新后的所述网关故障的可信度与当前时刻生成的随机数之间的关系,以及当前时刻所述第一节点的工作状态,调整所述第一节点的工作状态,包括:
所述第一节点在确定所述当前时刻更新后的所述网关故障的可信度大于所述随机数,如果当前时刻所述第一节点的工作状态为入网状态,则所述第一节点将当前时刻所述第一节点的工作状态调整为重连状态;
或者,如果当前时刻所述第一节点的工作状态为重连状态,则所述第一节点放弃与所述目标节点建立新的链路,以及将所述第一节点的重连次数阈值减小预设步长。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述第一节点根据所述故障通知,获取当前链路质量,包括:
所述第一节点根据所述网状网络的最大延迟、所述网状网络的通信延迟、所述网状网络的最大延迟与所述网状网络的通信延迟之商的权重和所述网状网络的最大跳数、当前时刻所述第一节点与所述网关之间的链路的跳数、所述网状网络的最大跳数、当前时刻所述第一节点与所述网关之间的链路的跳数之商的权重,获取当前链路质量。
7.一种调整节点检测参数的方法,用于包括网关和多个节点的网状网络中,所述多个节点中包括目标节点,其特征在于,所述方法包括:
所述目标节点向所述网状网络广播发送故障通知,所述故障通知用于指示网关故障以及用于指示多个节点中每个节点调整各自的检测参数,所述检测参数包括心跳丢失阈值和重连次数阈值。
8.根据权利要求7所述的方法,其特征在于,所述多个节点还包括第一节点,所述方法还包括:
所述目标节点接收所述第一节点发送的重连连接请求消息,所述重连连接请求消息用于指示所述目标节点建立所述第一节点与所述网关之间的链路;
所述目标节点向第一节点单播发送所述故障通知。
9.根据权利要求7或8所述的方法,其特征在于,所述故障通知中携带有所述目标节点确定的所述网关故障的可信度。
10.一种节点,用于包括网关和多个节点的网状网络中,所述节点作为所述多个节点中的第一节点,其特征在于,所述节点包括:
获取单元,用于获取目标节点发送的故障通知,该故障通知用于指示网关故障以及用于指示多个节点中每个节点调整各自的检测参数,所述目标节点为所述多个节点中确定所述网关存在故障的节点;
所述获取单元,还用于根据所述故障通知,获取当前链路质量以及所述网状网络中的最大链路质量,所述当前链路质量表示当前时刻所述第一节点与所述网关之间的链路质量;
调整单元,用于根据所述当前链路质量、所述最大链路质量以及预设检测参数,调整所述第一节点的检测参数,所述检测参数包括心跳丢失阈值和重连次数阈值。
11.根据权利要求10所述的节点,其特征在于,
所述获取单元,还用于获取所述当前链路质量与所述最大链路质量之商;
所述调整单元,具体用于:将所述当前链路质量与所述最大链路质量之商与所述预设检测参数相乘的乘积,作为所述第一节点调整后的检测参数。
12.根据权利要求10或11所述的节点,其特征在于,所述故障通知中携带有第一可信度,所述第一可信度为所述目标节点确定的所述网关故障的可信度,所述获取单元,还用于获取第二可信度,所述第二可信度为当前时刻所述第一节点获取的网关故障的可信度;
所述节点还包括:
更新单元,用于根据所述第一可信度、所述第二可信度以及所述第一可信度和所述第二可信度分别对应的权重,更新当前时刻所述网关故障的可信度。
13.根据权利要求12所述的节点,其特征在于,所述调整单元,用于根据当前时刻更新后的所述网关故障的可信度与当前时刻生成的随机数之间的关系,以及当前时刻所述第一节点的工作状态,调整所述第一节点的工作状态。
14.一种节点,用于包括网关和多个节点的网状网络中,所述节点作为所述多个节点中的目标节点,其特征在于,所述节点包括:
发送单元,用于向所述网状网络广播发送故障通知,所述故障通知用于指示网关故障以及用于指示多个节点中每个节点调整各自的检测参数,所述检测参数包括心跳丢失阈值和重连次数阈值。
15.根据权利要求14所述的节点,其特征在于,所述多个节点还包括第一节点,所述目标节点还包括:
接收单元,用于接收所述第一节点发送的重连连接请求消息,所述重连连接请求消息用于指示所述目标节点建立所述第一节点与所述网关之间的链路;
所述发送单元还用于,向所述第一节点单播发送所述故障通知。
16.一种网状网络,其特征在于,所述网状网络包括:网关和多个节点;所述多个节点中包括如权利要求10-13中任一项所述的节点和如权利要求14或15所述的节点。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710267630.9A CN108737142B (zh) | 2017-04-21 | 2017-04-21 | 一种调整节点检测参数的方法、节点和网状网络 |
PCT/CN2018/074492 WO2018192288A1 (zh) | 2017-04-21 | 2018-01-29 | 一种调整节点检测参数的方法、节点和网状网络 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710267630.9A CN108737142B (zh) | 2017-04-21 | 2017-04-21 | 一种调整节点检测参数的方法、节点和网状网络 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108737142A true CN108737142A (zh) | 2018-11-02 |
CN108737142B CN108737142B (zh) | 2020-11-06 |
Family
ID=63855657
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710267630.9A Active CN108737142B (zh) | 2017-04-21 | 2017-04-21 | 一种调整节点检测参数的方法、节点和网状网络 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN108737142B (zh) |
WO (1) | WO2018192288A1 (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110177353A (zh) * | 2019-06-17 | 2019-08-27 | 腾讯科技(深圳)有限公司 | 用于车辆通信的副链路监测方法、装置、介质及电子设备 |
CN110752952A (zh) * | 2019-10-25 | 2020-02-04 | 腾讯科技(深圳)有限公司 | 网络故障定位方法、装置、网络设备及计算机存储介质 |
CN113128297A (zh) * | 2019-12-31 | 2021-07-16 | 深圳云天励飞技术有限公司 | 一种设备对接方法、装置、电子设备及存储介质 |
CN113347679A (zh) * | 2021-05-31 | 2021-09-03 | 浙江大华技术股份有限公司 | 一种数据传输方法、装置、存储介质及电子装置 |
WO2021207960A1 (zh) * | 2020-04-15 | 2021-10-21 | 云图技术有限公司 | 一种实现断线重连的数据处理方法、装置、设备及系统 |
CN114285782A (zh) * | 2021-12-22 | 2022-04-05 | 深圳电器公司 | 数据处理方法及相关装置 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101039313A (zh) * | 2006-03-17 | 2007-09-19 | 广东省电信有限公司研究院 | 一种网络实体分别独立控制协议心跳的实现方法 |
US20080232259A1 (en) * | 2007-03-21 | 2008-09-25 | Cisco Technology, Inc. | Fault Reporting Tag for Mesh Access Points |
CN101682535A (zh) * | 2007-04-13 | 2010-03-24 | Hart通信基金会 | 无线网络中的自适应调度 |
CN102026269A (zh) * | 2009-09-17 | 2011-04-20 | 中兴通讯股份有限公司 | 测量上报触发时间参数的优化方法及装置 |
CN102118773A (zh) * | 2011-03-21 | 2011-07-06 | 华为技术有限公司 | 检测网络节点间链路连接状态的方法及相关设备 |
CN102447631A (zh) * | 2011-12-28 | 2012-05-09 | 华为终端有限公司 | 一种心跳连接方法,相关装置以及系统 |
CN103346944A (zh) * | 2013-06-18 | 2013-10-09 | 北京卓越信通电子股份有限公司 | 多点协同检测、多通道的环网、节点装置及检测方法 |
CN103491592A (zh) * | 2013-10-16 | 2014-01-01 | 浙江中控技术股份有限公司 | 无线mesh传感器网络路径构建方法、装置及网关 |
CN106452989A (zh) * | 2016-08-31 | 2017-02-22 | 北京小米移动软件有限公司 | 建立智能场景的方法及装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101674217B (zh) * | 2008-09-10 | 2012-09-05 | 中兴通讯股份有限公司 | 一种在mesh网络中实现永久环网保护的方法 |
CN102685768B (zh) * | 2011-03-08 | 2016-02-03 | 华为技术有限公司 | 心跳消息的处理方法、心跳周期的获取方法及接入网设备 |
-
2017
- 2017-04-21 CN CN201710267630.9A patent/CN108737142B/zh active Active
-
2018
- 2018-01-29 WO PCT/CN2018/074492 patent/WO2018192288A1/zh active Application Filing
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101039313A (zh) * | 2006-03-17 | 2007-09-19 | 广东省电信有限公司研究院 | 一种网络实体分别独立控制协议心跳的实现方法 |
US20080232259A1 (en) * | 2007-03-21 | 2008-09-25 | Cisco Technology, Inc. | Fault Reporting Tag for Mesh Access Points |
CN101682535A (zh) * | 2007-04-13 | 2010-03-24 | Hart通信基金会 | 无线网络中的自适应调度 |
CN102026269A (zh) * | 2009-09-17 | 2011-04-20 | 中兴通讯股份有限公司 | 测量上报触发时间参数的优化方法及装置 |
CN102118773A (zh) * | 2011-03-21 | 2011-07-06 | 华为技术有限公司 | 检测网络节点间链路连接状态的方法及相关设备 |
CN102447631A (zh) * | 2011-12-28 | 2012-05-09 | 华为终端有限公司 | 一种心跳连接方法,相关装置以及系统 |
CN103346944A (zh) * | 2013-06-18 | 2013-10-09 | 北京卓越信通电子股份有限公司 | 多点协同检测、多通道的环网、节点装置及检测方法 |
CN103491592A (zh) * | 2013-10-16 | 2014-01-01 | 浙江中控技术股份有限公司 | 无线mesh传感器网络路径构建方法、装置及网关 |
CN106452989A (zh) * | 2016-08-31 | 2017-02-22 | 北京小米移动软件有限公司 | 建立智能场景的方法及装置 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110177353A (zh) * | 2019-06-17 | 2019-08-27 | 腾讯科技(深圳)有限公司 | 用于车辆通信的副链路监测方法、装置、介质及电子设备 |
CN110177353B (zh) * | 2019-06-17 | 2021-11-05 | 腾讯科技(深圳)有限公司 | 用于车辆通信的副链路监测方法、装置、介质及电子设备 |
CN110752952A (zh) * | 2019-10-25 | 2020-02-04 | 腾讯科技(深圳)有限公司 | 网络故障定位方法、装置、网络设备及计算机存储介质 |
CN110752952B (zh) * | 2019-10-25 | 2022-02-22 | 腾讯科技(深圳)有限公司 | 网络故障定位方法、装置、网络设备及计算机存储介质 |
CN113128297A (zh) * | 2019-12-31 | 2021-07-16 | 深圳云天励飞技术有限公司 | 一种设备对接方法、装置、电子设备及存储介质 |
WO2021207960A1 (zh) * | 2020-04-15 | 2021-10-21 | 云图技术有限公司 | 一种实现断线重连的数据处理方法、装置、设备及系统 |
CN113347679A (zh) * | 2021-05-31 | 2021-09-03 | 浙江大华技术股份有限公司 | 一种数据传输方法、装置、存储介质及电子装置 |
CN113347679B (zh) * | 2021-05-31 | 2023-06-13 | 浙江大华技术股份有限公司 | 一种数据传输方法、装置、存储介质及电子装置 |
CN114285782A (zh) * | 2021-12-22 | 2022-04-05 | 深圳电器公司 | 数据处理方法及相关装置 |
Also Published As
Publication number | Publication date |
---|---|
CN108737142B (zh) | 2020-11-06 |
WO2018192288A1 (zh) | 2018-10-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108737142A (zh) | 一种调整节点检测参数的方法、节点和网状网络 | |
CN106375231B (zh) | 一种流量切换方法、设备及系统 | |
EP2621130B1 (en) | Route calculation method and master node device in virtual network element | |
US8811398B2 (en) | Method for routing data packets using VLANs | |
US9491089B2 (en) | Automatic aggregation of inter-device ports/links in a virtual device | |
US9450893B2 (en) | System and method for providing network route redundancy across layer 2 devices | |
US20150180705A1 (en) | Controller placement for fast failover in the split architecture | |
Lei et al. | SWAN: An SDN based campus WLAN framework | |
US20120039161A1 (en) | Automated traffic engineering for fat tree networks | |
CN108616912B (zh) | 一种网络质量优化方法及装置 | |
US20120051252A1 (en) | Node apparatus and communication method | |
CA2843355A1 (en) | Method and apparatus for resilient routing of control traffic in a split-architecture system | |
US9712424B2 (en) | Method for configuring node devices of a mesh communications network, computer program, information storage means and system | |
US10454809B2 (en) | Automatic network topology detection for merging two isolated networks | |
CN106713177B (zh) | 一种多控制器的wmSDN组网方法 | |
WO2021083208A1 (zh) | 网络拓扑发现方法及节点设备 | |
JP2011160363A (ja) | コンピュータシステム、コントローラ、スイッチ、及び通信方法 | |
KR101665276B1 (ko) | 가상 섀시 시스템에서 패스 스루 모드를 위한 시스템 및 방법 | |
US9984028B2 (en) | Redundancy for port extender chains | |
US20120099443A1 (en) | Path diagnosis in communication networks | |
CN113783748A (zh) | 一种路由检测的方法及网络设备 | |
CN108289044A (zh) | 数据转发方法、确定静态路由的链路状态方法及网络设备 | |
EP1061697B1 (en) | Creating a spanning tree of a network including clusters | |
Josbert et al. | Solution for industrial networks: Resilience-based sdn technology | |
Veeramani et al. | Novel approach to secure channel using c-scan and microcontroller in openflow |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |