Close
技术支持
在线客服
在线客服
在线客服
嵌入式LED点阵显示、LED数显、无线遥控、信息采集系统开发!
引导页 中文版 English

数字LED显示屏

PLC显示屏(集成modbus&profibus协议)

电子看板003

电子看板004

PLC显示屏(自由口RS485通讯)

电子看板006

工业参数LED显示屏

电子看板008

PLC显示屏

电子看板010

 
 
LED时钟之NTP时间同步服务器架设
  • 点击2278
  • 发布:2008-12-25
  •         为了让计算机系统时间可以一直保持正确的状态(时间同步),我们经常需要调整时间。要调整时间,自然就会有一个可以对照着调整的“准确时间”!在实际生活中,我们可以通过电视台、广播电台等来调整我们的手表或LED时钟。那么在网络上,我们该如何让主机随时保持正确的时间?另外,整个地球被划分为24个时区,什么是GMT(格林威治时间),我们所在的时区又是哪一时区呢?让我们来简单地谈谈! 
    1、时钟同步原理 
            时间就是金钱!在 Internet 上,时间同样也非常重要!有些计算机需要同步时间才能够正常的运行!在开始NTP服务器的介绍之前,先来简单地谈谈关于“时区”的概念! 
            1.1时区 
            因为地球是圆的,所以同一个时刻,在地球的一边是白天,一边是黑夜。人类将一天分为24小时,所以,在地球对角的两边就差 12 小时。在同一个时刻,整个地球的时间都不一样,为了解决这个问题,人们就将地球分成24个时区! 人类以经纬度坐标来定位地球,经度为零的地点在英国格林威治市所在的纵剖面上,绕地球一圈为 360 度角,将 360度角分为 24 个时区,一个时区就是 15 度。因为国际上以格林威治时间(Greenwich  Mean  Time,GMT时间)为标准时间,加上地球自转的关系,因此,在格林威治以东的区域时间比较早(+小时),而以西的地方比较晚!
    图片

            1.2协和标准时间与系统时间的误差(NTP时钟同步的必要性) 
            了解了一些时区的概念之后,这里要谈的是“正确的时间”。在计算时间时,最准确的计算应该是使用原子震荡周期所计算的物理时钟(Atomic  Clock,也称为原子钟),也被定义为标准时间(International Atomic Time)。我们常常看见的UTC(Coordinated Universal Time,协和标准时间)就是利用这种物理时钟为基准所定义出来的正确时间。例如1999年在美国启用的原子钟  NIST F-1,它所产生的时间误差每两千年才差一秒!UTC标准时间是以GMT 时区为主的!所以本地时间与UTC时间的时差就是本地时间与GMT 时间的时差! 事实上,我们身边有很多原子钟。例如石英表,还有计算机主机上的 BIOS 也是一个原子钟!不过,由于原子钟主要是利用计算芯(crystal)的原子震荡周期去计时的,但是每种芯片都有自己的独特的震荡周期,而震荡周期在不同的芯片之间多少都会有点差异,甚至同一批芯片也可能会有些许的差异(就连温度也可能造成这样的误差),因此,也就造成了BIOS的时间会经常快几秒或者慢几秒。 或许您会认为,BIOS定时器每天快5秒也没有什么了不起的,不过如果您再仔细算算,会发现,一天快5秒,那么一个月快 2.5 分钟,一年就快了75分钟!所以,真的存在时间差!如果您的计算机真有这样的情况,就需要网络校时(Network Time Protocol, NTP)的功能了!
    2、NTP服务器同步及搭建   
            那么如何让时间同步化呢?如果选择几台主要主机(Primary  服务器)调校时间,让这些主要主机的时间同步之后,再开放网络服务来让 Client 端连接并且提供 Client 端调整自己的时间,就可以达到全部的计算机时间同步化的目的了!Network  Time  Protocol 和Digital Time Synchronization Protocol(DTSS)协议可以达到这样的功能。 不过,到底NTP这个daemon是如何让Server与Client的时间保持同步呢? 
            a.  首先,主机需要启动这个daemon 
            b.  然后Client 会向NTP Server发送出调校时间的message 
            c.  然后NTP Server 会把当前的标准时间返回给Client 
            d.  Client 接收了来自 Server的时间后,会以此调整自己的时间,这就实现了网络校时同步了! 
            如何搭建一台“合格”的NTP服务器供同步时钟同步时间尤为重要了。
            在上面的步骤中可能会发生一个问题,那就是Client到Server 的信息传送时间过长!例如,我在中国台湾以ADSL连接到美国的NTP Server 主机进行时间同步化请求,美国NTP Server 收到我的请求之后,就发送当时的正确时间给我,但从美国将数据传送回我的PC时,时间可能已经延迟了 10秒钟,这样我的PC校正的时间是10秒钟前的标准时间!此外,如果有太多的人上美国的那个NTP主机进行网络校时,就会导致负荷太重,致使信息的传递又延迟得更为严重! 为了解决这些延迟的问题,有一些程序已经可以自动计算传送过程时间的误差,以更准确的校准自己的时间!当然,在daemon 的部分,也同时以 server/client 及 master/slave的架构来提供用户进行网络校时的操作!所谓的master/slave有点类似DNS的系统!例如,中国台湾的标准时间主机去国际标准时间的主机校时,然后各大专院校考场医院车站再到中国台湾的标准时间校时,然后我们再到各大专院校考场医院车站的标准时间校时!这样一来,那几台国际标准时间主机Time服务器)的负荷就不至于太大,而我们也可以很快速地达到正确的网络校时的目的!
    中国台湾常见的Time服务器为:time.stdtime.gov.tw  
                                                       clock.stdtime.gov.tw  
                                                       freq_f.stdtime.gov.tw  
                                                       tick.stdtime.gov.tw  
                                                       time.chttl.com.tw 
    ntp 这个daemon是以端口  123 为链接端口的(使用UDP数据包),所以我们要利用Time服务器来进行时间的同步更新,就得要使用 NTP 包提供的ntpdate来链接端口 123端口!
    NTP时钟图片




    地址:深圳市福田区上沙村忠合广场A座  电话:0796-7203100 传真:0796-7203100-8005
    版权所有:深圳市立显光电有限公司  技术支持:天地盟网络 [粤ICP09009496]
    本站所有产品资料专属于深圳立显光电,未经许可不得擅自非法转载.