[ieee 2010 sixth international conference on wireless communication and sensor networks (wcsn) -...

Post on 15-Dec-2016

213 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Reconstruction of Aggregation Tree in spite ofFaulty Nodes in Wireless Sensor Networks

Punit Sharma and Partha Sarathi MandalDepartment of Mathematics

Indian Institute of Technology GuwahatiGuwahati - 781 039, India

E-mail: {s.punit, psm}@iitg.ernet.in

Abstract—Recent advances in wireless sensor networks (WSNs)have led to many new promissing applications. However datacommunication between nodes consumes a large portion of thetotal energy of WSNs. Consequently efficient data aggregationtechnique can help greatly to reduce power consumption. Dataaggregation has emerged as a basic approach in WSNs inorder to reduce the number of transmissions of sensor nodesover aggregation tree and hence minimizing the overall powerconsumption in the network. If a sensor node fails during dataaggregation then the aggregation tree is disconnected. Hence theWSNs rely on in-network aggregation for efficiency but a singlefaulty node can severely influence the outcome by contributingan arbitrary partial aggregate value.

In this paper we have presented a distributed algorithm thatreconstruct the aggregation tree from the initial aggregation treeexcluding the faulty sensor node. This is a synchronous model,completed in several rounds. Our proposed scheme can handlemultiple number of faulty nodes as well.

Key words: Reconstruction, Aggregation tree, MST, WSNs,Distributed protocol, Node failure.

I. INTRODUCTION

A wireless sensor network (WSN) consists of a large num-ber of spatially distributed autonomous resource-constrainedtiny sensor devices which are used to lead many new promis-ing applications. The applications for WSNs are varied, typ-ically involving some kind of monitoring, tracking, or con-trolling. Specific applications include: Habitat monitoring [1],Object tracking [2], Nuclear reactor control, Fire detection,Traffic monitoring, Geographic routing [3], etc. However datacommunication between nodes consumes a large portion of thetotal energy of WSNs. Consequently efficient data aggregationtechnique can help greatly to reduce power consumption. Dataaggregation has emerged as a basic approach in WSNs inorder to reduce the number of transmissions of sensor nodesover aggregation tree and hence minimizing the overall powerconsumption in the network.

Depending on the application, sensor nodes either reporteach and every measurement or they perform in-networkaggregation to a gateway or a sink. In in-network aggregation[4] there is an underlying spanning tree rooted at the sink.Where every non-leaf nodes combine their own measurementswith the measurements of their child-nodes and send thecombined data to their respective parents. A large fraction of

978-1-4244-9730-0/10/$26.00 c⃝2010 IEEE

WSN applications requires only a periodic collection of anaggregate value (e.g., count, sum, average, etc.). Aforemen-tioned in-network aggregation technique can reduce networksoverhead as follows: With in-network aggregation, rather thanrelaying individual measurements across multiple hops, eachnode transmits a single packet, summarizing the data from anentire area of the WSNs to the sink.

Typically, there are three types of sensor nodes in WSNs:leaf nodes, aggregators, and a querier (sink) [5]. The aggrega-tors collect data from a subset of the network, aggregate thedata using a suitable aggregation function and then transmitthe aggregated result to an upper aggregator or to the querierwho generates the query. The querier is entrusted with the taskof processing the received sensor data and derives meaningfulinformation reflecting the events in the target field. It canbe the base station or sometimes an external user who haspermission to interact with the network depending on thenetwork architecture. Data communications between sensornodes, aggregators and the queriers consume a large portionof the total energy consumption of the WSNs.

Most of the works [4]–[8] in literature focused on secureaggregation in WSNs. Secure aggregation means protectingdata from attackers, where attackers intend to change theaggregation value and mislead the sink (or base station)resulting incorrect aggregation. Chan et al. [6] and Haghaniet al. [8] considered faulty node as an attacker or adversarythat can compromise with sensor nodes by controlling theirfunctionality and inducing arbitrary deviations from the pro-tocols. But in our proposed algorithm, we have considerednode failure as a permanent failure.

A sensor node is called faulty, if it cannot be able to com-municate with any other sensor node in the WSNs. A sensornode may fail due to lack of battery power or some hardwarefailures. If a sensor node fails during data aggregation thenthe aggregation tree is disconnected. Hence the WSNs relyon in-network aggregation for efficiency but a single faultynode can severely influence the outcome by contributing anarbitrary partial aggregate value to the sink.

In a typical application, a WSN is scattered in a regionwhere it is meant to collect data through its sensor nodes. Weconsider WSNs as a weighted communication graph, 𝐺𝑐 =(𝑉𝑐, 𝐸𝑐) (say) where each sensor node is a vertex belongingto a set 𝑉𝑐, and the communication link between two sensor

nodes is defined as an edge belonging to a set 𝐸𝑐. Here edgeweight is the cartesian distance between two sensor nodes.One node can communicate with other nodes directly if theyare in its transmission range.

Using some distributed minimal spanning tree (MST) algo-rithm [9] it is possible to construct an initial aggregation tree(𝑇𝑎). If one node fails, we assume, that by some fault detectionalgorithm [6], other nodes which are directly connected withthe faulty node, can detect the fault and the aggregation tree isdecomposed into number of trees (disjoint-set of forest) withrespect to the aggregation tree.

Our objective in the paper is follows: Given a weightedcommunication graph 𝐺𝑐 and corresponding aggregation tree𝑇𝑎 with 𝑛 nodes, if one arbitrary node, 𝑣𝑓 (say) fails thenhow to reconstruct the aggregation tree with 𝑛− 1 nodes in adistributed way (excluding the faulty nodes), provided the re-duced communication graph, 𝐺

′𝑐 = (𝑉

′𝑐 , 𝐸

′𝑐) is still connected

after removal of the faulty node, 𝑣𝑓 where 𝑉′𝑐 = 𝑉𝑐 ∖ {𝑣𝑓}

and 𝐸′𝑐 = 𝐸𝑐 ∖ { all edges are connected with 𝑣𝑓}.

A. Related Work:

Chan et al. proposed a protocol [6] where they consideredcorrupted node as a malicious aggregator node. Accordingto their protocol, the answer given by aggregator is a goodapproximation of the true value even when the aggregator anda fraction of the sensor nodes are corrupted. In the paper [8]Haghani et al. considered adversary node as a misbehaviornode that can severely influence the outcome by contributingan arbitrary partial aggregate value. The scheme relies oncostly operation to localize and exclude node that manipulatesthe aggreagtion when a fault is detected. Gallager et al. [9]proposed a distributed algorithm (distributive implementationof Prim’s algorithm) constructing a MST of a connected graphin which the edge weights are unique. Their algorithm workson a message passing model. It uses a bottom-up approachand the overall message complexity of the MST algorithmis 𝑂(𝐸 + 𝑛lg 𝑛). In the paper [7] Gao and Zhu proposed aDual-Head Cluster Based Secure Aggregation Scheme.

B. Our results:

The main contribution of this paper is a distributed al-gorithm for reconstruction of aggregation tree in wirelesssensor networks when an arbitrary sensor node fails duringaggregation. To the best of our knowledge, this is the firstdistributed protocol for reconstruction of aggregation treewhich can handle multiple concurrent permanent node failures.Unlike Gallager et al. algorithm [9] the edge weights ofunderlying communication graph may not be unique. We haveproved that the reconstructed aggregation tree is again a MST.This is a synchronous model that completes in several rounds.In terms of rounds, the complexity of our algorithm are 𝑂(1)in the best case and 𝑂(lg 𝑛) in the worst case. The proposedalgorithm can also handle multiple concurrent node failures.

II. RECONSTRUCTION OF AGGREGATION TREE

We consider here a connected WSN consisting of 𝑛 sensornodes. Each sensor node has its unique id, where edge weight

is the cartesian distance between two nodes. We assume that ifone node fails the communication graph (𝐺

′𝑐) is still connected

and by some fault detection algorithm, neighbors of the faultynode can detect the fault. For simplicity we assume that ata time there is only one faulty node in the WSN. In thesection VII we will discuss about multiple node failure. Theproposed algorithm is synchronous; i.e., its perform in severalrounds. Due to failure of a node, the given aggregation tree(𝑇𝑎) is decompose in to disjoint set of forest (cluster, say) withrespect to 𝑇𝑎. According to the algorithm each cluster findsthe minimum outgoing edge (𝑚𝑜𝑒) and tries to merge withthe cluster on the other side of the edge. This is a distributedalgorithm based on message passing.

A. Notations

Following notations are used throughout the paper fordifferent type of messages. These messages are required duringexecution of the algorithm.

∙ 𝑓𝑖𝑛𝑑 𝑚𝑠𝑔 (Find message): Fault detective node (cluster𝑟𝑜𝑜𝑡, say) initiates the message within the cluster toinvoke the node(s) for finding 𝑚𝑜𝑒.

∙ 𝑟𝑒𝑝𝑜𝑟𝑡 𝑚𝑠𝑔 (Report message): Every leaf node in thecluster sends a 𝑟𝑒𝑝𝑜𝑟𝑡 𝑚𝑠𝑔 with 𝑚𝑜𝑒 and own id to itsparent after finding 𝑚𝑜𝑒 from it, and every intermediatenode sends 𝑟𝑒𝑝𝑜𝑟𝑡 𝑚𝑠𝑔 to its parent after getting infor-mation about the 𝑚𝑜𝑒 of its subtree including itself.

∙ 𝑡𝑒𝑠𝑡 𝑚𝑠𝑔 (Test message): A node issue a 𝑡𝑒𝑠𝑡 𝑚𝑠𝑔through the 𝑚𝑜𝑒 to know whether this edge is going tosome other cluster.

∙ 𝑎𝑐𝑐𝑒𝑝𝑡 𝑚𝑠𝑔 (Accept message): A node sends a𝑎𝑐𝑐𝑒𝑝𝑡 𝑚𝑠𝑔 after receiving 𝑡𝑒𝑠𝑡 𝑚𝑠𝑔 if the 𝑡𝑒𝑠𝑡 𝑚𝑠𝑔sender is belonging to different cluster.

∙ 𝑟𝑒𝑗𝑒𝑐𝑡 𝑚𝑠𝑔 (Reject message): A node sends a𝑟𝑒𝑗𝑒𝑐𝑡 𝑚𝑠𝑔 after receiving 𝑡𝑒𝑠𝑡 𝑚𝑠𝑔 if the 𝑡𝑒𝑠𝑡 𝑚𝑠𝑔message sender is belonging to the same cluster.

∙ 𝑖𝑛𝑓𝑜𝑟𝑚 𝑚𝑠𝑔 (Inform message): cluster 𝑟𝑜𝑜𝑡 sends thismessage to the node in which the 𝑚𝑜𝑒 is attached.

∙ 𝑚𝑒𝑟𝑔𝑒 𝑟𝑒𝑞 (Merge Request): Merging request from onecluster to some other cluster, containing cluster id.

∙ 𝑖𝑛𝑡𝑒𝑟𝑛𝑎𝑙 𝑚𝑠𝑔 (Internal message): This message is forpass the information in the same cluster.

∙ 𝑚𝑒𝑟𝑔𝑒 𝑚𝑠𝑔 (Merge message): To ensure merging be-tween two clusters.

∙ 𝑐𝑜𝑚𝑚𝑖𝑡 𝑚𝑠𝑔 (Commit message): For commitment.∙ 𝑖𝑔𝑛𝑜𝑟𝑒 𝑚𝑠𝑔 (Ignore message): Ignore requests.∙ 𝑚𝑜𝑑𝑖𝑓𝑦 𝑚𝑠𝑔 (Modify message): This message is gener-

ated by the end points of the 𝑚𝑜𝑒 after merging and itpasses in to the new cluster to find the new 𝑟𝑜𝑜𝑡.

III. DESCRIPTION OF THE ALGORITHM

Suppose a sensor node, 𝑣𝑓 with degree 𝑘 is faulty inthe initial aggregation tree 𝑇𝑎. Removal of this faulty nodedecomposes the aggregation tree into 𝑘 number of trees (orclusters), 𝑇1, 𝑇2, ⋅ ⋅ ⋅ , 𝑇𝑘 (say). Then let us assume by somefault detection algorithm the node, 𝑣𝑑𝑓𝑖 (𝑟𝑜𝑜𝑡 of the cluster,say) directly attached with the faulty node in each cluster, 𝑇𝑖

can find the information about the fault and starts followingreconstruction process.

A. Subround-I: Minimum outgoing edge (𝑚𝑜𝑒) finding

For each cluster 𝑇𝑖, 𝑣𝑑𝑓𝑖 named as 𝑟𝑜𝑜𝑡 node initiates and

sends 𝑓𝑖𝑛𝑑 𝑚𝑠𝑔 to its descenders within the cluster throughthe tree edges with the id of the 𝑟𝑜𝑜𝑡, named as 𝑇 𝑖𝑑

𝑖 , which issame as 𝑣𝑑𝑓𝑖 . After receiving 𝑓𝑖𝑛𝑑 𝑚𝑠𝑔 every other nodesassign 𝑇 𝑖𝑑

𝑖 to its local variable (𝑐𝑙𝑢𝑠𝑡𝑒𝑟 𝑖𝑑) and forwardsthe message to neighbors until it reach to leaf nodes. Afterreceiving 𝑓𝑖𝑛𝑑 𝑚𝑠𝑔 leaf node finds the 𝑚𝑜𝑒 and returnsa 𝑟𝑒𝑝𝑜𝑟𝑡 𝑚𝑠𝑔 to the sender of 𝑓𝑖𝑛𝑑 𝑚𝑠𝑔. After receiving𝑟𝑒𝑝𝑜𝑟𝑡 𝑚𝑠𝑔 all intermediate nodes modify 𝑚𝑜𝑒 if possiblewith respect to its own 𝑚𝑜𝑒 and forward the 𝑟𝑒𝑝𝑜𝑟𝑡 𝑚𝑠𝑔 tothe 𝑟𝑜𝑜𝑡 node. For finding 𝑚𝑜𝑒 a node passes 𝑡𝑒𝑠𝑡 𝑚𝑠𝑔 with𝑐𝑙𝑢𝑠𝑡𝑒𝑟 𝑖𝑑 through the possible 𝑚𝑜𝑒 to test whether the otherend of this 𝑚𝑜𝑒 is in the different cluster. If the other end of𝑚𝑜𝑒 is in different cluster than the node returns a 𝑎𝑐𝑐𝑒𝑝𝑡 𝑚𝑠𝑔with its own id otherwise the node returns a 𝑟𝑒𝑗𝑒𝑐𝑡 𝑚𝑠𝑔.

After receiving 𝑟𝑒𝑗𝑒𝑐𝑡 𝑚𝑠𝑔 this node again tries to findthe next possible 𝑚𝑜𝑒 among its neighbours until it receive a𝑎𝑐𝑐𝑒𝑝𝑡 𝑚𝑠𝑔 or there is no possible 𝑚𝑜𝑒 edge for node. In thatcase the node marks all such rejected edges not to use furtherfor 𝑚𝑜𝑒 selection. There may be a possibility of multiple 𝑚𝑜𝑒at any individual node. In this case the node selects 𝑚𝑜𝑒 withminimum id node among the multiple 𝑎𝑐𝑐𝑒𝑝𝑡 𝑚𝑠𝑔.

After receiving 𝑟𝑒𝑝𝑜𝑟𝑡 𝑚𝑠𝑔 the 𝑟𝑜𝑜𝑡 node finally selectsa 𝑚𝑜𝑒 for the cluster and sends 𝑖𝑛𝑓𝑜𝑟𝑚 𝑚𝑠𝑔 to the corre-sponding node 𝑣𝑚𝑜𝑒

𝑖 (say) attached with the 𝑚𝑜𝑒.

B. Subround-II: Merge message passing

The node, 𝑣𝑚𝑜𝑒𝑖 of each cluster, 𝑇𝑖 sends a 𝑚𝑒𝑟𝑔𝑒 𝑟𝑒𝑞

message along their respective 𝑚𝑜𝑒 to some node of 𝑇𝑗 , say.The decision after receiving 𝑚𝑒𝑟𝑔𝑒 𝑟𝑒𝑞 message as following:There are two cases:

1) If 𝑟𝑜𝑜𝑡, 𝑣𝑑𝑓𝑗 of 𝑇𝑗 receives 𝑚𝑒𝑟𝑔𝑒 𝑟𝑒𝑞 and if the𝑐𝑙𝑢𝑠𝑡𝑒𝑟 𝑖𝑑 of 𝑇𝑗 is less than the 𝑐𝑙𝑢𝑠𝑡𝑒𝑟 𝑖𝑑 of 𝑇𝑖 then𝑣𝑑𝑓𝑗 returns an 𝑖𝑔𝑛𝑜𝑟𝑒 𝑚𝑠𝑔 to 𝑣𝑚𝑜𝑒

