Ntpd

The Network Time Protocol daemon (ntpd) is an operating system program that maintains the system time in synchronization with time servers using the Network Time Protocol (NTP).
Description.
The ntpd program is an operating-system daemon that sets and maintains a computer system's system time in synchronization with Internet-standard time servers. It is a complete implementation of the Network Time Protocol (NTP) version 4, but retains compatibility with versions 1, 2, and 3 as defined by RFC 1059, RFC 1119, and RFC 1305, respectively. ntpd performs most computations in 64-bit floating point arithmetic and uses 64-bit fixed point operations only when necessary to preserve the ultimate precision, about 232 picoseconds. While ordinary workstations and networks cannot achieve the ultimate precision , future processors and networks may require it.
xntpd is the Network Time Protocol version three (1992) daemon software. The "x" was added to the name because the branch of code that eventually became NTPv3 was "experimental". The name of the software changed back to "ntpd" for version four because the inventor of NTP, Dave Mills, decided that something probably should not remain "experimental" for about twenty years in the absence of dramatic change.
ntpd uses a single configuration-file to run the daemon in server and/or client modes. The configuration file, usually named ntp.conf, is located in the /etc directory. Other important files include the drift file, which ntpd uses to correct for hardware-clock skew in the absence of a connection to a more accurate upstream time-server.
Implementations.
NTP implementations.
NTP (RFC 5905):
Simple NTP (SNTP) implementations.
SNTP (RFC 4330):