NTP 网络时间协议在TETRA 数字集群网络中的应用
2020-10-26王玉军
王玉军
(民航华北空管局,北京100621)
1 概述
随着TETRA 数字集群专用移动通信系统在国内的迅猛发展,已建的TETRA 集群网络越来越多,而精确同步是Tetra 数字集群系统交换机、基站等核心网元正常工作的基础,也是网络辅助元素如计费、录音、网管等正常工作的前提。如何实现TETRA 网络同步正是本文研究的课题。
2 NTP 时间同步的原理及可靠性分析
NTP(Network Time Protocol)是工作于应用层,用于互联网时间同步标准。
它根据Client Server 的往返报文来确定时钟的差值和报文在网络中的延迟[1]。
根据图NTP 协议的C/S 模型定义:
T1client 发送查询请求信息包时间,T2server 收到查询请求信息包时间
T3server 回复时间信息包时间,T4client 收到时间信息包时间
δ1:从client 发送时间报文到serve 的路径延迟
δ2:从serve 发送时间报文到client 的路径延迟
θ:从serve 到client 时钟时间偏差。
根据图1 可以列出如下等式:
若假设从client 到serve 的路径延迟和从client 到serve 的路径延迟是一样的,则:
由(5)可知,时偏θ 可以由T1,T2,T3,T4四个时刻的值得到,即时偏θ 只与T1-T2和T3-T4有关,与服务器处理请求所需要的时间无关。但是当服务器和客户端之间增加交换机和操作系统运行服务器和客户端时,通常会产生一个延迟函数,相关数据表明,该值windows 下延迟5ms,linux 系统一般会延迟1ms。
3 TETRA 集群网络对时间精度的要求
小型TETRA 集群网络中对时间精度要求不高,一般要求不大于500ms。当集群网络较大时,除基站要求载频和时间基准时间共用一个时钟源,且频率容差要求±0.1x10-6外[2],还因涉及跨交换机通信,交换机单元如No.7 信令等为了避免信令失序,也要求信令流的时间同步精度不大于100ms。TETRA 集群属于专网性质,链路多为自建或者直连,不具备公网SDH 传输网络的定时功能,所以高精度的时钟源和精确的传递手段是必要的。
TETRA 集群网络的同步多为“主从同步”方式,考虑到交换机、基站OXCO 晶振老化问题,主时钟源一般采用GPS 时钟,传递采用NTP 方式进行网络同步。
4 TETRA 网络时间同步的实现
TETRA 集群网络核心交换机一般设有默认关闭SNTP 客户端和SNTP/NTP 服务器。
因此只需将GPS 信号通过NTP server 传递给其他交换机、以及其他网络元素即可实现同步。
4.1 Liunx 系统下配置NTP 服务器
(1)安装NTP 服务 yum install ntp -y。
(2)查看NTP 服务器当前状态 ntpq -p。
(3)查看NTP 配置文件 vim/etc/ntp.conf;配置信息如表1。
driftfile/var/lib/ntp/drift 访问上级时间服务器需要的时间,记录于drift 文件内 restrict default kod nomodify notrap nopeer noquery 拒绝IPv4 问ntpserver访问权限 restrict -6 nomodify notrap nopeer noquery 拒绝IPv6 问ntpserver访问权限 restrict192.168.0.3 开放当前节点服务器 权限 restrict 127.0.0.1 开启内部递归网络接口 restrict 192.168.0.2 mask 255.255..255.0 nomodify notrap 在内部子网的客户端里进行网络校时,但不能修改NTP 服务参数 Server 192.168.0.3 上级参考时间服务器
(4)排查配置文件注释cat/etc/ntp.conf|grep -v"^#"。
(5)设置当前节点服务器及同网段客户端的网关、子网掩码。
(6)修改NTP 服务器上级服务器及本地服务器设备本地同步服务器 sever 127.0.0.1 若无法与外网同步,需注释掉0~3server。
若同步的节点较多,还需要设置服务器stratum,局域网内一般设为10,如fudge 127.0.0.1 stratum 10,重启service ntpd restart。
4.2 TETRA 集群网络录音、网管、计费等系统多为CS 模式,服务器与客户端操作系统多不相同,所以一般需要配置windows NTP sever。
(1)修改注册表项里NTP Server,将NtpServer Enabled 设定为1。
(2)修改注册表W32Time->Config ->AnnounceFlags 设定为5。
(3)禁用防火墙或设置例外,UDP 123 端口。
(4)运行services.msc,将Windows Time 服务设置成自动(延迟启动)。
(5)重启动校时服务运行net stop w32time && net start w32time。
4.3 配置DXTA 交换机:ZDCW:1:""; "" 内为NTP severIP地址。
4.4 DXTA 交换机下确认NTP 服务同步启用:ZDCP; 时间同步成功后对应的IP 地址前标*号。
4.5 将其他网元同步于DXTA 交换机。
5 结论
5.1 NTP 网络时间同步的时间同步精度在5ms 左右,主要误差包括:
(1)因NTP 是一种基于应用层的时间协议,所以时间戳的位置打在应用层,受协议栈缓存的影响,往往不能在报文到来时及时打戳。
(2)网络设备传输时延的不确定性及链路的不对称性。
5.2 在配置NTP 服务器时,一般需要通过/etc/init.d/iptables stop 先将防火墙关闭,否则可能出现无法同步情况。
5.3 NTP 基于应用层工作,所以它同步的时间往往是系统时间。若要同步硬件BOIS,服务器liunx 下的/etc/sysconfig/ntpd文件中,修改SYNC_HWCLOCK=YES。