CN107947885B - 一种集群环境下无中心时间同步自组网方法 - Google Patents
一种集群环境下无中心时间同步自组网方法 Download PDFInfo
- Publication number
- CN107947885B CN107947885B CN201711056225.9A CN201711056225A CN107947885B CN 107947885 B CN107947885 B CN 107947885B CN 201711056225 A CN201711056225 A CN 201711056225A CN 107947885 B CN107947885 B CN 107947885B
- Authority
- CN
- China
- Prior art keywords
- time
- node
- clustered
- line running
- server
- 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
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
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1859—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast adapted to provide push services, e.g. data channels
-
- 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/104—Peer-to-peer [P2P] networks
- H04L67/1044—Group management mechanisms
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Theoretical Computer Science (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Small-Scale Networks (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种集群环境下无中心时间同步自组网方法,本发明采用无中心选举方式建立集群内部时间同步关系以及集群和时间服务器的时间同步关系,抗干扰性和健壮性较强;在时间服务器有效情况下,集群各节点保持内部时间统一并和时间服务器保持时间一致;在时间服务器失效情况下,集群各节点也能保持内部时间统一。同时,集群节点采用多播/广播模式向处理终端的进行标准UTC时间发播,有效降低了静态配置时间同步关系产生的维护成本。
Description
技术领域
本发明属于时间同步技术领域,尤其涉及一种集群环境下无中心时间同步自组网方法。
背景技术
为提升应用系统的可靠性和可扩展型,计算密集型应用往往采用集群模式部署。集群中包含集群节点和处理终端两类节点,各节点之间必须保持时间同步,确保信息处理的时间基准统一;同时,各节点需要和时间服务器进行时间同步,获取标准天文时间。目前广泛使用的集群时间同步技术采用三层时间同步架构:设定原子钟为时间服务器,通过卫星链路与卫星时间进行同步;设定集群节点作为二级时间源,采用网络对时协议、基于客户机/服务器模式,通过广域网和时间服务器进行时间同步;设定处理终端作为时间客户端,采用网络对时协议、基于客户机/服务器模式,通过局域网和二级时间源进行时间同步。
目前的集群时间同步技术存在以下弊端:
(1)集群节点和不同的时间服务器保持时间同步,时间服务器故障可能导致集群内时间失步。
各个集群节点独立和时间服务器进行时间同步,缺乏相互时间参照,不同节点可能溯源至不同的时间服务器。一旦发生时间服务器故障(如:时间服务器设备故障、时间服务器之间时间不同步、时间服务器与集群节点之间的通信链路故障),将导致集群节点之间时间失步。由于处理终端和集群节点保持时间同步,集群节点的时间失步将导致处理终端的时间失步,进而导致整个集群内时间失步。
(2)集群内部缺少时间同步关系的自动配置手段,静态配置方式繁琐而且容易出错
集群内各处理终端需要配置集群节点的IP地址,和集群节点保持时间同步。静态配置时间同步关系的方式繁琐而且容易出错,一旦集群节点地址变更,与其同步的处理终端都需要对时间同步源的IP地址进行调整。
发明内容
本发明的目的在于提供一种集群环境下无中心的时间同步自组网方法。集群各节点自动建立两级时间同步关系,由时钟级别最高的集群节点充当标准UTC时间引接节点,与时间服务器进行时间同步、获取标准天文时间;同时,该节点向其他集群节点、处理终端发播时间同步消息。这样,在时间服务器有效情况下,集群各节点保持内部时间统一并和时间服务器保持时间一致;在时间服务器失效情况下,集群各节点也能保持内部时间统一。
集群环境下无中心的时间同步自组网方法包含三类节点:时间服务器、集群节点及处理终端。时间服务器部署在广域网中,采用客户机/服务器模式向集群节点发播时间同步消息;集群节点部署在局域网中,采用主动/被动模式实现集群节点间的时间同步,并采用多播/广播模式向处理终端发播时间同步消息。
具体内容包括:
步骤1,设置时间服务器,所述时间服务器部署在广域网上,用于接收外部基准时间,并通过网络对时协议提供时间服务;
步骤2,在集群各节点之间选举上线运行时间最长的集群节点作为最高优先级节点和时间服务器保持时间同步,其余集群节点和最高优先级集群节点保持时间同步;
步骤3,最高优先级集群节点向处理终端进行发播UTC时间。
所述时间服务器装配卫星接收模块,用于接收UTC(协调世界时:CoordinatedUniversal Time)时间。
所述时间服务器装配原子钟守时模块,用于保持UTC时间的高精度。
所述时间服务器装配网络时间发播模块,用于发播UTC时间。
所述最高优先级节点选取算法基于网络对时协议规定的对等主动端/被动端模式,并进行优化改进。
步骤2包括如下步骤:
步骤2-1,所有集群节点运行在对等主动端模式,采用广播方式主动向其他节点发送时间同步申请消息,并在时间同步申请消息中填充本节点的上线运行时间;
步骤2-2,运行在对等主动端模式下的其他集群节点接收到时间同步申请消息后,读取消息中对方节点上线运行时间并和本节点上线运行时间比较,如果对方节点上线时间早于本节点上线运行时间,则修改本节点运行模式为对等被动端模式,并和对方节点保持时间同步;否则,向对方节点发送对时同步应答消息,要求对方节点和本节点保持时间同步;
步骤2-3,运行在对等被动端模式下的其他集群节点接收到时间同步申请消息后,读取消息中对方节点上线运行时间并和本节点当前同步集群节点的上线运行时间比较,如果对方节点上线运行时间早于本节点当前同步集群节点的上线运行时间,则不再和原有集群节点对时,而是和对方节点保持时间同步;否则,忽略时间同步申请消息不做处理;
步骤2-4,采用上述步骤步骤2-1~步骤2-3完成收敛计算后,集群中上线运行时间最长的集群节点作为最高优先级节点向其他集群节点发播时间同步消息,上线运行时间最长的集群节点运行在对等主动端模式,其他集群节点运行在对等被动端模式。
所述最高优先级节点选取算法基于网络对时协议规定的对等主动端/被动端模式,并进行优化改进。(说明:对等主动端/被动端是时间同步节点的一种运行模式,在该模式下,对等主动端和对等被动端都可以同步对方或者被对方同步,同步关系建立的依据是时钟级别,时钟级别高的时间同步节点向时钟级别低的时间同步节点进行时间同步。节点一旦确定了运行模式后就不再改变。)
步骤2中,当上线运行时间最长的集群节点发生故障或裁撤时,自动选取上线运行时间次长的集群节点与时间服务器进行时间同步,其余集群节点与上线运行时间次长的集群节点进行时间同步。
步骤2中,如果动态增加了一个集群节点,增加的新节点将自动和上线运行时间最长的集群节点进行时间同步。
步骤2中,在集群内部时间同步关系建立后,由上线运行时间最长的集群节点向时间服务器发送时间同步申请,直接和时间服务器保持时间同步;集群内部其他节点和上线运行时间最长的集群节点保持时间同步,间接和时间服务器保持时间同步。
如果设置的时间服务器为两个以上,采用k-means聚类算法选择最优时间服务器,上线运行时间最长的集群节点和最优时间服务器保持时间同步。
步骤3包括:在集群内部时间同步关系建立后,由上线运行时间最长的集群节点向处理终端进行时间同步消息发播,如果处理终端和集群节点部署在同一网段内,则采用广播方式进行时间同步消息发播;如果处理终端的部署跨越两个以上网段,则采用组播方式进行时间同步消息发播。
有益效果:本发明能够在集群环境下,实现无中心的时间同步关系自动建立,保证集群内部时间同步并和时间服务器保持时间同步;在集群节点动态增加和删减情况下,能够动态调整集群各节点之间的时间同步关系,并继续和时间服务器保持时间同步。
附图说明
下面结合附图和具体实施方式对本发明做更进一步的具体说明,本发明的上述或其他方面的优点将会变得更加清楚。
图1是本发明的体系结构图。
图2是集群各节点的同步关系建立过程图。
具体实施方式
下面结合附图及实施例对本发明做进一步说明。
如图1和图2所示,本发明具体实施方式如下:
步骤1,设置时间服务器,所述时间服务器部署在广域网上,用于接收外部基准时间,并通过网络对时协议提供时间服务;
步骤2,在集群各节点之间选举上线运行时间最长的集群节点作为最高优先级节点和时间服务器保持时间同步,其余集群节点和最高优先级集群节点保持时间同步;
步骤3,最高优先级集群节点向处理终端进行发播UTC时间。
所述时间服务器装配卫星接收模块,用于接收UTC时间。
所述时间服务器装配原子钟守时模块,用于保持UTC时间的高精度。
所述时间服务器装配网络时间发播模块,用于发播UTC时间。
步骤2包括如下步骤:
步骤2-1,所有集群节点运行在对等主动端模式,采用广播方式主动向其他节点发送时间同步申请消息,并在时间同步申请消息中填充本节点的上线运行时间;
步骤2-2,运行在对等主动端模式下的其他集群节点接收到时间同步申请消息后,读取消息中对方节点上线运行时间并和本节点上线运行时间比较,如果对方节点上线时间早于本节点上线运行时间,则修改本节点运行模式为对等被动端模式,并和对方节点保持时间同步;否则,向对方节点发送对时同步应答消息,要求对方节点和本节点保持时间同步;
步骤2-3,运行在对等被动端模式下的其他集群节点接收到时间同步申请消息后,读取消息中对方节点上线运行时间并和本节点当前同步集群节点的上线运行时间比较,如果对方节点上线运行时间早于本节点当前同步集群节点的上线运行时间,则不再和原有集群节点对时,而是和对方节点保持时间同步;否则,忽略时间同步申请消息不做处理;
步骤2-4,采用上述步骤步骤2-1~步骤2-3完成收敛计算后,集群中上线运行时间最长的集群节点作为最高优先级节点向其他集群节点发播时间同步消息,上线运行时间最长的集群节点运行在对等主动端模式,其他集群节点运行在对等被动端模式。
步骤2中,当上线运行时间最长的集群节点发生故障或裁撤时,自动选取上线运行时间次长的集群节点与时间服务器进行时间同步,其余集群节点与上线运行时间次长的集群节点进行时间同步。
步骤2中,如果动态增加了一个集群节点,增加的新节点将自动和上线运行时间最长的集群节点进行时间同步。
步骤2中,在集群内部时间同步关系建立后,由上线运行时间最长的集群节点向时间服务器发送时间同步申请,直接和时间服务器保持时间同步;集群内部其他节点和上线运行时间最长的集群节点保持时间同步,间接和时间服务器保持时间同步。
如果设置的时间服务器为两个以上,采用k-means聚类算法选择最优时间服务器,上线运行时间最长的集群节点和最优时间服务器保持时间同步。
步骤3包括:在集群内部时间同步关系建立后,由上线运行时间最长的集群节点向处理终端进行时间同步消息发播,如果处理终端和集群节点部署在同一网段内,则采用广播方式进行时间同步消息发播;如果处理终端的部署跨越两个以上网段,则采用组播方式进行时间同步消息发播。
本发明核心包含四个方面:
(1)采用时间同步自组网技术,通过无中心选举方式建立集群内部时间同步关系以及集群和时间服务器的时间同步关系,抗干扰性和健壮性较强,能够自动适配集群节点动态增加和删减的场景,动态调整集群节点之间的时间同步关系,并继续和时间服务器保持时间同步;
(2)在时间服务器有效情况下,集群节点实现内部时间统一并和时间服务器保持时间一致;在时间服务器失效情况下,集群节点也能保持内部时间统一;
(3)在多个集群节点中选取唯一节点引接外部高精度时间,避免了各节点溯源至不同的时间源,而时间源故障或时间不一致的问题导致集群各节点之间的时间不一致的情况;同时,在多个集群节点中选取唯一节点向处理终端发播时间,避免了集群节点时间不一致导致处理终端时间不一致的情况;
(4)采用多播/广播模式向各个处理终端发播时间同步消息,减轻了集群节点的计算负载;同时,有效降低了静态配置时间同步关系产生的维护成本。
本发明提供了一种集群环境下无中心时间同步自组网方法,具体实现该技术方案的方法和途径很多,以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。本实施例中未明确的各组成部分均可用现有技术加以实现。
Claims (6)
1.一种集群环境下无中心时间同步自组网方法,其特征在于,包括如下步骤:
步骤1,设置时间服务器,所述时间服务器部署在广域网上,用于接收外部基准时间,并通过网络对时协议提供时间服务;
步骤2,在集群各节点之间选举上线运行时间最长的集群节点作为最高优先级节点和时间服务器保持时间同步,其余集群节点和最高优先级集群节点保持时间同步;
步骤3,最高优先级集群节点向处理终端进行发播UTC时间;
所述时间服务器装配卫星接收模块,用于接收UTC时间;
所述时间服务器装配原子钟守时模块,用于保持UTC时间的高精度;
所述时间服务器装配网络时间发播模块,用于发播UTC时间;
步骤2包括如下步骤:
步骤2-1,所有集群节点运行在对等主动端模式,采用广播方式主动向其他节点发送时间同步申请消息,并在时间同步申请消息中填充本节点的上线运行时间;
步骤2-2,运行在对等主动端模式下的其他集群节点接收到时间同步申请消息后,读取消息中对方节点上线运行时间并和本节点上线运行时间比较,如果对方节点上线时间早于本节点上线运行时间,则修改本节点运行模式为对等被动端模式,并和对方节点保持时间同步;否则,向对方节点发送对时同步应答消息,要求对方节点和本节点保持时间同步;
步骤2-3,运行在对等被动端模式下的其他集群节点接收到时间同步申请消息后,读取消息中对方节点上线运行时间并和本节点当前同步集群节点的上线运行时间比较,如果对方节点上线运行时间早于本节点当前同步集群节点的上线运行时间,则不再和原有集群节点对时,而是和对方节点保持时间同步;否则,忽略时间同步申请消息不做处理;
步骤2-4,采用上述步骤步骤2-1~步骤2-3完成收敛计算后,集群中上线运行时间最长的集群节点作为最高优先级节点向其他集群节点发播时间同步消息,上线运行时间最长的集群节点运行在对等主动端模式,其他集群节点运行在对等被动端模式。
2.根据权利要求1所述的方法,其特征在于,步骤2中,当上线运行时间最长的集群节点发生故障或裁撤时,自动选取上线运行时间次长的集群节点与时间服务器进行时间同步,其余集群节点与上线运行时间次长的集群节点进行时间同步。
3.根据权利要求2所述的方法,其特征在于,步骤2中,如果动态增加了一个集群节点,增加的新节点将自动和上线运行时间最长的集群节点进行时间同步。
4.根据权利要求3所述的方法,其特征在于,步骤2中,在集群内部时间同步关系建立后,由上线运行时间最长的集群节点向时间服务器发送时间同步申请,直接和时间服务器保持时间同步;集群内部其他节点和上线运行时间最长的集群节点保持时间同步,间接和时间服务器保持时间同步。
5.根据权利要求4所述的方法,其特征在于,如果设置的时间服务器为两个以上,采用k-means聚类算法选择最优时间服务器,上线运行时间最长的集群节点和最优时间服务器保持时间同步。
6.根据权利要求5所述的方法,其特征在于,步骤3包括:在集群内部时间同步关系建立后,由上线运行时间最长的集群节点向处理终端进行时间同步消息发播,如果处理终端和集群节点部署在同一网段内,则采用广播方式进行时间同步消息发播;如果处理终端的部署跨越两个以上网段,则采用组播方式进行时间同步消息发播。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711056225.9A CN107947885B (zh) | 2017-11-01 | 2017-11-01 | 一种集群环境下无中心时间同步自组网方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711056225.9A CN107947885B (zh) | 2017-11-01 | 2017-11-01 | 一种集群环境下无中心时间同步自组网方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107947885A CN107947885A (zh) | 2018-04-20 |
CN107947885B true CN107947885B (zh) | 2019-02-22 |
Family
ID=61933100
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711056225.9A Active CN107947885B (zh) | 2017-11-01 | 2017-11-01 | 一种集群环境下无中心时间同步自组网方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107947885B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110581828B (zh) * | 2018-06-08 | 2022-05-03 | 成都鼎桥通信技术有限公司 | 专网集群终端的对时方法和装置 |
CN109062681A (zh) * | 2018-08-24 | 2018-12-21 | 郑州云海信息技术有限公司 | 一种周期性循环任务的执行方法、系统、装置及存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
ES2376124T3 (es) * | 2006-01-11 | 2012-03-09 | Qualcomm Incorporated | Selección de par�?metros en un sistema de comunicaciones de punto a punto. |
CN102404817B (zh) * | 2011-10-25 | 2015-04-01 | 中国科学院计算技术研究所 | 多汇聚节点无线传感器网络组网方法及其系统 |
CN104427607B (zh) * | 2013-08-26 | 2018-01-19 | 北京信威通信技术股份有限公司 | 一种自组织网络中节点间时间同步的方法 |
CN105281884B (zh) * | 2014-07-24 | 2019-02-22 | 北京信威通信技术股份有限公司 | 一种无中心网络中的节点时间同步方法 |
CN105959078B (zh) * | 2016-06-16 | 2018-02-23 | 浪潮电子信息产业股份有限公司 | 一种集群时间同步方法、集群及时间同步系统 |
-
2017
- 2017-11-01 CN CN201711056225.9A patent/CN107947885B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN107947885A (zh) | 2018-04-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104320459B (zh) | 一种节点管理方法和装置 | |
EP3010114B1 (en) | Method for controlling automatic identification of application network topology by power distribution network | |
DE112017004996T5 (de) | Gatewaykoordination für das Internet der Dinge | |
CN104052589B (zh) | 容错时钟网络 | |
DE102014204752A1 (de) | Fehlertolerantes taktnetzwerk | |
CN107070578B (zh) | 一种适用于多同步域时间触发以太网的主从时钟同步方法 | |
CN103744809A (zh) | 基于vrrp的车辆信息管理系统双机热备方法 | |
CN107947885B (zh) | 一种集群环境下无中心时间同步自组网方法 | |
CN108028817A (zh) | 用于具有限回程的小小区的定时同步 | |
CN103188110A (zh) | 基于zookeeper的云平台上服务的热备份方法 | |
CN108205569A (zh) | 用于更新配置管理数据库的方法和装置 | |
CN104852813A (zh) | 家庭网关设备中tr069参数节点的按需加载方法及系统 | |
CN111708659B (zh) | 一种基于kubernetes构建云原生容灾架构的方法 | |
CN105634901A (zh) | 基于cas vxlan的mac地址信息同步方法及装置 | |
CN104836654B (zh) | 一种基于Ethernet POWERLINK的时钟同步方法 | |
US20140307539A1 (en) | Method, Device, and System for Dual-Uplink Tangent Ring Convergence | |
CN109257218B (zh) | 一种基于snmp协议网络系统孤岛自愈方法 | |
WO2016119362A1 (zh) | 时钟同步方法、路由器和集群路由系统 | |
EP2760173A1 (en) | Data transmission method, device and system | |
CN103491624B (zh) | 传感器网络中事件时间标签的时间同步方法 | |
EP2736222B1 (en) | Service node and inter-service node user protocol message synchronization method | |
CN102006301B (zh) | 一种多终端之间流控传输协议偶联的移动控制方法 | |
CN116545842A (zh) | 一种通信故障网络重构方法、系统、电子设备及存储介质 | |
KR100947240B1 (ko) | 부하 분산구조형 이중화 시스템 | |
CN103368969A (zh) | 传输管理eml-nml间全量配置同步的方法及系统 |
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 |