chrony is a client and server for the Network Time Protocol (NTP). This program keeps your computer's clock accurate. It was specially designed to support systems with intermittent Internet connections, but it also works well in permanently connected environments. It can also use hardware reference clocks, the system real-time clock, or manual input as time references.
linuxptp is an implementation of the Precision Time Protocol (PTP) according to IEEE standard 1588 for Linux. The dual design goals are to provide a robust implementation of the standard and to use the most relevant and modern Application Programming Interfaces (API) offered by the Linux kernel. Supporting legacy APIs and other platforms is not a goal.
ntpdate is a simple and small replacement for the homonymous and obsolete tool from the NTP Project's (www.ntp.org) reference implementation. ntpdate sets the local date and time by polling the Network Time Protocol (NTP) server(s) given as the server argument to determine the correct time. It must be run as root on the local host. It is not meant for real time synchronization.
SNTS (Simple Network Time Sync) is a simple, fast, and low-overhead time syncronization system for LANs. It is designed as a simple replacement for timed with better time control and better portability (for systems without a standard adjtime() call, such as Linux). It uses broadcasts to negotiate servers and set time, and allows multiple groupings of servers on a network for independent time management for groups or labs. SNTS also supports multiple servers in a single group.