NTPv4协议解析

article/2025/10/6 17:15:15

前言

本文的撰写基于RFC5905.NTP 是时间网络控制协议,V4版本相交V3版本,修复了V3存在的一些问题。尤其是NTPV4的拓展时间戳鼓励使用浮动双数据类型,这样使得NTP能够更好的支持1ns的场景,轮询间隔也从上一代的最多1024s拓展到了36小时。

NTP 协议的变体

NTP协议的具体表现方式分为三种:一种是对称模式,一种是C/S模式,一种是广播模式,每种模式对应的packet mode如下:
在这里插入图片描述

C/S

比如在C/S模式下,客户发一个mode4的报文,然后等待服务器发送一个mode3的报文,服务器可以向多个客户端提供授时信息,这个服务器一般就是具有授时功能的GPS接收机或者电话调制解调器服务。

对等模式

在对等模式下,整个系统里的每一个实体同时是服务器和客户端,每一个实体都可以接受和发送同步报文(mode 2)

广播模式

在广播模式下,广播服务器周期性地向广播地址255.255.255.255发送NTP时间同步报文。广播客户端侦听来自广播服务器的广播报文,根据接收的广播报文将设备的时间与广播服务器的时间进行同步。

动态服务探索

这里有两个特殊的联系,选播服务器和选播客户端,二者提供了动态探索服务器的功能。这里有两种类型的客户端关联:永久和暂时关联。永久关联的客户端给设指定的IPV4或者IPV6(广播或多播群组)发送的报文是mode3。指定的任播服务器在TTL允许的范围内监听这些地址里面的报文头。如果一个服务器可以拿来同步,他会返回一个mode4的数据包,收到这个数据包以后,客户端移动到临时客户端模式(mode 3).

一个任播服务器继续发送数据包来搜索最小数量连接的模式。TTL从1开始,达到最大值以后失效。如果TTL达到最大值而没有调动足够多的联系,客户端会在一段时间内停止传送并且清楚现有的所有的连接,然后重新开始搜索。
如果动员了数量最少的协会,这时客户端就会开始则客户端开始在每个超时时段发送一个分组以保持关联。字段约束从1到255,但是对于一些具有特殊需求的应用可以单独定制。

数据格式

NTP的时间格式有三种,128位,64位和32位。128位的数据格式用来存储足够多的数据格式。这包括了64位带符号的秒字段,可以跨越5840亿年。为了方便映射,秒字段可以被划分为32位的Era number字段和32位的Era offset字段。Era不能直接由NTP产生,也没有这个必要,有专用的文件系统来产生这个。
在这里插入图片描述
64位的时间戳格式用在数据包头或者其他需要限制字节大小的地方。它包括一个跨越136年的32位无符号秒字段和一个分辨率为32皮秒的32位分数字段。在延迟和色散中使用32位短格式。标头字段中的完整分辨率和范围。格式是不合理的。它包括一个16位无符号秒。字段和16位分数字段。
以日期和时间戳来表示格式的协调世界时UTC,在1970年1月1日时所有的比特位都被设置为0,严格来说,在这之前都是没有协调世界时这个说法的。但是为了方便可以假设它一直在。


http://chatgpt.dhexx.cn/article/h3ANjXbG.shtml

相关文章

NTP 网络时间协议

目录 基本原理 结构 工作模式 单播C/S模式 对等体模式 广播模式 组播模式 多播模式 NTP访问控制 访问权限 KOD 认证功能 配置 NTP用于在一系列分布式时间服务器与客户端之间同步时钟。基于IP和UDP。NTP报文通过UDP传输,端口号是123. NTP主要应用于网络中…

NTP协议简介

NTP协议简介 一. datec dates分析1. 同步流程2. 缺陷 二. NTP(**Network Time Protocol**)1. NTP概述 [1、2、3、7]2. NTP的时钟同步原理与授时精度分析 [3、1、10]NTP的时钟同步原理NTP的授时精度分析 3. NTP中其它的提高授时精度的措施[1、6]参考资料 三. 对NTP改进以获得更高…

ntp同步详解

一、ntp服务是什么 1.定义 NTP是网络时间协议(Network Time Protocol),它是用来同步网络中各个计算机的时间的协议。 2.发展 首次记载在Internet Engineering Note之中,其精确度为数百毫秒。 稍后出现了首个时间协议的规范RFC-778,它被命…

NTP协议代码实现

本文将讲解NTP的代码实现和调试过程的一些记录。 首先,进行NTP报文结构体的构建。 //宏定义 #define NTP_TIMESTAMP_DELTA 2208988800ull //number of seconds between 1900 and 1970,1900-1970的时间差 #define SEC_TIME_ZONE (8*60*60) //B…

