原标题:NTP时钟同步原理及误差简析

在我们某试验系统方案设计中,由于数据同步性的要求,需要将我们WP4000变频功率分析仪的时钟与客户的NI系统的时钟进行同步,对于WP4000变频功率测试系统而言,多台分析仪之间可通过同步光纤接口达到严格同步,同步时序达us级。但要求WP4000变频功率测试系统与其它系统之间保持同步,在同步性要求不是特别高的情况下,可以采用NTP时钟同步的方式进行多系统间的同步,以下就NTP时钟同步系统误差进行简析。

一、NTP协议简介

网络时间协议NTP(Network Time Protocol)的主要开发者是美国特拉华大学的MILLS David L教授设计实现的,由时间协议、ICMP时间戳消息及IP时间戳选项发展而来。NTP用于将计算机客户或服务器的时间与另一服务器同步,使用层次式时间分布模型。在配置时,NTP可以利用冗余服务器和多条网络路径来获得时间的高准确性和高可靠性。即使客户机在长时间无法与某一时间服务器相联系的情况下,仍可提供高准确度时间。

实际应用中,还有确保秒级精度的简单的网络时间协议SNTP(Simple Network Time Protocol)。SNTP是NTP的一个子集,主要用于那些不需要NTP的精度以较高实现复杂性的网络时间同步客户机。SNTP协议已减少了网络延时对校对准确的影响,但没有冗余服务器和校正时钟频率误差功能。

一般的计算机和嵌入式设备在时钟度方面没有明确的指标要求, 时钟精度只有10-4~10-5,每天可能误差达十几秒或更多,如果不及时校正,其累积时间误差不可忽视。许多工业控制过程需要高准确度时间,如:电力系统内众多的计算机监控系统、保护装置、故障录波器等时间同步要在ms级以内。

联网计算机同步时钟最简便的方法是网络授时。网络授时分为广域网授时和局域网授时。广域网授时精度通常能达50ms级,但有时超过500ms,这是因为每次经过的路由器路径可能不相同。现在还没有更好的办法将这种不同路径延迟的时间误差完全消除。局域网授时不存在路由器路径延迟问题,因而授时精度理论上可以提到亚毫秒级。Windows内置NTP服务,在局域网内其最高授时精度也只能达10ms级。因此,提高局域网NTP授时精度成为一个迫切需要解决的问题。

二、NTP授时原理

NTP最典型的授时方式是Client/Server方式。如下图1所示,客户机首先向服务器发送一个NTP 包,其中包含了该包离开客户机的时间戳T1,当服务器接收到该包时,依次填入包到达的时间戳T2、包离开的时间戳T3,然后立即把包返回给客户机。客户机在接收到响应包时,记录包返回的时间戳T4。客户机用上述4个时间参数就能够计算出2个关键参数:NTP包的往返延迟d和客户机与服务器之间的时钟偏差t。客户机使用时钟偏差来调整本地时钟,以使其时间与服务器时间一致。

图1 Client/Server方式下NTP授时原理

图1中:T1为客户发送NTP请求时间戳(以客户时间为参照);T2为服务器收到NTP请求时间戳(以服务器时间为参照);T3为服务器回复NTP请求时间戳(以服务器时间为参照);T4为客户收到NTP回复包时间戳(以客户时间为参照);d1为NTP请求包传送延时,d2为NTP回复包传送延时;t为服务器和客户端之间的时间偏差,d为NTP包的往返时间。

现已经T1、T2、T3、T4,希望求得t以调整客户方时钟:

....................................................式(1)

假设NPT请求和回复包传送延时相等,即d1=d2,则可解得“

.....................................式(2)

根据式(1),t也可表示为:t=(T2-T1)+d1=(T2-T1)+d/2.....................式(3)

可以看出,t、d只与T2、T1差值及T3、T4差值相关,而与T2、T3差值无关,即最终的结果与服务器处理请求所需的时间无关。因此,客户端即可通过T1、T2、T3、T4计算出时差t去调整本地时钟。

三、NTP授时精度分析

NTP授时精度与NTP服务器与用户间的网络状况有关,主要取决于NTP包往返路由的延时对称程度,往返路由的延时不对称值最大不超过网络延时。式(2)是在假设NTP请求和回复包在网上传送延时相等,即d1=d2=d/2的情况下得出的,而d1、d2的取值范围在(0...d)间,由式(3)可以得出最大授时误差是±d/2。一般广域网的网络延时在10 ms~500ms之间;局域网的网络延时在计时操作系统内核处理延迟的情况下通常小于1ms。

