首页> 中国专利> 一种基于精确时间协议的时间同步收敛的方法和装置

一种基于精确时间协议的时间同步收敛的方法和装置

摘要

本发明公开了一种基于精确时间协议的时间同步收敛的方法和装置,该方法包括:从时钟节点在各被动端口与主时钟节点交互同步报文并进行时间同步计算,根据时间同步计算结果建立并维护该被动端口对应的备选时间信息;从时钟节点检测到从端口或任一被动端口的上游时钟同步网络发生拓扑变化时,触发BMC计算,根据BMC计算结果确定具有最优的时钟优先级信息的端口,如果具有最优的时钟优先级信息的端口为被动端口,则将该被动端口切换为从端口,并根据该被动端口对应的备选时间信息对本地时钟进行时间同步处理。本发明能够在网络拓扑变化时减少从时钟节点的失步时间。

著录项

  • 公开/公告号CN102843205A

    专利类型发明专利

  • 公开/公告日2012-12-26

    原文格式PDF

  • 申请/专利权人 杭州华三通信技术有限公司;

    申请/专利号CN201210322079.0

  • 发明设计人 徐鹏飞;

    申请日2012-09-03

  • 分类号H04J3/06(20060101);

  • 代理机构11018 北京德琦知识产权代理有限公司;

  • 代理人谢安昆;宋志强

  • 地址 310053 浙江省杭州市高新技术产业开发区之江科技工业园六和路310号华为杭州生产基地

  • 入库时间 2023-12-18 07:51:02

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-05-10

    专利权人的姓名或者名称、地址的变更 IPC(主分类):H04J3/06 变更前: 变更后: 申请日:20120903

    专利权人的姓名或者名称、地址的变更

  • 2015-08-12

    授权

    授权

  • 2013-03-20

    实质审查的生效 IPC(主分类):H04J3/06 申请日:20120903

    实质审查的生效

  • 2012-12-26

    公开

    公开

说明书

技术领域

本申请涉及精确时间同步技术领域,特别涉及一种基于精确时间协议 (Precision Time Protocol,PTP)的时间同步收敛的方法和装置。

背景技术

精确时间协议(Precision Time Protocol,PTP)是一种规定系统中设备如何相 互同步实时时间的分布式时间同步协议,具有亚微秒(us)级的时间同步性能。应 用了PTP协议的网络称为PTP域,域中的节点称为时钟节点,时钟节点上运行了 PTP协议的端口则称为PTP端口,PTP端口包括三种角色,其中,发布同步时间 的PTP端口称为主端口、接收同步时间的端口称为从端口,既不发布同步时间也 不接收同步时间的PTP端口称为被动(passive)端口。

PTP域中所有的时钟节点都按主从层级结构组织在一起,最高层次的时钟节 点是主时钟(Grandmaster Clock,GM)所在时钟节点,其它时钟节点为从时钟所 在时钟节点,主时钟决定了整个系统的参考时间。从时钟节点通过与主时钟节点 交互同步报文并记录同步报文(也称为PTP协议报文,包括Sync报文、Delay-Req 报文、Delay-Resp报文等)的收发时间,使用交互同步报文过程中得到的时间信 息调整自身的时钟和层级中的主时钟一致。

参见图1,图1是现有技术采用请求应答机制的时钟同步过程示意图,时钟同 步过程为双步模式,包括以下步骤:

(1)主时钟节点向从时钟节点发送Sync报文,并记录发送时间t1;从时钟 接收到该报文后,记录接收时间t2;(如时钟同步过程为单步模式则Sync报文中 携带t1);

(2)主时钟节点发送Sync报文后,紧接着发送携带t1的Follow-Up报文, 从时钟节点接收到该报文后,记录t1;(如时钟同步过程为单步模式则不执行本 步骤);

(3)从时钟节点接收到Sync报文后,返回Delay-Req报文给主时钟节点,并 记录发送时间t3;主时钟节点接收该报文后,记录接收时间t4;

(4)主时钟节点接收到从时钟节点的Delay-Req报文后,向从时钟节点发送 携带t4的Delay-Resp报文。

根据记录的上述t1、t2、t3、t4,从时钟节点可以计算得到自身时钟相对于主 时钟的时间偏差为Offset=[(t2-t1)-(t4-t3)]/2。然后根据该时间偏差调整本地时间, 从而实现与主时钟节点的时间同步。