𝑖 , otherwise 𝑣𝑑𝑓𝑗 keepthe information in its database.

2) If some other node (𝑣𝑗) excluding 𝑣𝑑𝑓𝑗 of 𝑇𝑗 receivesa 𝑚𝑒𝑟𝑔𝑒 𝑟𝑒𝑞 and if 𝑐𝑙𝑢𝑠𝑡𝑒𝑟 𝑖𝑑 of 𝑇𝑗 is less thanthe 𝑐𝑙𝑢𝑠𝑡𝑒𝑟 𝑖𝑑 of 𝑇𝑖 then the node 𝑣𝑗 returns an𝑖𝑔𝑛𝑜𝑟𝑒 𝑚𝑠𝑔 to 𝑣𝑚𝑜𝑒

𝑖 , otherwise 𝑣𝑗 forwards the mes-sage (𝑖𝑛𝑡𝑒𝑟𝑛𝑎𝑙 𝑚𝑠𝑔) to the 𝑟𝑜𝑜𝑡 𝑣𝑑𝑓𝑗 .

C. Subround-III: Decision after receiving a merge messages

At the end of the previous Subround-II if 𝑟𝑜𝑜𝑡 of 𝑇𝑗 forsome 𝑗 receives one or more than one 𝑚𝑒𝑟𝑔𝑒 𝑟𝑒𝑞 messagesthen it finds the minimum 𝑐𝑙𝑢𝑠𝑡𝑒𝑟 𝑖𝑑 over all messages andsends a 𝑚𝑒𝑟𝑔𝑒 𝑚𝑠𝑔 to the minimum id cluster and sends𝑖𝑔𝑛𝑜𝑟𝑒 𝑚𝑠𝑔 to all others directly or via 𝑣𝑗 node (𝑣𝑗 isconsidered in the case-2 of Subround-II). Now, if 𝑟𝑜𝑜𝑡 of 𝑇𝑗