假定局域网内NTP延时小于1ms,理论上授时误差小于0.5ms,但对于Windows操作系统内置的NTP客户和NTP服务,并不能达到此精度。Windows NTP时钟分辨率因操作系统和硬件不同而有所不同,时钟分辨率通常为10ms或15ms。基于Windows操作系统内置的NTP授时精度最高不超过10ms。

四、基于NTP减少计算机时钟偏差

01、计算机时钟偏差分析

通用PC机自带两类时钟源:硬件时钟和软件时钟(或称为系统时钟)。不论是硬件时钟还是软件时钟,都是由石英晶体振荡器驱动的,通过累计石英晶体振荡器输出脉冲数,换算出时间。所以计算机时钟的准确度取决于晶振频率准确度。受温度变化、电压、芯片老化等因素影响,晶振频率会发生小幅度波动,其中温度对晶振频影响最大。

由于工艺和材料的原因,同一生产线上标称频率相同的石英晶体,其实际频率是不同的,实际频率与标称频率偏差率从10-4量级到10-9量级不等。以10-4量级为例,时钟每天至少误差8.64 s。

02、基于NTP减少计算机时钟频率偏差

时钟频率偏差是时钟长期计时累积误差的主要原因,要提高时钟长期计时精度,必须补偿时钟频率偏差。联网的计算机可采用NTP方式,可非常方便地校准时钟频率偏差。以NTP服务器时钟为标准时间,在某一时刻设置NTP客户机时间为NTP服务器当前时间T0,经过一段时间后,NTP服务器时间为T0+tsn,NTP客户端时间为T0+tcn。因为存在时钟频率偏差,tsn与tcn并不相等。NTP客户端时间tcn需乘以时钟频率偏差系数k才等于tsn,即tsn=k×tcn,所以k=tsn/tcn。

任何晶振实际工作频率都是不稳定的,只是程度不同而已。即使温度补偿的晶振,在常温范围内(摄氏10℃~35℃)也有大约5×10-7~2×10-6的误差。晶振实际频率是受外界多种因素(温度、电压、老化等)影响而改变的。因此,时钟频率偏差系数k并非恒定不变的。每隔一定时间,NTP客户机要对时钟频率偏差系数k进行校正,才能保证计时精度。

五、进一步提高NTP授时精度的方法

局域网络延相对较大的原因在于时间戳一般都是在应用层加盖。为减少操作系统内核处理延时的影响提高NTP授时精度,发/收NTP包时间戳应尽量接近主机真实发/收包时刻。在不改变硬件的条件下,一个可行的办法是修改网卡驱动程序,将记录NTP包发/收时间戳从应用程序移至网卡驱动程序处,可消除操作系统内核处理延时不确定而引入的误差。这种方法在局域网中可大幅提高NTP授时精度至μs级。

为了减少温度引起晶振频率漂移对时钟准确度的影响,可以采用数字温漂补偿方法,提高时钟长期计时准确度。先测出工作温度范围内温度对应的温漂补偿系数,工作时每隔一定时间,根据实际温度查出对应补偿系数动态地修正时间。

时钟频率偏差和时钟分辨率低是局域网NTP授时精度不高的主要原因。

【原文:https://www.vfe.cc/NewsDetail-2332.aspx,转载务必带链接注明出处,未注明必追究责任!】

相关文章:

新能源汽车电机以及驱动器测试专家 https://www.vfe.cc/ProductShow.aspx?id=59

如何对电动汽车电源控制器实现精确测试 https://www.vfe.cc/NewsDetail-1403.aspx

电动汽车电机试验台测试系统解决方案 https://www.vfe.cc/NewsDetail-1554.aspx

如何选择电动汽车电池监测系统 https://www.vfe.cc/NewsDetail-906.aspx

新能源电动汽车动力电池测试的基本要求及检测内容https://www.vfe.cc/NewsDetail-2321.aspx

超级电容器电池 https://www.vfe.cc/NewsDetail-1556.aspx返回搜狐,查看更多

责任编辑:

