NTP算法
网络时间协议
由特拉华大学的David L. Mills热心提供。http://www.eecis.udel.edu/~mills mills@udel.edu
由Reinhard v. Hanxleden CAU Kiel稍微改编。rvh@informatik.uni-kiel.de
(一)引言
(1)网络时间协议( NTP)使得在互联网上主机和路由器的时钟同步。
(2)有超过十万的网络时间协议部署在互联网上其支流遍布世界各地。
(3)在广域网上,它提供了名义上低于几毫秒的精度;它为局域网提供了亚毫秒的精度;并且如果使用一个精密时间发生器(如铯震荡器或GPS接收器)的话,它能提供亚微秒的误差。
(4)Unix的NTP守护进程可以移植到现今存在的几乎每一个工作站和服务器平台上面(从PC到Cray),并且适用于UNIX,Windows,VMS和嵌入式等系统。
(5)接下来介绍一般概述了NTP架构、协议和算法。
(6)数据包括在1997年在互联网上的关于NTP客户端和服务器的一份调查中。
(二)同步时间的必要性
(1)股票市场出售和购买订单,并确认时间戳
(2)网络故障隔离、报告和修复
(3)网络监控,测量和控制
(4)分布式多媒体流同步
(5)RPC最一次性交易、重新防序和序列号解疑
(6)研究实验装置,测量和控制
(7)密钥管理和寿命控制
(三)NTP太空舱摘要
(1)初期的(地层1 )服务器同步,以国家的时间标准,通过广播,卫星和调制解调器
(2)中级的(地层2,…)服务器和客户端与初级服务器的同步,通过分层子网络
(3)客户端和服务器主/从运行,加密或无加密认证的对称或组播模式
(4)由多余的服务器和不同的网络路径保证的可靠性
(5)工程算法:减少抖动,减轻多种来源,并避免不当操作服务器
(6)系统时钟在时间和频率上是准确的,这可以使用一种自适应算法顺应网络时间抖动和时钟振荡器的频率漂移来达到
(四)NTP配置
工作站a 客户端b
对伙伴(S2)
客户端c
(1)工作站使用有多部服务器的组播模式
(2)部门服务器与对方之间采用带有多重服务器和对称模式的客户机/服务器模式
(3)校园服务器与对方采用带有多达6个不同的外部初级服务器和对称方式的客户机/服务器模式和外部二级(好友)服务器
(五)NTP怎样工作
(1)多重同步器提供冗余性和多样性
(2)时钟过滤器从一个窗口的八个时钟偏移样本中选择最佳的
(3)交叉和聚类算法挑选最好的被认为是准确的和已排除故障的子服务器
(4)组合算法计算出最精确的偏移的加权平均
(5)相位/频率锁反馈环路训练当地时钟时间和频率,以达到最大限度的准确性和稳定性
(六)NTP的数据流分析
(1)每个服务器计算服务器变量误差,延迟和散射(同步子树的根),其中
误差:时钟差异
延迟:来回通信延迟
散射:时钟差异平方的加权和
(2)在每个NTP消息到来时,从时间戳和时钟滤波算法更新误差,延迟,散射和滤波误差(NTPv4)
(3)在系统调查的间隔时间,进行时钟选择,并结合算法更新系统变量,,,和
(4)散射和随时间增长,其速度取决于指定频率公差。
(七)时钟滤波算法
(1)某一特定同行,时钟过滤改善误差度量
(2)最准确的偏移量在最低延迟的基础上度量(楔形散点图的顶点)
正确的时间θ必须属于楔形)
为上一个八延迟度量最小值的估计而为偏移和延迟的输出
每个输出只能用作一次,而且必须比上一个输出更近
(3)距离度量基于延迟,频率公差和自上次测量来的时间
(八)时钟滤波算法的性能
(1)这些图显示出绝对的时钟偏移,横坐标表示美国东西海岸六天以来的路径
(左)为加工的绝对时间偏移样本
(右)经时钟滤波算法处理过的数据偏移样本
(2)该算法减少了大约十个因数的偏移误差
(3)该算法在消除尖峰方面特别有效
(九)交叉算法
(1)相交算法能够消除falsetickers,而保留truechimers
(2)DTS正确性区间是交集,这个交集包含了区间最大中的点
(3)NTP算法要求的区间的中点在交集当中
(i)最初,设置falsetickers和计数为零
从最左边端点起开始扫描:在每一低端点对加一,对每一个高端点减一,每一个中点,对加一
如果, 宣告成功,并退出程序
(ii)同样地,从最右边的端点开始做
如果成功未经宣布,对加一并从做一次
如果,则宣布失败
(4)偏移量在区间中点的同级为truechimers
(十)聚类算法
(十一)典型的本地时钟相位偏移(调查)
当地时钟绝对相位偏移的直方图
NTP版本2和3 调查19,873个同级
由于可能不同时,530等于零的偏移被删除
664大于128ms的偏移被删除,也是因为可能不同时
其余18,679偏移:中值为7.45ms,平均为15.87ms
(十二)典型的本地时钟频率偏移(调查)
地方绝对时钟频率偏移的直方图
NTP版本2和3 调查19,873个同级
396个等于零的偏移被删除,因为可能乱真(自我同步)
593个大于500ppm的偏移被删除,因为可能不一致
其余18884个偏移:中值为38.6ppm,平均78.1ppm
(十三)在全球互联网上典型的NTP服务器的性能
(1)表显示调查的天数,绝对偏移平均数,RMS和最大绝对误差,其中最大误差超过了1 ,5 ,10和50ms至少一次
(2)服务器代表局域网,国内的广域网和世界各地的互联网
(3)结果表示了所有的原因,包括软件升级和重新启动
(十四)一个繁忙的NTP服务器的一天生活
(1)NTP的初级(地层1)服务器是SUN IPC的运行,它运行的是SunOs4.1.3 并支持分散在世界各地的734个客户
(2)这台机器支持NFS、 NTP、RIP、IGMP和大量的印表机,收音机时钟和一个8串口复用器
(3)平均输入分组率是6.4包/秒,每个客户相当于平均民调间隔157秒。
(4)每个输入包的生成一个平均的0.64输出包,并要求共2.4MS的CPU时间作为输入/输出处理
(5)合计,NTP服务要求CPU时间的1.54%,并产生10.5,608位包每秒,或T1线路的0.41%
(6)得出的结论是,即使机器特别慢,可以支持大量的客户并且对其它网络服务没有明显退化
(十五)同级配置
(1)该表显示,同级配置服务器POGO的
(2)每个同级,表列出了:
偏移
延迟
散射
同时距离
(十六)参考时钟源
(1)在调查的38,722个同级中,发现1733初级源和备份外部参考源
(2)231无线/卫星/调制解调器初级源。
47个GPS卫星(全球),GOES卫星(西半球)
57 个wwvb电台(美国)
17 个wwv电台(美国)
63个dcf77电台(欧洲)
6个MSF电台(英国)
5个CHU电台(加拿大)
7个调制解调器(NIST和USNO (美国),PTB (德国),NPL (英国))
25个其他的(铯时钟、精密度PPS源,等)
(3)1,502个地方时钟备用来源(当其他来源失效时使用)
(4)由于种种原因,1733中的88个时钟源在同一时间的调查中,出现下跌。
(十七)1997年12月UDel的计时设施
(1)铯时间振荡器由美国海军天文台校准并且由美国LORAN-C链和GPS连续地检查
(2)NTP主要时间服务器与ASCII、 PPS和IRIG-B同步,所有的都带有内核校正精密计时
(3)NTP次要服务器(没显示)包括SunOS 4/5、Ultrix 4、OSF/1、HP-UX、Cisco、Bancomm和Fuzzball (半闲置状态)
(十八)精密度计时设备
Austron 2200A GPS接收器
Austron 2000 LORAN-C接收器
Spectracom 8170 WWVB接收器
惠普5061A铯射线频率标准器
(十九)紧压纳秒
(1)图显示了Austron 2201 GPS接收器和HP 5061A铯时钟之间的测量残差
(2)使用LORAN-C接收器的GPS接收器是稳定的,因为LORAN-C接收器提高准确性到大约50 ns,尽管有退化进入到对公众使用的GPS中
(二十)CAU Kiel也含有主要参考源
(1)time1.informatik.uni-kiel.de是地层1 NTP服务器
(2)它连接在一个dcf77接收器上,接收器解码dcf77信号并且拥有一个(温度补偿)石英作为备用设备
(3)time2.informatik.uni-kiel.de是对time1的备份,但是它本身没连接到DCF77接收器上
(二十一)太阳从未在NTP上设置
(1)NTP被认为在互联网上是持续时间最长,连续地运作,普遍存在地可利用的协议
(2)USNO和NIST和在其它国家的等价物使得NTP主要服务器直接与国际标准铯时钟和GPS地同步
(3)在澳洲、加拿大、智利、法国、德国、以色列、意大利、荷兰、日本、挪威、西班牙、瑞典、瑞士、英国和美国有230台互联网主要服务器,这个数字还在增长
(4)全世界有超过100,000的互联网次要服务器和客户端
(5)全国和地方服务供应者有BBN、MCI、Sprint、Alternet等
(6)代办商和组织: 美国气象局、美国财政部、联邦税务局、PBS、Merrill Lynch、Citicorp、GTE、SUN、DEC、HP等
(7)几个专用网拥有超过10,000台的NTP服务器和客户端, GTE宣告要订购30,000台NTP工作站和个人计算机
(二十二)NTP网上资源
(1)NTP规格文件
互联网(草稿) NTP标准规格RFC-1305
简单的NTP (SNTP) RFC-2030NTP4个版本的文章和报告在
http://www.eecis.udel.edu/~mills
ANSI,ITU,POSIX在考虑中
(2)NTP网址为http://www.ntp.org/
NTP版本3和版本4软件和HTML文献
远距离监控、控制和表现评估的应用程序
二十二个体系和操作系统
支持资源
公开NTP时间服务器名单(主要和次要)
NTP新闻组和常见问题解答纲要
讲解、提示和参考书目
其他NTP软件的链接
(二十三)详细信息
(1)网络时间协议(NTP) : http://www.ntp.org/
当前NTP版本3和4软件和文献
其他来源和有趣的常见问题解答和链接:placesDavid L. Mills:
http://www.eecis.udel.edu/~mills
纸、在附言和PDF格式的报告和备忘录
简报以HTML、附言、PowerPoint和PDF格式
合作资源硬件、软件和文献
歌曲、相集和餐后演讲剧本
FTP服务器ftp.udel.edu (客栈或ntp目录)
当前NTP版本3和4软件和文献贮藏库
合作资源贮藏库
相关项目描述和简报
看见“当前研究计划描述和简报“在
http://www.eecis.udel.edu/~mills/status.htm上------------------------------------------------------------------------------------------
一同事毕业设计翻译的文章^_^
NTP算法的更多相关文章
- 补充NTP知识的初中高
前言 网上流传阿里穆工对NTP知识梳理的初级和中级版本.我从时钟服务器厂商在实践中的经验对穆工的文档进行再次整理和补充,希望对使用此设备的客户和对此有兴趣的同学给出一些指引. 个人认为对知识的了解应该 ...
- NTP Server
Network Time Protocol互联网时间协议 NTP is intended to synchronize all participating computers to within a ...
- [转]网络时间的那些事及 ntpq 详解
Gentoo(也许其他发行版也是?)中 "ntpq -p" 的 man page 只有简短的描述:“打印出该服务器已知的节点列表和它们的状态概要信息.” 我还没见到关于这个命令的说 ...
- Windows Server 2016-Windows 时间服务概览
同步 Windows 时间服务 (W32Time) 的日期和时间的所有运行 Active Directory 域服务 (AD DS) 的计算机. 时间同步至关重要的许多 Windows 服务和的业务线 ...
- 命令行net time同步时间(内网)
首先还是推荐大家使用Internet时间来同步自己计算机的时间,这样做主要是方便,就是设置一个ntp服务器,我推荐下面的三个ntp服务器地址. time.asia.apple.com //亲测有效 a ...
- Kmeans算法的K值和聚类中心的确定
0 K-means算法简介 K-means是最为经典的基于划分的聚类方法,是十大经典数据挖掘算法之一. K-means算法的基本思想是:以空间中k个点为中心进行聚类,对最靠近他们的对象归类.通过迭代的 ...
- The Reflection And Amplification Attacks && NTP Reply Flood Attack Based On NTP
目录 . NTP简介 . NTP协议格式 . NTP Reflect反射漏洞和NTP协议的关系 . 漏洞触发的前提和攻击需要的步骤 . 针对漏洞的攻防思考 1. NTP简介 Network Time ...
- 一致性算法--Raft
分布式一致性算法--Raft 前面一篇文章讲了Paxos协议,这篇文章讲它的姊妹篇Raft协议,相对于Paxos协议,Raft协议更为简单,也更容易工程实现.有关Raft协议和工程实现可以参考这个链接 ...
- NTP工作机制及时间同步的方法
Network Time Protocol(NTP)是用来使计算机时间同步化的一种协议,它能够使计算机对其server或时钟源做同步化,它能够提供高精准度的时间校正,且可用加密确认的方式来防止恶毒的协 ...
随机推荐
- 线段树之Sum
题面: 给定一数列,规定有两种操作,一是修改某个元素,二是求区间的连续和. Input: 输入数据第一行包含两个正整数n,m(n<=100000,m<=500000),以下是m行, 每行有 ...
- SC命令(windows服务开启/禁用)
原文链接地址:https://blog.csdn.net/cd520yy/article/details/30976131 sc.exe命令功能列表: 1.更改服务的启动状态(这是比较有用的一个功能) ...
- windows主机防护
Netsh命令-修改网络IP设置 网络管理相关函数 Windows用户相关操作 SID(安全标识符) 策略其他说明 主机防护设置 命令行添加防火墙 防火墙规则 使用SetupDI* API列举系统中的 ...
- Linux内核分析第二周学习博客——完成一个简单的时间片轮转多道程序内核代码
Linux内核分析第二周学习博客 本周,通过实现一个简单的操作系统内核,我大致了解了操作系统运行的过程. 实验主要步骤如下: 代码分析: void my_process(void) { int i = ...
- 【codechef】Children Trips
Portal -->CC_Children Trips Solution (英文题解看得真爽qwq不过写的好详细啊ovo) 首先这题有一个很重要的条件就是边权是\(1\)或者\(2\),所以虽然 ...
- kotlin Hello World 以及关键字
hello world:(支持函数式编程,不需要放到 class 中) fun main(args: Array<String>) { println("Hello World& ...
- nova-api源码分析(WSGI server的创建及启动)
源码版本:H版 一.前奏 nova api本身作为一个WSGI服务器,对外提供HTTP请求服务,对内调用nova的其他模块响应相应的HTTP请求.分为两大部分,一是服务器本身的启动与运行,一是加载的a ...
- [DeeplearningAI笔记]序列模型2.9情感分类
5.2自然语言处理 觉得有用的话,欢迎一起讨论相互学习~Follow Me 2.9 Sentiment classification 情感分类 情感分类任务简单来说是看一段文本,然后分辨这个人是否喜欢 ...
- 洛谷P1124 文件压缩
https://www.luogu.org/problem/show?pid=1124 题目背景 提高文件的压缩率一直是人们追求的目标.近几年有人提出了这样一种算法,它虽然只是单纯地对文件进行重排,本 ...
- 获取Spring的ApplicationContext的几种方式
Application Context定义 简单来说就是Spring中的高级容器,可以获取容器中的各种bean组件,注册监听事件,加载资源文件等功能. 具体定义可以参考官网:https://sprin ...