Network Time Protocol互联网时间协议

NTP is intended to synchronize all participating computers to within a few milliseconds of Coordinated Universal Time (UTC).[1]:3 It uses a modified version of Marzullo's algorithm to select accurate time servers and is designed to mitigate the effects of variable network latency. NTP can usually maintain time to within tens of milliseconds over the public Internet, and can achieve better than one millisecond accuracy in local area networksunder ideal conditions. Asymmetric routes and network congestion can cause errors of 100 ms or more.[2][3]

NTP旨在几毫秒协调世界时(UTP)的时间内同步所有参与的计算机。NTP使用一个修改的版本来选择精确的时间服务器,并能缓解可变的网络延迟的影响。NTP通常能够在几十毫秒的时间内在公网上维护时间,并且能够比一个在理想状态下的局域网的一个毫秒的精度表现更好。不对称线路和网络拥塞能导致100毫秒或更多的错误。

The protocol is usually described in terms of a client-server model, but can as easily be used in peer-to-peer relationships where both peers consider the other to be a potential time source.[1]:20 Implementations send and receive timestamps using the User Datagram Protocol (UDP) on port number 123.[4][5] They can also usebroadcasting or multicasting, where clients passively listen to time updates after an initial round-trip calibrating exchange.[3] NTP supplies a warning of any impending leap second adjustment, but no information about local time zones or daylight saving time is transmitted.[2][3]

As of June 2010, the current protocol is version 4 (NTPv4), which is a proposed standard as documented in RFC 5905. It is backwards compatible with version 3, specified in RFC 1305.

这个协议通常用 客户端-服务器模型来描述,但是能被容易地用于对等的关系,在这种情况下,两方都放为另一方是一个潜在的时间源。在 123端口使用UDP协议发送和接收时间戳。他们也能使用广播或多播,在这种情况下,客户端在接收到往返时间校准后被地监听时间更新。NTP提供了一个对任何迫近的闰秒的调整警告,但是关于本地时区或夏时令没有给出信息。

Clock strata (时钟层)

NTP uses a hierarchical, semi-layered system of time sources. Each level of this hierarchy is termed a "stratum" and is assigned a number starting with zero at the top. The number represents the distance from the reference clock and is used to prevent cyclical dependencies in the hierarchy. Stratum is not always an indication of quality or reliability; it is common to find stratum 3 time sources that are higher quality than other stratum 2 time sources. Telecommunication systems use a different definition for clock strata.

关于 时间源,NTP 使用了一个分层的,半独立的分层系统。每个层叫作一个“stratum”,并且在最上面被分配了一个从0开始的数字。这个数字代表了与参考时钟的距离,并且被用来防止形成回路。

Stratum 0

These are high-precision timekeeping devices such as atomic (cesium, rubidium) clocksGPS clocks or other radio clocks. They generate a very accurate pulse per second signal that triggers an interrupt and timestamp on a connected computer. Stratum 0 devices are also known as reference clocks.

第0层是高精度的计时设备,如原子的(铯,铷)时钟,GPS时钟或其它电波时钟。它们生成一个很准确的每秒脉冲信号并在连接的计算机上触发一个中断和时间戳。

Stratum 1

These are computers whose system clocks are synchronized to within a few microseconds of their attached stratum 0 devices. Stratum 1 servers may peer with other stratum 1 servers for sanity checking and backup.[6] They are also referred to as primary time servers.[2][3]

第一层是计算机,这些计算机的系统时钟在几微妙一次的与与之连接的第0层的设备进行同步。第一层上的服务器为了完整性检查与备份,可能与其它位于同层的服务器进行连接。他们也被称为主时间服务器。

Stratum 2

These are computers that are synchronized over a network to stratum 1 servers. Often a stratum 2 computer will query several stratum 1 servers. Stratum 2 computers may also peer with other stratum 2 computers to provide more stable and robust time for all devices in the peer group.

第二层是通过网络与第一层进行时钟同步的计算机。通常一个位于第二层的计算机机将查询好几个位于第一层的服务器。位于第二层的计算机可能与其他层2电脑同行为所有其它位于同一层的设备提供更稳定和健壮的时间。

Stratum 3

These are computers that are synchronized to stratum 2 servers. They employ exactly the same algorithms for peering and data sampling as stratum 2, and can themselves act as servers for stratum 4 computers, and so on.

位于第三层的是与第二层服务器进行同步的计算机。它们使用与第二层同样的同步和数据采集算法,并且它们自己可以作为第四层的服务器,以此类推。

Only strata 0 to 15 are valid; stratum 16 is used to indicate that a device is unsynchronized. The NTP algorithms on each computer interact to construct a Bellman-Ford shortest-path spanning tree, to minimize the accumulated round-trip delay to the stratum 1 servers for all the clients.[1]:20

只有层0到层 15是有效的。层 16 被用来指示一个设备是异步的。在每个计算机上的NTP算法互相作为形成一个 Bellman-Ford最短路径生成树,来最小化所有客户端与层一服务器之间积累的回路延迟。

Timestamps

The 64-bit timestamps used by NTP consist of a 32-bit part for seconds and a 32-bit part for fractional second, giving a time scale that rolls over every 232 seconds (136 years) and a theoretical resolution of 2−32 seconds (233 picoseconds). NTP uses an epoch of January 1, 1900. The first rollover occurs in 2036,[note 1] prior to the UNIX year 2038 problem.

被NTP使用的64位的时间戳由一个 32位的秒和一个32位的小数部分的秒组成,提供一个每232 (136年) 滚动一次时间范围和一个理论上的0, 2−32 秒(233皮秒)。NTP使用一个新纪元, 1900年1月1 日。第一次的翻转发生在 2036年,在 unix 年的 2038 年之前。

