基于硬件时钟的对时方法、装置、存储介质以及电子设备与流程

文档序号:37598997发布日期:2024-04-18 12:39阅读:7来源:国知局
基于硬件时钟的对时方法、装置、存储介质以及电子设备与流程

本技术涉及以太网通信,尤其涉及一种基于硬件时钟的对时方法、装置、存储介质以及电子设备。


背景技术:

1、在网络中为了保证设备间的时间的一致性,通常会部署ntp协议。ntp(networktime protocol网络时间协议),它是一种用于计算机网络中时间同步的协议。ntp的主要功能是确保多台计算机在网络上具有相同的时间参考,以便协调事件顺序、记录时间戳以及在分布式系统中协同工作。当前的ntp协议通常以系统时间作为对时的对象和授时的时间来源,而系统时间的精度依赖系统性能。当设备的系统时间精度不足时便会引起对时精度不足。


技术实现思路

1、本技术提供了一种基于硬件时钟的对时方法、装置、存储介质以及电子设备,以解决网络时间协议以系统时间作为对时的对象时,当系统时间精度不足时会引起对时精度不足的技术问题。

2、第一方面,本技术提供了一种基于硬件时钟的对时方法,应用于配置有第一硬件时钟的发送端,包括:将第一硬件时钟指示的第一时间值记录在对时请求报文中,并将上述对时请求报文发送至接收端,以使上述接收端返回对时回应报文,其中,上述对时回应报文中包括上述接收端接收到上述对时请求报文时本地的第二硬件时钟指示的第二时间值,上述接收端发出上述对时回应报文时上述第二硬件时钟指示的第三时间值;在接收到上述对时回应报文的情况下,获取上述第一硬件时钟指示的第四时间值;根据上述第一时间值、上述第二时间值、上述第三时间值以及上述第四时间值计算上述第一硬件时钟与上述第二硬件时钟的时间偏差值;根据上述时间偏差值对上述第一硬件时钟进行调整,以使调整后的第一硬件时钟与上述第二硬件时钟的时间同步。

3、第二方面,本技术提供了一种基于硬件时钟的对时装置,应用于配置有第一硬件时钟的发送端,包括:发送模块,用于将第一硬件时钟指示的第一时间值记录在对时请求报文中,并将上述对时请求报文发送至接收端,以使上述接收端返回对时回应报文,其中,上述对时回应报文中包括上述接收端接收到上述对时请求报文时本地的第二硬件时钟指示的第二时间值,上述接收端发出上述对时回应报文时上述第二硬件时钟指示的第三时间值;获取模块,用于在接收到上述对时回应报文的情况下,获取上述第一硬件时钟指示的第四时间值;计算模块,用于根据上述第一时间值、上述第二时间值、上述第三时间值以及上述第四时间值计算时间偏差值;调整模块,用于根据上述时间偏差值对上述第一硬件时钟进行调整,以使调整后的第一硬件时钟与上述第二硬件时钟的时间同步。

4、作为一种可选的示例,上述计算模块包括:第一计算单元,用于通过如下公式计算上述时间偏差值:offset=(t2-t1)+(t3-t4)/2;其中,上述offset为上述时间偏差值,上述t1为上述第一时间值,上述t2为上述第二时间值,上述t3为上述第三时间值,上述t4为上述第四时间值。

5、作为一种可选的示例,上述调整模块包括:第一调整单元,用于在上述时间偏差值大于预设时间值的情况下,通过如下公式对上述第一硬件时钟指示的时间值进行调整:ta=tb+offset;其中,上述ta为上述第一硬件时钟调整后指示的时间值,上述tb为上述第一硬件时钟调整前指示的时间值,上述offset为上述时间偏差值。

6、作为一种可选的示例,上述调整模块包括:获取单元,用于在上述时间偏差值小于预设时间值的情况下,获取上述第一硬件时钟的平均对时间隔值;第二计算单元,用于根据上述时间偏差值和上述平均对时间隔值计算得到高精度偏差值;第二调整单元,用于根据上述高精度偏差值对上述第一硬件时钟的高精度计数器上限值进行调整,以使调整后的第一硬件时钟指示的时间值与上述第二硬件时钟指示的时间值同步。

