NTP协议格式(中文)_第1页
NTP协议格式(中文)_第2页
NTP协议格式(中文)_第3页
NTP协议格式(中文)_第4页
NTP协议格式(中文)_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、【精品文档】如有侵权,请联系网站删除,仅供学习与交流NTP协议格式(中文).精品文档. NTP协议格式1. NTP时间戳格式 SNTP使用在RFC 1305 及其以前的版本所描述标准NTP时间戳的格式。与因特网标准标准一致, NTP 数据被指定为整数或定点小数,位以big-endian风格从左边0位或者高位计数。除非不这样指定,全部数量都将设成unsigned的类型,并且可能用一个在bit0前的隐含0填充全部字段宽度。 因为SNTP时间戳是重要的数据和用来描述协议主要产品的,一个专门的时间戳格式已经建立。 NTP用时间戳表示为一64 bits unsigned 定点数,以秒的形式从1900 年

2、1月1 日的0:0:0算起。整数部分在前32位里,后32bits(seconds Fraction)用以表示秒以下的部分。在Seconds Fraction 部分,无意义的低位应该设置为0。这种格式把方便的多精度算法和变换用于UDP/TIME 的表示(单位:秒),但使得转化为ICMP的时间戳消息表示法(单位:毫秒)的过程变得复杂了。它代表的精度是大约是200 picoseconds,这应该足以满足最高的要求了。 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 Fracti

3、on (0-padded) |2. NTP 报文格式 NTP 和SNTP 是用户数据报协议( UDP) 的客户端 POS80 ,而UDP自己是网际协议( IP) DAR81 的客户端. IP 和UDP 报头的结构在被引用的指定资料里描述,这里就不更进一步描述了。UDP的端口是123,UDP头中的源断口和目的断口都是一样的,保留的UDP头如规范中所述。 以下是SNTP 报文格式的描述,它紧跟在IP 和UDP 报头之后。SNTP的消息格式与RFC-1305中所描述的NTP格式是一致的,不同的地方是:一些SNTP的数据域已被风装,也就是说已初始化为一些预定的值。NTP 消息的格式被显示如下。 1 2

4、 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 |LI | VN |Mode | Stratum | Poll | Precision | | 根延迟 | | 根差量 | | 参考标识符 | | 参考时间戳(64) | | 原始时间戳(64) | | 接受时间戳 (64) | | 传送时间戳(64) | | 认证符(可选项) (96) |如下一部分描述,在SNTP 里大多数这些字段被预规定的数据给赋初值。为完整起见,每个字段的功能在下面被简要总结。 1. LI 闰秒标识器:这是一个二位码,预报当天最近的分钟里

5、要被插入或删除的闰秒秒数。用1/0表示,分别说明如下:LI Value 含义00 0 无预告01 1 最近一分钟有61秒10 2 最近一分钟有59秒11 3 警告状态(时钟未同步)2. VN 版本号:这是一个三bits的整数,表示NTP的版本号,现在为3。3. Mode 模式:这是一个三bits的整数,表示模式,定义如下:mode 含义0 保留1 对称性激活2 被动的对称性3 客户端4 服务器5 广播6 为NTP控制性系保留7 为自用保留在点对点模式下,客户端机在请求中设置此字段为3,服务器在回答时设置此字段为4;在广播模式下,服务器在回答时设置此字段为5。4. stratum(层):这是一个

6、8bits的整数(无符号),表示本地时钟的层次水平,数值定义如下:stratum含义0 未指定或难以获得1 主要参考(如无线电时钟钟)2.15 第二参考(通过NTP/SNTP)16.255 保留5 Poll 测试间隔:八位signed integer,表示连续信息之间的最大间隔,精确到秒的平 方及。本字段的值从4(16s)到14(16284s);然而,大多数应用使用6(64s)到10(1024s)。6Precision 精度:八位signed integer,表示本地时钟精度,精确到秒的平方级。值从 -6(主平)到-20(微妙级时钟)。7. Root Delay根时延:32位带符号定点小数,表

7、示在主参考源之间往返的总共时延,以小数位后1516bits。数值根据相关的时间与频率可正可负,从负的几毫秒到正的几百毫秒。8. Root Dispersion根离散:32位带符号定点小数,表示在主参考源有关的名义错误,以小数位后1516bits。范围:0几百毫秒。9. Reference Identifier参考时钟标识符:32bits,用来标识特殊的参考源。在stratum 0(未指定)或stratum 1(基本参考)的情况下,该字段以四个八位字节,左对齐,零填充的string表示。当没有NTP枚举时,使用下列ASCII标识符: 阶层 代码 意思 1 pps 精度校准源,例如ATOM(原子钟

8、),PPS代表(每秒脉冲精度源),等等 1 service 除了一般的NTP报时服务外,例如ACTS (计算机自动化报时服务),TIME(UDP/Time协议),TSP(Unix 报时服务协议),DTSS. (数字化时间同步服务),等等 1 radio 一般的收音机服务,带有callsigns, 例如CHU, DCF77, MSF, TDF, WWV, WWVB, WWVH,等等 1 nav无线电导航系统,例如OMEG(欧米加导航系统), LORC(远距离无线电导航系统),等等 1 satellite一般的卫星业务,例如GOES(地球同步轨道环境卫星),GPS(全球卫星定位服务),等等 2 a

