CN102932118B - 一种双机主备裁决的方法及系统 - Google Patents

一种双机主备裁决的方法及系统 Download PDF

Info

Publication number
CN102932118B
CN102932118B CN201210436523.1A CN201210436523A CN102932118B CN 102932118 B CN102932118 B CN 102932118B CN 201210436523 A CN201210436523 A CN 201210436523A CN 102932118 B CN102932118 B CN 102932118B
Authority
CN
China
Prior art keywords
ruling
shipper
adjudicative
standby
active
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
CN201210436523.1A
Other languages
English (en)
Other versions
CN102932118A (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 Academy of Railway Sciences Corp Ltd CARS
Signal and Communication Research Institute of CARS
Beijing Ruichi Guotie Intelligent Transport Systems Engineering Technology Co Ltd
Beijing Huatie Information Technology Development Corp
Original Assignee
China Academy of Railway Sciences Corp Ltd CARS
Signal and Communication Research Institute of CARS
Beijing Ruichi Guotie Intelligent Transport Systems Engineering Technology Co Ltd
Beijing Huatie Information Technology Development Corp
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 Academy of Railway Sciences Corp Ltd CARS, Signal and Communication Research Institute of CARS, Beijing Ruichi Guotie Intelligent Transport Systems Engineering Technology Co Ltd, Beijing Huatie Information Technology Development Corp filed Critical China Academy of Railway Sciences Corp Ltd CARS
Priority to CN201210436523.1A priority Critical patent/CN102932118B/zh
Publication of CN102932118A publication Critical patent/CN102932118A/zh
Application granted granted Critical
Publication of CN102932118B publication Critical patent/CN102932118B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Hardware Redundancy (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种双机主备裁决的方法及系统。通过多线程技术对宿主机指定的应用软件心跳信息、以太网卡状态和串口通信设备状态进行不间断的实时监测,并依据监测结果生成状态报告,依据预先设定的配置文件内容在启动阶段启动对应的裁决模式执行代码,所述裁决模式包括双控器模式、直连模式和单机模式;根据所属裁决模式执行代码选择相应的裁决模式,并根据本机状态、对等机状态、双控器判决结果或人工设定进行综合运算,裁决宿主机的主备状态。本发明实施例能够在一个裁决软件中集成系统运行状态监测功能和多种主备裁决的功能,同时优化裁决算法,弥补上述两种通用裁决方式的不足。

Description

一种双机主备裁决的方法及系统
技术领域
本发明涉及系统调度技术领域,尤其涉及一种双机主备裁决的方法及系统。
背景技术
目前,铁路计算机化调度指挥系统(例如TDCS、CTC等)是保证中国铁路安全、高效运行的重要技术支撑。因此,这类系统关键部位的计算机软硬件必须为调度员或其他使用者提供7×24小时不间断的服务。为了确保服务质量,此类系统在技术实现上通常采用双机热备的形式,即使用互为热备的两台软、硬件配置一致的计算机作为一个整体共同执行同一服务,双机中一台为主用机,另一台为备用机。在正常情况下,同一时刻只有主用机进行逻辑运算、完成与其它设备的信息交换,为应用系统提供服务等任务;备用机监视主用机的运行情况,保持与主用机同步,同时主用机也在检测备用机是否正常。当主用机出现故障或由于维修等原因退出,不能支持应用系统运营时,在一定时间内将备用机升级为主用机,接替原主用机继续工作。上述双机热备系统能够正常工作并进行主备切换的关键,就是拥有一种执行主备切换决策的系统——双机主备裁决系统。
现有技术方案中通用的裁决系统实现方式有两种:硬件裁决和软件裁决。硬件裁决方式是在双机之外引入第三方硬件装置(比如双控器),裁决硬件基于双机向其发送的运行状态信息进行主备判决;软件裁决方式是在双机中分别部署裁决软件,裁决软件基于双方之间的通信内容(心跳信息)进行主备判决。由于业务的需要,硬件裁决方式一般在前台用户操作终端上使用;软件裁决方式一般在后台服务器上使用。
但上述现有技术的裁决方案中,硬件裁决方式如遇裁决硬件故障,将无法完成裁决功能,且硬件设备的引入也会增加整个双机热备系统的故障点;软件裁决方式由于双机的裁决软件之间是平等关系,因此在通信中断的情况下(比如心跳通道故障)会存在双方都升为主机或都降为备机的状态,即出现所谓的“脑裂”问题(相当于进行决策的大脑因故障而一分为二,分别自主决策)。上述状态将严重损害系统的可用性和可靠性,同时现有技术中也缺乏有效的方式将上述裁决方式进行集成,导致双机热备系统在两种方式间转换不便。
发明内容
本发明的目的是提供一种双机主备裁决的方法及系统,能够在一个裁决软件中集成系统运行状态监测功能和多种主备裁决的功能,同时优化裁决算法,弥补上述两种通用裁决方式的不足。
本发明的目的是通过以下技术方案实现的,一种双机主备裁决的方法,所述方法包括:
通过多线程技术对宿主机指定的应用软件心跳信息、以太网卡状态和串口通信设备状态进行不间断的实时监测,并依据监测结果生成状态报告;
依据预先设定的配置文件内容在启动阶段启动对应的裁决模式执行代码,所述裁决模式包括双控器模式、直连模式和单机模式;
根据所属裁决模式执行代码选择相应的裁决模式,并根据本机状态、对等机状态、双控器判决结果或人工设定进行综合运算,裁决宿主机的主备状态。
所述方法还包括:当监测到宿主机故障后进行报警,且当宿主机中运行的特定应用软件出现运行故障时候,中止该故障软件,并重新启动该软件。
所述方法还包括:当选择双控器模式时,双机分别运行一个软件实例,每个软件实例分别通过串行通信端口与双控器进行通信;
且各软件实例将其宿主机的监测结果通过串口发送给所述双控器,所述双控器通过串口返回主备判决结果。
所述方法还包括:在所述双控器模式下,利用系统局域网,双机之间增加网络心跳通道,所述主备双机中运行的软件实例以UDP数据报方式互发心跳信息。
所述方法还包括:当选择直连模式时,双机分别运行一个裁决软件实例,双机之间通过心跳通道互传监测结果;
每个裁决软件实例根据本机状态、对等机状态或人工设定进行综合运算,裁决宿主机的主备状态,并将最终结果发送给对等机。
所述方法还包括:在所述直连模式下,双机之间在通过一条串口通道互发心跳信息的基础上,利用系统局域网,增加网络心跳通道,以UDP数据报方式互发心跳信息。
所述方法还包括:在所述直连模式下,设置参考IP地址,当全部心跳通道故障后,双机的裁决软件实例都对所述参考IP执行Ping操作;
如果无法收到所述参考IP的回应数据包,则表明网络通道故障出现在本机,本机不具备升为主用机的必要条件;如果收到所述参考IP的回应数据包,则表明本机网络通道正常,网络通道故障出现在对等机上,本机具备升为主用机的必要条件。
所述方法还包括:通过人工操作界面依据人工设定情况进行主备裁决。
一种双机主备裁决的系统,所述系统包括:
状态监测单元,用于通过多线程技术对宿主机指定的应用软件心跳信息、以太网卡状态和串口通信设备状态进行不间断的实时监测,并依据监测结果生成状态报告;
多裁决模式选择单元,依据预先设定的配置文件内容在启动阶段启动对应的裁决模式执行代码,所述裁决模式包括双控器模式、直连模式和单机模式;
裁决执行单元,用于根据所属裁决模式执行代码选择相应的裁决模式,并根据本机状态、对等机状态、双控器判决结果或人工设定进行综合运算,裁决宿主机的主备状态。
由上述本发明提供的技术方案可以看出,所述方法包括:通过多线程技术对宿主机指定的应用软件心跳信息、以太网卡状态和串口通信设备状态进行不间断的实时监测,依据监测结果生成状态报告;依据配置文件内容在启动阶段启动对应的裁决模式执行代码,所述裁决模式包括双控器模式、直连模式和单机模式;根据所属裁决模式执行代码选择相应的裁决模式,并根据本机状态、对等机状态、双控器判决结果或人工设定进行综合运算,裁决宿主机的主备状态。本发明实施例能够在一个裁决软件中集成系统运行状态监测功能和多种主备裁决的功能,同时优化裁决算法,弥补上述两种通用裁决方式的不足。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
图1为本发明实施例提供的双机主备裁决的方法流程示意图;
图2为本发明实施例所述双机主备裁决的系统结构示意图。
具体实施方式
下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。
下面将结合附图对本发明实施例作进一步地详细描述,如图1所示为本发明实施例提供的双机主备裁决的方法流程示意图,所述方法包括:
步骤11:对宿主机的运行状态进行统一监测,依据监测结果生成状态报告。
在该步骤中,具体是通过多线程技术对宿主机指定的应用软件心跳信息、以太网卡状态和串口通信设备状态进行不间断的实时监测,并依据监测结果生成宿主机状态报告。
在具体实现中,上述状态报告还可以通过内部数据对象提供给主备裁决模块,同时对状态报告进行编码,分别以串行编码通过串口发送给双控器或对等机,以UDP数据报向宿主机所在的系统局域网组播发送。
另外,当监测到宿主机故障后进行报警,且当宿主机中运行的特定应用软件出现运行故障时候,中止该故障软件,并重新启动该软件。
步骤12:依据预先设定的配置文件内容在启动阶段启动对应的裁决模式执行代码。
在该步骤中,在启动阶段,预先设定的配置文件中包含裁决模式配置项,依据配置文件内容在启动阶段启动对应的裁决模式执行代码,所述裁决模式包括双控器模式、直连模式和单机模式。
其中,裁决模式的集成方法为:三种裁决模式的执行代码在软件编译阶段全部编译在本发明实施例的可执行模块中。在启动阶段,从配置文件中读取“裁决模式配置项”(该项内容确定了需要执行的裁决模式);可执行模块依据“裁决模式配置项”内容,在计算机内存中动态生成相应裁决模式的运行对象,并交由CPU(中央处理器)在单独的线程中予以运行。
具体来说,所述的双控器模式为双机系统带有作为硬件裁决装置的双控器,通过与双控器进行通信,协作完成主备判决;所述的直连模式为双机系统中分别运行一套裁决软件实例,双方直接通信,以软件裁决的方式完成主备判决;所述的单机模式可以运行在单机系统中,负责完成对系统状态的监控工作。
下面对上述三种裁决模式的工作过程进行详细说明:
1)当选择双控器模式时,双机分别运行一个软件实例,每个软件实例分别通过串行通信端口与双控器进行通信;
且各软件实例将其宿主机的监测结果通过串口发送给所述双控器,所述双控器通过串口返回主备判决结果。
另外,上述每个软件实例根据本机状态、双控器主备判决结果、人工设定、对等机的状态进行综合运算,最终确定本机的主备状态,并将最终结果通过串口发送给双控器。
同时,本发明实施例还进行了如下优化:利用系统局域网,主备双机之间增加网络心跳通道(最多2条,构成冗余配置),主备双机中运行的软件实例以UDP数据报方式互发心跳信息。这样可以确保在双控器故障情况下(此时双机上运行的本发明实例无法接收到双控器的主备判决结果),双机自动进入直连模式,并继续做出主备判决。
在双控器恢复工作后(此时双机上运行的本发明实例能够接收到双控器的主备判决结果),双机的裁决软件实例自动恢复为双控器模式。
2)当选择直连模式时,主备双机分别运行一个裁决软件实例,主备双机之间通过心跳通道互传监测结果;
每个裁决软件实例根据本机状态、对等机状态或人工设定进行综合运算,裁决宿主机的主备状态,并将最终结果发送给对等机。
同时,本发明实施例还进行了如下优化:
在所述直连模式下,主备双机之间在通过一条串口通道互发心跳信息的基础上,利用系统局域网,增加网络心跳通道(最多2条,构成冗余配置),以UDP数据报方式互发心跳信息。这样可以保证只要有一条心跳通道正常,双机间互发的心跳信息就不受影响。
在所述直连模式下,设置参考IP(如局域网内双机都连接的交换机的IP),当全部心跳通道故障后,双机的裁决软件实例都对参考IP执行Ping操作,即通过网络向参考IP地址发送Ping数据包;
如果无法收到参考IP的回应数据包,则表明网络通道故障出现在本机这里,本机不具备升为主用机的必要条件;如果可以收到参考IP的回应数据包,则说明本机网络通道正常,故障出现在对等机上,本机具备升为主用机的必要条件。这样,执行Ping操作的结果可以作为裁定宿主机主备状态的重要的参考条件,避免了出现“脑裂”现象。
3)在单机模式下,监测功能保持不变。由于对等机不存在,本发明的主备裁决功能会始终裁决宿主机为主用状态。
另外,本发明实施例还增加了人工操作界面,进一步可以通过人工操作界面依据人工设定情况进行主备裁决。
步骤13:根据所属裁决模式执行代码选择相应的裁决模式,并根据本机状态、对等机状态、双控器判决结果或人工设定进行综合运算,裁决宿主机的主备状态。
具体来说,在“双控器模式”和“直连模式”下,主备裁决方法为:
当下列条件全部满足时,将裁定宿主机由备用机升级为主用机:
1)本机运行状态正常;
2)对等机不是主用机。
当满足下列条件之一时,将裁定宿主机由主用机降级为备用机:
1)本机运行状态异常;
2)对等机已经是主用机。
另外,如果使用了“人工设定”,则以人工设定的主备状态为最终裁决结果。
本发明实施例还提供了一种双机主备裁决的系统,如图2所示为本发明实施例所述系统的结构示意图,所述系统包括:
状态监测单元,用于通过多线程技术对宿主机指定的应用软件心跳信息、以太网卡状态和串口通信设备状态进行不间断的实时监测,并依据监测结果生成状态报告;
多裁决模式选择单元,用于依据预先设定的配置文件内容在启动阶段启动对应的裁决模式执行代码,所述裁决模式包括双控器模式、直连模式和单机模式;
裁决执行单元,用于根据所属裁决模式执行代码选择相应的裁决模式,并根据本机状态、对等机状态、双控器判决结果或人工设定进行综合运算,裁决宿主机的主备状态。
上述系统的具体实现方式见以上方法实施例子中所述。
综上所述,本发明实施例能够在一个裁决软件中集成系统运行状态监测功能和多种主备裁决的功能,同时优化裁决算法,弥补上述两种通用裁决方式的不足。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。

