How To Synchronise Your Windows PC to a Time ServerHow To Synchronise Your Windows PC to a Time Server Do you regularly need to correct the time on your PC? The answer is probably "Yes!". This is because computers have very poor time-keeping hardware. Often, the system clock in a regular PC can drift by minutes each day. However, help is at hand. It is very easy to synchronise the time on your Microsoft Windows computer with one of the most accurate clocks in the world. This article describes how to configure your Windows system to synchronise it's internal system time with an Internet based 'atomic time' reference.
PC's utilise an internal hardware real-time clock to maintain time. Generally, this hardware clock circuit utilises very low-cost components. This results in poor time-keeping performance. It is not unusual for a computer to loose minutes each day. There are hardware solutions available, which can improve timekeeping, such as more precision crystal oscillators. However, modifying PC's at board level is not an option for most users. Additionally, accurate time-keeping hardware can be prohibitively expensive. Ideally, a software solution to maintain accurate time is required. This is where the Network Time Protocol (NTP) comes in.
NTP is one of the oldest Internet protocols still in regular use today. Dr David Mills of the University of Dellaware invented it over 25 years ago. He recognised the need to synchronise time critical processes across the Internet. The Network Time Protocol allows client computers to synchronise to an accurate time reference over the Internet. NTP uses the UDP (User Datagram Protocol) over IP (Internet Protocol) to request time from an accurate time reference. It then waits for and accepts a response from the server before updating it's internal system time with the supplied reference time.
There are many NTP Servers residing on the Internet. Government or educational institutions generally maintain them. A NTP server obtains highly accurate time from an external time reference such as GPS or Radio and maintains this time internally. It then distributes the precise time to network time clients.
The latest Microsoft Windows operating systems, such as XP and Vista, incorporate a SNTP (Simple Network Time Protocol) client. This client can easily be used to synchronise to an Internet or locally based NTP server. The client is configured from the time and date properties applet in the control panel, or by double clicking on the time in the system tray. One of the time properties tabs is labelled 'Internet time'. On this tab is a field called "Server" which accepts either the IP address or domain name of a NTP time server. Click the "Update Now" button and Windows will attempt to synchronise with the selected time reference. Ensure that the "Automatically Synchronise with an Internet Time Source" option is ticked and Windows will periodically update time from the reference automatically, thus keeping your system clock accurate.
If synchronisation fails then ensure that the supplied IP address or domain name of the NTP server is correct. Alternatively, it may be your firewall that is preventing communication with the time server. NTP operates on UDP port 123, so you must ensure that this port is left open on your firewall. The Windows firewall can be accessed from the Control Panel. To open NTP port 123, open the Windows Security Centre and select 'Manage Security Settings for Windows Firewall'. From the Windows Firewall applet select the 'Exceptions' tab. Click 'Add Port' to add an exception to the firewall. Enter a name for the exception, such as 'NTP port', and port number '123' and check UDP. Click OK to accept the settings. If you have a separate combined firewall and ADSL router, you may need to refer to your manufacturers documentation to find out how to open a port on the firewall.
To conclude, most computers keep extremely poor time. For many applications that rely on accurate time stamps, this can be entirely unacceptable. However, by utilising the Network Time Protocol, everyone can ensure that their computers system time is kept in sync with the most accurate clock in the world!