NTP同步过程 联系客服

发布时间 : 星期四 文章NTP同步过程更新完毕开始阅读d48bf96df111f18583d05a88

4.组播模式

在组播模式中,服务器端周期性地向用户配置的组播地址(若用户没有配置组播地址,则使用默认的NTP组播地址224.0.1.1)发送时钟同步报文,报文中的Mode字段设置为5(组播模式)。客户端侦听来自服务器的组播报文。当客户端接收到第一个组播报文后,客户端与服务器交互Mode字段为3(客户模式)和4(服务器模式)的NTP报文,以获得客户端与服务器间的网络延迟。之后,客户端就进入组播客户模式,继续侦听组播报文的到来,根据到来的组播报文对系统时钟进行同步。

四、NTP的通信原理

通常情况下,在设置的初始,在5至10分钟有内6次交换。 一旦同步后,每10分钟与服务器时间进行一次同步。

NTP的基本工作原理如下图所示。Device A和Device B通过网络相连,它们都有自己独立的系统时钟,需要通过NTP实现各自系统时钟的自动同步。为便于理解,作如下假设:

? ? ?

在Device A和Device B的系统时钟同步之前,Device A的时钟设定为10:00:00am,Device B的时钟设定为11:00:00am。

Device B作为NTP时间服务器,即Device A将使自己的时钟与Device B的时钟同步。 NTP报文在Device A和Device B之间单向传输所需要的时间为1秒。

? ? ?

Device A发送一个NTP报文给Device B,该报文带有它离开Device A时的时间戳,该时间戳为10:00:00am(T1)。

当此NTP报文到达Device B时,Device B加上自己的时间戳,该时间戳为11:00:01am(T2)。 当此NTP报文离开Device B时,Device B再加上自己的时间戳,该时间戳为11:00:02am(T3)。

? 当Device A接收到该响应报文时,Device A的本地时间为10:00:03am(T4)。

至此,Device A已经拥有足够的信息来计算两个重要的参数:

? ?

NTP报文的往返时延Delay=(T4-T1)-(T3-T2)=2秒。

Device A相对Device B的时间差offset=((T2-T1)+(T3-T4))/2=1小时。

这样Device A就能根据这些信息来设定自己的时钟,使之与Device B的时钟同步。

五、精度误差:

NTP理论上最大精度是大约是200皮秒。实际实现中NTP提供的时间精度在广域网为数十毫秒,在局域网上则为亚毫秒级或者更高。在Internet上绝大多数地方能提供了1-50 ms 的精确度,精确度的大小取决于同步源和网络路径等特性。

NTP可达到的精度受到本地时钟硬件固有框架、严格的硬件控制和过程延迟的很大影响,由于时钟速率间的微小差别和peers间精度的差异都会给时间同步的计算带来误差;必须依据相关的规定来调节软件的逻辑时钟的时间和频率来修正由于NTP产生的误差。

802.11的时间精度大概能达到微秒级。

1、网络的对称性

通过两次测量来估计链路延迟一般估算方法是假设链路是对称的,即时间服务器到客户端的延迟等于客户端到时间服务器的延迟。这种假设是理想化的,实际的无线链路往往受到各种因素的影响,例如多径、时变而不能完全对称。 2、网络拓扑结构

简单的点对点拓扑结构能达到较高的同步精度,而一些复杂的网络容易受到网络延迟抖动的影响且精度与网络负载的情况相关。

六、 事件进程 6.1符号表示

(?,?)(?,?)(?,E)时钟补偿 ,Roundtrip延迟,dispersion,小写希腊字母表示

与peer相关的变量,大写希腊字母表示与主要参考源相关的变量,根据roundtrip延迟和

(?,?)dispersion可以得到同步的距离。

??sys.clock -peer.update 表示上一次跟新时的间隔 ??NTP.MAXSKEW 表示skew rate的最大值

NTP.MAXAGESys.clock:当前本地时间,是由硬件时钟的机制得到的 Peer.update:时间戳格式下表示本地时间, when the most recent NTP message was received. It

is used in calculating the skew dispersion. Skew:频率的差值

Maximum Skew (NTP.MAXSKEW): This is the maximum offset error due to skew of the local clock over the interval determined by NTP.MAXAGE, in seconds. The ratio??NTP.MAXSKEWis

NTP.MAXAGEinterpreted as the maximum possible skew rate due to all causes.

Maximum Clock Age (NTP.MAXAGE): This is the maximum interval a reference clock will be considered valid after its last update, in seconds.

Clock offset represents the amount to adjust the local clock to bring it into correspondence with the reference clock.(时钟补偿指的是本地时钟与对应的参考时钟的差值)

Roundtrip delay provides the capability to launch a message to arrive at the reference clock at a specified time.(Roundtrip delay指信息发出达到响应端的时间)

Dispersion represents the maximum error of the local clock relative to the reference clock.(相对于参考时钟,本地时钟所允许的最大错误)

每次有关的peer变量跟新后,所有和这个peer关联的分布都需要根据skew-error accumulation来跟新,这种计算总结如下

??peer.offset??peer.delay ??peer.dispersion????????

????相关变量说明:

?2