一种双机热备系统中的主备切换方法技术方案

技术编号:19964132 阅读:23 留言:0更新日期:2019-01-03 12:46
本发明专利技术提供了一种双机热备系统中的主备切换方法,双机分别自检,采集自检信息,包括本机是否健康、主备机身份和ID号;采用心跳包机制,双机互相发送心跳包,心跳包中包含自检信息;双机分别保存本机自检信息和最后一次收到的他机自检信息;双机分别检测ID号,若双机ID号冲突,则进行ID号协商。本发明专利技术能够实现双机热备系统中的主备切换功能,且具有不需要中心节点和不需要预设主备身份优先级的优点。

A method of switching between master and standby in two-machine hot standby system

The invention provides a switching method of main and standby in a two-machine hot standby system. The two computers self-check and collect self-check information, including whether the machine is healthy, the identity of the main and standby machine and ID number; the heartbeat packet mechanism is adopted to send heartbeat packets to each other, and the heartbeat packet contains self-check information; the two computers respectively store the self-check information of the machine and the last self-check information received by the other machines; Measure ID number, if the two machine ID number conflict, then the ID number negotiation. The invention can realize the main and standby switching function in the dual-computer hot standby system, and has the advantages of not needing the central node and not needing the preset priority of the main and standby identity.

【技术实现步骤摘要】
一种双机热备系统中的主备切换方法
本专利技术涉及计算机领域,具体涉及一种备份系统的切换方法。
技术介绍
涉及电力、通信、监控等关键设施系统中,服务的可靠性和连续性至关重要。这些重要系统都需要一定的热备冗余机制,即当服务提供设备出现异常时,能够保证这些系统的正常运行,防止出现灾难性后果。双机热备系统指两台相同的服务提供设备同时工作,一台为主服务提供设备,简称主机,向外部提供服务;另外一台为备用服务提供设备,简称备机。主机发生故障时,备机接替主机,向外部提供服务。如何进行主备切换是双机热备系统的核心问题。目前,双机热备系统中的主备切换方法,或是依赖“中心节点”对主备身份进行仲裁和控制;或是使用设备硬件标识预设主备身份优先级,当设备更换以后需要重新配置参数,不利于后期的更新和维护。
技术实现思路
为了克服现有技术的不足,本专利技术提供一种双机热备系统中的主备切换方法,不需要中心节点和不需要预设主备身份优先级。本专利技术解决其技术问题所采用的技术方案包括以下步骤:(1)双机分别自检,采集自检信息,包括本机是否健康、主备机身份和ID号;(2)采用心跳包机制,双机互相发送心跳包,心跳包中包含自检信息;(3)双机分别保存本机自检信息和最后一次收到的他机自检信息;(4)双机分别检测ID号,若双机ID号冲突,则进行ID号协商;若双机主备机身份冲突,则进行主备机身份协商;若主机发现本机不健康、他机健康,则将自身降级为备机,向他机发送升级主机指令;他机收到升级主机指令后,升级为主机;若备机预设时限内未收到他机的心跳包,则升级为主机。所述的ID号协商,具体包括:双机分别维护自身的ID号和ID号冲突数,ID号冲突数在软件启动时初始化为随机数,ID号仅有两个有效值:ID_A(默认ID)和ID_B;监测到ID号冲突后,本机将ID号冲突报文发送给他机,ID号冲突报文中包含ID号和ID号冲突数;收到ID号冲突报文后,若本机的ID号冲突数小于他机的ID号冲突数,将本机的ID号由ID_A更改为ID_B;若本机的ID号冲突数大于他机的ID号冲突数,发送ID号冲突报文给他机;若本机的ID号冲突数等于他机的ID号冲突数,重新生成本机的ID号冲突数,并发送ID号冲突报文给他机。所述的主备机身份协商,具体包括:本机与他机均健康时,若本机ID号为默认ID,则更改本机的主备机身份;本机不健康,他机健康时,若本机为主机,则本机降级为备机;若本机为备机,本机主备机身份不变;本机健康,他机不健康时,若本机为备机,则本机升级为主机;若本机为主机,本机主备机身份不变。本专利技术的有益效果是:能够实现双机热备系统中的主备切换功能,且具有不需要中心节点和不需要预设主备身份优先级的优点。附图说明图1是实施例1所提供的双机热备系统中的主备切换方法的流程示意图;图2是实施例2所提供的双机热备系统中的主备切换方法中,ID号协商的流程示意图;图3是实施例3所提供的双机热备系统中的主备切换方法中,主备机身份协商的流程示意图。具体实施方式下面结合附图和实施例对本专利技术进一步说明,本专利技术包括但不仅限于下述实施例。本专利技术提供一种双机热备系统中的主备切换方法,包括以下步骤:双机分别自检,采集自检信息,该信息包括是否健康、主备机身份、ID号,其中主备机身份和ID号从配置文件中读取;采用心跳包机制,双机互相发送心跳包,心跳包中包含自检信息;双机分别保存本机自检信息和最后一次收到的他机自检信息;若双机ID号冲突,则进行ID号协商;若双机主备机身份冲突,则进行主备机身份协商;若主机发现本机不健康、他机健康,则将自身降级为备机,向他机发送升级主机指令;他机收到升级主机指令后,升级为主机;若备机预设时限内未收到他机的心跳包,则升级为主机。所述的ID号协商,具体包括:双机分别维护自身的ID号和ID号冲突数,ID号冲突数在软件启动时初始化为随机数,ID号仅有两个有效值:ID_A(默认ID)和ID_B;监测到ID号冲突后,本机将ID号冲突报文发送给他机,ID号冲突报文中包含ID号和ID号冲突数;收到ID号冲突报文后,若本机的ID号冲突数小于他机的ID号冲突数,将本机的ID号由ID_A更改为ID_B;若本机的ID号冲突数大于他机的ID号冲突数,发送ID号冲突报文给他机;若本机的ID号冲突数等于他机的ID号冲突数,重新生成本机的ID号冲突数,并发送ID号冲突报文给他机。所述的主备机身份协商,具体包括:本机与他机均健康时,若本机ID号为默认ID,则更改本机的主备机身份;本机不健康,他机健康时,若本机为主机,则本机降级为备机;若本机为备机,本机主备机身份不变;本机健康,他机不健康时,若本机为备机,则本机升级为主机;若本机为主机,本机主备机身份不变。实施例1图1是本专利技术实施例1所提供的双机热备系统中的主备切换方法的流程示意图。参见图1所示,本专利技术实施例所提供的主备切换方法包括:步骤101:双机分别自检,采集自检信息,该信息包括是否健康、主备机身份、ID号,其中主备机身份和ID号从配置文件中读取;步骤102:采用心跳包机制,双机互相发送心跳包,心跳包中包含自检信息;步骤103:双机分别保存本机自检信息和最后一次收到的他机自检信息;步骤104:若双机ID号冲突,则进行ID号协商;步骤105:若双机主备机身份冲突,则进行主备机身份协商;步骤106:若主机发现本机不健康、他机健康,则将自身降级为备机,向他机发送升级主机指令;他机收到升级主机指令后,升级为主机;步骤107:若备机预设时限内未收到他机的心跳包,则升级为主机。本专利技术提供的主备切换方法,相比现有技术而言,不依赖于中心节点,双机的地位平等,增强了整个系统的健壮性;通过ID号协商和主备机身份协商的方法解决了现有技术需要预设优先级的问题。本实施例中,双机均接收相同外部设备(双机以外)的数据输入,并通过数据输出的方式向外部提供服务。双机分别自检,采集是否健康、主备机身份、ID号等信息:是否健康信息综合本机状态和与外部设备链路状态得出;主备机身份和ID号信息从配置文件中读取,这两个信息不会因为设备掉电重启而丢失。双机采用心跳包机制,互相发送自检信息。双机分别保存本机的自检信息和最后一次收到的他机自检信息。如果发现ID号冲突,进行ID号协商:ID号用作当双机主备机身份冲突且健康程度相当时的主备机身份确定。如果发现主备机身份冲突,则进行主备机身份协商。若主机发现本机不健康、他机健康,则将自身降级为备机,向他机发送升级主机指令;他机收到升级主机指令后,升级为主机。若备机预设时限内未收到他机的心跳包,则升级为主机。本实施例中,若ID号冲突和主备机身份冲突同时发生,优先处理ID号冲突,进行ID号协商,ID号协商完毕后,再处理主备机身份冲突,进行主备机身份协商。本实施例正常运行的前提是双机之间通讯正常。实施例2图2是本专利技术实施例2所提供的双机热备系统中的主备切换方法中,ID号协商的流程示意图,参见图2所示,具体包括:步骤201:双机分别维护自身的ID号和ID号冲突数,ID号冲突数在软件启动时初始化为随机数,ID号仅有两个有效值:ID_A(默认ID)和ID_B,;步骤202:监测到ID号冲突后,本机将ID号冲突报文发送给他机,ID号冲突报文中包含ID号和ID号冲突数;步骤203:收到ID号冲突本文档来自技高网...