什么是Ntrip?Ntrip协议简介

文章目录 Ntrip通讯协议1.0Ntrip是什么?Ntrip系统组成NtripServerNtripClient4.1 获取源列表4.2 获取差分数据 其他资料 Ntrip通讯协议1.0 Ntrip是什么? NTRIP是在互联网上进行RTK数据传输的协议。所有的 RTK数据格式(NCT,RTCM&…

网络时间协议NTP介绍

定义 网络时间协议NTP(Network Time Protocol)是TCP/IP协议族里面的一个应用层协议。NTP用于在一系列分布式时间服务器与客户端之间同步时钟。NTP的实现基于IP和UDP。NTP报文通过UDP传输,端口号是123。 目的 随着网络拓扑的日益复杂&#xf…

计算机网络中网络时间协议NTP是什么原理?

NTP是网络时间协议(Network Time Protocol),它是用来同步网络中各个计算机的时间的协议。在计算机的世界里,时间非常地重要,例如对于火箭发射这种科研活动,对时间的统一性和准确性要求就非常地高,是按照A这台计算机的时…

NTP协议实现

本文出处: http://www.eefocus.com/html/10-04/94667s.shtml 10.4 实验内容 ——NTP协议实现 1.实验目的 通过实现NTP协议的练习,进一步掌握Linux网络编程,并且提高协议的分析与实现能力,为参与完成综合性项目打下良好…

NTP

NTP(Network Time Protocol) 网络时间协议 NTP是网络时间协议(Network Time Protocol),它是用来同步网络中各个计算机的时间的协议。它的用途是把计算机的时钟同步到世界协调时UTC,其精度在局域网内可达0.1ms,在互联网上绝大多数的地方其精度…

NTP与PTP

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

通信协议 - ntp时间同步

概述 NTP(Network Time Protocol)网络时间协议基于UDP,用于网络时间同步的协议,使网络中的计算机时钟同步到UTC,再配合各个时区的偏移调整就能实现精准同步对时功能。提供NTP对时的服务器有很多,比如微软的NTP对时服务…

NTP协议原理

什么是NTP协议 当第一次听到NTP时,完全不知道是什么概念,只好问度娘。度娘搜到的答案如下: 看了度娘的解释后,才大概明白该协议是进行网络对时的协议,比如当自己的电脑时间不对,可以从另外一台电脑病基于…

网络时间协议NTP

网络时间协议NTP(Network Time Protocol)是TCP/IP协议族里面的一个应用层协议。NTP用于在一系列分布式时间服务器与客户端之间同步时钟。 随着网络拓扑的日益复杂,整个网络内设备的时钟同步将变得十分重要。如果依靠管理员手工修改系统时钟&a…

NTP网络时间协议

转自https://www.sohu.com/a/206862105_130560 SNPT 秒级时间精度 NTP授时精度与NTP服务器与用户间的网络状况有关:广域网授时精度通常能达50ms级,但有时超过500ms;局域网授时不存在路由器路径延迟问题,因而授时精度理论上可以提…

NTP协议解析

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

NTP协议详解

前言 NTP(Network Time Protocol)网络时间协议基于UDP,用于网络时间同步的协议,使网络中的计算机时钟同步到UTC,再配合各个时区的偏移调整就能实现精准同步对时功能。提供NTP对时的服务器有很多,比如微软的NTP对时服务…

NTP 协议

NTP: Network Time Protocal 一、定义:为实现高精确度的时间同步,而设计的网络时钟同步协议。在Linux系统中,它的最新实现是NTP 4.0(一个分布式的网络时钟同步程序)。相关定义和实现参看RFC1305和www.ntp.org。NTP协议…

NTP(Network Time Protocol)协议详解

一、NTP的基本概念: NTP(Network Time Protocol)------网络时间协议-----应用层协议,用来在分布式时间服务器和客户端之间进行时间同步。 二、采用NTP的目的: 是对网络内所有具有时钟的设备进行时钟同步,使网络内所有设备的时钟…

Windows10 debug安装、下载

目录 背景下载安装和使用 背景 由于Windows 10不支持debug命令,如果装虚拟机Windows XP就比较耗内存,所以我用的是DOSBox,然后挂载debug程序文件目录。 下载 DOSBox、debug、masm等等,我已经整理好了,下载地址&…

【WINDOWS系统】WinDbg调试工具

一、Windows 10 调试工具 (WinDbg)的安装 1、下载地址https://docs.microsoft.com/zh-cn/windows-hardware/drivers/debugger/debugger-download-tools#small-classic-windbg-preview-logo-debugging-tools-for-windows-10-windbg 2、安装 记录WinDbg安装目录,待会…