CN112911520B - 自组网中确定主节点的方法、装置及存储介质 - Google Patents
自组网中确定主节点的方法、装置及存储介质 Download PDFInfo
- Publication number
- CN112911520B CN112911520B CN201911230082.8A CN201911230082A CN112911520B CN 112911520 B CN112911520 B CN 112911520B CN 201911230082 A CN201911230082 A CN 201911230082A CN 112911520 B CN112911520 B CN 112911520B
- Authority
- CN
- China
- Prior art keywords
- node
- time period
- nodes
- judging
- data packet
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/06—Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
-
- 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
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W24/00—Supervisory, monitoring or testing arrangements
- H04W24/02—Arrangements for optimising operational condition
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W24/00—Supervisory, monitoring or testing arrangements
- H04W24/08—Testing, supervising or monitoring using real traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种自组网中确定主节点的方法、装置及存储介质,该方法包括:首次加入网络或在预定时间段内未收到心跳报文时节点广播探测数据包,开始T1计时时间段计时,T1内未收到判选数据包和心跳报文,超出T1广播判选数据包,节点的判选数据包携带用于判决主节点的判决标识值;与T1相邻的T2内,收到判选数据包未收到心跳报文,通过节点的判决标识值、其它节点的判决标识值以及预设判决策略确定节点是否为主节点;超出T1和T2之和,未收到判选数据包和心跳报文,确定节点为主节点,且收到其它节点的探测数据包或判选数据包,立即广播心跳报文。通过这种方式,本发明能够在网络中自主确定主节点。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种自组网中确定主节点的方法、通信装置及一种计算机可读存储介质。
背景技术
广播是一种信息的传播方式,指网络中的某一设备同时向网络中所有的其它设备发送数据,这个数据所能广播到的范围即为广播域(Broadcast Domain)。
在同一个网络的广播域内存在多个同类业务节点的情况下,选择作为主机的节点(即主节点)可以作为整个广播域内的管理单元或代理单元,来控制或者管理广播域内其它同类节点。现有技术中网络组网方式是手工配置的组网方式,每个节点需要手动配置IP、主从模式,如果是从节点,需要配置主节点IP等信息。
本申请的发明人在长期的研发过程中发现,人工配置组网的方式存在问题:主节点瘫痪容易导致整个网络失灵,且主节点断网需要人工修复,运维成本大。
发明内容
本发明主要解决的技术问题是提供一种自组网中确定主节点的方法、一种通信装置及计算机可读存储介质,能够在网络中自主确定主节点,从而为避免因主节点瘫痪导致整个网络失灵提供技术支持,为避免因主节点断网时的人工修复提供技术支持,进而能够降低运维成本。
为解决上述技术问题,本发明采用的一个技术方案是:提供一种自组网中确定主节点的方法,所述方法包括:节点首次加入网络或者在预定时间计时时间段内未收到心跳报文时,所述节点广播探测数据包,并开始T1计时时间段计时,在所述T1计时时间段内,若节点没有接收到其它节点广播的判选数据包和其它节点广播的心跳报文,在时间超出所述T1计时时间段时,所述节点广播判选数据包,其中所述判选数据包携带有节点用于判决主节点的判决标识值,所述T1大于2倍的t,所述t为任意两个节点之间的最长时延;在与所述T1计时时间段相邻的T2计时时间段内,若所述节点接收到其它节点广播的判选数据包且未接收到其它节点广播的心跳报文,则通过所述节点的判决标识值、所述其它节点的判决标识值以及预设判决策略,确定所述节点是否为主节点,所述T2大于2倍的t;在时间超出所述T1计时时间段和所述T2计时时间段之和的总计时时间段时,若所述节点没有接收到其它节点广播的判选数据包和其它节点广播的心跳报文,则确定所述节点为主节点;若确定所述节点为主节点,且接收到其它节点广播的探测数据包或判选数据包,则使所述节点立即广播心跳报文。
其中,所述在与所述T1计时时间段相邻的T2计时时间段内,若所述节点接收到其它节点广播的判选数据包且未接收到其它节点广播的心跳报文,则通过所述节点的判决标识值、所述其它节点的判决标识值以及预设判决策略,确定所述节点是否为主节点,包括:在所述T2计时时间段内,若所述节点接收到其它节点广播的判选数据包且未接收到其它节点广播的心跳报文,则将所述节点的判决标识值与所述其它节点的判决标识值进行比较,所述节点的判决标识值为最大值或最小值,则确定所述节点为主节点;所述节点的判决标识值为非最大值或非最小值,则确定所述节点为从节点。
其中,所述判决标识值包括IP值、预设值或节点的固有唯一标识值。
其中,所述方法还包括:在所述T1计时时间段内,若所述节点接收到其它节点广播的判选数据包,则确定所述节点为从节点。
其中,所述方法还包括:在所述T1计时时间段和所述T2计时时间段之和的总时间段内,若所述节点接收到其它节点广播的心跳报文,则确定所述节点为从节点。
其中,所述方法还包括:若确定所述节点为主节点,则使所述节点以T3时间间隔为周期广播心跳报文,所述T3大于2倍的(T1+T2+t)。
其中,所述预定计时时间段大于T3。
为解决上述技术问题,本发明采用的另一个技术方案是:提供一种通信装置,所述装置包括:处理器、存储器以及通信电路,所述处理器分别耦接于所述存储器和所述通信电路,所述存储器用于存储计算机程序;所述处理器用于在执行存储器上存储的一个或多个程序时,能够实现如上所述的方法。
为解决上述技术问题,本发明采用的又一个技术方案是:提供一种计算机可读存储介质,其上存储有一个或多个程序数据,所述一个或多个程序数据被处理器执行时实现如上所述的方法。
本发明的有益效果是:区别于现有技术的情况,本发明节点首次加入网络或者在预定计时时间段内未收到心跳报文时,节点广播探测数据包,并开始T1计时时间段计时,在T1计时时间段内,若节点没有接收到其它节点广播的判选数据包和其它节点广播的心跳报文,在时间超出T1计时时间段时,使节点广播判选数据包,其中判选数据包携带有节点用于判决主节点的判决标识值,T1大于2倍的t,t为任意两个节点之间的最长时延;在与T1计时时间段相邻的T2计时时间段内,若节点接收到其它节点广播的判选数据包且未接收到其它节点广播的心跳报文,则通过节点的判决标识值、其它节点的判决标识值以及预设判决策略,确定节点是否为主节点,T2大于2倍的t;在时间超出T1计时时间段和T2计时时间段之和的总计时时间段时,若节点没有接收到其它节点广播的判选数据包和其它节点广播的心跳报文,则确定节点为主节点;若确定节点为主节点,且接收到其它节点广播的探测数据包或判选数据包,则使节点立即广播心跳报文。由于节点在T1内确定当前广播域内没有主节点时,广播携带有节点用于判决主节点的判选数据包,以便于其它节点尽快据此判决主节点;在T2内依然确定当前广播域内没有主节点且收到其它节点广播的判选数据包,即可据此通过节点的判决标识值、其它节点的判决标识值以及预设判决策略,确定节点是否为主节点;在超出T1和T2之和的总计时时间段时,依然确定当前广播域内还没有确定出主节点时,节点即可确定自身为主节点;通过这种方式,能够在网络中自主确定主节点,提高自组网自修复能力,提高相关产品容错能力,降低运维成本,为后续的自组网提供技术支持,从而为避免因主节点瘫痪导致整个网络失灵提供技术支持,为避免因主节点断网时的人工修复提供技术支持。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。其中:
图1是本发明自组网中确定主节点的方法一实施方式的流程示意图;
图2是本发明自组网中确定主节点的方法另一实施方式的流程示意图;
图3是本发明自组网中确定主节点的方法在一实际应用中的流程示意图;
图4是本发明自组网中确定主节点的方法在另一实际应用中的示意图;
图5是本发明自组网中确定主节点的方法在又一实际应用中的示意图;
图6是本发明通信装置一实施方式的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性的劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
参见图1,图1是本发明自组网中确定主节点的方法一实施方式的流程示意图,该方法包括:
步骤S101:节点首次加入网络或者在预定计时时间段内未收到心跳报文时,节点广播探测数据包,并开始T1计时时间段计时,在T1计时时间段内,若节点没有接收到其它节点广播的判选数据包和其它节点广播的心跳报文,在时间超出T1计时时间段时,使节点广播判选数据包,其中判选数据包携带有节点用于判决主节点的判决标识值,T1大于2倍的t,t为任意两个节点之间的最长时延。
时延是指数据从网络的一端传送到另一端所需要的时间。t为任意两个节点之间的最长时延,也就是任意两个节点之间最坏情况下的时延,2倍的t也就是任意两个节点中,其中一个节点向另一节点正向发送数据(最长时延t)与另一节点接收到其中一个节点的数据后,另一节点反向向其中一个节点反馈数据(最长时延t)所需要的总最长时延2t。
T1计时时间段的起点是节点广播探测数据包的时刻,节点首次加入网络或者节点在预定计时时间段内未收到心跳报文时,节点广播探测数据包。通常情况下,心跳报文用于监视机器网络存储器的运行状态,在本实施例中,心跳报文是确定为主节点的节点广播的,还用于通知其他节点当前广播域内的主节点。
节点为了探测广播域当前的网络环境,在首次加入网络或者在预定计时时间段内未收到心跳报文的时候广播探测数据包,如果当前广播域已经确定出主节点,那么节点已经没有必要进入确定主节点的流程,节点广播探测数据包后,主节点接收到该节点广播的探测数据包,即刻广播心跳报文,节点收到心跳报文,即可确认当前广播域已经确定出主节点,不需要进入确定主节点的流程,确定自身为从节点即可。通过这种方式,能够简化流程,节省时间。
判选数据包是节点首次加入网络或者在预定计时时间段内未收到心跳报文时在时间超出T1计时时间段时广播的一包数据,该判选数据包携带有节点用于判决主节点的判决标识值。如果节点首次加入网络或者在预定计时时间段内未收到心跳报文时在广播探测数据包开始计时的T1计时时间段内,没有接收到其它节点广播的判选数据包和其它节点广播的心跳报文,说明当前广播域当前时间段还没有确定出主节点。
主节点是整个广播域内的管理单元或代理单元,控制或者管理广播域内其它同类节点。如果主节点瘫痪或者主节点出现问题容易导致整个网络失灵,因此,尽快确定广播域内的主节点尤为重要。
节点需要在当前广播域中尽快确认自身是否是主节点,因此,在时间超出T1计时时间段时,使节点广播判选数据包,其中判选数据包携带有节点用于判决主节点的判决标识值,可以使其它节点接收到节点广播的判选数据包后,得到节点用于判决主节点的判决标识值,其它节点可以据此判决其它节点是否可以确认为主节点。
步骤S102:在与T1计时时间段相邻的T2计时时间段内,若节点接收到其它节点广播的判选数据包且未接收到其它节点广播的心跳报文,则通过节点的判决标识值、其它节点的判决标识值以及预设判决策略,确定节点是否为主节点,T2大于2倍的t。
T2计时时间段与T1计时时间段相邻,也就是说T2计时时间段的起点是T1计时时间段的终点。
预设判决策略是指预先设定的关于如何通过节点的判决标识值确定主节点的策略,包括但不限于:节点的判决标识值如何选择、如何根据节点的判决标识值确定主节点等等。
如果在T2计时时间段内节点接收到其它节点广播的判选数据包且未接收到其它节点广播的心跳报文,说明当前广播域内当前时间段还没有确定出主节点,其它节点发出判选数据包,以使接收到其它节点广播的判选数据包的节点,据此通过节点的判决标识值、其它节点的判决标识值以及预设判决策略,来确定节点是否为主节点。
判决标识值的作用是用于判决主节点,判决标识值可以根据具体的实际应用来确定。在一实施例中,选择节点的IP值作为节点用于判决主节点的判决标识值,以多个IP值中最大IP值为胜出规则,来确定主节点。在其它实施例中,判决主节点的判决标识值也可以是预先设定的,或者是节点的固有唯一标识,等等。
步骤S103:在时间超出T1计时时间段和T2计时时间段之和的总计时时间段时,若节点没有接收到其它节点广播的判选数据包和其它节点广播的心跳报文,则确定节点为主节点。
步骤S104:若确定节点为主节点,且接收到其它节点广播的探测数据包或判选数据包,则使节点立即广播心跳报文。
在时间超出T1计时时间段和T2计时时间段之和的总计时时间段时,如果节点没有接收到其它节点广播的判选数据包和其它节点广播的心跳报文,说明当前广播域内当前时间段还没有确定出主节点,而且也没有其它节点发出判选数据包,此时节点即可确定自身为主节点,以便于快速执行主节点的管理功能,使整个网络快速正常运作。
如果确定节点为主节点,且接收到其它节点广播的探测数据包或判选数据包,则使节点立即广播心跳报文,通过这种方式可以避免其他节点再次进入确定主节点的方法流程中形成死循环,从而达到简化流程、节省时间的目的。
需要说明的是,在实际应用中,在需要计时时(例如T1计时时间段,T2计时时间段),节点均可以申请定时器用于计时,在不需要计时时,则释放定时器,以节省资源。例如定时器超时或者定时器未超时但已经确定节点为从节点,均释放定时器。
本发明实施例节点首次加入网络或者在预定计时时间段内未收到心跳报文时,节点广播探测数据包,并开始T1计时时间段计时,在T1计时时间段内,若节点没有接收到其它节点广播的判选数据包和其它节点广播的心跳报文,在时间超出T1计时时间段时,使节点广播判选数据包,其中判选数据包携带有节点用于判决主节点的判决标识值,T1大于2倍的t,t为任意两个节点之间的最长时延;在与T1计时时间段相邻的T2计时时间段内,若节点接收到其它节点广播的判选数据包且未接收到其它节点广播的心跳报文,则通过节点的判决标识值、其它节点的判决标识值以及预设判决策略,确定节点是否为主节点,T2大于2倍的t;在时间超出T1计时时间段和T2计时时间段之和的总计时时间段时,若节点没有接收到其它节点广播的判选数据包和其它节点广播的心跳报文,则确定节点为主节点;若确定节点为主节点,且接收到其它节点广播的探测数据包或判选数据包,则使节点立即广播心跳报文。由于节点在T1内确定当前广播域内没有主节点时,广播携带有节点用于判决主节点的判选数据包,以便于其它节点尽快据此判决主节点;在T2内依然确定当前广播域内没有主节点且收到其它节点广播的判选数据包,即可据此通过节点的判决标识值、其它节点的判决标识值以及预设判决策略,确定节点是否为主节点;在超出T1和T2之和的总计时时间段时,依然确定当前广播域内还没有确定出主节点时,节点即可确定自身为主节点;通过这种方式,能够在网络中自主确定主节点,提高自组网自修复能力,提高相关产品容错能力,降低运维成本,为后续的自组网提供技术支持,从而为避免因主节点瘫痪导致整个网络失灵提供技术支持,为避免因主节点断网时的人工修复提供技术支持。
其中,参见图2,步骤S102中,在与T1计时时间段相邻的T2计时时间段内,若节点接收到其它节点广播的判选数据包且未接收到其它节点广播的心跳报文,则通过节点的判决标识值、其它节点的判决标识值以及预设判决策略,确定节点是否为主节点,具体可以包括:子步骤S1021、子步骤S1022以及子步骤S1023。
子步骤S1021:在T2计时时间段内,若节点接收到其它节点广播的判选数据包且未接收到其它节点广播的心跳报文,将节点的判决标识值与其它节点的判决标识值进行比较。
子步骤S1022:若节点的判决标识值为最大值或最小值,则确定节点为主节点。
子步骤S1023:若节点的判决标识值为非最大值或非最小值,则确定节点为从节点。
在本实施例中,预设判决策略是将节点的判决标识值与其它节点的判决标识值进行比较,如果节点的判决标识值为最大值或最小值,则确定节点为主节点,如果节点的判决标识值为非最大值或非最小值,则确定节点为从节点。
例如:节点为节点1,其它节点为节点2;在一具体应用中,节点1的判决标识值为5,节点2的判决标识值为4,节点1和节点2比较,那么节点1的判决标识值为最大值,即可确定节点1为主节点,节点2的判决标识值非最大值,即可确定节点2为从节点;在另一具体应用中,节点1的判决标识值为1,节点2的判决标识值为4,节点1和节点2比较,那么节点1的判决标识值为最小值,即可确定节点1为主节点,节点2的判决标识值非最小值,即可确定节点2为从节点;
具体地,判决标识值包括IP值、预设值、或节点的固有唯一标识值。选择IP值为用于判决主节点的判决标识值,简单、方便且直观。
其中,该方法还包括:在T1计时时间段内,若节点接收到其它节点广播的判选数据包,则确定节点为从节点。
由于判选数据包是节点首次加入网络或者在预定计时时间段内未收到心跳报文时,在广播探测数据包并开始T1计时时间段计时,当时间超出T1计时时间段时广播的一包数据,该判选数据包携带有节点用于判决主节点的判决标识值,而节点在T1计时时间段内就接收到其它节点广播的判选数据包,说明其它节点参与组网时间早,且根据时间判断,广播域中已经有其它节点参与判决主节点,因此,为了尽可能快速确定主节点,节点没有必要再去参与判决主节点,直接确定自身为从节点,从而为尽快确定主节点简化流程,节省时间。
在一实施例中,该方法还包括:在T1计时时间段和T2计时时间段之和的总时间段内,若当前节点接收到其它节点广播的心跳报文,则确定当前节点为从节点。
心跳报文是确定为主节点的节点广播的,在T1计时时间段和T2计时时间段之和的总时间段内,如果当前节点接收到其它节点广播的心跳报文,则可以确定广播域内已经确定出主节点,当前节点确定自身为从节点即可,通过这种方式,可以简化流程,节省时间。
其中,该方法还包括:若确定节点为主节点,则使节点以T3时间间隔为周期广播心跳报文,T3大于2倍的(T1+T2+t)。
在本实施例中,考虑到确定主节点需要的时间周期包括T1时间段、T2时间段以及任意两个节点之间的最大时延,发送心跳报文的周期T3大于2倍的(T1+T2+t)。如果节点被确定为主节点,立即使节点以T3时间间隔为周期广播心跳报文,可以避免其他节点再次进入确定主节点的方法流程中形成死循环,从而达到简化流程、节省时间的目的。
在另一实施例中,若确定节点为从节点,且在预定计时时间段(简写为T4)内未接收到其它节点广播的心跳报文,则使节点重新进入步骤S101,T4大于T3,T3大于2倍的(T1+T2+t)。
在本实施例中,如果已经确定节点为从节点,按照正常逻辑,在一个T3时间间隔内,节点应该会收到其它节点广播的心跳报文,如果时间超出T3时间间隔(即在T4计时时间段内),还未收到心跳报文,说明当前广播域主节点又出现了新的问题或者还没有确定出主节点,此时节点需要重新进入确定主节点的方法流程中,即重新进入步骤S101。通过这种方式,能够避免广播域中主节点出现新的问题或者还没有确定出主节点时,从节点无休止的等待。
参见图3,图3是本发明自组网中确定主节点的方法在一实际应用中的流程示意图,该方法包括:
步骤S1:节点参与组网(即节点首次加入网络或者在预定计时时间段内未收到心跳报文时),并广播探测数据包,立即申请并启动定时器T1。
步骤S2:判断定时器T1是否超时?如果超时,进入步骤S4,如果没有超时,进入步骤S3。
步骤S3:节点是否收到其它节点广播的判选数据包和心跳报文。如果收到,进入步骤S10,如果没有收到,进入步骤S2。
步骤S4:节点立即广播判选数据包,并立即申请启动定时器T2,判选数据包携带节点用于判决主节点的判决标识值。
步骤S5:节点是否收到其它节点广播的判选数据包和其它节点广播的心跳报文。如果收到其它节点广播的心跳报文,进入步骤S10;如果收到其它节点广播的判选数据包,则进入步骤S7,如果没有收到其它节点广播的判选数据包和心跳报文,进入步骤S6。
步骤S6:判断定时器T2是否超时?如果超时,则进入步骤S8,如果没有超时,返回步骤S5。
步骤S7:通过节点的判决标识值、其它节点的判决标识值以及预设判决策略,确定节点是否为最大值或最小值,如果是,进入步骤S8,如果不是,进入步骤S10。
步骤S8:确定节点为主节点。
步骤S9:节点立即以T3时间间隔为周期广播心跳报文。
步骤S10:确定节点为从节点。
通过上述方式,一方面能够在网络中自主确定主节点,为后续的自组网提供技术支持,从而为避免因主节点瘫痪导致整个网络失灵提供技术支持,为避免因主节点断网时的人工修复提供技术支持,进而能够降低运维成本;另一方面又可根据网络中不同情况,灵活简化确定主节点的流程,节省时间。
例如,在一实际应用中,经过严格的计算,在局域网环境下,假设网络最坏延时为100ms,设定T1及T2定时器为300ms,选出主机(主节点)的时间为300ms+300ms+2*100ms=800ms,小于1s,性能上达到要求,假设增强型虚拟集群系统(XPT,Extended Pseudo Trunk)产品经过本发明的方法进行自组网,可以提升产品网络自修复能力、降低人工运维成本。
参见图4,图4是本发明自组网中确定主节点的方法在另一实际应用中的示意图。假设三个节点(节点1、节点2、节点x)在局域网内通信,以IP值为节点用于判决主节点的判决标识值,并以多个节点的IP值中最大IP值为胜出规则来确定主节点。从图可以看到:
节点1(192.168.2.2)发探测数据包(图中标识为第一包)时间最早,其广播探测数据包经过延时t1到达其它节点,例如节点2(192.168.2.3),随后节点1在超出T1计时时间段时发判选数据包(图中标识为第二包),经过延时t1到达其它节点,例如节点2(192.168.2.3)。
节点2(192.168.2.3)在节点1(192.168.2.2)发探测数据包后t1时间内发送探测数据包,在超出超出T1计时时间段时发判选数据包,经过延时t2到达其它节点,例如节点1(192.168.2.2)。
节点1的192.168.2.2小于节点2的192.168.2.3,因此,节点1确定为从节点,并标记为从节点(即从机),节点2确定为主节点(即主机),并标记为主节点。其它较节点1(192.168.2.2)晚于超过t1时间发探测数据包的节点x(192.168.2.x)都会被标记为从节点(即从机)。
参见图5,图5是本发明自组网中确定主节点的方法在又一实际应用中的示意图。如图所示,如果节点2(192.168.2.3)已经标记为主节点,节点2会周期性发送心跳报文,如果有其它新的节点x(192.168.2.x)发送探测数据包,则节点2(192.168.2.3)会立即发送一次心跳报文,节点x(192.168.2.x)在收到其它节点的心跳报文后会立即标记为从节点(即从机)。
参见图6,图6是本发明通信装置一实施方式的结构示意图,该装置包括:处理器1、存储器2以及通信电路3,处理器1分别耦接于存储器2和通信电路3,存储器2用于存储计算机程序;处理器1用于在执行存储器2上存储的一个或多个程序时,能够实现如上任一项所述的方法。相关内容的详细说明请参见上述方法部分,在此不再赘叙。
本发明实施例还提供了一种计算机可读存储介质,其上存储有一个或多个程序数据,所述一个或多个程序数据被处理器执行时实现上述任一项所述的方法。相关内容的详细说明请参见上述方法部分,在此不再赘叙。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (9)
1.一种自组网中确定主节点的方法,其特征在于,所述方法包括:
节点首次加入网络或者在预定计时时间段内未收到心跳报文时,所述节点广播探测数据包,并开始T1计时时间段计时,在所述T1计时时间段内,若所述节点没有接收到其它节点广播的判选数据包和其它节点广播的心跳报文,在时间超出所述T1计时时间段时,所述节点广播判选数据包,其中所述判选数据包携带有节点用于判决主节点的判决标识值,所述T1大于2倍的t,所述t为任意两个节点之间的最长时延;
在与所述T1计时时间段相邻的T2计时时间段内,所述T2计时时间段的起点是所述T1计时时间段的终点,若所述节点接收到其它节点广播的判选数据包且未接收到其它节点广播的心跳报文,则通过所述节点的判决标识值、所述其它节点的判决标识值以及预设判决策略,确定所述节点是否为主节点,所述T2大于2倍的t;
在时间超出所述T1计时时间段和所述T2计时时间段之和的总计时时间段时,若所述节点没有接收到其它节点广播的判选数据包和其它节点广播的心跳报文,则确定所述节点为主节点;
若确定所述节点为主节点,且接收到其它节点广播的探测数据包或判选数据包,则使所述节点立即广播心跳报文。
2.根据权利要求1所述的方法,其特征在于,所述在与所述T1计时时间段相邻的T2计时时间段内,若所述节点接收到其它节点广播的判选数据包且未接收到其它节点广播的心跳报文,则通过所述节点的判决标识值、所述其它节点的判决标识值以及预设判决策略,确定所述节点是否为主节点,包括:
在所述T2计时时间段内,若所述节点接收到其它节点广播的判选数据包且未接收到其它节点广播的心跳报文,则将所述节点的判决标识值与所述其它节点的判决标识值进行比较,所述节点的判决标识值为最大值或最小值,则确定所述节点为主节点;所述节点的判决标识值为非最大值或非最小值,则确定所述节点为从节点。
3.根据权利要求2所述的方法,其特征在于,所述判决标识值包括IP值、预设值或节点的固有唯一标识值。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述T1计时时间段内,若所述节点接收到其它节点广播的判选数据包,则确定所述节点为从节点。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述T1计时时间段和所述T2计时时间段之和的总时间段内,若所述节点接收到其它节点广播的心跳报文,则确定所述节点为从节点。
6.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
若确定所述节点为主节点,则使所述节点以T3时间间隔为周期广播心跳报文,所述T3大于2倍的(T1+T2+t)。
7.根据权利要求6所述的方法,其特征在于,所述预定计时时间段大于T3。
8.一种通信装置,其特征在于,所述装置包括:处理器、存储器以及通信电路,所述处理器分别耦接于所述存储器和所述通信电路,所述存储器用于存储计算机程序;
所述处理器用于在执行存储器上存储的一个或多个程序时,能够实现如权利要求1-7任一项所述的方法。
9.一种计算机可读存储介质,其上存储有一个或多个程序数据,其特征在于,所述一个或多个程序数据被处理器执行时实现权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911230082.8A CN112911520B (zh) | 2019-12-04 | 2019-12-04 | 自组网中确定主节点的方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911230082.8A CN112911520B (zh) | 2019-12-04 | 2019-12-04 | 自组网中确定主节点的方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112911520A CN112911520A (zh) | 2021-06-04 |
CN112911520B true CN112911520B (zh) | 2022-05-31 |
Family
ID=76110781
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911230082.8A Active CN112911520B (zh) | 2019-12-04 | 2019-12-04 | 自组网中确定主节点的方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112911520B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113692028A (zh) * | 2021-08-25 | 2021-11-23 | 成都长虹网络科技有限责任公司 | 一种Mesh网络中AP设备主从切换方法 |
CN115412419B (zh) * | 2022-08-29 | 2024-05-14 | 福建乐摩物联科技有限公司 | 一种自组网主节点选举及数据同步方法 |
CN115514689B (zh) * | 2022-09-22 | 2024-04-02 | 成都中航信虹科技股份有限公司 | 一种应用程序守护方法、装置及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006129348A (ja) * | 2004-11-01 | 2006-05-18 | Ntt Comware Corp | 親ノード決定システム及び方法、ノード装置、ならびに、コンピュータプログラム |
CN103118084A (zh) * | 2013-01-21 | 2013-05-22 | 浪潮(北京)电子信息产业有限公司 | 一种主节点的选举方法及节点 |
US8804460B1 (en) * | 2011-03-31 | 2014-08-12 | Amazon Technologies, Inc. | Ultrasonic location determination |
CN105991325A (zh) * | 2015-02-10 | 2016-10-05 | 华为技术有限公司 | 处理至少一个分布式集群中的故障的方法、设备和系统 |
CN106301853A (zh) * | 2015-06-05 | 2017-01-04 | 华为技术有限公司 | 集群系统中节点的故障检测方法和装置 |
CN109104348A (zh) * | 2017-06-21 | 2018-12-28 | 比亚迪股份有限公司 | 基于CANopen协议的列车网络数据传输方法、系统及其装置 |
-
2019
- 2019-12-04 CN CN201911230082.8A patent/CN112911520B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006129348A (ja) * | 2004-11-01 | 2006-05-18 | Ntt Comware Corp | 親ノード決定システム及び方法、ノード装置、ならびに、コンピュータプログラム |
US8804460B1 (en) * | 2011-03-31 | 2014-08-12 | Amazon Technologies, Inc. | Ultrasonic location determination |
CN103118084A (zh) * | 2013-01-21 | 2013-05-22 | 浪潮(北京)电子信息产业有限公司 | 一种主节点的选举方法及节点 |
CN105991325A (zh) * | 2015-02-10 | 2016-10-05 | 华为技术有限公司 | 处理至少一个分布式集群中的故障的方法、设备和系统 |
CN106301853A (zh) * | 2015-06-05 | 2017-01-04 | 华为技术有限公司 | 集群系统中节点的故障检测方法和装置 |
CN109104348A (zh) * | 2017-06-21 | 2018-12-28 | 比亚迪股份有限公司 | 基于CANopen协议的列车网络数据传输方法、系统及其装置 |
Non-Patent Citations (1)
Title |
---|
多传感器网络中分簇算法的研究;徐泽民等;《万方数据库》;20181030;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN112911520A (zh) | 2021-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112911520B (zh) | 自组网中确定主节点的方法、装置及存储介质 | |
CN112764407B (zh) | 一种分布式控制的非周期通信方法 | |
CN101610593B (zh) | 接入点、接入控制器以及接入点选择接入控制器的方法 | |
CN109040184B (zh) | 一种主节点的选举方法及服务器 | |
EP2888728B1 (en) | Network discovery with touchlink option | |
EP3732922A1 (en) | Method and apparatus for monitoring zigbee node network status | |
EP3319377B1 (en) | Anchor master node management method and node | |
CN108134986B (zh) | 报文传输方法及装置 | |
CN114338267B (zh) | 多管理节点的维护方法、装置、设备、总线网络及介质 | |
CN106537955B (zh) | 数据传输方法和设备 | |
KR102675137B1 (ko) | 자원 할당 방법, 장비 및 시스템 | |
CN107820277B (zh) | 用于无线网络的父节点装置、终端装置及其数据传输方法 | |
CN111954165B (zh) | 无线同步数据传输方法和装置 | |
CN113347668B (zh) | 一种负载均衡方法、装置、电子设备及存储介质 | |
CN113037798B (zh) | 多网关通信方法、系统、电子设备及存储介质 | |
CN112910740A (zh) | 一种状态上报方法、装置、设备和计算机可读存储介质 | |
JP6676202B2 (ja) | アンカーマスターam管理方法およびノード | |
CN111918338B (zh) | 无线协同代理方法、装置及网络系统 | |
US20160020913A1 (en) | Method for power saving in optical access network by using synchronized sleep cycle | |
CN112533304B (zh) | 自组网络管理方法、装置、系统、电子设备以及存储介质 | |
CN111836385A (zh) | 无线传感网络中网络信标的处理方法及设备 | |
CN113765795A (zh) | 组网方法及装置、系统和存储介质 | |
JP2010178314A (ja) | ネットワークシステム | |
CN111031583A (zh) | 一种信道切换方法及装置 | |
JP2020108164A (ja) | アンカーマスターam管理方法およびノード |
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 |