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.
OmniSync is a driver for NTPd for people who are firewall-challenged. It enables systems to synchronize time when port 123 (UDP) is blocked. It allows you to sync against the daytime service, time, SNTS, IRC, ICMP, SNMP, precision time protocol (PTP -- IEEE 1588), HTTP, HTTPS (both also via proxy server), and (S)NTP via a Socks(5) proxy server. It doesn't directly set the clock, but uses NTPd for this, as this enables you to have multiple time sources as well as bad-chimer detection, etc.
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.