现有实现中,主时钟节点可以通过手工配置静态指定,也可以通过最佳主时 钟(Best Master Clock,BMC)协议动态选举,动态选举的过程如下:各时钟节点 之间通过交互的PTP BMC通告报文中所携带的时钟优先级、时间等级、时间精度 等信息,最终选出一个时钟节点作为PTP域的主时钟节点,主时钟节点的时钟成 为主时钟。在动态选举过程中,各时钟节点之间的主从关系以及各时钟节点上的 主端口、从端口、被动端口也确定了下来,整个PTP域中最终建立起了一棵无环 路、全连通,并以主时钟节点为根的生成树;此后,主时钟节点会定期发送PTP BMC 通告报文给从时钟节点,如果一段时间内从时钟节点未接收到主时钟节点发送的 PTP BMC通告报文,便认为主时钟节点失效,重新进行主时钟节点选择。

在现有实现中,网络拓扑发生变化会造成时钟在一定时间内处于失步状态, 下面以图2为例进行说明。

图2是现有技术PTP域的组网示意图,包括C0-C7共8个时钟节点,其中, C0为主时钟节点,C1-C7均为从时钟节点,其中,在各时钟节点均正常工作的情 况下,C0上的端口01、C1上的端口11和12、C2上的端口22、C3上的端口32、 C4上的端口42、C6上的端口62和63为主端口;C2上的端口21、C3上的端口 31、C4上的端口43、C5上的端口51、C6上的端口61为从端口;C3上的端口33、 C4上的端口41为被动端口。各个从时钟节点通过自身的从端口和主时钟节点进行 同步报文交互,保持与主时钟节点的时间同步。

如图2所示,拓扑稳定的情况下,时钟节点C3通过端口31与主时钟节点C0 进行PTP事件消息交互,保持与C0的时间同步;时钟节点C4通过端口43与主 时钟节点C0进行PTP事件消息交互,保持与C0的时间同步。假设C6时钟故障, 则C4上的端口43失效,需要根据BMC算法重新计算出一条可达C0的路径,并 等待主时钟节点C0的新一轮同步,在等待C0的新一轮同步的过程中,C4一直处 于失步状态。

发明内容

有鉴于此,本发明的目的在于提供一种基于精确时间协议的时间同步收敛的 方法,该方法能够在网络拓扑变化时减少从时钟节点的失步时间。

为了达到上述目的,本发明提供了一种基于精确时间协议的时间同步收敛的 方法,应用于一从时钟节点,该从时钟接口包括有一个从端口和至少一个被动端 口,该方法包括:

从时钟节点在各被动端口与主时钟节点交互同步报文并进行时间同步计算, 并根据时间同步计算结果建立并维护该被动端口对应的备选时间信息;

从时钟节点检测到从端口或任一被动端口的上游时钟同步网络发生拓扑变化 时,触发BMC计算,根据BMC计算结果确定具有最优的时钟优先级信息的端口, 如果具有最优的时钟优先级信息的端口为被动端口,则将该被动端口切换为从端 口,并根据该被动端口对应的备选时间信息对本地时钟进行时间同步处理。

本发明还提供了一种从时钟节点,该从时钟接口包括一个从端口和至少一个 被动端口,该从时钟节点还包括:同步单元、检测单元、计算单元、切换单元;

所述同步单元,用于在所述从时钟节点的各被动端口与主时钟节点交互同步 报文并进行时间同步计算,并根据时间同步计算结果建立并维护该被动端口对应 的备选时间信息;

所述检测单元,用于检测所述从时钟节点的从端口以及各被动端口的上游时 钟同步网络是否发生拓扑变化;

所述计算单元,用于检测单元检测到所述从时钟节点的从端口或任一被动端 口的上游时钟同步网络发生拓扑变化时,触发BMC计算;

所述切换单元,用于根据BMC计算结果确定具有最优的时钟优先级信息的端 口,如果该具有最优的时钟优先级信息的端口为所述从时钟节点的被动端口,则 将该被动端口切换为从端口,并根据该被动端口对应的备选时间信息对本地时钟 进行时间同步处理。

由上面的技术方案可知,本发明中,从时钟节点在从端口和被动端口均进行 时间同步计算,将在被动端口的时间同步计算结果保存为备选时间信息;当在从 时钟节点的从端口或任一被动端口检测到上游时钟发生拓扑变化导致需要将某一 被动端口切换为从端口时,将在该最优被动端口保存的备选时间信息下发到时钟 芯片,而不必等待主时钟节点的新一轮的同步,因而可以减少从时钟节点的失步 时间。

附图说明

图1是现有技术采用请求应答机制的时钟同步过程示意图;

图2是现有技术PTP域的组网示意图;

图3是本发明实施例基于PTP的时间同步收敛的方法流程图;

图4是本发明实施例提供的从时钟节点的结构示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,下面结合附图并举实 施例,对本发明的技术方案进行详细说明。

参见图3,图3是本发明实施例基于PTP的时间同步收敛的方法流程图,该 方法应用于一从时钟节点,该从时钟接口包括有一个从端口和至少一个被动端口, 该方法包括以下步骤:

