NTP协议介绍

知识改变命运,技术就是要分享,有问题随时联系,免费答疑,欢迎联系!   

网络时间协议NTP(Network Time Protocol)是TCP/IP协议族里面的一个应用层协议,用来使客户端和服务器之间进行时钟同步,提供高精准度的时间校正。NTP服务器从权威时钟源(例如原子钟、GPS)接收精确的协调世界时UTC,客户端再从服务器请求和接收时间。
NTP基于UDP报文进行传输,使用的UDP端口号为123。

为什么时钟同步很重要?

出于诸多原因,精确的时间对于网络至关重要,比如:

  • 网络管理:从不同网络设备采集来的日志信息进行分析时,需要以时间作为参照依据。如果不同设备上的系统时间不一致,会因先后顺序等问题给故障定位带来障碍。
  • 计费系统:计费业务对于时间尤其敏感,要求所有设备的时间保持一致,否则会引起计费不准确,导致用户质疑、投诉等。
  • 协同处理:多个系统协同处理同一个复杂事件,为保证正确的执行顺序,多个系统必须参考同一时钟。
  • 系统时间:某些应用或服务需要准确的时间来标记用户登录、交易等操作信息,确保可追溯记录。

因此有一个统一的标准时间对于网络而言意义重大。

NTP就是用来使网络中的各个主机时钟同步的一种协议,他把主机的时钟同步到协调世界时UTC,其精度在LAN网络内可达1毫秒内,在WAN网络上可以达到几十毫秒内。

NTP协议发展历史

NTP是由美国Delaware大学David L .Mills教授设计的,是最早用于网络中时钟同步的标准之一。NTP是从时间协议和ICMP时间戳报文演变而来,NTP的版本演进如下所示。


NTP发展历史

NTP时钟层级

NTP允许客户端从服务器请求和接收时间,而服务器又从权威时钟源(例如原子钟、GPS)接收精确的协调世界时UTC。

NTP以层级来组织模型结构,层级中的每层被称为Stratum。通常将从权威时钟获得时钟同步的NTP服务器的层数设置为Stratum 1,并将其作为主时间服务器,为网络中其他的设备提供时钟同步。而Stratum 2则从Stratum 1获取时间,Stratum 3从Stratum 2获取时间,以此类推。时钟层数的取值范围为1~16,取值越小,时钟准确度越高。层数为1~15的时钟处于同步状态;层数为16的时钟被认为是未同步的,不能使用的。


NTP模型结构

NTP同步原理

NTP最典型的授时方式是Client/Server方式,如下图所示。


NTP同步原理

  1. 客户端首先向服务端发送一个NTP请求报文,其中包含了该报文离开客户端的时间戳t1;
  2. NTP请求报文到达NTP服务器,此时NTP服务器的时刻为t2。当服务端接收到该报文时,NTP服务器处理之后,于t3时刻发出NTP应答报文。该应答报文中携带报文离开NTP客户端时的时间戳t1、到达NTP服务器时的时间戳t2、离开NTP服务器时的时间戳t3;
  3. 客户端在接收到响应报文时,记录报文返回的时间戳t4。

客户端用上述4个时间戳参数就能够计算出2个关键参数:

  • NTP报文从客户端到服务器的往返延迟delay。

  • 客户端与服务端之间的时间差offset。根据方程组:

可以解得时间差为:

NTP客户端根据计算得到的offset来调整自己的时钟,实现与NTP服务器的时钟同步。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/440098.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

浅谈碳化硅MOSFET TO-247封装单管引入开尔文管脚必要性

相较于传统的硅MOSFET和硅IGBT 产品,基于宽禁带碳化硅材料设计的碳化硅 MOSFET 具有耐压高、导通电阻低,开关损耗小的特点,可降低器件损耗、减小产品尺寸,从而提升系统效率。而在实际应用中,我们发现:带辅助…

Navicat安装破解教程

蓝奏云下载地址https://wws.lanzoux.com/b01tqirzc或者链接https://pan.baidu.com/s/15cfQAFdQsn8xSg_2LiQZHg 提取码:q3rd链接:https://pan.baidu.com/s/1WwyCC03qcnqnWKGo-m6ZjA 提取码:pg9uNavicat16目前没有破解方法,15可以&a…

Ant Design Vue 修改Model弹框 样式不生效

今天在使用 Ant Design Vue 组件库中又踩了一个坑 其他的样式都可以更改,唯独更改 Model 弹框组件的样式一直不生效 于是研究了好久才找到样式不生效的原因 最后又折腾了好久,参考了不少资料才得出的解决方案:

软件测试卷王面试题分享(超详细)

🍅 视频学习:文末有免费的配套视频可观看 🍅 点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快 在这把自己整理的软件测试面试题和文档发出来给各位一点帮助,面试题记得收藏好&#…

【GAMES101】Lecture03 Transformation 变换

