掌桥专利:专业的专利平台
掌桥专利
首页

一种用于时间同步精度的优化方法、设备及介质

文献发布时间:2023-06-19 19:38:38


一种用于时间同步精度的优化方法、设备及介质

技术领域

本申请涉及数据传输领域,尤其涉及一种用于时间同步精度的优化方法、设备及介质。

背景技术

PTP协议是一种网络精准时间同步协议,定义在IEEE 1588标准中。PTP提供了一种在网络(UDP/IPv4,UDP/IPv6,802.3/Ethernet)上进行精确时间同步的方法,具有亚微秒级的时间同步性能和穿透非1588网络的贯通能力。

IEEE 1588标准实际广泛使用的是2008年发布的version 2,即IEEE1588-2008。PTP协议实现时钟同步主要分为两个步骤:(1)建立同步体系,通过最佳主时钟算法,在整个同步系统中建立主从同步体系;(2)同步过程,通过交换PTP协议报文,计算并同步本地时钟。

在通信网络中,许多业务的正常运行都要求网络时间同步。时间同步包括频率和相位两个方面的同步,通过时间同步可以使得整个网络各设备之间的频率和相位差保持在合理的误差范围内。其中,无线接入业务对时间同步的要求最高,它要求无线基站之间的频率必须同步在一定精度之内,否则手机在进行基站切换时容易掉线,严重时会导致手机无法联网。

现有的各交换主机之间的往往是利用内部的协议层或者交换芯片来获取发送报文的时间戳信息。在用驱动层的时间戳信息时,协议层到驱动层这一段的时间就会加到时间同步误差里面去,导致两台设备之间的时间同步误差增加,当使用的是交换芯片的时间戳信息,则芯片负载过大,难以实现两台设备之间报文发布时间的高精度同步。

发明内容

本申请实施例提供了一种用于时间同步精度的优化方法、设备及介质,用于解决如下技术问题:现有的交换机之间往往利用驱动层相互获取的时间戳,容易造成时间同步误差的增加,让基于1588v2协议交换机的时间同步精度下降。

本申请实施例采用下述技术方案:

一方面,本申请实施例提供了一种用于时间同步精度的优化方法,包括:获取主机设备中主节点发布的同步消息,得到第一时间戳;根据预设跟随消息、延迟请求消息以及延迟请求响应消息,对所述第一时间戳进行记录与同步处理,得到基于从属设备的多个时间戳;其中,所述多个时间戳包括:第二时间戳、第三时间戳以及第四时间戳;基于主从关系中链路时延的对称性,将所述第一时间戳、所述第二时间戳、所述第三时间戳以及所述第四时间戳进行时间偏差处理,得到从属设备的时钟偏差。

本申请实施例通过对交换机的协议层中时间戳信息的获取取,有利于减少只靠驱动层获取时间戳信息时造成的时间同步误差,同时,也减少了使用交换芯片获取时间戳信息负载过大的问题,基于1588v2协议提高了时钟同步精度,同时,利用时钟偏差对从属设备进行本地时钟的修正,让从属设备中的从属时钟与主设备中的主时钟完成了时钟同步,减少了时间同步的误差,大大提高了交换机之间的时间同步精度。

在一种可行的实施方式中,获取主机设备中主节点发布的同步消息,得到第一时间戳,具体包括:对所述主机设备中主节点的时钟模式进行识别判定;若所述主节点为两步时钟模式,则在所述主节点发送同步信息后,通过预设跟随消息,将所述同步信息对应的第一时间戳进行信息的保存,得到所述第一时间戳;其中,所述第一时间戳为主节点的协议层组包发送的时间戳。

在一种可行的实施方式中,在将所述同步信息对应的第一时间戳进行信息的保存,得到所述第一时间戳之后,所述方法还包括:基于所述第一时间戳,获取所述主节点中协议层与芯片层之间的时间误差;将所述时间误差保存在与所述同步消息对应的事件报文的修正域中,得到修正数值;通过所述同步消息,将主节点中的所述修正数值发送到从属设备的从属节点中,并基于所述第一时间戳,将所述从属节点中的修正数值进行删除处理,得到有关从属节点的第一时间戳。

