This research aimed at the development of a modified real-time fault-tolerant task allocation scheme (mRFTAS) for wireless sensor networks (WSNs), using active replication backup techniques. In WSNs, the sensor nodes are at risk of failure and malicious attacks (selective forwarding) and this can have a profoundly negative effect on real-time WSNs. The real-time fault-tolerant task allocation scheme (RFTAS) was developed to address these issues, however, it has the problem of processing time delay. This is attributed to the characteristic of the passive backup copy technique adopted for the RFTAS in which the backup copy is only activated when the primary copy has failed. The delay in the activation of the backup copies of the primary tasks in tasks allocation execution processes as a result of a failure of sensor nodes or the primary tasks, will cause disastrous consequences if the systems are safety-critical, e.g. aircraft, nuclear power plant, forest fire detection, battlefield monitoring. The mRFTAS was therefore developed using the active replication backup technique where both the primary and backup copies of tasks are executed concurrently. The performance of the mRFTAS and RFTAS was compared using total execution time of the task, energy consumption, reliability cost and network lifetime. A graphical user interface (GUI) based system for simulation of sensor nodes in WSNs using RFTAS and mRFTAS called the task allocation scheme simulator (TASS) was developed in order to carry out the performance evaluation. The performance of mRFTAS showed an improvement over RFTAS in terms of minimizing task execution time (28.65%) and reliability cost (7.29%) while maximizing network lifetime (22.26%) but with a trade-off in energy consumption (-17.32%).
TABLE OF CONTENTS
TITLE PAGE I
TABLE OF CONTENTS VIII
LIST OF FIGURES XII
LIST OF TABLES XIII
LIST OF ABBREVIATIONS XIV
CHAPTER ONE : INTRODUCTION
1.1 Background 1
1.2 Significance of Research 3
1.3 Statement of Problem 4
1.4 Aim and Objectives 4
1.5 Methodology 5
1.6 Dissertation Outline 6
CHAPTER TWO : LITERATURE REVIEW
2.1 Introduction 7
2.2 Review of Fundamental Concepts 7
2.2.1 Wireless sensor networks (WSNs) 7
2.2.2 Task allocation in WSNs 9
2.2.3 Fault-tolerance in wireless sensor networks 11
2.2.4 Real-time WSNs system 13
2.2.5 The real-time fault tolerant task allocation schemes 14
2.2.6 Performance metrics. 16
2.3 Review of Similar Works 19
CHAPTER THREE : MATERIALS AND METHODS
3.1 Introduction 27
3.2 Materials 27
3.3 Analyses of the Real-time Fault-tolerant Task Allocation Scheme 27
3.3.1 Task allocation mechanism based on dPSO 27
3.3.2 The encoding of particle 30
3.3.3 Fitness function 31
3.3.4 dPSO-Based task allocation algorithm description 31
3.3.5 Calculation process of start execution time of the task’s primary and backup copies 33
3.3.6 Calculation process of the earliest start time of the task’s primary copy 33
3.3.7 Calculation process of the latest start time of the task’s backup copy 33
3.3.8 Allocation process of the task’s primary copy 34
3.3.9 Allocation process of the task’s backup copy 36
3.4 The Modification of the Real-time Fault-tolerant Task Allocation Scheme 38
3.4.1 Allocation process of the task’s backup copy 38
3.4.2 The flowchart of the modified real-time fault tolerant task allocation scheme 40
3.5 Development of the GUI for the Wireless Sensor Network Simulations 41
3.5.1 Wireless sensor networks simulator 41
3.5.2 Programming 44
3.5.3 Wireless sensor network simulation 44
3.6 Comparisons of the Performance of mRFTAS AND RFTAS 45
CHAPTER FOUR : RESULTS AND DISCUSSIONS
4.1 Introduction 46
4.2 Task Allocation Scheme Simulator 46
4.3 Result of the Analyses of the Real-time Fault-tolerant Task Allocation Scheme 47
4.4 Result of the Analyses of the Modified Real-time Fault-tolerant Task Allocation Scheme50
4.6 Result Performance Percentage Improvement of the mRFTAS over RFTAS 54
CHAPTER FIVE CONCLUSION AND RECOMMENDATIONS
5.1 Summary 57
5.2 Conclusion 57
5.3 Significant Contributions 58
5.4 Recommendations for Further Work 58
1.1 Background to the Study
Wireless sensor networks (WSNs) comprise of a number of sensor nodes, which are mostly used in obtaining important information in some target areas (Chen et al., 2012). WSNs have multiple areas of applications, such as battlefield (Gangadharaiah et al, 2014), military intelligence sensing and tracking, environmental tracking (Mei et al., 2010), emergency response and disaster management (Guo et al, 2014), bio-complexity mapping of the environment, flood detection, precision agriculture, medical telemonitoring, chemical and structural monitoring (Shi et al., 2012). WSNs are also invaluable in fields such as the Internet of Things (IoT), cyber-physical systems, intelligent vehicle systems and smart cities (Zhang & Long, 2017). WSNs are known to have a major constraint, which is the low power consumption requirement of sensor nodes (Guo et al, 2015b). Parallel processing between sensor nodes is an innovative technology which supports the essential computation capacity in WSNs (Guo et al, 2014, 2015b) while ensuring low power consumption by the sensor nodes.
Task allocation plays a significant role in parallel processing. Assigning a task to the suitable sensor nodes and simultaneously balancing the network load in context of the uncertain and dynamic network environments are essential to parallel processing (Guo et al, 2014). However, studies carried out on the problem of task allocation in distributed systems indicate that the drawbacks encountered in task allocation in WSNs are different when compared with those of conventional distributed systems (Guo et al, 2014, 2015b). In WSNs, the issue of task allocation involves assigning tasks logically within sensor nodes so as to reduce the general power utilization while still guaranteeing that the tasks are completed before the set deadlines, thus prolonging the lifetime of the sensor network (Guo et al, 2011, 2015b). Load balancing is an essential factor for prolonging the network lifetime (Suganya & Jayanthi, 2016); Guo et al, 2015b). In the absence of proper task allocation techniques, every sensor node will work
independent of others (Guo et al, 2015b). WSNs have challenges such as instability of wireless communication links and dynamically changing topologies. As a result of which, there are potentially additional uncertainties and vulnerabilities for real-time applications (Suganya & Jayanthi, 2016; Guo et al, 2015b). A sensor node failure should not necessarily affect the entire tasks processing of the sensor network especially for safety and security critical applications. In order to sustain the performance of the sensor networks without interruption due to failures of the sensor node, fault tolerance turns out to be an invaluable initiative (Suganya & Jayanthi, 2016; Guo et al, 2015b). For instance, if sensor nodes are being deployed in a battlefield or military-camp for surveillance and detection, the fault tolerance has to be high because the sensed data are critical for security and safety reasons (Priyanka et al, 2016; Guo et al, 2015b). Hence, a fault-tolerant mechanism is mandatory for such safety and time-critical applications (Guo et al, 2015b; Zhu et al, 2011). Fault-tolerant innovation in different layers of WSNs abstraction is summarized in Table 1.1.
Table 1.1: Fault-Tolerant Innovation in Different Layers of WSNs Abstraction (Guo et al, 2015b)
Obtaining proper reliability by reducing the data redundancy
backup/primary copy or data aggregation
improving monitoring quality by the discovery of
Fault detection and isolation
providing better resilience and controlling
Data link layer
enhancing the coverage level with a robust link
Fault-tolerant coverage and topology control
building reliability by exploring the
natural information redundancy
Hardware redundancy, multiple sensors exploration
The issue of task allocation is handled at the application layer as can be seen in Table 1.1, with focus on reducing data redundancy while ensuring enhanced reliability (Guo et al, 2015b).
(Priyanka et al., 2016) used information aggregation as a mean of reducing data redundancy and securing precise data. The replication technique which involves the use of primary/backup (P/B) system is the most widely used technique for fault-tolerant task allocation as it tolerates copies of a task to be processed on separate sensor nodes (Guo et al, 2015b). There are two types of the backup scheme namely, passive and active (Priyanka et al, 2016). The active is the process in which both the primary and the backup copies are executed concurrently while the process in which the backup copies are activated only after there is an incorrect result obtained from the primary copies is known as the passive (Guo et al, 2015b).
The real-time fault-tolerant task allocation scheme is the kind of scheme that is used to prevent system failure or system breakdown and has mostly employed the passive replication backup technology. However, the passive replication scheme has the problem of delay in task processing time (Han, 2015). Delay in task processing time can be disastrous to real-time systems that are critical in term of safety.
1.2 Significance of Research
Task allocation and scheduling are essential for WSNs in order to maximize the lifetime of the networks by either reducing the energy consumption or the processing time. Recently, task allocation researches are being carried out with the view of providing systems that are fault tolerant with emphasis on energy minimization and less attention is given to the total time of tasks execution.
There is need for a real-time WSN that is fault-tolerant and safety critical, thus the need for the development of a modified real-time fault-tolerant task allocation scheme, such as to avoid the breakdown of a system as a result of the failure of some sensor nodes. The modified real-time fault tolerant task allocation scheme will help a system to keep operating even in the presence
of some failures, inevitably reducing the total time of an entire task allocation process, thus prolonging the system lifetime.
1.3 Statement of Problem
A WSN comprises of numerous resource-constrained sensor nodes, which are frequently deployed in unattended environments. Consequently, the sensor nodes are at risk of failure and/or malicious attacks and failed nodes can have a profoundly negative effect on real-time WSNs. Therefore, a key issue to be considered in real-time systems is the time delay in task processing (which can arise from issues associated with nodes failures). Accordingly, it is crucial that network failure is identified early and properly taken care of in order to ensure network reliability and lifetime.
The Real-time Fault-tolerant Task Allocation Scheme (RFTAS) was designed to prevent system breakdown due to node failures/fault, however, it had the issue of delay in task processing time. The developed modified Real-time Fault-tolerant Task Allocation Scheme (mRFTAS) is to address the issue of delay in task processing time associated with the RFTAS.
1.4 Aim and Objectives
The aim of the research is the development of a modified real-time fault-tolerant task allocation scheme (mRFTAS) for WSNs.
The following are the objectives of this research work:
1. Development and implementation of the mRFTAS using active replication backup techniques.
2. Development of a graphical user interface (GUI) for simulation of sensor nodes in WSNs using real-time fault-tolerant task allocation scheme (RFTAS) and mRFTAS respectively called the task allocation scheme simulator (TASS).
3. Comparison of the performance of mRFTAS and RFTAS using task execution time, energy consumption, reliability cost and network lifetime as the performance metrics.
The steps of the methodology adopted for this work are as follows:
1. Development of modified real-time fault-tolerant task allocation scheme (mRFTAS).
i. Adoption of Real-time fault-tolerant task allocation scheme by (Guo et al, 2015).
ii. Remove the laxity time included in the real-time fault-tolerant task allocation scheme (RFTAS).
2. Development of a GUI (graphic user interface).
i. Download of Visual Studio 2015 Professional.
ii. Instillation of Visual Studio 2015 in windows 10.
iii. Setting the Network Configuration
a. Set the size of the network
b. Set the radius of the sensor
c. Set the sensor time
d. Set the sensor cost
e. Set the communication range
f. Set the transmitter time
g. Set the transmitting cost
h. Set the received cost
3. Implementing the real-time fault-tolerant task allocation scheme in wireless sensor networks using C# in the developed graphical users interface (GUI).
4. Implementing the modified real-time fault-tolerant task allocation scheme in wireless sensor networks using C# in the developed graphical users interface (GUI).
5. Simulation of the sensor nodes with RFTAS and mRFTAS.
6. Comparison of the performance of RFTAS and mRFTAS using task execution time, energy consumption, reliability cost and network lifetime as the performance metrics.
1.6 Dissertation Outline
The outline of this dissertation report is as follows, Chapter One entails the general background of the research work; Chapter Two presents the review of the fundamental concepts essential to the research work and also detailed review of similar works; Chapter Three comprises of detailed explanation of materials and methods used for the research; Chapter Four presented results and discussions; Chapter Five concludes dissertation and provides a number of recommendations for future work.