CN106712887A - 一种基于网络时钟协议的主从双机状态同步方法 - Google Patents
一种基于网络时钟协议的主从双机状态同步方法 Download PDFInfo
- Publication number
- CN106712887A CN106712887A CN201611204430.0A CN201611204430A CN106712887A CN 106712887 A CN106712887 A CN 106712887A CN 201611204430 A CN201611204430 A CN 201611204430A CN 106712887 A CN106712887 A CN 106712887A
- Authority
- CN
- China
- Prior art keywords
- slave
- main frame
- shipper
- state
- time
- 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
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
- H04J3/0658—Clock or time synchronisation among packet nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种基于网络时钟协议的主从双机状态同步方法,所述方法包括:步骤1)系统开机运行后,主从机通过本机配置文件及选举方法确定一台为主机,一台为从机的双机状态;即主机为网络时钟协议中的服务器,从机为客户端;步骤2)采取二次校时的方法对主机和从机的时钟进行同步;步骤3)时钟同步之后,主从双机进入待命状态,当双机收到指挥中心发来的测控指令后,主从双机状态进行同步。本发明的方法具有占用系统资源少,同步耗时短,实时性好,任务耦合度低等特点,适用于武器装备自动化测试、工业控制、电力、交通等对设备可靠性要求较高的应用场合。
Description
技术领域
本发明属于计算机测量与控制技术领域,特别涉及一种基于网络时钟协议的主从双机状态同步方法。
背景技术
随着武器装备系统复杂性的不断提高,对测试可靠性要求日益提高,越来越多的测试系统开始由传统的单机模式进化为二重冗余甚至多重冗余模式。而在冗余模式下,构成主份和备份的单机之间的状态同步是完成主从切换的前置条件,也是系冗余模式的关键所在。传统的同步方式大多为查询方式,即在系统启动前设置主从双机状态同步的周期,此后周期性的完成同步工作,该模式具有易于实现,简单稳定的优点,但在非实时操作系统或大多数非时间严格的运载火箭地面自动化测试场合下,会造成大量的无用数据通信过程,拉低整个测控网络的通信效率。
NTP(Network-Time-Protocol,网络时钟协议)是1982年由美国Delaware大学的Mills教授设计实现的,目的是在国际互联网上传递统一、标准的时间,时钟同步精度从最初的1s提高到现在的几十纳秒,稳定性越来越高,应用越来越广泛。
NTP主要有三种工作模式:
第一种模式为主/被动对称模式:在主/被动对称模式下,主动方同步被动方,被动方被主动方所同步。所谓对称模式,即任何一台计算机同时可以是主动方也可以是被动方,也就是说,任何一台计算机都可以同步另外一台计算机,也可以被其它计算机所同步,首先发出申请建立连接的一方为主动方,另一方为被动方。
第二种模式为客户/服务器模式:与主被动模式基本相同,唯一区别在于,客户方可被服务器同步,但服务器不能被客户所同步。
第三种模式为广播模式:一对多的连接,服务器不论客户工作在何种模式下,主动发出时间信息,客户方根据接收到的时间信息自行调整自己的时间,时间信息在网络上传输时会有时间延时,因此时间精确度会有损失,但可满足秒级应用。
发明内容
本发明的目的在于克服现有双机状态同步方式存在的弊端,结合NTP协议中的客户/服务器模式,提供一种对CPU及网络环境负荷较低的快速完成双机状态同步的方法。采用该方法可在10ms内完成一次非实时操作系统下的双机状态同步过程。与传统的定时查询方式相比,将CPU的运行负荷减轻约50%,网络的数据通讯量减少约90%,显著降低系统运行负荷,提高系统的可靠性。
为实现上述目的,本发明提出的一种基于网络时钟协议的主从双机状态同步方法,所述方法包括:
步骤1)系统开机运行后,主从机通过本机配置文件及选举方法确定一台为主机,一台为从机的双机状态;即主机为网络时钟协议中的服务器,从机为客户端;
步骤2)采取二次校时的方法对主机和从机的时钟进行同步;
步骤3)时钟同步之后,主从双机进入待命状态,当双机收到指挥中心发来的测控指令后,主从双机状态进行同步。
上述技术方案中,所述步骤1)的具体实现过程为:
如果当前双机默认配置状态恰好是一主机一从机,则维持现状;如果是双主机的情况,保证当前正在行使主机职能一方继续作为主机,另一方作为从机;通过比较指令队列最后执行指令时间和上次被选为主机时间,让最后一次被选中为主机一方继续作为主机;如果出现双机之间链路不通的情况,读取并应用参数配置中预先设置的主从机状态;如果出现配置错误,优先保证正在行使主机职能一方继续作为主机;如果比较各项参数后仍然不能选举出主从机,直接以当前主动发起选举一方作为主机,由此完成主从双机的身份确立。
上述技术方案中,所述步骤2)具体包括:
步骤2-1)主机获取本地的系统时间,发送校时数据包到发送队列,并唤醒客户端线程,发送校时数据帧到从机;
步骤2-2)从机接到指令后,立即回复二次校时请求;
步骤2-3)主机接到二次校时请求后立即获取最新系统时间,再次发送校时数据帧;
步骤2-4)从机接到二次校时回复后,更新系统时间,更新后的从机本地系统时间为最后一次校时+两次校时差/2。
上述技术方案中,所述步骤3)具体包括:
步骤3-1)主机执行本机收到的测控指令,从机同样收到该指令,但暂不执行;
步骤3-2)主机将执行成功的指令通过通信网络发送至从机;
步骤3-3)从机对接收到的主机同步测控指令内容做校验,校验成功后执行该指令,完成对主机指令执行的跟随动作;
步骤3-4)从机向主机回复本次同步成功;
步骤3-5)双机重新进入待命状态,等待下一条指令的到来。
本发明的优势在于:
1、本发明基于NTP协议中的服务器/客户端模式完成主机向从机的授时功能,并参照该模式设计了主从双机测控指令执行状态的同步机制,通过测控指令中断的方式,使得系统仅在收到指挥中心发来的测控指令,即主从机的测控指令执行状态发生跃迁后进行双机的状态同步,避免了周期性的频繁同步导致的对CPU资源及网络资源的浪费,提高了系统的可靠性;
2、本发明在借鉴NTP(网络时钟协议)同步机制的基础之上,结合测控任务流程,完成互为备份的主/从机之间的状态同步工作,具有占用系统资源少(可减少约90%非必要的数据通信过程),同步耗时短,实时性好(可在10ms内完成一次非实时操作系统下的双机状态同步工作),与任务耦合度低等特点,适用于武器装备自动化测试、工业控制、电力、交通等对设备可靠性要求较高的应用场合。
附图说明
图1为本发明主从身份确立过程的流程图;
图2为本发明主从时钟同步的时序步骤图;
图3为本发明主从双机状态同步的时序步骤图。
具体实施方式
下面结合附图与具体实施方式对本发明作进一步详细说明。
一种基于网络时钟协议的主从双机状态同步方法,所述方法包括:
步骤1)系统开机运行后,主从机通过本机配置文件及选举方法确定一台为主机,一台为从机的双机状态;主机即为NTP协议中的服务器,从机为客户端;
如图1所示,主从身份确立过程的一项原则是是尽量不改变当前状态,尽量避免不必要的主从切换。如果当前双机默认配置状态恰好是一主机一从机,则维持现状。如果是双主机的情况,保证当前正在行使主机职能一方继续作为主机,另一方作为从机。通过比较指令队列最后执行指令时间和上次被选为主机时间等办法,让最后一次被选中为主机一方继续作为主机。如果出现双机之间链路不通的情况,读取并应用参数配置中预先设置的主从机状态。如果出现配置错误,仍然优先保证正在行使主机职能一方继续作为主机。如果比较各项参数后仍然不能选举出主从机,直接以当前主动发起选举一方作为主机,完成主从双机的身份确立;
步骤2)采取二次校时的方法对主机和从机的时钟进行同步;
如图2所示,所述步骤2)具体包括:
步骤2-1)主机获取本地的系统时间,发送校时数据包到发送队列,并唤醒客户端线程,发送校时数据帧到从机;
步骤2-2)从机接到指令后,立即回复二次校时请求;
步骤2-3)主机接到二次校时请求后立即获取最新系统时间,再次发送校时数据帧;
步骤2-4)从机接到二次校时回复后,更新系统时间,更新后的从机本地系统时间为最后一次校时+两次校时差/2。
步骤3)时钟同步之后,主从双机进入待命状态,当双机收到指挥中心发来的测控指令后,主从双机状态进行同步;
如图3所示,主从机完成主从身份确立后及时钟同步后,由主从机第一次收到后端指挥中心发来的测控指令开始,双机开始以中断方式进行双机指令执行状态同步,主从机在进行每次同步前,都先读取本机的主从状态标识,确定将要执行的同步逻辑。确定完同步逻辑之后,主机立即通过测控层调用各功能模块执行相关的测控动作,并将已执行的测控指令,需要采集的内容按照特定格式组成同步信息帧,通过以太网发送给从机,通知从机在上一微小时间间隔前主机刚刚完成何种操作。而从机在收到同步信息帧后,进行解包的工作,解包成功后从机也跟随主机的动作,通过测控层调用相关功能模块执行同步点A相关的测控任务,当执行完相关动作后向主机返回信息,以通知主机同步成功,之后,主从机分别将该次同步过程写入同步日志,至此,完成了同步点A的所有工作,之后等待下一个同步点的到来,继续周期性的进行同步工作。
Claims (4)
1.一种基于网络时钟协议的主从双机状态同步方法,所述方法包括:
步骤1)系统开机运行后,主从机通过本机配置文件及选举方法确定一台为主机,一台为从机的双机状态;即主机为网络时钟协议中的服务器,从机为客户端;
步骤2)采取二次校时的方法对主机和从机的时钟进行同步;
步骤3)时钟同步之后,主从双机进入待命状态,当双机收到指挥中心发来的测控指令后,主从双机状态进行同步。
2.根据权利要求1所述的基于网络时钟协议的主从双机状态同步方法,其特征在于,所述步骤1)的具体实现过程为:
如果当前双机默认配置状态恰好是一主机一从机,则维持现状;如果是双主机的情况,保证当前正在行使主机职能一方继续作为主机,另一方作为从机;通过比较指令队列最后执行指令时间和上次被选为主机时间,让最后一次被选中为主机一方继续作为主机;如果出现双机之间链路不通的情况,读取并应用参数配置中预先设置的主从机状态;如果出现配置错误,优先保证正在行使主机职能一方继续作为主机;如果比较各项参数后仍然不能选举出主从机,直接以当前主动发起选举一方作为主机,由此完成主从双机的身份确立。
3.根据权利要求1所述的基于网络时钟协议的主从双机状态同步方法,其特征在于,所述步骤2)具体包括:
步骤2-1)主机获取本地的系统时间,发送校时数据包到发送队列,并唤醒客户端线程,发送校时数据帧到从机;
步骤2-2)从机接到指令后,立即回复二次校时请求;
步骤2-3)主机接到二次校时请求后立即获取最新系统时间,再次发送校时数据帧;
步骤2-4)从机接到二次校时回复后,更新系统时间,更新后的从机本地系统时间为最后一次校时+两次校时差/2。
4.根据权利要求1所述的基于网络时钟协议的主从双机状态同步方法,其特征在于,所述步骤3)具体包括:
步骤3-1)主机执行本机收到的测控指令,从机同样收到该指令,但暂不执行;
步骤3-2)主机将执行成功的指令通过通信网络发送至从机;
步骤3-3)从机对接收到的主机同步测控指令内容做校验,校验成功后执行该指令,完成对主机指令执行的跟随动作;
步骤3-4)从机向主机回复本次同步成功;
步骤3-5)双机重新进入待命状态,等待下一条指令的到来。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611204430.0A CN106712887B (zh) | 2016-12-23 | 2016-12-23 | 一种基于网络时钟协议的主从双机状态同步方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611204430.0A CN106712887B (zh) | 2016-12-23 | 2016-12-23 | 一种基于网络时钟协议的主从双机状态同步方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106712887A true CN106712887A (zh) | 2017-05-24 |
CN106712887B CN106712887B (zh) | 2018-10-26 |
Family
ID=58895867
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611204430.0A Active CN106712887B (zh) | 2016-12-23 | 2016-12-23 | 一种基于网络时钟协议的主从双机状态同步方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106712887B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110262449A (zh) * | 2019-06-05 | 2019-09-20 | 上海航天控制技术研究所 | 一种基于双机主从冗余的运载火箭测试发射流程自动控制方法 |
CN111262923A (zh) * | 2020-01-14 | 2020-06-09 | 深圳壹账通智能科技有限公司 | 数据同步方法、装置、计算机设备及存储介质 |
CN114020094A (zh) * | 2021-11-17 | 2022-02-08 | 湖南麒麟信安科技股份有限公司 | 一种服务器集群时间同步方法、装置及计算机设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090259885A1 (en) * | 2008-04-14 | 2009-10-15 | The Charles Stark Draper Laboratory, Inc. | Systems and methods for redundancy management in fault tolerant computing |
CN103019218A (zh) * | 2012-12-26 | 2013-04-03 | 北京国铁路阳技术有限公司 | 采用双cpu冗余技术的铁路信号装置及其控制方法 |
CN103077242A (zh) * | 2013-01-11 | 2013-05-01 | 北京佳讯飞鸿电气股份有限公司 | 一种实现数据库服务器双机热备的方法 |
CN103684734A (zh) * | 2013-11-11 | 2014-03-26 | 北京控制工程研究所 | 一种热备份冗余计算机时间同步系统及方法 |
-
2016
- 2016-12-23 CN CN201611204430.0A patent/CN106712887B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090259885A1 (en) * | 2008-04-14 | 2009-10-15 | The Charles Stark Draper Laboratory, Inc. | Systems and methods for redundancy management in fault tolerant computing |
CN103019218A (zh) * | 2012-12-26 | 2013-04-03 | 北京国铁路阳技术有限公司 | 采用双cpu冗余技术的铁路信号装置及其控制方法 |
CN103077242A (zh) * | 2013-01-11 | 2013-05-01 | 北京佳讯飞鸿电气股份有限公司 | 一种实现数据库服务器双机热备的方法 |
CN103684734A (zh) * | 2013-11-11 | 2014-03-26 | 北京控制工程研究所 | 一种热备份冗余计算机时间同步系统及方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110262449A (zh) * | 2019-06-05 | 2019-09-20 | 上海航天控制技术研究所 | 一种基于双机主从冗余的运载火箭测试发射流程自动控制方法 |
CN111262923A (zh) * | 2020-01-14 | 2020-06-09 | 深圳壹账通智能科技有限公司 | 数据同步方法、装置、计算机设备及存储介质 |
CN114020094A (zh) * | 2021-11-17 | 2022-02-08 | 湖南麒麟信安科技股份有限公司 | 一种服务器集群时间同步方法、装置及计算机设备 |
Also Published As
Publication number | Publication date |
---|---|
CN106712887B (zh) | 2018-10-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103199972B (zh) | 基于soa、rs485总线实现的双机热备份切换方法及热备份系统 | |
CN106647613B (zh) | 基于mac的plc双机冗余方法及系统 | |
CN105930580B (zh) | 一种用于电力系统和信息通信系统联合仿真的时间同步与数据交换的装置及其方法 | |
CN102984042B (zh) | 一种实现总线通信的确定性调度方法及系统 | |
CN110233905A (zh) | 节点设备运行方法、节点设备及存储介质 | |
CN108259227B (zh) | 一种双机热备联锁系统的数据同步方法 | |
CN109597723A (zh) | 用于地铁综合监控系统的双机热备冗余实现系统及方法 | |
CN106814603A (zh) | 一种基于非实时操作系统的双机冗余容错系统 | |
CN106712887A (zh) | 一种基于网络时钟协议的主从双机状态同步方法 | |
WO2021253596A1 (zh) | 一种基于双通道安全plc的同步控制及数据表决方法 | |
CN101790230B (zh) | 精确时间协议节点、时戳操作方法及时间同步系统 | |
CN115102839B (zh) | 一种主从节点选举方法、装置、设备及介质 | |
EP4254831A1 (en) | Method and device for selecting clock source | |
CN106230622A (zh) | 一种集群实现方法及装置 | |
EP2896187B1 (en) | Information management method and device | |
CN1937484A (zh) | 一种实现多时钟同步的方法及系统 | |
CN116699964A (zh) | 一种工业过程控制器冗余运行方法和系统 | |
CN100530106C (zh) | 多机容错系统内核的实现方法 | |
CN110053650B (zh) | 一种列车自动运行系统、列车自动运行系统架构及列车自动运行系统的模块管理方法 | |
CN102983997A (zh) | 主控服务迁移方法及装置 | |
CN113342483B (zh) | 一种基于Raft的分布式任务调度系统 | |
CN111464346B (zh) | 基于atca架构的主备用控制板同步方法及系统 | |
CN109586978B (zh) | 总线拓扑网络自组网方法 | |
CN114385254A (zh) | 一种基于vpx架构的双控主从切换实现方法 | |
CN108337285A (zh) | 一种通信系统及通信方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |