**1. Introduction**

The internet of things (IoT) plays a remarkable role and makes the quality of our life efficient. It has been extensively studied and developed in recent years. The IoT is generally applied to many areas, including healthcare, transportation, wireless networks, and industry. The wireless sensor nodes (WSNs) are one of the prime parts of IoT applications. They face many challenges to exchange information and cooperate in wireless applications [1,2]. One of these challenges is power consumption. Generally, sensor nodes are frequently battery-powered in most IoT applications. To reduce the battery power consumption and increase the battery lifetime, sensor nodes switch between active and sleep modes. To wake up sensor nodes at a predetermined time, most of them require time synchronization [3,4]. Sensor nodes, as a result, require trust and reliable synchronization [5].

Sensor nodes are frequently equipped with a relatively inexpensive hardware clock oscillator [6]. As a result, reliable time synchronization for such sensor nodes is more difficult [7]. Time synchronization of such wireless networks with such sensor nodes cannot be well-preserved for an extended period of time unless an accurate synchronization technique is performed on a constant schedule [7]. In time division multiple access (TDMA) networks, a node's wake-up time might be completely erroneous due to a lack of synchronization, resulting in severe network connectivity failure. Therefore, time synchronization is considered an essential and important aspect of the sensor nodes' operations. It offers a common reference time for all sensor nodes in the entire network [8,9].

Generally, to keep the whole network well synchronized and to minimize time offsets caused by clock drift, all sensor nodes should require continuously exchanging timing

**Citation:** Elsharief, M.; El-Gawad, M.A.A.; Ko, H.; Pack, S. LPSRS: Low-Power Multi-Hop Synchronization Based on Reference Node Scheduling for Internet of Things. *Energies* **2022**, *15*, 2289. https://doi.org/10.3390/en15062289

Academic Editors: Antonio Cano-Ortega, Francisco Sánchez-Sutil, Marco Pau and Aurora Gil-de-Castro

Received: 9 February 2022 Accepted: 19 March 2022 Published: 21 March 2022

**Publisher's Note:** MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

**Copyright:** © 2022 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https:// creativecommons.org/licenses/by/ 4.0/).

messages [10]. Exchanging timing messages between the nodes is commonly utilized for time synchronization in sensor node networks. Since the transmission of messages usually accounts for most of the power consumption, frequent synchronization significantly increases power consumption [5,8]. Generally, time synchronization in IoT sensor nodes has two main problems: (1) communication overhead, which can be represented by the number of transmitted messages, and (2) accuracy. Both of these problems lead to a significant rise in power consumption [4,9].

Several protocols for sensor node synchronization have been developed. These protocols have been developed to synchronize all nodes in large networks [11]. The majority of these protocols aimed to enhance synchronization accuracy at the expense of higher communication overhead [2,4]. On the other hand, there are a few proposed protocols that are interested in reducing power consumption by reducing overhead connections [4,9]. Moreover, due to frequent collisions, these protocols suffer from message loss. Collisions have an effect on power usage and may result in synchronization failure [5,7].

All of these issues and problems motivate us to establish the low-power synchronization based on reference node scheduling (LPSRS) for IoT. It can save an amount of energy by reducing the number of timing messages sent between sensor nodes. Furthermore, LPSRS implements a technique that fully and completely prevents node collisions during the time synchronization process. According to experimental results and simulations, the performance of LPSRS has been extensively investigated compared to HRTS [12] and R-Sync [9]. The results demonstrate that LPSRS reduces the total number of transmitted messages by 53%, 49%, and 13% compared to HRTS, R-Sync, and FADS, respectively, and, thus, LPSRS can minimize the power consumption for time synchronization in the IoT.

The remainder of the paper is structured as follows: We address the related work in Section 2, while the preliminaries and system model of LPSRS are described in Section 3. Section 4 elaborates on the operations of LPSRS. Section 5 presents the experimental and simulation setup and discusses the results. This is followed by the simulation results. Finally, in Section 6, we conclude our work.

#### **2. Related Work**

Sensor nodes' time synchronization has been extensively researched over many decades. Many methods for clock synchronization have been proposed in the literature, all of which seek to reduce power consumption by improving accuracy and lowering communication overhead.

The flooding time synchronization protocol (FTSP) [13] pursues to minimize the error of synchronization by using the least square linear regression (LSLR) to compensate for the clock drift. Lenzen et al. have reported that the global synchronization error of FTSP rises exponentially with the size of the network [14,15]. They, then, propose a scalable technique called PulseSync, which can quickly flood the timing information all over the network [14]. Yildirim et al. indicated possible drawbacks of quick flooding and suggested a clock speed agreement algorithm. He proposed flooding with clock speed agreement (FCSA) [6] and an adaptive value tracking synchronization (AVTS) [16]. FCSA and AVTS, however, need many messages which increase the chance of collision and result in excessive power consumption [11].

