NTP(Network Time Protocol,网络时间协议)是由RFC 1305定义的时间同步协议,用来在分布式时间服务器和客户端之间进行时间同步。NTP基于UDP报文进行传输,使用的UDP端口号为123。

使用NTP的目的是对网络内所有具有时钟的设备进行时钟同步,使网络内所有设备的时钟保持一致,从而使设备能够提供基于统一时间的多种应用。

对于运行NTP的本地系统,既可以接收来自其他时钟源的同步,又可以作为时钟源同步其他的时钟,并且可以和其他设备互相同步。

NTP工作原理

NTP的基本工作原理如图所示。Device A和Device B通过网络相连,它们都有自己独立的系统时钟,需要通过NTP实现各自系统时钟的自动同步。为便于理解,作如下假设:

在Device A和Device B的系统时钟同步之前,Device A的时钟设定为10:00:00am,Device B的时钟设定为11:00:00am。

Device B作为NTP时间服务器,即Device A将使自己的时钟与Device B的时钟同步。

NTP报文在Device A和Device B之间单向传输所需要的时间为1秒。

系统时钟同步的工作过程如下:

Device A发送一个NTP报文给Device B,该报文带有它离开Device A时的时间戳,该时间戳为10:00:00am(T1)。

当此NTP报文到达Device B时,Device B加上自己的时间戳,该时间戳为11:00:01am(T2)。

当此NTP报文离开Device B时,Device B再加上自己的时间戳,该时间戳为11:00:02am(T3)。

当Device A接收到该响应报文时,Device A的本地时间为10:00:03am(T4)。

至此,Device A已经拥有足够的信息来计算两个重要的参数:

NTP报文的往返时延Delay=(T4-T1)-(T3-T2)=2秒。

Device A相对Device B的时间差offset=((T2-T1)+(T3-T4))/2=1小时。

这样,Device A就能够根据这些信息来设定自己的时钟,使之与Device B的时钟同步。

NTP的报文格式

NTP有两种不同类型的报文,一种是时钟同步报文,另一种是控制报文。控制报文仅用于需要网络管理的场合,它对于时钟同步功能来说并不是必需的,这里不做介绍。

主要字段的解释如下:

l LI(Leap Indicator):长度为2比特,值为“11”时表示告警状态,时钟未被同步。为其他值时NTP本身不做处理。

l VN(Version Number):长度为3比特,表示NTP的版本号,目前的最新版本为3。

l Mode:长度为3比特,表示NTP的工作模式。不同的值所表示的含义分别是:0未定义、1表示主动对等体模式、2表示被动对等体模式、3表示客户模式、4表示服务器模式、5表示广播模式或组播模式、6表示此报文为NTP控制报文、7预留给内部使用。

l Stratum:系统时钟的层数,取值范围为1~16,它定义了时钟的准确度。层数为1的时钟准确度最高,准确度从1到16依次递减,层数为16的时钟处于未同步状态,不能作为参考时钟。

l Poll:轮询时间,即两个连续NTP报文之间的时间间隔。

l Precision:系统时钟的精度。

l Root Delay:本地到主参考时钟源的往返时间。

l Root Dispersion:系统时钟相对于主参考时钟的最大误差。

l Reference Identifier:参考时钟源的标识。

l Reference Timestamp:系统时钟最后一次被设定或更新的时间。

l Originate Timestamp:NTP请求报文离开发送端时发送端的本地时间。

l Receive Timestamp:NTP请求报文到达接收端时接收端的本地时间。

l Transmit Timestamp:应答报文离开应答者时应答者的本地时间。

l Authenticator:验证信息。

NTP的工作模式

设备可以采用多种NTP工作模式进行时间同步:

客户端/服务器模式

对等体模式

广播模式

组播模式

用户可以根据需要选择合适的工作模式。在不能确定服务器或对等体IP地址、网络中需要同步的设备很多等情况下,可以通过广播或组播模式实现时钟同步;客户端/服务器和对等体模式中,设备从指定的服务器或对等体获得时钟同步,增加了时钟的可靠性。
1. 客户端/服务器模式

在客户端/服务器模式中,客户端向服务器发送时钟同步报文,报文中的Mode字段设置为3(客户模式)。服务器端收到报文后会自动工作在服务器模式,并发送应答报文,报文中的Mode字段设置为4(服务器模式)。客户端收到应答报文后,进行时钟过滤和选择,并同步到优选的服务器。

在该模式下,客户端能同步到服务器,而服务器无法同步到客户端。

2. 对等体模式

在对等体模式中,主动对等体和被动对等体之间首先交互Mode字段为3(客户端模式)和4(服务器模式)的NTP报文。之后,主动对等体向被动对等体发送时钟同步报文,报文中的Mode字段设置为1(主动对等体),被动对等体收到报文后自动工作在被动对等体模式,并发送应答报文,报文中的Mode字段设置为2(被动对等体)。经过报文的交互,对等体模式建立起来。主动对等体和被动对等体可以互相同步。如果双方的时钟都已经同步,则以层数小的时钟为准

3. 广播模式

在广播模式中,服务器端周期性地向广播地址255.255.255.255发送时钟同步报文,报文中的Mode字段设置为5(广播模式)。客户端侦听来自服务器的广播报文。当客户端接收到第一个广播报文后,客户端与服务器交互Mode字段为3(客户模式)和4(服务器模式)的NTP报文,以获得客户端与服务器间的网络延迟。之后,客户端就进入广播客户端模式,继续侦听广播报文的到来,根据到来的广播报文对系统时钟进行同步。

