[IEEE 2010 6th International Conference on Wireless Communications, Networking and Mobile Computing...

5
Tree-Adapting: an Adaptive Data Aggregation Method for Wireless Sensor Networks Jun-hu Zhang College of Computer Engineering Qingdao Technological University Qingdao, China 266033 Email: [email protected] Hui Peng College of Computer Engineering Qingdao Technological University Qingdao, China 266033 Email: [email protected] Tian-tian Yin Software Development Center of the Agriculture Bank of China Beijing, China 100161 Email: [email protected] Abstract—Wireless technology enables the sensors to gather data to the base station through a so-called multi-hop communi- cation. For data aggregation in wireless sensor networks, a tree overlay is necessary to guide the data transportation from one node to another in an efficient way. Here the data aggregation means that the data is merged while it is transported among the sensors. TinyDB and Cougar are typical data aggregation systems which make use of a tree overlay to do the data aggregation efficiently. However, the tree overlay used in those systems are not optimized for various kinds of data aggregation in response to various kinds of sensed data. Here the sensed data can be kinds of temperature, humidity, noise, etc. In this paper, we propose a new method, Tree-Adapting, to optimize the data aggregation by re-constructing adaptively a new aggregation tree in response to each series of sensed data. I. I NTRODUCTION Data aggregation is one of the most important data oper- ations in sensor networks [7], [8], [16], [17]. Acquisitional query processors such as TinyDB [5] and Cougar [6], have been developed to manage the data aggregation in wireless sensor networks. These systems maintain the wireless sensor network as a data aggregation tree for data routing and aggregation. The data aggregation tree have been proven to be an energy efficient structure for in-network data aggregation in wireless sensor networks, which can greatly reduce the amount of data for transportation, comparing to methods that transport all the sensed data back to the base station and do the data aggregation there. However, the data aggregation tree structure can’t deal with optimizing all kinds of data aggregations in response to various kinds of data sensed by various kinds of data sources. To optimize all kinds of data aggregation in response to various kinds of data sensed by various kinds of data sources, we propose the “Tree-Adapting” algorithm, which can adapt the form of a data aggregation tree in response to various kinds of sensed data. This paper is organized as follows: Section II analyzes the efficiency of different tree structures for data aggregation. Section III proposes the Tree-Adapting algorithm. Section IV describes the research works related with the Tree-Adapting algorithm. Section V makes a conclusion of this paper. A B F C G O D H R N M I J P E V Source node Aggregation operator Base station Network topology L K S W U X Data flow T Q Fig. 1. Data aggregation in a gathering tree II. DATA AGGREGATION IN DIFFERENT TREE STRUCTURES A wireless sensor network can be seen as a connected graph GV,E, where V is the set of nodes which represents the sensors in the network, E is the set of edges which represents the communication connection between sensors. As illustrated in Figure 1, the circles and solid lines represents the network topology of a wireless sensor network. In the graph, there is always a based station to which the sensed data should be delivered, and data sources which can sense various series of data such as temperature, humidity, noise, etc. For data aggregation of various series of data sent from different data sources without broadcasting all the network, a tree overlay should be built on the network to route the data from the data sources to the base station efficiently. The challenge is: what form of the tree overlay can be the best for data aggregation of various series of data? Before proposing an efficient algorithm for answering the challenge, three different tree structures, 1)gathering tree, 2)aggregation tree, 3)optimized aggregation, for data aggrega- tion in a wireless sensor network with different communication efficiency are analyzed in the following subsections. 978-1-4244-3709-2/10/$25.00 ©2010 IEEE

Transcript of [IEEE 2010 6th International Conference on Wireless Communications, Networking and Mobile Computing...

Tree-Adapting: an Adaptive Data AggregationMethod for Wireless Sensor Networks

Jun-hu ZhangCollege of Computer EngineeringQingdao Technological University

Qingdao, China 266033Email: [email protected]

Hui PengCollege of Computer EngineeringQingdao Technological University

Qingdao, China 266033Email: [email protected]

Tian-tian YinSoftware Development Center

of the Agriculture Bank of ChinaBeijing, China 100161

Email: [email protected]

Abstract—Wireless technology enables the sensors to gatherdata to the base station through a so-called multi-hop communi-cation. For data aggregation in wireless sensor networks, a treeoverlay is necessary to guide the data transportation from onenode to another in an efficient way. Here the data aggregationmeans that the data is merged while it is transported among thesensors. TinyDB and Cougar are typical data aggregation systemswhich make use of a tree overlay to do the data aggregationefficiently. However, the tree overlay used in those systems arenot optimized for various kinds of data aggregation in response tovarious kinds of sensed data. Here the sensed data can be kindsof temperature, humidity, noise, etc. In this paper, we proposea new method, Tree-Adapting, to optimize the data aggregationby re-constructing adaptively a new aggregation tree in responseto each series of sensed data.

I. INTRODUCTION

Data aggregation is one of the most important data oper-ations in sensor networks [7], [8], [16], [17]. Acquisitionalquery processors such as TinyDB [5] and Cougar [6], havebeen developed to manage the data aggregation in wirelesssensor networks. These systems maintain the wireless sensornetwork as a data aggregation tree for data routing andaggregation. The data aggregation tree have been proven to bean energy efficient structure for in-network data aggregation inwireless sensor networks, which can greatly reduce the amountof data for transportation, comparing to methods that transportall the sensed data back to the base station and do the dataaggregation there. However, the data aggregation tree structurecan’t deal with optimizing all kinds of data aggregations inresponse to various kinds of data sensed by various kinds ofdata sources.

To optimize all kinds of data aggregation in response tovarious kinds of data sensed by various kinds of data sources,we propose the “Tree-Adapting” algorithm, which can adaptthe form of a data aggregation tree in response to various kindsof sensed data.

This paper is organized as follows: Section II analyzesthe efficiency of different tree structures for data aggregation.Section III proposes the Tree-Adapting algorithm. Section IVdescribes the research works related with the Tree-Adaptingalgorithm. Section V makes a conclusion of this paper.

A

BF

C

G

O

D

H

R

NM

IJ

P

E

V

Source node

Aggregation operator

Base station

Network topology

LK

S

W

U

X

Data flow

T

Q

Fig. 1. Data aggregation in a gathering tree

II. DATA AGGREGATION IN DIFFERENT TREE STRUCTURES

A wireless sensor network can be seen as a connected graphG〈V,E〉, where V is the set of nodes which represents thesensors in the network, E is the set of edges which representsthe communication connection between sensors. As illustratedin Figure 1, the circles and solid lines represents the networktopology of a wireless sensor network. In the graph, there isalways a based station to which the sensed data should bedelivered, and data sources which can sense various series ofdata such as temperature, humidity, noise, etc.

For data aggregation of various series of data sent fromdifferent data sources without broadcasting all the network,a tree overlay should be built on the network to route thedata from the data sources to the base station efficiently. Thechallenge is: what form of the tree overlay can be the best fordata aggregation of various series of data?

Before proposing an efficient algorithm for answering thechallenge, three different tree structures, 1)gathering tree,2)aggregation tree, 3)optimized aggregation, for data aggrega-tion in a wireless sensor network with different communicationefficiency are analyzed in the following subsections.

978-1-4244-3709-2/10/$25.00 ©2010 IEEE

A. Data aggregation in a gathering tree

Assume the gathering tree is created using the routingalgorithm proposed in TinyDB [5]. As illustrated in Figure 1,the gathering tree is built on the topology graph, where thesolid arrows represents the directions along which the datastream goes.

