博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
NTP协议详解
阅读量:4983 次
发布时间:2019-06-12

本文共 1424 字,大约阅读时间需要 4 分钟。

     NTP(Network Time Protocol)网络时间协议基于UDP,用于网络时间同步的协议,使网络中的计算机时钟同步到UTC,再配合各个时区的偏移调整就能实现精准同步对时功能。提供NTP对时的服务器有很多,比如微软的NTP对时服务器,利用NTP服务器提供的对时功能,可以使我们的设备时钟系统能够正确运行。

NTP报文格式

 

NTP报文格式如上图所示,它的字段含义参考如下:

LI 闰秒标识器,占用2个bit

VN 版本号,占用3个bits,表示NTP的版本号,现在为3

Mode 模式,占用3个bits,表示模式

stratum(层),占用8个bits

Poll 测试间隔,占用8个bits,表示连续信息之间的最大间隔

Precision 精度,占用8个bits,,表示本地时钟精度

Root Delay根时延,占用8个bits,表示在主参考源之间往返的总共时延

Root Dispersion根离散,占用8个bits,表示在主参考源有关的名义错误

Reference Identifier参考时钟标识符,占用8个bits,用来标识特殊的参考源    

参考时间戳,64bits时间戳,本地时钟被修改的最新时间。

原始时间戳,客户端发送的时间,64bits。

接受时间戳,服务端接受到的时间,64bits。

传送时间戳,服务端送出应答的时间,64bits。

认证符(可选项)

 

抛开复杂的协议报文,我们来理解一下NTP客户端与服务器的交互过程,进而理解参考时间戳、原始时间戳、接受时间戳、传送时间戳的关系。如图,客户端和服务端都有一个时间轴,分别代表着各自系统的时间,当客户端想要同步服务端的时间时,客户端会构造一个NTP协议包发送到NTP服务端,客户端会记下此时发送的时间t0,经过一段网络延时传输后,服务器在t1时刻收到数据包,经过一段时间处理后在t2时刻向客户端返回数据包,再经过一段网络延时传输后客户端在t3时刻收到NTP服务器数据包。特别声明,t0和t3是客户端时间系统的时间、t1和t2是NTP服务端时间系统的时间,它们是有区别的。对于时间要求不那么精准设备,直接使用NTP服务器返回t2时间也没有太大影响。但是作为一个标准的通信协议,它是精益求精且容不得过多误差的,于是必须计算上网络的传输延时。客户端与服务端的时间系统的偏移定义为θ、网络的往返延迟定义为δ,基于此,可以对t2进行精确的修正,已达到相关精度要求,它们的计算公式如下:

 

式中:

t0是请求数据包传输的客户端时间戳

t1是请求数据包回复的服务器时间戳

t2是响应数据包传输的服务器时间戳

t3是响应数据包回复的客户端时间戳

对此,我们只需将NTP服务端返回的时间t2加上网络延时δ的一半就可以了(t2+δ/2)。

常用的NTP服务端站点

time.windows.com

time.nist.gov

s1a.time.edu.cn

s1c.time.edu.cn

time-nw.nist.gov

time-a.nist.gov

time-b.nist.gov

s1b.time.edu.cn

nist1.aol-ca.truetime.com

总结:

NTP协议作为常用的通信协议,各种参考资料齐全,本文做一次梳理,以加深对NTP协议的理解。参考:

转载于:https://www.cnblogs.com/ALisa-Alisa-ALisa/p/10376523.html

你可能感兴趣的文章
day03
查看>>
gridview-
查看>>
MVC 编程模型及其变种
查看>>
FJNUOJ 1002 画葫芦。。
查看>>
计算机图形学之扫描转换直线-DDA,Bresenham,中点画线算法
查看>>
安卓下文件上传
查看>>
浅谈大数据与hadoop家族
查看>>
pl/sql查找历史sql执行语句
查看>>
7.8练习赛
查看>>
浅谈NaN和undefined--------与君共勉
查看>>
信息加密之Base64
查看>>
Html标签中Alt和Title都是提示性语言标签
查看>>
逃离北京这些年 5
查看>>
Django-认证系统
查看>>
maven的安装配置以及在IDEA中配置
查看>>
javascript-test1
查看>>
JAVA编码(38)—— Timer的schedule和scheduleAtFixedRate方法的区别解析
查看>>
技术文档(4)-- Linux配置网卡
查看>>
微信支付宝第三方扫码支付
查看>>
Ubuntu16.04 下安装tomcat
查看>>