CN116865898A - 基于多时钟域的时钟冗余系统和时钟冗余的实现方法 - Google Patents
基于多时钟域的时钟冗余系统和时钟冗余的实现方法 Download PDFInfo
- Publication number
- CN116865898A CN116865898A CN202311042879.1A CN202311042879A CN116865898A CN 116865898 A CN116865898 A CN 116865898A CN 202311042879 A CN202311042879 A CN 202311042879A CN 116865898 A CN116865898 A CN 116865898A
- Authority
- CN
- China
- Prior art keywords
- clock
- node
- time
- clock source
- time synchronization
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 60
- 230000001360 synchronised effect Effects 0.000 claims description 48
- 230000005540 biological transmission Effects 0.000 claims description 34
- 238000011144 upstream manufacturing Methods 0.000 claims description 28
- 230000003993 interaction Effects 0.000 claims description 16
- 238000012545 processing Methods 0.000 claims description 15
- 230000002159 abnormal effect Effects 0.000 claims description 9
- 238000001514 detection method Methods 0.000 claims description 3
- 108700009949 PTP protocol Proteins 0.000 description 15
- 238000010586 diagram Methods 0.000 description 11
- 238000004891 communication Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
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
- H04J3/0661—Clock or time synchronisation among packet nodes using timestamps
- H04J3/0667—Bidirectional timestamps, e.g. NTP or PTP for compensation of clock drift and for compensation of propagation delays
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
本申请提供了一种基于多时钟域的时钟冗余系统,包括:至少两个时钟域,至少两个时钟域包括第一时钟域和第二时钟域;第一时钟域包括第一时钟源和至少一个节点,第一时钟源与第一时钟域的各节点形成第一时间同步树;第二时钟域包括第二时钟源和至少一个节点,第二时钟源与第二时钟域的各节点形成第二时间同步树;至少一个第一节点,第一节点同时属于第一、二时钟域中的节点,第一节点用于基于第一/二时间同步树获得基于第一/二时钟源的第一/二时间同步信息,以及择一使用第一或第二时间同步信息与第一或第二时钟源同步。还提供相应的冗余的实现方法等。本申请可增加时钟系统的可靠性、缩短切换时长、相对成本低。
Description
技术领域
本申请涉及通信技术领域,特别涉及一种基于多时钟域的时钟冗余系统、基于多时钟域的时钟冗余的实现方法、第一节点和时钟同步方法。
背景技术
单时钟域的系统中,只有一个时钟源为系统内各个节点提供时钟信息,具体的,通过构建的时间同步树(也称为时钟同步路径)实现各个节点基于所述时钟源的同步。多时钟域系统中,不同的时钟域内有不同的时钟源,各时钟域的时钟源分别为各时钟域的节点提供时间信息。
目前,不论是单时钟域,还是多时钟域中的任意的某时钟域,均是通过对一时钟源增加备用时钟源的方式实现的时钟的可靠性,如图1示出了一种单时钟域下的冷备冗余方案的示意图。该方案的原理为:首先使用一时钟源作为该时钟域的主用时钟源提供时间信息,该主用时钟源通过PTP协议构建时间同步树(该过程即表示按照时钟同步路径的同步过程),实现时间域内的各个节点与主用时钟源的同步。当主用时钟源异常时,根据主备切换协议,原主用时钟源下线,将备用时钟源上线并切换为主用时钟源,再由切换后的该主用时钟源重新通过PTP协议构建时间同步树,实现时间域内的各个节点与主用时钟源的同步。
基于时钟协议的要求,一时钟域内同一时刻仅有一个时钟源工作,因此,上述的主备方式属于或近似属于是冷备冗余方案。该冷备冗余方案存在如下缺陷:
一方面,在主备用时钟源切换后,不能很快提供时钟信息,例如从上面的介绍可以看出,主备用时钟源切换后,需要重新通过PTP协议构建时间同步树,以实现时钟域内的各节点与新主用时钟源的同步,该切换过程导致了主备用时钟源切换后存在一定时间使得节点无法与时钟源同步。
另一方面,对于多时钟域系统来说,如果按照上面的方式为每个时钟域都设置一备用时钟源,也带来了成本的提高。
因此,对于多时钟域系统,在可增加时钟系统的可靠性的前提下,如何能解决上述两方面的缺陷,是有待解决的技术问题。
发明内容
鉴于现有技术的以上问题,本申请提供一种基于多时钟域的时钟冗余系统、基于多时钟域的时钟冗余的实现方法、第一节点和时钟同步方法,以实现在可增加时钟系统的可靠性的前提下,缩短切换过程导致的节点无法与时钟源同步的时长,以及尽量避免冷备冗余方案带来的成本的提高。
为达上述目的,本申请第一方面提供了一种基于多时钟域的时钟冗余系统,包括:
至少两个时钟域,所述至少两个时钟域包括第一时钟域和第二时钟域;
所述第一时钟域包括第一时钟源和至少一个节点,所述第一时钟源与第一时钟域的各节点形成第一时间同步树;
所述第二时钟域包括第二时钟源和至少一个节点,所述第二时钟源与第二时钟域的各节点形成第二时间同步树;
至少一个第一节点,所述第一节点属于所述第一时钟域中的节点,同时属于所述第二时钟域中的节点,所述第一节点用于基于所述第一时间同步树获得基于第一时钟源的第一时间同步信息、基于所述第二时间同步树获得基于第二时钟源的第二时间同步信息,以及择一使用所述第一时间同步信息与所述第一时钟源同步、或使用所述第二时间同步信息与所述第二时钟源同步。
由上,第一节点可以基于多个时钟域的各自的时间同步树获得与各时钟域的时钟源的时间同步信息,从而该第一节点可选择其中一时钟源对应的时间同步信息调整该节点的本地时钟,实现该第一节点与所选时钟源的同步,而当与该时钟源同步异常时,则可以选另一时钟源对应的时间同步信息调整该节点的本地时钟,实现该节点与所选的另一时钟源的同步,可见不需要如背景技术那样的冷备切换时间,并且,由于基于多时钟域已有的时钟源进行热备冗余,不需要如背景技术那样另行增设备用时钟源,由此,实现了在可增加时钟系统的可靠性的前提下,缩短的切换时延及维持相对较低的成本。
作为第一方面的一种可能的实现方式,所述第一节点包括:
端口时钟模块,用于在第一节点与第一/二时钟域内的上游或下游的相邻节点进行报文交互时获得报文中的时间戳、或打上时间戳;所述时间戳用于计算相邻节点的传输延时和时间偏差;
计算模块,用于计算得到第一/二时间同步信息,所述第一/二时间同步信息包括第一/二时钟源的时间信息、和第一/二时钟域中的时钟源到第一节点的沿途时间信息,所述时钟源到第一节点的沿途时间信息包括:各第二节点上的同步报文的驻留时间、各第二节点中的相邻节点的传输延时和时间偏差;其中,所述各第二节点是时间同步树中的从时钟源到所述第一节点的同步路径所包括的各节点;
时钟处理模块,用于择一的使用计算得到的所述第一时间同步信息调整第一节点的本地时钟以与所述第一时钟源同步,或使用计算得到的所述第二时间同步信息调整第一节点的本地时钟以与所述第二时钟源同步。
本申请第二方面提供了一种基于多时钟域的时钟冗余的实现方法,包括:
第一节点基于第一时钟域的第一时间同步树获得基于第一时钟源的时间同步信息;
所述第一节点基于第二时钟域的第二时间同步树获得基于第二时钟源的时间同步信息;
所述第一节点择一的使用所述基于第一时钟源的时间同步信息以与所述第一时钟源同步,或使用所述基于第二时钟源的时间同步信息以与所述第二时钟源同步。
由上,该方法可不需要如背景技术那样的冷备切换时间,并且,由于基于多时钟域已有的时钟源进行热备冗余,不需要如背景技术那样另行增设备用时钟源,由此,实现了在可增加时钟系统的可靠性的前提下,缩短的切换时延及维持相对较低的成本。
作为第二方面的一种可能的实现方式,所述时间同步信息包括:时钟源的时间信息和时钟源到第一节点的沿途时间信息;所述时钟源到第一节点的沿途时间信息包括:各第二节点上的同步报文的驻留时间、各第二节点中的相邻节点的传输延时和时间偏差;其中,所述各第二节点是时间同步树中的从时钟源到所述第一节点的同步路径所包括的各节点。
作为第二方面的一种可能的实现方式,所述第一节点择一的使用所述基于第一时钟源的时间同步信息以与所述第一时钟源同步,或使用所述基于第二时钟源的时间同步信息以与所述第二时钟源同步,包括以下之一:
当处于冗余状态时,所述第一节点使用基于第一时钟源的时间同步信息调整本地时钟,或使用基于第二时钟源的时间同步信息调整本地时钟;所述冗余状态包括:第一节点获得的基于第一时钟源的时间同步信息、基于第二时钟源的时间同步信息均正常;
当处于故障状态时,所述第一节使用基于第一时钟源的时间同步信息调整本地时钟;所述故障状态包括:第一节点获得的基于第一时钟源的时间同步信息正常、基于第二时钟源的时间同步信息异常;
当处于守时状态时,所述第一节点使用之前已经保存的基于第一时钟源的时间同步信息或之前已经保存的基于第二时钟源的时间同步信息调整本地时钟;所述守时状态包括:第一节点获得的基于第一时钟源的时间同步信息、基于第二时钟源的时间同步信息均异常。
由上,可以实现在不同的时钟状态下,采用相应的策略进行时间同步。
本申请第三方面提供了一种第一节点,应用于上述的基于多时钟域的时钟冗余系统,所述第一节点包括:
端口时钟模块,用于与第一/二时钟域内的上游的相邻节点进行报文交互,并获得报文中的时间戳、或打上时间戳;所述时间戳用于计算相邻节点的传输延时和时间偏差;所述报文中携带第一/二时钟源的时间信息、和第一/二时钟域中的时钟源到所述上游的相邻节点的沿途时间信息;
计算模块,用于计算得到第一/二时间同步信息,所述第一/二时间同步信息包括所述第一/二时钟源的时间信息、和第一/二时钟域中的时钟源到第一节点的沿途时间信息,所述时钟源到第一节点的沿途时间信息包括:所述时钟源到所述上游的相邻节点的沿途时间信息、所述上游的相邻节点到第一节点的传输延时和时间偏差、和/或所述第一节点上的同步报文的驻留时间;
时钟处理模块,用于择一的使用计算得到的所述第一时间同步信息调整第一节点的本地时钟以与所述第一时钟源同步,或使用计算得到的所述第二时间同步信息调整第一节点的本地时钟以与所述第二时钟源同步。
作为第三方面的一种可能的实现方式,所述时钟处理模块包括:
检测模块,用于检测第一节点的状态是处于冗余状态、故障状态或守时状态;
切换决策模块,用于根据检测的所述第一节点的状态选择本地时钟调整策略;
同步模块,用于根据所选择的本地时钟调整策略调整本地时钟,调整后的本地时钟用于同步到所述端口时钟模块或提供给本地的应用接口。
本申请第四方面提供了一种时钟同步方法,应用于第一节点,所述方法包括:
与第一/二时钟域内的上游的相邻节点进行报文交互,并获得报文中的时间戳、或打上时间戳;所述时间戳用于计算相邻节点的传输延时和时间偏差;所述报文中携带第一/二时钟源的时间信息、和第一/二时钟域中的时钟源到所述上游的相邻节点的沿途时间信息;
计算得到第一/二时间同步信息,所述第一/二时间同步信息包括所述第一/二时钟源的时间信息、和第一/二时钟域中的时钟源到第一节点的沿途时间信息,所述时钟源到第一节点的沿途时间信息包括:所述时钟源到所述上游的相邻节点的沿途时间信息、所述上游的相邻节点到第一节点的传输延时和时间偏差、和/或所述第一节点上的同步报文的驻留时间;
择一的使用计算得到的所述第一时间同步信息调整第一节点的本地时钟以与所述第一时钟源同步,或使用计算得到的所述第二时间同步信息调整第一节点的本地时钟以与所述第二时钟源同步。
作为第四方面的一种可能的实现方式,还包括:与第一/二时钟域内的下游的相邻节点进行报文交互,并获得报文中的时间戳、或打上时间戳,所述报文中携带第一/二时钟源的时间信息、和第一/二时钟域中的时钟源到第一节点的沿途时间信息。
本申请第五方面提供了一种计算设备,包括:处理器,以及存储器,其上存储有程序指令,所述程序指令当被所述处理器执行时使得所述处理器执行第二方面任一所述的方法,或,所述程序指令当被所述处理器执行时使得所述处理器执行第四方面任一所述的方法。
附图说明
图1为现有的单时钟域下的冷备冗余方案的示意图;
图2A为本申请实施例提供的基于多时钟域的时钟冗余系统的第一实施例的示意图;
图2B为本申请实施例提供的基于多时钟域的时钟冗余系统的第二实施例的示意图;
图3为本申请实施例提供的基于多时钟域的时钟冗余的实现方法的流程图;
图4A为本申请实施例提供的第一节点的结构示意图;
图4B为本申请实施例提供的时钟处理模块的结构示意图;
图5为本申请实施例提供的第一节点各个状态的状态机的示意图;
图6为本申请实施例提供的时钟同步方法的流程图;
图7为图2A中的交换机1执行时钟同步方法的一具体实施方式的示意图;
图8为本申请实施例提供的一种计算设备900的结构性示意性图。
具体实施方式
下面结合附图并举实施例,对本申请提供的技术方案作进一步说明。应理解,本申请实施例中提供的系统结构和业务场景主要是为了说明本申请的技术方案的可能的实施方式,不应被解读为对本申请的技术方案的唯一限定。本领域普通技术人员可知,随着系统结构的演进和新业务场景的出现,本申请提供的技术方案对类似技术问题同样适用。
应理解,本申请实施例提供的多时钟域的时钟冗余方案,包括基于多时钟域的时钟冗余系统、基于多时钟域的时钟冗余的实现方法、第一节点、时钟同步方法、计算设备、计算机存储介质。由于这些技术方案解决问题的原理相同或相似,在如下具体实施例的介绍中,某些重复之处可能不再赘述,但应视为这些具体实施例之间已有相互引用,可以相互结合。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。如有不一致,以本说明书中所说明的含义或者根据本说明书中记载的内容得出的含义为准。另外,本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。为了准确地对本申请中的技术内容进行叙述,以及为了准确地理解本发明,在对具体实施方式进行说明之前先对本说明书中所使用的术语给出如下的解释说明或定义:
1)热备冗余指是两套完全一样的组件,全部都是上电并运行的状态,两个组件同时进行数据采集、数据处理和计算,只是主组件担任输出控制任务,两个组件实时交互,当主从切换的时候完成无扰动切换。而且热备组件系统是随时切换同时检测组件状态并报告。
2)时间敏感网络(Time Sensitive Network,TSN)是以以太网为基础的新一代网络标准。它为以太网协议的MAC层提供一套通用的时间敏感机制,以实现语音、视频、工业自动化指令等关键数据在以太网中的低时延、高可靠的确定性传输。
3)精确时间同步协议(Precision Time Protocol,PTP)是一种时间同步的协议,其本身可用于设备之间的高精度时间同步,也可用于设备之间的频率同步。如下列举了PTP的部分相关概念:
PTP网络的时间同步原理:整个PTP网络中,所有时钟都会按照主从(Master-Slave)层次关系组织在一起,时钟源的时钟向各节点逐级同步时钟,该逐级同步过程也可称为基于时间同步树(或称为时间同步路径)的同步过程。整个同步的过程是通过交换PTP报文来完成的。其中,从时钟通过PTP报文中携带的时间戳信息计算与主时钟之间的偏移和延时,据此调整本地时钟达到与主时钟的同步。
时间同步树:即时间同步路径,指PTP网络逐级同步过程中,PTP域内所有节点基于节点间的主从关系构成的路径。其中,为了便于对时间同步树的理解,也可以参见图1所示,图1中所形成的时间同步树以双点划线加箭头表示,交换机2与交换机3之间是被动端口(Passive Port),非同步路径,不加箭头表示,图1中的实线表示各节点存在的物理连接关系。
PTP域,应用了PTP协议的网络称为PTP域。PTP域是独立PTP时钟同步系统,一个PTP域内只有一个时钟源。
PTP端口:设备上运行了PTP协议的端口称为PTP端口,PTP端口的按角色可分为以下三种:主端口(Master Port),指发布同步时间的端口;从端口(Slave Port),指接收同步时间的端口;被动端口(Passive Port),指不接收同步时间,也不对外发布同步时间,闲置备用的端口。其中,为了便于对PTP端口的理解,也可以参见图1所示,图1中主端口以m表示,从端口以s表示,被动端口以p表示。
主从关系:PTP域的节点设备按照一定的主从关系(Master-Slave)进行时钟同步。主从关系是相对而言的,同步时钟的节点设备称为从节点,发布时钟的节点设备称为主节点,一台设备可能同时从上层节点设备同步时钟,然后向下层节点设备发布时钟。
对于相互同步的一对时钟节点来说,存在如下主从关系:发布同步时间的节点称为主节点,而接收同步时间的节点则称为从节点;主节点上的时钟称为主时钟,而从节点上的时钟则称为从时钟;发布同步时间的端口称为主端口(Master Port),而接收同步时间的端口则称为从端口(Slave Port)。
时钟源:PTP域中所有的时钟节点都按一定层次组织在一起,整个域的参考时钟(即最高层次的时钟)就是时钟源,或称最优时钟GMC(Grandmaster Clock)。通过PPT域内各节点间PTP报文的交互,时钟源的时间最终将被同步到整个PTP域中。
PTP报文:PTP通过主从节点间交互PTP报文,实现主从关系的建立、时间和频率同步。在进行时间同步过程中,会在交互的PTP报文中加入时间戳,以计算出主从节点之间的时钟偏差(offset)和传输延时(delay),从而从节点据此调整本地时钟实现与主节点的同步。
两节点实现时钟同步的主要步骤:1)建立主从关系,协商端口主从状态等。2)频率同步,实现从节点频率与主节点同步。3)时间同步,实现从节点时间与主节点同步。
4)单时钟域:指整个系统中只存在一个时钟域,例如整个系统中只存在一个PTP域,该PTP域的各节点与该PTP域的时钟源进行时间同步。
5)多时钟域:指整个系统中存在两个以上的时钟域,例如,整个系统中同时存在两个或两个以上的PTP域,各PTP域中分别存在各自的时钟源。
本申请提供了一种基于多时钟域的时钟冗余方案,本申请的时钟冗余方案中,对于使用时钟的节点(即需要与时钟源同步的节点),其可以属于多个时钟域,例如该节点即属于第一PTP域中的节点,也同时属于第二PTP域中的节点。该节点可以基于多个时钟域的各自的时间同步树获得与各时钟域的时钟源的时间同步信息,从而该节点可选择其中一时钟源对应的时间同步信息调整该节点的本地时钟,实现该节点与所选时钟源的同步,而当与该时钟源同步异常时,则可以选另一时钟源对应的时间同步信息调整该节点的本地时钟,实现该节点与所选的另一时钟源的同步。
由于上述节点可获得各时钟域的时钟源的时间同步信息,并择一调整本地时钟,对于该节点来说,相当于多时钟域下的各时钟源互为热备冗余。其中,节点切换时钟源对应的时间同步信息调整该节点的本地时钟时,不需要如背景技术那样的冷备切换时间,并且,由于基于多时钟域已有的时钟源进行热备冗余,不需要如背景技术那样另行增设备用时钟源,由此,实现了在可增加时钟系统的可靠性的前提下,缩短切换时延及维持相对较低的成本。
在一些实施例中,各时钟源的时钟可为绝对时钟,例如,各时钟源时钟信息可分别来自相同或不同的卫星授时,如来自中国北斗卫星导航系统(BDS)、美国全球定位系统(GPS)、俄罗斯格洛纳斯卫星导航系统(GNSS)或欧盟研制伽利略卫星导航系统(GSNS)等授时,通过来自卫星的授时,各时钟源可具有较高精度的绝对时间。由此,可进一步实现上述各节点在针对不同时钟域的时钟源进行切换同步的前后,都能同步到较高精度的绝对时间。
下面,将结合各附图和实施例对本申请进行详细介绍。
如图2A示出了本申请实施例提供的一种基于多时钟域的时钟冗余系统的第一实施例,下面进行详细说明:
该实施例提供的基于多时钟域的时钟冗余系统,包括至少两个时钟域,所述至少两个时钟域包括第一时钟域和第二时钟域;
所述第一时钟域包括第一时钟源和至少一个节点,所述第一时钟源与第一时钟域的各节点形成第一时间同步树;
所述第二时钟域包括第二时钟源和至少一个节点,所述第二时钟源与第二时钟域的各节点形成第二时间同步树;
至少一个第一节点,所述第一节点属于所述第一时钟域中的节点,同时属于所述第二时钟域中的节点,所述第一节点用于基于所述第一时间同步树获得基于第一时钟源的第一时间同步信息、基于所述第二时间同步树获得基于第二时钟源的第二时间同步信息,以及择一使用所述第一时间同步信息与所述第一时钟源同步、或使用所述第二时间同步信息与所述第二时钟源同步。
在一些实施例中,时钟域为PTP域,在其他一些实施例中,时钟域可以是NTP(Network Time Protocol,网络时间协议)域等。
在一些实施例中,各时钟域的时钟源的时钟可为绝对时钟,各时钟源时钟信息可分别来相同或不同的卫星授时。
在一些实施例中,上述各节点(包括第一节点)包括交换设备、终端等。其中,第一节点为交换机时,还可将时钟同步报文继续向下游转发。
在一些实施例中,一个时钟域内的时钟源与各节点,基于PTP协议建立节点之间的主从关系,协商节点端口的主从状态等,从而形成时间同步树(或称时间同步路径),进行各个节点与时钟源的同步,包括频率的同步和/或时间的同步。
在一些实施例中,第一节点所获得的基于某时钟源的时间同步信息,包括该时钟源的时间信息、和该时钟源到第一节点的沿途时间信息,所述时钟源到第一节点的沿途时间信息包括:各第二节点上的同步报文的驻留时间、各第二节点中的相邻节点的传输延时和时间偏差;其中,所述各第二节点是时间同步树中的从时钟源到所述第一节点的同步路径所包括的各节点。
在一些实施例中,相邻节点的传输延时(delay)和时间偏差(offset),是指具有主从关系的两节点,基于PTP协议所得到的这两节点之间的传输延时和时间偏差。由于具有主从关系的两节点在时间同步树中相邻存在,故这里称为相邻节点。
在一些实施例中,某节点的同步报文的驻留时间可以基于从接收到该同步报文时所打的时间戳和转发该同步报文时所打的时间戳的差值获得。
在一些实施例中,基于PTP协议获得传输延时(delay)和时间偏差(offset)的方式可为如下方式:
假设具有主从关系的两节点为节点M与节点N,节点M在其t1时刻向节点N发送同步报文,并将该t1时刻发送给节点N;节点N记录接收到所述同步报文的时刻t2,并记录接收的所述t1时刻;节点N在其t3时刻向节点M发响应报文,并记录该t3时刻;节点M记录接收到所述响应报文的时刻t4,并将该t4时刻发送给节点N;节点N记录接收的所述t4时刻;此时节点N已经记录了t1、t2、t3、t4,则如下公式计算出节点M与节点N之间的传输延时(delay)和时间偏差(offset):
信号在节点M与节点N之间往返的传输延时=(t2-t1)+(t4-t3);则,节点M与节点N之间的传输延时delay=往返的传输延时/2=((t2-t1)+(t4-t3))/2。
根据下述两公式可以计算节点M与节点N之间的时间偏差(offset):
t2=t1+offset+delay
t4=t3-offset+delay
其中,由上两公式可得时间偏差:offset=((t2-t1)+(t3-t4))/2。
在一些实施例中,第一时钟域中和/或第二时域中的所有节点都是第一节点,该实施例可参见图2A所示的例子。在另一些实施例中,第一时钟域中和/或第二时域中的部分节点是第一节点,也即也存在各时钟域的时钟树不交叉的节点,该实施例可参见图2B所示的本申请实施例提供的一种基于多时钟域的时钟冗余系统的第二实施例。其中,图2A和图2B中,交换机2和交换机3之间涉及到的被动端口(Passive Port)时,双划线或虚线上未加箭头。
在一些实施例中,上述至少两个时钟域还可以包括第三时钟域和/或第四时钟域,或更多。第一节点也可以同时属于第三时钟域和/或第四时钟域或其他时钟域的节点。第一节点可基于各时钟域的时间同步树获得基于各时钟源的时间同步信息,以从中择一来与对应时钟域的时钟源进行同步。
在一些实施例中,可以基于冗余切换协议,或选举策略来择一选择一时钟源的时间同步信息,以与相应时钟域中的时钟源同步。
在一些实施例中,第一节点基于获得的第一时钟源的时间同步信息与所述第一时钟源同步,是指:将第一节点的本地时钟,根据获得的第一时钟源的时间同步信息进行调整。调整后的本地时钟,可以提供给第一节点上的使用时钟信息的端口或应用。与其他时钟源的同步,以此类推,不再赘述。
如图3示出了本申请实施例提供的一种基于多时钟域的时钟冗余的实现方法,其中,该方法可以基于本申请上述实施例提供的基于多时钟域的时钟冗余系统实现,其中,下述各个步骤的可实现的各实施例,可以参见上述系统的各实施例的描述,不再赘述。该方法包括以下步骤:
S31:第一节点基于第一时钟域的第一时间同步树获得基于第一时钟源的时间同步信息。
S32:所述第一节点基于第二时钟域的第二时间同步树获得基于第二时钟源的时间同步信息。
在一些实施例中,第一时钟域和第二时钟域均可为PTP时钟域,此时各时钟域基于PTP协议建立时间同步树,并基于所述时间同步树获得基于时钟源的时间同步信息。在其他一些实施例中,可以为基于其他协议的时钟域,如上述NTP时钟域等。
S33:所述第一节点择一的使用所述基于第一时钟源的时间同步信息以与所述第一时钟源同步,或使用所述基于第二时钟源的时间同步信息以与所述第二时钟源同步。
在一些实施例中,所述时间同步信息包括:时钟源的时间信息和时钟源到第一节点的沿途时间信息。在一些实施例中,所述时钟源到第一节点的沿途时间信息包括:各第二节点上的同步报文的驻留时间、各第二节点中的相邻节点的传输延时和时间偏差;其中,所述各第二节点是时间同步树中的从时钟源到所述第一节点的同步路径所包括的各节点。
在一些实施例中,所述第一节点择一的使用所述基于第一时钟源的时间同步信息以与所述第一时钟源同步,或使用所述基于第二时钟源的时间同步信息以与所述第二时钟源同步,包括以下之一:
当处于冗余状态时,所述第一节点使用基于第一时钟源的时间同步信息调整本地时钟,或使用基于第二时钟源的时间同步信息调整本地时钟;所述冗余状态包括:第一节点获得的基于第一时钟源的时间同步信息、基于第二时钟源的时间同步信息均正常;
当处于故障状态时,所述第一节使用基于第一时钟源的时间同步信息调整本地时钟;所述故障状态包括:第一节点获得的基于第一时钟源的时间同步信息正常、基于第二时钟源的时间同步信息异常;
当处于守时状态时,所述第一节点使用之前已经保存的基于第一时钟源的时间同步信息或之前已经保存的基于第二时钟源的时间同步信息调整本地时钟;所述守时状态包括:第一节点获得的基于第一时钟源的时间同步信息、基于第二时钟源的时间同步信息均异常。
在一些实施例中,还包括:当处于初始化状态时,第一节点继续等待,直到进入上述冗余状态、故障状态或守时状态。
如图4A示出了本申请实施例提供的一种第一节点,其中,该第一节点可以应用于本申请上述实施例提供的基于多时钟域的时钟冗余系统,或上述实施例提供的基于多时钟域的时钟冗余的实现方法。该第一节点包括:
端口时钟模块41,用于与第一/二时钟域内的上游的相邻节点进行报文交互,并获得报文中的时间戳、或打上时间戳;所述时间戳用于计算相邻节点的传输延时和时间偏差;所述报文中携带第一/二时钟源的时间信息、和第一/二时钟域中的时钟源到所述上游的相邻节点的沿途时间信息;
计算模块42,用于计算得到第一/二时间同步信息,所述第一/二时间同步信息包括所述第一/二时钟源的时间信息、和第一/二时钟域中的时钟源到第一节点的沿途时间信息,所述时钟源到第一节点的沿途时间信息包括:所述时钟源到所述上游的相邻节点的沿途时间信息、所述上游的相邻节点到第一节点的传输延时和时间偏差、和/或所述第一节点上的同步报文的驻留时间;
时钟处理模块43,用于择一的使用计算得到的所述第一时间同步信息调整第一节点的本地时钟以与所述第一时钟源同步,或使用计算得到的所述第二时间同步信息调整第一节点的本地时钟以与所述第二时钟源同步。
其中,上述计算模块42中的所述时钟源到第一节点的沿途时间信息,也即各第二节点上的同步报文的驻留时间、各第二节点中的相邻节点的传输延时和时间偏差;其中,所述各第二节点是时间同步树中的从时钟源到所述第一节点的同步路径所包括的各节点。
在一些实施例中,时钟处理模块43还用于进行频率的同步。
在一些实施例中,如图4B示出的本申请实施例提供的时钟处理模块43的结构示意图,所述时钟处理模块43包括:
检测模块431,用于检测第一节点的状态是处于冗余状态、故障状态或守时状态;其中上述步骤S33介绍了冗余状态、故障状态或守时状态,不再赘述。
切换决策模块432,用于根据检测的所述第一节点的状态选择本地时钟调整策略;其中上述步骤S33介绍了如何根据第一节点的状态选择本地时钟调整策略,不再赘述。
同步模块433,用于根据所选择的本地时钟调整策略调整本地时钟,调整后的本地时钟用于同步到所述端口时钟模块或提供给本地的应用接口。
下面,参照图5,对第一节点的状态机进行介绍,其中图2的例子是对应图2A或图2B示出的系统的例子,包括两个时钟域的实例,称为实例1和实例2,第一节点的状态机如图5所示,当配置为冗余使能时,包括下述状态:第一节点上电或复位初始化过后,若实例1与第一时钟域的第一时钟源同步,且实例2与第二时钟域的第二时钟源同步,则此时第一节点的时钟处于上述步骤S33中的冗余状态;若实例1和实施例2中存在一个与对应时钟域的时钟源不同步,则进入上述步骤S33中的故障状态;若实例1和实施例2中都与对应时钟域的时钟源不同步,则进入上述步骤S33中的守时状态。
如图6示出了本申请实施例提供的时钟同步方法,可应用于上述第一节点,该方法包括:
S61:与第一/二时钟域内的上游的相邻节点进行报文交互,并获得报文中的时间戳、或打上时间戳;所述时间戳用于计算相邻节点的传输延时和时间偏差;所述报文中携带第一/二时钟源的时间信息、和第一/二时钟域中的时钟源到所述上游的相邻节点的沿途时间信息;
S62:计算得到第一/二时间同步信息,所述第一/二时间同步信息包括所述第一/二时钟源的时间信息、和第一/二时钟域中的时钟源到第一节点的沿途时间信息,所述时钟源到第一节点的沿途时间信息包括:所述时钟源到所述上游的相邻节点的沿途时间信息、所述上游的相邻节点到第一节点的传输延时和时间偏差、和/或所述第一节点上的同步报文的驻留时间;
S63:择一的使用计算得到的所述第一时间同步信息调整第一节点的本地时钟以与所述第一时钟源同步,或使用计算得到的所述第二时间同步信息调整第一节点的本地时钟以与所述第二时钟源同步。
在一些实施例中,第一节点可以是继续转发同步报文的节点,如交换设备,
在一些实施例中,第一节点可以是使用时间信息的节点,可以是交换设备,也可以是终端,此时,该节点可以将调整后的本地时钟提供给相应的端口或应用。
在一些实施例中,第一节点可以是继续转发同步报文的节点,也可以同时是使用时间信息的节点。
在一些实施例中,当第一节点继续转发同步报文时,上述方法还包括:与第一/二时钟域内的下游的相邻节点进行报文交互,并获得报文中的时间戳、或打上时间戳,所述报文中携带第一/二时钟源的时间信息、和第一/二时钟域中的时钟源到第一节点的沿途时间信息。
在一些实施例中,第一节点与上游或下游节点的报文交互,可以是基于PTP协议,通过PTP协议要求获得报文中的时间戳、或打上时间戳,以实现相邻节点的传输延时和时间偏差的计算。
其中,通过上述方式,实现了同步报文在按照时间同步树依次转发时,将时钟源的时间信息和沿途时间信息依次向下游节点的传输,以便于各下游节点与时钟源的同步。
下面以第一节点与第二时钟源时间对准为例,来说明如何调整第一节点的本地时钟,其中,假设第二时钟域按照同步路径依次包括:第二时钟源T、第二节点A、第二节点B、第一节点C。且,假设第二时钟源T的时钟为t1;第二节点A与第二时钟源T的时间偏差offset1,同步报文在第二节点A的驻留时间ResidenceTime1;第二节点B与第二节点A的时间偏差offset2,同步报文在第二节点B的驻留时间ResidenceTime2;第一节点C与第二节点B的时间偏差offset3。
其中,当第一节点C与第二节点B根据第二时钟源发出的同步报文执行完PTP协议(得到offset3时)的时刻,可以获得第二时钟源当前时间Tnow,为:
Tnow=t1+offset1+ResidenceTime1+offset2+ResidenceTime2+offset3。
此时,第一节点C的本地时间调整为计算出的第二时钟源的当前时间Tnow,完成与第二时钟源的对准。
下面,以图2A中的交换机1执行时钟同步方法为例,来进一步说明本申请的基于多时钟域的时钟冗余方案。其中,图2A的实施例中,交换机1属于第一PTP域,在第一PTP域中的时钟源为第一时钟源,在第一PTP域中基于PTP协议形成第一时间同步树,第一时间同步树中第一时钟源到交换机1的时间同步路径是:第一时钟源-交换机1,在第一PTP域中的时间同步报文这里称为第一时间同步报文。交换机1同时属于第二PTP域,在第二PTP域中的时钟源为第二时钟源,在第二PTP域中基于PTP协议形成第二时间同步树,第二时间同步树中第二时钟源到交换机1的时间同步路径是:第二时钟源-交换机4-交换机1,在第二PTP域中的时间同步报文这里称为第二时间同步报文。其中,对交换机1执行时钟同步方法,或称为交换机1的时钟的冗余实现方法,如图7所示,该方法包括以下步骤:
S110:在第一PTP域中,交换机1通过与第一时钟源的通信端口,基于PTP协议进行第一时间同步报文的交互。通过该报文交互,可计算获得交换机1相对于基于第一时钟源的第一时间同步信息,这里的第一时间同步信息主要包括:第一钟源的时间信息、和第一时钟源到交换机1的传输延时和时间偏差。
S120:在第二PTP域中,交换机1通过与交换机4的通信端口,基于PTP协议进行第二时间同步报文的交互。通过该报文交互,可计算获得交换机1相对于基于第二时钟源的第二时间同步信息,这里的第二时间同步信息主要包括:第二钟源的时间信息、和第二时钟源到交换机1的沿途时间信息,该沿途时间信息包括:第二时钟源到交换机4的传输延时和时间偏差、交换机4到交换机1的传输延时和时间偏差、同步报文在交换机4的驻留时间。
其中,上述步骤S110与S120的顺序并非固定,也可以先执行步骤S120,再执行步骤S110,或者同时执行。
S130:交换机1分别确定PTP实例1与PTP实例2的状态,这里的PTP实例1的状态即指交换机1获得基于第一时钟源的第一时间同步信息是否正常、PTP实例2的状态即指交换机1获得基于第二时钟源的第二时间同步信息是否正常。
其中,在一些实施例中,可以采用下述的至少之一的方式进行判断:
1)判断从上游接收的同步报文中,携带的时钟源的描述信息是否正常,该描述信息用于描述时钟源与授时卫星的同步情况,例如跟踪到多少颗卫星、时钟源与授时的同步情况等;
2)判断与前次接收的同步报文中的时间信息相比,同步的偏移是否超出阈值;
3)判断连续接收的多个同步报文中的时间信息是否符合一致性要求。
S140:交换机1根据PTP实例1与PTP实例2的状态,参照如图5所示的状态机,确定交换机1当前的时钟同步状态是处于初始化状态中、同步冗余状态、故障状态、或守时状态。
S150:交换机1根据当前的时钟同步状态,采用相应的时间同步策略,调整本地时钟,具体可参见上述步骤S33所述,不再赘述。
S160:交换机1将调整后的本地时钟(即同步后的本地时钟),同步的交换机1的端口,或提供给交换机1上相应的应用。例如该应用可以是交换机1内置的管理软件,该管理软件需要使用时钟信息。
S170:在第一PTP域,交换机1将同步报文向时间同步路径下游的交换机2和交换机4转发,且转发的时间同步报文中携带:第一钟源的时间信息、和第一时钟源到交换机1的沿途时间信息。
S180:在第二PTP域,交换机1将同步报文向时间同步路径下游的交换机2转发,且转发的时间同步报文中携带:第二钟源的时间信息、和第二时钟源到交换机1的沿途时间信息。
其中,上述步骤S170与S180的顺序并非固定,也可以先执行步骤S180,再执行步骤S170,或者同时执行。
图8是本申请实施例提供的一种计算设备900的结构性示意性图。该计算设备可以作为多时钟域的时钟同步装置,执行上述多时钟域的时钟同步方法中的各可选实施例。该计算设备可以是终端,也可以是终端内部的芯片或芯片系统。如图8所示,该计算设备900包括:处理器910、存储器920、通信接口930。
应理解,图8所示的计算设备900中的通信接口930可以用于与其他设备之间进行通信,具体可以包括一个或多个收发电路或接口电路。
其中,该处理器910可以与存储器920连接。该存储器920可以用于存储该程序代码和数据。因此,该存储器920可以是处理器910内部的存储单元,也可以是与处理器910独立的外部存储单元,还可以是包括处理器910内部的存储单元和与处理器910独立的外部存储单元的部件。
可选的,计算设备900还可以包括总线。其中,存储器920、通信接口930可以通过总线与处理器910连接。总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图8中采用了一条无箭头的线表示,但并不表示仅有一根总线或一种类型的总线。
应理解,在本申请实施例中,该处理器910可以采用中央处理单元(centralprocessing unit,CPU)。该处理器还可以是其它通用处理器、数字信号处理器(digitalsignal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field programmable gate Array,FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。或者该处理器910采用一个或多个集成电路,用于执行相关程序,以实现本申请实施例所提供的技术方案。
该存储器920可以包括只读存储器和随机存取存储器,并向处理器910提供指令和数据。处理器910的一部分还可以包括非易失性随机存取存储器。例如,处理器910还可以存储设备类型的信息。
在计算设备900运行时,所述处理器910执行所述存储器920中的计算机执行指令执行上述方法的任一操作步骤以及其中任一可选的实施例。
应理解,根据本申请实施例的计算设备900可以对应于执行根据本申请各实施例的方法中的相应主体,并且计算设备900中的各个模块的上述和其它操作和/或功能分别为了实现本实施例各方法的相应流程,为了简洁,在此不再赘述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时用于执行上述方法,该方法包括上述各个实施例所描述的方案中的至少之一。
本申请实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是,但不限于,电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括、但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本申请操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
另外,说明书和权利要求书中的词语“第一、第二、第三等”或模块A、模块B、模块C等类似用语,仅用于区别类似的对象,不代表针对对象的特定排序,可以理解地,在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
在上述的描述中,所涉及的表示步骤的标号,如S110、S120……等,并不表示一定会按此步骤执行,在允许的情况下可以互换前后步骤的顺序,或同时执行。
说明书和权利要求书中使用的术语“包括”不应解释为限制于其后列出的内容;它不排除其它的元件或步骤。因此,其应当诠释为指定所提到的所述特征、整体、步骤或部件的存在,但并不排除存在或添加一个或更多其它特征、整体、步骤或部件及其组群。因此,表述“包括装置A和B的设备”不应局限为仅由部件A和B组成的设备。
本说明书中提到的“一个实施例”或“实施例”意味着与该实施例结合描述的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在本说明书各处出现的用语“在一个实施例中”或“在实施例中”并不一定都指同一实施例,但可以指同一实施例。此外,在一个或多个实施例中,能够以任何适当的方式组合各特定特征、结构或特性,如从本公开对本领域的普通技术人员显而易见的那样。
注意,上述仅为本申请的较佳实施例及所运用技术原理。本领域技术人员会理解,本申请不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本申请的保护范围。因此,虽然通过以上实施例对本申请进行了较为详细的说明,但是本申请不仅仅限于以上实施例,在不脱离本申请构思的情况下,还可以包括更多其他等效实施例,均属于本申请保护范畴。
Claims (10)
1.一种基于多时钟域的时钟冗余系统,其特征在于,包括:
至少两个时钟域,所述至少两个时钟域包括第一时钟域和第二时钟域;
所述第一时钟域包括第一时钟源和至少一个节点,所述第一时钟源与第一时钟域的各节点形成第一时间同步树;
所述第二时钟域包括第二时钟源和至少一个节点,所述第二时钟源与第二时钟域的各节点形成第二时间同步树;
至少一个第一节点,所述第一节点属于所述第一时钟域中的节点,同时属于所述第二时钟域中的节点,所述第一节点用于基于所述第一时间同步树获得基于第一时钟源的第一时间同步信息、基于所述第二时间同步树获得基于第二时钟源的第二时间同步信息,以及择一使用所述第一时间同步信息与所述第一时钟源同步、或使用所述第二时间同步信息与所述第二时钟源同步。
2.根据权利要求1所述的系统,其特征在于,所述第一节点包括:
端口时钟模块,用于在第一节点与第一/二时钟域内的上游或下游的相邻节点进行报文交互时获得报文中的时间戳、或打上时间戳;所述时间戳用于计算相邻节点的传输延时和时间偏差;
计算模块,用于计算得到第一/二时间同步信息,所述第一/二时间同步信息包括第一/二时钟源的时间信息、和第一/二时钟域中的时钟源到第一节点的沿途时间信息,所述时钟源到第一节点的沿途时间信息包括:各第二节点上的同步报文的驻留时间、各第二节点中的相邻节点的传输延时和时间偏差;其中,所述各第二节点是时间同步树中的从时钟源到所述第一节点的同步路径所包括的各节点;
时钟处理模块,用于择一的使用计算得到的所述第一时间同步信息调整第一节点的本地时钟以与所述第一时钟源同步,或使用计算得到的所述第二时间同步信息调整第一节点的本地时钟以与所述第二时钟源同步。
3.一种基于多时钟域的时钟冗余的实现方法,其特征在于,包括:
第一节点基于第一时钟域的第一时间同步树获得基于第一时钟源的时间同步信息;
所述第一节点基于第二时钟域的第二时间同步树获得基于第二时钟源的时间同步信息;
所述第一节点择一的使用所述基于第一时钟源的时间同步信息以与所述第一时钟源同步,或使用所述基于第二时钟源的时间同步信息以与所述第二时钟源同步。
4.根据权利要求3所述的方法,其特征在于,所述时间同步信息包括:
时钟源的时间信息和时钟源到第一节点的沿途时间信息;
所述时钟源到第一节点的沿途时间信息包括:各第二节点上的同步报文的驻留时间、各第二节点中的相邻节点的传输延时和时间偏差;其中,所述各第二节点是时间同步树中的从时钟源到所述第一节点的同步路径所包括的各节点。
5.根据权利要求3所述的方法,其特征在于,所述第一节点择一的使用所述基于第一时钟源的时间同步信息以与所述第一时钟源同步,或使用所述基于第二时钟源的时间同步信息以与所述第二时钟源同步,包括以下之一:
当处于冗余状态时,所述第一节点使用基于第一时钟源的时间同步信息调整本地时钟,或使用基于第二时钟源的时间同步信息调整本地时钟;所述冗余状态包括:第一节点获得的基于第一时钟源的时间同步信息、基于第二时钟源的时间同步信息均正常;
当处于故障状态时,所述第一节使用基于第一时钟源的时间同步信息调整本地时钟;所述故障状态包括:第一节点获得的基于第一时钟源的时间同步信息正常、基于第二时钟源的时间同步信息异常;
当处于守时状态时,所述第一节点使用之前已经保存的基于第一时钟源的时间同步信息或之前已经保存的基于第二时钟源的时间同步信息调整本地时钟;所述守时状态包括:第一节点获得的基于第一时钟源的时间同步信息、基于第二时钟源的时间同步信息均异常。
6.一种第一节点,应用于权利要求1或2所述的基于多时钟域的时钟冗余系统,其特征在于,所述第一节点包括:
端口时钟模块,用于与第一/二时钟域内的上游的相邻节点进行报文交互,并获得报文中的时间戳、或打上时间戳;所述时间戳用于计算相邻节点的传输延时和时间偏差;所述报文中携带第一/二时钟源的时间信息、和第一/二时钟域中的时钟源到所述上游的相邻节点的沿途时间信息;
计算模块,用于计算得到第一/二时间同步信息,所述第一/二时间同步信息包括所述第一/二时钟源的时间信息、和第一/二时钟域中的时钟源到第一节点的沿途时间信息,所述时钟源到第一节点的沿途时间信息包括:所述时钟源到所述上游的相邻节点的沿途时间信息、所述上游的相邻节点到第一节点的传输延时和时间偏差、和/或所述第一节点上的同步报文的驻留时间;
时钟处理模块,用于择一的使用计算得到的所述第一时间同步信息调整第一节点的本地时钟以与所述第一时钟源同步,或使用计算得到的所述第二时间同步信息调整第一节点的本地时钟以与所述第二时钟源同步。
7.根据权利要求6所述的第一节点,其特征在于,所述时钟处理模块包括:
检测模块,用于检测第一节点的状态是处于冗余状态、故障状态或守时状态;
切换决策模块,用于根据检测的所述第一节点的状态选择本地时钟调整策略;
同步模块,用于根据所选择的本地时钟调整策略调整本地时钟,调整后的本地时钟用于同步到所述端口时钟模块或提供给本地的应用接口。
8.一种时钟同步方法,应用于第一节点,其特征在于,所述方法包括:
与第一/二时钟域内的上游的相邻节点进行报文交互,并获得报文中的时间戳、或打上时间戳;所述时间戳用于计算相邻节点的传输延时和时间偏差;所述报文中携带第一/二时钟源的时间信息、和第一/二时钟域中的时钟源到所述上游的相邻节点的沿途时间信息;
计算得到第一/二时间同步信息,所述第一/二时间同步信息包括所述第一/二时钟源的时间信息、和第一/二时钟域中的时钟源到第一节点的沿途时间信息,所述时钟源到第一节点的沿途时间信息包括:所述时钟源到所述上游的相邻节点的沿途时间信息、所述上游的相邻节点到第一节点的传输延时和时间偏差、和/或所述第一节点上的同步报文的驻留时间;
择一的使用计算得到的所述第一时间同步信息调整第一节点的本地时钟以与所述第一时钟源同步,或使用计算得到的所述第二时间同步信息调整第一节点的本地时钟以与所述第二时钟源同步。
9.根据权利要求8所述的方法,其特征在于,还包括:
与第一/二时钟域内的下游的相邻节点进行报文交互,并获得报文中的时间戳、或打上时间戳,所述报文中携带第一/二时钟源的时间信息、和第一/二时钟域中的时钟源到第一节点的沿途时间信息。
10.一种计算设备,其特征在于,包括:
处理器,以及
存储器,其上存储有程序指令,所述程序指令当被所述处理器执行时使得所述处理器执行权利要求3至5任一所述的方法,或,所述程序指令当被所述处理器执行时使得所述处理器执行权利要求8或9所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311042879.1A CN116865898A (zh) | 2023-08-18 | 2023-08-18 | 基于多时钟域的时钟冗余系统和时钟冗余的实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311042879.1A CN116865898A (zh) | 2023-08-18 | 2023-08-18 | 基于多时钟域的时钟冗余系统和时钟冗余的实现方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116865898A true CN116865898A (zh) | 2023-10-10 |
Family
ID=88228831
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311042879.1A Pending CN116865898A (zh) | 2023-08-18 | 2023-08-18 | 基于多时钟域的时钟冗余系统和时钟冗余的实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116865898A (zh) |
-
2023
- 2023-08-18 CN CN202311042879.1A patent/CN116865898A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105429725B (zh) | 一种基于sopc组网的亚微秒级时钟同步方法及系统 | |
US9876596B2 (en) | Method and device for detecting fault in synchronization link | |
CN106451763B (zh) | 一种无需全局同步系统的智能变电站站级总线网络系统 | |
US8738792B2 (en) | Server time protocol messages and methods | |
EP2774337B1 (en) | Real-time distributed network slave device, real-time distributed network and method therefor | |
CN102412955B (zh) | 光纤不对称时主从设备间的时间偏差获取方法和通信系统 | |
Idrees et al. | IEEE 1588 for clock synchronization in industrial IoT and related applications: A review on contributing technologies, protocols and enhancement methodologies | |
RU2638645C2 (ru) | Способ для определения опорных синхросигналов, подвергнутых воздействию изменения в асимметрии задержки трассы распространения между узлами в сети связи | |
US9654555B2 (en) | Method for synchronizing local clocks in a distributed computer system | |
CN102237996B (zh) | 一种同步时钟的方法和时钟同步装置 | |
EP2448168A1 (en) | Method and system for bearing time synchronization protocol in optical transport network | |
EP3352392B1 (en) | Time synchronization packet processing method and device | |
CN103166792B (zh) | 线路非对称性补偿方法、设备及系统 | |
US20130216218A1 (en) | Method and device for compensating for time path | |
CN103248445A (zh) | 一种时钟同步方法和装置 | |
WO2009043299A1 (en) | A determining method and device for the synchronization port of a transparent clock equipment | |
Gutierrez-Rivas et al. | White rabbit HSR: A seamless subnanosecond redundant timing system with low-latency data capabilities for the smart grid | |
WO2016082466A1 (zh) | 一种自动获取1588链路非对称性延时的方法及装置 | |
WO2019233403A1 (zh) | 同步信息传输方法、发送端设备、接收端设备及存储介质 | |
CN107508648A (zh) | 基于设备功能分类的时间触发以太网分步时间同步策略 | |
CN112751639B (zh) | 时间同步的方法、通信设备和系统 | |
CN102647782A (zh) | 一种物理线路时延确定方法、时钟同步方法及其设备 | |
CN116865898A (zh) | 基于多时钟域的时钟冗余系统和时钟冗余的实现方法 | |
WO2020052298A1 (zh) | 时钟、时间同步方法、装置以及多路由器系统 | |
WO2022151993A1 (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 |