The Internet of Things (IoT) technology enables physical devices to communicate with each other for preparing, gathering, and sharing hazard warnings or critical information without human intervention. With respect to emergency applications of IoT technology, an essential issue is to provide an efficient and robust scheme for data gathering. The proposed solution in the existing approaches is to construct a spanning tree over the IoT devices and collect data using the tree. The shortcoming of these algorithms is that they do not take into account the probability of device mobility or failure. In such cases, the spanning tree is split, and it becomes impossible to deliver critical data to the base station on time. In this paper, we propose a reliable spanning tree construction algorithm, which is called reliable spanning tree construction in IoT (RST-IoT). Our algorithm utilizes the artificial bee colony algorithm to generate proper trees. In this method, hop count distances of the devices from the base station, residual energies of the devices, and their mobility probabilities are considered to measure the appropriateness of the trees. Moreover, the proposed algorithm generates a number of trees instead of a single one. These trees are arranged according to their preferences and used for data gathering in succession. Each tree is employed for data gathering upon splitting the preceding one. The simulation results show that RST-IoT improves the reliability of data gathering in emergency applications compared to the previous approaches.
IntroductionThe Internet of Things (IoT) is a novel paradigm that considers the interaction of smart things. The main idea of IoT is that smart things or objects, such as sensors, actuators, smart phones, and RFID tags, are spread everywhere ubiquitously. These devices have interactions with each other and are able to collect and exchange data. The IoT paradigm covers a broad range of applications, comprising environmental monitoring [1, 2], transportation services, smart cities [3], emergency situation explorers, and industrial processes controllers [4].Reliable data gathering is an important issue to support emergency applications under IoT technology. The devices send the critical information to the base station for processing and decision making. Furthermore, the base station sends some commands to the devices under its control [5,6]. Transferring important data over the network requires a reliable backbone. The common approach for data gathering in IoT systems is to construct a spanning tree over the available devices [7][8][9][10][11]. The drawback of the existing algorithms is the unreliability of their generated trees. This shortcoming is mostly due to their failure in considering the characteristics of IoT devices. These devices are usually mobile and equipped with low-power batteries. Therefore, it is possible that the spanning tree is split because of the mobility of some devices or their energy exhaustion.