selection of e ciently adaptable clustering algorithm upon ... · wsn [1,2] consists of a large...
TRANSCRIPT
Selection of Efficiently Adaptable
Clustering Algorithm upon Base Station
Failure in Wireless Sensor Network
Dissertation
submitted in partial fulfillment of the requirements
for the degree of
Master of Technology
by
Tushar D. Maheshwari
Roll No: 121022009
under the guidance of
Dr. Jibi Abraham
Department of Computer Engineering and Information Technology
College of Engineering, Pune
Pune - 411005.
June 2012
Dedicated to
my mother
Smt. Sunita D. Maheshwari
and
my father
Shri. Dinesh K. Maheshwari
DEPARTMENT OF COMPUTER
ENGINEERING AND
INFORMATION TECHNOLOGY,
COLLEGE OF ENGINEERING, PUNE
CERTIFICATE
This is to certify that the dissertation titled
Selection of Efficiently Adaptable ClusteringAlgorithm upon Base Station Failure in Wireless
Sensor Network
has been successfully completed
By
Tushar D. Maheshwari
(121022009)
and is approved for the degree of
Master of Technology.
Dr. Jibi Abraham
Guide and Head,
Department of Computer Engineering and Information Technology
College of Engineering, Pune, Shivaji Nagar, Pune-411005.
Date :
Abstract
Wireless Sensor Network (WSN) applications have increased in recent times in
fields such as environmental sensing, area monitoring, air pollution monitoring,
forest fires detection, machine health monitoring, and landslide detection. In such
applications, there is a high need of secure communication among sensor nodes.
There are different techniques to secure network data transmissions, but due to
power constraints of WSN, group key based mechanism is the most preferred one.
Hence, to implement scalable energy efficient secure group communication, the
best approach would be hierarchical based like Clustering.
In most of the WSN designs based on clustering, Base Station (BS) is the
central point of contact to the outside world and in case of its failure; it may lead to
total disconnection in the communication. Critical applications like these cannot
afford to have BS failure as it is a gateway from sensor networks to the outside
world. In order to provide better fault tolerant immediate action, a new BS at
some other physical location will have to take the charge. This may lead to a total
change in the hierarchical network topology, which in turn leads to re-clustering
the entire network and in turn formation of new security keys. Therefore, there is
a need to find a suitable algorithm which clusters sensor nodes in such a way that
when a BS fails and a new BS takes the charge, new group key gets established
with minimum computation and less energy consumption.
A survey on various clustering algorithms like Energy-Efficient Multi-level
Clustering Algorithm for Large-scale WSNs (EEMC), Low Energy Adaptive Clus-
tering Hierarchy Protocol for WSNs (LEACH), Power Efficient and Adaptive
Clustering Hierarchy Protocol for WSNs (PEACH), Hybrid, Energy-Efficient, Dis-
tributed Clustering Approach for WSNs (HEED) and Energy Efficient Clustering
Algorithm for Maximizing Lifetime of WSNs (EECML) has been done to analyze
their performance with respect to various parameters like power consumption of
sensor nodes, cluster overlapping, cluster stability, fault tolerance and node-cluster
information based on the literature survey and on the basis of these parameters we
came to know that HEED and EECML are probably the most suitable algorithms
to achieve our aim. So HEED and EECML are implemented on TinyOS, an open
source platform for building WSN applications and their performance is evaluated
for required parameters. From evaluation it is found that EECML could be the
most suitable algorithm that makes a WSN adaptable upon failure of BS.
iii
Acknowledgments
I express my sincere gratitude to my guide Dr. Jibi Abraham for her constant
help, encouragement and inspiration throughout the project work. Without her
invaluable guidance, this work would never have been a successful one. I would
also like to thank all the faculty members of the department for their valuable
suggestions and helpful discussions. Last, but not the least, I would like to thank
my dearest and closest friends and of course parents who have been the backbone,
advisors and constant source of motivation throughout the work.
Tushar D. Maheshwari
College of Engineering, Pune
June, 2012
iv
Contents
Abstract iii
Acknowledgments iv
List of Figures vii
List of Tables viii
1 Introduction 1
1.1 Wireless Sensor Networks . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 MICA2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.3 Clustering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.4 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.5 Thesis Objective . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.6 Thesis Outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2 Literature Survey 7
2.1 Wireless Sensor Networks . . . . . . . . . . . . . . . . . . . . . . . 7
2.2 TinyOS-Platform for Practical Implementation . . . . . . . . . . . . 7
2.2.1 Basic Structure of TinyOS . . . . . . . . . . . . . . . . . . . 8
2.2.2 Features of TinyOS . . . . . . . . . . . . . . . . . . . . . . . 8
2.2.3 File Types in TinyOS . . . . . . . . . . . . . . . . . . . . . . 9
2.2.4 The nesC language . . . . . . . . . . . . . . . . . . . . . . . 10
2.2.5 TOSSIM-TinyOS Simulator . . . . . . . . . . . . . . . . . . 11
2.2.5.1 Characteristics of TOSSIM . . . . . . . . . . . . . 11
2.2.5.2 Compiling and Running Simulation . . . . . . . . . 12
2.3 Clustering Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.3.1 Low Energy Adaptive Clustering Hierarchy Protocol for WSNs
(LEACH) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.3.2 An Energy-Efficient Multi-level Clustering Algorithm for Large-
scale WSNs (EEMC) . . . . . . . . . . . . . . . . . . . . . . 14
2.3.3 Power Efficient and Adaptive Clustering Hierarchy Protocol
for WSNs (PEACH) . . . . . . . . . . . . . . . . . . . . . . 15
2.3.4 Hybrid, Energy-Efficient, Distributed Clustering Approach
for WSNs (HEED) . . . . . . . . . . . . . . . . . . . . . . . 17
2.3.5 Energy Efficient Clustering Algorithm for Maximizing Life-
time of WSNs (EECML) . . . . . . . . . . . . . . . . . . . . 21
3 Proposed Approach 29
3.1 Evaluation Parameters . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.1.1 Power Consumption of Sensor Nodes . . . . . . . . . . . . . 29
3.1.2 Cluster Stability . . . . . . . . . . . . . . . . . . . . . . . . 29
3.1.3 Fault tolerance and Re-clustering . . . . . . . . . . . . . . . 30
3.1.4 Cluster Overlapping . . . . . . . . . . . . . . . . . . . . . . 30
3.1.5 Scalability . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.1.6 Node Cluster Information . . . . . . . . . . . . . . . . . . . 30
3.2 Further Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
4 Implementation and Results 33
4.1 Implementation in TinyOS . . . . . . . . . . . . . . . . . . . . . . . 33
4.1.1 Challenges in Implemetation . . . . . . . . . . . . . . . . . . 33
4.1.2 Estimation of Energy Dissipation . . . . . . . . . . . . . . . 34
4.2 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
4.2.1 Power Consumption of sensor nodes . . . . . . . . . . . . . . 36
4.2.2 Cluster stability . . . . . . . . . . . . . . . . . . . . . . . . . 36
4.2.3 Scalability . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.2.4 Fault Tolerance . . . . . . . . . . . . . . . . . . . . . . . . . 40
4.2.5 Cluster Overlapping . . . . . . . . . . . . . . . . . . . . . . 40
4.2.6 Node Cluster Information . . . . . . . . . . . . . . . . . . . 40
4.2.7 Power Consumption of Cluster Head . . . . . . . . . . . . . 40
5 Conclusion and Future Work 43
5.1 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
5.2 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
6 Publications 45
Bibliography 46
vi
List of Figures
1.1 Sensor information forwarding without clustering and aggregation . 3
1.2 Sensor information forwarding with clustering and aggregation . . . 4
1.3 Clustering hierarchy before failure of Base Station . . . . . . . . . . 5
1.4 New clustering hierarchy after failure of Base Station . . . . . . . . 5
2.1 Clustering hierarchy before failure of Base Station . . . . . . . . . . 9
2.2 Hierarchy of the various files in TinyOS . . . . . . . . . . . . . . . . 10
2.3 Clustering hierarchy before failure of Base Station . . . . . . . . . . 11
2.4 System design of HEED protocol . . . . . . . . . . . . . . . . . . . 20
2.5 Algorithm model of EECML . . . . . . . . . . . . . . . . . . . . . . 24
2.6 Protocol operation of EECML . . . . . . . . . . . . . . . . . . . . . 26
2.7 Complete scenario of sensor network when clustered through EECML 27
2.8 Flowchart of each Cluster Head gathering data from its member
and the lower layer CH located in the same clustering angle . . . . 28
4.1 Power Consumption of all sensor nodes in HEED and EECML after
formation of clusters but before failure of Base Station . . . . . . . 37
4.2 Power Consumption of all sensor nodes in HEED and EECML after
failure of Base Station (average of different positions of new BS) . . 38
4.3 Stability of clusters in HEED and EECML . . . . . . . . . . . . . . 39
4.4 Residual energy of Cluster Head(s) in a cluster(No. of nodes=25) . 41
4.5 Residual energy of Cluster Head(s) in a cluster(No. of nodes=50) . 42
List of Tables
3.1 Comparative results of various clustering algorithm as per literature
survey . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4.1 Results for total energy consumed by Sensor Nodes after formation
of clusters but before failure of Base Station . . . . . . . . . . . . . 37
4.2 Results for total energy consumed by Sensor Nodes after failure of
Base Station . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
4.3 Results for Cluster Stability . . . . . . . . . . . . . . . . . . . . . . 39
4.4 Results showing residual energy of Cluster Head(s) in a cluster . . . 41
4.5 Residual energy of Cluster Head(s) in a cluster . . . . . . . . . . . . 42
viii
Chapter 1
Introduction
1.1 Wireless Sensor Networks
Wireless sensor network consists of large number of small, low power, low cost
sensor nodes with limited memory, computational, and communication resources
and a Base Station. These nodes continuously monitor environmental conditions
and collect detailed information about the physical environment in which they
are installed, then transmits the collected data to the BS. BS is a gateway from
sensor networks to the outside world. The BS has a very large storage and large
data processing capabilities. It passes the data it receives from sensor nodes to
the server from where end-user can access them. The sensors nodes are generally
deployed around the area of the Base Station and form groups as per the need of
the Base Station.
WSN has an advantage of being operated unattended in the environment where
continuous human monitoring is either risky, inefficient or infeasible. Sensor nodes
run on batteries and once nodes are deployed their batteries cannot be recharged,
so they have short lifespan.
There are various applications of Wireless Sensor Network; they are mainly de-
ployed in military and health applications. Also they are applied in robot control,
automatic manufacturing, office or home automation. WSN is useful in detecting
forest fires based on temperature information it receives from large number of
distributed sensor nodes.
1
1.2 MICA2
1.2 MICA2
The MICA2 [31, 32] is a third generation mote module used for low power Wire-
less Sensor Networks. A large array of available sensor boards make this mote
customizable for various applications. It works on AA batteries which has life of
more than one year.
Hardware Specifications
• Sensing: It is available through expansion boards not limiting to Tempera-
ture, Barometric Pressure, Acceleration/Seismic, Acoustic, Magnetic.
• Modulation type : Frequency Shift key
• Input/Output: MICA2 has 51 pin connector for connecting to the sensor
board. It supports analog inputs, digital I/O. It also contains 3 LEDs for
diagnostic purposes.
• Chip :Atmega 128L Microcontroller
• Flash memory : 128KB
• External Storage : 512KB
• Static RAM : 4KB
• EEPROM : 4KB
• Execution rate : 16 MIPS.
• Default Power : 2 × AA batteries
• Typical capacity : 2850mAh
• Radio Frequency: 868/916Mhz, 433, or 315Mhz
Applications:
• Wireless Sensor Network
• Security, Surveillance and Force Protection
• Environmental Monitoring
• Distributed computing platforms
2
1.3 Clustering
1.3 Clustering
WSN [1, 2] consists of a large number of sensor nodes, moreover these sensor nodes
run on non rechargeable batteries. So to serve the objective of fault-tolerance, load
balancing and network connectivity, grouping of nodes is required. Clustering [3] is
a process of dividing sensor nodes into groups on the basis of various parameters,
and selecting a group leader from each group. The groups are called clusters
and group leaders are called Cluster Heads(CHs) of the clusters. Parameters for
forming the clusters include distance between cluster head and its member, intra-
cluster communication cost, residual energy of sensor nodes, location of node with
respect to BS etc.
Figure 1.1: Sensor information forwarding without clustering and aggregation
Figure 1.1 and Figure 1.2 gives a pictorial representation of different ways of
data communication in Wireless Sensor Network. Figure 1.1 shows communication
without clustering whereas figure 1.2 shows the network scenario when there is
clustering in the network. Clustering divides the sensor nodes in the network into
clusters and selects a Cluster Head (CH) for each cluster so that member from
each cluster communicates through their CH in order to communicate to the BS.
In this way clustering increases network lifetime as after clustering less number of
nodes will access the channel for communication with the BS, all the informations
and updates of whole cluster are collected together at CH and forwarded to the
next CH in the hierarchy or the BS. CH can also look into other functions like
data aggregation, group key management, distributed computation. Clustering
3
1.4 Motivation
Figure 1.2: Sensor information forwarding with clustering and aggregation
also helps in optimal utilization of network resources, load balancing, node failure
management, energy consumption and network lifetime management.
1.4 Motivation
When Wireless Sensor Networks are deployed mainly for military and health ap-
plications, there is a high need of secure communication among sensor nodes.
There are different techniques to secure network data transmissions, but due to
power constraints of WSN, group key based mechanism [11] is the most preferred
one. Hence to implement scalable energy efficient secure group communication,
the best approach would be hierarchical based like Clustering [3].
In most of the WSN [1,2] designs based on clustering, Base Station is the central
point of contact to the outside world and in case of its failure; it may lead to total
disconnection in the communication. So in order to provide better fault tolerant
immediate action, a new BS at some other physical location will have to take the
charge. This may lead to a total change in the hierarchical network topology,
which in turn leads to re-clustering the entire network and in turn formation of
new security keys. Hence in such situations, we need a clustering algorithm which
will perform the minimum re-clustering with minimum energy consumption and
minimum execution time.
4
1.5 Thesis Objective
1.5 Thesis Objective
Figure 1.3 and Figure 1.4 shows the clustering sensor network scenario before
and after failure of BS respectively, it is clear that whenever there is a change in
location of BS there will be some or more change in clusters and topology of the
sensor network, this also results in more efforts in terms of energy consumption
and time for establishment of new group key.
Figure 1.3: Clustering hierarchy before failure of Base Station
Figure 1.4: New clustering hierarchy after failure of Base Station
We have to find a suitable algorithm which clusters sensor nodes in such a
way that when a BS fails and a new BS takes the charge, new group key gets
5
1.6 Thesis Outline
established with minimum computation and less energy consumption i.e. our
objective is to come up with the most suitable clustering algorithm that requires
minimum changes in clusters and topology in such situations and makes WSN
efficiently adaptable.
In order to accomplish our goal many clustering algorithms from the literature
will be considered and their performance will be evaluated on various chosen pa-
rameters. The parameters will be chosen in such a way that in effect they will
help us to find an efficiently adaptable clustering algorithm.
1.6 Thesis Outline
The rest of the thesis is organized as follows: In Section 2 we give a brief descrip-
tion of the important papers that we have studied or utilized as a part of our
literature survey. In Section 3, we introduce our proposed system model for mood
recognition. Section 4 shows the experimental results achieved so far and finally
in Section 5 we present the conclusion and future work.
6
Chapter 2
Literature Survey
2.1 Wireless Sensor Networks
From the following properties obtained after literature survey of WSNs, it is clear
that there are hundreds or thousands of deployed sensor nodes in the application
field of WSN. The main features of WSN are:-
• All sensor nodes are battery operated which has very low power, and after
deployment recharging those batteries is not possible.
• Links among the sensor nodes are symmetric, i.e., two nodes can communi-
cate using the same transmission power.
• All the sensor nodes which are deployed have initially same amount of com-
munication and battery power.
• There are various transmission power levels for all sensor nodes, and dynam-
ically each node can change their power level.
• Mobility of sensor node varies from application to application, so in general
they are quasi-stationary.
• Location of sensor nodes once deployed cannot be tracked down as they are
not equipped with GPS antennae.
2.2 TinyOS-Platform for Practical Implementa-
tion
TinyOS [29, 30] is a lightweight, event-driven, open source operating system de-
veloped specially for low-power nodes of sensor network. It operates on ultra-low
7
2.2 TinyOS-Platform for Practical Implementation
power which is what makes it different from other operating systems. It has very
advanced systems and techniques for saving power.
TinyOS makes it very easy to build sensor network applications. It provides
a set of important abstractions and services, such as storage, communication,
timers, and sensing. It defines a concurrent execution model, so developers can
build applications out of reusable components and services worrying about un-
foreseen interactions. TinyOS runs on many of the generic platforms, and most of
them support easy addition of new nodes in the network. Furthermore, TinyOSs
structure is designed in such a way that it is very easy to port it to new platforms.
2.2.1 Basic Structure of TinyOS
TinyOS [29, 30] basically consists of commands, events and tasks. Commands are
used to initiate a particular action in a program, events is a type of notification
that notify that action has occurred. Events are generally generated by external
interrupts and results are provided to the command which generated the previous
command. Task is a program which runs in background doing all the computations
for different modules. Figure 2.1 shows the flow of all these basic constructs
i.e. application generates a command, some task is performed, then command
is passed to component module which in turn generates another command for
hardware interface from where event is generated and the results are provided to
the application passing through the component module.
2.2.2 Features of TinyOS
TinyOS provides mainly three things which make developing sensor network ap-
plications and systems easier:
1. Component Model: It defines how to write small piece of code and convert
them into larger abstractions. It is grounded in nesC [29]. It allows us to
write pieces of reusable code which explicitly declare their dependencies.
2. Concurrent Execution Model: It defines how components interleave their
computations as well as how interrupt and non-interrupt code interact. It
enables TinyOS to support many components needing to act at the same
time while requiring little RAM. First, every I/O call in TinyOS is split-
phase: rather than block until completion, a request returns immediately
and the caller gets a callback when the I/O completes. TinyOS only needs
only one stack, and does not have threads.
8
2.2 TinyOS-Platform for Practical Implementation
Figure 2.1: Clustering hierarchy before failure of Base Station
3. Overall component structure with APIs, component libraries and services
that simplifies the task of writing new applications and services. TinyOS
has a set of APIs for common functionality, such as sending packets, reading
sensors, and responding to events. It also provides a component structure
and component libraries.
2.2.3 File Types in TinyOS
There are three types of file in TinyOS namely-
• Interfaces : It specifies functionality to outside world, what type of com-
mands can be called and what events need handling. Standard filename
syntax is (xxx.nc).
• Module : This is a file in which real code is implemented, it contains the
code for the interface functions defined in interface file. Its standard filename
syntax is (xxxM.nc).
• Configuration : This is file which is used for wiring of components in an
application
9
2.2 TinyOS-Platform for Practical Implementation
Figure 2.2 shows an example where main.nc file contains abstract of an inter-
face interfaceM.nc, code2M.nc and code3M.nc are the files which contain their
own defined definition of the interface interfaceM.nc in interfaceA and interfaceB
respectively. This interface are wired through configuration file comp1C.nc and
app.nc for comp3M.nc and comp2M.nc respectively.
Figure 2.2: Hierarchy of the various files in TinyOS
2.2.4 The nesC language
TinyOS itself with its applications and systems are written in nesC [29, 30] which
is a dialect of C language. nesC is compiler for applications that run on UCB
motes built on top of avg-gcc. nesC file has extension “.nc“. It is a static lan-
guage with no dynamic memory i.e. no malloc, no heap and no function pointers.
It is influenced by Java and is designed to foster code reuse. It eliminates mono-
lithic programs so that code can be used more easily and number of errors get
decreased. It has features to reduce code and RAM size, also it supports sig-
nificant optimizations and help in preventing low-level bugs like race conditions.
Figure 2.3 shows execution of program in TinyOS.
10
2.2 TinyOS-Platform for Practical Implementation
Figure 2.3: Clustering hierarchy before failure of Base Station
2.2.5 TOSSIM-TinyOS Simulator
TOSSIM [30]is a discrete event simulator provided by TinyOS for high fidelity
simulation of all of its applications. User can compile TinyOS application on PC
framework of TinyOS instead of compiling them on real mote. So user can test,
analyze and debug developed algorithms in a controlled and repeatable environ-
ment. As it runs on PC, users can examine their code using debuggers and other
development tools. TOSSIM primarily focuses on simulating TinyOS and its ex-
ecution but not the real world. TOSSIM is not always a right simulation solution
as it makes many assumptions focusing on making some behaviors accurate while
simplifying others. There is always a question about TOSSIM that whether it can
simulate Z or it has an accurate model for Z.
2.2.5.1 Characteristics of TOSSIM
Various characteristics of TOSSIM as mentioned in [29, 30] are:
• Fidelity: TOSSIM simulates the network at the bit level, simulates every
interrupt in the system and each individual ADC capture. By default, it
captures TinyOS behavior at very low level.
11
2.2 TinyOS-Platform for Practical Implementation
• Time: While TOSSIM precisely times interrupts, it does not model execu-
tion time. A piece of code in TOSSIM will run instantaneously so the spin
locks will never exit as the event that allow spin lock to stop will never occur
unless code execution completes.
• Model: TOSSIM though provides abstractions of certain real-world phe-
nomena like bit error but it does not model the real world. User can im-
plement models whatever they want to by manipulating these abstractions.
TOSSIM always tries to keep the simulation efficient and simple.
• Building: TOSSIM builds directly from TinyOS code. In-order to simulate
a protocol or system, its TinyOS implementation has to be written. Though
it is more difficult than an abstract simulation but once it is done it can be
taken and run on real motes.
• Imperfections TOSSIM makes many simplifying assumptions though it
captures TinyOS behavior at a very low level. So it may be possible that
code which runs in a simulation might not run on real mote. As TOSSIM
is discrete-event simulator, its interrupts are non-preemptive so in case of
preemptive interrupt real mote may fail but simulation will run.
2.2.5.2 Compiling and Running Simulation
TOSSIM is built automatically whenever TinyOS application is compiled. Com-
pilation can be done by entering in the application directory and typing make or
make pc. make pc will only compile a simulation of the application. The TOSSIM
has executable by the name main.exe, and created in build/pc after compilation.
It has the following usage:
Usage: ./build/pc/main.exe [options] numnodes
[options] are:
-h,- -help Display this message.
-gui pauses simulation waiting for GUI to connect
-a=〈model〉 specifies ADC model (generic is default)
options: generic random
-b=〈sec〉 motes boot over first 〈sec〉 seconds (default: 10)
-ef=〈file〉 use 〈file〉 for eeprom; otherwise anonymous file is used
-l=〈scale〉 run sim at 〈scale〉 times real time (fp constant)
-a=〈model〉 specifies a radio model (simple is default)
options: simple static lossy
12
2.3 Clustering Algorithms
-rf=〈file〉 specifies file input for lossy model (lossy.nss is default)
-s=〈num〉 only boot 〈num〉 of nodes
-t=〈sec〉 run simulation for 〈sec〉 virtual seconds
numnodes number of nodes to simulate
2.3 Clustering Algorithms
From the various proposed clustering algorithms in the literature, five energy effi-
cient algorithms are selected in order to achieve our goal and these algorithms are
evaluated further to select the best algorithm which makes WSN better adaptable.
Evaluation is done on basis of various parameters which will be studied in chapter
3. In this section we will study the selected algorithms in detail.
2.3.1 Low Energy Adaptive Clustering Hierarchy Protocol
for WSNs (LEACH)
LEACH [8] is a distributed hierarchical protocol which provides data aggregation
for sensor networks by selecting random CHs in a distributed manner. It forms
clusters based on the received signal strength and uses the CH nodes as routers
to the Base Station. All data processing such as data fusion and aggregation are
local to the cluster. Each node transmits to their CHs which in turn aggregate
and compress the data and send to the Base Station. A stochastic algorithm is
used (round by round) by each node to determine whether it can become CH in
that round or not. All non CH nodes communicate to the CH in TDMA fashion
as scheduled by CH.
In LEACH, Cluster Head is selected dynamically and rotated periodically
which counts for less power consumption of the network. But since it uses single-
level clustering scheme, power consumption is comparatively more to those algo-
rithms that use multi-level clustering. Nodes that have been CH cannot be CH
for next i rounds. At the end of each round, node that is not a CH selects the
closest CH and joins its cluster by informing the CH. This protocol creates non
overlapping clusters. Although there is no energy-balancing problem in LEACH
but it doesn’t care about the energy consumption in intra-clusters communication.
So clusters formation and its structure in LEACH may not be optimal.
13
2.3 Clustering Algorithms
2.3.2 An Energy-Efficient Multi-level Clustering Algorithm
for Large-scale WSNs (EEMC)
EEMC [7] is a multi-level clustering protocol which organizes nodes into hierarchy
of clusters and aims at minimizing the total power consumption of the network
as they use multi-level clustering scheme. It is an extension of TLCS (Two Level
Clustering Scheme) [7] where each cluster is divided into sub clusters (level-2)
having their respective cluster heads. These CHs after gathering data packets
transmit the aggregated data packet to the corresponding CH of level-1 and finally
all CHs (level-1) send data to the BS.
Operation of data collection is done in rounds and each round has two phases:
1. Cluster setup phase : This phase means that the nodes execute this
algorithm to establish multi-level clustering topology on its own. This phase
works in a top-down fashion [20], that is Cluster Heads at level-i will be
elected before level-(i + 1).
Initially all active nodes are set to non-CH nodes. Then each of these nodes
send their location information and current residual energy to the BS to
indicate that the algorithm will select a new set of CHs in level-1. When BS
receives these values, it sends a message containing total remaining energy
of the network and total reciprocal of the distance from all nodes to the BS.
Once active nodes receive this command message, they set their probability
of becoming level-1 CH on the basis of received values. Since along with
node’s residual energy, transmission distance of node is also considered as
a factor in deciding CH, those nodes which are closer to the BS and/or
have higher remaining energy have more chances to become level-1 CH.
Transmission distance is considered as a factor because ultimately the CH
has to transfer the final packet to BS, so if distance is large more energy will
be consumed and vice-versa.
Later the elected level-1 CHs will broadcasts an advertisement message in
its radio range, whoever non-CH node receive this advertisement message,
sends a message back to CH containing its residual energy and joins that
cluster. In this way both CHs and cluster members have information of each
other. Then CHs will send a command message to their members containing
number of nodes in the cluster, total remaining energy of cluster members
and total reciprocal distance from normal nodes to the cluster head. In this
way level-2 CHs will be selected and so on for further levels.
14
2.3 Clustering Algorithms
2. Data transmission phase : This phase signifies transmission of sensed
data packets from nodes to BS under such kind of topology. Once n-level
clustering topology is established, the non CH nodes start transmitting the
sensed data to the lowest CH. Then CHs at level-n will aggregate the data
they receive from ordinary nodes and transmits the collected data to the n-1
level CHs ad so on. At last each of the level-1 CHs transmits the collected
data(from level-2 cluster heads) to the BS. This phase runs periodically till
the end. Energy spent by a regular node in sending a data packet to level-n
CHs, then by level-n CHs to send the same to level-n-1 CHs and so on to
level-1 CHs and finally the energy spent by level-1 CH to send packet to BS
contributes the total cost of delivering the data from non head node to the
BS.
In order to minimize overhead, the data transmission phase is long as compared
to cluster set-up phase in the algorithm. After clustering process, a node can
either elect to become CH or join a cluster as per the message it receives from the
different CHs within its cluster range then inform that CH about its membership.
So it is scalable for large sensor networks. This protocol produces clusters which
are relatively stable. Also, since all CH sends advertisement message in their radio
range, it may be possible that a non-CH may fall into range of more than one CH.
Therefore, this algorithm creates overlapping clusters.
2.3.3 Power Efficient and Adaptive Clustering Hierarchy
Protocol for WSNs (PEACH)
PEACH [6] also prolong network lifetime of WSNs. It operates on probabilis-
tic energy-aware routing protocols [12, 13, 14, 15, 16] such as EAR [12], EAR-
DPS [16], and GEAR [13]. Therefore, it has very low power consumption. It
supports both routing protocols for WSN i.e. location aware and location un-
aware. Location aware protocols are those which provide location information of
sensor nodes like PEGASIS [21] and location unaware are those who do not pro-
vide location information of sensor nodes like LEACH [8] and HEED [5]. Based on
overheard information of each sensor node, this protocol forms adaptive clusters.
In PEACH to achieve the goal of maximizing the lifetime of network with
various energy constraints which have been discussed,following things are taken
into account while designing the protocol:
• Cluster formation overhead: There are many protocols [5, 8, 22, 23]
which suffer from overhead of cluster formation as these protocols consumes
15
2.3 Clustering Algorithms
lots of energy of sensor nodes which are basically battery-limited. Also each
non-head node has to transmit the data packet to its Cluster Head even if
it is at more distance as compared to BS. This type of reverse forwarding
of packet may increase energy consumption of intra-cluster communication.
So, cluster formation overhead should be the most important parameter in
development of a clustering protocol.
• Adaptive multi-level clustering: As per the condition of WSN the level
of clustering hierarchy must be adaptive in nature. Most of the clustering
protocols have fixed level of hierarchical clustering. Fixed level clustering [6]
can be affected adversely by distribution of WSNs. So, the clustering proto-
cols should have a more adaptive and dynamic hierarchical clustering level.
Cluster formation on PEACH
Based on the information overheard by each sensor node, this protocol forms
adaptive clusters. When a node Ni transmits a packet to node Nj then this
protocol defines two sets of nodes:
• NodeSet(Ni,Nj): It is a set of all nodes which lies in a circle whose center is
node Ni and radius is the distance between nodes Ni and Nj.
• ClusterSet(Ni,Nj):It is a set of all nodes which belongs to NodeSet(Ni,Nj)
but not in NodeSet(Base station,Nj)
NodeSet(Ni,Nj) consists of nodes which can overhear the transmission of packet
from the node Ni to node Nj and ClusterSet(Ni,Nj) includes CH of all those nodes
which are overheard. Node Nj becomes the CH of ClusterSet(Ni,Nj) and it waits
for Tdelay to collect multiple packets from other nodes in ClusterSet(Ni,Nj). This
set remains active for both before and after Tdelay, selected CH Nj transmits the
collected data to next hop in the hierarchy.
In comparison to other protocols it has no overhead on CH selection and it forms
an adaptive multi-level clustering. It improves the lifetime and power consumption
of WSNs significantly. PEACH protocol supporting location-aware routing (which
gives location information of sensor nodes) has lowest power consumption of all
the other protocols. It produces clusters which are static and fixed and thus stable.
Based on overheard information, it forms clusters without any additional packet
transmission of advertisement, announcement, joining and scheduling messages.
This protocol design supports its scalability nature. But this algorithm being
dynamic produces overlapping clusters which is why we dont prefer this algorithm
for our purpose. Node can move from one cluster to another cluster.
16
2.3 Clustering Algorithms
2.3.4 Hybrid, Energy-Efficient, Distributed Clustering Ap-
proach for WSNs (HEED)
HEED [5] is a distributed clustering algorithm used for Wireless Sensor Networks
which is energy efficient. Every node has some limited energy associated with it.
But when a node transmits/receives data and processes query requests, its energy
reduces. Energy can also get wasted if there are packet collisions in the network
or if a node has to do idle listening. As HEED applies clustering, for each cluster
a CH is selected. But if the same CH remains for large amount of time performing
send/receive operations then residual energy of the CH will become very low.
Therefore, HEED chooses to rotate server role among all nodes of the cluster so
that a balance will be achieved between residual energy of all nodes of the cluster.
Hence, residual energy of any one node(CH) would not drop to minimum leading
to less node failures due to energy depletion. For Server role rotation, clustering is
triggered periodically at regular intervals in order to select CHs and at each node
the process gets terminated in constant number of iterations.
Clustering is basically a process which divides network into clusters such that
each cluster consists of adjacent nodes and selects CHs from them. Since all the
nodes of the network will be competing to become CHs, certain parameters are
used for deciding CHs. The parameters are as follows:
1. Residual energy of each node: This is the primary clustering parameter
in deciding initial set of CHs. Residual energy means energy remaining with
the node. Energy of a fully charged node will be maximum whereas that
of a node performing various send/receive operations will get depleted. If
energy associated with a node is not greater than minimum energy required
by the a node to become CH then such a candidate should be eliminated
from probable set of CHs.
2. Intra-Cluster Communication cost: This is used as a secondary param-
eter to decide in which cluster a node falls. Sometimes it can happen that
a node falls in the range of more than clusters. In such a case Intra-Cluster
Communication Cost will break ties among the probable CHs.Intra-Cluster
Communication cost is the cost required by a CH to communicate with every
node of a cluster. The node which has minimum communication cost will
become the CH. Cluster range can be defined as transmission power level
used for communication inside a cluster. This is also called as Cluster Power
Level. The Cluster Power Level is set to one of lower power levels of a node.
17
2.3 Clustering Algorithms
This cluster range decides how many number of clusters will be formed in
the WSN.
Let MinPoweri be the power required by a node Ni to communicate with CH.
Then Average Minimum Reachability Power(AMRP) of a node is defined as
expected intra-cluster communication cost required if this node becomes CH.
AMRP =
∑MinPwriM
(2.1)
AMRP provides measures intra-cluster communication cost required for a
node if it becomes CH. It indicates minimum power level required by all M
nodes in the cluster.
Clustering Protocol Operation for HEED is as follows:
Process of re-clustering is periodically performed after a time interval of TCP
+ TNO seconds. Here, TCP denotes time required for the clustering protocol for
completion of cluster formation and TNO denotes no operation which means this
is the time during which formed clusters are stable and nodes in the network
communicate with the help of these clusters and no clustering process is taking
place. At each node, clustering process requires Niter iterations. Before clustering
algorithm executes, initial percentage of CH among n nodes has to be decided
(Cprob). For example, suppose we want 5 CHs in 100 sensor nodes then Cprob
=0.05. Every node in the WSN calculates its probability of becoming a CH as
given below:
CHprob = Cprob ×EresidualEmax
(2.2)
where, Eresidual is current remaining energy of the node and Emax is the max-
imum energy of a fully charged battery. CHprob is inversely proportional to Emax
which means as initial energy of a node increases its probability of becoming CH
increases. There has to be a certain criterion on the values of CHprob as this is
the primary selection parameter for this protocol. Therefore, a condition is set
on CHprob such that CHprob > pmin. Where pmin is the minimum probability to
become CH. If CHprob of a node falls below pmin then this node will not be part
of the set of probable CHs.
HEED is an iterative clustering algorithm since CHs change after specific time
internal. There are basically three stages in HEED protocol operation. Following
stages are part of one iteration of HEED protocol:
1. Initialization: Initially, every sensor node present in the WSN calculates
18
2.3 Clustering Algorithms
communication cost incurred to communicate with all its neighbors. Neigh-
bors are identified by using concept of cluster range. Cluster range is cal-
culated by the transmission power level used for communicating internally
in the cluster. This level is also called as cluster power level. This is set to
lower power levels of a node. This way, higher power levels can be kept re-
served for inter-cluster communication. Neighbor of a node is a node present
in cluster range of a node. After broadcasting cost to neighbors, every node
calculates its CHprob using the formula defined in 2.2 and sets is final CH =
FALSE which means final Cluster Head is not yet elected
2. Iterate through following steps until CHprevious = 1:
I. Initially tentative set of Cluster Heads SCH is empty. Hence, a node
checks its own CHprob if CHprob = 1 then it elects itself as CH. CHprob
> pmin then it adds itself to a tentative set of CHs SCH In this way,
primary parameter residual energy is used to find tentative set of CHs.
II. If this is not initial iteration, then SCH may not be empty. if SCH ! =
empty then a tentative CH is selected from SCH which has minimum
communication cost. If the tentative CH is the node itself and if its
CHprob = 1 then it selects itself as final CH and sets is final CH =
TRUE. In this way, secondary parameter, communication cost is used
to find final set of CHs.
III. Also,CHprevious is set to CHprob and CHprob is doubled.
3. Finalization
I. If a node has is final CH = TRUE, then it declares itself as CH and
broadcasts this message to all its neighbors.
II. But if is final CH = FALSE then whether SCH is empty or not a
node having minimum communication cost is selected as final CH by
considering itself ”uncovered”. A node is defined as ”covered” if it has
heard either from tentative Cluster Head of final Cluster Head.
HEED implements multi-hop router mechanism. The design of which is as
shown in the figure 2.4. The main modules of multi-hop router are:
1. Routing Engine:
This module mainly controls everything in HEED router. Its task is to
decide whether a packet should be forwarded to parent of the tree or pushed
19
2.3 Clustering Algorithms
Figure 2.4: System design of HEED protocol
onto protocol stack. This module helps the process of data aggregation by
intercepting incoming packets from nodes in the cluster and its descendants
in the aggregation tree and pushes them onto stack. Routing mechanism
does not have any effect on routing engine. It sends out packets which come
from application layer.
2. Routing Logic:
The network has to select a routing algorithm for forwarding packets. This
unit selects the routing algorithm to be used. It structures the network into
connected graph, maintains information of neighbor nodes and sends update
messages fro tree construction. This consists of 2 main modules:
i. Clustering Logic:
This unit implements the selected clustering algorithm. After clustering
process gets completed, Aggregation tree is formed in which only Clus-
ter Heads are considered in infrastructure.
ii. Parent Selection:
This module estimates link cost for each neighbor based on quality of
communications and its closeness to the Base Station. This way, CH
20
2.3 Clustering Algorithms
helps in finding the best parent in the aggregation tree. Quality of
communication is measured by symmetry of links and occurrences of
data loss. The parameter data loss is very useful in finding quality of
communication.
This way HEED is energy efficient, distributed clustering algorithm which helps
in increasing network lifetime and ensures it has no cluster overlapping. CHs in
HEED are well distributed in the network, and also sensor nodes are stationary.
So clusters formed are highly stable. Cost can be a function of neighbor proximity
or cluster density. This protocol prolongs network lifetime and produces clusters
which has several appealing properties. This protocol is scalable as it can cluster
large number of sensor nodes.
This protocol is applied on various sensor network protocols which require scal-
ability, prolonged network lifetime, fault tolerance and load balancing. Currently
this protocol is used to build only two level clustering hierarchies but it can be
easily extended for multi-level clustering hierarchies. Once CHs are selected re-
maining nodes are clustered with them. So Cluster head and cluster members
have information about each other.
2.3.5 Energy Efficient Clustering Algorithm for Maximiz-
ing Lifetime of WSNs (EECML)
In most of the clustering algorithms including the ones discussed so far, in order to
prolong the network lifetime of the cluster and the networks, there is dynamic or
periodic selection of CH, which wastes much energy for broadcasting messages to
general nodes or to other Cluster Heads i.e. there is additional energy consump-
tion for the cluster head set-up and also for general nodes who spent their energy
in receiving broad casted message from different new Cluster Heads frequently. So
energy of general nodes cannot be used effectively. Furthermore, in actual appli-
cation, WSN contains thousand number of nodes and they are deployed randomly
in an area of density, so it gets difficult to balance energy balance for all the nodes.
If each CH acts uninterrupted as the local control center and will not be re-
placed by other nodes located in the same cluster until its working times reach
the threshold, then the frequency of updating CH and the energy consumption
for broadcasting messages can be reduced effectively. Therefore, a new clustering
algorithm EECML [6] is proposed by Xiang Min and his team which is designed
to prolong network lifetime by reducing energy consumption for inter-cluster and
intra-cluster communication. Nodes are divided into static clusters and the pro-
21
2.3 Clustering Algorithms
tocol produces different size clusters i.e. clusters which are closer to the Base
Station are smaller in size and those who are distant are larger in size. This is be-
cause CHs which are closer to Base Station could have enough energy to transmit
the data which comes from other CHs away from the BS. So in this way energy
consumption for inter-cluster communication is balanced.
In intra-cluster, one cluster-head will continue to be the CH, so energy con-
sumption for new CH set up and updating cluster is reduced. These clusters are
referred as layers, clusters closest to Base Station belong to the top layer. So,
entire network is divided into V-wedges of clustering angle θ and these wedges
form cluster of varying size. The operation is broken into rounds where each CH
receives data either from its members or from lower layer CH and send the ag-
gregated data either to the base station or the upper layer cluster with TDMA
mechanism. It has high scalability due to these layering mechanisms. This proto-
col creates non-overlapping cluster with high stability as there is no node mobility
possible. Initially Base Station informs to all the nodes of top layer about their
CH and informs CH about its members. Then for lower layer immediate upper
layer CH plays the role of Base Station in giving node information.
Energy Consumption Model
Xiang Min and team in their algorithm [6] says that in WSN, energy consump-
tion of sensor nodes is mainly due to three reasons:
• Message sending
• Message receiving
• Data processing
Considering k is the length in bits of packets, d is the transmission distance in
meters, the simplified energy consumption model for each part can be defined as:
PT (k) = Eelec × k + Eamp× dy × k
PR(k) = Eelec × k (2.3)
Pcpu(k) = Ecpu × k
where,
Eelec : Dissipation energy (in nJ/bit) of a radio to run its circuitry
Eamp : power (in nJ/bit/m2) above Eelec needed by the transmitter for an
22
2.3 Clustering Algorithms
acceptable Eb/N0 at the receivers demodulator.
γ : Path loss exponent that is related to the transmission distance.
Ecpu : Dissipation of energy (in nJ/bit) for processing a bit.
On the basis of equations 2.3, the energy consumption for the Cluster Head
receiving and transmitting k bits packets can be defined as:
P = PT (k) + Pcpu(k) + PR(k)
= k(2Eelec + Ecpu + Eamp × dγ) (2.4)
The energy consumption is in direct proportion to the length of data packets or
message packets. If the message packets can be reduced, the energy consumption
can be reduced. When the transmission distance is less than a threshold, the
energy consumption is in direct proportion to d2 . In other case, the energy
consumption is in direct proportion to d4. Thus, shortening the transmission
distance can reduce the energy consumption.
Protocol Model
As discussed EECML [6] protocol by Xiang Min and team is designed in a
manner that the CH acts as the local control center instead of frequently changing
the cluster head in order to balance the load. CH is burdened with transmitting
data from other CHs through multi-hop, thus the energy dissipation of the CH is
much more than that of the general nodes [26, 27]. Obviously, to maintain the
connectivity of the entire network, it is very important that the CHs closer to the
Base station keep alive as long as possible for the intercluster communication. So
the number of the nodes in the clusters closer to the BS ought to be smaller than
those farther away from the BS [28].
Assuming n sensor nodes are deployed in a wedge V area with angle called the
clustering angle, and the nodes are deployed with uniform density (nodes/m2 ).
V is partitioned into m rings V1 , V2 , . . . , Vm . Each ring denotes a cluster,
and the center distance between the two adjacent rings is d1 , d2 , . . . , dm ,
and di (1<=i<=m) is a one-hop distance for inter-cluster communication, i.e. the
cluster closer to the BS is called the upper layer cluster and other is called the
lower layer cluster. The schematic diagram of the model is shown in figure 2.5.
cluster C1 is made of nodes located in ring V1 , and cluster C2 is made of nodes
located in ring V2 ,and so forth.
23
2.3 Clustering Algorithms
In each cluster, the CH receives data from its members and sends fused data
to the upper layer cluster or to the BS at least once. If the number of the nodes in
the cluster is very large, the CH may be out of work before finishing its first task.
If the size of the cluster is very small, then the number of nodes of the cluster is
very small. Thus, the energy supply of its nodes is mainly used to transmit data
that come from the lower layer clusters, and its nodes may have much residual
energy when the network is invalid, which cannot make the best of the energy
supply of its nodes. So the optimum clustering angle must be selected to control
the size of the cluster.
As already said that in EECML each Cluster Head acts as local control center
until its working times reach the threshold. In figure 2.5, the size of the cluster
Cm is the largest of all the clusters. Let fi , i = 1, 2, 3, . . . , m be the continuous
working times of the CH that acts continuously as the local control center. If the
continuous working times of each CH with the same clustering angle satisfy f1 >=
f2 >= . . . . >= fm , then the connectivity of the cluster with the same clustering
angle can be maintained effectively.
Figure 2.5: Algorithm model of EECML
So, for the energy consumption and the systems lifetime the main parameters
of this algorithms are one-hop distance d1hop, the clustering angle θ and the con-
tinuous working times fi. The optimal value of these parameters are calculated in
[6] by the following equations:
24
2.3 Clustering Algorithms
dopt = γ
√2Eelec + EcpuEamp(γ − 1)
(2.5)
θopt =
√√√√8π3(3Eelec + EcpuN(2Eelec + Ecpu
(2.6)
where, d1hop <= dopt
Protocol Operation
In [6], protocol assumes that the Base Station is located at (0,0) and operation
of the clustering algorithm is broken up into rounds that consists of CHs receiving
data packets from its members and sending the fused data to the Base station
or the upper layer cluster with the TDMA mechanism. The optimum one-hop
transmission distance and the optimum clustering angle can be obtained based on
equations 2.5 and 2.6
During the cluster set-up phase, BS broadcasts an advertisement message that
contains the one-hop distance d1hop and its location to the closer nodes, and decides
which node acts as the first CH based on the received answer message that contains
the location and ID of the closer nodes. To satisfy the condition d1hop <= dopt ,
the nodes whose locations approach the boundary between the top layer and the
second layer must be selected as the first CHs by BS. The node receives a message
from the Base Station which tells to which cluster the node belongs. Protocol
operation is shown in figure 2.6. After the clusters and their CHs are selected,
the first set-up is completed. The CHs broadcast, respectively, the message that
contains their flags and location of their members and other nodes located in the
lower layer clusters. There are two functions, one of which informs their members,
and the other which is the same as the Base Station. In the same way, all clusters
and their first CHs can be constructed through backward mechanism from Base
Station to the last cluster.
Figure 2.7 shows the complete picture of WSN clustered through EECML
algorithm. In the figure it is shown that how the algorithm covers the complete
area by performing EECML protocol on different wedges of angle θ.
The steady-state operation is broken into rounds, where nodes send their data
to the CH during their allocated transmission slot based on the TDMA mechanism.
Assuming that all nodes are time synchronized. The duration of each slot in which
a node transmits data is constant, so the time of sending data depends on the
number of nodes in the cluster, and the slot of the lower layer CH is treated as
25
2.3 Clustering Algorithms
Figure 2.6: Protocol operation of EECML
a general node of the upper layer cluster. Figure 2.8 shows the flow of each CH
gathering data from its member and other CHs with the same clustering angle.
Since the number of nodes deployed in the upper layer cluster is smaller than
that of the lower layer cluster, the time slot of each cluster is different. At the
same time, the lower layer CH is treated as a general node of the upper layer
cluster, so the time slot of the lower layer cluster must be the sub-time slot of the
upper layer cluster. For example, assume one round time is T and the number of
layer is L. Thus, the time slot for the cluster with the same clustering angle can
be allocated as 0 to T /L , T /L to 2T /L , . . . , (L 1)T/L to T . Assume
that the number of nodes in each cluster with the same clustering angle is n1 , n2
, . . . , nL1 , nL . Then, the minimal time unit of each node can be calculated
as T /(L × (n1 + 1)), T /(L × (n2 + 1)), . . . , T /(L × (nL1 + 1)), T /(L
× nL ), and the time slot for each node can be allocated the same as the cluster.
To reduce energy dissipation, the radio of each general node is turned off until its
allocated transmission time.
26
2.3 Clustering Algorithms
Figure 2.7: Complete scenario of sensor network when clustered through EECML
27
2.3 Clustering Algorithms
Figure 2.8: Flowchart of each Cluster Head gathering data from its member andthe lower layer CH located in the same clustering angle
28
Chapter 3
Proposed Approach
3.1 Evaluation Parameters
There are many metrics which would determine strength of clustering algorithm
for WSNs. After the detailed study, it can be inferred that below mentioned six
metrics decide the extent of adaptability in the clustering algorithm in case of
failure of Base Station. These metrics are selected and are defined as follows:
3.1.1 Power Consumption of Sensor Nodes
Power Consumption [1] for all systems, process and communication protocols in
sensor nodes and sensor networks should be minimum as sensor nodes run on bat-
teries and recharging them is very difficult since large number of nodes are gener-
ally not attended after the deployment. The clustering algorithm which minimizes
energy expense will in effect increase the lifetime of the sensor nodes and hence of
the entire network. Power consumption also depends on the communication cost
in the network. Nodes in clustered Wireless Sensor Network [1, 2] communicate
via CHs. If the clusters are not properly formed then the communication cost
might increase. Therefore, clustering technique should be properly selected.
3.1.2 Cluster Stability
Clustering [3] divides WSN into groups of sensor nodes. Once clusters are formed,
node membership changing from one cluster to another cluster generally may not
happen, but CH in a cluster may change. In order to balance the load in the
cluster. This will indirectly help to reduce the energy expense towards the re-
keying process of group key management activity in Wireless Sensor Network.
29
3.2 Further Approach
3.1.3 Fault tolerance and Re-clustering
Fault tolerance [2] is the ability to sustain network functionalities without any
interruption due to node failures. Even if a node fails, network should be able to
establish new paths for communication between remaining nodes. When a new
sensor node gets added in the network, clustering algorithm should be able to adapt
the change in the network with minimum energy-consumption and computation.
Also Re-clustering should require minimum efforts and reconfigure the clusters in
minimum time.
3.1.4 Cluster Overlapping
While forming clusters [3], one node should fall under only one cluster. But there
are some clustering algorithms [17, 18, 19] which clusters one sensor node in more
than one cluster due to which network overhead increases. Overlapping nodes will
increase the communication cost for the network since that overlapped node will
try to communicate using multiple CHs. Thus, overlapping should be less in a
Wireless Sensor Network.
3.1.5 Scalability
A Wireless Sensor Network [1, 2] should perform its functionality correctly even
when the number of nodes or workload in the network increases. Therefore Wire-
less Sensor Network must be scalable and adaptive to changes in network topology.
3.1.6 Node Cluster Information
When clusters are created, each cluster member must have information about
its corresponding CH and each CH must have the information about its member
nodes in order to establish and maintain proper secure group key management in
the cluster.
3.2 Further Approach
From literature, we selected many clustering algorithms in order to achieve our
goal. These algorithms were studied against above mentioned parameters and
Table 3.1 shows the abstract results which were obtained after the study. It
is clear that EECML and HEED are more appropriate choices for a clustering
algorithm in order to have adaptability in WSN. Since we have to select the most
30
3.2 Further Approach
suitable one, and these results only give us abstract informations. So, EECML and
HEED are analyzed further by implementing them on TinyOS, their performance
is evaluated on various aspects like Power consumption, cluster stability, cluster
overlapping, scalability and fault tolerance. The algorithm which gives better
performance will be selected as the most suitable algorithm.
Table 3.1: Comparative results of various clustering algorithm as per literaturesurvey
Metric
PowerCon-sump-tion ofSensorNodes
ClusterStabil-
ity
Faulttoler-anceand Re-clustering
ClusterOver-
lapping
Scalability
NodeClusterInfor-mation
EEMC Low High High Yes High Yes
PEACH Very Low Low High Yes Very High Yes
LEACH Medium High High No High Yes
HEED Very Low VeryHigh
VeryHigh
No High Yes
EECML Very Low VeryHigh
VeryHigh
No Very High Yes
Firstly in both algorithms, clusters are formed, hierarchy among the nodes is
created and once the clustering process is completed, BS is made to fail. Then in
order to keep the network in running state (as required by critical applications)
another BS will take the charge and as discussed earlier whole process of clustering
is repeated and new clusters, new hierarchy and new topology will be established.
In this whole process a track on power consumption by sensor nodes is kept.
Total power consumption of all nodes before failure of BS is recorded for both the
algorithms. New BS can be any random node located in any random location.
So, we consider different positions of new BS by repeating the process and then
average of power consumed by all the nodes after failure of BS in all the cases is
31
3.2 Further Approach
recorded. For calculating cluster stability, membership of all the nodes for clusters
is recorded before and after failure of BS when clustering process is completed.
These recorded readings are compared and checked to see how many nodes change
their membership.
32
Chapter 4
Implementation and Results
4.1 Implementation in TinyOS
From table 3.1, it is clear that amongst all clustering algorithms surveyed, HEED
and EECML are the more appropriate choices for an energy-efficient clustering
algorithm which makes wireless sensor network adaptable upon failure of Base
Station. So, we need to evaluate their performance in detail against all discussed
metrics. There is no cluster overlapping in both the algorithms and in both al-
gorithms Cluster Head contains information of its cluster members and cluster
members have information about its CH. So we need to evaluate the performance
of HEED and EECML for Cluster Stability, Power Consumption of sensor nodes,
fault tolerance and scalability.
These algorithms are implemented in TinyOS, an open-source development
environment and a platform to build WSN applications in easiest way. These
algorithms once implemented are simulated on TOSSIM,a discrete event simulator
provided by TinyOS.
4.1.1 Challenges in Implemetation
The primary challenge is scarcity of energy that in effect drives protocol design.
In order to deal with this challenge proper management of topology is required
so that most of the sensor nodes remain in operating state as long as possible.
Sensor nodes are deployed randomly in the field and can be distributed arbitrarily
on the ground, so some nodes may on paths which is accessed most of the times to
communicate to the Base Station, this results in radially depletion of their energy
while other node’s energy can be left unmonitored.
This effect is significantly reduced in HEED as clustering is done periodically on
33
4.1 Implementation in TinyOS
the basis of residual energy i.e. nodes with higher remaining energy are elected to
perform more loaded task of CHs and nodes with lower remaining energy perform
task of sensing. While in EECML this effect is taken care by keeping size of
clusters closer to BS smaller as compared to clusters away from BS. Different sizes
gives us an assurance that the closer CHs have enough energy to transmit the data
it receives from the CHs farther from BS. Also as current CH is kept fixed in a
cluster, frequency of updating cluster-head is reduced and thus minimizes energy
consumption. Clustering enables nodes to communicate with smaller power ranges
at intra-cluster level for more energy savings.
Another challenge is the estimation of remaining energy of battery after some
operation. It can be done by inspecting analog-to-digital converter(ADC) for bat-
tery voltage. Since ADC results have coarse granularity, this approach may not be
useful. So we use a simplistic approach called credit-point system (CREP) where
all sources of energy consumption are considered. We are not using an accurate
CREP system instead only a rough estimate of remaining energy is computed for
all sensor nodes using an integrated method independent of hardware.
4.1.2 Estimation of Energy Dissipation
We simulate the algorithms considering that they are running on Mica2 mote. So
all the values required in the implementation are taken as per Mica2 mote values
and most of the information is taken from [24, 25]. Assuming battery of sensor
node has Vb average voltage and Ab Amp-hr capacity. The maximum residual
energy of each node, Emax is computed as follows:
Emax = Vb × Ab × 3.6× 103Joule (4.1)
If I is the current drawn while receiving or transmitting a packet and tb be the bit
transmission time then the energy consumed in transmitting/receiving one packet
of size k is defined as:
E = Vb × I × tb × k × 8 (4.2)
In a sensor network, energy dissipation of a sensor node is mainly due to
following reasons:
• Processing
• Send/Receive
Each sensor node is initialized with maximum value of 0.5J and it is shown in [24]
34
4.1 Implementation in TinyOS
that the it is better to express least energy in micro joules. Since we are us-
ing credit point systems, for each sensor node maximum remaining power with
which each sensor node is initialized in simulation, MAX REM POWER=500000
points and for declaring a node is dead i.e. minimum remaining power of node,
MIN REM POWER=300. As given in [24], following parameters values are used:
Eamp = 0.659 nJ/m2 (for EECML)
Ecpu = 7 nJ/bit (for EECML)
Eelec = 50 nJ/bit (for EECML)
Cprob=0.03 (for HEED)
clustering operational interval length (tc) = 11 seconds
routing update frequency = 6/min
route recalculation frequency = 2/min
INTRA CLUSTER POWER = -20dBm (PA POW register=0x02)
INTER CLUSTER POWER = -13dBm (PA POW register=0x06)
Data rate = 0.5 packets/sec
Size of packet = 29 bytes
bit transmission time,tb = 62.4ms
Effective average voltage, Vb = 3V (mica2 mote uses two AA batteries)
Algorithms are experimented on the network using our credit point system. We
use the values of drawn current from [25]. For PA POW=0x02, the drawn current
=5.3mA and for PA POW=0x06, the drawn current = 6.7mA. The intra-cluster
and inter-cluster energy consumption Eintra and Einter are defined as:
Eintra = 5.3× 3× 62.4× 29× 8
= 230microJ. (4.3)
Einter = 6.7× 3× 62.4× 29× 8
= 291microJ. (4.4)
35
4.2 Results
4.2 Results
Experiments are conducted with 10,25,50 and 75 number of sensor nodes with
the above taken parameters. Both EECML and HEED algorithms are evaluated
against the selected metrics in chapter 3 in each of the experiments and their
results are obtained as follows:
4.2.1 Power Consumption of sensor nodes
Table 4.1 shows the power consumed by all the sensor nodes to form a clustering
hierarchy in the network for both HEED and EECML algorithms. These are the
values obtained in both algorithms as soon as clusters are established in the net-
work. Graph in figure 4.1 gives us the comparative results for both the algorithms.
After this state, the current Base Station is made to fail by stopping it, and
another takes the charge. As soon as this happens clustering protocol (HEED or
EECML) starts forming their clusters again with respect to new location of BS.
New BS can come at any random location, so we have taken three different posi-
tions by simulating the algorithm three times and then total power consumption of
network is calculated. Table 4.2 shows the average of power consumed by wireless
sensor networks for both HEED and EECML algorithms in all three different posi-
tions of new BS. Graph in figure 4.2 shows comparative power consumption of all
sensor nodes in WSN. It is clear from graphs 4.1 and 4.2that power consumption
in HEED is much more than that of EECML.
4.2.2 Cluster stability
Cluster stability is the extent to which change in membership of a node from one
cluster to another cluster doesn’t happen when one BS fails and another takes
the charge. We evaluate this metric by recording the clusters and its members
after formation of clusters in both the cases i.e. before and after the failure of BS
(considering three different positions of new BS). Table 4.3 shows the average(of
all three case) number of nodes who don’t change their cluster membership i.e.
they doesn’t move from one cluster to another cluster. Graph in figure 4.3 shows
the cluster stability (in percentage) of both algorithms in a comparative way which
tells that clusters formed for large number of nodes are more stable in EECML as
compared to HEED.
36
4.2 Results
Table 4.1: Results for total energy consumed by Sensor Nodes after formation ofclusters but before failure of Base Station
Total energy consumed by Sensor Nodes (in micro joules)
Before Base Station Failure
No.of nodes 10 25 50 75
EECML 12884 32666 65785 103500
HEED 59194 125307 222827 386586
Figure 4.1: Power Consumption of all sensor nodes in HEED and EECML afterformation of clusters but before failure of Base Station
37
4.2 Results
Table 4.2: Results for total energy consumed by Sensor Nodes after failure of BaseStation
Total energy consumed by Sensor Nodes (in micro joules)
After Base Station Failure(Average Consumption)
No.of nodes 10 25 50 75
EECML 35423.6 88783 172611 137963.3
HEED 103946 255927.6 445400.6 668050
Figure 4.2: Power Consumption of all sensor nodes in HEED and EECML afterfailure of Base Station (average of different positions of new BS)
38
4.2 Results
Table 4.3: Results for Cluster Stability
Cluster Stability
Average No. of Nodes notchanging theirmembership
Stability (%)
No.of nodes 10 25 50 75 10 25 50 75
HEED 8 20 39.5 61.6 80 80 79 82.13
EECML 7.5 20.6 42 64.3 75 82.4 84 85.73
Figure 4.3: Stability of clusters in HEED and EECML
4.2.3 Scalability
Scalability signifies that the network should perform correctly even if number of
nodes get increased. We have conducted experiments considering 10,25,75 and
39
4.2 Results
100 number of nodes. In all these cases we were able to get results, this accounts
accounts that HEED and EECML algorithms for WSN are scalable.
4.2.4 Fault Tolerance
Fault tolerance is the ability of Wireless Sensor Network to sustain any interruption
due to node failures i.e. network should be able to establish new paths even if a
node fails for communication among rest of the nodes. Also Re-clustering should
require minimum efforts and reconfigure the clusters in minimum time. We are
dealing with failure of BS in both HEED and EECML algorithms, and in both the
cases after failure, network runs in normal way by coming up with new BS and
re-clustering the entire network. Similarly, if an ordinary node fails, re-clustering
is performed in the same way.
4.2.5 Cluster Overlapping
Since in both HEED and EECML algorithms, a CH is assigned to a node only
once in the process of clustering, their is no chance that any node would fall inside
two clusters i.e. a node at a time can belong to only one cluster.
4.2.6 Node Cluster Information
In both HEED and EECML algorithm, CHs have information of their cluster
members and cluster members have information of their CH.
4.2.7 Power Consumption of Cluster Head
It is clear from these results that power consumed by all sensor nodes in HEED
protocol is much more than that of EECML protocol. This difference may be
because in HEED protocol CH role is rotated periodically, due to the frequent
updates inside the cluster. While in EECML algorithm, CH is fixed so no en-
ergy is required in updating cluster. Due to this intra cluster power consumption
will be more in HEED as compared to EECML. Therefore, an experiment is done
which records the residual power of CH in EECML algorithm and average residual
power of different CHs of same cluster in HEED algorithm, at different time in the
network. Table 4.4 shows experiment results for 25 number of nodes and Table
4.5 shows the result for 50 nodes. Graphs in figure 4.4 and 4.5 show compara-
tive variations in CH power consumption with time(in sec) for 25 and 50 nodes
respectively.
40
4.2 Results
Table 4.4: Results showing residual energy of Cluster Head(s) in a cluster
Residual energy of Cluster Head(s) in a cluster (in micro joules)
No. of Nodes 25
Time (in sec) EECML HEED ( No. of CH=4 )
100 492809 492875
140 441643 482180
180 407702 474420
Figure 4.4: Residual energy of Cluster Head(s) in a cluster(No. of nodes=25)
41
4.2 Results
Table 4.5: Residual energy of Cluster Head(s) in a cluster
Residual energy of Cluster Head(s) in a cluster (in micro joules)
No. of Nodes 50
Time(in sec) EECML HEED ( No. of CH=6 )
200 465108 485740
245 412473 476540
390 376045 462860
Figure 4.5: Residual energy of Cluster Head(s) in a cluster(No. of nodes=50)
42
Chapter 5
Conclusion and Future Work
5.1 Conclusion
A survey on different clustering algorithms has been done for selecting the best
one in order for the Wireless Sensor Network to become adaptable. The main pur-
pose is, whenever a Base Station fails, and a new Base Station takes the charge,
re-clustering has to be done, but new clusters formed should not be completely
different so that later when security algorithm acts on the updated cluster, the
overhead reduces to minimum. Therefore, after the detailed study, it can be in-
ferred that mentioned six metrics decide the extent of adaptability in the clustering
algorithm. Specially, it has been observed that the more the cluster stability and
less the cluster overlapping, the more will be the network reliability. Also power
consumption has become a significant factor for improving network lifetime. Even
though energy depletion of CH in EECML is faster as compared to that in HEED,
the total power consumption of sensor network in EECML is much less as com-
pared to HEED. Therefore, considering the overall network, the above factors
and results obtained, it can be concluded that EECML is the appropriate choice
of clustering algorithms to achieve high adaptability in Wireless Sensor Network
upon failure of BS.
5.2 Future Work
From this thesis it has been concluded that EECML is the most appropriate
clustering algorithm for a WSN to have adaptability in WSN upon failure of Base
Station. Power consumption of sensor nodes in EECML algorithm can further be
improved as in EECML when member wants to send packet to the Base Station
43
5.2 Future Work
it first send to its CH which is in reverse direction of BS, so there is reverse
forwarding of packet in clusters in order to send to the Base Station. Therefore,
while selecting the clusters head in EECML, instead of selecting the node closer
to the boundary of the cluster and next cluster , select the one which closer to the
boundary of the same cluster and previous cluster. So that cluster members need
not have to spend their energy in reverse forwarding of packets, but sending in
the direction of BS. In this way total energy consumption of member nodes will
be reduced.
Since EECML algorithm is required by critical applications those who cannot
afford BS failure and requires a secure communication among sensor nodes which
can be provided by group key mechanism. So, this EECML algorithm should
be implemented with a group key establishment algorithm [33, 34] and then the
performance of the algorithm should be analyzed in various events like adding of
a node inside network, removal of a node from the network. That is how group
key in a group of a network changes whenever any node joins the group of sensor
node, or any node leaves the group or when the BS fails in the network.
44
Chapter 6
Publications
Our paper has been accepted:
Tushar Maheshwari, Dr. Jibi Abraham, Selection of Efficiently Adaptable Cluster-
ing Algorithm upon Base Station Failure in Wireless Sensor Network: A survey,
International Conference on Computing, Communication and Information Tech-
nology(ICCCIT),2012.
45
Bibliography
[1] G. J. Pottie and W. J. Kaiser, Wireless Integrated Network Sensors, Commu-
nications of the ACM, volume 43, number 5, pages 51-58, May, 2000.
[2] I. Akyildiz, W. Su, Y. Sankarasubramaniam, E. Cayirci, A Survey on Sensor
Networks, IEEE Communications Magazine, pages 102-114, 2002.
[3] V. Kawadia and P. R. Kumar, Power Control and Clustering in Ad Hoc Net-
works, Proceedings of IEEE INFOCOM, April 2003.
[4] Xiang Min, Shi Wei-Ren, Jiang Chang-Jiang, Zhang Ying, Energy Effi-
cient Clustering Algorithm for Maximizing Lifetime of Wireless Sensor Net-
works, International Journal of Electronics and communications (AE) 64 pages
289298, 2010.
[5] Ossama Younis, Sonia Fahmy, HEED: A Hybrid, Energy-Efficient, Distributed
Clustering Approach for Ad-hoc Sensor Networks, IEEE Transactions on Mo-
bile Computing, volume 3, issue 4, pages 366-379, Oct-Dec 2004.
[6] Sangho Yi, Junyoung Heo, Jiman Hong, PEACH: Power-efficient and Adaptive
Clustering Hierarchy Protocol for Wireless Sensor Networks, Science Direct,
Computer communications 30, pages 2842-2852, 2007.
[7] Yan Jin, Ling Wang, Yoohwan Kim, Xiaozong Yang, EEMC: An Energy-
Efficient Multi-level Clustering Algorithm for Large-Scale Wireless Sensor Net-
works, Science Direct, Computer Networks 52, pages 542-562, 2008.
[8] W.R. Heinzelman, A.P. Chandrakasan, H. Balakrishnan, Energy efficient com-
munication protocol for wireless microsensor networks, Hawaii International
Conference System Sciences (HICSS),2000.
[9] D. Estrin, R. Govindan, J. Heidemann, and S. Kumar, Next Century
Challenges: Scalable Coordination in Sensor Networks, Proceedings of the
46
BIBLIOGRAPHY
ACM/IEEE International Conference on Mobile Computing and Networking
(MOBICOM), August 1999.
[10] S. Banerjee and S. Khuller, A Clustering Scheme for Hierarchical Control in
Multi-hop Wireless Networks, Proceedings of IEEE INFOCOM, April 2001.
[11] Mohamed Eltoweissy, Ashraf Wadaa, Stephan Olariu, Larry Wilson, Group
Key Management Scheme for Large-scale Sensor Networks, Ad Hoc Networks
3, ELSEVIER, pages 668-688, 2005.
[12] R. Shah, J. Rabaey, Energy Aware Routing for Low Energy Ad hoc Sen-
sor Networks, Proceedings of IEEE Wireless Communications and Networking
Conference (WCNC), 2002.
[13] Y. Yu, R. Govindan, D. Estrin, Geographical and Energy Aware Routing:
a Recursive Data Dissemination Protocol for Wireless Sensor networks, May
2001.
[14] J. Chang, L. Tassiulas, Energy conserving routing in wireless ad-hoc networks,
IEEE Infocom, pages 2231, 2000.
[15] J. Chang, L. Tassiulas, Maximum Lifetime Routing in Wireless Sensor Net-
works, IEEE/ACM Transactions on Networking 12 (4), pages 609619, 2004.
[16] G. Park, S. Yi, J. Heo, W.C. Choi, G. Jeon, Y. Cho, C. Shim, Energy Aware
Routing with Dynamic Probability Scaling, Lecture Notes in Computer Science
(RSFDGrC) 3642, pages 662669, 2005.
[17] R. Nagpal, D. Coore, An algorithm for group formation in an amorphous
computer, Proceedings of the 10th International Conference on Parallel and
Distributed Systems (PDCS98), Las Vegas, NV, October 1998.
[18] H. Zhang, A. Arora, GS3: Scalable Self-Configuration and Self-Healing in
Wireless Networks, Proceedings of the 21st ACM Symposium on Principles of
Distributed Computing (PODC 2002), Monterey,CA, July 2002.
[19] A. Youssef, M. Younis, M. Youssef, A. Agrawala, Distributed Formation of
Overlapping Multi-hop Clusters in Wireless Sensor Networks, Proceedings of
the 49th Annual IEEE Global Communication Conference (Globecom06), San
Francisco, CA, November 2006.
47
BIBLIOGRAPHY
[20] S. Bandyopadhyay, E.J. Coyle, Minimizing communication costs in
hierarhically-clustered networks of wireless sensors, Computer Networks 44
(1), pages 1-16,2004.
[21] S. Lindsey, C. Raghvendra, K.M. Sivalingam, Data gathering algorithms in
sensor networks using energy metrics, IEEE transactions on Parallel and Dis-
tributed Systems 13, pages 924-935,2002.
[22] W.R. Heinzelman, An Application-Specific Protocol Architecture for Wireless
microsensor Networks, Ph.D. thesis, Massachusetts Institute of Technology.
[23] C.Li, M.Ye, G.Chen, J.Wu, An energy-efficient unequal clustering mechanism
for wireless sensor networks, 2nd IEEE International conference on Mobile Ad-
hoc and Sensor Systems(MASS’05), 2005.
[24] O.Younis, Sonia Fahmy, Energy-efficient Routing and Data aggregation in
sensor networks : An Experimental Study, Department of Computer Sci-
ences,Purdue University, West Lafayette, 47907, 2004.
[25] V. Shnayder, M.Hempstead, C.G.Werner, M. Welsh, Simulating the Power
Consumption of Large Scale Sensor Network Applications, ACM conference on
Embedded Networked Sensor Systems (ACM SenSys), 2004.
[26] Guo B, Li Z, United voting dynamic cluster routing algorithm based on
residual-energy in wireless sensor networks, Journal of Electronics & Infor-
mation Technology 29(12), pages 3006-3010,2007.
[27] Yuan H-y, Yang S-q, Li X-l et al, Time-controlled routing algorithm for sensor
networks, Journal of System Simulation 20(5), pages 11631166, 2008.
[28] Li C-f, Cheng G-h, Ye M. et al, An uneven cluster-based routing protocol for
wireless sensor networks, Chinese Journal of Computers 30(8), pages 2730,
2007.
[29] J.Hill, R. Szewczyk, A.Woo, S.Hollar, D.E. Culler, K.S.J. Pister, System Ar-
chitecture Directions for Networked Sensors Architectural Support for Pro-
gramming Languages and Operating Systems, pages 93-104, 2000.
[30] TinyOS http://www.tinyos.net 2002.
[31] Alippi, C.Vanini, G., Wireless sensor networks and radio localizations: a me-
teriological analysis of MICA2 received signal strength indicator Local Com-
puter Networks, Italy, pages 579-580, 2004.
48
BIBLIOGRAPHY
[32] MICA2, http://www.capsil.org/capsilwiki/index.php/MICA2#cite_
note-0
[33] Ioannis Chatzigiannakisi, Elisavet Konstantinou, Vasiliki Liagkou, Paul Spi-
rakis, Design Analysis And Performance Evaluation of Group Key Establish-
ment in Wireless Sensor Networks, Electronic Notes in Theoretical Computer
Science 171, pages 1731, 2007.
[34] Mohamed Eltoweissy, Ashraf Wadaa, Stephan Olariu, Larry Wilson, Group
key management scheme for large-scale sensor Networks, Ad Hoc Networks 3,
ELSEVIER, pages 668-688, 2005.
49