For data aggregation in the gathering tree, as depicted inFigure 1, each node maintains a value set. When a node senseda value, it will add the value to the value set and sends it toits parent. The parent also maintain a value set by addingits sensed value (if it has) and the values received from itschildren, then sends its value set to its parent. The aboveprocedure repeats among the nodes until all the sensed valuesfrom the source nodes arrive at the base station. Finally thebase station is responsible for aggregating the values receivedfrom its children.

According to the above description of the gathering-tree-based data aggregation, the gathering tree can only provide asimple way of passing values. As illustrated in Figure 1, thedata aggregation only occurs on the base station. Thus, dataaggregation through the gathering tree introduces too muchcommunication cost because the value set becomes bigger andbigger when it passes through the intermediate nodes to thebase station.

For example, as illustrated in Figure 1, assume

1) the node W, O, P, and E has one data unit to be sent tothe base station,

2) the data aggregation operator can merge the data unitsreceived from its children into one data unit,

3) the communication cost between each pair of nodes isone per data unit.

The communication cost of data aggregation in the gatheringtree will be 14: Actually, the communication cost of W to P is2 due to the two hops of transportation of one data unit fromW, then P have to send two data units to the base station A,which result in 2*4=8 communication cost due to four hops oftransportation of two data units. Similarly, the communicationcost from O and E to the base station A is 3 and 1 respectively.In sum, the total communication cost of the data aggregationon the gathering tree is 2+8+3+1=14.

B. Data aggregation in an aggregation tree

The gathering tree can be upgraded to an aggregation treeby placing some data aggregation operators on some possibleintermediate nodes. Here the data aggregation operator canbe MIN, MAX, AVERAGE, or MEDIAN, which can mergethe value set into a smaller one. Having the data aggregationoperator on some intermediate nodes before the data streamsarrive at the base station can greatly reduce the communicationcost.

For example, recalling the assumptions made in the de-scriptions of gathering tree, the communication cost of dataaggregation in the aggregation tree illustrated in Figure 2 willbe 10: Actually, the communication cost of W to P is 2 dueto the two hops of transportation of one data unit from W,

A

BF

C

G

O

D

H

R

NM

IJ

P

E

V

Source node

Aggregation operator

Base station

Network topology

LK

S

W

U

X

Data flow

T

Q

Fig. 2. Data aggregation in a “temperature” aggregation tree

A

BF

C

G

O

D

H

R

NM

IJ

P

E

V

Source node

Aggregation operator

Base station

Network topology

LK

S

W

U

X

Data flow

T

Q

Fig. 3. Data aggregation in an optimized “temperature” aggregation tree

then the data units of W and P are merged into one data unitby the data aggregation operator at the node P. After that thecommunication cost of P to the base station A is 4 due tofour hops of transportation of one data unit. Similarly, thecommunication cost from O and E to the base station A is 3and 1 respectively. In sum, the total communication cost ofthe data aggregation on the aggregation tree is 2+4+3+1=10.

C. Data aggregation in an optimized aggregation tree

As depicted in the above subsections, in comparison withthe data aggregation on the gathering tree, the data aggregationon the aggregation tree can greatly reduce the communicationcost by virtue of this data aggregation operators’ mergingbehavior. In fact, the communication cost can be furtherreduced by optimizing the aggregation tree.

For example, the communication cost of data aggregationin Figure 3 is less than that in Figure 2.

Actually, in Figure 3, the communication cost of W to P is2 due to the two hops of transportation of one data unit fromW, then the data units of W and P are merged into one data

unit by the data aggregation operator at the node P. After thatthe communication cost from O and P to their parent J is 2.Then the communication cost of J to E is 1. After E mergesthe data units from J and itself, E sends the data unit to thebase station A, which consumes the communication cost of 1.In sum, the total communication cost of the data aggregationon the optimized aggregation tree illustrated in Figure 3 is2+2+1+1=6.

In the following section, a distributed data aggregationalgorithm, Tree-Adapting, is proposed. The Tree-Adaptingalgorithm can reconstruct the gathering tree adaptively tovarious series of sensed data. By one-hop message broadcast-ing, a sensor can find the best ”father” for minimizing thecommunication cost of data aggregation.

III. THE TREE-ADAPTING ALGORITHM

As described above, maintaining a fixed aggregation treefor aggregating various series of data sent by various datasources in a wireless sensor networks is not efficient. Hereeach series of data may be data of temperature, humidity,or noise. Thus, we propose a new data aggregation algorithm,Tree-Adapting, to aggregate each various series of data withcorresponding forms of aggregation tree. That is to say, in theTree-Adapting algorithm, the aggregation tree can adapt itsform in accordance with the series of data which are going tobe aggregated by the base station. For every kind of senseddata in a node, it tries to find a new father who is nearer tothe base station than its current father node, thus reduces theamount of data transportation.

Before depicting the Tree-Adapting algorithm, we assumethat an aggregation tree has already been set up. What weshould do now is how to adapt the form of the aggregationtree and place the necessary data aggregation operator onappropriate nodes according to various series of data sent fromvarious data sources.

In addition, tt should be noticed that there is a tree for eachvarious data series. That is to say, there should be n differentaggregation trees for each n kinds of data series. Thus it isrequested that the Tree-Adapting algorithm should be capableof generating various forms of optimized aggregation tree inresponse to various kinds of data sensed by various kinds ofdata sources.

To achieve the goal depicted above, we manage to imple-ment the Tree-Adapting algorithm through the flowing twoprocedures: 1)Tree tagging, and 2)Fathering adjusting andoperator placement.

A. Tree tagging

The tree tagging procedure is initiated by the base stationwhen it wants to aggregate some data. Assume the gatheringtree has been set up before the “tree tagging procedure” begins.And assume the base station wants to aggregate the averagetemperature detected by some sensors. The “tree tagging”procedure runs in a distributed way along the gathering treelike the following steps.

A

BF

C

G

O

D

H

R

NM

IJ

P

E

V

Source node

Aggregation operator

Base station

Network topology

LK

S

W

U

X

Data flow

T

Q

1

2

3

0

2

0

0

1

3

4

5

0

3

2

1

2

1

1

20

1

4

4

3Tagging message

Fig. 4. Tree tagging procedure for “temperature” aggregation on the gatheringtree of Figure 1.

First, the base station marks himself a tag 0, encapsulatesthe tag value into a “tagging” message, and broadcasts themessage to his one-hop neighbors. Then when his one-hopneighbors receives the “tagging” message, the one-hop neigh-bor which is neither his children nor his father will neglectthis “tagging” message, while each of his children will getown its tag value according to the following rules.

• Stores the tag value of the received “tagging” messageinto a variable v,

• Marks itself a tag v + 1 if it is not a node which cansense temperature, otherwise,

• Marks itself a tag 0 if it is one of the nodes which cansense temperature. (this kind of nodes is called “sourcenodes”)

After that, each of his children broadcasts its own tag valueencapsulated in a “tagging” message to its one-hop neighbors.The above procedure keeps running along the gathering treeuntil all the nodes in the network have got his own tag value.

As is illustrated in Figure 4, when the “tree tagging proce-dure” is over, each node gets a tag.

B. Father adjusting and operator placement

Once a node has got his tag, he additionally encapsulateshis tag value in an “adjusting” message and broadcasts themessage to his one-hop neighbors, then the node whichreceives all the “adjusting” message from his neighbors canadjust his father when necessary according to the followingsteps:

1) Neglects the “adjusting” message which is sent from oneof his children,

2) Stores the tag value in the “adjusting” message sent fromhis current father into a variable t,

3) Among the nodes which sends him an “adjusting” mes-sage and is neither his father nor his children, choosesthe one whose tag value in the “adjusting” message isthe smallest and less than t as its new father,

4) Deletes the old father if he can find a new father.

A

BF

C

G

O

D

H

R

NM

IJ

P

E

V

Source node

Aggregation operator

Base station

Network topology

LK

S

