Introduction to NTP

Why synchronise clocks?

When running a single computer system the accuracy of the internal clock is usually of little concern. Whilst a clock which gains or loses a few seconds here or there is an annoyance it is rarely of critical importance.

As soon as a computer is connected to a network of other computers however the time which it keeps becomes of more interest. This is especially true when using shared filesystems, when a modification time which appears in the future may confuse poorly written software, or when trying to debug the interaction of more than one system by examining the combined system logs.

What is NTP?

The Network Time Protocol, or NTP as it is more commonly referred, is a protocol for synchronising a set of network clocks using a set of distributed clients and servers. It was first suggested as an Internet Standard in RFC-958 and later formalised as an Internet Standard in RFC-1059 when version 1 of the protocol was accepted by the IETF. As time went by and limitations of the original protocol became apparent updates to the protocol were adopted, version 2 in RFC-1119 and most recently version 3 in RFC-1305.

What is NTPD?

The Network Time Protocol Daemon, or NTPD, is a software implementation of version 3 of the NTP protocol developed by the Network Time Protocol project capable of operating in either client or server roles. With minimal configuration it can be used to synchronise the local clock to a set of reference clock sources and then make this accurate time available to other clients over a network.