实验室时间一致性解决方案——时钟服务器的作用、原理、搭建、部署和应用
来源:宁波熙宁检测技术有限公司    |    发布时间:2020-11-04 13:53:00    |    点击:

一、什么是时钟服务器

时钟服务器 (Time Server) 是指能够准确的读取时间,并为其它设备提供对时功能的服务器。关联的设备不仅能够从时钟服务器获取时间,还能定时、自动校准,以达到某个组织内所有时间统一、准确的目的。

从计算机的角度来说,时钟服务器本身并非一个完整的服务器,而是运行在操作系统之上的应用。简单理解,它相当于一个实时提供时钟的网站,而网站本身是部署在 IIS (Internet Information Server, based on Windows)、LAMP (Linux-Apache-MySQL-PHP) 或 LNMP (Linux-Nginx-MySQL-PHP) 等服务器的运行环境中的。

在互联网领域,时钟服务器有着重要且广阔的应用。各大云服务厂商一般都会对外提供时钟服务器的对时服务,例如阿里云、苹果、谷歌等,其中也包括授时中心。

在医药研发领域,重要的实验操作都需要记录时间。因此很多专业实验室都会部署时钟服务器。可能有人会有疑问:为什么要部署时钟服务器,在每个房间挂一个挂钟不是也可以随时查阅时间?

 

二、时钟服务器的作

一个基本的时间问题:钟表是会衰减的。无论是传统的机械表还是电子表,在运行一段时间后都会与卫星时间产生偏差,而且每一个钟表衰减的频率、幅度都是不稳定的。

想象一下,如果每个屋子都挂着一个挂钟,每个挂钟在刚安置时都调好了时间。一周后,挂钟 A 慢了 2 秒,挂钟 B 快了 3 秒;一个月后,挂钟 A 慢了 15 秒,挂钟 B 快了20 秒...... 两个月后,这两个挂钟之间便已相差一分钟。差之毫厘,失之千里。一些错误的时间记录也因此发生。

再举个例子。每个仪器的数据采集,在采集完成的那一刻,会为其生成的数据盖上一个 “时间戳” 。这个时间从哪里来?是从仪器所连接的电脑——没错,每一台电脑都有自带的时钟,我们称之为 CMOS Clock,也就是电脑主板的时间。如果没有连接时钟服务器,电脑将始终使用主板时间,而主板时间取决于主板上纽扣电池的电力是否充足。若电池电力不足,时间将会慢慢衰减。

这个问题也有勉强可行的解决办法:定期将每台电脑的时间,以及每个挂钟的时间调整为一致的时间——可是这个办法真的可行吗?手动校准真的准确吗?要是能自动校时就好了...... 等一下!这不就是时钟服务器嘛。

三、时钟服务器的原

前面提到,时钟服务器是一个搭载了时钟服务的有操作系统的服务器,所以它本身有自己的时钟,来源于其搭载的操作系统。而操作系统也同样有着纽扣电池的问题。所以,为了保证其本身时间准确,时钟服务器需要从其他位置获取时间。获取的途径可以从更大型的时钟服务器,也可以从卫星(GPS,或北斗系统)获取。前文中提到的阿里云、苹果、谷歌等已经为我们提供了现成的对时服务,所以只需要将采用的时钟服务器与其对时即可。简单来说,阿里云跟卫星对时;而我们,跟阿里云对时。

作为时钟服务器用户,我们更需要关心的,是其他设备如何获取时钟服务器的时间,并且自动校时。计算机之间通信是通过网络,而网络数据传输有着各种各样的 “协议” 。网络协议可以简单理解为数据通信的规则,当双方进行通信时,发送方按照规则发送数据,接收方按照规则接收数据,才能够正确的收发和解析。目前,较为通用的网络时间协议是 NTP (Network Time Protocol) 协议,这也是时钟服务器的基本原理。因此,时钟服务器通常也被称为 “ NTP 服务器”。

时钟服务器通过 NTP 协议,向自己所处的网络环境释放时间信息;所有设备通过 NTP 协议,获取到时钟服务器释放的信息,然后自动进行校准。这便是时钟服务器的工作原理。



 


四、时钟服务器的搭建与部

部署时钟服务器前,我们先了解下统一时钟环境的组成。

首先需要一台实实在在的物理服务器,在此物理服务器上部署虚拟服务器或者直接使用这台物理服务器。第二,在服务器上安装服务器操作系统,比如Windows 或 Linux。第三,有了服务器还需要有客户端,就好像微信服务器搭好以后,两个人想要聊天,还要有手机+微信 APP 才可以。时钟服务器也一样, 需要有客户端计算机。第四,建议在域环境内部署时钟服务器,便捷效率高。

于服务器而言,首先需要设置NTP 来源。推荐使用授时中心提供的 NTP 源:ntp.ntsc.ac.cn。此外还可以将国际通用 NTP 源 cn.pool.ntp.org 设置为备选。NTP根据不同操作系统,配置方式也不同,例如下图,是Windows操作系统的配置工具:



 



下图则是Linux操作系统的配置工具:



 



配置好 NTP 源,便可以将时钟服务器注册为局域网络内的可信权威时钟服务器了。完成注册,网络内的其它电脑即可与时钟服务器同步时间。 





服务器注册成功后,就可以部署客户端电脑。部署时一是要注意合理配置同步频率,频率过低会失去时钟服务器可以即时同步校准的意义,频率过高则会导致服务器压力过大,网络质量也会受到影响。
对拥有域环境的客户端来说,管理人员只需 Domain Server 中下发策略,域内的电脑将会自动完成该配置。而没有域环境的客户端,则需要手动在每台设备上完成配置。 




 

五、时钟服务器应

1. 仪器连接电

仪器所连接的电脑完成客户端配置后,便可自动与时钟服务器同步时间,仪器所产生的 数据的时间也就能保证统一了。可以使用一些命令来查询时间同步状态,例如下图查询到上次成功同步的时间是 2020-06-19 6:39:34。



 



2. 时间显示

解决了仪器数据的时间一致性问题,还要解决 “挂钟” 的问题。

对于空间比较宽敞的房间,可以直接放置一台电脑,使用备受赞誉的 Fliqlo 时钟屏保程序,让电脑显示器化身一个大型时钟,美观又实用。



 



对于空间有限,不便放置电脑的房间,可以选择壁挂式显示器 + 无线显示适配器的黄金组合,可以将其他房间的时钟画面传输至本房间,而不占用任何桌面空间。



 


当然,如果不希望使用第三方时钟程序,也可以由 IT编写显示时间的小程序。

 

参考链接:

http://www.ntp.org/ntpfaq/

https://en.wikipedia.org/wiki/Time_server