# A Survey of Secure Time Synchronization
## 3 Current Time Synchronization Methods
### Comparable Analysis of the Different Time Synchronization Protocols  
The NTP is the time synchronization protocol commonly used in the Internet domain [55]. NTP clients used statistical analysis of the round-trip time to synchronize their clocks with the NTP servers, with an accuracy of milliseconds. External time sources are used to synchronize the time servers such as GPS. In the Internet, the NTP has been proven to be effective, secure, and robust, and therefore it is deployed widely; however, in WSNs, transmission time can vary because, at each hop, medium access control (MAC) can introduce a delay of several hundreds of milliseconds [55]. The reference broadcast synchronization protocol was proposed by [PERSON] et al. which uses receiver-to-receiver synchronization instead of sender-to-receiver synchronization which is used by many other protocols [33]. The idea is to broadcast a beacon by using a third party without any timing information, and receivers will compare their times of receiving that beacon to their offset. Now, the only remaining uncertainty is propagation and receiving time. It is claimed that all nodes will receive the reference beacon straightaway which takes out propagation, but receiver uncertainty still remains in the protocol. [PERSON] et al. proposed a traditional sender-receiver-based time synchronization protocol called timing-sync protocol for sensor networks (TPSN) [28]. It is divided into two phases, in the first phase, a hierarchical topology of the network is created where each node is assigned a level and the node with lowest level becomes the root node. In the second phase, all the nodes in the tree synchronize to their parent using the round trip synchronization method. The flooding time synchronization protocol (FTSP) was proposed by [PERSON] et al. and it is the most well-known time synchronization approach [30]. In order to achieve relatively high precision, it uses a fine-grained clock, clock drift estimation, and time stamping at the MAC layer to reduce jitter. The tiny-sync/mini-sync protocols use multiple pairwise round-trip measurements and a line-fitting technique to obtain the offset and drift of the two nodes, rather than directly calculating the offset [20]. The IEEE 1588 PTP is more accurate than the NTP. In addition, in the PTP, a grandmaster synchronizes all the slave nodes which can eliminate the additional delay due to redistribution in the NTP [53]. The NTP and PTP are hard to use in wireless networks because of the resource constraints and asymmetry of communication links. Most of the existing protocols rely on a certain reference clock and hierarchical structure; however, the reference clock only considers the compensation of clock offset, which makes the protocols more vulnerable to intelligent attacks and single node failure. Several representative time synchronization protocols are selected to compare the performances of different protocols. For a comprehensive comparison and overview of the performances, we select different clock configurations (1 MHz, 50 MHz, 32.678 MHz, and 32.678 kHz) with different skews, either hardware clocks (MICAz mote or on the FPGA platform) or software simulation clocks. Figure 12 shows the comparison of maximum time synchronization errors in different protocols by histogram. The blue and red bars refer to the PISync and the FTSP evaluation performance on the MICAz hardware platform in [12], respectively, while the orange and purple bars refer to the experimental results of the PISync and DCBTS protocols on the FPGA testbed in [13]. In addition, a MATLAB-based simulator in [15] is utilized to evaluate the performances of PISync, D-PKCOs, and the TPSN, and the simulation results are illustrated in green, black, and brown bars, respectively. Overall, it is not surprising that all the protocols have increasing synchronization errors when the hop distance increases, but at different increasing rates.