380 likes | 506 Views
Dynamic Forwarding over Tree-on-DAG for Scalable Data Aggregation in Sensor Networks. Kai-Wei Fan Sha Liu Prasun Sinha Arun Sudhir. Agenda. Background & Related Work The proposed protocol Performance analysis 7 Evaluation Large-scale simulation using ns2 Conclusion.
E N D
Dynamic Forwarding over Tree-on-DAG for Scalable Data Aggregation in Sensor Networks • Kai-Wei Fan • Sha Liu • Prasun SinhaArun Sudhir
Agenda • Background & Related Work • The proposed protocol • Performance analysis 7 Evaluation • Large-scale simulation using ns2 • Conclusion
Data Aggregation • Active research area in sensor networks. Why? • Raw data from sensors has an inherent redundancy • Aggregation reduces this redundancy by forwarding only the extracted information. • Thus, it reduces communication cost and energy.
Data Aggregation Techniques • Can be structured or unstructured. • What to use depends on the nature of the application – data gathering or event-based.
Structured or Unstructured ? • Data gathering applications call for structured approach. ( why ? ) • Data gathering – low traffic, low maintenance overhead. • Example: environment monitoring • Event-based applications call for unstructured approach. (why? ) • Event-based – source nodes change dynamically. • Example: intrusion detection, hazard detection.
Goal of the proposed protocol • Focused on event-based applications. • Design goals are: • Scalability • Low maintenance overhead • Semistructured approach • Design challenge: determine a scalable packet forwarding strategy for early aggregation.
Keep these in mind • Good spatial and temporal convergence of packets is key for aggregation. • Spatial – all packets at the same place • Temporal – at the same time too. • DAA – Data Aware Anycast - first structureless protocol which improves spatial and temporal aggregation. • Anycast – A routing scheme where a packet is forwarded to the best or any of a group of destinations based on some metrics. • ToD – Tree on DAG (explained later) • Skip the next two slides if you know what a graph, spanning tree, DAG and stretch is.
Some (simple) Graph Theory • Graph (greyed) • Spanning Tree (solid black) • Shortest Path Spanning Tree • Dijkstra's Algorithm • Stretch = XY in Tree / XY on the Graph. • Low stretch => Spanning Tree is good • DAG – Directed Acyclic Graph • Edges have directions • No cycles Graph with spanning tree DAG
Some (simple) Graph Theory • Shortest path spanning tree provides a path from its root to any other node. • But, it may provide longer paths for other pairs of nodes compared to the original graph. • So how do we know if the spanning tree we have is good to follow for going for any X-Y path? • One answer is stretch • The maximum or average stretch can serve as a metric • A tree minimising the max stretch is minimum max stretch tree (MMST) • A tree minimising the avg stretch is minimum max stretch tree (MAST)
Related Work • Structured approaches focus on effective tree construction techniques. • Like Steiner Minimum Tree or Multiple Shared Tree • These are useful ONLY IF source is known in advance. (not for event-based) • Also suffer from the long stretch problem. • DCTC: A structure-based protocol for event-based applications • dynamically forms a tree with the event source as root and acheives good aggregation. • Has heavy message exchanges: tree creation and maintenance takes up upto 33% of data collection! • DAA : Structureless • Aggregation without tree overhead with good spatial and temporal aggregation. • Forwards packets to one-hop neighbours and aggregates well at source • No guarantee that all packets are aggregated • Cost of forwarding non-aggregated packets limits scalability
A closer look at DAA • Spatial convergence: Uses anycast. In wireless radio transmission, nodes can tell if they have packets to be aggregated with the sender's packet. • Temporal : Randomized waiting is employed and a node just waits a random amount of time before transmitting the packet. • If a node has no neighbors with packets for aggregation, it simply forwards its packet towards the sink using geographical routing. • This can have a higher overhead if there are many unaggregated packets and if the distance from the source to sink is large.
Proposed Protocol- Dynamic Forwarding over ToD • Two phases: • DAA • Dynamic Forwarding • DAA phase : Packets are forwarded, aggregated using DAA • Dynamic Forwarding phase: Unaggregated packets in DAA phase are now dynamically forwarded using a structure ToD (Tree on DAG) and NOT routed to sink directly using geographic routing thusdecreasing overhead compared to DAA. • Why ToD ? • Using a fixed tree will have the long stretch problem • Using a dynamic tree (DCTC) has high message exchange overhead • ToD is an implicit structure over which Dynamic Forwarding is done.
ToD in a one-dimensional network • F-Tree: F-cells -> F-aggregators F-Cluster : A pair of F-cells • S-Tree: S-cells -> S-aggregators S-Cluster : A pair of S-cells • F-Tree overlapped with S-Tree : A DAG christened as ToD
How aggregation works here • DAA is first used to aggregate as many packets as possible. • DAA • Dynamic Forwarding • Nodes then forward their packets to their F-aggregators for aggregation. • If an event only triggers nodes within an F-cluster, the packets travel up the F-Tree to the sink. eg: (A,B) -> F1 • If nodes of adjacent F-clusters are involved, the F-aggregator then forwards packets to the S-aggregator. eg: (C,D) -> (F4,F5) -> S4 • Thus aggregation involves one or at most two steps in a single dimension
ToD in a two-dimensional network • F-Tree: F-cells -> F-aggregators F-Cluster : 4 F-cells • S-Tree: S-cells -> S-aggregators S-Cluster : 4 S-cells • A,B,C,D.. -> F-clusters • F-Tree overlapped with S-Tree : ToD
How aggregation works here • DAA is first used to aggregate as many packets as possible. • DAA • Dynamic Forwarding • Nodes then forward their packets to their F-aggregators for aggregation. • Case 1: If an event only triggers nodes within an F-cluster, the packets travel up the F-Tree to the sink. eg: (C1,C2) -> X • Case 2: If nodes of adjacent F-clusters are involved, the F-aggregator then forwards packets to the S-aggregators. • Thus aggregation involves one or at most three steps in a single dimensionCase 2:(C1,C2) ->X, C3 ->YX -> S1 Y -> S2S1 -> S2
Clustering & Aggregator selection • Principle: The size of a cell should be greater than or equal to the maximum size of the event. • Any clustering method would work (hexagonal, triangular) • Why choose grid ? • Size of grid can be parametrized as a grid parameter easily • The cell, F-cluster and S-cluster can be determined from geographic location easily. (assumption: nodes have a GPS)
Clustering & Aggregator selection • Nodes take turns to play aggregator to evenly distribute energy cost as aggregator emans extra energy consumption. • A good metric for aggregator election can be residual energy. Nodes elect themselves as aggregator and then advertise to all other nodes in F-cluster. • In case of tie, node ID is used. • Alternative approach is to hash time in days or hours (why?) • Aggregator change frequqncy is very low • hash(current time) = k , 1 <=k <= n where n= number of nodes in cluster. • Then, node k is elected as aggregator (read cluster-head)
Clustering & Aggregator selection • Choosing F-aggregators and then doing the same process for electing S-aggregators involves extra overhead. • The solution is the concept of Aggregating Cluster • The Aggregating Cluster of an S-cluster is that F-cluster which is closest to the sink among all F-clusters that the S-cluster overlaps with. • IMPORTANT: If an F-aggregator needs to forward packets to two S-aggregators, it forwards it to the F-cluster closer to itself (might be itself!) as the aggregating cluster for the first S-aggregator.
Clustering & Aggregator selection • Benefits of using aggregating clusters for S-aggregators • No leader election for S-clusters (additional overhead) • Scalable since nodes only need to know F-aggregators • Change in F-aggregator need not be propagated to other F-clusters • Hashing function for leader selction easier to use • No overhead for computing aggregating clusters (static)
Avoiding Voids • In a real-world scenario, not all regions will have sensors • Uncovered regions are called voids • Case 1: Only one aggregating cluster. • Dark Grey : void F-cluster • Light grey: cell containing data
Avoiding Voids • Case 2: Two aggregating clusters – nearer one is a void.
Avoiding Voids • Case 3: Two aggregating clusters – farther one in void.
Avoiding Voids • Solution to Case 1 & 3: If the first S-aggregator is in a void, forward to the top-right F-cluster from that void. (figure a ) • What if that also is a void ? (figure b) • Try forwarding to other near F-clusters • Or forward directly to sink (F-tree) (Solution for case2 too! )
Analysis of the worst case • Worst case distance = (How?)
Performance Evaluation • Involved comparative evaluation of: • Dynamic Frwarding over ToD • DAA (Structureless) • SPT (opportunistic, structural) • SPT-D (SPT with a fixed wait time before forwarding) • The test bed was: • Comprised of Kansei Sensors • 105 Mica2 based motes each hooked to a Stargate • Stargate is 32-bit CrossBow device running Linux • All stargates connected via wired ethernet • Transmission power was such that each node could have maximum 12 neighbours • Anycast MAC Protocol on top of Mica MAC layer • Had only two F-clusters in ToD, a cell had 9 nodes
Normalized number of transmissions • ToD has minimum number of transmissions even when event size > cell size
Evaluation using Simulation • Involved comparative evaluation of: • Dynamic Forwarding over ToD • DAA (Structureless) • SPT (opportunistic) • OPT (Optimal Aggregation tree) • The simulation was run on: • A 2000 X 1200 grid network with 35 m node separation • 1,938 nodes in the network • Data Rate of 38.4 Kbps • Transmission range of a node slightly > 50 m • Event moves at 10 m/s for 400 seconds using the random waypoint mobility model • Event size is 400m diameter and sink was a t (0,0) • Perfect aggregation was the aggregation function under evaluation
Event Size • ToD better than DAA and SPT but OPT performs best in fig 1 • But its overhead was ignored • In 2 and 3, DAA and ToD have better aggregation and hence better performance.
Scalability • In 1 and 2, ToD and OPT are steady but SPT and DAA dont scale well • In 3, the number of packets ar not equal to 1, maybe due to protocol-imposed delay. • Also, ToD has more packets if the event is nearer to sink because then sink is used a F-aggregator.
Aggregation Ratio • As aggregation ratio decreases, packet size increases and soon reaches payload limit. • OPT had high drop rate. So DAA and TOD are better than OPT.
Cell Size • ToD downgrades to DAA for extremely small and large cell sizes • ToD peroformance clearly has an optimum cell size.
Conclusion • ToD: • Semistructured : structurelss with Dynnamic Forwarding over a ToD • Scalable to a very higher extent than DAA • Avoids the long stretch problem with structured approaches • Suited for extended life sensor networks