W

U

X

Data flow

T

Q

1

2

3

0

2

0

0

1

3

4

5

0

3

2

1

2

1

1

20

1

4

4

3Tagging message

New data flow

Deleted data flow

Fig. 5. An optimized “temperature” aggregation tree according to the tagsgenerated by the “Tree tagging” procedure

While the above procedure is running, each node, whichfinds that it has more than one data flows to be merged, willplace an aggregation operator on itself. Through the above“father adjusting and operator placement” procedure, the shapeof the data aggregation tree is optimized for filtering non-candidate nodes so that a great amount of communicationtraffic is saved.

As is illustrated in Figure 5, the final optimized aggregationtree for aggregating the temperature series of data requestedby the base station is constructed accordingly.

IV. RELATED WORKS

Data aggregation have been studied in a number of paperssuch as [9], [6], [10], etc. In them, TinyDB [9] and Cougar [6]make use of an aggregation tree to merge data recursively toreduce the amount of data transmission. However, in compar-ison with our algorithm Tree-Adapting, the aggregation treeapplied in TinyDB and Cougar is fixed and not optimized forthe data aggregation of various series of data sent from variouskinds of data sources.

Yu et al. [12] and Ozsy et al. [11] proposed to join datafrom a number of sites in a distributed manner. However,the constraints of the data aggregation (join) in distributeddatabases is far different from that of wireless sensor networks.

Madden [19] proposed a technique to simply aggregate(join) the readings on one sensor, which cannot handle joinsacross arbitrary pairs of sensors. Bonfils and Bonnet [20]described an adaptive and decentralized algorithm that pro-gressively refines the placement of aggregation operators bywalking through neighbor nodes. In comparison with our Tree-Adapting algorithm, they focused on continuous join of pairsof sensors rather than reconstructing the aggregation tree forminimizing the amount of data transmitted in the network.

Lee et al. [14] proposed a new network architecture, CODA(Cluster-based self-Organizing Data Aggregation), based onthe “Kohonen Self-Organizing Map” to aggregate sensor datain cluster. Different from the Tree-Adapting algorithm, the

nodes have to be trained to be capable of classifying the senordata before the aggregation can be done, which may posesome extra overhead to the data aggregation. Ahmad et al. [26]proposed a sensor network join algorithm utilizing data andspace locality, which focused on optimal output delay insteadof communication cost.

In [23], Chowdhary et al. proposed a path-join algorithmwhich is actually a variation of the centroid join algorithm.The path-join algorithm does not consider pre-filtering non-candidate tuples. In [24], [25], Yu et al. presented a synopsis-based join strategy for evaluating join queries in sensor net-works with communication efficiency. The synopsis-based joinstrategy can prune data that do not contribute to the join resultsin the early stage of the join processing, therefore reducingunnecessary communication overhead. In sum, both [23], [25],and [24] achieve the communication cost minimization byselecting an optimal set of join nodes.

In [15], a data aggregation framework using SOAP (Sim-ple Object Access Protocol) on wireless sensor networksis presented, which just provided a middleware for assess-ing the suitability of SOAP protocol for data aggregation.Weerasinghe et al. [4] proposed a method which dynamicallycalculates the delay limit by using the historical behaviorof each sensor, which, like [26], focused on optimal outputdelay instead of communication cost. Chatterjea et al. [16]proposed a distributed scheduling algorithm that decides whena particular node should perform the data aggregation, whichautonomously reassigns schedules when changes in networktopology due to failing or newly added nodes, are detected.Liao et al. [13] proposed a data aggregation method based ona kind of ant colony algorithm.

In [1], Khamfroush et al. proposed a new cluster-basedmethod that can reduce the average energy consumption bymaintaining a cluster overlay in the network. In the method,all normal nodes and all cluster heads use a tree structurefor transmitting their data packets toward the cluster headsand the base station respectively. In [2], Qiu et al. proposeda hierarchical data aggregation strategy in order to achievebalanced energy depletion by reducing the cluster head se-lection probability near the base station. In [3], Kim et al.proposed a designated path scheme for energy-balanced dataaggregation in wireless sensor networks. The proposed schemepre-determines a set of paths and runs them in round-robinfashion so that all the nodes can participate in the workloadof gathering data and transferring them to the base station.The above newest three methods didn’t take into account theproblem of data aggregation operator placement for reducingthe communication cost at all.

There is also a lot of work on data aggregation for datastreams [21], [22]. They focus on the data aggregation withlittle delay and memory usage and do not address how tominimize the amount of data transmitted in the network.

V. CONCLUSION

The tree structure is good at data aggregation in wirelesssensor networks, which can greatly reduce the amount of

data transportation. However, using just one fixed aggregationtree can not optimize the data aggregation for all series ofdata. Thus we propose the algorithm, Tree-Adapting, whichis capable of reconstructing the aggregation tree for variouskinds of sensed data.

In the Tree-Adapting algorithm, the aggregation tree adaptsits form through the two procedure “tree tagging” and “fatheradjusting and operator placement”. The two procedures areimplemented in a distributed manner at the price of posing asmall amount of message traffic. Actually, in the “tree tagging”procedure, each node only forwards the “tagging” messagealong the gathering tree without broadcasting the network,while in the “father adjusting and operator placement” pro-cedure, each node only sends the “adjusting” message to itsone-hop neighbors.

Through the Tree-Adapting algorithm, the data aggregationconsumes a low communication cost by optimizing the formof the aggregation tree in responding to various series ofdata requested by the base station, and the optimized dataaggregation tree can efficiently filter non-candidate nodes sothat a great amount of communication traffic is saved.

ACKNOWLEDGMENT

This paper is supported by Science and technology bureauof Qingdao (NO. 09-1-3-56-jch).

REFERENCES

[1] H. Khamfroush, R. Saadat, and S. Heshmati. A New tree-based RoutingAlgorithm for Energy Reduction in Wireless Sensor Networks. InProceedings of the 2009 International Conference on Signal ProcessingSystems, pages 116–120, May 2009.

[2] R. Qiu, and H. Zhao. Energy Balance Hierarchical Data AggregationMechanism for Wireless Sensor Network. In ICIE 2009: Proceedingsof the 2009 International Conference on Information Engineering,pages 310–313, July 2009.

[3] Y .K. Kim, R. Bista, and J. W. Chang. A Designated Path Schemefor Energy-Efficient Data Aggregation in Wireless Sensor Networks. InProceedings of the 2009 IEEE International Symposium on Parallel andDistributed processing with Applications, pages 408–415, 2009.

[4] H. Weerasinghe, I. H. Elhajj, A. Krsteva, and M. A. Najm. Datacentric adaptive in-network aggregation for wireless sensor networks.In 2007 IEEE/ASME International Conference on Advanced IntelligentMechatronics, 2007.

[5] S. R. Madden, M. J. Franklin, J. M. Hellerstein, and W. Hong. Tinydb:an acquisitional query processing system for sensor networks. ACMTrans. Database Syst., 30(1):122–173, 2005.

[6] Y. Yao and J. Gehrke. The cougar approach to in-network queryprocessing in sensor networks. SIGMOD Rec., 31(3):9–18, 2002.

[7] C. Intanagonwiwat, D. Estrin, R. Govindan, and J. Heidemann. Impactof Network Density on Data Aggregation in Wireless Sensor Networks.In ICDCS ’02: Proceedings of the 22nd International Conference onDistributed Computing Systems (ICDCS’02), page 457, Washington, DC,USA, 2002. IEEE Computer Society.

[8] S. Madden, R. Szewczyk, M. J. Franklin, and D. Culler. Supportingaggregate queries over ad-hoc wireless sensor networks. In WMCSA’02: Proceedings of the Fourth IEEE Workshop on Mobile ComputingSystems and Applications, page 49, Washington, DC, USA, 2002. IEEEComputer Society.

