Enterprise Computing Research Group


Research Areas








Contact Us

V-LAB (IP2001)





NTP at NUI Galway

The standard timescale used by most nations of the world is Coordinated Universal Time (UTC), which is based on the Earth's rotation about its axis, and the Gregorian Calendar, which is based on the Earth's rotation about the Sun. The UTC timescale is disciplined with respect to International Atomic Time (TAI) by inserting leap seconds at intervals of about 18 months. UTC time is disseminated by various means, including radio and satellite navigation systems, telephone modems and portable clocks.

Special purpose receivers are available for many time-dissemination services, including the Global Positioning System (GPS) and other services operated by various national governments. For reasons of cost and convenience, it is not possible to equip every computer with one of these receivers. However, it is possible to equip a small number of computers acting as primary time servers that can then synchronise a much larger number of secondary servers and clients connected by a common network. In order to do this, a distributed network clock synchronisation protocol such as the Network Time Protocol (NTP) is required. This protocol can read a server clock, transmit the reading to one or more clients and adjust each client clock as required.

The Need for Synchronised Time
Electronic clocks in servers and networking devices keep inaccurate time. Even fairly accurate computer clocks are likely to vary die to manufacturing defects, changes in temperature, electric and magnetic interference, the age of the oscillator, or even computer load. If a clock is off by just 10 parts per million, it will gain or lose almost a second a day.

The accuracy of NTP depends on how many hops occur between client and server, and other network latency inducing factors. Experiments with NTP suggest accuracies to a millisecond can be expected when operated over a high speed LAN and tens of milliseconds on a WAN [2]. Network operations typically require the most accuracy, in the order of 1 to 10 milliseconds.

What is NTP?
NTP is the Internet standard protocol for time synchronisation and coordinated time distribution using the UTC time standard. It is designed to maintain accuracy and robustness, even when used over typical Internet paths involving multiple highways, highly dispersive delays and unreliable networks. It is a fault tolerant protocol that will automatically select the best of several time sources with which to synchronise. In addition, it is highly scalable as its network has a hierarchical self-organising design.

NTP does not attempt to synchronise clocks to each other. Rather, each server attempts to synchronise to UTC using the best available source and transmission paths to that source. For communication between clients and servers NTP uses the UDP protocol on port 123. Time service requests are tried at designated polling intervals until the server responds. When first started transactions occur about once per minute, increasing gradually to once every 17 minutes. Using UDP prevents retries from using up network bandwidth if a time server with a large number of clients becomes faulty. Clients can use time information from multiple servers to automatically determine the best source of time and prevent bad time sources from corrupting their own time.

The Irish NTP subnet
The Irish NTP subset relies on overseas primary servers (mostly in the UK and Europe) accessed via long distance network links that are frequently congested. This means that the accuracy achieved by NTP in Ireland may be worse than that achieved in other parts of the Internet.

The NTP server at NUI, Galway is currently the only operational stratum-1 server in Ireland

A stratum-1 NTP server has been set-up to provide time synchronisation within the I.T. Department. The platform used for the server was Linux 6.2. The primary reason for choosing Linux as the operating system was because of its support for pulse-per-second (PPS) signalling. While not currently implemented, PPS may be useful at a later stage. In addition, a number of stratum-2 clients have been set-up on both Linux and Windows machines.


The synchronisation time source for the NTP server is Trimble’s Acutime 2000 GPS Synchronisation Kit. The benefits of GPS derived time and frequency are long-term stability and coordination with the worldwide time network via the GPS time standard. Support for the Linux platform, accuracy of timing and the level of NTP support were the main considerations in deciding which GPS receiver to purchase as the synchronisation source for the stratum-1 server. The timing pulse (PPS) and event time stamps generated by the Synchronisation Kit are synchronised to UTC within 50 nanoseconds. The following is an example of Trimble’s Synchronisation Kit performance on a typical Linux time server over several days.

Site Designed By: Edward Curry