Network Time Protocol (NTP) is a protocol used to retreive the time from a remote time server. NTP evolved from other protocols such as the Daytime, ICMP timestamp and the older Time protocol (TimeP). NTP is used to synchronize the clocks of several computers from distributed sources and maintain a high degree of accuracy. Time synchronization is required by several protocols, especially Kerberos. Clients can contact a network time protocol server to retrieve time and the protocol uses some very complex mechanisms to account for what is called "dispersion delay" or the time required to send out the time message to the remote host.
MODES OF OPERATION
Network Time Protocol can operate in one of two modes. The mode affects how time messages sent and received and represent different types of NTP relationships between hosts running NTP.
Asymmetric (Peer to Peer)
In asymmetric mode, two devices share NTP information and maintain state information during the exchange of time information. Both hosts use UDP port 123 for communication. When port 123 is used for both the source and destination port numbers, it signals the receiver that asynchronous mode is being used.
Symmetric (Client-Server)
Clients request time from servers and the servers respond without using any state information. In this mode, a request is sent to destination port 123 on the server and a different source port is used for the client. The different port numbers indicate which device is acting as server and which as client.
(More info later when InetD has time...)