The document describes a new routing protocol called Route Optimization and Load-balancing (ROL) for wireless sensor networks. ROL aims to balance several objectives like prolonging network lifetime, providing timely message delivery, and improving network robustness. It uses a combination of routing metrics that can be configured according to application priorities to optimize overall network performance. Simulation results show that ROL maintains balanced cluster sizes and populations, reduces overhead, end-to-end delays, and improves data delivery ratios compared to other protocols like Mires++.
Adaptive Routing in Wireless Sensor Networks: QoS Optimisation for Enhanced Application Performance
1. Information Fusion xxx (2013) xxx–xxx
Contents lists available at SciVerse ScienceDirect
Information Fusion
journal homepage: www.elsevier.com/locate/inffus
Full Length Article
Adaptive routing in wireless sensor networks: QoS optimisation for enhanced
application performance
Mohammad Hammoudeh a,⇑, Robert Newman b
a
b
Manchester Metropolitan University, Chester Street, Manchester M1 5GD, UK
University of Wolverhampton, Wulfruna Street, Wolverhampton WV1 1LY, UK
a r t i c l e
i n f o
Article history:
Available online xxxx
Keywords:
Wireless sensor networks
Routing
Distributed clustering
Quality of service
Optimisation
Adaptive
Load-balancing
Application performance
a b s t r a c t
One of the key challenges for research in wireless sensor networks is the development of routing protocols that provide application-specific service guarantees. This paper presents a new cluster-based Route
Optimisation and Load-balancing protocol, called ROL, that uses various Quality of Service (QoS) metrics
to meet application requirements. ROL combines several application requirements, specifically it
attempts to provide an inclusive solution to prolong network life, provide timely message delivery and
improve network robustness. It uses a combination of routing metrics that can be configured according
to the priorities of user-level applications to improve overall network performance. To this end, an optimisation tool for balancing the communication resources for the constraints and priorities of user applications has been developed and Nutrient-flow-based Distributed Clustering (NDC), an algorithm for load
balancing is proposed. NDC works seamlessly with any clustering algorithm to equalise, as far as possible,
the diameter and the membership of clusters. This paper presents simulation results to show that ROL/
NDC gives a higher network lifetime than other similar schemes, such Mires++. In simulation, ROL/NDC
maintains a maximum of 7% variation from the optimal cluster population, reduces the total number of
set-up messages by up to 60%, reduces the end-to-end delay by up to 56%, and enhances the data delivery
ratio by up to 0.98% compared to Mires++.
Ó 2013 Elsevier B.V. All rights reserved.
1. Introduction
Wireless Sensor Networks (WSNs) hold a lot of promise in
applications where gathering sensed data in remote or inaccessible
locations is required. The stream nature of the gathered data, the
limited resources, and the distributed nature of WSNs bring new
challenges for data routing techniques that need to be addressed.
Since communication is often the most expensive operation for a
sensor node, the applications underlying data communication paradigm must be energy efficient.
In WSNs, routing protocols are application dependent and their
design goals vary among different applications. For instance, many
applications require real-time communication, e.g., a fire fighter
may rely on timely temperature updates to remain aware of the
current fire conditions whereas a soil monitoring system may only
need to report measurements every few hours. Therefore, routing
protocols must meet the delay requirements at minimum energy
cost. Hence, routing protocol designers have to consider the characteristics of sensor nodes along with the application and architectural requirements. Many routing protocols have been proposed in
⇑ Corresponding author.
E-mail addresses: M.Hammoudeh@mmu.ac.uk (M. Hammoudeh), R.Newman@
wlv.ac.uk (R. Newman).
the literature, although the performance of these protocols is
promising in terms of energy efficiency, most of them come with
no guarantee of Quality of Service (QoS) required by real-time
and communication-heavy applications. As discussed in Section 2,
a protocol that balances, as far as possible the following characteristics is needed: energy efficiency, scalability, robustness, and provision of timeliness.
To address these requirements, a new protocol called Route
Optimisation and Load-balancing (ROL) is proposed. Compared to
LEACH [1] and Mires++ [2], this protocol reduces the cost and number of setup messages, and thus extends the network life. ROL improves on the robustness of LEACH and Mires by ensuring that each
node learns multiple paths to its Cluster Head (CH) and by the
electing of CH backup node(s). Energy expenditure is further reduced by shortening the distance between the node and its CH.
This is done by incorporating a hop count metric in addition to
the transmission backoff delay. Load balancing is achieved at two
levels: (1) Network level, through traffic multiplexing over multiple paths; (2) Cluster level, by rotation of the CHs.
This paper proceeds as follows. Section 2 introduces hierarchical routing in WSNs. Section 3 outlines the objectives and motivation for a new clustering protocol. In Section 4, is the main
exposition of the ROL, it explains different phases in the clustering
process. In Section 5, NDC is described. In Section 6, the evaluation
1566-2535/$ - see front matter Ó 2013 Elsevier B.V. All rights reserved.
http://dx.doi.org/10.1016/j.inffus.2013.02.005
Please cite this article in press as: M. Hammoudeh, R. Newman, Adaptive routing in wireless sensor networks: QoS optimisation for enhanced application
performance, Informat. Fusion (2013), http://dx.doi.org/10.1016/j.inffus.2013.02.005
2. 2
M. Hammoudeh, R. Newman / Information Fusion xxx (2013) xxx–xxx
metrics for the ROL/NDC are defined. In Section 7, the simulation
results of ROL/NDC are presented. Finally, conclusions are drawn
and further work suggested.
2. Hierarchical routing in WSNs
Routing has proved to be a key issue in WSNs research. In the
literature, a lot of the effort has been devoted to routing protocols
since they differ depending on the nature of user applications and
on the architecture of the underlying network. As clustering approaches are particularly tempting for large-scale high-density
WSN applications, a solution for clustering with ad hoc wireless
communications is sought. Hierarchical routing is a two or more
tier routing scheme. Nodes in the upper tier are called CHs and
act as a routing backbone, while nodes in the lower tier perform
sensing tasks. Kulkarni et al. [3] argue that multi-tier networks
are scalable and offer the following number of advantages over single-tier networks: lower cost, better coverage, higher functionality,
and better reliability.
Many clustering algorithms have been previously investigated,
both independently and in the context of routing protocols. In this
section, we briefly review some clustering protocols used in this
paper. We refer the interested reader to [4,5] and references there
in for a comprehensive survey of recent clustering algorithms.
LEACH [1] is one of the first clustering-based protocols that utilises randomised rotation of the CH role to evenly distribute the
energy load among nodes in the network. LEACH is well-suited
for applications where constant monitoring is needed and data collection occurs periodically to a centralised location. LEACH has
been based on a number of assumptions which in the authors’
opinion limit its effectiveness in a number of applications, such
as single hop communication.
Smaragdakis et al. [6] address the issue of heterogeneity of
nodes in terms of their energy. The development of their protocol
was motivated by applications that would benefit from realising
the effect of nodes heterogeneity, e.g., re-energisation of WSNs
and applications where the spatial density of sensors is a constraint. This protocol assumes that the sink can be reached directly
by all nodes. It requires knowledge of the energy levels of other
nodes in the network to weight the CH election probabilities,
which requires extra communication overhead.
In [7], the authors proposed a protocol called HEED for sensor
applications requiring efficient data aggregation. HEED produces
balanced clusters with low message overhead using information
about residual energy and a second parameter such as node degree.
HEED out-performs generic clustering protocols on various factors
including energy efficiency. However, HEED is still heuristic in nature and suffers a high network delay due to the complexity of the
CH selection algorithm. Besides which, HEED provides only a two
level hierarchy.
Unlike previous work targeting the optimisation of energy efficiency and network lifetime, Yang et al. [8] proposed Minimum Energy Spanning Tree for Efficient Routing (MESTER) for maintaining
high quality in data collection for as long as possible. The design of
MESTER is predicated on the idea that the sink or network controller is more powerful than the nodes, which are seen as having very
limited resources. MESTER therefore adopts centralised algorithms
and requires the sink to take control of managing the network
topology and calculating the routing path and time schedule for
data collection. This results in it being intrinsically non-scalable
– or scalable according to the capacity of the sink, and dependent
on the reliability of a single sink node.
Mires++ [2] is a clustering service on a publish/subscribe middleware called Mires. It attempts to achieve energy saving, load
balancing, and robustness. Mires++ implement two protocols: (1)
Creates two tier flat clusters based on residual energy and subscribed data topics. (2) Performs load balancing by rotating the
CH role and setting a maximum cluster size. It also elects a backup
CH to achieve fault tolerance. Mires++ inherits all features of Mires
middleware, including its drawbacks. Publish/subscribe is initiated
centrally at the sink, which introduces a single point of failure,
communication bottlenecks, and incurs high communication costs.
Usually, nodes are deployed to achieve a common sensing task;
therefore, all nodes are likely to subscribe in the same data topic,
which reduces the usefulness of its clustering. Finally, physical
location awareness is an important condition in Mires++ clustering,
which limits its applicability. We compare ROL/NDC performance
with that of Mires++ as they both aim to achieve the same goal.
LEACH, and its derivatives, have been successful in reducing the
energy per bit required by each node and the network as a whole.
Nonetheless, most of these protocols are built upon inflexible
assumptions and have serious drawbacks. Many clustering algorithms are heuristic in nature and have a time complexity of
O(n), e.g., [9], where n is the total number of nodes in the network.
Also other protocols, such as [6], demand time synchronisation
among nodes, which makes them unsuitable for large-scale networks. Another set of protocols requires centralised management
which limits their scalability. Some of these protocols have been
designed with robustness in mind, however, the level of fault tolerance is usually designed to adapt to occasional node failures
and infrequent topology migration.
The characteristics of the protocols discussed above are summarised in Table 1.
In summary, it is evident that the desired qualities of a routing
protocol are largely determined by the characteristics of the applications they serve. Most of the reviewed clustering protocols are
application specific. Such protocols require profound modifications
to be flexible enough to meet the diversity of functional and nonfunctional requirements placed on them by applications. Therefore, application requirements combined with the sparse memory
and processing resources of a typical node have great impact on
choosing a suitable routing protocol. As more WSNs software
applications are deployed and the diversity of sensor devices increases, there is significant value in developing a routing protocol
that allows system developers to optimise its operation. This provides a way to provide paths based on different optimisation objectives as specified by an objective function and the routing metrics.
Thus, a routing protocol that balances as many of the following design objectives is desirable:
1. Real-time: An effective protocol should provide timely communication by reducing end-to-end communication delays. Timeliness constraints are important as WSNs often operate in the
real world to reflect the current physical status of the sensing
environment. Data timeliness is normally at odds with energy
consumption [10]; data aggregation reduces the routing protocol temporal performance due to the introduced aggregation
delay.
2. Reliability: A reliable and robust routing protocol is to be capable of providing correct measurements at the right moment
without interruption. Different WSN applications have varied
requirements on the reliability of data delivery, which may
Table 1
Characteristics of existing hierarchical routing protocols.
Protocol
Heuristic
Sink centralised
Depth limited
Application limited
LEACH
HEED
MESTER
Mires++
No
Yes
No
No
No
No
Yes
Yes
Yes
Yes
No
Yes
Yes
Yes
Yes
Yes
Please cite this article in press as: M. Hammoudeh, R. Newman, Adaptive routing in wireless sensor networks: QoS optimisation for enhanced application
performance, Informat. Fusion (2013), http://dx.doi.org/10.1016/j.inffus.2013.02.005
3. 3
M. Hammoudeh, R. Newman / Information Fusion xxx (2013) xxx–xxx
3.
4.
5.
6.
7.
evolve over time. For example, a WSN deployed for fire detection in a forest can be used for measuring humidity as well.
When the measured temperature is in the range of normal temperature it is delivered to the sink tolerating a certain percentage of loss. Yet, when a fire is detected, the data should be
delivered to the sink with high priority.
Scalability: Scalability is the ability of the network to grow in
size without excessive communication overhead. In a larger
scale WSN, more overhead is unavoidable to keep the build of
the communication paths to the sink. Routing protocols should
support in-network processing, such as lossy aggregation, and
deploy localised algorithms to reduce the amount of communicated data to save energy and reduce bandwidth utilisation.
Besides, they should be able to exploit the density of nodes in
saving energy, distributing load, and correcting faults.
Energy consumption: Routing protocols should use resources
efficiently to carry out data communication tasks. This is particularly important for long-term deployment applications of
WSNs.
Load-balancing: Routing protocols should be able to distribute
energy consumption between nodes to extend network life.
Distributing workload will also help to prevent energy depletion in one part of the network, which may result in partial coverage of the monitored environment.
Clustering requirements: Clustering should be kept fast, simple,
and decentralised. The total number of clusters in the network
should be sustained equal or around the optimal number of
clusters defined in [1], which is 5% of the total number of nodes
in the network.
Location information: Routing protocol should be able to function without node geolocation. However, it should be open to
utilise location information if the application requires.
3. ROL motivation and aim
The increasing number of WSN applications, each with their
own intrinsic needs, present systems designers with software
architectural challenges, both at development time and throughout
the system life-cycle. WSN research, e.g., [11], has successfully
shown the merits of integrating application domain knowledge
in system design. It is obvious that each application imposes different requirements on the routing scheme with respect to the urgency of timeliness, data delivery patterns, QoS, memory
consumption, processing levels, etc. These requirements evince
that special support for accommodating routing efficiently relies
on a distinctive set of requirements as it must be optimised for
the application.
As shown in Section 2, most of the existing routing protocols are
developed to meet application-specific design objectives and
requirements. The majority of these protocols achieve one objective at the expense of others. This is likely because some objectives
are contradictory. For instance, energy saving by data aggregation
introduces considerable communication delays. Moreover, other
routing protocols in the literature focus on achieving one or two
of these design objectives and ignore the others. For example,
Chun-yan et al. [12] is routing protocols with energy efficiency as
the key design factor; Wei et al. [13] aims to handle dynamic topological variation; Kumar et al. [14] aims to handle event detection
in heterogeneous networks; Tubaishat et al. [15] aims to provide
secure data communication; Jawhar et al. [16] is designed for issues that are specifically related to topologically linear structure
WSNs.
To support various computationally demanding applications for
large-scale WSNs, such as data visualisation applications [11], a
routing protocol that considers part or all of the main design objectives (listed in Section 2) is needed. This routing protocol is
designed generically and targets a variety of application scenarios
by balancing the multiple application objectives based on a global
optimisation equation.
The motivation for developing a new routing protocol that can
be specifically optimised to a range of applications include: (1)
financial as software is reused and development time decreases;
(2) easier maintainability as a common routing protocol can be deployed across a set of different applications; (3) simpler modelling
of routing requirements; (4) improved applications performance.
4. ROL operation
In this section we present the relevant details of the ROL algorithm and its parameters, which allow ROL to be configured. Optimisation in ROL refers primarily to the configuration of its routing
parameters, which is achieved by setting their values according to
application priorities. Table 2 summarises the ROL parameters and
their impact on various routing design objectives. In the following,
we briefly justify the chosen parameters and their relationship
with the specific applications:
1. Backoff: The backoff achieves energy efficiency by minimising
the cluster setup traffic. Each node joins the nearest CH and
sends it its data over the path with the minimum number of
hops; this results in lower queuing and propagation delays,
reduced bandwidth utilisation, and decreased energy consumption. In many WSN applications, there is a logical relationship
between adjacent nodes, i.e. nearby nodes represent related
data. Associating nearby nodes with a particular cluster supports intelligent data aggregation/fusion, which consequently
can reduce energy consumption and improves the quality of
extracted information [17].
2. Number of hops: Data packets are transmitted indirectly through
multi-hops from the source node to the destination node. As the
number of hops increase, the retransmissions become cumulative and successful communication becomes more unlikely
[18]; the increased transmission range will inevitably cause
higher interference, which results in lower throughput. Multihop communication can be used to avoid long range transmission to reduce the transmission power. Moreover, end-to-end
delay often can be reduced by reducing the number of hops in
a path. Multi-hop routing is particularly useful in large-scale
applications, such as target tracking over large geographic
region, where data sinks cannot be reached by nodes directly.
3. Number off backup CHs: Sensor nodes can switch to backup CHs
when the current CH fails. This avoids complete re-clustering
when re-assigning an interrupted CH. Moving to the alternative
CH incurs short disruptive period, i.e. rapid CH healing reduces
the amount of data loss and network availability time. Failureprone WSN applications, e.g., where nodes are deployed in
harsh environments, can improve applications performance by
utilising backup CHs.
Table 2
Configurable ROL parameters and the applications objectives they affect.
Parameter
Design objective
Backoff
Num. of hops
Num. of backup CHs
Num. of paths
Energy efficiency, timeliness
Scalability, robustness, timeliness
Robustness, data delivery ratio
Robustness, data delivery ratio,
timeliness, energy efficiency
Energy efficiency, scalability, timeliness
NDC
Please cite this article in press as: M. Hammoudeh, R. Newman, Adaptive routing in wireless sensor networks: QoS optimisation for enhanced application
performance, Informat. Fusion (2013), http://dx.doi.org/10.1016/j.inffus.2013.02.005
4. 4
M. Hammoudeh, R. Newman / Information Fusion xxx (2013) xxx–xxx
4. Number of paths: Multi-path routing yield a variety of benefits
such as fault tolerance and increased bandwidth. It provides
better transmission performance, fault tolerance and load balancing. Path failure starts a path discovery process to discover
new routes, which introduces communication delays. Delay
can be reduced in multi-path routing, as backup routes can be
recognised immediately with minimum service interruption
transparently to the application. In time critical applications,
splitting data to the same destination into multiple streams
where each stream is routed through a different path can
reduce data delivery delay makes the paths are more fully
utilised.
5. NDC: NDC is an effective reconfiguration algorithm to increase
the network lifetime by fairly distributing nodes across clusters.
Balanced clusters lead to fair energy consumption of the CHs.
Clustering is specifically practical for applications that need scalability to hundreds or thousands of nodes. Scalability in this
perspective means the need for load balancing and efficient
resource utilisation. Applications requiring efficient data aggregation (e.g., calculating the average temperature in an area) are
likely candidates for clustering. A CH can aggregate the data collected by the nodes in its vicinity and thus decrease the number
of forwarded packets. Clustering can reduce communication
interference.
The first step in implementing an application is primarily setting the routing parameters according to specific guidelines provided by the routing protocol vendor. The most difficult part in
this process is making the required application-related decisions.
Configuring those decisions into the routing protocol is a relatively
simple process.
ROL provides robustness through a multi-path routing. Multiple
paths can provide fault-tolerance, load balancing, and higher
aggregate bandwidth. When a path fails, an alternative path can
be immediately used, which allows the protocol to dynamically
adapt to failures without delays. Load balancing can be achieved
by multiplexing the traffic along multiple routes. When multiple
paths are used simultaneously, the aggregate bandwidth of the
paths may satisfy the bandwidth requirement of the application.
Therefore, since there is more bandwidth available, a smaller
end-to-end delay may be achieved.
Multi-hop communication is an essential property of any scalable routing protocol such as ROL. Besides reducing the radio
transmission power, multi-hop communication also has the following benefits [19]:
1. Spatial reuse: simultaneous communication sessions are possible for node pairs that are out of range of each other.
2. Obstacle ‘‘conciliation’’: a multi-hop path can go around an
obstacle that obstructs direct radio connection between two
nodes as shown in Fig. 1.
3. Distributed processing: a multi-hop topology allows the local
processing of sensor data among nearby nodes.
In some WSN deployments, e.g., in build areas, there may be
obstacles blocking parts of the transmitter’s signal, such as walls,
which will attenuate the signal seen at the receiver. Wireless networks designers have traditionally used multi-hop relaying to bypass obstacles, thereby gaining improved radio channel conditions
[20]. As a result, multi-hop relaying provides an opportunity for
performance improvements in WSN applications. The authors of
this work proposed a solution in [21] to manage obstacles between
nodes: Given a detour of length b[P, D] perpendicular to the line between nodes P and D, the effective distance between the two points
is defined as:
1
di ¼ fðd½P; DŠÞ2 þ ðb½P; DŠÞ2 g2
ð1Þ
where b[P, D] is the strength of the barrier.
ROL, defines the hop count metric to measure how far the sensing node is from its CH. As the hop count in a particular routing
path increases, the message delivery delay and the power consumption within the network increases due to the higher number
of transmissions. The hop count metric allows nodes to: (1) Select
the nearest CH, which saves energy by reducing messaging needed
to bridge the distance between the node and its CH. (2) Find the
shortest path to its CH.
ROL implements a metric called the backoff delay. This metric is
used to minimise clusters set-up overhead and to aid the formation
of more geographically uniform clusters. During the backoff interval, nodes receive several CH advertisement messages. When the
backoff delay reaches zero, the node transmits the advertisement
message(s) with the smallest hop count. This helps in blocking
advertisement flooding from CHs that are farther away from
unnecessarily reaching neighbouring nodes.
During the cluster set-up phase, one or more nodes are chosen
as CH backup node(s). When the current CH decides to hand its
role to the backup node, it notifies the respective backup node
and forwards to it necessary information, such as the backup nodes
list, to avoid a complete cluster set-up round.
4.1. ROL algorithm details
The operation of ROL can be split into two phases: the setup
phase and the data transmission phase.
CH1
d1
CH2
d2
Fig. 1. The filled nodes are CHs. Horizontal and vertical bars forming L shape are
obstacles. The solid lines are path from node n1 to CH-1 and the dashed lines are
path from node n1 to CH-2.
4.1.1. Set-up phase
During the set-up phase, CHs are selected and clusters are
formed. The sink randomly selects 5% of the nodes as CHs and
floods the network with this information. Every node that receives
the sink’s discovery message changes its state from waiting to discovered and examines the message to check whether it has been
selected as CH or not. If yes, it starts a new cluster by broadcasting
an advertisement message. Otherwise, it broadcasts the original
discovery message to its neighbours. The sink flooding step can
be compared to the seeking of a single route in Dynamic Source
Routing (DSR) [22], but every node knows only the next hop not
the complete hop-by-hop route to the sink, and no node knows a
route to any other node.
Every CH broadcasts an advertisement message with the hop
count set to 0. Upon receiving an advertisement message, a node
does the following: (1) If it already belongs to a cluster, it ignores
Please cite this article in press as: M. Hammoudeh, R. Newman, Adaptive routing in wireless sensor networks: QoS optimisation for enhanced application
performance, Informat. Fusion (2013), http://dx.doi.org/10.1016/j.inffus.2013.02.005
5. 5
M. Hammoudeh, R. Newman / Information Fusion xxx (2013) xxx–xxx
4.1.3. Energy efficient sleep/Wake scheduling
This paper implements a simplified and modified version of SMAC [23]. S-MAC is a complex medium-access control protocol
for WSNs, which aims to reduce energy consumptions and support
self-configuration. Inspired by PAMAS [24], S-MAC sets idle nodes
to sleep during transmissions of other nodes. The design of S-MAC
expects that applications will have long idle periods and can tolerate some latency. The implemented MAC protocol differs from the
S-MAC protocol in the following aspects:
the received message. (2) Else, if the received message carries a
smaller hop count than the stored one, the latter is deleted and
the former is retained and it continues listening for new advertisements. After the backoff delay expires, the node re-broadcasts the
message with the smallest hop count after incrementing it by 1. A
node remembers the node from which it received the message as
the nearest neighbour to its CH. Then, the node calculates a value
vc based on its available energy to represent its desire to become
a CH in the next clustering round. vc is included in the join request
message that the node sends back to register with the chosen CH.
The CH registers the node as a member of the cluster and adds the
nodes with the highest vc to its CH backup list. Compounding different functions into a single multi-purpose message reduces setup communication overhead. The cluster formation messaging is
illustrated in Fig. 2.
When the cluster round ends, the current CH hands its role to
the first node in the backup list. With a single local flood, the
new CH continues its predecessor’s role without the need of further communications. The CH role will also be handed to the backup node when a fault occurs in the current CH or when its energy
level approaches a certain threshold. In the case of faults, such as
physical damage or fatal internal errors in the CH, the nodes will
transmit directly to the sink until a new cluster round is due.
1. For simplicity, our implementation does not require periodic
synchronisation among neighbouring nodes to remedy their
clock drift.
2. Our implementation utilises the formed real communication
clusters, while S-MAC forms nodes into a flat topology or virtual
clusters.
3. In S-MAC neighbouring nodes are free to talk to each other no
matter what listen schedules they have. In our implementation,
nodes can only talk during their allocated time slot.
In the following we present some of the details of our implementation, particularly the sleep/wake schedule.
Idle nodes consume significant amount of energy [25]. An effective approach to preserve energy is to set the radio to sleep during
the idle times and wake it up precisely before message transmission/reception. In a network that involves multi-hop communication, this requires precise synchronisation between sending and
receiving nodes. In the design of this sleep/wake scheduling method, we ignore the effect of synchronisation errors. We assume that
a network-wide time synchronisation protocol maintains a consistent notion of time between various nodes in the networks. Time
synchronisation has been extensively investigated and several
implementations (e.g., [26,27]) can achieve synchronisation within
microsecond. A related assumption we make is that nodes always
have data of fixed length to send.
4.1.2. Data transmission phase
During this phase, nodes transmit data to their CH. The CH
aggregates the received data before transmission to the sink or
immediately multiplexes messages over multiple lines in time critical applications. Each member node transmits data on its assigned
time slot scheduled by the TDMA schedule. Furthermore, each
cluster communicates with the sink using unique Code Division
Multiple Access (CDMA) codes to avoid interference with traffic
generated by other clusters. Fig. 3, illustrates data transmission
from nodes to their CH. It also illustrates how the aggregated data
is sent from the CH to the sink through multi-hop path.
Sink
n1
n2
n3
2
2
2
2
2
2
2
a
a
a
b
n4
2
3
b
c
2
2
2
3
3
b
2
3
Collision
4
4
a
b
c
2
3
4
4
4
4
4
4
: Open arrow represents creating a message
: Filled arrow represents forwarding a message
: backoff time
: random transmission time
: time the CH waits before it creates and advertise a TDMA schedule
: ImCH(ch_id, numHop), an advertisement message sent by the CH to declare its
new role. It contains the CH ID and the number-of-hops to reach it.
: Wish(ch_id, wish_value), this is a join request sent by a sensing node to a CH. It
contains the respective CH ID and a wish value representing its desire to become a
CH in the next round.
: ADV_SCH(order), an advertisement message sent by the CH to all its member
nodes. It contains the TDMA schedule that specifies the order of data transmission
for each node.
Fig. 2. In this scenario, node n3 was chosen to be a CH. It broadcasts an advertisement message. Receiving nodes wait for time a before they choose the message with the
minimum hop count and send a join request message to the corresponding CH. After random delay b, nodes re-broadcast the received advertisement. The CH waits for a time,
c, to receive all potential join request messages before it creates and broadcast the TDMA schedule. Note the collision that happened when nodes n1 and n2 forward the
advertisement messages at the same time. Section 4.1.3 describes how this type of collisions is managed.
Please cite this article in press as: M. Hammoudeh, R. Newman, Adaptive routing in wireless sensor networks: QoS optimisation for enhanced application
performance, Informat. Fusion (2013), http://dx.doi.org/10.1016/j.inffus.2013.02.005
6. 6
M. Hammoudeh, R. Newman / Information Fusion xxx (2013) xxx–xxx
Sink
n1
n2
n3
n4
d
d
d
5
5
5
5
6
6
6
d : data transmission time assigned in the TDMA
5 : Data(data), data message sent by sensing node to its CH. It contains raw data
collected by the node.
6 : ToS(AGdata), a message sent by the CH to the sink. It contains aggregated data.
Fig. 3. The CH n3 aggregates all received data messages and sends them to the sink.
In ROL, all nodes communicate with their CH through a TDMA.
ROL upgrades the TDMA method used in LEACH to make it suitable
for multi-hop communication. The TDMA is created by each CH
node based on the number of nodes in the cluster. The time domain
is divided into several periodic time slots of fixed length, one for
each node. The sleep/wake scheduling is integrated with the TDMA
schedule to achieve greater energy savings (TDMA protocols avoid
energy waste due to contention); the radio is turned off during idle
times and wakes up just before message transmission/reception.
To sustain a connected graph, nodes sleep times should be appropriately synchronised. If a node is in the path of transmission of
other nodes, it must not sleep before it sends its own data and forwards its children data. Sensing nodes make up their children set
while forwarding the join request messages during the cluster setup phase.
The proposed sleep/wake schedule aims to reduce the sleep latency by having a periodic receive-send-sleep cycle. This is
achieved through level-by-level offset schedules, in which data
flows in step by step from the leaves of the tree towards the CH,
with nodes going to sleep once they send their packets to their parents, and waking up just in time to receive the next round of packets. In this design, we assume that the number of slots available to
the cluster is fixed. This in effect defines the duration of the periodic sleep cycle, and the wake cycle, which are assumed to be
determined a priori by many factors including:
1. Application-specific requirements for energy efficiency, e.g.,
end-to-end delay.
2. The size and type of the collected data, e.g., numerical, image, or
video data.
3. The packet generation rate.
4. Limitations on sleep/wakeup times of the radio hardware
involved.
5. The processing time, especially in systems that involve complex
patterns of in-node processing (e.g., lossy data aggregation).
6. The average distance between a node and its parent (propagation delay).
7. Manufacturing imprecision and aging, the clock frequency is
affected by environmental factors including temperature, pressure, and voltage [28].
In the absence of a network-wide synchronisation protocol, a
guard interval can be added to the slot to compensate for synchronisation errors. The sleep/wake schedule will result in every node
having a path on which all intermediate nodes have sequentially
increasing slots. The node wake up time is calculated as the transmission interval plus the number of hops between the leaf node
times a single slot length. For instance, if nodes send their data
every m minutes and the slot length is sllsec, then, a node that is
nh hops from the leaf node will wake up at time t = m + (sl  nh).
In large scale WSNs, multiple nodes should be allowed to transmit at the same time slot if their receivers are in non-conflicting
parts of the network, i.e. a receiver of a specific transmission is also
within the radio range of another transmission intended for another node. If a node communication may interfere with another
node communication, these nodes should not transmit simultaneously. To avoid interference and unnecessary communication
delay, each sensor node obtains the slot assignments of its neighbours. Then, the two nodes can synchronise to wake up at different
times. This sleep/wake pattern is similar to that of the S-MAC protocol. In S-MAC each node follows a periodic active/sleep schedule,
synchronised with its neighbouring nodes.
As in LEACH and S-MAC, ROL also uses CDMA to minimise interference between clusters such that each cluster uses a different set
of CDMA codes. When a node is in the multi-hop path for transmitting the aggregated data coming from the CH to the sink, it has to
schedule carefully to participate in each communication. One way
to achieve this is by creating a secondary sleep/wake schedule. The
secondary schedule is created sequentially starting at the CH. Since
the CH knows the next hop towards the sink node, it synchronises
with that node to wake up at time tCH = m + ot(sl  nhmax) where
nhmax is the longest path between the CH and a leaf node and ot
is a fixed time offset. This allows the CH to collect and aggregate
data from all of its member nodes. Then, each node on the path
to the sink increments the tCH by sl and forwards it to the next
hop in the path. This process terminates at the sink node.
For the duration of the network setup phase, CH advertisement
communication is not guaranteed collision-free as TDMA schedules are only created after clusters are established. S-MAC handles
collisions resulting from interference with other signals by having
nodes backoff for a random duration before transmission. The full
SMAC implementation also deals with collisions through the use of
traditional mechanisms such as RTS/CTS exchange and virtual listening according to a network allocation vector.
In delay sensitive applications or in applications that involve
heavy bidirectional traffic, i.e. frequent network querying, all nodes
in the network wake up at the same time according to a simple
periodic pattern with a fixed period such as the IEEE 802.11.
4.2. A tool for performance optimisation
To find values for the routing parameters that are best for a particular application, system designers are provided with an interactive tool (see Fig. 4). This tool, aids in resolving the performance
differentiation of applications by incorporating the configurability
of the ROL parameters. It can be used by system designers, who
Please cite this article in press as: M. Hammoudeh, R. Newman, Adaptive routing in wireless sensor networks: QoS optimisation for enhanced application
performance, Informat. Fusion (2013), http://dx.doi.org/10.1016/j.inffus.2013.02.005
7. 7
M. Hammoudeh, R. Newman / Information Fusion xxx (2013) xxx–xxx
Fig. 4. ROL interactive tool.
have advance knowledge of application requirements, to order different routing design objectives according to their importance for
the application and automatically calculates the routing parameters values. System designers can also use the tool to change different parameter values to manually optimise ROL performance. As
the user changes the values, the impact of these changes on the
various protocol performance areas is visually reflected on a scale
as a percentage from 0 to 100.
Theoretically, finding the best routing parameter values is a global optimisation problem. According to [29], the global optimisation is to find the best possible element x⁄ from a set X according
to a set of criteria F = {f1, f2 ,. . . , fn}. These criteria, called objective
functions, are expressed as functions. An objective function can
be expressed as f: x ´ Y with Y # R. Objective functions can be
simple mathematical expressions as well as complex algorithms.
Global optimisation covers all methods that can be used to find
the best element x⁄ in X such that f 2 F. Because the relation between the various routing parameters and their effect on the routing performance is clear, routing optimisation can be solved using
deterministic algorithms. Such deterministic algorithms use problem dependent heuristics based on a model of some natural phenomenon or physical process. In this work, global optimisation is
applied to sets F (many criterion) consisting of n = jFj objective
functions fi, each representing one design objective to be
optimised.
F ¼ fi : X # Y i : 0 < i 6 n; Y i # R
ð2Þ
This class of optimisation algorithms is usually named with the prefix multi-objective. ROL achieves optimisation by computing a
weighted sum g(x) of all functions fi(x) 2 F. Each objective fi is multiplied with a weight wi corresponding to its priority. Weighted sum
seeks Pareto optimal solutions [30] by systematically changing the
weights among the objective functions, i.e. trading-off conflicting
objectives. Signed weights can be used to give some objectives more
weight or influence on the routing performance than other objectives in the same set. An example from [29] assumes that a weight
wa = 1 is applied to an objective function fa and the weight wb = À1
to the objective function fb. Decreasing g(x), results in reducing the
influence of fa and increasing that of fb and vice versa. In this way,
multi-objective problems can be simplified to single-objective ones.
In [29], g(x) is presented as:
gðxÞ ¼
n
X
i¼1
wi fi ðxÞ ¼
X
8fi 2F
wi fi ðxÞ
ð3Þ
and
xà 2 X à ( gðxÃ Þ P gðxÞ 8x 2 X
)
ð4Þ
To generalise to an arbitrary number of objective and any dimensionality state space, we replace the scalar x by a vector field x(z)
defined over domain x. The choice of a vector field for x allows modelling more than one quantity of interest. The new n objective functionals is
f ðxÞ ¼
Z
LðxðzÞÞdz
where L is a set of operators on the vector field x. The weights are
given by the vector -, such that the overall cost function is e(-, x) =
-Tf(x). The minimum cost solution for a given set of weights is x⁄(), resulting in a total cost of e⁄(-) = minze(-, x) = e(-, x⁄(-)). The
weight function must be convex, regardless of the convexity of individual objective functions. The above weight function is convex in
-. The proof is as follows:
Proof. Let eà ð-1 Þ ¼ eà and eà ð-2 Þ ¼ eà Á eà ð-Þ is convex if for any
1
2
r 2 [0, 1], eà ðr-1 þ ð1 À rÞ-2 Þ P reà þ ð1 À rÞeà .
1
2
eà ðr-1 þ ð1 À rÞ-2 Þ ¼ min ex ðr-1 þ ð1 À rÞ-2 ; xÞ
¼ minðr-1 þ ð1 À rÞ-2 ÞT f ðxÞ
z
P minr-T f ðxÞ ¼ reà þ ð1 À rÞeÃ
1
1
2
z
Sensor network designers can choose the configurations that best
suit their application requirements. If the default values of the
parameters are used, ROL/NDC attempts to achieve a good level of
the following main design objectives: energy efficiency, timeliness,
and robustness. h
5. Optimal cluster balancing
In this section we propose an optional cluster balancing plug-in
called Nutrient-flow-based Distributed Clustering, NDC. This plugin can be used with any clustering algorithm. The aims of the NDC
algorithm are: (1) To equalise, so far as is possible, the diameter of
the clusters. (2) To equalise, so far as is possible, the membership
of the clusters. The distributed model described here is based
around a metaphor of nutrient flow supporting some simple lifeform, such as a mould. The concept is to provide a limited supply
of nutrient and allow the nodes to ally themselves with a CH which
Please cite this article in press as: M. Hammoudeh, R. Newman, Adaptive routing in wireless sensor networks: QoS optimisation for enhanced application
performance, Informat. Fusion (2013), http://dx.doi.org/10.1016/j.inffus.2013.02.005
8. 8
M. Hammoudeh, R. Newman / Information Fusion xxx (2013) xxx–xxx
will provide the largest nutrient supply. If properly regulated, this
should lead to clusters broadly equalising their membership. In order to minimise the radius of a cluster, it is arranged that some of
the supply of nutrient is lost in transit between nodes – the further
the distance travelled, the more is lost. It is important that some
advantage be given to nodes that join in a cluster, rather than communicating directly with the sink. For this reason, it is necessary to
provide some advantage associated with clustering, as opposed to
direct communication. The simplest way to do this is to make the
loss of nutrient super-proportional to the distance of a link. Given
that in real life, radio propagation obeys an inverse square law, it
seems reasonable to make the loss of nutrient proportional to
the square of the distance travelled.
Like many distributed route discovery algorithms, NDC operates
in distinct phases with the network reconfiguring itself from phase
to phase. During each phase, nodes try to improve the amount of
nutrient available to them. They do this by contacting a local node
at random and if clustering with that node will offer a better supply than that which is currently available, then the node changes
allegiance. Nodes receiving requests for nutrient from other nodes
make an offer back to that node, giving an estimate of the nutrient
that would have been available had that node been a member of its
cluster. The estimate depends both on the amount of nutrient
available, and the number of nodes dependent on that CH.
Another consideration is that the algorithm has to give encouragement for clusters to grow, that is that the amount of nutrient
available becomes greater as nodes join the network. To effect this
in each phase the sink has an available amount of nutrient proportional to the total number of connected nodes. The starting conditions are as follows: (1) Some initial store of nutrient available at
the sink, nsink. (2) Current state of all other nodes is to have no
nutrient, nav = 0.
From the initial state, some nodes (Nc) will by chance have direct contact with the sink. These become the initial CHs, and each
is given an equal share of the nutrient available nav ¼ nsink , which is
jN c j
available to them as attenuated by the square of the distance from
the sink. Across the network the sequence of events in each phase
is as follows:
Nutrient allocation: Each node transmits to its dependents (if
any) the total amount of nutrient available to that cluster and
the current number of members (including the CH) at that level
of the hierarchy. Each dependent calculates its share of nutrient,
S, for this phase, which is
n
2
mÂkÂd
where n is the total nutrient available to the cluster, m is the number of members, k is a constant of proportionality for the distance
adjustment and d is the distance between the node and the CH.
CH advertisement: Each node which has a supply of nutrient selects another node (or set of nodes, to speed up the evolution of the
system) at random and forwards the above information, along with
the identity of the CH.
Nutrient estimation: The receiving node calculates the amount of
nutrient, S0 , it could have received in this phase as a member of that
cluster. If the amount is greater than its actual allocation in this
phase it communicates with the CH and joins the cluster (also
communicates with its old CH to leave that cluster).
CH propagation: CHs propagate upward through the network
the number of members. The sink calculates the amount of nutrient available to each clustered for the next phase using the formula
nn ¼
no  mn
mo
where nn is the nutrient available for the next phase, no is the nutrient available this phase, mn is the membership reported, mo is the
membership reported for the previous phase. The effect of this redistribution of nutrients is to advantage CHs gaining members, in
order to avoid cyclical movement of members between clusters.
The operation of the NDC clustering is summarised in Algorithm 1.
Algorithm 1. NDC cluster balancing.
1. some nodes become initial CHs
2. the sink gives each CH nutrient share nav
3. each CH sends the values of n and m
4. nodes receiving the CH message do the following:
5. calculate S
6. forward current CH id & the received n and m values
7. nodes receiving the forwarded message do the following:
8. calculate S0
9. IF S0 > S THEN
10.
leave current CH
11.
join the CH in the forwarded message
12. END IF
13. all CH send their m value to the sink
14. the sink calculate nnext
15. the sink broadcast nnext value
From the viewpoint of theory, the resource allocation policy of a
communication link can be depicted by a Directed Acyclic Graph
(DAG) [31] with a single root representing the sink and leaf nodes
representing individual traffic streams. Middle nodes represent
organisational entities. Each node gets resources from its parent
and identifies how its resources are distributed to its children.
Examples of policies include fair resource sharing at various granularities, traffic priorities, and communications distances. DAGs
can be used by various applications to specify how traffic streams
or groups of nodes should share bandwidth. By merging subgraphs, the management policies of various routing resources
(e.g., timeliness) can be characterised simultaneously. NDC lends
itself naturally to dealing with failure recovery in an integrated
mode during the resource distribution process. For instance, applications can prepare for a quick response to the failure of nodes and
links during the formation of the graph, e.g., use another sub-graph
with highest resource availability. Fig. 5a shows a simple 2-cluster
network scenario modelled as a DAG based on the received nutrient values. In Fig. 5b, the optimised DAG based on the highest
nutrient availability is shown. To accommodate nutrient flow in
the network scenario, the problem of local maxima need to be
solved. This means that NDC has to ensure that there exists a path
from any node to its CH and the nutrient levels of all nodes along
the path are strictly increasing towards the CH, i.e. there exists a
neighbour of Hi, Hj, and Si < Sj. This is achieved by normalising
the node to CH distance (d). When d > 1, the probability of local
maxima is P0. Therefore, the original function is modified to use
dNorm(0, 1). By negation, assume that there is no neighbour with
Si < Sj, for every node Hj, Si P Sj. Then, from the iterative calculation of the nutrient, Si, we can write:
Si ¼
nParent
2
mParent  k  dNorm
^ S j P Sj
Thus
nParent
2
mParent  k  dNorm
P Sj
and dNorm P 1
which contradicts the previous assumption that dNorm 2 (0, 1).
Therefore, for every sensor node connected to the network, there
exists at least one link from that node to the CH.
Please cite this article in press as: M. Hammoudeh, R. Newman, Adaptive routing in wireless sensor networks: QoS optimisation for enhanced application
performance, Informat. Fusion (2013), http://dx.doi.org/10.1016/j.inffus.2013.02.005
9. M. Hammoudeh, R. Newman / Information Fusion xxx (2013) xxx–xxx
9
Fig. 5. DAG based on nutrient transfer.
6. Evaluation metrics
In this section, the performance of ROL is to be evaluated via
simulations with respect to the following metrics:
6.1. Data delivery ratio
Data Delivery Ratio (DDR) is a service level parameter that indicates the network effectiveness in transmitting offered data in one
direction of virtual connection [32]. It is considered as one of the
prime measures of robustness. DDR is a ratio of successful distinct
payload octets received to attempted payload octets transmitted
[32]. When calculating DDR, the packets which arrived late at the
destination are considered ineffective. The DDR for a single node
Si is denoted as DDR(Si) and defined as:
P
DDRðSi Þ ¼
data delivered to the sink
P
 100%