在一种可行的实施方式中,若所述主节点为单步时钟模式,则所述同步信息对应的时间戳进行同步保存,得到所述第一时间戳。

在一种可行的实施方式中,根据预设跟随消息、延迟请求消息以及延迟请求响应消息,对所述第一时间戳进行记录与同步处理,得到基于从属设备的多个时间戳,具体包括:通过所述跟随消息以及主节点中的修正域,将主节点的第一时间戳以及修正数值发送到所述从属设备的从属节点中,得到有关从属节点的第一时间戳以及同步消息;将所述从属节点的同步消息与所述从属节点的第一时间戳进行记录;并根据所述同步消息的接收时间,确定并记录下有关所述从属节点的第二时间戳;通过所述从属节点,将所述延迟请求信息发送到所述主节点中,并在所述从属节点中同步记录所述第三时间戳;根据主节点接收的所述延迟请求信息,得到有关主节点的第四时间戳;通过所述主节点,将所述延迟请求响应信息以及所述第四时间戳发送到所述从属节点中,并在所述从属节点中记录所述第四时间戳。

在一种可行的实施方式中,基于主从关系中链路时延的对称性,将所述第一时间戳、所述第二时间戳、所述第三时间戳以及所述第四时间戳进行时间偏差处理,得到从属设备的时钟偏差,具体包括:根据path_delay=[(t4-t1)-(t3-t2)]/2-CF=[(t2-t1)+(t4-t3)]/2-CF,得到所述从属设备的链路时延path_delay;其中,所述CF为主节点中修正域的修正数值;t1为所述第一时间戳、t2为所述第二时间戳、t3为所述第三时间戳、t4为所述第四时间戳;根据所述从属设备的链路时延path_delay,确定出所述从属设备的时钟偏差。

在一种可行的实施方式中,根据所述从属设备的链路时延path_delay,确定出所述从属设备的时钟偏差,具体包括:根据offset=t2-(t1+path_delay)=[(t2-t1)-(t4-t3)]/2,得到所述从属设备的时钟偏差offset。

在一种可行的实施方式中,在基于主从关系中链路时延的对称性,将所述第一时间戳、所述第二时间戳、所述第三时间戳以及所述第四时间戳进行时间偏差处理,得到从属设备的时钟偏差之后,具体包括:

通过所述从属设备的时钟偏差,对所述从属设备中从属节点的从属时钟进行同步修正,以完成与所述主节点中主时钟的同步进行;其中,所述同步进行的时钟误差小于或者等于10ns。

第二方面,本申请实施例还提供了一种用于时间同步精度的优化设备,所述设备包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有能够被所述至少一个处理器执行的指令,以使所述至少一个处理器能够执行上述任一实施方式所述的一种用于时间同步精度的优化方法。

第三方面,本申请实施例还提供了一种非易失性计算机存储介质,其特征在于,所述存储介质为非易失性计算机可读存储介质,所述非易失性计算机可读存储介质存储有至少一个程序,每个所述程序包括指令,所述指令当被终端执行时,使所述终端执行上述任一实施方式所述的一种用于时间同步精度的优化方法。

本申请提供了一种用于时间同步精度的优化方法、设备及介质,通过对交换机的协议层中时间戳信息的获取取,有利于减少只靠驱动层获取时间戳信息时造成的时间同步误差,同时,也减少了使用交换芯片获取时间戳信息负载过大的问题,基于1588v2协议提高了时钟同步精度,同时,利用时钟偏差对从属设备进行本地时钟的修正,让从属设备中的从属时钟与主设备中的主时钟完成了时钟同步,减少了时间同步的误差,大大提高了交换机之间的时间同步精度。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:

图1为本申请实施例提供的一种用于时间同步精度的优化方法流程图;

图2为本申请实施例提供的一种交换机的报文整体流程图;

图3为本申请实施例提供的一种主从设备的时间同步结构示意图;

图4为本申请实施例提供的一种用于时间同步精度的优化设备的结构示意图。

具体实施方式

为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本说明书实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。

本申请实施例提供了一种用于时间同步精度的优化方法,如图1所示,用于时间同步精度的优化方法具体包括步骤S101-S103:

需要说明的是,精确时间同步(PTP)协议目前主要有几个应用场景:工业和电力,数据中心,城域数据回传,通信网络等。其中,工业和电力是PTP协议产生的源头。数据中心因为Linux等发行版的动作,使用PTP代替NTP,中间交换机需要支持基本的时间同步。在城域数据回传领域,这个领域中对PTP的要求不但要支持时间同步,还要支持时钟同步。

在交换机中,发布同步时间的节点称为主节点,而接收同步时间的节点则称为从节点。主节点上的时钟称为主时钟,而从节点上的时钟则称为从时钟。发布同步时间的端口称为主端口,而接收同步时间的端口则称为从端口。

S101、获取主机设备中主节点发布的同步消息,得到第一时间戳。

具体地,对主机设备中主节点的时钟模式进行识别判定。若主节点为两步时钟模式,则在主节点发送同步信息后,通过预设跟随消息,将同步信息对应的第一时间戳进行信息的保存,得到第一时间戳。其中,第一时间戳为主节点的协议层组包发送的时间戳。

进一步地,基于第一时间戳,获取主节点中协议层与芯片层之间的时间误差。将时间误差保存在与同步消息对应的事件报文的修正域中,得到修正数值。通过同步消息,将主节点中的修正数值发送到从属设备的从属节点中,并基于第一时间戳,将从属节点中的修正数值进行删除处理,得到有关从属节点的第一时间戳。

若主节点为单步时钟模式,则同步信息对应的时间戳进行同步保存,得到第一时间戳。

在一个实施例中,图2为本申请实施例提供的一种交换机的报文整体流程图,图3为本申请实施例提供的一种主从设备的时间同步结构示意图,如图2以及图3所示,首先,主机发送一个同步消息(sync消息),若为单步时钟模式(One-step)模式,则Sync消息携带发送第一时间戳t1。若为两步时钟模式(Two-step),主节点(Master)在发送Sync消息后发送跟随消息(Follow_Up),Follow_Up消息携带Sync消息发送第一时间戳t1,这里的t1需要来获取协议层组包发送的时间,而不是等到报文在交换芯片后才获取当前的时间戳信息。然后再把从协议层到芯片层的时间误差填写在报文的修正域CF(CorrectionField)中,通过报文发送给对端的设备,对端设备收到之后则把修正域CF(CorrectionField)中的数值给减掉,以此使从属节点来获得从主节点发来的最接近实际发出的时间。

S102、根据预设跟随消息、延迟请求消息以及延迟请求响应消息,对第一时间戳进行记录与同步处理,得到基于从属设备的多个时间戳。其中,多个时间戳包括:第二时间戳、第三时间戳以及第四时间戳。

具体地,通过跟随消息以及主节点中的修正域,将主节点的第一时间戳以及修正数值发送到从属设备的从属节点中,得到有关从属节点的第一时间戳以及同步消息。

进一步地,将从属节点的同步消息与从属节点的第一时间戳进行记录。并根据同步消息的接收时间,确定并记录下有关从属节点的第二时间戳。

进一步地,通过从属节点,将延迟请求信息发送到所述主节点中,并在从属节点中同步记录第三时间戳。

进一步地,根据主节点接收的延迟请求信息,得到有关主节点的第四时间戳。通过主节点,将延迟请求响应信息以及第四时间戳发送到从属节点中,并在从属节点中记录所述第四时间戳。

在一个实施例中,如图3所示,在从属节点(Slave)收到同步消息以及保存在跟随消息中的修正数值,获得第一时间戳t1,并在从属节点间中记录同步消息,接收第二时间戳t2。从属节点(Slave)发送延迟请求信息消息(Delay_Req),并记录发送第三时间戳t3,主节点(Master)收到延迟请求信息消息(Delay_Req)后,将延迟请求信息消息(Delay_Req)接收的第四时间戳t4,通过延迟请求响应信息(Delay_Resp)发送给从属节点(Slave),此时,从属节点(Slave)获得t1、t2、t3和t4总共四个时间戳。