Claims (6)

1.一种双机主备裁决的方法,其特征在于,所述方法包括:
通过多线程技术对宿主机指定的应用软件心跳信息、以太网卡状态和串口通信设备状态进行不间断的实时监测,并依据监测结果生成状态报告;
依据预先设定的配置文件内容在启动阶段启动对应的裁决模式执行代码,所述裁决模式包括双控器模式、直连模式和单机模式;
根据所属裁决模式执行代码选择相应的裁决模式,并根据本机状态、对等机状态、双控器判决结果或人工设定进行综合运算,裁决宿主机的主备状态;
其中,所述方法还包括:
通过人工操作界面依据人工设定情况进行主备裁决;
所述方法还包括:
当选择直连模式时,双机分别运行一个裁决软件实例,双机之间通过心跳通道互传监测结果;
每个裁决软件实例根据本机状态、对等机状态或人工设定进行综合运算,裁决宿主机的主备状态,并将最终结果发送给对等机;
且在所述直连模式下,设置参考IP地址,当全部心跳通道故障后,双机的裁决软件实例都对所述参考IP执行Ping操作;
如果无法收到所述参考IP的回应数据包,则表明网络通道故障出现在本机,本机不具备升为主用机的必要条件;如果收到所述参考IP的回应数据包,则表明本机网络通道正常,网络通道故障出现在对等机上,本机具备升为主用机的必要条件。
2.如权利要求1所述双机主备裁决的方法,其特征在于,所述方法还包括:
当监测到宿主机故障后进行报警,且当宿主机中运行的特定应用软件出现运行故障时候,中止该故障软件,并重新启动该软件。
3.如权利要求1所述双机主备裁决的方法,其特征在于,所述方法还包括:
当选择双控器模式时,双机分别运行一个软件实例,每个软件实例分别通过串行通信端口与双控器进行通信;
且各软件实例将其宿主机的监测结果通过串口发送给所述双控器,所述双控器通过串口返回主备判决结果。
4.如权利要求3所述双机主备裁决的方法,其特征在于,所述方法还包括:
在所述双控器模式下,利用系统局域网,双机之间增加网络心跳通道,所述主备双机中运行的软件实例以UDP数据报方式互发心跳信息。
5.如权利要求1所述双机主备裁决的方法,其特征在于,所述方法还包括:
在所述直连模式下,双机之间在通过一条串口通道互发心跳信息的基础上,利用系统局域网,增加网络心跳通道,以UDP数据报方式互发心跳信息。
6.一种双机主备裁决的系统,其特征在于,所述系统包括:
状态监测单元,用于通过多线程技术对宿主机指定的应用软件心跳信息、以太网卡状态和串口通信设备状态进行不间断的实时监测,并依据监测结果生成状态报告;
多裁决模式选择单元,依据预先设定的配置文件内容在启动阶段启动对应的裁决模式执行代码,所述裁决模式包括双控器模式、直连模式和单机模式;
裁决执行单元,用于根据所属裁决模式执行代码选择相应的裁决模式,并根据本机状态、对等机状态、双控器判决结果或人工设定进行综合运算,裁决宿主机的主备状态;
其中,所述系统进一步通过人工操作界面依据人工设定情况进行主备裁决;
进一步的,当所述多裁决模式选择单元选择直连模式时,双机分别运行一个裁决软件实例,双机之间通过心跳通道互传监测结果;每个裁决软件实例根据本机状态、对等机状态或人工设定进行综合运算,裁决宿主机的主备状态,并将最终结果发送给对等机;
且在所述直连模式下,设置参考IP地址,当全部心跳通道故障后,双机的裁决软件实例都对所述参考IP执行Ping操作;如果无法收到所述参考IP的回应数据包,则表明网络通道故障出现在本机,本机不具备升为主用机的必要条件;如果收到所述参考IP的回应数据包,则表明本机网络通道正常,网络通道故障出现在对等机上,本机具备升为主用机的必要条件。
CN201210436523.1A 2012-11-05 2012-11-05 一种双机主备裁决的方法及系统 Active CN102932118B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210436523.1A CN102932118B (zh) 2012-11-05 2012-11-05 一种双机主备裁决的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210436523.1A CN102932118B (zh) 2012-11-05 2012-11-05 一种双机主备裁决的方法及系统

