A Guide To GPS Network Time Synchronization
A GPS NTP Server is a network appliance designed to obtain very accurate time from the GPS satellite positioning system and synchronize a network of time clients. The device ensures that accurate time is provided to servers, workstations and network infrastructure such as routers and switches. Additionally, many other network devices, such as CCTV cameras, digital video recorders (DVR) and telephone systems can also be configured to synchronize to a NTP server.
Why is Time Synchronization Important?
A standard PC’s real-time clock is based on a crystal oscillator, identical to the components found in an every-day watch or clock. Like a watch or clock, they typically drift over time. In a network environment, this can cause real problems. Distributed computer systems initially synchronized to the same time, over a period of only a few hours will have significantly differing system times.
Networks of computers all need to be synchronized to the same time, so that events occur in an organised, predetermined manner. For many organisations and industries such as financial institutions, media companies, security and military, precise time on their computer systems is a must. Additionally, applications such as data-logging and monitoring and control all rely on accurate time. A GPS NTP server provides a network with an accurate source of time that client computers can utilize for precise synchronization.
The Global Positioning System (GPS)
The Global Positioning System (GPS) is a satellite based system that provides positioning, navigation and timing (PNT) services. It is widely used in vehicle and marine satellite-navigation systems to provide location and direction information.
The system is US military owned and maintained. It consists of a constellation of 24 satellites in Medium Earth Orbit (MEO) arranged to allow at least 4 satellites to be visible from almost any point on the face of the Earth.
Each satellite in the constellation carries an on-board atomic clock, accurate to one second in 300 million years, which is synchronized to a master atomic clock located in a base station on Earth. The satellites orbit the Earth at least twice a day and constantly transmits a weak radio signal providing satellite position and timing information. A low-cost GPS receiver-antenna can use the broadcast time and satellite positioning information to provide very accurate time and precise location information. The satellite broadcasts can be used by timing applications and devices as a very accurate source of time.
GPS timing signals can be received by relatively low-cost antenna and receiver systems which generally provide time and date information in a serial format. Additionally, a pulse output is usually provided which very precisely marks the start of each second. The pulse output is accurate to sub-microsecond levels and can be used by timing equipment as a synchronization pulse.
http://www.gps.gov/ The official US Government site for information about the Global Positioning System (GPS) and related topics.
http://en.wikipedia.org/wiki/Global_Positioning_System – The Wikipedia free encyclopedia entry for the Global Positioning System.
http://www8.garmin.com/aboutGPS/ – Garmin Satellite based navigation information.
The Network Time Protocol (NTP, SNTP)
Network Time Protocol (NTP) is a network protocol developed to disseminate accurate time around a computer network. It is one of the oldest network protocols that is still widely used today. NTP is typically used to synchronize a computer time server to a hardware reference clock, such as GPS or radio time sources. The time server can then be used by other lower-stratum servers and clients to synchronize time. The protocol essentially consists of packets of timing information passed between a client and server in order that the client can accurately synchronize its system time to that of the server. NTP operates in a hierarchical manner, a stratum 1 NTP server resides at the highest level of the hierarchy and obtains time from a hardware reference clock, such as GPS or radio time sources. Each stratum below obtains time from the stratum above. In this manner hundreds of thousands of clients can be accurately synchronized without all needing to access the highest level server.
Simple Network Time Protocol (SNTP) is a simplified version of the full NTP protocol. It lacks the complex algorithms utilized in NTP to maintain a much more accurate time. SNTP is generally implemented by small computers and micro-controllers in devices such as CCTV cameras. The Microsoft Windows operating system also uses an SNTP implementation for time synchronization.
http://www.ntp.org/ – The home of the network time protocol (NTP).
http://en.wikipedia.org/wiki/Network_Time_Protocol – The Wikipedia free encyclopedia entry for the Network Time Protocol (NTP).
http://www.pool.ntp.org/en/ – The internet NTP pool project provides a large cluster of virtual time servers providing NTP synchronization to millions of internet clients.
GPS, UTC and Local Time
Each GPS satellite has a very accurate atomic clock on-board which are synchronized to a ground based stations, so that each satellite has the same time. The satellites are synchronized to GPS time, which is not corrected to match the rotation of the Earth. It is not corrected for leap seconds or any other small variation that may be periodically required for variation in the Earth’s spin. UTC time, which is widely used on Earth is adjusted for leap seconds, so that is closely matches the Earth’s rotation. The broadcast GPS messages include an offset which allows UTC time to be calculated from GPS time. Currently, the difference between GPS and UTC time is 16 seconds.
Neither the GPS system or NTP provide time zone or daylight saving information. Both GPS, via the UTC offset, and NTP operate using UTC time only. Any offset applied for time zone or daylight saving must be added by the client computer. In this manner a NTP client located anywhere in the world can synchronize to a NTP server located anywhere else in the world. Local time adjustments are made on a local client basis.
Platforms, Architecture and Operating Systems For NTP
The NTP protocol was originally developed for the LINUX operating system. Traditionally a GPS NTP server would be based on x86 PC type architecture running LINUX.or similarly derived operating systems. However, recently the move towards lower-cost ARM based technology with the ability to run LINUX there has been a surge of GPS referenced NTP installations on ARM processors.
Low cost processor boards such as the Raspberry Pi and Arduino have seen implementations of GPS referenced NTP servers, particularly with hobbyist developers.
The NTP project has also now been ported to the Microsoft Windows operating system. It can be downloaded and compiled on a Windows machine, but only a limited number of reference clock drivers are currently available. The application replaces the standard Windows Time service (w32time) to provide much tighter accuracy.
http://ntpi.openchaos.org/pps_pi/ – Raspberry Pi Stratum-1 NTP Server with PPS.
NTP Server and GPS Source Code Availability
The NTP source code is freely available and downloadable from the internet under a GNU General Public Licence. It can be used without charge completely royalty free. The source code is provided with reference clock drivers for a number of hardware clocks. These include many GPS receivers, such as Trimble, Motorola and Trak as well as drivers for a number of radio clocks.
Additionally, many hobbyists use the GPSd daemon in conjunction with NTP. GPSd is a software application that receives timing and positioning information from a generic GPS receiver and provides the information to other applications via a standard software interface. In this manner NTPd can be used to pass timing information from a range of GPS receivers to the NTP application to provide timing.
http://www.ntp.org/downloads.html – Download the latest version of the NTP project source code.
http://en.wikipedia.org/wiki/Gpsd – The Wikipedia free encyclopedia entry for GPSd.
http://www.catb.org/gpsd/ – The GPSd project page.
GPS Antenna Types
There are a number of different antenna types available. However, they generally fall into one of two groups – true GPS antennas or combined GPS antenna\receivers. Combined GPS antenna\receiver units are usually packaged into a weather-proof enclosure but often have a flying lead, which provides a RS232 serial connection. Such devices have a couple of inherent problems for use in timing applications. Firstly, RS232 serial communications can only be utilized over a relatively short cable distance. Secondly, the device often needs a separate source of power. Also, the units are relatively expensive when compared to true GPS antennas. It is far better to have a lower-cost antenna exposed to the elements that is relatively inexpensive to replace than a more expensive combined unit.
True GPS antennas have a coax connector, such as BNC, TNC or N-type. They utilize 50 ohm coax cable, such as RG58, LMR195 or LMR400. Ideally, for timing applications, the antenna should have quite a high gain, which allows much longer cable runs. The antenna is powered from the GPS receiver and does not require any additional external power supplies.
GPS Antenna Installation and Cabling Requirements
Ideally, a GPS antenna should be located with a full 360-degree clear view of the sky. Roof tops and antenna towers make great antenna locations. However, some GPS receivers that are intended for timing applications can operate in an over-determined clock mode. This means that the GPS receiver can operate with an antenna located on the side of a building or in a window. Cutting-edge receivers can operate in a high-sensitivity mode with can even allow indoor operation with no view of the sky whatsoever. This functionality can provide a real saving on installation costs over other GPS receivers. However, if access to the roof is available, it is beneficial to provide the antenna with a good 360-degree view of the sky, which will provide more satellites in view for added resilience.
Typically, a GPS antenna is connected to a NTP server with 50-ohm coax cable. Various types of coax are available with different associated losses. Generally, for shorter cable runs to around 30m, common RG58 will suffice. For longer cable runs to 150m, lower-loss LMR400 is a good choice. If very log cable runs are required, GPS amplifiers can be used to boost signal attenuation to allow extended cable length. Additionally, GPS over optical fiber solutions allow antennas to be located as much as 10km away.
If an outdoor antenna is utilized, it is recommended that a surge suppressor is fitted in-line on the antenna cable. This protects the NTP server and other network equipment from potential lightning strikes or other surges. Lightning does not have to strike the antenna directly to cause damage, a strike anywhere in the local vicinity of the antenna can cause a surge through the ground. A surge suppressor generally requires a connection to a low-impedance earth which is used to divert any voltage surges away from the sensitive network equipment.
Disadvantages of Using the GPS System for Time Synchronization
The GPS system is US utility. It is maintained and controlled by the US military. Many organizations do not like the fact that it is controlled by a single military organisation. Additionally to many non US organizations it is viewed as being controlled by a foreign power. The objection to military control will soon be overcome with the introduction of Europe’s Galileo Global Navigation Satellite System (GNSS) which will provide a civilian maintained service when it becomes fully operational in 2019.
A GPS antenna should ideally be located on a roof-top with a good view of the sky, which can be expensive to install. Whereas many radio antennas can operate with an indoor antenna. However, with advances in GPS receiver technology and single satellite operation, often window mounted antennas can be satisfactorily utilized.
http://www.esa.int/Our_Activities/Navigation/The_future_-_Galileo/What_is_Galileo – Information on the Galileo GNSS system from the European Space Agency.
http://www.gsa.europa.eu/galileo-0 – European Global Navigation Satellite Systems Agencies Galileo web page.
Alternatives to GPS
GPS is not the only source of accurate time. There are a number of alternative hardware clock references, notably radio time broadcasts such as WWVB, DCF-77 and MSF. Many countries broadcast radio signals which encode accurate time and date information. However, these broadcasts are generally only available within national boundaries and are not as accurate as GPS. Alternative GNSS systems, such as GLONASS (Russia) and Beidou (China) are available but are far less popular than the GPS system.
Alternatives to NTP
The Network Time Protocol is by far the most widely used protocol for the dissemination of time on computer networks. It is used throughout the internet as well as in most organizations for time synchronization of computers and network devices. However, one of the few alternatives to NTP is the Precision Time Protocol (PTP) which is defined by the Institute of Electrical and Electronics Engineers (IEEE1588). PTP was designed to fill a gap between NTP and GPS timing to provide higher accuracy than NTP without requiring the expense of a GPS receiver at each node where time is required. PTP can provide accuracy in the sub-microsecond range which makes it ideal for scientific applications and measurement and control systems.