Once you have selected a time server to sync to, it’s a great idea to pick at least another two. You could use two or one if you really wanted to but most documentation recommends two to three. The reason for this is the way the NTP protocol works. Not only does NTP ask the server for it’s current time, it also calculates the travel time there and back and works that into the current system time. The time it takes to get to and from the remote NTP server is referred to as delay. Here is my example again below.
remote refid st t when poll reach delay offset jitter
+18.104.22.168 22.214.171.124 2 u 54 64 377 63.472 -1.087 7.784
The next column in is offset, that is the measure of how far our clock is off from the remote clock. Small offsets will be gradually fix (Seconds), a larger offset will be stepped (the clock will jump). If the offset is too large, as an example of several minutes NTP will shutdown and assume something really bad has happened. If this happens the only way to restart NTP will be to use a command like ntpdate or manually fix the clock. Jitter is more complex but that is used in it’s formula to figure out a preferred server or to mark one bad.