Publications (2)

Publication Number Publication Date
CN102932118A CN102932118A (zh) 2013-02-13
CN102932118B true CN102932118B (zh) 2015-11-25

Family

ID=47646834

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210436523.1A Active CN102932118B (zh) 2012-11-05 2012-11-05 一种双机主备裁决的方法及系统

Country Status (1)

Country Link
CN (1) CN102932118B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103532748B (zh) * 2013-10-08 2017-01-25 北京华胜天成科技股份有限公司 一种drbd脑裂的处理方法及装置
CN105849702A (zh) * 2013-12-25 2016-08-10 日本电气方案创新株式会社 集群系统,服务器设备,集群系统管理方法和计算机可读记录介质
CN105871592A (zh) * 2016-03-18 2016-08-17 广州海格通信集团股份有限公司 分布式体系构架电话调度设备的双机热备份方法
CN110417584A (zh) * 2019-07-10 2019-11-05 南京南瑞继保电气有限公司 一种基于多链接选举机制的双机主备切换方法
CN114679399A (zh) * 2022-03-17 2022-06-28 浙江大华技术股份有限公司 主机切换的方法、装置、存储介质及电子装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1437326A (zh) * 2002-02-07 2003-08-20 华为技术有限公司 一种通讯设备中的主备倒换方法
CN101150430A (zh) * 2007-09-17 2008-03-26 中兴通讯股份有限公司 一种通过心跳机制实现网络接口板倒换的方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5434230B2 (ja) * 2009-04-22 2014-03-05 ソニー株式会社 無線通信装置、無線通信システム、無線通信方法及びプログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1437326A (zh) * 2002-02-07 2003-08-20 华为技术有限公司 一种通讯设备中的主备倒换方法
CN101150430A (zh) * 2007-09-17 2008-03-26 中兴通讯股份有限公司 一种通过心跳机制实现网络接口板倒换的方法