ntp如何确认与服务器偏差_NTP时钟同步原理及误差简析相关推荐

  1. NTP时钟同步原理及误差简析

    在我们某试验系统方案设计中,由于数据同步性的要求,需要将我们WP4000变频功率分析仪的时钟与客户的NI系统的时钟进行同步,对于WP4000变频功率测试系统而言,多台分析仪之间可通过同步光纤接口达到严 ...

  2. ntp如何确认与服务器偏差_NTP服务器常见问题解答

    NTP服务器用于金融.通信计费.航天航空等诸多领域,依靠计算机自身提供的时钟数据远不能达到精准要求.下面就给大家介绍一下NTP服务器常见的问题吧. 一.互联网ntp授时服务站点 每一台电脑时间基本是不 ...

  3. ntp如何确认与服务器偏差_NTP时间同步服务器(NTP服务器)原理详解

    NTP时间同步服务器(NTP服务器)原理详解 NTP时间同步服务器(NTP服务器)原理详解 1.前言 由计算机网络系统组成的分布式系统,若想协调一致进行:IT行业的"整点开拍".& ...

  4. NTP时钟服务器原理及误差简析(京准)

    NTP时钟服务器原理及误差简析 1.引言 作为数字通信网的基础支撑技术,时钟同步技术的发展演进始终受到通信网技术发展的驱动.在网络方面,通信网从模拟发展到数字,从TDM网络为主发展到以分组网络为主:在 ...

  5. ntp如何确认与服务器偏差_CentOS 8 启用 NTP 服务

    NTP 服务是什么和为什么我们需要在我们的服务器启用 NTP 服务? 可能很多人都不是非常了解,简单来说就是我们希望我们服务器的时间是准确的没有偏差的.这个的意义在数据插入和你程序取得计算机时间的时候 ...

  6. ntp如何确认与服务器偏差_怎么测试linux下搭建的ntp服务器

    展开全部 三.什么是NTP 为了实现时间同步,我们就需要用户NTP(Network Time Protocol)这个协议32313133353236313431303231363533e78988e6 ...

  7. ntp如何确认与服务器偏差_搭建NTP服务器

    基本概念: 0层的服务器采用的是原子钟.GPS钟等物理设备,stratum 1与stratum 0 是直接相连的,往后的stratum与上一层stratum通过网络相连,同一层的server也可以交互 ...

  8. ntp如何确认与服务器偏差_LED电子时钟显示屏如何实现时间同步统一校时?

    LED电子时钟显示屏采用一体式铝合金边框设计,更坚固美观节能环保,更以其简单的操作和稳定的性能,广泛应用于学校.考场.医院.金融.移动通信.石油.电力.交通.工业以及国防等同步时钟系统的显示终端,LE ...

  9. ntp如何确认与服务器偏差_CDH集群时钟偏差问题

    问题: CDH集群启动成功,但是有某些主机提示"无法找到主机的NTP 服务,或该服务未响应时钟偏差请求" 解决问题思路: 1.NTP服务未启动 2.NTP服务已启动但暂未配置服务 ...

最新文章

  1. 反客为主 ——浅议呼叫中心在网络营销4C策略中的角色与价值
  2. python迭代器生成器使用技巧(1):遍历、代理、生成器创建迭代、反向迭代
  3. SQL Server 数据库部分常用语句小结
  4. win10清理_无需第三方,win10也可以实现自动清理垃圾
  5. Windows xp+Ubuntu 11.10 硬盘安装
  6. SpringBoot(1)---SpringBoot2.0技术视频教程
  7. java 强制类型转换_lt;08gt;数据类型转换
  8. 计算机应用基础课程基本要求,《计算机应用基础》课程建设规范
  9. thymeleaf模板引擎使用iframe的解决方案
  10. 面试题,如果上司交代的任务你肯定完成不了,你会怎么处理?
  11. 启动PE系统找不到计算机硬盘,华硕电脑进PE系统找不到硬盘怎么办?
  12. 如何修改电脑的MAC地址(手把手更改)
  13. matlab中计算最大利润,最大利润问题
  14. 敏捷项目中的进度控制
  15. 怎么判断电脑是32位还是64位呢
  16. Unity3D IAP Google支付
  17. C程序中各个段的含义
  18. AutoRec模型结构详解
  19. c语言精确线搜索抛物线法,一维迭代搜索(黄金分割法抛物线法).ppt
  20. php服务器视频教程,从PHP基础到实战高手 高性能Linux服务器构建实战 千峰教育PHP全新版高级视频教程...

热门文章

  1. MDICT的100G的辞典资源_我是亲民_新浪博客
  2. MySQL:增加删除索引
  3. java医院挂号代码_基于SSM开发的Java医院预约挂号系统 源码下载
  4. 什么是Redis缓存穿透?redis面试题及答案(附面试题大全)
  5. 章子怡拒拍动作片 称以后想结婚生子
  6. Python识别条码内容
  7. CAD中如何更改标注尺寸保留小数点后几位或单位
  8. 智慧桥梁数字孪生可视化解决方案
  9. CLRS第四章思考题
  10. android 右边抽屉,Android实现右边抽屉Drawerlayout效果