S103、基于主从关系中链路时延的对称性,将第一时间戳、第二时间戳、第三时间戳以及第四时间戳进行时间偏差处理,得到从属设备的时钟偏差。

具体地,根据path_delay=[(t4-t1)-(t3-t2)]/2-CF=[(t2-t1)+(t4-t3)]/2-CF,得到从属设备的链路时延path_delay。其中,CF为主节点中修正域的修正数值。t1为第一时间戳、t2为第二时间戳、t3为第三时间戳、t4为第四时间戳。

进一步地,根据从属设备的链路时延path_delay,确定出从属设备的时钟偏差,根据offset=t2-(t1+path_delay)=[(t2-t1)-(t4-t3)]/2,得到从属设备的时钟偏差offset。

进一步地,通过从属设备的时钟偏差,对从属设备中从属节点的从属时钟进行同步修正,以完成与主节点中主时钟的同步进行。其中,同步进行的时钟误差小于或者等于10ns。

在一个实施例中,当从属节点(Slave)到主节点(Master)的链路时延与主节点(Master)到从属节点(Slave)的链路时延是对称时,根据从属设备的链路时延path_delay=[(t4-t1)-(t3-t2)]/2-CF=[(t2-t1)+(t4-t3)]/2-CF,确定出从属设备的时钟偏差offset=t2-(t1+path_delay)=[(t2-t1)-(t4-t3)]/2。在从属节点(Slave)计算出时钟偏差offset之后,便可进行时间同步,修正本地时钟。使得从属节点(Slave)的从属时钟同步主节点(Master)的主时钟。

作为一种可行的实施方式,通过获取交换机协议层发送报文的时间戳信息,对于不支持在芯片层中打时间戳信息到报文中的芯片来说,增加了时间同步的精度。同时,对于支持在芯片层打时间戳信息的芯片来说,在芯片层打时间戳也就意味着每个事件报文都需要通过中断方式来给报文打上时间信息,交换芯片负载过大,将获取时间戳信息转移到协议层运算中,减少了交换芯片负载,也减少了利用驱动层获取时间戳信息的时间同步误差,增加了时间同步的精度。

另外,本申请实施例还提供了一种用于时间同步精度的优化设备,如图4所示,用于时间同步精度的优化设备400具体包括:

至少一个处理器401。以及,与至少一个处理器401通信连接的存储器402。其中,存储器402存储有能够被至少一个处理器401执行的指令,以使至少一个处理器401能够执行:

获取主机设备中主节点发布的同步消息,得到第一时间戳;

根据预设跟随消息、延迟请求消息以及延迟请求响应消息,对第一时间戳进行记录与同步处理,得到基于从属设备的多个时间戳;其中,多个时间戳包括:第二时间戳、第三时间戳以及第四时间戳;

基于主从关系中链路时延的对称性,将第一时间戳、第二时间戳、第三时间戳以及第四时间戳进行时间偏差处理,得到从属设备的时钟偏差。

本申请提供了一种用于时间同步精度的优化方法、设备及介质,通过对交换机的协议层中时间戳信息的获取取,有利于减少只靠驱动层获取时间戳信息时造成的时间同步误差,同时,也减少了使用交换芯片获取时间戳信息负载过大的问题,基于1588v2协议提高了时钟同步精度,同时,利用时钟偏差对从属设备进行本地时钟的修正,让从属设备中的从属时钟与主设备中的主时钟完成了时钟同步,减少了时间同步的误差,大大提高了交换机之间的时间同步精度。

本申请中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备和介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本申请实施例提供的设备和介质与方法是一一对应的,因此,设备和介质也具有与其对应的方法类似的有益技术效果,由于上面已经对方法的有益技术效果进行了详细说明,因此,这里不再赘述设备和介质的有益技术效果。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。

以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

相关技术
  • 一种浴室加热装置和用于控制浴室加热装置的方法、设备、电子设备及计算机可读存储介质
  • 一种用于校正显示设备的灰阶显示曲线的方法、电子设备及计算机可读存储介质
  • 一种时间同步精度的测试方法、系统、设备及介质
  • 一种用于计算机网络的高精度时间同步设备、系统及方法
技术分类

06120115981097