Future versions of NTP may extend the time representation to 128 bits: 64 bits for the second and 64 bits for the fractional-second. The current NTPv4 format has support for Era Number and Era Offset, that when used properly should aid fixing date rollover issues. According to Mills, "the 64 bit value for the fraction is enough to resolve the amount of time it takes a photon to pass an electron at the speed of light. The 64 bit second value is enough to provide unambiguous time representation until the universe goes dim."[7][note 2]

NTP Server的更多相关文章

  1. 创建一个Windows的NTP Server

    搭建一个VMware vRealize Suite的时候遇见了不少时间同步的问题, 实验室里网络与外界隔绝, 不能使用公网的NTP服务器, 所以使用文中的方法自己搭建了一个. 蛮好用的. Creati ...

  2. linux 下使rdate命令支持ipv6 ntp server 同步时间

    如果使用linux 下,busybox自带的rdate命令 去ipv6 的ntp server 同步时间的话,会提示invalid argument :无效参数. 那么现在下载rdate的源码并对其进 ...

  3. 设置新时间校正服务器NTP SERVER

    时间校正服务器IP : 10.*.*.* 适用系统:windows server 2008/windows 7 net stop w32time net start w32time w32tm /qu ...

  4. Linux 上配置 NTP SERVER

    在CENTOS 6.2上面安装配置NTP SERVER 安装NTP:yum install ntp 配置时间源vi /etc/ntp.confserver 210.72.145.44server nt ...

  5. VMware ESXi 5.5无法与Windows 2012 NTP Server同步时间

    这次笔者需要面对的环境对时间的同步有比较高的要求, 而虚拟化的环境中时间是比较容易出问题的, 您可以参考上一篇博文为什么Domain controller上的time synchronization非 ...

  6. Ubuntu 配置NTP Server

    Ubuntu安装NTP Server很简单,分位3步走: 第一步:安装NTP root@cephadmin:~/ceph-cluster# apt-get install ntp Reading pa ...

  7. shell脚本安装ntp server 服务

    ##############################Deploy ntp server ######################## echo "start deploy ntp ...

  8. win2003系统同步Linux ntp server批处理

    最后更新时间: 2018/12/15 一般windows配置时间服务器,只需要在windows系统右下角,点时间,里面配置好对应NTP服务器地址就行, 至多再修改一下注册表 HKEY_LOCAL_MA ...

  9. centos7 ntp server & samba

    最近公司内部一个需求:必须 Linux建个 ntp server ,并且 Windows可以net time \\ip 访问. 想要解决问题,还得解决前置问题. 服务器不能上网,无法直接访问外部 yu ...

  10. ubuntu NTP server 搭建

    ubuntu server ntp时间同步服务器安装及使用一.服务端1 apt-get install ntp 2 安装后默认启动服务,如果没有启动,启动之. /etc/init.d/ntp star ...

随机推荐

  1. SQL语句之 知识补充

    SQL语句之 知识补充 一.存储过程 运用SQL语句,写出一个像函数的模块,这就是存储过程. 需求: 编写存储过程,查询所有员工 -- 创建存储过程(必须要指定结束符号) -- 定义结束符号 DELI ...

  2. python opencv3 静态图片检测人脸

    git:https://github.com/linyi0604/Computer-Vision # coding:utf-8 import cv2 filename = "../data/ ...

  3. luoguP4492 [HAOI2018]苹果树 组合计数 + dp

    首先,每个二叉树对应着唯一的中序遍历,并且每个二叉树的概率是相同的 这十分的有用 考虑\(dp\)求解 令\(f_i\)表示\(i\)个节点的子树,根的深度为\(1\)时,所有点的期望深度之和(乘\( ...

  4. 2018haoi总结

    AM T1 写了40分,有50分的暴力分,只看到n=1能用费马小定理,没看到还有一个mod质数也能用费马小定理的10分. AM T2 写了10分,60分异或方程求自由元. AM T3 现在还没搞清楚题 ...

  5. [UOJ240]aliens

    学习了一下凸优化DP,感觉挺有意思的 首先把所有点对称到左下角,然后以每个点为顶点画等腰直角三角形,将被覆盖的点去掉,现在所有点从左上到右下横纵坐标都是递增的,设坐标为$(x_{1\cdots M}, ...

  6. PYQT控件使用

    QtGui.QComboBox .addItem(string)#添加字符串项到Item.addItems(list)#添加列表或元组元素到Item.clear()#清除所有Item.clearEdi ...

  7. Poj 题目分类

    初期:一.基本算法:     (1)枚举. (poj1753,poj2965)     (2)贪心(poj1328,poj2109,poj2586)     (3)递归和分治法.     (4)递推. ...

  8. 基础设施即服务 PaaS, 平台即服务 IaaS

    基础设施即服务(Infrastructure as a Service,简称IaaS)是消费者使用处理.储存.网络以及各种基础运算资源,部署与执行操作系统或应用程序等各种软件. 客户端无须购买服务器. ...

  9. 使用 soapUI 测试 REST 服务

    REST 服务介绍 REST(Representational State Transfer)是 Roy Fielding 博士在 2000 年提出的一种新的软件架构风格,它以资源(resource) ...

  10. 使用Bootstrap 3开发响应式网站实践01,前期准备、导航区域等

    "使用Bootstrap 3开发响应式网站实践"系列,将使用Bootstrap 3.2制作一个自适应网站,无论是在电脑.平板,还是手机上,都呈现比较好的效果.在电脑浏览器上的最终效 ...