4. 组播模式

在组播模式中,服务器端周期性地向用户配置的组播地址(若用户没有配置组播地址,则使用默认的NTP组播地址224.0.1.1)发送时钟同步报文,报文中的Mode字段设置为5(组播模式)。客户端侦听来自服务器的组播报文。当客户端接收到第一个组播报文后,客户端与服务器交互Mode字段为3(客户模式)和4(服务器模式)的NTP报文,以获得客户端与服务器间的网络延迟。之后,客户端就进入组播客户模式,继续侦听组播报文的到来,根据到来的组播报文对系统时钟进行同步。

esxi ntp服务器地址_NTP的工作原理以及工作模式相关推荐

  1. win7系统配置时间服务器,win7系统配置ntp服务器地址

    win7系统配置ntp服务器地址 内容精选 换一换 支持.SFS容量型文件系统:支持为SFS容量型文件系统配置多个VPC,以使归属于不同VPC的云服务器,只要所属的VPC被添加到文件系统的VPC列表下 ...

  2. 电子邮件服务器的工作原理,电子邮件工作原理 电子邮件有什么特点呢

    电子邮件是交流信息的一种通信方式,可以用来传输文件和图片,还是非常方便的.很多人对电子邮件的工作原理感到好奇,电子邮件工作原理是怎样的?电子邮件有什么特点呢? 电子邮件工作原理 电子邮件工作原理 电子 ...

  3. Linux时间同步+国内常用的NTP服务器地址

    当Linux服务需要时间戳的时候,时间同步就显得十分重要.这里介绍下,最近我使用的一个同步命令. # ntpdate s1a.time.edu.cn 国内常用的NTP地址 210.72.145.44 ...

  4. 两个可用的ntp服务器地址

    ntp.sjtu.edu.cn 202.120.2.101 (上海交通大学网络中心NTP服务器地址) cn.pool.ntp.org 转载于:https://blog.51cto.com/xoyabc ...

  5. 修改win10 ntp服务器地址,修改win10 ntp服务器地址

    修改win10 ntp服务器地址 内容精选 换一换 用户可以配置.修改和查看系统时区及NTP服务器相关信息.目前只支持使用操作系统为Linux的外部NTP服务器. 以NTP服务器.DNS服务器的操作系 ...

  6. win10修改ntp服务器地址,修改win10 ntp服务器地址

    修改win10 ntp服务器地址 内容精选 换一换 TCP协议适用于注重可靠性,对数据准确性要求高,速度可以相对较慢的场景,如文件传输.发送或接收邮件.远程登录等.您可以添加一个TCP监听器转发来自T ...

  7. xp系统设置ntp服务器,xp设置ntp服务器地址

    xp设置ntp服务器地址 内容精选 换一换 HSS默认会将防护目录下的文件备份在添加防护目录时添加的本地备份路径下(被排除的子目录和文件类型不会备份),为防止备份在本地的文件被攻击者破坏,请您启用远端 ...

  8. 国内常用且有效的NTP服务器地址及IP(2016年2月)

    国内常用且有效的NTP服务器地址及IP(2016年2月)

  9. xp系统电脑ntp服务器,xp设置ntp服务器地址

    xp设置ntp服务器地址 内容精选 换一换 通过云服务器或者外部镜像文件创建私有镜像时,如果云服务器或镜像文件所在虚拟机的网络配置是静态IP地址时,您需要修改网卡属性为DHCP,以使私有镜像发放的新云 ...

最新文章

  1. Vue使用watch监听一个对象中的属性
  2. qunee for html5 api,Qunee for HTML5
  3. 自定义RecyclerView动画——实现remove飞出效果
  4. 五、Spring中的@Import注解
  5. 现实世界的Windows Azure:就Metanga采访MetraTech公司CEO,Scott Swartz先生
  6. 五一节快乐~ 顺便写给博友【小诺的网络技术课堂】 小盆友~
  7. 在Linux上运行procmem和procrank
  8. 181013词霸扇贝有道每日一句
  9. jenkins集成kettle
  10. XML解析——Java中XML的四种解析方式
  11. 如何将amr文件转成mp3格式?
  12. 驱动开发:Win10枚举完整SSDT地址表
  13. rasp java tomcat_Java安全之JNI绕过RASP
  14. Google自动翻译工具:对接谷歌翻译接口,实现本地化运行
  15. Hbase的JavaAPI
  16. abp 链接本地mysql_abp vNext 使用Mysql 数据库
  17. node js批量导出PDF 导出压缩为zip 拆分设计 文件压缩 批量导出设计
  18. 第十二届蓝桥杯省赛 C/C++大学B组 试题G:砝码称重
  19. Flutter之Card组件
  20. 【Grades Crawler】利用python编写爬虫 爬取西电教务处成绩并本地保存

热门文章

  1. R语言单因素重复测量方差分析(one-way repeated measures ANOVA)实战
  2. python使用fpdf创建pdf并写入hello world
  3. R语言卡方分布函数Binomial Distribution(dchisq, pchisq, qchisq rchisq)实战
  4. python使用imbalanced-learn的BorderlineSMOTE方法进行上采样处理数据不平衡问题
  5. 基于TF-IDF编码进行文本聚类分析:文档成对相似性计算、层次聚类(链接矩阵、树形图dendrogram绘制、聚类标签)
  6. Android APP性能优化
  7. 函数重载(overload)
  8. windows10中git 的下载安装
  9. 【英文文本分类实战】之四——词典提取与词向量提取
  10. 1. 训练集、开发集、测试集(Train/Dev/Test sets)