NTP Time Server - The Art of Synchronisation

Aug 26
09:27

2008

Richard N Williams

Richard N Williams

  • Share this article on Facebook
  • Share this article on Twitter
  • Share this article on Linkedin

This article explains network time synchronization

mediaimage
Even when the Internet when was its infancy, NTP Time Server - The Art of Synchronisation Articles with no more than a few computers connected together it became apparent that there was a need for time synchronisation. Computers are easily confused particularly with time which can only travel in one direction.

When a communication is sent from one computer and received by seems to have arrived before it was sent and this can cause unforeseen problems.

Think about buying an airline ticket only to turn up at the airport to find somebody has bought your seat after you did because they booked it on a computer with a slower clock!

Dr David Mills of the University of Delaware, realised the need for a synchronisation tool and developed Network Time Protocol (NTP). Although not the first and only time synchronisation protocol it is by far the most widely used and probably owes its success, to the now Professor Mills, and his dedicated team for its continual development.

What started out as a protocol that could manage synchronisation to a few milliseconds  is now able to keep computer clocks to within a few nanoseconds of each other (milli = 1/thousandth nano= 1/billionth).

NTP is hierarchical and is divided into Strata. A clock source is referred to as stratum 0, whilst a NTP time server is stratum 1, Computers and devices that receive a time from a stratum 1 server become stratum 2 and so on.

This hierarchical structure means that tens of thousands of devices can synchronise to the same time whilst not inundating the NTP time server or the bandwidth of the network.

NTP time servers rely on using a reference clock. whilst this can be anything from a wrist watch or a computer's system clock, it would be pointless to use a reference clock that was not accurate in itself.

Most networks that use a NTP time server will use a UTC time source. UTC or Coordinated Universal Time is based on the time told by the incredibly accurate and expensive atomic clocks. An atomic clock's time signals can be picked up either from across the Internet (although accuracy varies and is dependent on distance), specialist radio transmissions broadcast in several countries (including the US, UK, Germany, France and Japan) or via the American GPS (Global Positioning System).

The NTP time servers then distribute this stratum 0 time source between all devices on a network that connects with the NTP time server. NTP will either then advance or hold the system clock to match with the timing reference.

NTP also has in-built security measures called authentication. these are a set of keys that are encrypted and used to identify both client and server. Unfortunately authentication is unavailable on Internet time references which is why both Microsoft and Novell suggest hardware sources should be used as a timing reference.

NTP is currently on version 4 with version 5 under development and is open source and freely available to download via ntp.org.