Network Time Service
Written by Scott Ostrander   
Thursday, 02 February 2006 08:44
The Network Time Protocol (NTP) is used to synchronize the time of a computer client or server to another server or reference time source, such as a radio or satellite receiver or modem. It provides client accuracies typically within a millisecond on LANs and up to a few tens of milliseconds on WANs relative to a primary server synchronized to Coordinated Universal Time (UTC) via a Global Positioning Service (GPS) receiver, for example. Typical NTP configurations utilize multiple redundant servers and diverse network paths, in order to achieve high accuracy and reliability. Here at the School of Computing at the University of Utah, we use the NTP package (formerly the XNTP package) to implement the NTP protocol. NTP is a public-domain package and it allows each machine in our network to synchronize with main time server, timemaster.cs.utah.edu. This time server is synchronized to several machines on the Internet that get their time set from GPS receivers, atomic clocks, and the like.

Implementation on UNIX

Implementing clients that sync their time off of timemaster.cs.utah.edu is rather straight forward:
  • Two executables must be present: ntpd and ntpdate. These should exist in /usr/local/sbin.
  • The file /etc/ntp.conf must exist, and be configured for our environment.
  • There should also be a startup file, in /etc/init.d and linked to the various rcX.d directories, although this will depend on your computer OS version. Please refer to your OS documentation for configuration.
Once these files are in place, all you have to do is run the startup file to run ntpdate (which sets the clock explicitly), and then starts up ntpd (the daemon that keeps the time in sync with the server). When starting ntpd, please make sure that other time-keeping utilities, such as AFS and timed, are turned off, or other you'll start a war over time control. (This is something to be avoided!) That's it. Once ntpd is running, you should be set. 

Implementation on Windows

For Windows XP go to your Control Panel and start up the "Date and Time" panel. Select the "Internet Time" tab and enter timemaster.cs.utah.edu.

If you wish to install an NTP client on an older Windows machine, one of the most useful and free programs out there is NetTime. You can find it on many Windows resource sites. It possesses a simple interface for configuration. It runs on all Windows platforms, but as an added bonus it runs as a resource under Windows NT/2000. Simply add our time server to the software's configuration and you're done.

Other Resources

If your interested in learning more about the NTP protocol, check out the following links: