The Network Time Protocol (NTP) was developed to distribute time around a computer network to network time clients. It is one of the oldest Internet protocols still in operation. Simple Network Time Protocol (SNTP) was developed as a simplified version of NTP. It lacks many of the complexities of the NTP protocol and is ideal for implementation on computers with low processing power.
This article describes the differences between NTP and SNTP. The article also describes when the SNTP protocol can be safely implemented in place of NTP. The article also descibes the differences between a NTP server and a SNTP server.
NTP protocol packets transferred between a NTP server and client are identical to SNTP packets. Each field in a NTP packet of information has a corresponding field in a SNTP packet. NTP protocol packets are entirely interchangeable with SNTP protocol packets. Infact a NTP server has no way of telling if a time request originated from a NTP or SNTP client.
The difference between the NTP and SNTP protocols lie in the algorithms used to implement the protocols. NTP has complex algorithms designed to query multiple NTP servers or external reference clocks and decide on the most accurate time reference. NTP constantly monitors multiple time references for jitter and offset and decides which is the best one to synchronise. NTP corrects time by slewing the system clock. The system clock is speeded up or slowed down in order to bring it slowly into sync with a time reference. Large stepped time adjustments are avoided. NTP has complex synchronisation algorithms that calibrate the system clock to match the frequency of an accurate reference clock.
SNTP is a simplified sub-set of the algorithms used by the NTP protocol. SNTP does not slew the host computers system time instead it steps forwards or backwards to the correct time. Adjusting the system time in steps can cause time critical applications problems. SNTP also lacks the functionality to monitor multiple NTP server reference clocks and decide on the optimal source of time. Instead it utilises a list of references and in the event of failure of a reference it moves on to the next.
The SNTP protocol is best suited to synchronizing computers at the extremities of a computer network. It is ideally suited to less powerful processors, such as micro-controllers and embedded systems, which do not require the accuracy of NTP. The complex algorithms of NTP may not be practically implemented on small computers. NTP is ideal for use in dedicated NTP server systems and synchronising large networks of computers. Here, time may be critical and the added complexity of NTP will help maintain accurate synchronisation.
--------
David Evans has been involved in the telecommunications and network timing industry for a number of years. David is a free-lance technical author with a long history of involvement in installing and configuring NTP server systems. He has also provided a technical authoring service to many ntp server and reference clock manufacturers. Click here to find out more about ntp server systems.
Disclaimer: All information on this site is provided for informational purposes only! By no means is any
information presented herein intended to substitute for the advice provided to you by any health care or other professional
or organization.