随着计算机网络技术在工业和民用领域的飞速发展,利用网络用户提供时间服务的需求越来越多。在局域网内,利用NTP(Network Time Protocol)网络时间协议实现各终端设备的与嵌入式NTP服务器的对时已经较为广泛。各种类型的NTP服务器产品应声而至,有基于不同操作系统的,有基于不同硬件平台的,有基于不同底层协议的,产品类型五花八门。那如果评价一个NTP服务器性能呢?对时精度、运行稳定性作为NTP服务器关键性能是评价NTP服务器的基本要素。
嵌入式NTP服务器通过接收卫星同步信号读取精准的时间信息,由嵌入式系统经过相关处理,利用NTP协议提供授时和同步服务。为工作在复杂环境中,且对时间精度有很高要求的网络提供了一种能高效解决时间同步问题的途径。
1. NTP服务器的授时精度
根据NTP协议规定,NTP协议可以实现的对时精度是1~50ms。这个精度是针对广域网内NTP客户端与NTP服务器之间实现对时而规定的。满足这个指标不一定满足局域网内的使用要求。一般具局域网内,尤其是工业领域内对NTP的对时精度要求是小于1ms。
真正影响NTP服务器精度的关键技术是什么?大多数厂家宣传NTP服务器采用高性能处理器,如ARM、DSP,加上实时操作系统。其实,这些都不是影响NTP服务器精度的关键问题。嵌入式NTP服务器,硬件平台和操作系统的性能再高能高过台式机、笔记本电脑吗?事实上,利用台式机或笔记本电脑作为NTP服务器的精度远低于高精度的嵌入式NTP服务器。
根据NTP协议算法,真正影响NTP服务精度的是数据时间戳的精度。而数据时间戳的精度与处理器的性能操作系统的实时性并无直接联系。甚至在高级操作系统中,由于系统的任务调度集成化,无法控制时间戳的精度,也就无法控制NTP服务的对时精度。解决NTP服务器精度的关键技术只有一个:提高NTP服务过程中接收和发送数据时间戳的精度。
2. NTP服务器的运行稳定性
NTP服务器的运行稳定性主要包括两个方面:长时间硬件无故障运行和NTP服务的安全性。其中硬件无故障运行是大多数厂家容易做到的,但NTP服务的安全性却是很多NTP服务器的硬伤。
NTP服务的安全性要求如下:
1) 各个NTP服务模块之间完全隔离
l 物理隔离:每个模块有独立处理器和网络芯片,无任何电路共享;
l 网络隔离:每个模块可以设置相同IP地址和相同MAC地址分别服务不同子网;
l 通信隔离:模块之间无数据通信。
只有做到NTP服务器中各个NTP服务模块之间完全隔离,才能从根本上满足安全性需求。
2) 避免网络攻击
很多嵌入式NTP服务器是基于市场成熟操作系统和成熟NTP协议(如linux+NTPD),这给NTP服务器的安全性带来很大隐患。NTPD的每次更新软件Bug,都带来这些产品的软件升级。
同时基于这些协议基础上的网络管理功能也严重威胁NTP服务的安全性。从安全性角度出发,基于网络的管理要与NTP服务物理上分开,通过单独的管理模块实现对ntp服务器的管理功能。
上海岭通电子科技有限公司自主研发的、具有完全知识产权的嵌入式NTP服务器。各个NTP服务模块之间完全隔离,每个模块具有完全独立处理器、网络芯片及所有电路;自主开发了从底层网络协议到嵌入式操作系统,通过在网络芯片底层出口处加盖NTP服务数据的时间戳,在局域网内实现NTP服务小于1ms的NTP对时精度;自主开发的软件系统只支持NTP协议,避免了针对商用NTP软件网络攻击;同时单独的管理模块避免基于其他网络协议的网络攻击,最大限度保证了NTP服务的安全性。