Self Organizing Wireless Sensor Network Middleware CleanPoint
Efficient Data Aggregation Middleware for Wireless Sensor Networks
-
Upload
augusto-baffa -
Category
Documents
-
view
214 -
download
0
Transcript of Efficient Data Aggregation Middleware for Wireless Sensor Networks
![Page 1: Efficient Data Aggregation Middleware for Wireless Sensor Networks](https://reader031.fdocuments.in/reader031/viewer/2022021223/577cdcf01a28ab9e78abcc45/html5/thumbnails/1.jpg)
7/30/2019 Efficient Data Aggregation Middleware for Wireless Sensor Networks
http://slidepdf.com/reader/full/efficient-data-aggregation-middleware-for-wireless-sensor-networks 1/10
Efficient Data Aggregation Middleware for Wireless Sensor Networks
Mukul Kumar, Loren Schwiebert, Monica Brockmeyer Department of Computer Science
Wayne State University
Detroit, MI 48202
[email protected], [email protected], [email protected]
Abstract
This paper describes a data aggregation and con-
sensus algorithm for object location and tracking ap-
plications deployed on wireless sensor networks. This
consensus algorithm permits ad-hoc, in-network,
group formation in response to a detected event. By
reaching a consensus in the network, only a singlemessage indicating the detected event needs to be for-
warded to the tracking application at a base station,
leading to a significant savings in communication
costs and prolonging the life of the network. Our ad-
hoc approach offers superior detecting power to other
approaches, which statically partition the network into
detection regions. The use of a quorum mechanism to
achieve consensus leads to higher availability under
failure conditions. Moreover, the algorithm exploits
the broadcast communication and synchrony proper-
ties of wireless sensor networks. Our experimental re-
sults show that the algorithm exhibits low overhead
despite faults and converges quickly to a single con-sensus even if multiple nodes initiate the consensus
protocol.
1. Introduction
Individually, each sensor node in a wireless sensor
network has very limited capabilities. The usefulness
of a wireless sensor network depends upon the ability
of the nodes to coordinate in order to achieve com-
bined functionality that is not possible by each node
separately. Local processing to combine sensor read-
ings of neighboring sensors is one technique that can
be used to extend the lifetime of the sensor network.
However, accurate coordination among a set of sensorsis not trivial. The likelihood of faults, the high cost of
communication, and energy constraints pose chal-
lenges to coordination and decision making in wireless
sensor networks.
The emergence of wireless sensor networks,
autonomous networks of small, low-energy, devices
having sensing, computational, and communication
capabilities suggests the potential for a myriad of new
applications, particularly monitoring and surveillance
applications. A key challenge of such applications is
how to reliably and correctly detect, classify, and track
objects in an environment where nodes fail and where
the cost of communication is high. As wireless sensors
may be deployed in a harsh terrain and the sensor net-
work operates as an autonomous network with a longer lifetime, a data aggregation protocol should be able to
handle both process omission failures as well as timing
failures.
Consider sensor nodes deployed for military sur-
veillance to observe movement in a particular area. In-
formation collected by these nodes needs to be
propagated to a base station. The events observed by
the wireless sensors are generally localized. A wireless
sensor can observe events only in its vicinity. The ra-
dio range of the device is determined by the transmit
power, size and shape of the antenna, the amount of
interference, etc. Each wireless sensor has an area of
interest determined by its sensing region of and ob-serves events within its area of interest. However, an
event could be perceived by multiple nodes. Local
generation of consensus would decrease the number of
nodes sending back information to the base station,
which reduces energy consumption and potentially in-
creases network lifetime.
Our protocol is unique in that it uses ad-hoc group
formation to reach a consensus about the object being
detected. We propose a fully distributed data gather-
ing protocol, which not only reduces the amount of in-
formation to be communicated for generation of
consensus but also reduces the state information re-
quired for maintaining the topology of the network.Our protocol has several advantages over contempo-
rary data gathering algorithms in terms of simplicity of
design, efficiency, fault tolerance, and absence of any
blind spots in the network.
Each node forms its own group of nodes having
common interests based on the sensitivity range of the
sensor. A random function enables the nodes near the
![Page 2: Efficient Data Aggregation Middleware for Wireless Sensor Networks](https://reader031.fdocuments.in/reader031/viewer/2022021223/577cdcf01a28ab9e78abcc45/html5/thumbnails/2.jpg)
7/30/2019 Efficient Data Aggregation Middleware for Wireless Sensor Networks
http://slidepdf.com/reader/full/efficient-data-aggregation-middleware-for-wireless-sensor-networks 2/10
event source to initiate a consensus, as there is a higher
probability of neighboring nodes having witnessed the
event, thereby improving the probability of the node to
achieve consensus for its information. The selection of
random function parameters is also a tradeoff between
the latency and the energy required for generation of
consensus by the network. The use of quorum mecha-nisms permits greater liveness despite the failure of
some nodes in the area of interest.
This paper describes an energy efficient, self-
healing wireless sensor consensus generation protocol.
The protocol has been designed and tested for generat-
ing consensus in wireless sensor networks in the pres-
ence of faults. Our protocol does not require the region
to be divided into multiple grids and thereby ensures
that consensus is generated for events that would have
occurred on these grid boundaries.
Our protocol enables the network to behave as a
self-correcting network. Each node stores the probabil-
ity value of the node to successfully generate consen-sus for its information. In case the probability value
drops below a threshold value, the node goes to sleep.
This helps in removing faulty nodes from the system.
The protocol can also accommodate omission and tim-
ing failures.
The rest of this paper first discusses related work in
Section 2, and then describes our protocol in Section 3.
Section 4 discusses fault resiliency and other issues,
while Section 5 presents an experimental evaluation of
our approach. Section 6 presents our conclusions and
describes future work.
2. Related work
The consensus problem has been studied exten-
sively by the distributed systems community in the
context of point to point communication mechanisms,
but has not been studied much under the synchronous
assumptions, broadcast communication model, and
communication constraints that characterize wireless
sensor networks.
The classic result of Fischer, Lynch, and Patterson
[5] is that consensus is impossible in an asynchronous
environment with even one failure. Fortunately, syn-
chrony assumptions are reasonable for wireless sensor
networks and permit circumvention of this result. A
good summary of the consensus problem within thecontext of asynchronous systems can be found in [6].
Lamport [12] describes the consensus problem un-
der the assumption of synchronous behavior and Byz-
antine failures, showing that 3f+1 nodes are necessary
to handle f failures. The use of quorums to achieve
consensus is demonstrated in Paxos [13] and also in
[7] to achieve replica consistency. Malkhi and Reiter
[14] introduce the notion of Byzantine quorums. Al-
though quorums have been shown to be effective in
faulty environments, we believe we are the first to ex-
ploit them in the context of wireless sensor networks.
Mirando [8] and Gehani [1] have researched con-
sensus for fail stop processors. However, Gehani [1]
uses one-to-one communication between different processors, and the processor generating consensus
accesses data of other processors in a sequential order.
Mirando [8] has optimized this protocol by introducing
a coordinator and broadcast messages. The protocol,
however, requires substantial state information.
Gupta and Birman [9,10] have devised a protocol
that provides scalable and fault tolerant solutions for
calculating global aggregate functions in large process
groups communicating over unreliable networks. It
employs a hierarchical gossip protocol [11] for com-
puting global aggregates for a large network.
Clouqueur, et al. [4] compare value-fusion with de-
cision-fusion (analogous with consensus) in faulty andnon-faulty environments, but their decision-fusion pro-
tocol doesn’t guarantee that only one decision will be
made when multiple sensors detect the same event.
Other approaches [4, 9, 10] perform data aggrega-
tion by statically partitioning the network into regions.
Such an approach may lead to a lack of accuracy in
detection when an event falls on a regional boundary.
Our work, in contrast, supports ad hoc group forma-
tion with the event at the center of the group.
Blum, et al. [2] describe an entity-maintenance and
connection service – their entity maintenance corre-
sponds to a consensus protocol and their connection
management extends the notion to permit the detected
event to serve as a communication endpoint. Although
their work is similar in spirit to our work, their proto-
cols are not formally defined.
3. Consensus protocol
A consensus is required to generate agreement
about particular information present at different servers
or nodes. We have devised a new protocol for genera-
tion of consensus in wireless sensor networks. It uses a
variant of quorum techniques for efficiently generating
consensus and tolerating faults in the system. In our
case a quorum is a subgroup of wireless sensor nodes
whose size gives it the right to carry out operations.3.1. The model and formal problem statement
We make the following assumptions about the envi-
ronment: a) the sensing region is entirely contained in
the communication region, b) the communication di-
ameter is at least twice the sensing diameter, c) there is
a minimum and known time between event occur-
![Page 3: Efficient Data Aggregation Middleware for Wireless Sensor Networks](https://reader031.fdocuments.in/reader031/viewer/2022021223/577cdcf01a28ab9e78abcc45/html5/thumbnails/3.jpg)
7/30/2019 Efficient Data Aggregation Middleware for Wireless Sensor Networks
http://slidepdf.com/reader/full/efficient-data-aggregation-middleware-for-wireless-sensor-networks 3/10
rences, and d) the event can be detected with sufficient
precision that any node can compare the readings of
two nodes and determine whether they reflect the same
event.
A node is said to behave correctly if a) it correctly
performs each protocol step within a bounded amount
of time, b) it correctly delivers timeout signals within a bounded error of the specified time, and c) if an event,
e, occurs within the node’s sensing region, the node
detects e within a bounded amount of time.
Correct communication is defined such that if a
node broadcasts a message, all correct nodes within the
communication region of that node receive the mes-
sage. Because of the broadcast nature of communica-
tion in wireless sensor networks, we observe that
messages are totally ordered by correct processes.
That is, if two correct processes both receive messages
m1 and m2, then either they both receive m1 before m2
or they both receive m2 before m1. Further, because of
the assumption that the communication diameter istwice the sensing region, an agreement property holds
with respect to protocol messages – if one correct node
receives a message m, about an event, e, any correct
node within the sensing region of e will also receive m.
Note that we are not requiring any node to receive any
message – any node may fail to have correct commu-
nication at any time. Rather we are stating the proper-
ties that hold under periods of correct communication.
The protocol satisfies the following properties:
Termination: Eventually each correct process that
detected an event makes a decision about that event
and eventually some process sends the decision to the
base station.
Agreement : The decision value of all correct proc-
esses is the same.
Validity: If the correct processes all propose the
same value, then any correct process in the decided
state has chosen that value.
The protocol works by gathering a quorum of cor-
rect nodes that agree to a particular event.
For a sensor network consisting of n nodes, and k
nodes having the same area of interest, the size of the
subgroup (quorum) should be at least (k + 1)/2. The
process for consensus generation is described below.
A large concentration of nodes exists in a small
area. Each node has a certain sensing region, S . A
node obtains a sensor reading when a user generates
interest in an event, and that request is propagated to
the sensors in that region. The sensors are activated
and collect information in their respective regions. The
sensors then initiate a consensus generation process. In
order to generate consensus on a particular sensor
reading there should be a sufficient number of nodes
that agree on the detected event to achieve a quorum.
3.2. The protocol
Consider a network consisting of n nodes. Each
node, ni, maintains a state variable, pi, that measures
the estimated likelihood of that node to generate con-
sensus regarding its information. The nodes generate
consensus by obtaining a quorum from nodes having
similar interests and area of coverage. The value of pi is increased if the information at the i
thnode is the
same as that for which the consensus has been initi-
ated. On the other hand, the value of pi is decreased
when the information at a node differs from the result
of the consensus.
A quorum is obtained after nodes exchange infor-
mation among themselves. A consensus generation
process is initiated by a node having information for
which consensus has not been generated. Other nodes
that are part of the group of the node initiating a con-
sensus then relay back acknowledgments based on
conformance of their information with that of the node
initiating consensus. The node initiating consensusthen maintains a count of the acknowledgments re-
ceived. For a group of n processes or nodes, when the
total number of positive acknowledgments (including
from itself) is greater than or equal to (n+1)/2 this sig-
nifies that the node has been able to generate consen-
sus for its own information.
A detailed specification of our protocol is presented
in Figure 1; the description of the protocol follows. A
node, before initiating a consensus for its own sensor
readings, will compare the value of pi with the thresh-
old probability P. The process can be initiated only if
pi > P. When the value of pi becomes less than P, this
implies that the node is unable to generate consensusconsistently. Another factor that could be taken into
account before consensus initiation is the energy level
at the node. The node should have sufficient power for
transmission and reception of signals.
If the probability pi of a node drops below P, the
node will be unable to either initiate consensus or par-
ticipate in a consensus process. It then goes to sleep for
a period of time.
In the absence of faults in the system, all nodes will
observe correct behavior and will thus have the same
information. Assume there are k nodes in the sensing
region of an event. Consensus is initiated by one of the
nodes in the neighborhood and a PROPOSE message issent to the other k-1 nodes in the neighborhood. This
node then receives ACK messages from the participat-
ing nodes and evaluates the values by using a simple
majority to obtain the correct result. The node that
generated a consensus request broadcasts a DECIDE
message.
![Page 4: Efficient Data Aggregation Middleware for Wireless Sensor Networks](https://reader031.fdocuments.in/reader031/viewer/2022021223/577cdcf01a28ab9e78abcc45/html5/thumbnails/4.jpg)
7/30/2019 Efficient Data Aggregation Middleware for Wireless Sensor Networks
http://slidepdf.com/reader/full/efficient-data-aggregation-middleware-for-wireless-sensor-networks 4/10
EVENTS:
detect e
propose e
ack e
nack e
decide e
initial_waitquorum_formation_timeout
sleep_wakeup
CONSTANTS:
real P // threshold
int GROUP_SIZE
int QUORUM_SIZE
LOCAL VARIABLES:
boolean awake = TRUE
boolean leader = FALSE
event_type event
real p // current boolean consensus_formed = FALSE
int round = 0
int num_acks = 0
int num_nacks = 0
PROTOCOL:
upon DETECT e:
if (awake)
event = e
set initial_wait
upon initial_wait:
if (awake)if (p > P)
if ( NOT consensus_formed)
leader = TRUE
round++
send PROPOSE event, round
set quorum_formation_timeout
else
set initial_wait
upon PROPOSE e, k:
if (awake)
//don’t respond in overlapping rounds.
if (consensus_generated)send DECIDE e
if (event = e AND k > round)
send ACK event, k
set initial_wait
else
send NACK event, round
round = max(round, k)
upon ACK e, k:
if (awake AND leader)
num_acks++if (num_acks > QUORUM_SIZE AND round = k)
send DECIDE e
consensus_formed = TRUE
cancel quorum_formation_timeout
upon NACK e, k:
if (awake AND leader)
num_nacks++
if (num_nacks > GROUP_SIZE - QUORUM_SIZE
AND round = k)
decrease p
consensus_formed = FALSE
cancel quorum_formation_timeoutif (p < P)
set sleep_wakeup
awake = FALSE
else
set initial_random_wait
upon quorum_formation_timeout:
if (awake AND leader)
if (num_acks > QUORUM_SIZE)
send DECIDE e and forward e to base station
increase p
consensus_formed = TRUE
elsedecrease p
consensus_formed = FALSE
if (p < P)
set sleep_wakeup
awake = FALSE
else
set initial _wait
upon DECIDE e:
if (awake)
consensus_formed = TRUE
cancel quorum_formation_timeout
upon sleep_wakeup
awake = TRUE
reset p
Figure 1. Consensus and data aggregation protocol
![Page 5: Efficient Data Aggregation Middleware for Wireless Sensor Networks](https://reader031.fdocuments.in/reader031/viewer/2022021223/577cdcf01a28ab9e78abcc45/html5/thumbnails/5.jpg)
7/30/2019 Efficient Data Aggregation Middleware for Wireless Sensor Networks
http://slidepdf.com/reader/full/efficient-data-aggregation-middleware-for-wireless-sensor-networks 5/10
Notice that the consensus is initiated by at least one
node in the sensing region of a detected event. Termi-
nation can be demonstrated by observing that each
node waits for a random amount of time
(INITIAL _ WAIT) after detecting an event before and ini-
tiating consensus by sending a PROPOSE message. The
initial random wait ensures with high probability thatnodes do not initiate the consensus process at the same
time. A node receiving an INITIAL _ WAIT timeout de-
termines whether consensus is being generated for the
given event before initiating consensus for the event by
sending a PROPOSE message. If consensus is being
generated for the information, the node waits again,
responding to any propose messages. If the waiting
node receives a DECIDE message within the timeout pe-
riod it cancels the INITIAL _ WAIT. This ensures that
each node keeps trying to initiate consensus in its net-
work neighborhood until it either receives the consen-
sus result or initiates the consensus request itself.
Moreover, concurrent generation of consensus is prevented. While the initial random wait reduces the
number of nodes simultaneously initiating consensus,
it is still possible for multiple nodes to initiate consen-
sus. Further, when any node receives a PROPOSE mes-
sage, it also waits. The communication properties of
the wireless network prevent concurrent use of the
wireless channel without destructive interference. If
two processes initiate consensus, and the two round
numbers are equal, either communication collisions
will prevent both propose messages from reaching a
quorum of nodes, or any nodes that receive both
PROPOSE messages will view them in the same order,
due to the broadcast nature of the network. The proto-
col ensures that nodes ACK only the first message re-
ceived in a given round. If the round numbers are not
equal, then it will be because the round with the lower
round number has already failed to reach consensus.
Therefore, only one consensus will be reached for a
given event.
Each correct node gets the final result of consensus
because the participating nodes wait for the result of
consensus until the INITIAL _ WAIT timeout occurs.
Upon initiating consensus, they will then get the result
of consensus from neighboring nodes if the consensus
has been generated and the node has not missed the
result due to communication omission or timing fail-
ures. If on the other hand, the earlier consensus genera-
tion process had either been unsuccessful or the node
crashed due to process omission failure, the current
node initiates the process.
4. Issues
4.1. Random delay
The random delay for initiating consensus should
be chosen carefully in order to prevent concurrent ini-
tiation of consensus for the same information along
with a minimal increase in latency. The sensitivity of a
sensor decreases with an increase in the distance of the
event from the node. A node closer to the event should
have a higher probability of initiating consensus for the
event, as there is a higher probability that neighboring
nodes would have witnessed the event. Wireless sen-
sors are employed to detect movement, light, heat,
sound, or other phenomena. Wireless sensors can em-
ploy signal strength to determine the distance of a
source from the wireless sensor. For instance, in the
case of image sensors, the light collected by the sensor
aperture is inversely proportional to distance from the
source squared. Carlson [3] provides a method for
measuring the signal-to-noise ratio (SNR) and relating
it to pixel sensitivity for an image sensor. He employs
the following relation for collection of light by the sen-
sors: E fp ∝ 1/ D 2, where E fp is the light collected by
the optical system (focal plane illuminance) and D is
the distance from the light source to the sensor.
We have chosen the random delay to be modulo k
times the number of neighboring nodes, where k is a
constant that can be varied to obtain a tradeoff between
latency and energy consumption in the generation of
consensus. The random function R would thus be R =
(rand () /D0) mod (k × N i) where N i is the number of
neighboring nodes, D0 is the distance of the object or
event source from the node, and rand () is the random
number generated by the node.
In the case of thermal sensors and certain other sen-
sors, where the distance from the source cannot be de-
termined, the random function can be defined as
follows: R = rand () × |T-t i |mod (k × N i), where T is
the average intensity and t i is the intensity at the sensor
node. The intensity can be either signal strength or
temperature or light intensity. The initial value of T
can be chosen at the time of deployment and the value
is then changed at each node based on the values of t i.
The sensor node keeps a count c of the number of val-
ues of t i and computes the new value of T as follows:
T = (T×(c-1)+ t i) / c.
4.2. Maintenance of the quorum size
A wireless sensor network is an autonomous net-
work. The network should thus monitor itself by iden-
tifying and correcting faults in the system. In our
design each node is required to maintain only a small
set of constants (the number of nodes in the quorum
![Page 6: Efficient Data Aggregation Middleware for Wireless Sensor Networks](https://reader031.fdocuments.in/reader031/viewer/2022021223/577cdcf01a28ab9e78abcc45/html5/thumbnails/6.jpg)
7/30/2019 Efficient Data Aggregation Middleware for Wireless Sensor Networks
http://slidepdf.com/reader/full/efficient-data-aggregation-middleware-for-wireless-sensor-networks 6/10
and the total group size and the probability variable pi)
in order to execute the protocol correctly. In this sec-
tion, we describe how these values, although constant
during a single execution of the protocol, are estab-
lished and maintained by the system.
The initial value of pi, used to determine whether
the node may initiate a consensus protocol, is selected based on the redundancy in the network and the accu-
racy required in the network. With an increase in the
redundancy of a group or region, the effect of a node
going to sleep on the ability of the node to generate
consensus decreases. Suppose the group g has C g
nodes, then the initial probability pi of the node to gen-
erate consensus is pi ∝ K/C g, where K is a constant.
The value of pi is increased and decreased during the
execution of the protocol. The decision to increment
or decrement is purely a local decision, based on the
ability of the node to form a consensus. Further, the
value of pi does not affect the correctness of the proto-
col, as long as sufficiently many nodes remain awake.In order to appropriately establish the quorum size,
the nodes must have a sufficiently accurate estimate of
the number of nodes within the region of interest. The
quorum must be at least (k+1)/2 for k nodes within the
sensing region of the event. As nodes fail and wake
up, the number of nodes in the sensing region will
vary, as will the exact quorum value. Observe that this
quorum size is conservative with respect to node fail-
ures – as nodes fail, the quorum will remain suffi-
ciently high to prevent multiple decisions to be formed
around the same event. However, there will be a cost
in the protocol in that more nodes than necessary will
need to agree on an event in order to reach consensus.More precise estimates of quorum size can be main-
tained by augmenting the consensus protocol with a
background process that uses join and leave notifica-
tions, and periodic heartbeat messages can be used by
each process to maintain an estimate of the number of
nodes within the sensing area. By assuming that no
new nodes are added to the sensing region above the
initial value of k , it is possible to avoid an agreement
protocol to determine the number of nodes in the
group. Instead, by permitting the quorum value to oc-
casionally be somewhat greater than optimal, a local
decision can be made.
4.3. Resilience to node and communicationFailure
In the case of the crash failure of the leader node
between the PROPOSE and DECIDE messages (that is
while the leader is waiting upon
QUORUM _ FORMATION _ TIMEOUT), some other node that
has detected the event will receive an INITIAL _ WAIT
event and wake up to initiate the consensus procedure.
If a node that is not the leader fails, before detecting an
event, during the execution of the DETECT step or dur-
ing the INITIAL _ WAIT period, the ability to form a con-
sensus will not be compromised, as long as sufficient
nodes remain to reach a quorum. Failure of a node
while it is asleep (waiting for a SLEEP _ WAKEUP time-out) does not affect the protocol since the node is not
participating in the consensus protocol during this
time. Under the assumption that there are at least k
nodes that have the event in their sensing region, and
with the requirement that (k+1)/2 nodes must send ACK
messages agreeing to the consensus, the protocol is
tolerant to (k-1)/2 node faults. In the event of a large
number of node failures, less than (k-1)/2, the protocol
will be less efficient as described above, since the quo-
rum size will be larger than necessary. This will be
adjusted eventually by the background quorum size
maintenance task.
As specified, the protocol is not robust in the faceof arbitrary or malicious failures, where nodes may
change state arbitrarily and send arbitrary messages.
Lamport’s classic result [cite] shows that 3f+1 nodes
are necessary to tolerate f arbitrary failures. Byzantine
failures can be tolerated by raising the quorum value,
as described in [cite].
Due to collisions, environmental obstructions,
power loss, and other factors, it is likely that messages
will be lost. We consider the impact of each lost mes-
sage type. In the case of a lost PROPOSE message, it is
possible that consensus may not be formed by that
leader. In this case, the effect is the same as a failed
leader and the protocol will continue with a new at-
tempt to form consensus by a new leader. An addi-
tional consequence of a lost PROPOSE message is that
two attempts to form consensus may proceed simulta-
neously. However, the use of round numbers, together
with the observation that all other nodes will receive
the two PROPOSE messages in the same order, will pre-
vent two decisions from being reached by separate
leaders. Each participant will respond in only one in-
stance of the protocol, the first one for which they re-
ceive a PROPOSE message. And since the PROPOSE
messages will be totally ordered, due to the broadcast
properties of wireless sensor networks, if one PROPOSE
message reaches a quorum of correct participants, that
PROPOSE message will lead to consensus, in the ab-
sence of further faults.
A lost ACK message is similar, possibly causing one
round to fail, but not the protocol as a whole. NACK
messages merely speed up the decision that a consen-
sus is impossible, so the failure of a NACK message is
of no consequence.
![Page 7: Efficient Data Aggregation Middleware for Wireless Sensor Networks](https://reader031.fdocuments.in/reader031/viewer/2022021223/577cdcf01a28ab9e78abcc45/html5/thumbnails/7.jpg)
7/30/2019 Efficient Data Aggregation Middleware for Wireless Sensor Networks
http://slidepdf.com/reader/full/efficient-data-aggregation-middleware-for-wireless-sensor-networks 7/10
The loss of a DECIDE message may cause one or
more nodes to decide that the consensus round has
failed. If fewer than (k-1)/2 nodes miss the DECIDE
message, they may attempt additional consensus
rounds which will eventually fail. If (k+1)/2 or more
nodes miss the DECIDE message, the result is the same
as if the leader of the current round failed and consen-sus will be reached.
Although the protocol is generally robust in the face
of communication failures, some stability of communi-
cation is required in order for liveness characteristics
to hold. In particular, if communication is so poor that
(k+1)/2 nodes miss most messages for an extended pe-
riod of time, the protocol will not progress.
4.4 Imprecision in the detection function
The nodes within the sensing range of a particular
sensor may have different readings from the informa-
tion for which consensus is being generated. This can
be attributed to various reasons such as the malfunc-tion of some nodes or a change in the sensing region S
of a node over a period of time. The sensor readings
obtained by a node may not therefore conform to the
sensor data generated by other nodes in the same area.
Thus we observe that though the node may not be
faulty, it could have a negative impact on the decision
process when the sensing region of the node changes.
5. Experimental evaluation
The simulations were done using the Tiny OS simu-
lator created at University of California-Berkeley. The
first set of results was obtained to study the variation
of consensus initiation requests with an increase in thedensity of the network. The number of neighboring
nodes in the radio range of a sensor increases with the
density of the network. The random function is chosen
in order to enable the nodes near the event source to
have a higher probability of initiating consensus for an
event. The value of the product k×N i in the random
function (R ∝ 1/ D0 mod (k × N i)) is selected based on
the required tradeoff between latency and communica-
tion costs in the network. The following series of tests
were conducted by keeping the random delay within
twice the number of neighboring nodes. For instance
the random delay is in the range of 0 to 40 for 20
neighboring nodes.It can be observed from Figure 2 that the number of
nodes initiating consensus does not increase with the
density of the network. The protocol is thus scalable to
larger networks having higher node densities as the
energy consumption of the network does not increase
considerably with an increase in the density of the
network. The consensus-generated plane is nearly par-
allel to the consensus-initiated plane. This implies that
consensus is generated for all events except the special
case of three events occurring in a sensor network of
ten neighboring nodes.
Figure 2: Consensus initiation with different
node densitiesIn the case of three concurrent events for a wireless
sensor network with ten neighboring nodes within the
sensing range, the nodes were able to generate consen-
sus for only two events. This was due to the events be-
ing detected by five, four, and one node, respectively.
Consensus was therefore not generated for the third
event. In all other tests, consensus was achieved.
Concurrency is another major issue in distributed
systems and wireless sensor networks. The second set
of tests was done for generating consensus with multi-
ple events in the sensor neighborhood. A node forms a
group with other nodes having the same sensitivity or
similar interests within the given radio range.The following results were obtained for generating
consensus for multiple events in a sensor network. The
protocol generated consensus successfully for multiple
events as shown in Figure 2. It can also be observed
that consensus was generated for multiple events in the
sensor network without increasing the number of
nodes initiating consensus. It can thus be observed that
the protocol is scalable when generating consensus for
multiple events in a sensor network.
The observed message complexity of the protocol is
linear. A consensus generation process for k nodes re-
quires k+1 messages in the ideal case. The first mes-
sage is the consensus initiation request, which leads tok-1 responses and the last is the leader’s delivery of the
consensus result to the other nodes in the neighbor-
hood. We thus have an expected linear message com-
plexity in our protocol.
![Page 8: Efficient Data Aggregation Middleware for Wireless Sensor Networks](https://reader031.fdocuments.in/reader031/viewer/2022021223/577cdcf01a28ab9e78abcc45/html5/thumbnails/8.jpg)
7/30/2019 Efficient Data Aggregation Middleware for Wireless Sensor Networks
http://slidepdf.com/reader/full/efficient-data-aggregation-middleware-for-wireless-sensor-networks 8/10
Figure 3: Consensus initiation w ith an increase in the value of the random start delay
The communication overhead in case of higher re-
dundancy is thus encountered only from the reply mes-
sages that are received from additional nodes in the
neighborhood. Thus we observe that there is only a
marginal increase in the energy consumption of the
network for generation of consensus for single and
multiple events.
An increase in the value of the product k × N i leads
to an increase in the time a node would wait before ini-
tiating consensus for its information. This decreases
the number of nodes that concurrently try to initiate
consensus as observed in Figure 3. The number of messages for generation of consensus would therefore
also decrease leading to an improvement in the energy
consumption of the network.
Latency is, however, an important factor that should
be taken into consideration for generation of consensus
in a wireless sensor network. There is a trade off be-
tween the time sensitivity of the information and the
energy consumption of the network. For instance, con-
sensus should be generated quickly in case of enemy
intrusion or forest fires. There can, however, be higher
latency in detecting temperature variation within a par-
ticular area.
The following results show the time variation in
generating consensus for different values of k × N i for
a node having the same set of neighbors. A close ob-
servation of Figure 4 shows a marginal increase in the
latency of the network for an increase in the product of
k × N i. This leads to a significant improvement in the
energy required to generate consensus due to a de-
crease in the number of nodes initiating consensus in
the network, which in turn leads to a decrease in the
number of messages required for generation of consen-
sus.
We thus observe the tradeoff between latency and
energy consumption. These parameters can be adjusted
based on the requirements of the end user by varying
the value of k in the network. When an event is gener-
ated in a wireless sensor network, the nodes in the vi-
cinity of the event would start generating consensus for
the event after a random amount of time. There can be
three different scenarios for initiation of consensus.
The first case has only one event in the network
neighborhood while the second case involves multipleindependent events such that each sensor detects at
most one event. The third case involves multiple
events within the same sensitivity range as shown in
Figure 4.
Figure 4: Variation in latency with an increasein the value of random delay value
Appropriate selection of the random delay will en-
able nodes nearer to the event source to have a higher
![Page 9: Efficient Data Aggregation Middleware for Wireless Sensor Networks](https://reader031.fdocuments.in/reader031/viewer/2022021223/577cdcf01a28ab9e78abcc45/html5/thumbnails/9.jpg)
7/30/2019 Efficient Data Aggregation Middleware for Wireless Sensor Networks
http://slidepdf.com/reader/full/efficient-data-aggregation-middleware-for-wireless-sensor-networks 9/10
probability of initiating consensus compared to the
nodes distant from the source.
Another important feature of our protocol is fault
tolerance. We have performed several tests in order to
determine the fault tolerance of our protocol. Our pro-
tocol can accommodate up to (n – 1)/2 faults. Figure 5
shows the set of results for a network with omissionand timing failures. The value of k has been kept at
two for all the remaining tests.
Figure 5: Variation in consensus in itiation withfaults in the network
Figure 6: Variation in consensus in itiation withdifferent areas of interest
It can be observed in Figure 5 that the increase in
the number of nodes initiating consensus is small rela-
tive to the increase in the number of faults in the sys-
tem. For instance the number of nodes initiating
consensus for 10 neighbors increases by 0.77 for an
increase in the number faults from 0 to 4 nodes. The
number of additional messages for generating consen-
sus would thus be only 7.67. Nodes within the same radio range can have differ-
ent areas of interests. Various tests were done involv-
ing nodes having different areas of interests and the
same radio ranges. Figure 6 shows the variation with
an increase in the number of nodes having different
areas of interest for a given set of neighbors. It can be
observed that there is only a slight increase in the
number of nodes initiating consensus with an increase
in the number of nodes having different areas of inter-
est.
6. Conclusions and future work
We have described a fully distributed consensus protocol that is scalable, energy efficient, and fault tol-
erant. Our protocol works effectively for single as well
as multiple events in a sensor network and can gener-
ate consensus for concurrent events. The protocol also
ensures that consensus is generated for all events oc-
curring in the wireless sensor network that are ob-
served by enough sensors.
This work improves on other approaches by permit-
ting ad hoc group formation around the event of inter-
est and by guaranteeing that only one decision is made
for each detected event, enhancing the usefulness of
our middleware for constructing higher-level pro-
gramming abstractions.In future work, we plan to extend our protocol to
consider noise or other sources of imprecision that
could prevent a node from individually ascertaining
that it had observed the same event as another node.
Further, we will explore the background fault-
detection mechanism in order to permit quorum sizes
to be set less conservatively. We also plan to extend
our work to address a Byzantine fault model and multi-
hop networks.
6. References
[1] Arevalo, S. and Gehani N.H. 1989. “Replica Consensus
in Fault Tolerant Concurrent C”. Technical Report AT&TBell Laboratories, Murray Hill, New Jersey 07974.
[2] B. M. Blum, P. Nagaraddi, A. Wood, T. F. Abdelzaher,
S. Son, J. A. Stankovic. “An Entity Maintenance and Con-
nection Service for Sensor Networks”, The First Interna-
tional Conference on Mobile Systems, Applications, and
Services (MOBISYS ̀ 03), California, May 2003.
[3] Bradley S. Carlson, “Comparison of Modern CCD and
CMOS Image Sensor Technologies and Systems for Low
Resolution Imaging” IEEE Sensors Conference 2002.
[4] Thomas Clouqueur, Parameswaran Ramanathan, Kewal
K. Saluja , Kuang-Ching Wang. “Value-Fusion versus Deci-
sion-Fusion for Fault-tolerance in Collaborative Target De-
tection in Sensor Networks”, Fusion 2001.[5] Michael J. Fischer, Nancy Lynch, and Michael S. Pater-
son. “Impossibility of distributed consensus with one faulty
process.” Journal of the ACM, 32(2): 374-382, April 1985.
[6] M. Fischer. “The Consensus Problem in Unreliable Dis-
tributed Systems (A Brief Survey)” Technical report, De-
partment of Computer Science, Yale University, 2000.
![Page 10: Efficient Data Aggregation Middleware for Wireless Sensor Networks](https://reader031.fdocuments.in/reader031/viewer/2022021223/577cdcf01a28ab9e78abcc45/html5/thumbnails/10.jpg)
7/30/2019 Efficient Data Aggregation Middleware for Wireless Sensor Networks
http://slidepdf.com/reader/full/efficient-data-aggregation-middleware-for-wireless-sensor-networks 10/10
[7] David K. Gifford. “Weighted Voting for Replicated
Data.” In Proc. Seventh ACM Symposium on Operating Sys-
tems Principles, 1979, pages 150-162, 1979
[8] F. Guerra, S Arevalo, A Alvarez, and J. Mirando. “A Dis-
tributed Consensus Protocol with a Coordinator”. Decentral-
ized and Distributed Systems 1993: Palma de Mallorca,
Spain
[9] Indranil Gupta, Robbert van Renesse, and Kenneth P.
Birman. and “Scalable Fault-Tolerant Aggregation in Large
Process Groups”. Proc. Conf. on Dependable Systems and
Networks, 2001.
[10] Indranil Gupta and Kenneth Birman, “Holistic Opera-
tions in Large-Scale Sensor Network Systems: a Probabilistic
Peer-to-Peer Approach.” International Workshop on Future
Directions in Distributed Computing (FuDiCo). June 2002.
Pp. 1-4.
[11] Rivka Ladin, Barbara Lishov, L. Shrira and S. Ghe-
mawat. “Providing Availability Using Lazy Replication.”
ACM Transactions on Computer Systems 10:4 (Nov. 1992),
360-391.
[12] L. Lamport, R. Shostak, and M. Pease, "The Byzantine
generals problem," ACM Transactions on Programming
Languages and Systems, vol. 4, pp. 382--401, July 1982.
[13] L. Lamport. The part-time parliament. ACM Transac-
tions on Computer Systems, 16(2):133--169, May 1998.
[14] Dahlia Malkhi and Michael Reiter, “Byzantine quorum
Systems”, The Journal of Distributed Computing, 11(4):
203--213, 1998.