目录 0 课程内容1 Why Study Transformation1.1 Modeling 模型变换1.2 Viewing 视图变换 2 2D Transformations 二维变换2.1 Scale 缩放变换2.2 Reflection Matrix 反射矩阵2.3 Shear Matrix 切变矩阵2.4 Rotate 旋转2.5 特点:线性变换可以用矩阵表示(Li…

量化投资实战(三)之配对交易策略--协整模型法

点赞、关注,养成良好习惯 Life is short, U need Python 量化投资实战系列,不断更新中 1. 初识配对交易策略 配对交易(Pairing Trading)是指八十年代中期华尔街著名投行Morgan Stanley的数量交易员Nunzio Tartaglia成立的一个数量…

【MQ】消息队列概述

📝个人主页:五敷有你 🔥系列专栏:MQ ⛺️稳中求进,晒太阳 定义 消息队列:一般我们简称为MQ(Message Queue) Message Queue :消息队列中间件,很多初学者认为,MQ通过消息的发送…

C++:string的介绍

C语言中,字符串是以\0结尾的一些字符的集合,为了操作方便,C标准库中提供了一些str系列的库函数,但是这些库函数与字符串是分离开的,不太符合面向对象的思想,而且底层空间需要用户自己管理,稍不留…

RocketMQ如何保证消息的顺序性?

和Kafka只支持同一个Partition 内的消息的顺序性一样,RocketMQ中的也提供了基于队列(分区)的顺序消费。即同一个队列内的消息可以做到有序,但是不同队列内的消息是无序的! 当我们作为MQ生产者需要发送顺序消息时,需要在send方法中,传入一个MessageQueueSelector。 Mes…

Media-Download-Helper 完整部署说明

Media-Download-Helper 完整部署说明 前排提示:由于使用到了 Telegram、Google 等服务,所以当前方案不建议国内用户使用! 基于 docker 安装 qbittorrent WebUI 使用 docker 安装 qbittorrent 非常简单,教程也非常非常多&#xff…

安卓7原生相机切到视频崩溃

目录 1、查看日志 2、分析日志、提取重点 3、寻找解决方法 author daisy.skye的博客_CSDN博客-嵌入式,Qt,Linux领域博主 daisy.skye_嵌入式,Linux,Qt-CSDN博客daisy.skye擅长嵌入式,Linux,Qt,等方面的知识https://blog.csdn.net/qq_40715266?typeblog 1、查看日志 由于安…

格行随身WiFiVS华为天际通VS飞猫U8真实测评大PK,随身WiFi哪个牌子最好用?随身WiFi怎么选?

如今随身WiFi界格行、华为、飞猫三足鼎立,被称为随身WiFi界的“三国杀”,今天,我这个江湖百晓生就来给大家揭秘,究竟谁才是随身网络之王?你准备好围观了吗? 先说说华为天际通随身WiFi,这位老大哥…

今日arXiv最热大模型论文:北大发布,通过上下文提示,让大模型学习一门新的语言

在人工智能领域,大语言模型(LLMs)的发展已经取得了显著的进步,它们在处理高资源语言方面表现出色。然而,对于资源较少的语言,尤其是极低资源语言,这些模型的支持却显得力不从心。这些语言往往缺…

【C++庖丁解牛】C++内存管理 | new和delete的使用以及使用原理

📙 作者简介 :RO-BERRY 📗 学习方向:致力于C、C、数据结构、TCP/IP、数据库等等一系列知识 📒 日后方向 : 偏向于CPP开发以及大数据方向,欢迎各位关注,谢谢各位的支持 目录 1. C/C内存分布2. C语…

方法中单独使用return关键字

一、return关键字的单独使用 二、示例代码 public class ReturnDemo {public static void main(String[] args) {chu(10,0);chu(10,2);}public static void chu(int a,int b){if (b 0) {System.out.println("除法出错,除数不能为零");return;}System.ou…

无处不在的便捷:D咖无人售卖咖啡机在公共场所的应用探索

在繁忙的现代生活中,无人售卖咖啡机作为一项便捷的服务,正逐渐在公共场所得到广泛应用。本文将探讨D咖无人售卖咖啡机在公共场所的应用场景和优势。 一、无人售卖咖啡机的应用场景 写字楼:写字楼内工作人员需要在繁忙的工作中寻找便捷的饮品解…

【center-loss 中心损失函数】 参数与应用

文章目录 前言简单总结一下参数对比解释参数权重衰减(L2正则化)动量其他参数运行 前言 之前我们已经完全弄明白了中心损失函数里的代码是什么意思,并且怎么用的了,现在我们来运行它。 论文:https://ydwen.github.io/…

【数学+前缀和】第十四届蓝桥杯省赛C++ A组《平方差》(c++)

【问题描述】 给定 L,R,问 L≤x≤R 中有多少个数 x 满足存在整数 y,z 使得 xy的平方−z的平方。 【输入格式】 输入一行包含两个整数 L,R,用一个空格分隔。 【输出格式】 输出一行包含一个整数满足题目给定条件的 x 的数量。 【数据范围】 对于 40% 的…

创建RAID0,RAID5并管理,热备盘,模拟故障

目录 1. RAID介绍以及mdadm安装 1.1 安装mdadm工具 2. 创建raid0 2.1 环境准备 2.2 使用两个磁盘创建RAID0 2.3 查看RAID0信息 2.4 对创建的RAID0进行格式化并挂载 2.5 设置成开机挂载 2.6 删除RAID0 3. 创建raid5 3.1 环境准备 3.2 用3个磁盘来模拟R…

【C++杂货铺】详解string

目录 🌈前言🌈 📁 为什么学习string 📁 认识string(了解) 📁 string的常用接口 📂 构造函数 📂 string类对象的容量操作 📂 string类对象的访问以及遍历操…