1
Load Balance and Efficient Hierarchical Data-Centric
Storage in Sensor Networks
Yao Zhao, List Lab, Northwestern Univ
Yan Chen, List Lab, Northwestern Univ
Sylvia Ratnasamy, Intel Research
2
Outline
• Background and Motivation• Hierarchical Voronoi Graph based
Routing– Basic routing algorithm– Practical design issues
• Evaluation• Conclusions and Future Work
4
Generic Storage Schemes
• External Storage– Hotspot problem (if no need to
store all events )
Event
6
Generic Storage Schemes
• Data-Centric Storage [CCR03]– Good to avoid hotspots and flooding
overhead in some scenarios
Event
7
Motivation
• Routing Primitive for Data-Centric Storage vs Any-to-any Routing– DCS doesn’t require any-to-any routing
• E.g. in pathDCS [NSDI06], not all nodes are routable
– Any-to-any routing may not be suitable for DCS
• E.g. BVR[NSDI05] and S4[NSDI07]– Only a few any-to-any routing can be DCS
routing• E.g. VRR [Sigcomm06], GEM[Sensys03]
8
Motivation
• Routing Primitive for Data-Centric Storage vs Any-to-any Routing
• Desirable Properties of DCS Routing– No GPS (or other location device)– Scalability– Efficiency
• Path stretch (routing path length / shortest path length)
– Load Balancing• In routing (forwarding overhead)• In Storage
• Our Goal– Design routing primitive for DCS with the
above properties
9
Outline
• Background and Motivation• Hierarchical Voronoi Graph based
Routing– Basic routing algorithm– Practical design issues
• Evaluation• Conclusions and Future Work
10
Hierarchical Voronoi Graph based Routing
• Basic Routing Algorithm– Hierarchical coordinate– Region oriented routing– Name based routing for DCS
• Practical Issues– Landmark selection– Path stretch reduction– Handling dynamic changes
12
Hierarchical Coordinate• Divide the network based on the hop distance to landmarks
Irregular borderline in re
alilty
13
Hierarchical Coordinate• Divide the network based on the hop distance to landmarks
In smallest region, nodes
know each other
14
Overhead of Building Coordinate
• Initialization Overhead– Each Layer
• O(mN) messages where m is the number landmarks splitting a region, and N is the number of nodes
– K Layers• K ~ O(log N)
– Total Overhead• O(mN·log N) messages
• Memory Usage– Km ~ O(m·log N)
15
Name Based Routing
• S has an event E– Take a hash functi
on H1 and get j = H1(E)%3
– S sends E to the jth 1st level landmark and enter Lj’s region via node a
– Node a compute H2(E)%3 to determine the next landmark
sd
L1
L1,2
L1,2,3
L2
L3
a
Bypass landmark
s
16
Load Balancing in Storage
• Load Balancing Problem– In naïve name based routing, non-
uniform division of regions causes non-uniform storage distribution
– To divide regions uniformly is very hard
• Our Approach: Non-uniform Hash Function– Collect the number of nodes in each
region – Hashed value is proportional to the
population of possible sub-regions
17
Outline
• Background and Motivation• Hierarchical Voronoi Graph based
Routing– Basic routing algorithm– Practical design issues
• Evaluation• Conclusions and Future Work
18
Evaluation
• Simulation Setup– C++ implementation– Simple MAC without collision– Unit disk graph model in 2D space (communicatio
n range 1)– Baseline simulation
• 3200 nodes • Density: 3π neighbors in average
– Simulate HVGR, HVGR+ and VRR[Sigcomm06]• m = 6 (number of landmarks splitting a region)
• Metrics– Path stretch– Load balancing: CDF for visualization– Route table size– Initialization overhead– Maintenance overhead
21
Routing Load Balancing
• The routing load balancing feature of HVGR is close to that of shortest path routing.
22
Storage Load Balancing
• The storage load balancing feature of HVGR is close to that of ideal hash based storage.
23
Conclusion
• Design HVGR/HVGR+– Topology based routing (No GPS)– Good scalability (log N memory)– High efficiency (close to shortest pat
h routing)– Balanced load in both routing and st
orage• Future Work
– Theoretical analysis– Tinyos implementation
28
Name Based Routing for DCS
• Convert Name to Label– Event name S– A series of hash functions Hi – Order the m landmarks – Let j = Hi(S) mod m, the ith level labe
l is the j th landmark
33
Desirable Properties of DCS
• DCS without Location Information– No GPS or other location devices
• Scalability– Memory usage– Control message overhead
• Efficiency– Path stretch (routing path length /
shortest path length)
• Load Balancing– In routing (forwarding overhead)– In Storage
34
Outline
• Background and Motivation• Hierarchical Voronoi Graph based
Routing– Basic routing algorithm– Practical design issues
• Evaluation• Conclusions and Future Work
35
Region Oriented Routing
• From s to d with label (L1, L1,2, L1,2,3)
sd
L1
L1,2
L1,2,3
Bypass landmark
s
a