(第二炮兵工程大学士官学院,山东青州,262500)
摘要:时钟同步协议是网络化测试系统中的重要组成部分。论述了NTP 协议的工作原理,并分析了其作为时钟同步协议的优缺点;详细阐述了IEEE 1588 协议的工作原理及结构,并对2.0 版本进行了说明和分析。最后,对各种时钟协议的应用方案进行了总结。
关键词:网络化测试系统;时钟同步协议;NTP ;IEEE 1588
0 引言
在网络化测试系统中,各设备之间需要协调工作,就必须有统一的时间基准,即所有设备的本地时钟达到同步。影响设备之间的时钟同步的因素主要有:时间延时和时钟偏差。时间延时主要由同步信息在传输路径上线路传输时间引起,时钟偏差主要由不同设备的时钟速度不同引起。所以,在网络化测试系统中只要做好了偏差修正和延时修正,就能使得测试设备之间进行时钟同步。目前,应用于网络化测试系统中常用的两类时钟同步协议和方法是网络时间协议(Network Time Protocol,NTP)和IEEE 1588 时钟同步协议。网络时间协议NTP,时钟同步精度为毫秒级,而对于IEEE 1588 则达到亚微妙级。本文从以上两种时间同步协议的定义分析入手,着重介绍了每种协议的同步算法和原理,并且对其时钟同步性能进行了比较分析。
1 NTP 时间同步协议
网络化时间协议NTP 作为最流行的协议被广泛应用于LAN 上的时间同步。NTP 实现成本相对较低,几乎不需要修改硬件。NTP 是一个基于TCP/IP 的、跨越广域网或局域网的复杂的同步时间协议,它通常可获得毫秒级的精度。NTP 有两种工作方式:NTP 客户/ 服务器方式和NTP 广播方式。客户端首先向时间服务器发送一个NTP 数据包,同时在数据包上打上客户端本机的发送时间戳Ta ;服务器接收到客户NTP 数据包后, 同时在数据包上打上服务器本机的接收时间戳Tb ;服务器向客户返回NTP 数据包后,同时在数据包上打上服务器本机的发送时间戳Tc ;客户端接收到服务器返回的NTP 数据包,同时在数据包上打上客户端接收时间戳Td。网络化时间协议NTP 算法如图1 所示。
现行的网络化时间同步协议NTP 一般为软件的方法进行同步,纯软件的方法由于网络固有的传输时延不确定性,导致软件时间同步的精度不高,对于实时测试和处理的网络化测试系统而言,这种精度还不足以满足其应用要求。因而在现有网络的基础上适度增加硬件支持,实现软硬件混合的时问同步成为高精度分布式网络时间同步的发展方向。
2 IEEE 1588 同步时钟协议
IEEE 1588 标准是“网络测量和控制系统的精密时钟同步协议标准(IEEE 1588 Precision Clock Synchronization Protocol)”,简称PTP(Precision Timing Protocol),利用该协议的测试系统配置容易,收敛速度快,消耗资源少。该协议的原理是利用一个同步信号周期性的对网络中所有节点的时钟进行校正和同步,可以使基于以太网的测试系统达到精确同步。
IEEE 1588 协议中定义了四种同步报文:Sync 报文, Follow_up 报文,Delay_Request 报文,Delay_Respons 报文和一组管理报文。IEEE 1588 同步协议的工作原理如图2 所示。
图2 IEEE 1588 同步协议工作原理
在IEEE 1588 时钟同步协议中,主时钟向从时钟发送Sync 报文信号,紧接着Follow_up 报文信号也发送出去,其中带有精确的Sync 的报文发送时间Tm1,从时钟在收到Sync 报文后,用本地时钟在上面打上时间戳Ts1,这样就可以得到主从时钟的差值Tms=Ts1-Tm1。又由于Tms=Toffset+Tmsdelay, Toffset 表示主从时钟间的偏差,Tmsdelay 表示主时钟到从时钟的延时。从时钟发送Delay_Request 报文信号,主时钟在收到该报文后返回Delay_Response 报文信号,同样这两个报文也是预先带上各自发送时钟的时间戳,从而由两个时间戳之间差值可得:Tsm=Tm2-Ts2。又由于Tsm=Toffset+Tsmdelay。一般来说线路延时是对称的,即Tmsdelay=Tsmdelay。故T o f f s e t =( T m s - T s m ) / 2 , T m s d e l a y = T s m d e l a y = (Tms+Tsm)/2。得到这两个值后,就可以对从时钟进行调整: Tslave=Tmaster-Tmsdelay-Toffset。
在2008 年7 月,IEEE 仪器与测试协会正式发布了IEEE 1588 的改进版本—2.0 版本。相对于上一版本,2.0 版本提高了同步精度,而且降低了系统的配置和实现难度,使协议更加实用。IEEE 1588 2.0 版本的优越性主要体现在:改进了数据结构;增加测量点之间网络路径延迟时间的独立消息模式; 增加透明时钟模型。
IEEE 1588 2.0 版本优化了同步原理,时间同步的细节和过程都进行了较大幅度的改进,降低了实施的难度,能够满足未来网络化系统测试的需要。
3 结束语
时钟同步协议是网络化测试系统的重要组成部分,能够保证各测试系统之间协调一致的工作。网络化时间协议NTP 协议带宽偏大,传递协议复杂,时延测量误差较大,时钟同步精度一般为毫秒级;IEEE 1588 协议的协议带宽较小,时钟同步精度达到亚微妙级,2.0 版本能达到纳秒级。在构建网络化测试系统时,应根据具体的需求来选择相应的时钟同步协议。
参考文献
[ 1 ] I E E E S t a n d a r d f o r a P r e c i s i o n C l o c k S y n c h r o n i z a t i o n P r o t o c o l f o r N e t w o r k e d Measurement and Control Systems [s].IEEE,New York:ANSI/IEEE Std, 2002:1588~2002.
[2] IEEE Std 1588-2008[EB/OL].http://standards.iee. org,2008.
[3] 叶卫东,张润东.IEEE 1588 精密时钟同步协议2.0 版本浅析[J]. 测控技术,2010,29(2):1-4.
[4] 彭杰,李秀元,应启戛. 工业以太网的时钟同步协议对比分析[J]. 低压电器,2006,9: 45-47.
[5] 王明建,李新三,曹娟,方存忠.IEEE 1588 同步协议在LXI 网络化测试系统中的应用[J]. 计算机与网络, 2011,37(05):54-66