步骤301、从时钟节点在各被动端口与主时钟节点交互同步报文并进行时间同 步计算,并根据时间同步计算结果建立并维护该被动端口对应的备选时间信息。

这里,从时钟节点在各被动端口采用和从端口相同的与主时钟节点的同步报 文交互过程,并周期性地进行时间同步计算,不同之处在于:在被动端口计算得 到的时间同步计算结果不会下发到时钟芯片,而是保存为该被动端口对应的备选 时间信息,在下一次计算得到新的时间同步计算结果时,更新该被动端口对应的 备选时间信息;而在从端口计算得到的时间同步计算结果会立刻被下发到时钟芯 片,以实现与主时钟节点的时间同步。时间同步计算结果可以是自身与主时钟间 的偏移时间,也可以是根据与主时钟间的偏移时间调整后的从时钟节点的时间。

本步骤中,可以采用单步模式的请求应答机制实现从时钟节点在各被动端口 与主时钟节点交互同步报文,也可以采用双步模式的请求应答机制实现从时钟节 点在各被动端口与主时钟节点交互同步报文。

具体地,

当采用单步模式的请求应答机制实现从时钟节点在各被动端口与主时钟节点 交互同步报文时,所述从时钟节点在各被动端口与主时钟节点交互同步报文并进 行时间同步计算包括:从时钟节点在该被动端口接收主时钟节点发来的Sync报文, 获取Sync报文中携带的Sync报文发送时间t1,并记录Sync报文的接收时间t2; 向主时钟节点发送Delay-Req报文,并记录Delay-Req报文的发送时间t3;从时钟 节点接收主时钟节点在接收到Delay-Resp报文后返回的Delay-Resp报文,获取 Delay-Resp报文中携带的主时钟节点接收Delay-Req报文的时间t4;从时钟节点根 据所述t1、t2、t3、t4进行同步时间计算。

当采用双步模式的请求应答机制实现从时钟节点在各被动端口与主时钟节点 交互同步报文时,所述从时钟节点在各被动端口与主时钟节点交互同步报文并进 行时间同步计算包括:从时钟节点在该被动端口接收主时钟节点发来的Sync报文 和Follow-UP报文,获取Follow_UP报文中携带的Sync报文发送时间t1,并记录 Sync报文的接收时间t2;向主时钟节点发送Delay-Req报文,并记录Delay-Req 报文的发送时间t3;接收主时钟节点在接收到Delay-Resp报文后返回的Delay-Resp 报文,获取Delay-Resp报文中携带的主时钟节点接收Delay-Req报文的时间t4; 从时钟节点根据所述t1、t2、t3、t4进行同步时间计算。

步骤302、从时钟节点检测到从端口或任一被动端口的上游时钟同步网络发生 拓扑变化时,触发BMC计算,根据BMC计算结果确定具有最优的时钟优先级信 息的端口,如果具有最优的时钟优先级信息的端口是被动端口,则将该被动端口 切换为从端口,并下发该被动端口对应的备选时间信息到时钟芯片。

这里,时钟优先级信息包括最优时钟节点信息和到达最优时钟节点的跳数或 成本(cost),另外,时钟优先级信息还包括:发送端口(发送携带该时钟优先级 信息的PTP BMC通告报文的端口)、接收端口(接收携带该时钟优先级信息的 PTP BMC通告报文的端口)等信息。从某一端口到达最优时钟节点的跳数或cost 越低,则该端口的最优时钟信息越优。上述步骤中可以按照现有技术中的BMC计 算方式,确定具有最优的时钟优先级信息的端口。如果根据BMC计算结果确定具 有最优的时钟优先级信息的端口仍然是原从端口,则继续将原从端口的时间同步 计算结果下发到时钟芯片,据此调整本地时间;如果确定具有最优的时钟优先级 信息的端口为某个被动端口,此时原从端口的角色将发生变化,即将原从端口将 切换为被动端口或主端口,而该被动端口将被切换为新的从端口,并直接根据该 被动端口对应的备选时间信息对本地时钟进行时间同步处理:通过下发该被动端 口对应的备选时间信息到时钟芯片,从而可以直接根据该备选时间信息调整本地 时间,实现与主时钟节点的时间同步,而不必等待主时钟节点的新一轮的同步, 因而可以减少从时钟节点的失步时间。

从时钟节点的某一端口(从端口或被动端口)的上游时钟同步网络发生拓扑 变化包括两种情形:

(1)该端口的直联链路发生故障,例如,该端口故障、该端口的直联链路的 对端端口故障、直联链路中断等。当该端口的直联链路发生故障时,从时钟节点 可以根据该端口的状态确定该端口的直联链路故障,进而确定该端口的上游时钟 同步网络发生拓扑变化。

