NTP协议和算法ntp协议支持的算法




NTP协议和算法ntp协议支持的算法

2022-07-21 2:04:54 网络知识 官方管理员
NTP:NetworkTimeProtocol,网络时间协议,用于时间同步,它可以提供高精准度的时间校正(LAN上与标准时间差小于1毫秒,WAN上几十毫秒),且可通过加密确认的方式来防止恶意攻击。

NTP校时原理:

每一个时间包内包含最近一次的事件的时间信息、包括上次事件的发送与接收时间、传递现在事件的当地时间、及此包的接收时间。在收到上述包后即可计算出时间的偏差量与传递资料的时间延迟。时间服务器利用一个过滤演算法,及先前八个校时资料计算出时间参考值,判断后续校时包的精确性,一个相对较高的离散程度,表示一个对时资料的可信度比较低。仅从一个时间服务器获得校时信息,不能校正通讯过程所造成的时间偏差,而同时与许多时间服务器通信校时,就可利用过滤算法找出相对较可靠的时间来源,然后采用它的时间来校时。

时间信息的传输都使用UDP协议。


NTP协议格式:

NTPpacket=NTPheader+FourTimeStamps=48byte

NTPheader:16byte
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-

|LI|VN|Mode|Stratum|Poll|Precision|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
LeapYearIndicator:2bit
VersionNumber:3bit
Stratum:8bit
Mode:3bit
PollInterval:8bit
Percision:8bit

|RootDelay|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
Rootdelay:32bit

|RootDispersion|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
RootDispersion:32bit

|ReferenceIdentifier|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
ReferenceIdentifier:32bit

FourTimeStamps:32byte
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-

|ReferenceTimestamp|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
ReferenceTimestamp:64bit

|OriginateTimestamp|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
OriginateTimestamp:64bit

|ReceiveTimestamp|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
ReceiveTimestamp:64bit

|TransmitTimestamp|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
TransmitTimestamp:64bit

|Authenticator(optional)(96)|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-


NetworkTimeProtocol使用port123,64bits的binarynumber,前32bits和TimeProtocol一样,后32bits用以表示秒以下的部份,并加上网络延时量的估计.理论上可以精确到到2的-32次方秒,实际使用大约只有50ms(广域网)左右,在局域网可达1ms。在实际中您应找最近而且最稳定的Server作时间源。

SNTP算是NTP的一个子集,它不像NTP可以同時和多个Server对时,一般在Client端下使用。


发表评论:

最近发表
网站分类
标签列表