Posts by: Stuart

NTP GPS Server Synchronisation Solution

  |   By

Time synchronisation is now a critical aspect of network management enabling time sensitive applications to be conducted from across the globe. Without correct synchronisation computer systems would be unable to communicate with each other and transactions such as seat reservation, Internet auctions and online banking would be impossible.

For effective time synchronisation the global timescale UTC (Coordinated Universal Time) is a prerequisite. While a computer network can be synchronised to any single time source, UTC is employed by computer networks all over the world. By synchronising to a UTC time source a computer network can therefore be synchronised to every other computer network across the globe that also use UTC as their time source.

Receiving a reliable UTC time source is not as easy as it sounds. Many network administrators opt to use a UTC Internet time source. Whilst many of these time sources are accurate enough, they can be too far away to provide reliability and there are plenty of Internet time sources that are vastly inaccurate.

Another reason why Internet time sources should not be used as a source of time synchronisation is because an Internet time source is outside of a firewall and leaving a gap in the firewall to receive timing information can leave a system open to abuse.

So that UTC time can be opted as a civil time throughout the world several national physics laboratories broadcast a UTC timing signal that can be received and utilised as a network time source. Unfortunately, however, these time signals are not available in every country and even in those areas where a signal exists; they can be quite often obstructed by interference and local topography.

Another method for receiving a source of UTC time is to use the GPS satellite network. Strictly speaking the Global Positioning System (GPS ) does not relay UTC but it is a time based on International Atomic Time (TAI) with a predefined offset. A GPS NTP clock can simply convert the GPS time into UTC for synchronisation purposes.

The main advantage of using GPS is that a GPS signal is available anywhere on the planet providing that there is a clear view of the sky above (GPS transmissions are broadcast via line-of-sight) so UTC synchronisation can be conducted anywhere.

Time Synchronisation What is time?

  |   By

Time servers are common apparatus in modern server rooms but time synchronisation has only become possible thanks to ideas of physicist of the last century and it is our these ideas of time that has made many of the technologies of the last few decades possible.

Time  is one of the most difficult of concepts to understand. Until the last century it was thought that time was a constant but it wasn’t until the ideas of Einstein that we discovered time was relative.
Relative time was a consequence of Einstein’s most popular theory the ‘General Theory of Relativity’ and its famous equation E=MC2.

What Einstein discovered was that the speed of light was the only constant in the Universe (in a vacuum anyway) and that time will differ for different observers. Einstein’s equations demonstrated that the faster an observer travelled towards the speed of light the slower time would become.

He also discovered that time wasn’t a separate entity of out universe but was part of a four dimensional space-time and that the effects of gravity would warp this space time causing time to slow.

Many modern technologies such as satellite communication and navigation have to take these ideas into account otherwise satellites would fall out of orbit and it would be impossible to communicate across the globe.

Atomic clocks are so accurate they can lose less than a second in 400 million years but consideration to Einstein’s ideas have to be taken into account as atomic clocks based at sea level run slower that those at higher altitude because of the Earth’s gravity warping spacetime.

A universal time scale has been developed called UTC (Coordinated Universal Time) which is based on the time told by atomic clocks but compensates for the minute slowing of the Earth’s rotation (caused by the gravity of the Moon) by adding Leap Seconds every year to prevent day from creeping into night (albeit in a millennia or two).

Thanks to atomic clocks and UTC time computer networks all over the world can receive a UTC time source over the Internet, via a national radio transmission or through the GPS network. A NTP server (Network Time Protocol) can synchronise all devices on a network to that time.

NTP Time Server Packet Header Explained

  |   By

Most time servers use Network Time Protocol and like other Internet based protocols NTP contains a packet header. A packet header, put simply, is just is a formatted unit of data that describes the information contained in the packet.

The NTP packet header consists of a number of 32-bit words. Here is a list of the most common packet header terms and their meaning:

IP address – the address of the NTP Time Server

NTP Version – which version of NTP (currently version 4 is the most recent)

Reference timestamp (the prime epoch ) used by NTP to work out the time from this set point (normally January 01 1900

Round trip delay (the time it takes request to arrive and come back in milliseconds)

Local clock offset – time difference between host and client

Leap indicator (if there is to be a leap second that day –normally only on 31 December)

Mode3  –  a three bit integer which values represent: 0=reserved, 1=symmetric active, 2= symmetric passive, 3=client, 4=server, 5=broadcast, 6=NTP control message, 7=reserved for private use.

Stratum level – which stratum level the NTP server is (a stratum 1 server receives the time from an atomic clock source a stratum 2 server receives the time from a stratum 1 server)

Poll Interval (How many requests is made and their intermittence)

Precision – how accurate in milliseconds is the system clock

Root Delay – This is a signed fixed-point number indicating the total roundtrip delay to the primary reference source at the root

Root dispersion (in milliseconds)- The root dispersion is the maximum (worst case) difference between the local system clock and the root of the NTP tree (stratum 1 clock)

Ref ID – 32 bit identifying the reference clock

Originate time stamp (time before synchronisation request)

Receive timestamp – the time the host/NTO time Server got the request

Transmit timestamp – the time the host sent back the request

Valid  response– is the system clock  synchronised or not

NTP Server History and Implementation

  |   By

Network Time Protocol (NTP) was, invented by Dr David Mills from the University of Delaware, it has been in utilized since 1985 and is still in constant development. NTP is a protocol designed to synchronize the clocks on computers and networks across the Internet or Local Area Networks (LANs). Most networks are synchronised via NTP to a UTC time source (coordinated universal time)

UTC is based on the time told by atomic clocks and is used globally as standardized time source.

NTP (version 4) can maintain time over the public Internet to within 10 milliseconds (1/100th of a second)  of UTC time and can perform even better over LANs with accuracies of 200 microseconds (1/5000th of a second) under ideal conditions.

NTP works within the TCP/IP suite and relies on UDP, time synchronisation with NTP is relatively simple, it synchronises time with reference to a reliable UTC source and then distributes this time to all machines and devices on a network.

Microsoft and others recommend that only external based timing should be used rather than Internet based, as these can’t be authenticated and can leave a system open to abuse, especially since an Internet timing source is beyond the firewall. Specialist NTP servers are available that can synchronise time on networks using either the MSF, DCF or WWVB radio transmission. These signals are broadcast on long wave by several national physics laboratories.

In the UK, the MSF national time and frequency radio transmissions used to synchronise an NTP server is broadcast by the National Physics Laboratory in Cumbria which serves as the United Kingdom’s national time reference, there are also similar systems in Colorado, US (WWVB) and in Frankfurt, Germany (DCF-77).

A radio based NTP server usually consists of a rack-mountable time server, and an antenna, consisting of a ferrite bar inside a plastic enclosure, which receives the radio time and frequency broadcast. The antenna should always be mounted horizontally at a right angle toward the transmission for optimum signal strength. Data is sent in pulses, 60 a second. These signals provides UTC time to an accuracy of 100 microseconds, however, the radio signal has a finite range and is vulnerable to interference.

A radio referenced NTP server is easily installed and can provide an organization with a precise time reference enabling the synchronization of entire networks. The NTP server will receive the time signal and then distribute it amongst the network devices.

History of Timekeeping from Stonehenge to the NTP Server

  |   By

Keeping track of time has been as integral part of helping human civilisation to develop. It could be argued that the greatest step that mankind took was in the development of farming, allowing humans to free up more time to develop sophisticated cultures.

However, farming was fundamentally reliant on timekeeping. Crops are seasonal and knowing when to plant them is the key to all horticulture. It is believed that ancient monuments such as Stonehenge were elaborate calendars helping the ancients to identify the shortest and longest days (solstice).

As human civilisation developed, telling increasingly accurate time became more and more important. And identifying days of the year was one thing but calculating how far into a day was another.

Timing was extremely inaccurate up until the middle ages. People would rely on comparisons of time as a time reference such as how long it took to walk a mile or the time of day would be estimated from when the sun was highest (noon).

Fortunately the development of clocks during the middle of the last millennium meant that for the first time humans could tell with some degree of precision the time of day. As clocks developed so did their accuracy and civilisation became more efficient as events could be more accurately synchronised.

When electronic clocks arrived at the turn of the last century, accuracy was further increased and new technologies started to develop but it wasn’t until the rise of the atomic clock that the modern world really took shape.

Atomic clocks have enabled technologies such as satellites, computer networks and GPS tracking possible as they are so accurate – to within a second every hundred million years.

The atomic clocks were even discovered to be even more accurate than the spin of the Earth that varies, thanks to the Moon’s gravity and extra seconds have to be added to the length of a day – The leap second.

Atomic clocks mean that a global timescale accurate to within a thousandth of second has been developed called UTC – Coordinated Universal Time.

Computer networks to communicate with each other from across the globe in perfect synchronisation to UTC if they use a NTP time server.

An NTP server will synchronise an entire computer network to within a few milliseconds of UTC time allowing global communications and transactions.

Atomic clocks are still being developed the latest strontium clocks are promising accuracy to within a second every billion years.

Time Server History and The changing ways of recording time

  |   By

The NTP server or network time server as it is often called is the culmination of centuries of horology and chronology. The history of keeping track of time has not been as smooth as you may think.

What month was the Russian October revolution? I’m sure you have guessed that it is a trick question, in fact if you trace the days back to the October revolution that changed the shape of Russia in 1917 you will find it didn’t start until November!

One of the first decisions the Bolsheviks, who had won the revolution, chose to make was to join the rest of eh world by taking up the Gregorian calendar. Russia was last to do adopt the calendar, which is still in use throughout the world today.

This new calendar was more sophisticated that the Julian calendar which most of Europe had been using since the Roman Empire. Unfortunately the Julian calendar did not allow for enough leap years and by the turn of the century this had meant that the seasons had drifted, so-much-so, that when Russia finally adopted the calendar on after Wednesday, 31 January 1918 the following day became Thursday, 14 February 1918.

So whilst the October revolution occurred in October in the old system, to the new Gregorian calendar it meant it had taken place in November.

Whilst the rest of Europe adopted this more accurate calendar earlier than the Russians they still also had to correct the seasonal drift, so in 1752 when Britain changed systems they lost eleven days which according to the populist painter of the time, Hogarth, caused rioters to demand the return of their lost eleven days.

This problem of inaccuracy in keeping track of time was thought to be solved in the 1950’s when the first atomic clocks were developed. These devices were so accurate that they could keep time for a million years without losing a second.

However, it was soon discovered that these new chronometers were in fact too accurate – compared with the Earth’s rotation anyway. The problem was that while atomic clocks could measure the length of a day to the nearest millisecond, a day is never the same length.

The reason being is that the Moon’s gravity affects the Earth’s rotation causing a wobble. This wobble has the effect of slowing down and speeding up the Earth’s spin. If nothing was done to compensate for this then eventually the time told by atomic clocks (International Atomic Time- TAI) and the time based on the Earth’s rotation used by farmers, astronomers and you and I (Greenwich Meantime- GMT) would drift that eventually noon would become midnight (albeit in many millennia).

The solution has been to devise a timescale that is based on atomic time but also accounts for this wobble of the Earth’s rotation. The solution was called UTC (Coordinated Universal Time) and accounts for the Earth’s variable rotation by having ‘leap seconds’ occasionally added. There have been over thirty leap seconds added to UTC since its inception in the 1970’s.

UTC is now a global timescale used throughout the world by computer networks to synchronise too. Most computer networks use a NTP server to receive and distribute UTC time.

Timescales of NTP and advanced time server information

  |   By

The NTP timescale is based on UTC (Coordinated Universal Time) which is a global civil timescale that is based on International Atomic Time (TAI) but accounts for the slowing of the Earth’s spin by intermittingly adding ‘leap seconds.’

This is done to ensure that UTC is kept in coincidence with GMT (Greenwich Meantime, often referred to as UT1). Failing to account for the Earth’s slowing in its rotation (and occasional speeding up) would mean that UTC would fall out of synchronisation with GMT and noon, when the sun is traditionally the highest in the sky would drift. In fact if leap seconds were not added eventually noon would fall at midnight and vice versa (albeit in several millennia).

Not everybody is happy with leap seconds, there are those that feel that adding of seconds to keep the Earth’s rotation and UTC inline is nothing but a fudge. However, failing to do so would make such things as astronomical observations impossible as astronomers need to know the exact positioning of the stellar bodies and farmers are pretty reliant on the Earth’s rotation too.

The NTP clock represents time in a totally different way to the way humans perceive time. Instead of formatting time into minutes, hours, days, months and years, NTP uses a continuous number that represents the number of seconds that have past since 0h 1 January 1900. This is known as the prime epoch.

The seconds counted from the prime epoch continue to rise but wraps around every 136 years. The first wrap-around will take place in 2036, 136 years since the prime epoch. To deal with this NTP will utilise an era integer, so when the seconds reset to zero, the integer 1 will represent the first era and negative integers represent the eras before the prime epoch.

Time servers that receive their time from the GPS system are not in fact receiving UTC, primarily because the GPS network was in development before the first leap second but they are based on TAI.  However, GPS time is converted to UTC by the GPS time server.

The radio transmission broadcast from national physics laboratories such as MSF, DCF or WWVB are all based on UTC and so the time servers do not need to do any conversion.

Network Time Protocol Security

  |   By

The protocol used by most network time servers is NTP (Network Time Protocol) and has been around for quite a long time yet it is constantly being updated and developed offering ever higher levels of accuracy and security.

Synchronisation is an essential part of modern computer networks and is essential for keeping a system secure. Without NTP and time synchronisation a computer network can be vulnerable o malicious attacks and even fraud.

Even with a perfectly synchronised network security can still be an issue but there are a few key steps that can be taken to ensure your network is kept secure.

Always use a dedicated Network Time Server. Whilst Internet time sources are common place they are a time source situated outside the firewall. This will have obvious security draw backs as a malicious user can take advantage of the ‘hole’ left in your firewall to communicate with the NTP server. A dedicated NTP server will receive a time signal from an external source.

Normally these types of dedicated time servers will utilise either the GPS network (Global Positioning System) or specialist national time and frequency radio transmissions. Both these time sources offer an accurate and reliable method of UTC time (coordinated universal time) whilst also being secure.

Another way to ensure security is to take advantage of NTP’s built-in security mechanism – authentication. Authentication is a set of encrypted keys that are used to establish if the time source is coming from where it is claiming to come from.

Authentication verifies that each timestamp has come from the intended time reference by analysing a set of agreed encryption keys that are sent along with the time information. NTP, using Message Digest encryption (MD5) to un-encrypt the key, analyses it and confirms whether it has come from the trusted time source by verifying it against a set of trusted keys.

Trusted authentication keys are listed in the NTP server configuration file (ntp.conf) and are stored in the ntp.keys file. The key file is normally very large but trusted keys tell the NTP server which set of subset of keys is currently active and which are not. Different subsets can be activated without editing the ntp.keys file using the trusted-keys config command.

Authentication is highly important in protecting a NTP server from malicious attack; however Internet time sources can’t be authenticated which doubles the risk of using an Internet based time reference.

Time Server Top Tips for Time Synchronisation

  |   By

Time synchronisation is an integral part of modern computer networking particularly with the Internet and online communication having become so dominant.

Communicating with machines across the globe requires exact time synchronisation otherwise many of the online tasks we take for granted would not be possible. Time in the form of timestamps is the only form of reference a computer has to identify the order of events. So with time sensitive transactions time synchronisation is pivotal.

Here are some tips to ensure your network is running precise and accurate time as possible:

NTP (Network Time Protocol) is the world’s leading time synchronisation software. There are other time protocols but NTP is the most widely used and best supported.

Most computer networks across the globe are synchronised to UTC (Coordinated Universal Time). This is a global timescale based on the time told by atomic clocks. Always use a UTC source to synchronise too.

Always use an external hardware source as a timing reference as time sources from the Internet can not be authenticated. Authentication is a security measure used by NTP to ensure a timing reference is coming from where it says it is from. Also using an Internet timing source means that the reference is outside your networks firewall, this can cause added security risks.

Dedicated time servers can receive UTC signals from radio transmissions and the GPs network. These offer the most secure, accurate and reliable method of receiving a UTC time reference.

Networks based in Britain, Germany, the USA and Japan have access to long-wave time and frequency transmissions that are broadcast by national physics labs. These broadcasts are accurate and reliable and often the dedicated time servers that receive them are less expensive than their GPS alternatives.

GPS is available everywhere on the globe as a source of UTC time. GPS antennas do good a good 180 degree view of the sky and require a good 48 hours to receive a stable ‘locked’ satellite fix.

Arrange your network into strata. Stratum levels signify the distance from a timing source. A stratum 0 server is an atomic clock while a stratum 1 server is a dedicated time server that receives the time from a stratum 0 source. Stratum 2 devices are machines that receive their timing source from a stratum 1 server but stratum 2 devices can also be used to pass on timing information. By ensuring you have enough stratum levels you will avoid congestion in your network and time server.

UTC A global Timescale

  |   By

Coordinated Universal Time (UTC – from the  French Temps Universel Coordonné) is an international timescale based on the time told by atomic clocks. Atomic clocks are accurate to within a second in several million years. They are so accurate that International Atomic Time, the time relayed by these devices, is even more accurate than the spin of the Earth.

The Earth’s rotation is affected by the gravity of the moon and can therefore slow or speed up. For this reason, International Atomic Time (TAI from the French Temps Atomique International) has to have ‘Leap seconds’ added to keep it in line with the original timescale GMT (Greenwich meantime) also referred to as UT1, which is based on solar time.

This new timescale known as UTC is now used all over the world allowing computer networks and communications to be conducted at opposite sides of the globe.

UTC is governed not by an individual country or administration but a collaboration of atomic clocks all over the world which ensures political neutrality and also added accuracy.

UTC is transmitted in numerous ways across the globe and is utilised by computer networks, airlines and satellites to ensure accurate synchronisation no matter what the location on the Earth.

In the USA NIST (National Institute of Standards and Technology) broadcast UTC from their atomic clock in Fort Collins, Colorado. The National Physics Laboratories of the UK and Germany have similar systems in Europe.

The internet is also another source of UTC time. Over a thousand time servers across the web can be used to receive a UTC time source, although many are not precise enough for most networking needs.

Another, secure and more accurate method of receiving UTC is to use the signals transmitted by the USA’s Global Positioning System. The satellites of the GPS network all contain atomic clocks that are used to enable positioning. These clocks transmit the time which can be received using a GPS receiver.

Many dedicated time servers are available that can receive a UTC time source from either the GPS network or the National physics Laboratory’s transmissions (all of which are broadcast at 60 kHz longwave).

Most time servers use NTP (Network Time Protocol) to distribute and synchronise computer networks to UTC time.