The Difference between SNTP and NTP
SNTP (Simple Network Time Protocol) and NTP (Network Time Protocol) are describing exactly the same network package format, the differences can be found in the way how a system deals with the content of these packages in order to synchronize its time. They are basically two different ways of how to deal with time synchronization.
SNTP Accuracy
While a full-fledged NTP server or client achieves a very high level of accuracy and avoids abrupt timestamps as much as possible by using various mathematical and statistical methods and smooth adjustments of the clock frequency, SNTP can only be recommended for simple applications where the requirements for accuracy and reliability are not too high.
Drift values
By ignoring drift values and using simplified methods to adjust the system clock (often simple time steps), SNTP achieves only low quality time synchronization compared to a full NTP implementation. SNTP version 4 is defined in RFC2030, where it states:
"It is strongly recommended to use SNTP only at the extreme ends of the synchronization subnet. SNTP clients should only be operated at the leaves (highest layer) of the subnet and in configurations where no NTP or SNTP client depends on another SNTP client for synchronization. SNTP servers should be operated only at the root (layer 1) of the subnet and only in configurations where no synchronization source other than a reliable radio or modem time service is available. The full degree of reliability normally expected from primary servers is only possible with the redundant sources, multiple subnet paths, and sophisticated algorithms of a full NTP implementation."
Therefore the term “NTP time server” or “NTP compatible client” can – by definition – describe a system with a fully implemented NTP as well as any other product which uses and understands the NTP protocol but achieves far worse levels of reliability, accuracy and security.