NTP是网路时间协定(Network Time Protocol),它是用来同步网路中各个计算机的时间的协定。
在计算机的世界里,时间非常地重要,例如对于火箭发射这种科研活动,对时间的统一性和準确性要求就非常地高,是按照A这台计算机的时间,还是按照B这台计算机的时间?NTP就是用来解决这个问题的,NTP(Network Time Protocol,网路时间协定)是用来使网路中的各个计算机时间同步的一种协定。它的用途是把计算机的时钟同步到世界协调时UTC,其精度在区域网路内可达0.1ms,在网际网路上绝大多数的地方其精度可以达到1-50ms。
它可以使计算机对其伺服器或时钟源(如石英钟,GPS等等)进行时间同步,它可以提供高精準度的时间校正,而且可以使用加密确认的方式来防止病毒的协定攻击。
基本介绍
- 中文名网路时间协定
- 外文名Network Time Protocol
- 原理提供準确时间
- 最新版本NTPv4
原理
NTP要提供準确的时间,就必须有準确的时间来源,那可以用格林尼治时间吗?答案是否定的。因为格林尼治时间是以地球自转为基础的时间计量系统,地球每天的自转是有些不规则的,而且正在缓慢加速,,格林尼治时间已经不再被作为标準时间使用。
新的标準时间,是由原子钟报时的国际标準时间UTC(Universal Time Coordinated,世界协调时)。所以NTP获得UTC的时间来源可以是原子钟、天文台、卫星,也可以从Internet上获取。
有了準确而可靠的的时间源,那这个时间如何传播呢?在NTP中,定义了时间按照伺服器的等级传播,按照离外部UTC源远近将所有的伺服器归入不同的Stratum(层)中,例如把通过GPS(Global Positioning System,全球定位系统)取得传送标準时间的伺服器叫Stratum-1的NTP伺服器,而Stratum-2则从Stratum-1获取时间,Stratum-3从Stratum-2获取时间,以此类推,但Stratum层的总数限制在15以内。所有这些伺服器在逻辑上形成阶梯式的架构相互连线,而Stratum-1的时间伺服器是整个系统的基础,这种阶梯式的架构示意图如图1所示。
计算机主机一般同多个时钟伺服器连线,利用统计学的算法过滤来自不同伺服器的时间,以选择最佳的路径和来源以便校正主机时间。即使在主机长时间无法与某一时钟伺服器联繫的情况下,NTP服务依然可以有效运转。
为了防止对时钟伺服器的恶意破坏,NTP使用了识别机制,检查传送来的信息是否是真正来自所宣称的时钟伺服器并检查信息的返迴路径,以提供对抗干扰的保护机制。
NTP时间同步报文中包含的时间是格林威治时间,是从1900年开始计算的秒数。
发展
NTP记载是在Internet Engineering Note之中,其精确度为百毫秒。稍后出现了首个时间协定的规范,即RFC-778,它被命名为DCNET网际网路时间服务,而它提供这种服务还是藉助于ICMP(Internet Control Message Protocol,Internet控制报文协定),即网际网路控制讯息协定中的时间戳讯息和时间戳应答讯息作为NTP。
NTP名称的出现是在RFC-958之中,该版本也被称为NTP Version0,其目的是为ARPA(Advanced Research Projects Agency,美国国防部高级研究计画署)的网路提供时间同步。它已完全脱离ICMP,是作为独立的协定以便完成更高要求的时间同步功能。它对于本地时钟的误差估算和精密度等基本运算、参考时钟的特性、网路上的分组数据包及其讯息格式者进行了描述。不对任何频率误差进行补偿,也没有规定滤波和同步的算法。
美国德拉瓦大学(University of Delaware)的David L .Mills主持了由DARPA(Defense Advanced Research Projects Agency,美国国防部高级研究计画局)、NSF(National Science Foundation,美国国家科学基金)和NSWC(Naval Surface Warfare Center,美国海军水面武器中心)资助的网路时间同步项目,成功的开发出了NTP协定的Version1、Version2和Version3 三个版本。
NTP Version1出现于1988年6月,在RFC-1059中描述了首个完整的NTP规范和相关算法。这个版本已经採用了客户端/伺服器端(Client/Server)模式以及对称操作,它不支持授权鉴别和NTP的控制讯息。
1989年9月推出了取代RFC-958和RFC-1059的NTP Version2版本即RFC-1119。
几乎,DEC公司也推出了一个时间同步协定DTSS(Digital Time Synchronization Service,数字时间同步服务)。在1992年3月,NTP Version3版本RFC-1305问世,该版本和综合了NTP之前的所有版本和DTSS,正式引入了校正原则,并改进了时钟选择和时钟滤波的算法,而且还引入了时间讯息传送的广播模式,这个版本取代了NTP的先前版本。
NTP Version3发布后,一直在不断地进行改进,NTP实现的一个重要功能是对计算机作业系统的时钟调整。在NTP Version3研究和推出的,有关在作业系统核心中改进时间保持功能的研究也在并行地进行。
1994年推出了RFC-1589,名为A KernelModel for Precision Time keening,即精密时01保持的核心模式,这个实现可以把计算机作业系统的时间精确度保持在微秒数量级。
截止到2010年6月,最新的NTP版本是第4版(NTP Version 4),其标準化文档为RFC 5905,它继承自RFC 1305所描述的NTP Version3。网路时间同步技术也将向更高精度、更强的兼容性和多平台的适应性方向发展。
其他含义
1、NTP是RNA的合成原料,即核苷三磷酸。
2、2002--2005 ntp 是大连东软信息技术学院着名的CS战队名。
3、NTP是冷等离子技术简称。
4、NTP是标準温度和压力(normal temperature and pressure )的简写。