基于 NTP 的航天测控网络对时系统研究

时间:2024-12-26 15:10:37 来源:作文网 作者:管理员

0 引言

随着我国航天技术的快速发展,在系统内已经形成了多种业务种类、多种网络拓扑结构的航天网络设备体系。例如卫星发射和测控系统需要依靠高可靠性和高精确度的计算机来控制关键节点工作。这类应用对系统内部各设备的时钟统一性和精确度要求很高,必须对用户设备进行时间同步,以保持航天器与测控系统各用户设备时间和频率的高度一致。网络时间协议采用主动对时方法,克服了网络竞争机制对系统校时精度的影响,能实现系统时钟的一致和精确;因此,采用 NTP 协议实现网络对时系统,可以有效解决这一问题。笔者对 NTP 基本原理、工作模式等进行研究,建立了在航ฆ天测控网络上的 NTP 对时系统构架,设计并编程实现了 NT☑P 网络对时系统。

1 NTP 的基本概念

1.1 NTP 协议

NTP 协议是美国 Delaware 大学的 Mills 教授在1985 年提出的,可以实现时间服务器或精确的时钟源同计算机的时钟同步。NTP协议适用于在拥塞的网络环境下提供精确和健壮的对时服务,把计算机的时间同步到标准时钟源上,可实现在局域网上误差小于 1 ms,广域网上几十毫秒的高精度时间校准,同时其加密认证的模式可防止恶意的协议攻击,具有广泛的应用前景。

1.2 NT®P 基本原理

NTP协议主要以客户端/服务器方式进行对❧时,而且适用于性能差异大的客户端及服务器,每次对时共需2个数据包。假设客户端发送对时请求的本地时间为T1,服务器端接收对时请求的服务器时间为T2,服务器端返回对时请求的服务器时间为T3,客户端收到返回请求的本地时间为T4为客户端和服务器端的时间偏差,T1到T2的路径延迟为1,T3到T4的路径延迟为2总路径延迟。

2 NTP 在航天测控网络中的系统架构

目前,航天测控网络的主要设备使用直接连接时钟源的方式来实现时间同步,如以铷原子钟为高精度时钟源,IRIG-B 为串行时间同步码。这样每台设备都需配置 PCI 时统卡来解 B码,造成系统成本高且增加了系统的复杂性。而未配置 PCI 时统卡的设备时钟大多靠人工手动来调整,鉴于人工手动调整引起的误差以及各个设备内部时钟的性能差异等因素,会造成整个网络中设备时间的不统一。

3 网络对时系统的设计实现

笔者以 Visual C++6.0 为开发平台,运用 Winsock网络编程技术,实现了 NTP 报文的收发功能。

3.1 服务器软件设计

服务器软件设计流程如图 3 所示。服务器运行后,通过对串口接收数据,自动判断上级时钟源的类型,计算出 UTC 时间;根据工作模式的设置可以定时向客户端广播时间报文,或接收客户端的时间同步请求,调用本地时钟查询函数来添加请求报文的到达时间戳 T2,将上述报文保存在表中,♂接收下一个时间同步请求;如果此时没有新的请求,则再次调用系统时间并添加返回给客户端的时间戳 T3,并同时将时间报文送回客户端。

3.2 客户端软件实现

客户端软件主要功能有:定时向 NTP 时间服务器发送时间同步请求并接收时间服务器返回的带有时间戳的 NTP 报文,计算时间偏差、网络延迟和调整本地系统时间;能够通过广播方式接收报文并直接调整本地系统时间;提供对时请求函数接口为其他应用程序调用。

4 结束语

实践结果证明:该系统能把全网中的设备时间偏差精度控制在 1 ms 以内,实现了高精度对时,确保了航天测控网络系统内时间的准确性和一致性。


热门排行: 教你如何写建议书