for some 𝑗 does not receive any 𝑚𝑒𝑟𝑔𝑒 𝑟𝑒𝑞 or receive butpass a 𝑖𝑔𝑛𝑜𝑟𝑒 𝑚𝑠𝑔 to sender then the 𝑟𝑜𝑜𝑡 of 𝑇𝑗 sends a𝑚𝑒𝑟𝑔𝑒 𝑚𝑠𝑔 through the 𝑚𝑜𝑒 (chosen in Subround-II) from𝑣𝑚𝑜𝑒𝑗 node.

D. Subround-IV: Merging of clusters

In this subround each cluster 𝑇𝑖, for 𝑖 = 1, 2, ⋅ ⋅ ⋅ , 𝑘some node 𝑣𝑖 (including 𝑟𝑜𝑜𝑡) receives 𝑚𝑒𝑟𝑔𝑒 𝑚𝑠𝑔 and/or𝑖𝑔𝑛𝑜𝑟𝑒 𝑚𝑠𝑔 from 𝑣𝑗 (including 𝑟𝑜𝑜𝑡) of some other cluster𝑇𝑗 . If the message is 𝑖𝑔𝑛𝑜𝑟𝑒 𝑚𝑠𝑔 then drop the message.Otherwise merge these two clusters in the following ways:

1) If 𝑣𝑖 sends a 𝑚𝑒𝑟𝑔𝑒 𝑚𝑠𝑔 to 𝑣𝑗 and if 𝑇 𝑖𝑑𝑖 < 𝑇 𝑖𝑑

𝑗 then𝑇𝑖 sends a 𝑐𝑜𝑚𝑚𝑖𝑡 𝑚𝑠𝑔 to 𝑇𝑗 and 𝑇𝑗 merge with 𝑇𝑖

by including the edge in the modified aggregation tree.After that the vertices attached with the edge initiate𝑚𝑜𝑑𝑖𝑓𝑦 𝑚𝑠𝑔 over the new cluster 𝑇

′𝑖 (, say) with the

information of 𝑣𝑑𝑓𝑖 for the modification of 𝑟𝑜𝑜𝑡. If 𝑣𝑖sends a 𝑚𝑒𝑟𝑔𝑒 𝑚𝑠𝑔 to 𝑣𝑗 and if 𝑇 𝑖𝑑

𝑖 > 𝑇 𝑖𝑑𝑗 then

𝑚𝑒𝑟𝑔𝑒 𝑚𝑠𝑔 is drop without merging.2) If 𝑣𝑖 does not send a 𝑚𝑒𝑟𝑔𝑒 𝑚𝑠𝑔 to 𝑇𝑗 then 𝑣𝑖 sends

a 𝑐𝑜𝑚𝑚𝑖𝑡 𝑚𝑠𝑔 and a 𝑚𝑜𝑑𝑖𝑓𝑦 𝑚𝑠𝑔 (as a responds) tocluster 𝑇𝑗 after receiving 𝑚𝑜𝑑𝑖𝑓𝑦 𝑚𝑠𝑔 from its owncluster. Then 𝑇𝑗 merge with 𝑇𝑖 by including the edge inthe modified aggregation tree and 𝑇𝑗 expand.

IV. THE ALGORITHM

𝐺𝑐 = (𝑉𝑐, 𝐸𝑐)← Communication graph𝑇𝑎 ← Initial aggregation tree𝑘 ←Degree of the faulty node, 𝑣𝑓Subround-I: (Finding 𝑚𝑜𝑒)for each cluster 𝑇𝑖 ; 𝑖 = 1 to 𝑘 do𝑟𝑜𝑜𝑡, 𝑣𝑑𝑓𝑖 initiates and sends < 𝑓𝑖𝑛𝑑 𝑚𝑠𝑔, 𝑇 𝑖𝑑

𝑖 >for each node 𝑣𝑖 do

𝑐𝑙𝑢𝑠𝑡𝑒𝑟 𝑖𝑑𝑖 ← 𝑇 𝑖𝑑𝑖

end forfor each node 𝑣𝑖 (starts from leaf nodes) do

passes 𝑡𝑒𝑠𝑡 𝑚𝑠𝑔 through its 𝑚𝑜𝑒 ∈ 𝐸′𝑐 of 𝐺

′𝑐 to some

other node 𝑣𝑖′if 𝑇 𝑖𝑑

𝑖 ∕= 𝑇 𝑖𝑑𝑖′ then

𝑣𝑖′ returns an 𝑎𝑐𝑐𝑒𝑝𝑡 𝑚𝑠𝑔 to 𝑣𝑖𝑣𝑖 passes a 𝑟𝑒𝑝𝑟𝑜𝑡 𝑚𝑠𝑔 to the 𝑓𝑖𝑛𝑑 𝑚𝑠𝑔 sender

else𝑣𝑖′ returns 𝑟𝑒𝑗𝑒𝑐𝑡 𝑚𝑠𝑔 to 𝑣𝑖 and marks this rejectededge in 𝐸

′𝑐 and 𝑣𝑖 looks for the next possible 𝑚𝑜𝑒

end ifend forfor each node 𝑣𝑖 (intermediate/𝑟𝑜𝑜𝑡) do

After receiving 𝑟𝑒𝑝𝑜𝑟𝑡 𝑚𝑠𝑔 𝑣𝑖 modifies 𝑚𝑜𝑒 ifrequired wrt its own 𝑚𝑜𝑒 as above & forwards𝑟𝑒𝑝𝑜𝑟𝑡 𝑚𝑠𝑔 to its ancestor until it reaches to the 𝑟𝑜𝑜𝑡When 𝑟𝑜𝑜𝑡 receives the 𝑣𝑚𝑜𝑒

𝑖 then it passes the𝑖𝑛𝑓𝑜𝑟𝑚 𝑚𝑠𝑔 to the 𝑣𝑚𝑜𝑒

𝑖 if 𝑚𝑜𝑒 is not attached withthe 𝑟𝑜𝑜𝑡

end forend forif there is no 𝑚𝑜𝑒 then

return Tree is reconstructed & the protocol is terminatedelse

moves for the Subround-IIend if

Subround-II: (Merge message passing)for each cluster 𝑇𝑖 ; 𝑖 = 1 to 𝑘 do𝑣𝑚𝑜𝑒𝑖 sends a 𝑚𝑒𝑟𝑔𝑒 𝑟𝑒𝑞 from cluster 𝑇𝑖 to some 𝑇𝑗

end forif 𝑣𝑑𝑓𝑗 of 𝑇𝑗 receives this 𝑚𝑒𝑟𝑔𝑒 𝑟𝑒𝑞 message then

if 𝐶𝑖𝑑𝑗 < 𝐶𝑖𝑑

𝑖 thenpasses an 𝑖𝑔𝑛𝑜𝑟𝑒 𝑚𝑠𝑔 to 𝑣𝑚𝑜𝑒

𝑖

elsekeeps the message

end ifelse

if some other node 𝑣𝑗 of 𝑇𝑗 receives this 𝑚𝑒𝑟𝑔𝑒 𝑟𝑒𝑞message then

if 𝐶𝑖𝑑𝑗 < 𝐶𝑖𝑑

𝑖 thenpasses an 𝑖𝑔𝑛𝑜𝑟𝑒 𝑚𝑠𝑔 to 𝑣𝑚𝑜𝑒

𝑖

else𝑣𝑗 receives this message and passes it to 𝑣𝑑𝑓𝑗 of 𝑇𝑗

through an 𝑖𝑛𝑡𝑒𝑟𝑛𝑎𝑙 𝑚𝑠𝑔end if

end ifend if

Subround-III: (Decision after receiving a merge messages)for each cluster 𝑇𝑖 ; 𝑖 = 1 to 𝑘 do

if 𝑣𝑑𝑓𝑖 receives 𝑚𝑒𝑟𝑔𝑒 𝑟𝑒𝑞 from some other clusters thensends 𝑚𝑒𝑟𝑔𝑒 𝑚𝑠𝑔 to the minimum id cluster amongthem and 𝑖𝑔𝑛𝑜𝑟𝑒 𝑚𝑠𝑔 to others

elsesends 𝑚𝑒𝑟𝑔𝑒 𝑚𝑠𝑔 from 𝑣𝑚𝑜𝑒

𝑖 through 𝑚𝑜𝑒end if

end for

Subround-IV: (Merging of clusters)𝑣𝑖 of 𝑇𝑖 receives either 𝑚𝑒𝑟𝑔𝑒 𝑚𝑠𝑔 or/and 𝑖𝑔𝑛𝑜𝑟𝑒 𝑚𝑠𝑔from 𝑇𝑗 after the end of Subround-IIIif message is 𝑖𝑔𝑛𝑜𝑟𝑒 𝑚𝑠𝑔 then

drops the message without mergingelse

if 𝑇𝑖 also sends a 𝑚𝑒𝑟𝑔𝑒 𝑚𝑠𝑔 to 𝑇𝑗 thenif 𝑇 𝑖𝑑

𝑖 < 𝑇 𝑖𝑑𝑗 then

𝑇𝑖 passes a 𝑐𝑜𝑚𝑚𝑖𝑡 𝑚𝑠𝑔 to 𝑇𝑗

𝑇𝑗 merges with 𝑇𝑖 in some new cluster 𝑇′𝑖

the nodes attached with merged edge initiates andsends 𝑚𝑜𝑑𝑖𝑓𝑦 𝑚𝑠𝑔 within 𝑇

′𝑖 .

𝑐𝑙𝑢𝑠𝑡𝑒𝑟 𝑖𝑑 of 𝑣𝑖′ ∈ 𝑇′𝑖 resets the value by 𝑣𝑑𝑓𝑖

elsedrops this received 𝑚𝑒𝑟𝑔𝑒 𝑚𝑠𝑔

end ifelse𝑣𝑖 sends a 𝑐𝑜𝑚𝑚𝑖𝑡 𝑚𝑠𝑔 and forwards 𝑚𝑜𝑑𝑖𝑓𝑦 𝑚𝑠𝑔(as a responds) to cluster 𝑇𝑗 after receiving𝑚𝑜𝑑𝑖𝑓𝑦 𝑚𝑠𝑔 from its own cluster and then 𝑇𝑗 mergeswith 𝑇𝑖

end ifend ifRe-execute the protocol from Subround-I with modifiedclusters until termination.

V. COMPLEXITY ANALYSIS

Let 𝑘 be the number of clusters after a node failure. We aremeasuring the complexity of the proposed algorithm in termsof rounds of execution and total number of message exchange.First we concentrate over possible best and worst rounds ofexecution.

∙ Case-1 (Best Case) If 𝑣𝑚𝑜𝑒𝑖 sends 𝑚𝑒𝑟𝑔𝑒 𝑟𝑒𝑞 to the min-

imum id cluster 𝑇𝑗 (,say) for all 𝑖 ∈ {1, 2, ⋅ ⋅ ⋅ , 𝑘} ∖ {𝑗},then the tree would be reconstructed in one round.

∙ Case-2 (Worst Case) If every distinct pair of clus-ters exchange 𝑚𝑒𝑟𝑔𝑒 𝑟𝑒𝑞 in Subround-II and merge inSubround-IV then in one round, number of cluster re-duces by half. If this kind of merging process is continue,then after 𝑂(lg 𝑘) rounds the tree would be reconstructed.

Now we determine an upper bound for the number of messagesfor a cluster 𝑇𝑖.

Let the number of nodes in this cluster is 𝑛𝑖. Recall thetypes of messages used by the algorithm :𝑓𝑖𝑛𝑑 𝑚𝑠𝑔: 𝑛𝑖 − 1 𝑓𝑖𝑛𝑑 𝑚𝑠𝑔 messages.𝑡𝑒𝑠𝑡 𝑚𝑠𝑔: (successful test and failed test.)𝑎𝑐𝑐𝑒𝑝𝑡 𝑚𝑠𝑔: Acceptance requires two messages, success-ful test and accept. So the messages are 2𝑛𝑖. Note that𝑖𝑛𝑓𝑜𝑟𝑚 𝑚𝑠𝑔 also included in this count.𝑟𝑒𝑗𝑒𝑐𝑡 𝑚𝑠𝑔: Note that an edge can be reject at most oncethroughout the execution of the algorithm. Rejection requirestwo messages: failed test and rejection. So, we have 2𝐸messages, where 𝐸 = ∣𝐸𝑐∣.𝑟𝑒𝑝𝑜𝑟𝑡 𝑚𝑠𝑔: 𝑛𝑖 − 1 𝑟𝑒𝑝𝑜𝑟𝑡 𝑚𝑠𝑔.𝑚𝑒𝑟𝑔𝑒 𝑟𝑒𝑞: 1 (one) request for merging.𝑖𝑔𝑛𝑜𝑟𝑒 𝑚𝑠𝑔: at most 𝑘 − 1 𝑖𝑔𝑛𝑜𝑟𝑒 𝑚𝑠𝑔 throughout theexecution of the algorithm.𝑖𝑛𝑡𝑒𝑟𝑛𝑎𝑙 𝑚𝑠𝑔: at most 𝑛𝑖 − 1 message.𝑚𝑒𝑟𝑔𝑒 𝑚𝑠𝑔: one message.𝑐𝑜𝑚𝑚𝑖𝑡 𝑚𝑠𝑔: one message for final commitment𝑚𝑜𝑑𝑖𝑓𝑦 𝑚𝑠𝑔: 𝑛𝑖 − 1 messages for modification.

The total number of message required for a cluster is 6𝑛𝑖.Total number of message for all 𝑘 clusters is

∑𝑘𝑖=1(6𝑛𝑖) =

6(𝑛− 1) where 𝑛− 1 =∑𝑘

𝑖=1 𝑛𝑖

Therefore the total number of message for merging of all𝑘 clusters is 𝑂(𝑛lg 𝑘 + 𝐸). Here 𝑘 may be 𝑛 − 1, thereforethe total counting brings us to 𝑂(𝑛lg 𝑛+ 𝐸).

VI. CORRECTNESS

Note that in a single round of proposed algorithm, everycluster sends a unique 𝑚𝑒𝑟𝑔𝑒 𝑚𝑠𝑔 through 𝑚𝑜𝑒. In themerging of two or more than two clusters simultaneously, thenthere are exactly two clusters which can send a 𝑚𝑒𝑟𝑔𝑒 𝑚𝑠𝑔to each other through the same 𝑚𝑜𝑒.

Theorem 1: There is no cycle after merging two or moreclusters.

Proof: Let 𝑇𝑎 be the initial aggregation tree with 𝑛 nodesand 𝑣𝑓 be the faulty node. Proof by induction on degree of 𝑣𝑓node in 𝑇𝑎.Basis: Let deg(𝑣𝑓 ) = 1. Then after removing 𝑣𝑓 from 𝑇𝑎, there

is only one cluster with 𝑛 − 1 nodes. Clearly 𝑇′𝑎 with 𝑛 − 1

nodes is again a tree.Let deg(𝑣𝑓 ) = 2 and 𝑇𝑖, 𝑇𝑗 be the clusters. Let us supposecycle occurs in the merging of 𝑇𝑖 and 𝑇𝑗 . It is possible ifboth 𝑇𝑖 and 𝑇𝑗 send a 𝑚𝑒𝑟𝑔𝑒 𝑚𝑠𝑔 to each other throughdifferent multiple 𝑚𝑜𝑒. But this contradicts Subround-III ofthe proposed algorithm. Since according to proposed algorithmboth 𝑇𝑖 and 𝑇𝑗 send a 𝑚𝑒𝑟𝑔𝑒 𝑚𝑠𝑔 to each other through same𝑚𝑜𝑒. Hence there is no cycle in the merging of 𝑇𝑖 and 𝑇𝑗 .Inductive hypothesis: Let no cycle occurs in the merging of 𝑘or less clusters, i.e., deg(𝑣𝑓 ) ≤ 𝑘.Inductive step: Now, let deg(𝑣𝑓 ) = 𝑘 + 1 and 𝑇𝑖, for 𝑖 =1, 2, ⋅ ⋅ ⋅ , 𝑘+1 be the clusters. Let us suppose cycle occurs inthe merging of these 𝑘 + 1 clusters. It is possible if at leastthree clusters 𝑇1, 𝑇2, 𝑇3 (, say) send the 𝑚𝑒𝑟𝑔𝑒 𝑚𝑠𝑔 to eachother as 𝑇1 to 𝑇2, 𝑇2 to 𝑇3, 𝑇3 to 𝑇1 in a round. But thiscontradicts our algorithm that there are exactly two clusterswhich send a 𝑚𝑒𝑟𝑔𝑒 𝑚𝑠𝑔 to each other through the same𝑚𝑜𝑒 in the merging of more than two clusters. Therefore cyclecannot occur in a round and number of cluster reduces. Now,by inductive hypothesis, cycle will not occur in the mergingof 𝑘 + 1 clusters. Hence the theorem is true for any numberof clusters.

Theorem 2: Resultant reconstructed aggregation tree is aMST.

Proof: Let 𝑇𝑎 be the initial aggregation tree and given thatis a MST with 𝑛 nodes and 𝑣𝑓 be the faulty node with degree𝑘. Let 𝑇

′𝑎 be the aggregation tree which is reconstructed using

our proposed algorithm with 𝑛 − 1 nodes after removing thefaulty node 𝑣𝑓 . Since 𝑇𝑎 is a MST, therefore removal of 𝑣𝑓 di-vides it in to 𝑘 sub trees where each of them are individually aMST. Now suppose 𝑇

′𝑎 is not a MST, it means there are at least

two clusters which is not merged with a minimum weightededge in the 𝑇

′𝑎. But it is a contradiction of our algorithm that

allows merging between different clusters through a minimalweighted edge. Hence the resultant reconstructed aggregationtree is again a MST.

VII. MULTIPLE SENSOR NODES FAILURE

If 𝑚 number of nodes fail simultaneously and if𝑑1, 𝑑2, ⋅ ⋅ ⋅ , 𝑑𝑚 are the degrees of respective faulty nodes thenat most 𝑑1+𝑑2+ ⋅ ⋅ ⋅+𝑑𝑚 number of disjoint forest may form.Then same proposed algorithm can merge all disjoint forestand reconstruct the aggregation tree.

VIII. CONCLUSION

In this paper, we have proposed a distributed algorithm forreconstruction of aggregation tree in wireless sensor networkswhen an arbitrary sensor node fails during aggregation. Ourmodel is synchronous, performing in rounds. In terms ofrounds the time complexity of our algorithm is 𝑂(1) in thebest case, 𝑂(lg 𝑛) in the worst case. Our proposed algorithmcan also handel multiple concurrent sensor nodes failure. Butthe proposed algorithm cannot handel node failure duringthe reconstruction phase. In our future works we will try to

incorporate node failure during the reconstruction phase aswell.

REFERENCES

[1] R. Szewczyk, A. Mainwaring, J. Polastre, J. Anderson, , and D. Culler,“An analysis of a large scale habitat monitoring application,” in Sen-Sys’04: Proc. Int. Conf. Embedded Networked Sensor Systems. NY,USA: ACM Press, 2004, pp. 214–226.

[2] T. He, S. Krishnamurthy, J. A. Stankovic, T. Abdelzaher, L. Luo,R. Stoleru, T. Yan, L. Gu, J. Hui, and B. Krogh, “An energy-efficientsurveillance system using wireless sensor networks,” in MobiSys’04:Proc. of the 2nd Int. Conf. on Mobile systems, applications, and services,New York, USA, 2004, pp. 270–283.

[3] B. Karp and H. T. Kung, “GPSR: greedy perimeter stateless routing forwireless networks,” in MobiCom’00: Proc. of the 6th Annual Int. Conf.on Mobile Computing and Networking. New York, USA: ACM Press,2000, pp. 243–254.

[4] F. Y.-S. Lin, H.-H. Yen, and S.-P. Lin, “A novel energy-efficient macaware data aggregation routing in wireless sensor networks,” Sensors,vol. 9, no. 3, pp. 1518–1533, 2009.

[5] H. Alzaid, E. Foo, and J. G. Nieto, “Secure data aggregation in wirelesssensor network: a survey,” in AISC’08: Proceedings of the sixth Aus-tralasian conference on Information security. Darlinghurst, Australia,Australia: Australian Computer Society, Inc., 2008, pp. 93–105.

[6] H. Chan, A. Perrig, B. Przydatek, and D. X. Song, “SIA: Secure infor-mation aggregation in sensor networks,” Journal of Computer Security,vol. 15, no. 1, pp. 69–102, 2007.

[7] F. Gao and W. T. Zhu, “A dual-head cluster based secure aggregationscheme for sensor networks,” Network and Parallel Computing Work-shops, IFIP International Conference on, vol. 0, pp. 103–110, 2008.

[8] P. Haghani, P. Papadimitratos, M. Poturalski, K. Aberer, and J.-P.Hubaux, “Efficient and robust secure aggregation for sensor networks,” inNPSEC’07: Proceedings of the 3rd IEEE Workshop on Secure NetworkProtocols. Washington, USA: IEEE Computer Society, 2007, pp. 1–6.

[9] R. G. Gallager, P. A. Humblet, and P. M. Spira, “A distributed algorithmfor minimum-weight spanning trees,” ACM Trans. Program. Lang. Syst.,vol. 5, no. 1, pp. 66–77, 1983.

top related