network time protocol

网络时间协议:

这是什么?

what is it?

网络上所有的服务器都是一个时间段:

为了同步在网络上所有的server的时间,这样可以方便几种管理和交流,通讯

那么应该是什么?

工作的原理?

server端和client段

服务端和客户端,服务端比较简单,只要使用技术来确保server端的时间准确即可

而客户端定时向服务端发送数据,获得服务端的时间,然后再和server端的时间sync就OK了

但是这有一个问题:从server端获得数据之后,再返回到client端,这里有一个传输的时间。

传输的时间怎么算?

比如说:CLIENTa向server A端,发送数据,server端A把5:10返回到client端,时间传输要花费10s钟,这样的话,时间不久不同步了吗?

这真是很奇怪

工作的流程:

1:主机启动这个daemon

2:client向NTP server发送校对时间的message

3:NTP server送出当前的标准时间给client

4:client接受了server的时间,因此调整自己的时间,实现了网络校时。

问题依然是存在的,到底是如何解决的?

使用的是master slave模式:

我国标准时间主机区国际标准时间来校对,然后各个学校再到我国的标准时间主机上来校对,然后我们再到各个学校的标准时间主机来校对。

这样的话,可以降低国际标准时间主机的load。

NTP这个daemon使用UDP协议的123端口,

我们使用time server来进行时间更新,需要使用NTP软件提供的ntpdate来进行port  123的连接。

原来是这样:NTP时间服务器使用分级架构来处理时间的同步化

http://support.ntp.org/bin/view/Servers/StratumOneTimeServers

这是网络世界上的第一级的时间服务器。




我们选择的时候,可以选择多个NTP server来进行更新,这个配置文件是:/etc/ntp.conf  

NTP的阶层概念和DNS很类似,NTP的server最多有15个阶层。

stratum:stratum-3向stratum-2要求时间同步

                stratum-4向stratum-3要求时间同步

                stratum-5向stratum-4要求时间同步。