【技术保护点】
1.一种双机热备系统中的主备切换方法,其特征在于包括下述步骤:(1)双机分别自检,采集自检信息,包括本机是否健康、主备机身份和ID号;(2)采用心跳包机制,双机互相发送心跳包,心跳包中包含自检信息;(3)双机分别保存本机自检信息和最后一次收到的他机自检信息;(4)双机分别检测ID号,若双机ID号冲突,则进行ID号协商;若双机主备机身份冲突,则进行主备机身份协商;若主机发现本机不健康、他机健康,则将自身降级为备机,向他机发送升级主机指令;他机收到升级主机指令后,升级为主机;若备机预设时限内未收到他机的心跳包,则升级为主机。

【技术特征摘要】
1.一种双机热备系统中的主备切换方法,其特征在于包括下述步骤:(1)双机分别自检,采集自检信息,包括本机是否健康、主备机身份和ID号;(2)采用心跳包机制,双机互相发送心跳包,心跳包中包含自检信息;(3)双机分别保存本机自检信息和最后一次收到的他机自检信息;(4)双机分别检测ID号,若双机ID号冲突,则进行ID号协商;若双机主备机身份冲突,则进行主备机身份协商;若主机发现本机不健康、他机健康,则将自身降级为备机,向他机发送升级主机指令;他机收到升级主机指令后,升级为主机;若备机预设时限内未收到他机的心跳包,则升级为主机。2.根据权利要求1所述的双机热备系统中的主备切换方法,其特征在于,所述的ID号协商,具体包括:双机分别维护自身的ID号和ID号冲突数,ID号冲突数在软件启动时初始化为随机数,ID号仅有两个有效值:ID_A(默...

【专利技术属性】
技术研发人员:张睿袁润平王亚锋张全全李敬龙
申请(专利权)人:中国电子科技集团公司第二十研究所
类型:发明
国别省市:陕西,61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1