data offered by Si
ð5Þ
where data delivered is successfully delivered payload octets and
data offered is the attempted payload octets transmitted. The overall
DDR of a network with a number of nodes n, denoted as DDRN, is the
average DDR of all nodes:
DDRN ¼
n
1X
DDRðSi Þ
n i¼1
ð6Þ
by the number of connection pairs throughout the simulation to
eliminate the effect of the network scale. Then timeliness is measured as follows [33]:
Pn
n
TN
TðSi Þ 1 X TðSi Þ
¼ Pi¼1
¼
T Network ¼ 1 Pn
n
n i¼1 hðSi Þ
i¼1 hðSi Þ
i¼1 hðSi Þ
n
where h(Si) is the minimum hop count from Si to the sink. TNetwork is
the average time it takes a packet to be delivered. When TNetwork = 1,
it means that the packets have an equivalent average delay of the
same packets delivered through the shortest paths with a delay of
1 on each hop.
6.3. Energy efficiency
Since radio communication is the most power hungry operation
[35], the cost that ROL imposes on the networks is considered in
terms of number of messages sent. This measure also gives an indication of the bandwidth usage besides the energy consumption.
Recall that all messages, including the ones originating from the
CHs and carrying aggregated data, have a fixed data length. In this
work, we are only interested in studying the effect of using the
backoff time metrics on the cluster setup traffic. Therefore, the setup traffic for a single cluster formation round, TrRound is calculated
as:
TrRound ¼
6.2. Timeliness
Timeliness is measured as the time normalised against the average time for a single-hop along the shortest path from a node to the
sink [33]. Recent studies in WSNs focus on timeliness as a QoS metric (e.g., [34]). The average delay taken by the first copy of a packet
from the source node, Si, to the sink is denoted as T(Si). T(Si) includes all possible delays that are caused by queuing in the interface queue, retransmission at the MAC layer and the propagation
through the environment. The average delay of all n nodes, denoted as TN, is given by:
TN ¼
n
1X
ðta À ts Þ
n i¼1
ð7Þ
where ta is the time a packet arrives at the sink and ts is the time a
packet sent at the source. The delay depends also on the scale of the
network [33]. The average network delay is the total delay divided
ð8Þ
number of sent messages
C life
ð9Þ
where Clife is the time spanning from the moment the CH sends the
first advertisement message to the moment all cluster members receive the TDMA schedule.
7. Simulation experiments
As ROL is derived from LEACH, we adopt the same network and
energy model for better comparison. We use the specification of
MICAz [36], a popular sensor node prototype, to make the simulation adhere to the real hardware parameters of WSNs. Random
graphs were dispersed in a 100 m  100 m region such that no
two nodes share the same location and the transmission range of
each node is bound to 75 m. The bandwidth of the channel was
set to 250 kbps, each data message was 50 bytes long, and the
packet header for various message types was fixed to 30 bytes. A
simple model for radio hardware energy dissipation is also
Please cite this article in press as: M. Hammoudeh, R. Newman, Adaptive routing in wireless sensor networks: QoS optimisation for enhanced application
performance, Informat. Fusion (2013), http://dx.doi.org/10.1016/j.inffus.2013.02.005
10. 10
M. Hammoudeh, R. Newman / Information Fusion xxx (2013) xxx–xxx
assumed. All the nodes were given an initial 0.5 J supply of energy.
For the experiments described here, both the free space (d2 power
loss) and the multi-path finding (d4 power loss) channel models
were used. The processing delay for transmitting a message is randomly chosen between 0 and 5 ms. Using this network configuration, we simulated in the Dingo WSN simulator [37] the ROL/NDC,
Mires++, and LEACH with 5% of the nodes being CHs.
7.1. Energy consumption
This experiment studies the effect of the ROL/NDC parameters
on the energy consumption. ROL/NDC was simulated with various
backoff delay values. Fig. 6 plots the total number of setup messages versus the backoff delay. When the backoff delay is set to 0
the behaviour of ROL/NDC will be similar to LEACH. The figure
shows that as the backoff delay increases, the number of setup
messages decreases until the time becomes large enough for nodes
to receive advertisements from all CHs. The optimal backoff delay
is calculated from Fig. 6 to be around 20 ms. Using this value, the
total number of set-up messages is reduced by up to 65%.
Fig. 7 shows ROL/NDC, Mires++, and LEACH network life. The
network life is studied as the number of rounds until the first node
dies (Fig. 7a) and the number of rounds until the last node dies
(Fig. 7b). ROL/NDC achieves energy gains by reducing the clustering overhead, load balancing across clusters, and using shortest
multi-hop communication paths.
In Mires++ and LEACH the network life trend was flat and considerably lower than ROL/NDC. Mires++ incurs high energy consumption due to heavy setup communication. Often adapting
synchronous communication, such as the publish/subscribe style
used in Mires++, is computationally intensive process. Mires++ also
spend a significant amount of energy on updating nodes topics
subscription. In LEACH, the long range radio transmission results
in nodes energy depletion. Also, LEACH requires nodes to continuously listen to the channel, which results in considerable energy
waste. Generally, clusters formed based on the shortest distance
will consume minimum communication energy at the beginning,
but energy consumption will eventually increase due to the reclustering overhead.
7.2. Load-balancing
This experiment covers network load-balancing offered as a
main design objective of ROL/NDC. We study the effect of the
hop count, the backoff delay, and the use of NDC on clusters formation (geographic span and population). LEACH, Mires++, and ROL/
NDC were respectively applied on randomly generated network
topologies. Due to the effect that nodes distribution have on the results, multiple simulation runs are combined to estimate uncertainties in the simulations. In other words, to demonstrate that
Fig. 6. CH advertisement traffic versus backoff delay.
Fig. 7. Energy performance analysis.
the load is balanced for any setup we ran the same experiments
for five different distributions. This makes our simulation a Monte
Carlo simulation, as repeated sampling from a distribution is performed. Also, to accommodate to the effect of CH locations on
nodes distribution, CH locations were kept fixed in all runs (original location were determined nondeterministically). In each protocol run, randomly distributed nodes are organised into five clusters
(optimal percentage of CH as calculated in LEACH). Then, node distribution between different clusters is studied. In ROL/NDC the
backoff delay were set to 20 ms and the hop count initially set to 0.
Fig. 8 shows nodes distribution among clusters formed using
LEACH, Miress++, and ROL/NDC. The population density (the number of nodes per unit area) of various LEACH generated clusters
varies largely (see Fig. 8a; the first and fifth clusters hosted over
65% of the total number of nodes on 62.5% of the application area,
while the other three clusters hosted less than 35% of the total network population on the rest of the application area. LEACH poor
performance is mainly due to defining network regions by inconsistent wireless connectivity. It does not deploy any mechanism
that manages the span or the membership of clusters.
In Miress++ (Fig. 8b), nodes were distributed more fairly among
clusters when compared to LEACH. However, two of its clusters
were underpopulated (hosted 10% of the total population). This is
possibly due to nodes distribution. Miress++ ignores the location
and distance between nodes when forming its clusters. The unfair
cluster population is critical as Miress++ relies only on rotating CH
Please cite this article in press as: M. Hammoudeh, R. Newman, Adaptive routing in wireless sensor networks: QoS optimisation for enhanced application
performance, Informat. Fusion (2013), http://dx.doi.org/10.1016/j.inffus.2013.02.005
11. M. Hammoudeh, R. Newman / Information Fusion xxx (2013) xxx–xxx
11
variance is approximately three times smaller than that of LEACH
(11.818).
7.3. Robustness
Fig. 8. Load-balanced cluster formation.
to achieve load balancing, i.e. without balanced cluster membership it will be load unbalanced.
ROL/NDC formed energy efficient clusters by reducing the
bridging distance between nodes and their CH (see Fig. 8c). The
number of nodes at every cluster maintained a maximum of 7% difference from the optimal population (20%). Proportional non-overlapping clusters of physically close nodes reduce the cluster
management overhead and therefore the total network energy
consumption. The average variance, from the optimal, of the coverage polygon of the 10 clusters in ROL/NDC networks is 3.1075. This
This experiment aims to measure ROL/NDC’s ability to maintain
a high DDR within a given timeliness constraint in the presence of
communication failures.
This evaluation scenario simulates permanent communication
failures caused due to hardware failure or energy depletion. In Dingo, node attributes include the expected time of node failure and
failure type (e.g., PHY_D indicates physical node damage by an
external event). These attributes is used to break communication
links during the simulation at a given times. During simulations,
faulty nodes are selected randomly based on their node ID (an integer value between 1 and n), where n is the total number of nodes in
the network. The selection of nodes is not correlated with the node
location. Failures occur during the first data transmission phase;
after the node sends its data, its energy level drops to 0 J, consequently its radio will be switched off. Other nodes continue to
function normally according to their assigned TDMA slot.
Fig. 9a shows the DDR for ROL/NDC, Mires++, and LEACH. The
DDR of the three protocols decreases as the node density increases.
ROL/NDC maintains very high DDR, close to 1, in all tested network
densities. In ROL/NDC, nodes know multiple paths to their CH. If
the primary path fails, one of the standby paths will be used. Moreover, CH failures can be quickly recovered without incurring large
data loss. The short distance between nodes and their CH helps in
localising traffic, which results in less congestion and data loss.
LEACH, however, offers lower DDR, first is ROL/NDC. The long
range communication increases the potential for collisions. Additionally, if the sink is out of nodes communication range, data will
not be delivered.
Mires++ does not define any mechanism to deal with node or
communication paths failures, it only focuses on CH failures. Moreover, excessive delay due to heavy in-network processing, data
aggregation and fusion, significantly reduced the DDR.
Fig. 9b plots the average end-to-end delay for the ROL/NDC,
Mires++, and LEACH at different node densities. At each point,
the end-to-end delay of five runs was averaged. ROL/NDC has lower average end-to-end delay than Mires++ and LEACH. There are
several factors accounting for this outcome. First, ROL/NDC forwards data on the shortest path to the CH, therefore, reduces propagation and queuing delays. Second, in time critical applications
ROL/NDC multiplexes data over multi-paths to avoid congested
paths.
However, in LEACH, nodes can only transmit their data according to a TDMA schedule that includes the entire network due to the
single hop communication. Major delays can be caused by the time
period during which failed or lost paths can be recovered.
In Mires++, the publish/subscribe communication and the message handling process introduces considerable delays. First, incoming messages has to be validated by examining several header
fields. Then, valid messages are sent to the corresponding message
handler based on the message type. After parsing the message payload, the message handler updates the state of the node and respond accordingly. To reduce raw data transmissions, cHs and
sensor nodes run sophisticated computing algorithms, such as data
aggregation and fusion, which introduces considerable message
delivery delays.
7.4. Selection according to application
From the discussion above, it can be seen that ROL/NDC outperforms the other protocols with regard to energy consumption, load
balancing and robustness. Thus, there are few WSN applications for
Please cite this article in press as: M. Hammoudeh, R. Newman, Adaptive routing in wireless sensor networks: QoS optimisation for enhanced application
performance, Informat. Fusion (2013), http://dx.doi.org/10.1016/j.inffus.2013.02.005
12. 12
M. Hammoudeh, R. Newman / Information Fusion xxx (2013) xxx–xxx
tem will outperform one based on the other protocols. Particularly,
the longer life due to lower energy usage and the greater robustness would be expected to translate directly to a lower cost of
ownership, and this an increased return on investment.
8. Conclusion
Fig. 9. Robustness comparison in terms of DDR and average end-to-end delay.
which it would not produce a better functioning system than the
others, so long as they are based on a set of nodes with reasonably
similar resource, since ROL/NDC is based around distribution of the
workload. For systems based on a powerful network controller and
small, computationally weak nodes, a simpler centralised protocol
such as MESTER would be appropriate. Networks using more fully
resourced nodes will tend to be those using nodes carrying a diverse sensor load, including sensors requiring extensive data processing by the node. This type of network will also tend to
produce a greater volume of data, favouring the higher DDR and
lower end-to-end delay that ROL/NDC offers. The differences in
performance are also less pronounced for small networks, below
a few hundred nodes. So, while ROL/NDC is advantageous for all
non-centralised networks, it comes into its own for very large networks, composed of relatively powerful nodes, in which each node
generates substantial amounts of data. WSN of this type are still
relatively rare in practice, with most consisting of a few tens of
nodes. However, in many applications networks are installed
incrementally, and may be expected to grow to a considerable size
over a few years. For instance a recent application [38] known to
the authors places a small sensor network, of around ten nodes
in a vineyard as part of a food quality traceability system. Each
node carries temperature, humidity, sunlight and leaf wetness sensors, and currently transmits data to a single base station. In its
present configuration, any of the protocols discussed here would
be adequate. But, the vineyard in which it is installed has a number
of similar fields, so if this installation is successful in returning on
investment, the network will grow to over a hundred nodes quite
quickly. This is about the size where the advantages of ROL/NDC
become apparent. Furthermore, this vineyard is a member of a
co-operative, and if all members adopt the same system then the
network will grow to over a thousand nodes, and an ROL/NDC sys-
This paper presented a distributed clustering protocol, called
ROL/NDC. This protocol groups nodes into clusters and build routing paths based on localised metrics that are linear in the number
of nodes and linear in the number of links, which makes ROL energy and computationally efficient. This work, distinguishes itself
from current state of the art solutions in three respects. First, it
uses a combination of optimisable routing metrics to build energy
efficient clusters at low cost. These parameters can be configured
and managed to allow user applications to perform better and
coexist with each others. Second, it defines a new cluster balancing
method. Third, unlike existing work that focuses on one design
goal, ROL/NDC can achieve comparable results in all of the above
design aims.
In future we intend to test the proposed algorithms with other
applications and network topologies. Most importantly, we will
consider the inclusion of more design objectives into ROL/NDC
and research more sophisticated methods to optimise it for specific
applications. An interesting extension of this work would be
designing a sleep/wake scheduling algorithm that considers variable size messages. This is particularly useful for applications
where a node may have considerably more data to send than some
other nodes, e.g., aggregated data or image of detected event. In
this case per-hop MAC level fairness is not important as long as
application-level performance is not degraded.
References
[1] W. Heinzelman, A. Chandrakasan, H. Balakrishna, Energy-efficient
communication protocol for wireless microsensor networks, in: Proceedings
of the 33rd International Conference on System Sciences, 2000.
[2] P. Nie, Z. Jin, Y. Gong, Mires++: a reliable, energy-aware clustering algorithm
for wireless sensor networks, in: Proceedings of the 13th ACM International
Conference on Modeling, Analysis, and Simulation of Wireless and Mobile
Systems, ACM, 2010, pp. 178–186.
[3] P. Kulkarni, D. Ganesan, P. Shenoy, The case for multi-tier camera sensor
networks, in: Proceedings of the 13th Annual ACM International Conference on
Multimedia, 2005, pp. 229–238.
[4] Y. Yang, M.I. Fonoage, M. Cardei, Improving network lifetime with mobile
wireless sensor networks, Comput. Commun. 33 (2010) 409–419.
[5] J. Zhang, V. Varadharajan, Review: wireless sensor network key management
survey and taxonomy, J. Netw. Comput. Appl. 33 (2010) 63–75.
[6] G. Smaragdakis, I. Matta, A. Bestavros, Sep: a stable election protocol for
clustered heterogeneous wireless sensor networks, in: Second International
Workshop on Sensor and Actor Network Protocols and Applications (SANPA
2004), 2004.
[7] O. Younis, S. Fahmy, Heed: a hybrid, energy-efficient, distributed clustering
approach for ad hoc sensor networks, IEEE Trans. Mobile Comput. 3 (2004)
366–379.
[8] Y. Yang, H. Wu, W. Zhuang, MESTER: minimum energy spanning tree for
efficient routing in wireless sensor networks, in: Proceedings of the 3rd
International Conference on Quality of Service in Heterogeneous Wired/
Wireless Networks, ACM, 2006, p. 17.
[9] S. Lindsey, C. Raghavendra, Pegasis: power efficient gathering in sensor
information systems, in: Proceedings of the IEEE Aerospace Conference, 2002.
[10] T. Abdelzaher, T. He, J. Stankovic, Feedback control of data aggregation in
sensor networks, in: Decision and Control, 2004. CDC. 43rd IEEE Conference
on, vol. 2, 2004, pp. 1490–1495.
[11] M. Hammoudeh, R. Newman, S. Mount, C. Dennett, A combined inductive and
deductive sense data extraction and visualisation service, in: Proceedings of
the 2009 International Conference on Pervasive Services, 2009, pp. 159–168.
[12] S. Chun-yan, Z. Hua-zhong, Z. Xiu-yang, Clustering hierarchy tree routing
algorithm based on leach, J. Comput. Appl. 28 (2008) 2594.
[13] X. Wei, T. Ya-qing, X. Hua, M. Yu-wen, Hierarchical routing protocol to handle
topological variety for wireless sensor network, Chinese J. Sensors Actuat. 21
(2008) 1635–1639.
[14] D. Kumar, T.C. Aseri, R.B. Patel, EEHC: energy efficient heterogeneous clustered
scheme for wireless sensor networks, Comput. Commun. 32 (2009) 662–667.
Please cite this article in press as: M. Hammoudeh, R. Newman, Adaptive routing in wireless sensor networks: QoS optimisation for enhanced application
performance, Informat. Fusion (2013), http://dx.doi.org/10.1016/j.inffus.2013.02.005
13. M. Hammoudeh, R. Newman / Information Fusion xxx (2013) xxx–xxx
[15] M. Tubaishat, J. Yin, B. Panja, S. Madria, A secure hierarchical model for sensor
network, SIGMOD Rec. 33 (2004) 7–13.
[16] I. Jawhar, N. Mohamed, K. Shuaib, N. Kesserwan, An efficient framework and
networking protocol for linear wireless sensor networks, Ad Hoc Sensor Wirel.
Netw. 7 (2009) 3–21.
[17] M. Hammoudeh, T. Alsboui, Building programming abstractions for wireless
sensor networks using watershed segmentation, in: Smart Spaces and Next
Generation Wired/Wireless Networking, Lecture Notes in Computer Science,
vol. 6869, 2011, pp. 587–597.
[18] H.-N. Dai, Throughput and delay in wireless sensor networks using directional
antennas, in: 5th International Conference on Intelligent Sensors, Sensor
Networks and Information Processing (ISSNIP), 2009, 2009, pp. 421–426.
[19] C. Gui, Routing Performance and Power Conservation in Ad Hoc and Sensor
Networks, Ph.D. Thesis, Computer Science, 2005.
[20] Y. Liu, R. Hoshyar, X. Yang, R. Tafazolli, Integrated radio resource allocation for
multihop cellular networks with fixed relay stations, IEEE J. Sel. Areas
Commun. 24 (2006) 2137–2146.
[21] M. Hammoudeh, R. Newman, C. Dennett, S. Mount, Interpolation techniques
for building a continuous map from discrete wireless sensor network data,
Wirel. Commun. Mobile Comput. 2 (2011) 41–60.
[22] D.B. Johnson, D.A. Maltz, Dynamic source routing in ad hoc wireless networks,
in: Imielinski, Korth (Eds.), Mobile Computing, vol. 353, Kluwer Academic
Publishers, 1996.
[23] W. Ye, J. Heidemann, D. Estrin, An energy-efficient mac protocol for wireless
sensor networks, in: INFOCOM 2002. Twenty-First Annual Joint Conference of
the IEEE Computer and Communications Societies, Proceedings, IEEE, vol. 3,
2002, pp. 1567–1576.
[24] S. Singh, C.S. Raghavendra, PAMAS – power aware multi-access protocol with
signalling for ad hoc networks, SIGCOMM Comput. Commun. Rev. 28 (1998)
5–26.
[25] Y. Wu, S. Fahmy, N.B. Shroff, Energy efficient sleep/wake scheduling for multihop sensor networks: non-convexity and approximation algorithm, in: 26th
IEEE International Conference on Computer Communications, 2007, pp. 1568–
1576.
13
[26] J. Elson, L. Girod, D. Estrin, Fine-grained network time synchronization using
reference broadcasts, SIGOPS Oper. Syst. Rev. 36 (2002) 147–163.
[27] S. Ganeriwal, R. Kumar, M.B. Srivastava, Timing-sync protocol for sensor
networks, in: Proceedings of the 1st International Conference on Embedded
Networked Sensor Systems, SenSys ’03, ACM, New York, NY, USA, 2003, pp.
138–149.
[28] J.R. Vig, Introduction to Quartz Frequency Standards, SLCET-TR 92-1, Army
Research Laboratory, 1992. <http://www.ieee-uffc.org/freqcontrol/quartz/vig/
vigtoc.htm>.
[29] T. Weise, Global Optimization Algorithms – Theory and Application, second
ed., 2008. <http://www.it-weise.de/> (accessed 2012-06-17).
[30] O. Cordón, A historical review of evolutionary learning methods for mamdanitype fuzzy rule-based systems: designing interpretable genetic fuzzy systems,
Int. J. Approx. Reason. 52 (2011) 894–913.
[31] N. Christofides, Graph Theory: An Algorithmic Approach (Computer Science
and Applied Mathematics), Academic Press, Inc., Orlando, FL, USA, 1975.
[32] J. Dunn, C. Martin, Terminology for frame relay benchmarking, in: Internet
Informational RFC 3133, 2001.
[33] P. Sun, W.K. Seah, P.W. Lee, Efficient data delivery with packet cloning for
underwater sensor networks, in: Symposium on Underwater Technology and
Workshop on Scientific Use of Submarine Cables and Related Technologies,
2007, pp. 34–41.
[34] M. Caccamo, L.Y. Zhang, L. Sha, G. Buttazzo, An implicit prioritized access
protocol for wireless sensor networks, in: RTSS ’02: Proceedings of the 23rd
IEEE Real-Time Systems Symposium, IEEE Computer Society, 2002, p. 39.
[35] G.J. Pottie, W.J. Kaiser, Wireless integrated network sensors, Commun. ACM 43
(2000) 51–58.
[36] Crossbow, Micaz Datasheet, 2012. <http://bullseye.xbow.com:81/Products/
Product_pdf_files/Wireless_pdf/MICAz_Datasheet.pdf> (accessed 06.11.12).
[37] S. Mount, Dingo Wireless Sensor Networks Simulator, 2012. <http://
code.google.com/p/dingo-wsn/> (accessed 12.03.12).
[38] F2F, RFID From Farm to Fork, 2012. <http://www.rfid-f2f.eu/> (accessed
23.10.12).
Please cite this article in press as: M. Hammoudeh, R. Newman, Adaptive routing in wireless sensor networks: QoS optimisation for enhanced application
performance, Informat. Fusion (2013), http://dx.doi.org/10.1016/j.inffus.2013.02.005