百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

简单网络时间协议 (SNTP)的应用(网络时钟协议)

gudong366 2025-07-16 00:33 5 浏览


使用简介

sntp是简单网络时间协议(Simple Network Protocol)的简称。在linux下可用来进行修改,特别适合有对时需求,但没有时钟装置进行对时源的装置。

linux下用命令sntp -P no -r [某授时中心域名] ,就能够将系统时间和授时中心的时间进行同步,当然这需要超级权限口令。

命令 hwclock --systohc //或者 hwclock -w 可以用系统时间同步硬件时间。

一般在做了以上两步之后,即使重启系统之后,系统时间也会保留重启之前的值。但是有些系统可能还需要清除时间校正文件(rm /etc/adjtime),才能使设置的时间不会因为重启而改变。

时间校正文件/etc/adjtime中保存了一个用来估算硬件时间的偏差的校正因子,系统每次重启会根据校正因子调整硬件时间。所以要想使设置时间在重启后保留,需要删除掉时间校正文件,系统在重启后会重新创建一个新的时间校正文件。

协议SNTP V4介绍

SNTP(Simple Network Time Protocal简单网络时间协议),用于跨广域网或局域网同步时间的协议,精确度一般在几十毫秒。官方文档为RFC 4330,2006年的最新版本为SNTPv4,支持IPV6。

SNTPv4是NTP(Network Time Protocol网络时间协议)的简化版,精度较低,安全机制较低,但是报文格式完全一致。

SNTPv4使用的是UDP 123端口,C/S模式,有单播,多播和广播三种报文发送方式。

报文结构

SNTP4基于UDP网络,报文结构如下:

MAC

IP

UDP

NTP

其中NTP的报文结构如下:

字段说明:

字段

含义

长度

说明

LI

闰秒标志

2比特

见Figure 2

VN

版本号

3比特

表示NTP的版本号,当前为4

Mode

模式

3比特

见Figure 3,一般服务端发送的报文模式值为4

Stratum

1字节unsigned char

见Figure 4,对本地时钟级别的整体识别

Poll

轮询间隔

1字节无符号正数

指示数据包的最大时间间隔,以秒为单位,作为2的指数方的指数部分,取值范围从4-17,即16秒到131,072秒

Precision

精度

1字节有符号正数

指示系统时钟的精确性,以秒为单位,作为2的指数方的指数部分,取值范围从-6到-20

Root Delay

往返延迟

4字节浮点数

指示与主时钟参考源的总共往返延迟,以秒为单位,小数部分在16位以后,取值范围从负几毫秒到正几百毫秒

Root Dispersion

误差

4字节浮点数

指示与主时钟参考源的误差,以秒为单位,小数部分在16位以后,取值范围从零毫秒到正几百毫秒

Reference Identifier

时钟参考源

4字节ASCII字符串

见Figure 5 ,对于二级服务器,在IPV4环境下,取值为一级服务器的IP地址,在IPV6环境下,是一级服务器的NSAP地址

Reference Timestamp

校准时间

8字节时间戳

见Figure 6,指示系统时钟最后一次校准的时间,建议填充非重要的低阶位随机值,便于环路检测与回放检测

Originate Timestamp

原始时间

8字节时间戳

指示客户向服务器发起请求的时间

Receive Timestamp

接收时间

8字节时间戳

指服务器收到客户请求的时间

Transmit Timestamp

传输时间

8字节时间戳

指示服务器向客户发时间戳的时间

Authenticator

认证

160字节可选

当需要进行SNTP认证时,该字段包含密钥和信息加密码

Figure 2 LI

0:无警告

1:最后一分钟是61秒;

2:最后一分钟是59秒;

3:警告(时钟没有同步)

Figure 3 Mode

0:保留

1:对称主动

2:对称被动

3:客户

4:服务器

5:广播

6:保留为NTP控制信息

7:保留为用户定义

Figure 4 Stratum

Stratum值

含义

0

kiss-o’-death(比较重要,见2.4),表示故障信息

1

一级服务器(由radio clock同步)

2-15

二级服务器(由NTP和SNTP同步)

16-255

保留

Figure 5 Reference Identifier Codes

Code

External Reference Source

含义

LOCL

uncalibrated local clock

未校准的本地时钟

CESM

calibrated Cesium clock

校准铯钟

RBDM

calibrated Rubidium clock

校准铷钟

PPS

calibrated quartz clock or other pulse-per-second source

校准石英钟或其他脉冲每秒源

IRIG

Inter-Range Instrumentation Group

跨系列仪表组

ACTS

NIST telephone modem service

NIST(美国国家标准)电话调制解调器服务

USNO

USNO telephone modem service

USNO(美国海军天文台)电话调制解调器服务

PTB

PTB (Germany) telephone modem service

PTB(德国)电话调制解调器服务

TDF

Allouis (France) Radio 164 kHz

Allouis(法国)无线电 164 kHz

DCF

Mainflingen (Germany) Radio 77.5 kHz

Mainflingen(德国)无线电 77.5 kHz

MSF

Rugby (UK) Radio 60 kHz

Rugby(英国)无线电 60 kHz

WWV

Ft. Collins (US) Radio 2.5, 5, 10, 15, 20 MHz

Ft. Collins(美国)无线电 2.5、5、10、15、20 MHz

WWVB

Boulder (US) Radio 60 kHz

博尔德(美国)无线电 60 kHz

WWVH

Kauai Hawaii (US) Radio 2.5, 5, 10, 15 MHz

夏威夷考艾岛(美国)无线电 2.5、5、10、15 MHz

CHU

Ottawa (Canada) Radio 3330, 7335, 14670 kHz

渥太华(加拿大)无线电 3330、7335、14670 kHz

LORC

LORAN-C radionavigation system

LORAN-C无线电导航系统

OMEG

OMEGA radionavigation system

欧米茄无线电导航系统

GPS

Global Positioning Service

全球定位服务

                           1                   2                   3
       0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           Seconds                             |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                  Seconds Fraction (0-padded)                  |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      
                     Figure 6  NTP Timestamp Format
123456789

request报文

上述字段中如果是客户端发的报文,那么绝大部分是0;如果是服务端发的报文,大部分字段才有意义。

LI,Stratum, Precision, Root Delay, Root Dispersion, Reference Identifier, Reference Timestamp 等都只在服务端有效。

下面是不同传输方式下的字段值示例

Field Name

Unicast/Manycast


Broadcast


Request

Reply


LI

ignore

as needed

as needed

VN

1-4

copied from request

4

Mode

3

4

5

Stratum

ignore

1

1

Poll

ignore

copied from request

log2 poll interval

Precision

ignore

-log2 server significant bits

-log2 server significant bits

significant

significant



Root Delay

ignore

0

0

Root Dispersion

ignore

0

0

Reference Identifier

ignore

source ident

source ident

Reference Timestamp

ignore

time of last source update

time of last source update

Originate Timestamp

ignore

copied from transmit timestamp

0

Receive Timestamp

ignore

time of day

0

Transmit Timestamp

(see text)

time of day

time of day

Authenticator

optional

optional

optional

图片源自网络,侵删。

创作不易,麻烦点赞+关注。

相关推荐

U盘文件被删怎么简单恢复(u盘里的文件被误删了怎么找回)

现在这个社会不是靠关系靠路子,主要还是靠实力。刘强在机关工作,人长得帅气,工作能力又强。唯独一样不好,脾气太大,动不动就发火,因为小事常和同事发生口角。一次他火大的差点把办公桌给掀翻了,领导见他野蛮的...

不小心删除了一些文件?9 个最佳免费硬盘恢复软件

恢复您曾经无意或意外删除的所有文件和数据。您是否曾经错误地删除了一个对您的工作至关重要并导致您丢失所有进度的文件?我们为您提供了一些最好的免费硬盘恢复软件,以帮助您恢复意外删除的文件,以解决您的文件删...

Studio 中文版:数据救援神器,误删 / 分区损坏 / RAID 恢复一键找回

Studio中文版:数据救援神器,误删/分区损坏/RAID恢复一键找回当文件意外删除、分区损坏,或RAID阵列崩溃时,一款可靠的数据恢复工具往往能挽回关键损失。R-Studio中文版...

你值得拥有的11款Linux数据恢复工具

如果你使用的是Linux操作系统,那么你一定想知道一旦硬盘崩溃的话又该如何保存和恢复数据。其实,现在有很多Linux数据恢复工具可以让我们摆脱数据安全的困扰。小编已经为各位准备好了一些最好的Linux...

误删文件内容怎么恢复(误删文件内容怎么恢复回来)

  在日常使用电脑的过程中,误删文件的情况时有发生。无论是由于操作失误还是病毒攻击,误删文件都会给我们带来不小的困扰。幸运的是,随着技术的发展,误删文件恢复已不再是难题。本文将介绍几款国内外知名的误删...

u盘如何恢复删除的文件?推荐5款u盘数据恢复软件!

在日常生活与工作中,U盘作为便捷的数据存储载体,频繁用于传输和保存各类重要文件。然而,误删文件的情况却时有发生,无论是珍贵的照片、重要的工作文档,还是精心制作的视频,一旦删除,都可能带来不小的麻烦。...

怎么恢复删除的数据?5种有效的数据恢复方法汇总!

在数字化办公与生活的时代,电脑里的每一份数据都承载着重要信息。然而,一个误操作就可能导致数据被删除,无论是尚未保存的重要文档,还是珍藏多年的照片,都可能瞬间“消失”。但其实,数据删除并不意味着永久丢...

u盘删除文件怎么找回?5个数据恢复工具汇总,助你巧妙恢复数据!

在日常使用U盘的过程中,误删文件的情况时有发生,重要的工作文档、珍贵的照片视频一旦消失,难免让人焦急万分。别担心,只要选对数据恢复工具,被删除的数据仍有找回的可能。下面就为你汇总5款实用的数据...

Linux下恢复误删文件:思路+实践(linux删除如何恢复)

周五篮球群里有人问误删文件了怎么恢复,得知是ext4文件系统之后我推荐了ext4magic这个工具,然后又有人提到了xfs的话怎么办,正好前几天看到DaveChinner在邮件列表里提到了这个问题,...

苹果放大招!不用虚拟机了,Mac直接跑Linux容器,开发者效率翻倍

苹果这次真给开发者送福利了!今天凌晨(6月10日),苹果在官宣的Containerization框架直接炸了技术圈——Mac现在能原生运行Linux容器镜像了!这可不是虚拟机那种“套娃”方案,而是基...

7 款老牌经典软件,值得收藏(经典老歌软件)

Calibrehttps://calibre-ebook.com/Calibre是一个电脑电子书管理软件。肯定有人说了,电子书还要管理?那当然了。它的功能更强大的让你想象不到,首先它可以导入PDF,...

神仙级的免费开源电子书阅读器,还支持听书功能

神仙级的免费开源电子书阅读器,还支持听书功能,极空间部署『KoodoReader』哈喽小伙伴们好,我是Stark-C~前段时间不是给大家分享的电子书管理工具『TaleBook』嘛~,然后就有粉丝私信...

如何在Ubuntu系统中重置root密码(ubuntu忘记密码重置root密码命令)

很多人有个问题,就是喜欢把密码设置得很长很复杂,结果谁也没防住,却成功防住了自己ヽ(.ˇдˇ;)ノ对于现代人,特别是年轻人,都有过忘记密码的经历吧。在这篇文章中,我们来了解如何在Ubuntu1...

5款功能强大的PDF阅读器,让PDF阅读更轻松

分享5款功能强大的PDF阅读器,拥有丰富的PDF阅读工具,支持PDF文档划线、笔记、标记等操作,让PDF阅读更轻松!1.嗨动PDF编辑器一款实用的PDF处理软件,不仅可以阅读PDF文档,还能直接编辑、...

上班摸鱼利器! 免费好用的电子书阅读器,NAS轻松部署Koodo Reader

哈喽,大家好我是生活爱好者。笔者也是一名小说爱好者,平时用手机用某信读书,会员也开了,在家看体验也不错,但是上班的时候,在工作快速完成之后,想摸个鱼用手机就不太方便啦,作为爱折腾的人,必须要工作认真,...