# Performance Analysis of Time Synchronization Protocols in Wireless Sensor Networks
## 2 Related Works  
Evaluating the performance of time synchronization protocols in WSNs is a non-trivial task [32]. There are two common methods for achieving this task: using measurements on an experimental testbed or using a simulation tool. Testbed implementation can provide reliable, accurate, and practical results. However, the drawback of this method is that it is costly and time-consuming to build a large-scale testbed. Simulation tools provide great flexibility for validating and testing various scenarios. The accuracy of results from a simulation depends on how well the characteristics of the actual network are modeled. It is interesting to note that the researchers who proposed FTSP and GTSP used both aforementioned methods to demonstrate the precision of their proposed protocols. Despite that there has been a lack of diverse evaluations considering factors such as message jitter, network scale, and packet loss. Several studies [26; 27; 28; 29] have provided comparisons of time synchronization protocols based on theoretical analyses. However, they failed to provide quantitative performance analyses due to the absence of a simulation study. Other studies focused on classifying protocols into different categories. Essentially, synchronization protocols can be classified based on structure, synchronization approach, or message exchange mechanism [28]. Regarding structure-based classification, time synchronization protocols can be grouped into two categories: centralized and distributed time synchronization [33]. In centralized protocols [1; 2; 3; 4; 5; 6; 7; 8; 9; 10],a reference node (also called a root or master node) will appear in the network. All other nodes in the network will synchronize their clocks to the reference node by receiving flooded messages from the reference node. There are two approaches to flooding: slow flooding and rapid flooding. FTSP is slow flooding-based because each node waits a predetermined amount of time to propagate its time information. However, several studies [4; 6; 34] have pointed out that slow flooding decreases the accuracy of time synchronization protocols. [PERSON] et al. [4] proposed Flooding with Clock Speed Agreement (FCSA) protocol to reduce the undesired effect of slow flooding. FCSA aims to force all nodes to run at the same speed by estimating the relative hardware clock rate of a reference node. To achieve this goal, the timing message of FCSA must carry additional information, such as hardware clock rate and compensated drift (rate multiplier). In contrast, rapid flooding was employed in PulseSync [6] to prevent the problem of slow flooding. In PulseSync, nodes propagate the timing message from the reference node as fast as possible. However, rapid-flooding protocols must deal with the problem of collisions in the wireless network to achieve high performance. Moreover, this kind of flooding may not be possible in a low-duty cycle network because a node must wait for its transmission. The recently proposed Adaptive Value Tracking Synchronization (AVTS) [5] protocol, uses the technique of adaptive value tracking to determine the rate of the reference clock and synchronize the entire network. Because AVTS does not require least-squares regression, it has a smaller memory footprint compared to FTSP, PulseSync, and FCSA. However, AVTS has slower convergence time compared to the least-squares-based protocols [5]. Another study [10] introduced three approaches to synchronizing the time in low-power wireless sensor networks. These approaches are self-correction, clock-prediction, and analytical-correction. The authors argued that high accuracy is not necessary for all WSN applications, and they aimed to provide a trade-off between synchronization accuracy and power consumption with a target accuracy of milliseconds. Meanwhile, distributed time synchronization protocols [11; 12; 13; 14; 15; 16; 17; 18; 19; 20; 21; 22; 23] do not require any reference node. Therefore, they are robust to network topology changes and node failures.