7、作为一种可选的示例,上述获取单元包括:获取子单元,用于多次获取上述第一时间值;第一计算子单元,用于计算所有上述第一时间值的平均值,得到上述平均对时间隔值。

8、作为一种可选的示例,上述第二计算单元包括:第二计算子单元,用于通过如下公式计算上述高精度偏差值:de lta=offset/ti;其中,上述de lta为上述高精度偏差值,上述offset为上述时间偏差值,上述ti为上述平均对时间隔值。

9、作为一种可选的示例,上述第二调整单元包括:调整子单元,用于通过如下公式对上述第一硬件时钟的高精度计数器上限值进行调整:limite(a)=limite(b)+(de lta/(ta/limite(b)));其中,上述limite(a)为上述第一硬件时钟调整后的高精度计数器上限值,上述limite(b)为上述第一硬件时钟调整前的高精度计数器上限值,上述de lta为上述高精度偏差值,上述ta为上述第一硬件时钟的低精度计数器与高精度计数器的换算值。

10、第三方面,本技术提供了一种基于硬件时钟的对时方法,应用于配置有第二硬件时钟的接收端,包括:在接收到发送端发出的对时请求报文的情况下,获取上述第二硬件时钟指示的第二时间值,其中,上述对时请求报文中包括上述发送端发出上述对时请求报文时上述发送端的第一硬件时钟指示的第一时间值;在对时回应报文中嵌入上述第二时间值和发出上述对时回应报文时上述第二硬件时钟指示的第三时间值,并将上述对时回应报文返回给上述发送端,以使上述发送端在接收到上述对时回应报文时获取上述第一硬件时钟指示的第四时间值,并根据上述第一时间值、上述第二时间值、上述第三时间值以及上述第四时间值对上述第一硬件时钟进行调整,以使调整后的第一硬件时钟与上述第二硬件时钟的时间同步。

11、第四方面,本技术提供了一种基于硬件时钟的对时装置,应用于配置有第二硬件时钟的接收端,包括:获取模块,用于在接收到发送端发出的对时请求报文的情况下,获取上述第二硬件时钟指示的第二时间值,其中,上述对时请求报文中包括上述发送端发出上述对时请求报文时上述发送端的第一硬件时钟指示的第一时间值;发送模块,用于在对时回应报文中嵌入上述第二时间值和发出上述对时回应报文时上述第二硬件时钟指示的第三时间值,并将上述对时回应报文返回给上述发送端,以使上述发送端在接收到上述对时回应报文时获取上述第一硬件时钟指示的第四时间值,并根据上述第一时间值、上述第二时间值、上述第三时间值以及上述第四时间值对上述第一硬件时钟进行调整,以使调整后的第一硬件时钟与上述第二硬件时钟的时间同步。

12、第五方面,本技术提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被处理器运行时执行上述基于硬件时钟的对时方法。

13、第六方面,本技术还提供了一种电子设备,包括存储器和处理器,上述存储器中存储有计算机程序,上述处理器被设置为通过所述计算机程序执行上述的基于硬件时钟的对时方法。

14、在本技术实施例中,采用了将第一硬件时钟指示的第一时间值记录在对时请求报文中,并将上述对时请求报文发送至接收端,以使上述接收端返回对时回应报文,其中,上述对时回应报文中包括上述接收端接收到上述对时请求报文时本地的第二硬件时钟指示的第二时间值,上述接收端发出上述对时回应报文时上述第二硬件时钟指示的第三时间值;在接收到上述对时回应报文的情况下,获取上述第一硬件时钟指示的第四时间值;根据上述第一时间值、上述第二时间值、上述第三时间值以及上述第四时间值计算上述第一硬件时钟与上述第二硬件时钟的时间偏差值;根据上述时间偏差值对上述第一硬件时钟进行调整,以使调整后的第一硬件时钟与上述第二硬件时钟的时间同步的方法,由于在上述方法中,将发送端的第一硬件时钟所指示的时间与接收端的第二硬件时钟指示的时间作为ntp协议对时过程中计算链路延时和时间偏差值的时间来源,进而对发送端的第一硬件时钟进行调整,以使调整后的第一硬件时钟与第二硬件时钟的时间同步。从而实现了提高ntp协议对时精度的目的,进而解决了ntp协议以系统时间作为对时的对象时,当系统时间精度不足时会引起对时精度不足的技术问题。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1