NTP Data Format - Version 3
The format of the NTP Message data area, which immediately follows the UDP header, is shown in Figure 4. Following is a description of
its fields.
Leap Indicator (LI): This is a two-bit code warning of an impending leap second to be inserted/deleted in the last minute of the
current day, with bit 0 and bit 1, respectively, coded as follows:
00
|
no
warning
|
01
|
last minute has 61
seconds
|
10
|
last minute has 59
seconds)
|
11
|
alarm condition
(clock not synchronized)
|
Version Number (VN): This is a three-bit integer indicating the NTP version number, currently three (3).
Mode: This is a three-bit integer indicating the mode, with values defined as follows:
0
|
reserved
|
1
|
symmetric
active
|
2
|
symmetric
passive
|
3
|
client
|
4
|
server
|
5
|
broadcast
|
6
|
reserved for NTP
control message (see Appendix B)
|
7
|
reserved for
private use
|
Stratum: This is a eight-bit integer indicating the stratum level of the local clock, with values defined as follows:
0
|
unspecified
|
1
|
primary reference
(e.g.,, radio clock)
|
2-255
|
secondary reference
(via NTP)
|
The values that can appear in this field range from zero to NTP.INFIN inclusive.
Poll Interval: This is an eight-bit signed integer indicating the maximum interval between successive messages, in seconds to the
nearest power of two. The values that can appear in this field range from NTP.MINPOLL to NTP.MAXPOLL inclusive.
Precision: This is an eight-bit signed integer indicating the precision of the local clock, in seconds to the nearest power of
two.
Root Delay: This is a 32-bit signed fixed-point number indicating the total roundtrip delay to the primary reference source, in
seconds with fraction point between bits 15 and 16. Note that this variable can take on both positive and negative values, depending
on clock precision and skew.
Root Dispersion: This is a 32-bit signed fixed-point number indicating the maximum error relative to the primary reference source, in
seconds with fraction point between bits 15 and 16. Only positive values greater
than zero are possible.
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 suggested ASCII identifiers:
Stratum
|
Code
|
Meaning
|
0
|
DCN
|
DCN routing
protocol
|
0
|
NIST
|
NIST public
modem
|
0
|
TSP
|
TSP time
protocol
|
0
|
DTS
|
Digital Time
Service
|
1
|
ATOM
|
Atomic clock
(calibrated)
|
1
|
VLF
|
VLF radio (OMEGA,,
etc.)
|
1
|
callsign
|
Generic
radio
|
1
|
LORC
|
LORAN-C
radionavigation
|
1
|
GOES
|
GOES UHF
environment satellite
|
1
|
GPS
|
GPS UHF satellite
positioning
|
In the case of stratum 2 and greater (secondary reference) this is the four-octet Internet address of the primary reference host.
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 host for the service host, in 64-bit timestamp
format.
Receive Timestamp: This is the local time at which the request arrived at the service host, in 64-bit timestamp format.
Transmit Timestamp: This is the local time at which the reply departed the service host for the client host, in 64-bit timestamp
format.
Authenticator (optional): When the NTP authentication mechanism is implemented, this contains the authenticator information defined in
Appendix C.
|
|