CN107196779B - 用于实现网络自愈的方法、节点和系统 - Google Patents

用于实现网络自愈的方法、节点和系统 Download PDF

Info

Publication number
CN107196779B
CN107196779B CN201610146578.7A CN201610146578A CN107196779B CN 107196779 B CN107196779 B CN 107196779B CN 201610146578 A CN201610146578 A CN 201610146578A CN 107196779 B CN107196779 B CN 107196779B
Authority
CN
China
Prior art keywords
backup
node
state
version number
person
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
Application number
CN201610146578.7A
Other languages
English (en)
Other versions
CN107196779A (zh
Inventor
马智勇
王作强
罗婕
张坚平
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Telecom Corp Ltd
Original Assignee
China Telecom Corp Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by China Telecom Corp Ltd filed Critical China Telecom Corp Ltd
Priority to CN201610146578.7A priority Critical patent/CN107196779B/zh
Publication of CN107196779A publication Critical patent/CN107196779A/zh
Application granted granted Critical
Publication of CN107196779B publication Critical patent/CN107196779B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/085Retrieval of network configuration; Tracking network configuration history
    • H04L41/0853Retrieval of network configuration; Tracking network configuration history by actively collecting configuration information or by backing up configuration information
    • H04L41/0856Retrieval of network configuration; Tracking network configuration history by actively collecting configuration information or by backing up configuration information by backing up or archiving configuration information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0668Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明提出一种用于实现网络自愈的方法、节点和系统,涉及智能网络领域。其中,本发明的一种用于实现网络自愈的方法包括:在当前状态为非备份者状态时,判断是否能够接收到备份者声明;若未能在第一预定时间内接收到备份者声明,则向网络中各节点广播申请消息;在接收到的申请消息中,查询是否存在比自身备份版本号高的备份版本号;若未在第二预定时间内查询到比自身备份版本号高的备份版本号,则将当前状态变更为备份者状态。通过这样的方法,当非备份者状态的节点未能收到备份者声明时,判断备份者节点离线,申请成为备份者节点,从而能够维持网络中存在备份者节点,实现系统的自愈,提高网络的稳定性。

Description

用于实现网络自愈的方法、节点和系统
技术领域
本发明涉及智能网络领域,特别是一种用于实现网络自愈的方法、节点和系统。
背景技术
智能家居中,灯光系统、温控系统、影音系统与各种传感器组成网络,按照用户的喜好彼此联动。例如,房门打开时,会激活摄像监控,灯光和室温会自动调节,背景音乐会自动打开等等。
为降低系统对控制中心的依赖,可以将场景联动逻辑和接入设备信息保存在备份者节点上。但是,智能家居网络是动态的,各个节点可能随时离线,其中也包括备份者节点。当备份者节点离线时,会导致无法查询到节点的联动信息,导致联动失败。
发明内容
本发明的一个目的在于提出一种当备份者节点离线时保证智能家居多节点联动网络自愈的方案。
根据本发明的一个方面,提出一种用于实现网络自愈的方法,包括:在当前状态为非备份者状态时,判断是否能够接收到备份者声明,其中备份者节点以预定周期发送备份者声明;若未能在第一预定时间内接收到备份者声明,则向网络中各节点广播申请消息,其中申请消息中包括自身节点标识和备份版本号;在接收到的申请消息中,查询是否存在比自身备份版本号高的备份版本号;若未在第二预定时间内查询到比自身备份版本号高的备份版本号,则将当前状态变更为备份者状态,以便成为备份者节点。
进一步地,若未在第二预定时间内查询到比自身备份版本号高的备份版本号,则将当前状态变更为备份者状态的步骤包括:若未在第二预定时间内查询到比自身备份版本号高的备份版本号,则将当前状态变更为候选状态;判断是否接收到备份者声明;若未能在第三预定时间内接收到备份者声明,则将当前状态变更为备份者状态。
进一步地,若在第三预定时间内收到备份者声明,则将当前状态变更为非备份者状态。
进一步地,若在第二预定时间内查询到比自身备份版本号高的备份版本号,则将当前状态变更为等待状态;在接收到备份者声明后,将当前状态变更为非备份者状态。
进一步地,还包括:在接收到备份者声明后,比较自身当前的备份版本号和备份者声明中的备份版本号;若备份者声明中的备份版本号高于自身当前的备份版本号,则向当前处于备份者状态的节点发送备份更新请求,以便更新自身的备份信息。
进一步地,若未能在第一预定时间内接收到备份者声明,则向网络中各节点广播申请消息的步骤包括:若未能在第一预定时间内接收到全部备份者节点发送的备份者声明,则向网络中各节点广播申请消息。
进一步地,若未在第二预定时间内查询到比自身备份版本号高的备份版本号,则将当前状态变更为备份者状态的步骤包括:若未在第二预定时间内查询到比自身备份版本号高的备份版本号,则将当前状态变更为候选状态;判断是否接收到新备份者节点发送的备份者声明,其中新备份者节点是在指定时间范围内从非备份者状态变更到备份者状态的节点;若未能在第三预定时间内接收到新备份者节点发送的备份者声明,则将当前状态变更为备份者状态。
进一步地,若在第三预定时间内收到新备份者节点发送的备份者声明,则将当前状态变更为非备份者状态。
进一步地,若在第二预定时间内查询到比自身备份版本号高的备份版本号,则将当前状态变更为等待状态;在接收到新备份者节点发送的备份者声明后,将当前状态变更为非备份者状态。
通过这样的方法,当非备份者状态的节点未能收到备份者声明时,判断备份者节点离线,申请成为备份者节点,从而能够维持网络中存在备份者节点,实现系统的自愈,提高网络的稳定性。
根据本发明的另一个方面,提出一种用于实现网络自愈的节点,包括:消息接收模块,用于在当前状态为非备份者状态时,接收备份者声明和申请消息;判断模块,用于判断在第一预定时间内是否接收到备份者声明;版本号查询模块,用于在接收到的申请消息中,查询是否存在比自身备份版本号高的备份版本号;查询消息发送模块,用于当判断模块判断在第一预定时间内没有接收到备份者声明时,向网络中各节点广播申请消息,其中申请消息中包括自身节点标识和备份版本号;状态变更模块,用于当版本号查询模块未在第二预定时间内查询到比自身备份版本号高的备份版本号时,将当前状态变更为备份者状态,以便成为备份者节点;备份者声明发送模块,用于在成为备份者节点后,以预定周期发送备份者声明。
进一步地,状态变更模块,还用于当版本号查询模块在第二预定时间内没有查询到比自身备份版本号高的备份版本号时,将当前状态变更为候选状态;若在第三预定时间内消息接收模块没有接收到备份者声明,则将当前状态变更为备份者状态;判断模块,还用于在状态变更模块将当前状态变更为候选状态后的第三预定时间内判断是否接收到备份者声明。
进一步地,状态变更模块,还用于当判断模块确定在状态变更模块将当前状态变更为候选状态后的第三预定时间内消息接收模块收到备份者声明时,则将当前状态变更为非备份者状态。
进一步地,状态变更模块,还用于当版本号查询模块在第二预定时间内查询到比自身备份版本号高的备份版本号时,将当前状态变更为等待状态;在消息接收模块接收到备份者声明后,将当前状态变更为非备份者状态。
进一步地,版本号查询模块,还用于在接收到备份者声明后比较自身当前的备份版本号和备份者声明中的备份版本号,查询是否备份者声明中的备份版本号比自身备份版本号高;备份更新模块,用于当版本号查询模块确定备份者声明中的备份版本号高于自身当前的备份版本号时,向当前处于备份者状态的节点发送备份更新请求,以便更新自身的备份信息。
进一步地,判断模块具体用于判断在第一预定时间内是否接收到全部备份者节点发送的备份者声明;状态变更模块,用于当判断模块确定消息接收模块在第一预定时间内没有接收到全部备份者节点发送的备份者声明时,向网络中各节点广播申请消息。
进一步地,状态变更模块,还用于当版本号查询模块在第二预定时间内没有查询到比自身备份版本号高的备份版本号时,将当前状态变更为候选状态;当判断模块确定在状态变更为候选状态后的第三预定时间内消息接收模块没有接收到新备份者节点发送的备份者声明时,将当前状态变更为备份者状态,其中新备份者节点是在指定时间范围内从非备份者状态变更到备份者状态的节点;判断模块,还用于在状态变更模块将当前状态变更为候选状态后的第三预定时间内判断是否接收到新备份者节点发送的备份者声明。
进一步地,状态变更模块,还用于当判断模块确定在状态变更模块将当前状态变更为候选状态后的第三预定时间内消息接收模块收到新备份者节点发送的备份者声明时,将当前状态变更为非备份者状态。
进一步地,状态变更模块,还用于当版本号查询模块在第二预定时间内查询到比自身备份版本号高的备份版本号时,将当前状态变更为等待状态;当消息接收模块接收到新备份者节点发送的备份者声明后,将当前状态变更为非备份者状态。
这样的节点在处于非备份者状态时,若未能收到备份者声明时,则判断备份者节点离线,申请成为备份者节点,从而能够维持网络中存在备份者节点,实现系统的自愈,提高网络的稳定性。
根据本发明的又一个方面,提出一种用于实现网络自愈的系统,包括上文中提到的任一种用于实现网络自愈的节点。
在这样的系统中,若处于非备份者状态的节点未能收到备份者声明,则判断备份者节点离线,申请成为备份者节点,从而能够维持网络中存在备份者节点,实现系统的自愈,提高网络的稳定性。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明的用于实现网络自愈的方法的一个实施例的流程图。
图2为本发明的用于实现网络自愈的方法的另一个实施例的流程图。
图3为本发明的用于实现网络自愈的方法的又一个实施例的流程图。
图4为本发明的用于实现网络自愈的方法的再一个实施例的状态转移图。
图5为本发明的用于实现网络自愈的方法的其中一个实施例的流程图。
图6为本发明的用于实现网络自愈的节点的一个实施例的示意图。
图7为本发明的用于实现网络自愈的节点的另一个实施例的示意图。
图8为本发明的用于实现网络自愈的系统的一个实施例的示意图。
具体实施方式
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
本发明的用于实现网络自愈的方法的一个实施例的流程图如图1所示。
在步骤101中,节点处于非备份者状态。处于备份状态的节点可以称为备份者节点。备份者节点可以以预定时间间隔广播备份者声明。处于非备份者状态的节点接收备份者声明。备份者声明中包括备份者节点的备份版本号信息。
在步骤102中,由于备份者节点以预定时间间隔广播备份者声明,非备份者状态的节点接收备份者声明。若非备份者状态的节点在收到备份者声明后的第一预定时间内再次收到备份者声明,则循环执行步骤102,持续监测第一预定时间内是否收到备份者声明;若非备份者状态的节点在收到备份者声明后的第一预定时间内未能再次收到备份者声明,则执行步骤103。
在步骤103中,非备份者节点向网络中各个节点广播申请消息,请求成为备份者。其中,申请消息中包括自身节点标识和备份版本号。
在步骤104中,非备份者节点判断在第二预定时间内是否收到来自其他非备份者节点的申请消息,且判断收到的申请消息中的备份版本号是否高于自身的备份版本号。若收到的申请消息中的备份版本号高于自身的备份版本号,则执行步骤101,保持非备份者状态;若未能收到申请消息,或收到的申请消息中备份版本号均不大于本节点的备份版本号,则执行步骤105。
在步骤105中,节点变更自身状态为备份者状态,成为备份者节点,并以预定时间间隔广播备份者声明。
通过这样的方法,当非备份者状态的节点未能收到备份者声明时,则判断备份者节点离线,申请成为备份者节点,从而能够维持网络中存在备份者节点,实现系统的自愈,提高网络的稳定性。
本发明的用于实现网络自愈的方法的另一个实施例的流程图如图2所示。
在步骤201中,备份者节点以预定时间间隔广播备份者声明。用于实现网络自愈的节点处于非备份者状态,持续监听备份者声明。
在步骤202中,若非备份者状态的节点在收到备份者声明后的第一预定时间内再次收到备份者声明,则循环执行步骤102,持续监测第一预定时间内是否收到备份者声明;若非备份者状态的节点在收到备份者声明后的第一预定时间内未能再次收到备份者声明,则执行步骤203。
在步骤203中,非备份者节点向网络中各个节点广播申请消息,请求成为备份者。
在步骤204中,非备份者节点判断在第二预定时间内是否收到来自其他非备份者节点的申请消息,且判断收到的申请消息中的备份版本号是否高于自身的备份版本号。若收到的申请消息中的备份版本号高于自身的备份版本号,则执行步骤201,保持非备份者状态;若未能收到申请消息,或收到的申请消息中备份版本号均不大于本节点的备份版本号,则执行步骤205。
在步骤205中,节点变更自身状态为候选状态,该节点成为备份者节点的候选节点。候选状态的节点需要等待第三预定时间。
在步骤206中,候选状态的节点在等待的第三预定时间内若未能收到备份者声明,则执行步骤207;若在第三预定时间内收到备份者声明,则执行步骤208。
在步骤207中,候选状态的节点变更自身状态为备份者状态,成为备份者节点,并以预定时间间隔广播备份者消息。
在步骤208中,候选状态的节点变更自身状态为非备份者状态。
通过这样的方法,当非备份者状态的节点判断自身备份版本号不低于其他非备份者状态的节点后,还需等待第三预定时间,以保证只有一个非备份者状态的节点成为备份者节点,从而防止系统混乱,提高系统的健壮性。
本发明的用于实现网络自愈的方法的又一个实施例的流程图如图3所示。
在步骤301中,备份者节点以预定时间间隔广播备份者声明,处于非备份者状态的节点持续监听备份者声明。
在步骤302中,若非备份者状态的节点在收到备份者声明后的第一预定时间内再次收到备份者声明,则循环执行步骤302,持续监测第一预定时间内是否收到备份者声明;若非备份者状态的节点在收到备份者声明后的第一预定时间内未能再次收到备份者声明,则执行步骤303。
在步骤303中,非备份者节点向网络中各个节点广播申请消息,请求成为备份者。
在步骤304中,非备份者节点判断在第二预定时间内是否收到来自其他非备份者节点的申请消息,且判断收到的申请消息中的备份版本号是否高于自身的备份版本号。若未能收到申请消息,或收到的申请消息中备份版本号均不大于本节点的备份版本号,则执行步骤305。若收到的申请消息中的备份版本号高于自身的备份版本号,则执行步骤306。
在步骤305中,节点变更自身状态为备份者状态,成为备份者节点,并以预定时间间隔广播备份者声明。在另一个实施例中,可以按照图2实施例中步骤305~308的方式执行,判断是否成为备份者节点。
在步骤306中,节点变更自身状态为等待状态。等待状态的节点在收到备份者声明之前,一直维持等待状态。
在步骤307中,若等待状态的节点未收到备份者声明,则循环执行步骤307,等待备份者声明;若等待状态的节点收到备份者声明,则执行步骤308。
在步骤308中,节点变更自身状态为非备份者状态。
通过这样的方法,自身备份版本号较低的节点能够等待出现新的备份者节点后再确认回到非备份者状态,逻辑更加完整。
在一个实施例中,本发明的节点状态变更的状态转移图如图4所示。节点初始处于非备份者状态。
在401中,非备份者状态的节点接收来自备份者节点的备份者声明。若在收到一次备份者声明后的第一预定时间内未能收到备份者声明,则判断备份者节点故障或离线,申请成为新的备份者。非备份者状态的节点广播申请消息,并等待第二预定时间。
在402中,若非备份者状态的节点在第二预定时间内未收到更高备份版本号的申请消息,则变更状态为候选状态。
在403中,若非备份者状态的节点在第二预定时间内收到更高备份版本号的申请消息,则变更状态为等待状态。
在404中,若候选状态的节点在第三预定时间内未能收到备份者声明,则变更状态为备份者状态,节点成为备份者节点。
在405中,若候选状态的节点在第三预定时间内收到备份者声明,则说明已有其他节点申请成功,成为备份者节点,因此,候选状态的节点变更状态为非备份者状态。
在步骤406中,若等待状态的节点收到备份者声明,则变更状态为非备份者状态。
通过这样的逻辑,在备份者节点离线或故障的情况下,非备份者状态的节点能够申请成为备份者节点,且保证效率最高的节点优先成为备份者节点,在提高系统健壮性,降低对备份者节点依赖的同时,提高系统的运行效率。
在一个实施例中,网络中可以有多个备份者节点。可以在所有备份者节点均离线或故障的情况下,由非备份者状态的节点中生成一个备份者节点。例如,网络中有3个备份者节点,当三个备份者节点均故障或离线时,非备份者状态的节点会在第一预定时间内无法收到备份者声明,从而发送申请消息,在非备份者节点中产生一个备份者节点,称为新备份者节点。这样的方式能够保证网络中至少包括一个备份者节点,从而维持系统的正常运行。
在另一个实施例中,可以当网络中备份者节点的数量减少时,在非备份者节点中产生一个备份者节点,以保证网络中备份者节点的数量。例如,网络中有3个备份者节点,3个非备份者状态的节点,当3个备份者节点中有一个节点离线或故障时,3个非备份者状态的节点中会有一个成为备份者节点,从而保持系统中的备份者节点数量为3个。这样的方式能够进一步提高系统的性能和稳定性,降低对单个备份者节点性能的要求。
本发明的用于实现网络自愈的方法的再一个实施例的流程图如图5所示。
在步骤501中,节点处于非备份者状态,网络中所有备份者节点均以预定时间间隔广播备份者声明。在一个实施例中,备份者声明中除了备份者节点存储的备份版本号信息,还包括备份者节点的节点标识。
在步骤502中,若非备份者状态的节点在收到来自任一备份者节点的备份者声明后的第一预定时间内能够再次收到来自该备份者节点的备份者声明,则说明所有备份者节点均在线,循环执行步骤502;若在收到备份者声明的第一预定时间内未能再次收到来自该备份者节点的备份者声明,则说明该节点离线,执行步骤503。在一个实施例中,非备份者节点可以通过节点标识识别备份者声明的源节点。
在步骤503中,非备份者节点向网络中各个节点广播申请消息,请求成为备份者。
在步骤504中,非备份者节点判断在第二预定时间内是否收到来自其他非备份者节点的申请消息,且判断收到的申请消息中的备份版本号是否高于自身的备份版本号。若未能收到申请消息,或收到的申请消息中备份版本号均不大于本节点的备份版本号,则执行步骤505。若收到的申请消息中的备份版本号高于自身的备份版本号,则执行步骤508。
在步骤505中,节点变更自身状态为候选状态,该节点成为备份者节点的候选节点。候选状态的节点需要等待第三预定时间。
在步骤506中,候选状态的节点在等待的第三预定时间内若未能收到来自新备份者节点的备份者声明,则执行步骤507,新备份者节点为在指定时间范围内从非备份者状态变更到备份者状态的节点,如在步骤502中确定存在备份者节点离线或故障后新申请成为备份者节点的节点;若在第三预定时间内收到来自新备份者节点的备份者声明,则执行步骤510。
在步骤507中,候选状态的节点变更自身状态为备份者状态,成为备份者节点,并以预定时间间隔广播备份者消息。
在步骤508中,节点变更自身状态为等待状态。等待状态的节点在收到来自新备份者节点的备份者声明之前,一直维持等待状态。
在步骤509中,若等待状态的节点未收到来自新备份者节点的备份者声明,则循环执行步骤509,等待备份者声明;若等待状态的节点收到备份者声明,则执行步骤510。
在步骤510中,节点变更自身状态为非备份者状态。
通过这样的方法,可以在网络中备份者节点的数量减少时,在非备份者节点中产生一个备份者节点,以保证网络中备份者节点的数量。这样的方式能够进一步提高系统的性能和稳定性,降低对单个备份者节点性能的要求。
在一个实施例中,备份者节点广播备份者声明,备份者声明中包括备份版本号信息。当备份者节点或非备份者状态的节点收到备份者声明后,获得备份版本号信息,比较备份者声明中的备份版本号和自身的备份版本号。若备份者声明中的备份版本号高于自身的备份版本号,则向该备份者声明的源备份者节点发送备份更新请求,以便更新自身的备份信息。在一个实施例中,备份者声明中还可以包括本节点表示、所有备份者表示和备份版本号。
通过这样的方法,能够以预定周期进行各节点的备份数据同步,从而尽量使备份者节点离线或故障时,新产生的备份者节点的备份版本为最新版本,提高用户体验。
本发明的用于实现网络自愈的节点的一个实施例的示意图如图6所示。其中,消息接收模块601能够在当前状态为非备份者状态时,接收备份者声明和申请消息。若判断模块602判断在第一预定时间内未接收到备份者声明,则激活查询消息发送模块603。查询消息发送模块603能够在判断模块602判断在第一预定时间内没有接收到备份者声明时,向网络中各节点广播申请消息,申请消息中包括自身节点标识和备份版本号。版本号查询模块604能够在消息接收模块601接收到的申请消息中查询是否存在比自身备份版本号高的备份版本号。状态变更模块605能够在版本号查询模块604未在第二预定时间内查询到比自身备份版本号高的备份版本号时,将当前状态变更为备份者状态,以便成为备份者节点。备份者声明发送模块606用于在节点成为备份者节点后,以预定周期发送备份者声明。
这样的节点在处于非备份者状态时,若未能收到备份者声明,则判断备份者节点离线,申请成为备份者节点,从而能够维持网络中存在备份者节点,实现系统的自愈,提高网络的稳定性。
在一个实施例中,状态变更模块605还用于当版本号查询模块604未在第二预定时间内查询到比自身备份版本号高的备份版本号时,将当前状态变更为候选状态。判断模块602在节点成为候选状态后的第三预定时间内判断消息接收模块601是否收到备份者声明。若判断模块602确定消息接收模块601收到备份者声明,则状态变更模块605将当前状态变更为非备份者状态;若判断模块602确定消息接收模块601未收到备份者声明,则状态变更模块605将当前状态变更为备份者状态,节点成为备份者节点。
这样的非备份者状态的节点判断自身备份版本号不低于其他非备份者状态的节点后,还需等待第三预定时间,以保证只有一个非备份者状态的节点成为备份者节点,从而防止系统混乱,提高系统的健壮性。
在一个实施例中,当版本号查询模块604在第二预定时间内查询到消息接收模块601接收的申请消息中存在比自身备份版本号高的备份版本号时,状态变更模块605将当前状态变更为等待状态。当消息接收模块601接收备份者声明时,状态变更模块605将等待状态的节点变更为非备份者状态。
这样的节点能够在自身备份版本号较低时能够等待出现新的备份者节点后再确认回到非备份者状态,逻辑更加完整,系统更加稳定。
在一个实施例中,网络中可以有多个备份者节点。可以在所有备份者节点均离线或故障的情况下,由非备份者节点中生成一个备份者节点。在另一个实施例中,可以在网络中备份者节点的数量减少时,在非备份者节点中产生一个备份者节点,以保证网络中备份者节点的数量。判断模块602具体用于在收到来自任一备份者节点的备份者声明后的第一预定时间内判断是否能够再次收到来自该备份者节点的备份者声明;状态变更模块604用于当判断模块602确定消息接收模块在第一预定时间内没有接收到全部备份者节点发送的备份者声明时,向网络中各节点广播申请消息;当版本号查询模块在第二预定时间内没有查询到比自身备份版本号高的备份版本号时,将当前状态变更为候选状态;当判断模块602确定在状态变更为候选状态后的第三预定时间内消息接收模块601没有接收到新备份者节点发送的备份者声明时,则将当前状态变更为备份者状态,其中新备份者节点是在指定时间范围内从非备份者状态变更到备份者状态的节点;当版本号查询模块在第二预定时间内查询到比自身备份版本号高的备份版本号时,将当前状态变更为等待状态;当消息接收模块接收到新备份者节点发送的备份者声明后,将当前状态变更为非备份者状态。
这样的节点能够在网络中备份者节点的数量减少时,在非备份者节点中产生一个备份者节点,以保证网络中备份者节点的数量,从而进一步提高系统的性能和稳定性,降低对单个备份者节点性能的要求。
本发明的用于实现网络自愈的节点的另一个实施例的示意图如图7所示。其中,消息接收模块701、判断模块702、查询消息发送模块703、状态变更模块705和备份者声明发送模块706的结构和功能与图6的实施例中相似。版本号查询模块704还用于在接收到备份者声明后比较自身当前的备份版本号和备份者声明中的备份版本号,查询是否备份者声明中的备份版本号比自身备份版本号高。节点还包括备份更新模块707,能够在版本号查询模块704确定备份者声明中的备份版本号高于自身当前的备份版本号时,向当前处于备份者状态的节点发送备份更新请求,以便更新自身的备份信息。
这样的节点能够以预定周期进行各节点的备份数据同步,从而尽量使备份者节点离线或故障时,新产生的备份者节点的备份版本为最新版本,提高用户体验。
本发明的用于实现网络自愈的系统的一个实施例的示意图如图8所示。该网络可以用于智能家居系统中,能够实现智能家居网络联动,例如,房门打开时,会激活摄像监控,灯光和室温会自动调节,背景音乐会自动打开等。
在一个实施例中,网络中包括控制节点801,多个功能性节点804,以及用于实现网络自愈的节点,其中,用于实现网络自愈的节点包括备份者节点802,以及非备份者状态的节点803。控制节点801能够在接收到来自节点804的激活信息后,向备份者节点发送联动请求,从备份者节点802获得联动逻辑信息,从而控制各个节点804实现联动。
备份者节点802以预定周期广播备份者声明,备份者声明中包括备份版本号信息。当备份者节点离线或故障时,非备份者状态的节点803不能在第一预定时间内收到备份者声明,则可以采用上文中提到的任一种用于实现网络自愈的方法申请成为新备份者节点,从而实现网络自愈。
在这样的系统中,若处于非备份者状态的节点未能收到备份者声明,则判断备份者节点离线,申请成为备份者节点,从而能够维持网络中存在备份者节点,实现系统的自愈,提高网络的稳定性。
在一个实施例中,本发明用于实现网络自愈的系统中用于实现网络自愈的节点可以是上文中提到的任一种,系统中可以有多个用于实现网络自愈的节点,可以有多个节点处于备份者状态,也可以有多个节点处于非备份者状态。
这样的系统更加灵活稳定,在提高系统性能的同时,提高了系统的健壮性。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制;尽管参照较佳实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者对部分技术特征进行等同替换;而不脱离本发明技术方案的精神,其均应涵盖在本发明请求保护的技术方案范围当中。

Claims (12)

1.一种用于实现网络自愈的方法,其特征在于,包括:
在当前状态为非备份者状态时,判断是否能够接收到备份者声明,其中备份者节点以预定周期发送备份者声明;
若未能在第一预定时间内接收到来自全部备份者节点的备份者声明,则向网络中各节点广播申请消息,其中申请消息中包括自身节点标识和备份版本号,网络中包括多个备份者节点;
在接收到的申请消息中,查询是否存在比自身备份版本号高的备份版本号;
若未在第二预定时间内查询到比自身备份版本号高的备份版本号,则将当前状态变更为候选状态;
判断是否接收到来自新备份者节点的备份者声明,其中新备份者节点是在指定时间范围内从非备份者状态变更到备份者状态的节点;
若未能在第三预定时间内接收到来自新备份者节点的备份者声明,则将当前状态变更为备份者状态。
2.根据权利要求1所述的方法,其特征在于,
若在第三预定时间内收到备份者声明,则将当前状态变更为非备份者状态。
3.根据权利要求1所述的方法,其特征在于,
若在第二预定时间内查询到比自身备份版本号高的备份版本号,则将当前状态变更为等待状态;
在接收到备份者声明后,将当前状态变更为非备份者状态。
4.根据权利要求1~3任一所述的方法,其特征在于,还包括:
在接收到备份者声明后,比较自身当前的备份版本号和备份者声明中的备份版本号;
若备份者声明中的备份版本号高于自身当前的备份版本号,则向当前处于备份者状态的节点发送备份更新请求,以便更新自身的备份信息。
5.根据权利要求1所述的方法,其特征在于,
若在第三预定时间内收到新备份者节点发送的备份者声明,则将当前状态变更为非备份者状态。
6.根据权利要求1所述的方法,其特征在于,
若在第二预定时间内查询到比自身备份版本号高的备份版本号,则将当前状态变更为等待状态;
在接收到新备份者节点发送的备份者声明后,将当前状态变更为非备份者状态。
7.一种用于实现网络自愈的节点,其特征在于,包括:
消息接收模块,用于在当前状态为非备份者状态时,接收备份者声明和申请消息;
判断模块,用于判断在第一预定时间内是否接收到来自全部备份者节点的备份者声明,其中,网络中包括多个备份者节点;在状态变更模块将当前状态变更为候选状态后的第三预定时间内判断是否接收到新备份者节点发送的备份者声明;
版本号查询模块,用于在接收到的申请消息中,查询是否存在比自身备份版本号高的备份版本号;
查询消息发送模块,用于当判断模块判断在第一预定时间内没有接收到来自全部备份者节点的备份者声明时,向网络中各节点广播申请消息,其中申请消息中包括自身节点标识和备份版本号;
状态变更模块,用于当版本号查询模块未在第二预定时间内查询到比自身备份版本号高的备份版本号时,将当前状态变更为候选状态;若在第三预定时间内消息接收模块没有接收到新备份者节点发送的备份者声明,则将当前状态变更为备份者状态,其中新备份者节点是在指定时间范围内从非备份者状态变更到备份者状态的节点;
备份者声明发送模块,用于在成为备份者节点后,以预定周期发送备份者声明。
8.根据权利要求7所述的节点,其特征在于,
状态变更模块,还用于当判断模块确定在状态变更模块将当前状态变更为候选状态后的第三预定时间内消息接收模块收到备份者声明时,则将当前状态变更为非备份者状态。
9.根据权利要求7所述的节点,其特征在于,
状态变更模块,还用于当版本号查询模块在第二预定时间内查询到比自身备份版本号高的备份版本号时,将当前状态变更为等待状态;在消息接收模块接收到备份者声明后,将当前状态变更为非备份者状态。
10.根据权利要求7~9任一所述的节点,其特征在于,
版本号查询模块,还用于在接收到备份者声明后比较自身当前的备份版本号和备份者声明中的备份版本号,查询是否备份者声明中的备份版本号比自身备份版本号高;
备份更新模块,用于当版本号查询模块确定备份者声明中的备份版本号高于自身当前的备份版本号时,向当前处于备份者状态的节点发送备份更新请求,以便更新自身的备份信息。
11.根据权利要求7所述的节点,其特征在于,
状态变更模块,还用于当版本号查询模块在第二预定时间内查询到比自身备份版本号高的备份版本号时,将当前状态变更为等待状态;当消息接收模块接收到新备份者节点发送的备份者声明后,将当前状态变更为非备份者状态。
12.一种用于实现网络自愈的系统,其特征在于,包括:
权利要求7~11任一所述用于实现网络自愈的节点,其中,所述用于实现网络自愈的节点包括备份者节点和非备份者状态的节点;
多个功能性节点;和,
控制节点,用于在收到来自所述功能性节点的激活信息后,向备份者节点发送联动请求,从备份者节点获得联动逻辑信息,控制所述功能性节点联动。
CN201610146578.7A 2016-03-15 2016-03-15 用于实现网络自愈的方法、节点和系统 Active CN107196779B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610146578.7A CN107196779B (zh) 2016-03-15 2016-03-15 用于实现网络自愈的方法、节点和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610146578.7A CN107196779B (zh) 2016-03-15 2016-03-15 用于实现网络自愈的方法、节点和系统

Publications (2)

Publication Number Publication Date
CN107196779A CN107196779A (zh) 2017-09-22
CN107196779B true CN107196779B (zh) 2020-11-03

Family

ID=59871173

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610146578.7A Active CN107196779B (zh) 2016-03-15 2016-03-15 用于实现网络自愈的方法、节点和系统

Country Status (1)

Country Link
CN (1) CN107196779B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109698761A (zh) * 2017-10-24 2019-04-30 中国电信股份有限公司 智能家居控制方法和系统、控制中心及节点

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102412988A (zh) * 2011-11-14 2012-04-11 浪潮(北京)电子信息产业有限公司 一种业务信息系统及其实现持续运营的方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8213405B2 (en) * 2008-02-01 2012-07-03 Qualcomm Incorporated Wireless network synchronization
US8700760B2 (en) * 2008-08-18 2014-04-15 Ge Fanuc Intelligent Platforms, Inc. Method and systems for redundant server automatic failover
CN101938417A (zh) * 2010-09-01 2011-01-05 中兴通讯股份有限公司 板卡主备配置的实现方法和板卡
CN103001995B (zh) * 2011-09-15 2016-04-13 伊姆西公司 在集群文件系统中改进高速缓存一致性的方法和装置
GB2522459B (en) * 2014-01-24 2021-02-17 Metaswitch Networks Ltd Timer services

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102412988A (zh) * 2011-11-14 2012-04-11 浪潮(北京)电子信息产业有限公司 一种业务信息系统及其实现持续运营的方法

Also Published As

Publication number Publication date
CN107196779A (zh) 2017-09-22

Similar Documents

Publication Publication Date Title
EP3490224A1 (en) Data synchronization method and system
CN105515853B (zh) 无线网络的节点及其状态更新方法
US8024593B2 (en) Communication device
EP2952062B1 (en) Requesting information from lighting devices
CN102984012B (zh) 管理服务资源的方法及服务资源管理系统
US8341248B2 (en) Energy-efficient communication method in group information-based sensor network and sensor network system using the method
JP6346381B2 (ja) ネットワークシステムにおけるノード障害からの適応回復
CN111045745A (zh) 管理配置信息的方法和系统
CN112015744A (zh) 配置数据访问方法、装置、设备、配置中心及存储介质
US11909840B2 (en) Resource subscription method, device, and storage medium
US10037253B2 (en) Fault handling methods in a home service system, and associated household appliances and servers
WO2017219519A1 (zh) 设备的控制方法、装置及系统
CN113596884A (zh) 设备状态监测方法、设备状态监测装置以及可读存储介质
CN106487611B (zh) 一种检测sdn集群分裂的方法及装置
CN107196779B (zh) 用于实现网络自愈的方法、节点和系统
US20200059765A1 (en) First communication device, network device and methods therein for indentifying at least one second communication device providing a semantic representation
CN114090342A (zh) 存储容灾的链路管理方法及消息执行节点、存储控制集群
US20200304586A1 (en) Method and system for managing network service
CN109344202B (zh) 一种数据同步方法及管理节点
CN115442221B (zh) 一种分布式家庭设备服务管理方法及系统
US11362856B2 (en) Processing operation requesting method and device
CN112769658B (zh) 终端控制系统、方法、装置、网关设备和存储介质
CN116781691A (zh) 业务容灾备份方法、业务容灾备份系统及tof节点
CN115242824A (zh) 设备控制方法及装置、路由器、无线网状网络系统及介质
CN112764350A (zh) 一种智能家居设备的控制方法、设备及存储介质

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