[9] S. Madden, M. J. Franklin, J. M. Hellerstein, and W. Hong. TAG: aTiny AGgregation Service for Ad-hoc Sensor Networks. In Proceedingsof OSDI ’02: Proceedings of the Fifth Symposium on Operating SystemsDesign and Implementation, page 131–146, New York, NY, USA, 2002.ACM Press.

[10] S. Nath, P. B. Gibbons, S. Seshan, and Z. R. Anderson. Synopsisdiffusion for robust aggregation in sensor networks. In ACM Trans.Sen. Netw., 4(2):1–40, 2008.

[11] M. T. Ozsy and P. Valduriez. Principles of Distributed Database Systems.In Prentice Hall, Englewood Cliffs, 1991.

[12] C. T. Yu and C. C. Chang. Distributed query processing. In ACMComputing Surveys, 16(4):399–433, December 1984.

[13] W. Liao, Y. Kao, and C. Fan. Data aggregation in wireless sensornetworks using ant colony algorithm. In Journal of Network andComputer Applications, 31(4):387–401, 2008.

[14] S. Lee, T. Chung. Data aggregation for wireless sensor networks usingself-organizing map. In Artificial Intelligence and Simulation LectureNotes in Computer Science, pages 264–273, 2005.

[15] A. Al-Yasiri and A. Sunley. Data aggregation in wireless sensor networksusing the SOAP protocol. In Journal of Physics: Conference Series,76(1), 2007.

[16] S. Chatterjea, T. Nieberg, N. Meratnia, and P. J. M. Havinga. Adistributed and self-organizing scheduling algorithm for energy-efficientdata aggregation in wireless sensor networks. In ACM Transactions onSensor Networks, 2008.

[17] C. Castelluccia, H. Y. Hu. An Improved LEACH Protocol for DataGathering and Aggregation in Wireless Sensor Networks. In IEEEInternatonal Conference on Mobile Adhoc and Sensor Systems, 2008.

[18] B. Krishnamachari, Deborah Estrin and S. Wicker. The impact ofdata aggregation in wireless sensor networks In Proceedings 22ndInternational Conference on Distributed Computing Systems Workshops,vol. 575578, page 575–578, 2002. IEEE Computer Society.

[19] S. Madden. The Design and Evaluation of a Query Processing. InArchitecture for Sensor Networks, PhD thesis, UC Berkeley, 2003.

[20] B. J. Bonfils and P. Bonnet. Adaptive and Decentralized OperatorPlacement for In-Network Query Processing. In TelecommunicationSystems, 26(2-4):389-409, June 2004.

[21] M. A. Hammad, W. G. Aref, and A. K. Elmagarmid. Stream windowjoin: Tracking moving objects in sensor-network databases. In Proceed-ings of SSDBM ’03, pages 75–84, 2003.

[22] J. Kang, J. F. Naughton, and S. D. Viglas. Evaluating window joinsover unbounded streams. In Proceedings of ICDE ’03, pages 341–352,2003.

[23] V. Chowdhary and H. Gupta. Communication-Efficient Implementationof Join in Sensor Networks. In Proceedings of DASFAA ’05, pages 447–460, April 2005.

[24] H. Yu, E. Lim, and J. Zhang. In-network join processing for sensornetworks. In APWeb ’06: Proceedings of the Eighth Asia Pacific WebConference, vol. 3841, page 263–274, 2006.

[25] H. Yu, E. Lim, and J. Zhang. On In-network Synopsis Join Processingfor Sensor Networks. In MDM ’06: Proceedings of the 7th InternationalConference on Mobile Data Management, page 32, 2006.

[26] Y. Ahmad, J. Jannotti, and E. Zgolinski. Locality aware networked joinevaluation. In NetDB ’05: Proceedings of the 1st International Workshopon Networking Meets Databases, 2005.