Network Time Protocol (NTP)
NTP is an internet protocol that’s used to synchronize the clocks on computer networks to within a few milliseconds of universal coordinated time (UTC). It enables devices to request and receive UTC from a server that, in turn, receives precise time from an atomic clock.
What Is NTP?
“A man with one watch knows what time it is. A man with two watches is never sure.”
Segal’s law pokes fun at the person who makes no effort to check they’re right while highlighting the complexity of receiving information from more than one source.
When it comes to synchronizing your operations, network time protocol (NTP) solves both problems, providing users with the certainty of accurate time across a whole network of devices.
Like any network protocol, NTP is a set of rules, or conventions, that dictate how devices on a network should transmit, receive and understand data. Think about it as a shared language, allowing devices to communicate, in this instance, about time.
NTP allows networked devices, such as clocks, phones and computers, to request and receive time from a server that, in turn, receives precise time from a definitive time source, like an atomic clock.
NTP was developed in the 1980s and is now on version four. Since its release, it’s been used to synchronize the critical systems of businesses, organizations and governments all over the world.
Why Is Time Synchronization Important?
Precise time is vital to everyday life.
As life becomes digitized and automated, exact time is increasingly important:
- The telecommunications industry relies on accurate time for the transfer of vast amounts of data.
- Utility companies use time synchronization to manage power distribution.
- Financial services need exact time to timestamp transactions and ensure traceable records.
- Satellite navigation depends on precise time, with a difference of one microsecond causing a positioning error of 300 metres.1
- CCTV and speed cameras require an accurate timestamp to be admissible as evidence.
- Countless businesses rely on precise time to manage their day-to-day processes, such as synchronizing clocking-in systems.
For organizations of any size, NTP is a cost-effective, reliable and user-friendly method of distributing precise time throughout a network, allowing users to boost productivity, improve customer service, enhance security and more.
Moreover, by using NTP to synchronize to UTC—a global time standard—organizations and governments are able to coordinate international operations.
What Is UTC and How Is It Decided?
UTC is the standard the world has agreed on as the basis for civil time. It’s the result of a decades-long process of invention, revision and collaboration, during which time the standard moved from Greenwich Mean Time (GMT) to Atomic Time (TAI), to UTC.
Importantly, UTC is a time standard, not a time zone, which means it’s the same all over the world and isn’t affected by daylight savings. In fact, time zones are expressed according to their offset from UTC (+/- the number hours). UTC is maintained by comparing more than 200 atomic clocks located all over the world. The Bureau International des Poids et Measures (BIPM), in France, is responsible for collating this data and generating definitive UTC time.
How Does NTP Work?
A time server and antenna can synchronize a network to UTC.
NTP makes UTC available to an organization by taking a time signal from one, or more, atomic clocks and distributing it to networked devices.
The clients and server communicate in a series of requests and responses:
- The client sends an NTP request packet to the time server, stamping the time as it does so (the origin timestamp).
- The server stamps the time when the request packet is received (the receive timestamp).
- The server stamps the time again when it sends a response packet back to the client (the transmit timestamp).
- The client stamps the time when the response packet is received (the destination timestamp).
This process may only take microseconds, but the timestamps allow the client to account for the roundtrip delay and work out the difference between its internal time and that provided by the server, adjusting itself as necessary and maintaining synchronization.
NTP Hierarchy: Stratum Levels Explained
Devices on one stratum can provide time to devices on the next.
On large networks, there may be so many clients that the server can’t handle requests from all of them. In these instances, servers and clients are arranged in a hierarchy of levels called stratums.
Stratum one servers have a direct connection, via a radio or GPS signal, with the primary time source, and they provide that time to clients on stratum two via a network connection.
In turn, stratum two devices can function like a server by providing time to clients on stratum three, and those on stratum three can provide it to those on stratum four—and so on. In this way, stratum one devices aren’t overloaded with too many requests.
A total of 15 synchronized stratum levels are possible (stratum 16 is for unsynchronized clients), but each one introduces another layer of network delay, causing accuracy to decrease. To combat this, NTP clients can be set up to request time from multiple servers to help them determine the correct time as closely as possible.
What Is SNTP and How Is It Different?
Simple network time protocol (SNTP) is exactly what its name suggests: a stripped-down version of NTP that’s suited to small networks and computers with limited processing power.
SNTP and NTP share several similarities. For example, the packets of data exchanged between the clients and the time server are identical, making any time server compatible with both.
However, SNTP lacks the many algorithms that NTP uses to determine and maintain synchronization.
Practically, for instance, NTP calculates the drift rate of a given clock from the true time and adjusts that rate to maintain the clock’s synchronization. SNTP, on the other hand, allows the clock to drift and then jumps the time forward or back to match the true time at given intervals.
Between these intervals, it’s possible for the clock to be out of sync, making SNTP unsuitable for applications that demand the highest levels of precision.
SNTP also differs in the number of servers it uses for synchronization. Whereas NTP allows clients on one stratum to act as servers to clients on the next, SNTP is based on a single server-client relationship.
Additional time servers can be specified as backups, but SNTP, unlike NTP, is unable to communicate with several servers in order to discern which is the most accurate. SNTP was released in the early 1990s to suit the limited processing power of the computers of the day. Today, there are few instances where NTP can’t be handled, but SNTP can still be useful for simple applications that don’t require the higher level of precision provided by NTP.
Public NTP Servers vs. Local NTP Servers
Local NTP servers sit inside your firewall, avoiding the vulnerabilities caused by public servers.
There are two types of NTP servers that you can use to provide UTC time to your network: public servers and local servers.
A public time server is owned and operated by a third party who makes it available for use over the internet. The NTP Pool Project provides an online directory of public servers, allowing you to direct your clients to one of these, free of charge.
Local (aka internal) NTP servers are those you own yourself and install in your premises, establishing a physical network connection between your servers and clients.
If synchronized time is critical to your operations, then internal time servers are the safer, more reliable option. They provide improved accuracy and more control while avoiding the various drawbacks of public servers:
How to Synchronize Your Network with an Internal NTP Server
typical set up uses NTP to synchronize a network to a GPS time signal.
To set up an NTP network with an internal time server, you need a number of things:
- A reference clock/time source that defines and transmits the true time.
- A time receiver, in the form of a radio or GPS antenna.
- An NTP server, which receives the time from the antenna and delivers it to a network.
- The devices/clients to be synchronized.
A reference clock is the primary time source that defines and provides UTC time. Atomic clocks are the most accurate type of reference clock, providing near-inconceivable levels of precision.
For instance, the NIST-F2, created by the US National Institute of Standards and Technology, measures the vibration of a cesium atom to define a second (9,192,631,770 vibrations per second). If run without interruption, the clock would neither gain or lose one second in 300 million years.
Thankfully, you don’t need to install an atomic clock in your server room to receive precise time. They’re installed in the satellites of the global positioning system, and they’re maintained in the laboratories of national standards agencies all over the world. These clocks transmit time signals that you can pick up and use to synchronize your own network.
GPS antennas can receive a time signal from multiple satellites.
Each GPS satellite transmits a time signal that anyone can receive with a GPS antenna. The global positioning system is designed so that at least four satellites are constantly available from anywhere in the world, making it a highly reliable source of accurate time.
Alternatively, radio antennas receive a time signal from one of several atomic clocks on earth. The range of these signals is localized, so users have to consider which station provides the strongest signal and use an antenna that’s set to that frequency.
GPS time signals are the most accurate and have the advantage of being globally available. However, the antenna requires a 360° view of the sky, which isn’t possible in every situation.
Radio time signals, on the other hand, can be received through windows, making a radio time source a good option for premises that don’t have an unobstructed view of the sky.
However, a radio time signal can be affected by topography and downtime, making it less reliable and not ideal for synchronizing very critical systems.
Either way, the receiver connects to an internal NTP server via a cable that can be up to 1,000 meters long, when used with a power booster, giving businesses lots of flexibility when it comes to installation.
Internal NTP Servers
A rackmount NTP server installs easily alongside your existing IT hardware.
An NTP server receives the time from the reference clock, via the antenna, and provides it to your network.
The type of server you choose will depend on a number of factors:
- Whether you’re using a GPS or radio time source.
- How many clients you want to synchronize.
- Whether or not you want to supply time to multiple networks.
- What operating system you want to use.
- How you want to physically install the server.
Choose a radio or GPS time server, depending on which of these sources is the best for you. Alternatively, dual time servers are a good choice for applications that require the highest level of reliability. These servers use a radio and GPS antenna to receive time from both, allowing the server to draw time from the strongest source and automatically revert to the other if one signal is lost.
To avoid spending money on features you don’t need, you should match your time server to the size of your network.
The Galleon Systems NTS-4000 synchronizes a single network and is ideal for smaller businesses. The NTS-6002 can synchronize two independent networks, making it a great choice for organizations with separate staff and customer networks.
For the most-demanding applications, the NTS-8000 can synchronize up to six networks—ideal for supplying precise time to independent networks on different floors of a building.
Each of these time servers is capable of synchronizing thousands of clients, and they’re all available in a radio, GPS or dual configuration.
Time servers can run on several different operating systems, but any client can access a server running on any OS. For instance, clients running MacOS can communicate with a Windows time server by using their built-in NTP client software.
Finally, choose a server that meets the physical requirements of your space. Many time servers come in a rack-mountable body, allowing you to integrate them alongside your existing IT hardware. Alternatively, you can enjoy the same functionality from a standalone server, which sits on any flat surface.
Ethernet clocks are ideal for displaying precise time throughout your premises.
Clients are the devices you connect to your time server to be synchronized. Virtually any device can be a client if it meets three conditions:
- It has a built-in clock.
- It can be connected to a network via an Ethernet connection.
- It’s capable of running NTP/SNTP client software.
Possible clients include computers, phones, clocks, CCTV systems, clocking-in systems, payment terminals and more.
Many devices have NTP client software built-in. If not, TimeSync software is easy to install on Windows devices, allowing you to synchronize a range of clients for a variety of purposes.
What Is NTP? Conclusion
NTP provides businesses and organizations with a reliable, user-friendly and cost-effective method of time synchronization.
It’s one of the oldest internet protocols still in use and, though now on version four, retains many of the principles that made it so popular in its early years.
By connecting your networked devices to a time server, which receives a signal from a definitive time source, you can enjoy the benefits of precise time in any location, boosting productivity, improving customer service and synchronizing your operations.
For a no-obligation discussion about implementing NTP in your organization, contact Galleon Systems: 0121 608 7230.