(2)该端口的直联链路正常,仍然能接收到上游时钟节点发来的PTP BMC 通告报文,但是接收到的PTP BMC通告报文中携带的时钟优先级信息发生了变化, 与接收端口的时钟优先级信息不同,则也可以确定该端口的上游时钟同步网络拓 扑发生变化。

当从时钟节点检测到自身的某一端口(从端口或被动端口)的上游时钟同步 网络发生拓扑变化时,为了继续能够与主时钟节点保持进行正常的时间同步,时 钟节点需要出触发BMC计算,重新确定各个端口的角色,确定新的从端口并利用 新的从端口与主时钟节点进行时钟同步。

根据BMC算法,具有最优的时钟优先级信息的端口将会被选择并切换为新的 从端口。如果在从端口检测到上述第一种网络拓扑变化,从端口将不能正常接收 到主时钟发送的同步报文(Sync报文),也就无法执行后续的同步报文交互,不 能再作为从端口继续与主时钟进行时间同步,根据BMC计算确定的新的从端口不 再是原有从端口。如果在从端口上检测到上述第二种网络拓扑变化,根据BMC计 算确定的新的从端口仍有可能是原有从端口。

由于从时钟节点的各被动端口和从端口一样,执行与主时钟节点间的同步报 文交互和时间同步计算,并保存了备选时间信息,因此当根据BMC计算确定的最 优时钟信息对应的端口且判定该最优时钟信息对应的端口是原有被动端口时,可 以将该被动端口被切换为从端口,并可以立刻将该被动端口对应的备选时间信息 下发到时钟芯片来调整本地时间,而不需要等待主时钟节点发起新一轮的同步报 文交互后再执行时间同步计算和本地时间调整的操作,因而能够在网络拓扑发生 变化的情况下减少从时钟节点的失步时间。

图3所示本发明实施例中,当网络拓扑发生变化后,新的网络拓扑下,原有 的主端口可能会变成被动端口,原有的被动端口也可能会变成主端口,端口的角 色变化由BMC计算结果确定。当根据BMC计算结果确定需要将某个被动端口切 换为主端口时,可以切换该被动端口为主端口,并停止在该被动端口(新的主端 口)与主时钟节点交互同步报文,另外,在切换被动端口为主端口时,还可以进 一步清除该被动端口对应的备选时间信息,以避免一段时间后网络拓扑再次发生 变化导致端口角色变换时,错误的将此前保存的该被动端口对应的备选时间信息 下发到时钟芯片。

以上对本发明实施例基于PTP的时间同步收敛的方法进行了详细说明,本发 明还提供了一种时钟节点。

参见图4,图4是本发明实施例提供的从时钟节点的结构示意图,该从时钟节 点包括:同步单元401、检测单元402、计算单元403、切换单元404;其中,

同步单元401,用于在所述从时钟节点的各被动端口与主时钟节点交互同步报 文并进行时间同步计算,并根据时间同步计算结果建立并维护该被动端口对应的 备选时间信息;

检测单元402,用于检测所述从时钟节点的从端口以及各被动端口的上游时钟 同步网络是否发生拓扑变化;

计算单元403,用于检测单元402检测到所述从时钟节点的从端口或任一被动 端口的上游时钟同步网络发生拓扑变化时,触发BMC计算;

切换单元404,用于根据BMC计算结果确定具有最优的时钟优先级信息的端 口,如果该具有最优的时钟优先级信息的端口为所述从时钟节点的被动端口,则 将该被动端口切换为从端口,并根据该被动端口对应的备选时间信息对本地时钟 进行时间同步处理;所述时钟优先级信息包括:最优时钟节点信息和到达最优时 钟节点的跳数或cost。

该从时钟节点还包括接收单元405,用于在所述从时钟节点的从端口以及各被 动端口接收PTP BMC通告报文;

所述检测单元402在检测所述从时钟节点的从端口以及各被动端口的上游时 钟同步网络是否发生拓扑变化时,用于:检测到该从端口或被动端口的直联链路 发生故障时,或者,接收单元405在该从端口或被动端口接收到PTP BMC通告报 文且PTP BMC通告报文中携带的时钟优先级信息发生变化时,确定该从端口或被 动端口的上游时钟同步网络发生网络拓扑变化。

上述从时钟节点中,所述切换单元404,进一步用于:根据BMC计算结果确 定需要将所述从时钟节点的任一被动端口切换为主端口时,切换该被动端口为主 端口,并通知同步单元401停止在该被动端口与主时钟节点交互同步报文。

所述切换单元404在切换该被动端口为主端口时,进一步清除该被动端口对 应的备选时间信息。

所述同步单元401,用于在所述从时钟节点的各被动端口采用单步模式的请求 应答机制或双步模式的请求应答机制与主时钟节点交互同步报文。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明 的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保 护的范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号