NTP(Network Time Protocol)协议详解

news/2024/10/19 6:17:39/

一、NTP的基本概念:

NTP(Network Time Protocol)------网络时间协议-----应用层协议,用来在分布式时间服务器和客户端之间进行时间同步。

二、采用NTP的目的:

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

三、NTP的三个优点:

  1. 采用分层的方法来定义时钟的准确性,可以迅速同步网络中各台设备的时间。
  2. 支持访问控制和MD5验证
  3. 可以选择采用单播、广播或组播发送协议报文。

四、NTP的工作原理:

在Device A和Device B的系统时钟同步之前,Device A的时钟设定为10:00:00am,Device B的时钟设定为11:00:00am。Device B為NTP時鐘服務器。
在这里插入图片描述
(1)Device A发送一个NTP报文给Device B,该报文带有它离开Device A时的时间戳,该时间戳为10:00:00am(T1)。
(2)当此NTP报文到达Device B时,Device B加上自己的时间戳,该时间戳为11:00:01am(T2)。
(3)当此NTP报文离开Device B时,Device B再加上自己的时间戳,该时间戳为11:00:02am(T3)。
(4) 当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小时。

五、NTP的工作模式:

1,客户端/服务器模式

NTP服务器自动工作在服务器模式,并向NTP客户端发送应答报文
NTP客户端进行时钟过滤和选择,并同步到优选的NTP服务器。
在这里插入图片描述

2,对等体模式

NTP对等体模式,可以让两个设备互相同步时间,但是仍然会区分主动对等体和被动对等体,这种模式主要在NTP服务器常用。
在这里插入图片描述

3,广播模式

未来可能在物联网会常用,NTP广播服务器向所有NTP客户端广播报文后,客户端收到报文,发起服务器\客户端请求模式。
在这里插入图片描述

4,组播模式

NTP组播模式主要工作在服务器\客户端模式,这种模式实际应用相对较少。
在这里插入图片描述

六、UTC与GMT的区别:

1)格林威治标准时间GMT

格林尼治平时(Greenwich Mean Time,GMT),又称为格林尼治标准时间。
格林尼治平时的正午是指当平太阳横穿格林尼治子午线时(也就是在格林尼治上空最高点时)的时间。自1924年2月5日开始,格林尼治天文台负责每隔一小时向全世界发放调时信息。由于地球每天的自转是有些不规则的,而且正在缓慢减速,因此格林尼治平时基于天文观测本身的缺陷,已经被原子钟报时的协调世界时(UTC)所取代。

2)世界协调时间UTC

UTC指的是Coordinated Universal Time- 世界协调时间(又称世界标准时间、世界统一时间),是经过平均太阳时(以格林威治时间GMT为准)、地轴运动修正后的新时标以及以「秒」为单位的国际原子时所综合精算而成的时间,计算过程相当严谨精密,因此若以「世界标准时间」的角度来说,UTC比GMT来得更加精准。其误差值必须保持在0.9秒以内,若大于0.9秒则由位于巴黎的国际地球自转事务中央局发布闰秒,使UTC与地球自转周期一致。所以基本上UTC的本质强调的是比GMT更为精确的世界时间标准,不过对于现行表款来说,GMT与UTC的功能与精确度是没有差别的。


http://www.ppmy.cn/news/12834.html

相关文章

【Linux】六、Linux 基础IO(二)|重定向|如何理解 Linux一切皆文件|缓冲区

目录 五、重定向 5.1 什么是重定向 5.2 系统调用 dup2 5.3 三种重定向测试 5.3.1 输出重定向(>) 5.3.2 追加重定向(>>) 5.3.3 输入重定向(<) 5.4 父子进程拷贝问题 六、如何理解 Linux一切皆文件 七、缓冲区 7.1 认识缓冲区 7.2 缓冲区的刷新策略 …

【微信小程序】动态设置导航栏标题

&#x1f3c6;今日学习目标&#xff1a;第十八期——动态设置导航栏标题 &#x1f603;创作者&#xff1a;颜颜yan_ ✨个人主页&#xff1a;颜颜yan_的个人主页 ⏰预计时间&#xff1a;25分钟 &#x1f389;专栏系列&#xff1a;我的第一个微信小程序 文章目录前言使用配置文件…

vue组件传值方式有哪些

Vue 作为一个轻量级的前端框架&#xff0c;核心两大特性就是响应式编程和组件化。 本文针对组件之间传值做详细讲解。 Vue就是由一个一个的组件构成的&#xff0c;组件化是它的精髓&#xff0c;也是最强大的功能之一。而组件实例的作用域是相互独立的&#xff0c;这就意味着不…

(第五章)OpenGL超级宝典学习:缓冲

缓冲 前言 本篇在讲什么 关于OpenGL数据缓冲的相关内容 本篇适合什么 适合初学OpenGL的小白 想了解OpenGL缓冲对象的同学 本篇需要什么 对C语法有简单认知 对OpenGL有简单认知 最好是有OpenGL超级宝典蓝宝书 依赖Visual Studio编辑器 本篇的特色 具有全流程的图文…

PHP MySQL 插入多条数据

使用 MySQLi 和 PDO 向 MySQL 插入多条数据 mysqli_multi_query() 函数可用来执行多条SQL语句。 以下实例向 "MyGuests" 表添加了三条新的记录: 实例 (MySQLi - 面向对象) <?php $servername "localhost"; $username "username"; $pas…

C++入门:命名空间

目录 一.前言 C关键字(C98)总览&#xff1a; 一.作用域 二.命名冲突 三.命名空间 命名空间定义&#xff1a; 命名空间的嵌套定义&#xff1a; 四.命名空间的使用 五.命名空间的本质 一.前言 C是从C语言延伸出来的编程语言&#xff0c;C兼容了C语言百分之九十九的语法…

linux服务管理

1.service 用法&#xff1a;service 服务名 start/stop/restart 实例&#xff1a; 重启网络服务&#xff1a; #service network retart 关闭ftp服务&#xff1a; #service vsftpd stop 打开httpd服务 #service httpd start 2.chkconfig 功能&#xff1a;能够为不同的系统级别设…

nginx 伪静态 Rewrite 正则

正则表达式匹配 &#xff1a; ~ 为区分大小写匹配~* 为不区分大小写匹配!~ 和 !~*分别为区分大小写不匹配及不区分大小写不匹配 文件及目录匹配&#xff0c;其中&#xff1a; -f和!-f用来判断是否存在文件-d和!-d用来判断是否存在目录-e和!-e用来判断是否存在文件或目录-x和!-x…