Also Published As

Publication number Publication date
CN102932118A (zh) 2013-02-13

Similar Documents

Publication Publication Date Title
CN202798798U (zh) 基于云计算技术的高可用系统
CN102932118B (zh) 一种双机主备裁决的方法及系统
CN103019889A (zh) 分布式文件系统及其故障处理方法
CN102916825A (zh) 一种双机热备系统的管理设备、管理方法及双机热备系统
CN106357787A (zh) 一种存储容灾控制系统
CN105337780B (zh) 一种服务器节点配置方法及物理节点
US9128688B2 (en) Method, apparatus and system for device management
CN102388570B (zh) 一种主备模式下的单板运行方法及系统
US8842775B2 (en) System and method for power reduction in redundant components
CN103036719A (zh) 一种基于主备集群服务器的跨地区服务容灾方法及装置
CN107040403A (zh) 基于dds技术提高分布式系统可靠性的方法
CN104967691A (zh) 一种分布式存储控制方法及系统
CN111585835B (zh) 一种带外管理系统的控制方法、装置和存储介质
CN103312541A (zh) 一种高可用互备集群的管理方法
CN105812161A (zh) 一种控制器故障备份方法和系统
CN103441987A (zh) 双机防火墙系统的管理方法和装置
US20130208581A1 (en) Wireless gateway apparatus
CN103095766A (zh) 通信前置机的端口级冗余管理方法
CN102487332B (zh) 故障处理方法、装置和系统
US11797070B2 (en) Response mechanisms for power-interruption events in PoE systems
CN101686261A (zh) 一种基于rac的冗余服务器系统
CN111698157B (zh) 一种链路管理方法、板卡及交换机
CN101557307B (zh) 调度自动化系统应用状态管理方法
CN205071015U (zh) 以太网供电装置
CN110053650B (zh) 一种列车自动运行系统、列车自动运行系统架构及列车自动运行系统的模块管理方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant