欢迎大家来到IT世界,在知识的湖畔探索吧!
欢迎大家来到IT世界,在知识的湖畔探索吧!
使用简介
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
欢迎大家来到IT世界,在知识的湖畔探索吧!
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 |
图片源自网络,侵删。
创作不易,麻烦点赞+关注。
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/125054.html