Up to now, Device A has sufficient information to calculate the following two important parameters:
The roundtrip delay of NTP message: Delay = (T4–T1) – (T3-T2) = 2 seconds.
Time difference between Device A and Device B: Offset = ((T2-T1) + (T3-T4))/2 = 1 hour.
Based on these parameters, Device A can synchronize its own clock to the clock of Device B.
This is only a rough description of the work mechanism of NTP. For details, refer to RFC 1305.
NTP Message Format
NTP uses two types of messages, clock synchronization message and NTP control message. An NTP
control message is used in environments where network management is needed. As it is not a must for
clock synchronization, it will not be discussed in this document.
All NTP messages mentioned in this document refer to NTP clock synchronization messages.
A clock synchronization message is encapsulated in a UDP message, in the format shown in
Figure 1-2 Clock synchronization message format
Main fields are described as follows:
LI: 2-bit leap indicator. When set to 11, it warns of an alarm condition (clock unsynchronized); when
set to any other value, it is not to be processed by NTP.
VN: 3-bit version number, indicating the version of NTP. The latest version is version 3.
Mode: a 3-bit code indicating the work mode of NTP. This field can be set to these values: 0 –
reserved; 1 – symmetric active; 2 – symmetric passive; 3 – client; 4 – server; 5 – broadcast or
multicast; 6 – NTP control message; 7 – reserved for private use.