Network Time Protocol
The Network Time Protocol is:
- a method of obtaining accurate time information via the Internet,
- very accurate, usually better than 50 milliseconds, depending on network traffic and the quality of your network service, and
- available on the Internet anywhere in the World, but the closer to a primary server you are, the higher the accuracy of the time information you receive.
In order to make use of the NTP the following ingredients are needed:
- An Internet capable computer,
- A connection to the Internet, and
- NTP client software.
It is easy to synchronize networks of any description using the NMISA time servers. For example Netware servers can be synchronized using a free Netware Loadable Module (NLM) available on the Internet.
Specifics on the NMISA NTP Server
NMISA currently has two NTP servers running. The first is a Stratum 1 server, connected to the South African master clock, a cesium atomic clock, and the second is a Stratum 2 server, obtaining it's time information from our Stratum 1 server. (The Stratum number of a NTP server is the number of hops it is away from an accurately known source of time information, such as an atomic clock.) The Stratum 1 server is only available internal to NMISA with the Stratum 2 server (time.nmisa.org) available for anybody to use.
A number of different timing protocols exists on the Internet. The NTP, SNTP and Time protocols are briefly discussed below:
- The Network Time Protocol (NTP)
When the highest accuracy time information available on the Internet is required, the NTP protocol is used. NTP is robust and can select the best from a number of time sources, will reject false sources, operates to a very high precision in the Internet realm, with its variable delays and path lenghts. The NTP data packet contains information about the mode of operation, Stratum number of the server, polling interval, precision, delay and dispersion of the server as well as an identifier. It also contains four time stamps, and an optional authenticator. The time stamp is the number of seconds since 0h on 1 January 1900, in a 32 bit field, with the fractions of a second in a second 32 bit field. This gives the NTP protocol a precision of about 200 picoseconds, which should be sufficient for even the most demanding applications. The typical accuracy of a synchronised NTP client is between 1-50 milliseconds. More information is available in RFC-1305.
- The Simple Network Time Protocol (SNTP)
When the ultimate accuracy of NTP is not required, SNTP can be used. The SNTP client/server exchange is the same as the NTP client/server exchange, except that when using SNTP, some of the fields in the data packet are "canned", which means they are filled with pre-determined values. The advantage of the SNTP implementation is that it is much simpler and fewer exchanges are made between the client and the server. The typical accuracy of a SNTP client/server exchange is fractions of a second. More information is available in RFC-1769.
- The Time Protocol
This protocol provides a site-indepenent, machine readable date and time in a 32 bit field as the number of seconds since midnight on 1 January 1900. No fractions of seconds are returned. This very simple protocol responds to a user polling the server by returning a packet containing the data field as described above. The uncertainty on the returned timestamp is 1 second, when network delays are ignored, which means that the accuracy of this protocol is much lower than the two described above. More information is available in RFC-868.
More information on the Network time protocol can be found on the NTP pages.
