论文部分内容阅读
摘要:网络时间同步在空管领域得到越来越广泛的应用,时钟不同步或者出现偏差常常会对设备运行造成影响,也会对管制事件调查造成一定的偏差。本文将结合工作经验浅谈NTP在实际中的应用。
关键词:NTP;GPS时钟;校时
1 NTP简介
NTP(Network Time Protocol,网络时间协议)是用来使网络中的各个计算机时间同步的一种协议。它的用途是把计算机或者其它空管设备的时钟同步到世界协调时UTC,其精度在局域网内可达0.1ms。NTP协议属于应用层协议,定义了協议实现过程中所使用的结构、算法、试题和协议。NTP协议是基于IP和UDP的,也可以被其它协议组使用。默认使用的UDP端口号为123。对于运行NTP的本地系统,既可以接收来自其它时钟源的同步,又可以作为时钟源同步其它的时钟,并且可以和其它设备互相同步。
2 NTP工作原理
2.1 NTP分层架构
NTP使用一种树状的,半分层的时间源系统。每一层称之为 stratum。每个 stratum 都有一个编号,从1开始,最大到15,16被用来标记设备未同步。一般情况下,顶层的为stratum 1,工作中一般由GPS时钟介入,stratum2的计算机将查询层1服务器。层2计算机也可能与其它层2计算机对等相连,为对等组中的所有设备提供更稳定的时间。后面第 n+1 层 stratum 从第 n 层同步时间,以此类推。
2.2 NTP计算时间延迟
Server和Client通过网络相连,它们都有自己独立的系统时钟,系统时钟同步的工作过程如下:
(1)Client向Server发送一个NTP报文,请求数据包传输的客户端时间戳为t0
(2)Server收到此NTP报文,请求数据包回复的服务器时间戳为t1。
(3)当此NTP报文离开Server时,Server再加上自己的时间戳,该时间戳为t2。
(4)当Client接收到该响应报文时,Client的本地时间为t3。
至此,Client已经拥有足够的信息来计算两个重要的参数:Client相对Server的时间差θ=((t1 - t0)+(t2 - t3))/2;
NTP报文的往返延迟δ=(t3 - t0)-(t2 - t1)Client就能根据这两个值来设定自己的本地时钟,使之与Server的时钟同步。
2.3 NTP工作模式
说到NTP的工作模式就不得不先解释一下NTP的报文格式。NTP的报文类型有时钟同步报文和控制报文两种,控制报文主要用于网络管理,这里就不展开说,主要介绍时钟同步报文。时钟同步报文封装在UDP报文中,主要字段包括LI(告警状态)、VN(NTP版本号)、Mode(NTP工作模式)、Stratum(系统时钟层数)等。Mode字段长度为3比特,表示NTP的工作模式。不同的值所表示的含义分别是:0未定义、1表示主动对等体模式、2表示被动对等体模式、3表示客户模式、4表示服务器模式、5表示广播模式或组播模式、6表示此报文为NTP控制报文、7预留给内部使用。由此可知,NTP的工作模式包括4 种工作模式:对等体模式、客户/服务器模式、广播模式和组播模式。
对等体模式:主动端发送Mode值1的同步请求报文,被动端接收后自动工作在被动对等体模式,并回复Mode值2的应带报文。主动对等体和被动对等体可以互相同步,如果双方的时钟都已经同步,则以层数小的时钟为准。
客户/服务器模式:客户端发送Mode值3得同步请求报文,服务器端接收后自动工作在服务器模式,并回复Mode值4的应答报文,客户端接收后经过滤优选同步到服务器端。客户端仅能单向同步到服务器端。
广播模式:服务器端周期性发送时钟同步报文到广播地址255.255.255.255,客户端接收广播后先启用一个短暂的服务器/客户端模式与远程服务器交换消息估计延迟,随后进入广播客户端模式,根据广播同步时钟。
组播模式:服务器端周期性发送时钟同步报文到组播地址224.0.1.1,客户端接收广播后先启用一个短暂的服务器/客户端模式与远程服务器交换消息估计延迟,随后进入组播客户端模式,根据组播同步时钟。
3 案例分析
3.1 SCHMID内话面板的时钟与UTC时间偏差,最大偏差五分钟。造成录音回放与实际时间不一致。
SCHMID内话采用server/client模式校时,CtrlA,CtrlB定期向服务器端Mgmt1发送报文,依照Mgmt1的时钟进行同步。为了确保时钟的准确性,为Mgmt电脑引接了一路GPS信号,并用东进GPS校时软件进行校时。内话面板时钟误差说明NTP校时未正常工作。
解决方案:
(1)维护电脑上运行Cygwin.输入 ssh root@192.168.XX.1 登陆到commcontroller A Password:XX.#提示符下运行 install New Software,系统会自动从监控服务器下载软件,下载后系统会自动重启,此过程中请保持维护电脑到内话系统网络畅通。
(2)再次运行Cygwin.输入ssh root@192.168.XX.75 登陆到commcontroller B Password:XX.#提示符下运行 installNewSoftware
(3)待全部重启完成后,运行Cygwin分别登陆到 Controller A和B,
(4)运行NTPStart restart,查看NTP daemon是否正常运行。
内话运行过程中NTP进程吊死。重新启动NTP daemon后恢复正常。
3.2 现场监控系统时钟不准确,回放时间与实际UTC时间不一致。
现场监控系统采用server/client模式,各个摄像头从服务器读取时间,服务器没有外接GPS时钟,服务器长期运行导致时间偏差,时间的不精确导致与实际时间偏差。
解决方案:从东进GPS时钟服务器引接一路RS232时钟信号到现场监控服务器,然后使用东进GPS时钟软件对服务器电脑进行校时。东进GPS时钟服务器只能提供RS232接口信号,而监控服务器没有RS232接口。故引接一路RS232 GPS信号,经由C818E3 IP智能微控器将串口信号转换为IP信号,然后将IP信号接进现场监控系统交换机,在服务器中使用Xframe虚拟串口软件将IP信号转换为串口信号,这样就可以使用东进GPS校时软件对服务器校时。
4 结语
随着空管领域对设备稳定性可靠性的要求不断提高,设备系统数量又不断增加,设备校时的需求不断增大,传统的人工校时显得不切实际。GPS时钟的接口资源有限,不可能做到每一台设备连接一路GPS信号。单套系统连接一路GPS信号,通过server/client模式进行NTP校时,就可以同时实现多系统的准确校时需求。日常维护中,在资源有限的情况下,灵活使用协议转换等手段可以有效解决问题。笔者通过几年的空管系统设备维护,处理GPS时钟相关问题,逐步开始深入了解NTP校时协议,并结合设备维护提出自己的一些体会。
参考文献:
[1] 陈明.苏小敏.基于GPS的NTP网络实现[J].现代电子技术.2011年16期
[2] 沈燕芬.用于网络时间同步的NTP协议[J].现代计算机.2004年04期
[3] 贺鹏.李菁.吴海涛.网络时间同步算法研究与实现[J].计算机应用.2003年02期
(作者单位:民航浙江空管分局)
关键词:NTP;GPS时钟;校时
1 NTP简介
NTP(Network Time Protocol,网络时间协议)是用来使网络中的各个计算机时间同步的一种协议。它的用途是把计算机或者其它空管设备的时钟同步到世界协调时UTC,其精度在局域网内可达0.1ms。NTP协议属于应用层协议,定义了協议实现过程中所使用的结构、算法、试题和协议。NTP协议是基于IP和UDP的,也可以被其它协议组使用。默认使用的UDP端口号为123。对于运行NTP的本地系统,既可以接收来自其它时钟源的同步,又可以作为时钟源同步其它的时钟,并且可以和其它设备互相同步。
2 NTP工作原理
2.1 NTP分层架构
NTP使用一种树状的,半分层的时间源系统。每一层称之为 stratum。每个 stratum 都有一个编号,从1开始,最大到15,16被用来标记设备未同步。一般情况下,顶层的为stratum 1,工作中一般由GPS时钟介入,stratum2的计算机将查询层1服务器。层2计算机也可能与其它层2计算机对等相连,为对等组中的所有设备提供更稳定的时间。后面第 n+1 层 stratum 从第 n 层同步时间,以此类推。
2.2 NTP计算时间延迟
Server和Client通过网络相连,它们都有自己独立的系统时钟,系统时钟同步的工作过程如下:
(1)Client向Server发送一个NTP报文,请求数据包传输的客户端时间戳为t0
(2)Server收到此NTP报文,请求数据包回复的服务器时间戳为t1。
(3)当此NTP报文离开Server时,Server再加上自己的时间戳,该时间戳为t2。
(4)当Client接收到该响应报文时,Client的本地时间为t3。
至此,Client已经拥有足够的信息来计算两个重要的参数:Client相对Server的时间差θ=((t1 - t0)+(t2 - t3))/2;
NTP报文的往返延迟δ=(t3 - t0)-(t2 - t1)Client就能根据这两个值来设定自己的本地时钟,使之与Server的时钟同步。
2.3 NTP工作模式
说到NTP的工作模式就不得不先解释一下NTP的报文格式。NTP的报文类型有时钟同步报文和控制报文两种,控制报文主要用于网络管理,这里就不展开说,主要介绍时钟同步报文。时钟同步报文封装在UDP报文中,主要字段包括LI(告警状态)、VN(NTP版本号)、Mode(NTP工作模式)、Stratum(系统时钟层数)等。Mode字段长度为3比特,表示NTP的工作模式。不同的值所表示的含义分别是:0未定义、1表示主动对等体模式、2表示被动对等体模式、3表示客户模式、4表示服务器模式、5表示广播模式或组播模式、6表示此报文为NTP控制报文、7预留给内部使用。由此可知,NTP的工作模式包括4 种工作模式:对等体模式、客户/服务器模式、广播模式和组播模式。
对等体模式:主动端发送Mode值1的同步请求报文,被动端接收后自动工作在被动对等体模式,并回复Mode值2的应带报文。主动对等体和被动对等体可以互相同步,如果双方的时钟都已经同步,则以层数小的时钟为准。
客户/服务器模式:客户端发送Mode值3得同步请求报文,服务器端接收后自动工作在服务器模式,并回复Mode值4的应答报文,客户端接收后经过滤优选同步到服务器端。客户端仅能单向同步到服务器端。
广播模式:服务器端周期性发送时钟同步报文到广播地址255.255.255.255,客户端接收广播后先启用一个短暂的服务器/客户端模式与远程服务器交换消息估计延迟,随后进入广播客户端模式,根据广播同步时钟。
组播模式:服务器端周期性发送时钟同步报文到组播地址224.0.1.1,客户端接收广播后先启用一个短暂的服务器/客户端模式与远程服务器交换消息估计延迟,随后进入组播客户端模式,根据组播同步时钟。
3 案例分析
3.1 SCHMID内话面板的时钟与UTC时间偏差,最大偏差五分钟。造成录音回放与实际时间不一致。
SCHMID内话采用server/client模式校时,CtrlA,CtrlB定期向服务器端Mgmt1发送报文,依照Mgmt1的时钟进行同步。为了确保时钟的准确性,为Mgmt电脑引接了一路GPS信号,并用东进GPS校时软件进行校时。内话面板时钟误差说明NTP校时未正常工作。
解决方案:
(1)维护电脑上运行Cygwin.输入 ssh root@192.168.XX.1 登陆到commcontroller A Password:XX.#提示符下运行 install New Software,系统会自动从监控服务器下载软件,下载后系统会自动重启,此过程中请保持维护电脑到内话系统网络畅通。
(2)再次运行Cygwin.输入ssh root@192.168.XX.75 登陆到commcontroller B Password:XX.#提示符下运行 installNewSoftware
(3)待全部重启完成后,运行Cygwin分别登陆到 Controller A和B,
(4)运行NTPStart restart,查看NTP daemon是否正常运行。
内话运行过程中NTP进程吊死。重新启动NTP daemon后恢复正常。
3.2 现场监控系统时钟不准确,回放时间与实际UTC时间不一致。
现场监控系统采用server/client模式,各个摄像头从服务器读取时间,服务器没有外接GPS时钟,服务器长期运行导致时间偏差,时间的不精确导致与实际时间偏差。
解决方案:从东进GPS时钟服务器引接一路RS232时钟信号到现场监控服务器,然后使用东进GPS时钟软件对服务器电脑进行校时。东进GPS时钟服务器只能提供RS232接口信号,而监控服务器没有RS232接口。故引接一路RS232 GPS信号,经由C818E3 IP智能微控器将串口信号转换为IP信号,然后将IP信号接进现场监控系统交换机,在服务器中使用Xframe虚拟串口软件将IP信号转换为串口信号,这样就可以使用东进GPS校时软件对服务器校时。
4 结语
随着空管领域对设备稳定性可靠性的要求不断提高,设备系统数量又不断增加,设备校时的需求不断增大,传统的人工校时显得不切实际。GPS时钟的接口资源有限,不可能做到每一台设备连接一路GPS信号。单套系统连接一路GPS信号,通过server/client模式进行NTP校时,就可以同时实现多系统的准确校时需求。日常维护中,在资源有限的情况下,灵活使用协议转换等手段可以有效解决问题。笔者通过几年的空管系统设备维护,处理GPS时钟相关问题,逐步开始深入了解NTP校时协议,并结合设备维护提出自己的一些体会。
参考文献:
[1] 陈明.苏小敏.基于GPS的NTP网络实现[J].现代电子技术.2011年16期
[2] 沈燕芬.用于网络时间同步的NTP协议[J].现代计算机.2004年04期
[3] 贺鹏.李菁.吴海涛.网络时间同步算法研究与实现[J].计算机应用.2003年02期
(作者单位:民航浙江空管分局)