📄 rfc1361.txt
字号:
RFC 1361 SNTP August 1992 Root Dispersion: This is a 32-bit unsigned fixed-point number indicating the maximum error relative to the primary reference source, in seconds with fraction point between bits 15 and 16. The values that normally appear in this field range from zero to several hundred milliseconds. Reference Clock Identifier: This is a 32-bit code identifying the particular reference clock. In the case of stratum 0 (unspecified) or stratum 1 (primary reference), this is a four-octet, left-justified, zero-padded ASCII string. While not enumerated as part of the NTP specification, the following are representative ASCII identifiers: Stratum Code Meaning ------------------------------------------------------------ 0 ascii generic time service other than NTP, such as ACTS (Automated Computer Time Service), TIME (UDP/Time Protocol), TSP (TSP Unix time protocol), DTSS (Digital Time Synchronization Service), etc. 1 ATOM calibrated atomic clock 1 VLF VLF radio (OMEGA, etc.) 1 callsign Generic radio 1 LORC LORAN-C radionavigation system 1 GOES Geostationary Operational Environmental Satellite 1 GPS Global Positioning Service 2 address secondary reference (four-octet Internet address of the NTP server) Reference Timestamp: This is the local time at which the local clock was last set or corrected, in 64-bit timestamp format. Originate Timestamp: This is the local time at which the request departed the client for the server, in 64-bit timestamp format. Receive Timestamp: This is the local time at which the request arrived at the server, in 64-bit timestamp format. Transmit Timestamp: This is the local time at which the reply departed the server for the client, in 64-bit timestamp format. Authenticator (optional): When the NTP authentication mechanism is implemented, this contains the authenticator information defined in Appendix C of RFC-1305. In SNTP this field is ignored for incoming messages and is not generated for outgoing messages.Mills [Page 6]RFC 1361 SNTP August 19924. SNTP Client Operations The model for an SNTP client operating with either an NTP or SNTP server is a RPC client with no persistent state. The client initializes the SNTP message header, sends the message to the server and strips the time of day from the reply. For this purpose all of the message-header fields shown above are set to zero, except the first octet. In this octet the Leap Indicator is set to zero (no warning) and the Mode to 3 (client). The Version Number must agree with the software version of the NTP or SNTP server; however, NTP Version 3 (RFC-1305) servers will also accept Version 2 (RFC-1119) and Version 1 (RFC-1059) messages, while NTP Version 2 servers will also accept NTP Version 1 messages. Version 0 (original NTP described in RFC-959) messages are no longer supported. Since there are NTP servers of all three versions operating in the Internet of today, it is recommended that the Version Number field be set to one. The server reply includes all the fields described above; however, in SNTP only the Transmit Timestamp has explicit meaning. The integer part of this field contains the server time of day in the same format as the Time Protocol. While the fraction part of this field will usually be valid, the accuracy achieved with the SNTP mode of access probably does not justify its use. The following table is a summary of the SNTP client operations. There are three recommended error checks shown in the table. In all NTP versions, if the Leap Indicator field is 3 or the Transmit Timestamp is zero (unsynchronized), the server has never synchronized or not synchronized to a valid timing source within the last 24 hours. If the Stratum field is 0 (unspecified or unavailable), the server has never synchronized, has lost reachability with all timing sources or is synchronized by some protocol other than NTP. Whether to believe the transmit timestamp or not in this case is at the discretion of the client implementation.Mills [Page 7]RFC 1361 SNTP August 1992 Field Name Request Reply ------------------------------------------------------------- Leap Indicator (LI) 0 if 3 (unsynchronized), disregard Version Number (VN) (see text) ignore Mode 3 (client) ignore Stratum 0 if 0 (unspecified), disregard Poll 0 ignore Precision 0 ignore Root Delay 0 ignore Root Dispersion 0 ignore Reference Identifier 0 ignore Reference Timestamp 0 ignore Originate Timestamp 0 ignore Receive Timestamp 0 ignore Transmit Timestamp 0 time of day (seconds only); if 0 (unsynchronized), disregard Authenticator (not used) ignore5. SNTP Server Operations The model for an SNTP server operating with either an NTP or SNTP client is an RPC server with no persistent state. The SNTP server ignores all header fields except the first octet, modifies certain fields and returns the message to the sender. Since an SNTP server ordinarily does not implement the full set of NTP algorithms intended to support the highest quality service, it is recommended that an SNTP server be operated only in conjunction with a source of outside synchronization, such as a radio clock. In this case the server always operates at stratum 1. The first octet is interpreted as follows. The Leap Indicator and Version Number fields are ignored. Optionally, messages with version numbers other than 1, 2, or 3 can be discarded. For primary servers connected to a functioning radio clock, the Leap Indicator field is set to zero and the Stratum field is set to one in the reply. otherwise, these fields are set to 3 and zero, respectively. In any case the Version Number and Poll fields are copied intact to the reply message header. If The Mode field is set to 3 (client), it is changed to 4 (server) in the reply; otherwise, this field is set to 2 (symmetric passive). The Stratum field is set to reflect the maximum reading error of the local clock. For all practical cases it is computed as the negative of the number of significant bits to the right of the decimal point in the NTP timestamp format. The Root Delay and Root DispersionMills [Page 8]RFC 1361 SNTP August 1992 fields are set to zero for a primary server; optionally, the Root Dispersion can be set to a value corresponding to the expected (constant) maximum expected error of the primary reference source. The Reference Identifier is set to designate the primary reference source, as indicated in the table above. If this information is unspecified or unavailable, the field is set to zero. The timestamp fields are set as follows. The Reference Timestamp, Receive Timestamp and Transmit Timestamp fields are set to the time of day at the server. The Originate Timestamp field is copied unchanged from the request. The following table summarizes these actions. Field Name Request Reply ---------------------------------------------------------- Leap Indicator (LI) ignore 0 (normal), 3 (unsynchronized) Version Number (VN) ignore copied from request Mode (see text) (see text) Stratum ignore server stratum (1) Poll ignore copied from request Precision ignore server precision Root Delay ignore 0 Root Dispersion ignore 0 (see text) Reference Identifier ignore source identifier or 0 Reference Timestamp ignore time of day or 0 Originate Timestamp ignore copied from request Receive Timestamp ignore time of day or 0 Transmit Timestamp ignore time of day or 0 Authenticator ignore (not used)6. References [DAR81] Postel, J., "Internet Protocol - DARPA Internet Program Protocol Specification", RFC 791, DARPA, September 1981. [MIL92] Mills, D., "Network Time Protocol (Version 3) Specification, Implementation and Analysis", RFC 1305, University of Delaware, March 1992. [POS80] Postel, J., "User Datagram Protocol", RFC 768, USC/Information Sciences Institute, August 1980. [POS83] Postel, J., and K. Harrenstien, "Time Protocol", RFC 868, USC/Information Sciences Institute, SRI, May 1983.Mills [Page 9]RFC 1361 SNTP August 1992Security Considerations Security issues are not discussed in this memo.Author's Address David L. Mills Electrical Engineering Department University of Delaware Newark, DE 19716 Phone: (302) 831-8247 EMail: mills@udel.eduMills [Page 10]
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -