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

5
Reconstruction of Aggregation Tree in spite of Faulty Nodes in Wireless Sensor Networks Punit Sharma and Partha Sarathi Mandal Department of Mathematics Indian Institute of Technology Guwahati Guwahati - 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 data communication between nodes consumes a large portion of the total energy of WSNs. Consequently efficient data aggregation technique can help greatly to reduce power consumption. Data aggregation has emerged as a basic approach in WSNs in order to reduce the number of transmissions of sensor nodes over aggregation tree and hence minimizing the overall power consumption in the network. If a sensor node fails during data aggregation then the aggregation tree is disconnected. Hence the WSNs rely on in-network aggregation for efficiency but a single faulty node can severely influence the outcome by contributing an arbitrary partial aggregate value. In this paper we have presented a distributed algorithm that reconstruct the aggregation tree from the initial aggregation tree excluding the faulty sensor node. This is a synchronous model, completed in several rounds. Our proposed scheme can handle multiple number of faulty nodes as well. Key words: Reconstruction, Aggregation tree, MST, WSNs, Distributed protocol, Node failure. I. I NTRODUCTION A wireless sensor network (WSN) consists of a large num- ber of spatially distributed autonomous resource-constrained tiny 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 data communication between nodes consumes a large portion of the total energy of WSNs. Consequently efficient data aggregation technique can help greatly to reduce power consumption. Data aggregation has emerged as a basic approach in WSNs in order to reduce the number of transmissions of sensor nodes over aggregation tree and hence minimizing the overall power consumption in the network. Depending on the application, sensor nodes either report each and every measurement or they perform in-network aggregation 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 measurements with the measurements of their child-nodes and send the combined 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 an aggregate value (e.g., count, sum, average, etc.). Aforemen- tioned in-network aggregation technique can reduce networks overhead as follows: With in-network aggregation, rather than relaying individual measurements across multiple hops, each node transmits a single packet, summarizing the data from an entire 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 the data using a suitable aggregation function and then transmit the aggregated result to an upper aggregator or to the querier who generates the query. The querier is entrusted with the task of processing the received sensor data and derives meaningful information reflecting the events in the target field. It can be the base station or sometimes an external user who has permission to interact with the network depending on the network architecture. Data communications between sensor nodes, aggregators and the queriers consume a large portion of the total energy consumption of the WSNs. Most of the works [4]–[8] in literature focused on secure aggregation in WSNs. Secure aggregation means protecting data from attackers, where attackers intend to change the aggregation value and mislead the sink (or base station) resulting incorrect aggregation. Chan et al. [6] and Haghani et al. [8] considered faulty node as an attacker or adversary that can compromise with sensor nodes by controlling their functionality and inducing arbitrary deviations from the pro- tocols. But in our proposed algorithm, we have considered node 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 sensor node may fail due to lack of battery power or some hardware failures. If a sensor node fails during data aggregation then the aggregation tree is disconnected. Hence the WSNs rely on in-network aggregation for efficiency but a single faulty node can severely influence the outcome by contributing an arbitrary partial aggregate value to the sink. In a typical application, a WSN is scattered in a region where it is meant to collect data through its sensor nodes. We consider WSNs as a weighted communication graph, = ( , ) (say) where each sensor node is a vertex belonging to a set , and the communication link between two sensor

Upload: partha-sarathi

Post on 15-Dec-2016

213 views

Category:

Documents


1 download

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.