9、ddress二级参考(4个八位二进制字节表示的NTP服务器因特网 地址)10. 参考时间戳:64bits时间戳,本地时钟被修改的最新时间。11. 原始时间戳:客户端发送的时间,64bits。12. 接受时间戳:服务端接受到的时间,64bits。13. 传送时间戳:服务端送出应答的时间,64bits。14. 认证符(可选项):当NTP的认证机制已运行后,这个字段包含认证者的信息(参见RFC1305 中的附件C)。在SNTP中本字段一般被来报输入消息所忽略,也不用在输出消息中。3. SNTP 客户端操作 SNTP客户端与NTP/SNTP 服务器通信的模式是一个非持久状态的远程过程调用。在单播方式,

10、客户端发给服务器(方式3) 请求并且期望服务器答复 (方式4)。 在广播方式,客户端送并不请求只是等待一台或更多的服务器的广播消息(方式5) ,这取决于设置。 根据客户端和服务器设置,单播客户端和广播服务器通常在从64 给1024 s 的间隔里发送消息。 单播客户端初始化SNTP 报文首部,再把消息发送到服务器,然后从服务器回复的报文中剥去时间包。为此,上面提到的所有报文首部字段,除第一个八位字节外都设置成0。 在这个八位字节里Li 字段设置为0( 没有警告) 和方式字段设置为3(客户端)。VN 字段必须同NTP 或者SNTP 服务器的软件版本一致;但是,NTP 版本3( RFC 1305)的

11、服务器也将接受第2( RFC 1119) 版本的消息以及版本1( RFC 1059)的消息,而NTP 版本2服务器也将接受NTP 为版本1的消息。版本0 ( RFC 959) 消息不再被支持。因为今天因特网已有了NTP 服务器操作的3个版本,推荐VN 字段设置1。 在单播及广播方式下,单播服务器回答及广播以上所述的所有字段;但是,在SNTP下,各字段中,只有传送时间戳在非零情况下才有明确的意思.这个字段的整数部分包含服务器此刻的时间,其格式与UDP/TIME 协议相同POS83.这个字段的fraction部分通常是有效的, SNTP的精确度证明可以精确到秒。如果传送用时间戳字段是全0,则该消息

12、将被忽略。在单播方式下,一种简单的计算可以用来计算与服务器有关的往返传播延迟d及本地时钟补偿t,通常对在数十毫秒内。为此,客户端在请求包中将本地时钟时间按NTP的格式写入源时间戳。当收到答复时,客户端将目的时间戳作为到达时间,并根据它的本地时钟,将其转变成NTP格式。下述表格总结4个时间戳。 用时间戳名字 ID 产生 原始时间戳 T1 时间请求由客户端送 收到时间戳 T2 时间请求在服务器收到 传送时间戳 T3 时间答复通过服务器送 目的地时间戳 T4 时间答复在客户端收到 往返传播延迟d和本地时钟补偿t定义为: D =( T4 - T1) - ( T2 - T3) T =( T2 - T1)

13、 +( T3 - T4) /2。 下述表格是SNTP客户端操作的总结。在表格里显示有两种推荐的错误检查方式。在全部NTP 版本里,如果Li 字段为3;或者阶层字段不在第1-15范围里;或者传送用时间戳是0,服务器决不同步或者不予同步成过去24小时内有效的时间源。在客户端的判断中,保留字段值也可能被检查。 是否相信传送用时间戳取决于对这些字段中的一个或多个字段的有效性判断。 字段名 请求 回答 Li 0 闰秒指示器; 如果是3 (非同步),则放弃该消息 VN 1( 参见正文) 忽略 方式 3( 客户端) 忽略 阶层 0 忽略 轮询 0 忽略 精度 0 忽略 根延迟 0 忽略 根差量 0 忽略 参

14、考标识符 0 忽略 参考时间戳 0 忽略 原始用时间戳 0 忽略( 参见正文) 收到用时间戳 0 忽略( 参见正文) 传送的时间戳 0 时间; 如果是0(非同步),则忽略该消息 Authenticator. (不使用)忽略 4. SNTP 服务器操作在单播方式和广播方式下保留的字段被同样地设置。假定服务器是被同步成一台无线电时钟或者其它正确的主要参考源,则阶层字段设置为1(主要服务器),Li 字段设置为0;如果不是,阶层字段设置0,Li 字段设置3。精度字段的设置反映出本地时钟的最大的读数误差。对所有的实际情况来说,在NTP格式里被计算的值是小数点右边的有效数值,值被表示成负数时间戳形式。为了

15、主服务器,根延迟和根差量字段可以设置成0,根差量字段能设置成任意数值(表示时钟的最大的期望误差值)。参考标识符设置指明主要参考源,如在上面在表格里说明的。 这些时间戳字段被设置如下。如果服务器未被同步或是首先启动的话,全部时间戳字段设置成零。如果同步,参考用时间戳设置成最后更新时间(来源于无线电时钟)或者设置成消息被送出的时间(如果更新时间不可以获得)。接收时间戳和传送时间戳字段设置成当时消息发出的时间。在单播方式下,原始时间戳字段直接从请求包的传送时间戳拷贝过来。因为客户端要用它来检查应答,所以复制完整很重要。用广播方式下,这个字段被设置成消息被送出的时间。下面的表格总结这些操作。 字段名 请求 回答 Li 忽略 0(正常), 3(非同步) VN 1, 2 或者3 3 或者从请求包中拷贝 方式3(参见正文) 2,4 或者5(参见正文) 阶层 忽略 服务器阶层 投票 忽略 拷贝请求包 精度 忽略 服务器精度 根延迟 忽略 0 根差量 忽略 0(参见正文) 参考标识符 忽略 来

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论