The reference broadcast synchronization (RBS) [17] is typically a receiver-to-receiver protocol (RRP). By excluding the transmitter's delays from the offset computations, it improves the accuracy of the time offset estimate. In RBS, however, it sends a large number of messages in each cycle of the synchronization [7]. This leads to two different problems: a high chance of collision and excessive power consumption. Gong et al. developed the energy-efficient coefficient exchange synchronization protocol (CESP) to solve these issues [18]. Compared to RBS, it makes use of the synchronization coefficient to relatively reduce communication costs. CESP, on the other hand, is based on a stationary reference node and, thus, absorbs a lot of energy [9].

In [19], the timing-sync protocol for sensor networks (TPSN) was introduced. Although TPSN has good scalability, it requires regular resynchronization [20]. Furthermore, because of the enormous number of message exchanges required by TPSN, it consumes a lot of power [7]. Hierarchy reference broadcast synchronization (HRTS) [12] contains three stages that are repeated at every hierarchical level all over a multi-hop network. In HRTS, it is presumed that each node is aware of its adjacent neighbors. Despite being a scalable and lightweight protocol, HRTS has two drawbacks: high communication costs and excessive collisions [11].

M. Elsharief et al. introduced a synchronization technique called FADS [7]. FADS uses a scheduling technique to organize message transmission among sensor nodes, which reduces the number of collisions. FADS reduces latency by speeding up the scheduling process. During the scheduling process, FADS, however, requires a relatively large number of message transmissions, which consumes a lot of power [21].

The robust time synchronization (R-sync) for the industrial internet of things (IIOT) was also introduced in [9]. It focuses on locating and reconnecting the network's isolated nodes that have lost synchronization [22]. Despite the reality that R-sync needs fewer messages than TPSN, it lacks a collision avoidance technique.

In contrast to previous approaches, average time synchronization (ATS) [23] is a fully distributed method. To calibrate its compensation parameters, ATS employs a cascade of two consensus methods, and it allows nodes to converge to a steady-state virtual clock [5]. However, ATS suffers from frequent collisions, which might result in synchronization method failure [7]. To address the aforementioned shortcoming of ATS, the selective average time synchronization (SATS) [24] protocol has been suggested. It employs a dynamic programming method to increase the speed and accuracy of convergence in sparse WSNs. It achieves faster convergence than other protocols (ATSP [25] and CCS [26]). SATS, on the other hand, increases the number of transmitted messages since each node in SATS must forward every received message [27]. Based on ATS, the multi-hop average consensus time synchronization protocol (MACTS) [28] has been proposed. To improve the algebraic connectedness of the large-scale network, it leverages the notion of virtual communication linkages among multi-hop nodes. MACTS, like SATS, must send additional messages throughout the synchronization process. Message forwarding in large-scale networks, such as MACTS, can be delayed due to congestion among surrounding nodes [27].

The notion of density-based scheduling was introduced in [29], which can minimize overhead by reducing the number of reference nodes. It may, nevertheless, experience reception failure as a result of frequent packet collisions. Furthermore, it frequently suffers from coverage issues since it does not ensure the synchronization of some nodes that are not within the wireless range of any chosen reference nodes [7]. In [21], the low-power scheduling for synchronization protocol (LPSS) was introduced. It is a free collision m method. LPSS reduces the number of messages and accelerates the scheduling process. It, however, does not provide a synchronization scheme. In [30], Geo-TimeSyc was proposed. Geo-TimeSyc partitions the network into separated regions to avoid concurrent transmission of neighboring nodes. It reduces the probability of collisions [31]. As Geo-TimeSyc is implemented with RBS, it needs a large number of message exchanges. Recently, we proposed an energy-efficient synchronization technique called EERS [4]. It is a free collision protocol. Although ERRS substantially reduces energy consumption, it is only suitable for networks in which the nodes' locations are known.

From a thorough analysis of prior studies, we found that most of the prior techniques suffer from a serious problem of high power consumption. Hence, it is highly challenging to provide low-power synchronization. This problem motivates us to find a new technique to resolve it. Our approach, LPSRS, uses a scheduling method of [21] that tries to cover all nodes with as few reference nodes as possible. Then, it applies the synchronization scheme to synchronize all nodes in the entire network. LPSRS can save a large amount of energy by minimizing the usage of messages were sent and preventing collisions. As a result, LPSRS's contributions can be summarized in the following points:

