Title: Dynamic Forwarding over TreeonDAG for Scalable Data Aggregation in Sensor Networks
1Dynamic Forwarding over Tree-on-DAG for Scalable
Data Aggregation in Sensor Networks
- Kai-Wei Fan
- Sha Liu
- Prasun Sinha Arun Sudhir
2Agenda
- Background Related Work
- The proposed protocol
- Performance analysis 7 Evaluation
- Large-scale simulation using ns2
- Conclusion
3Background Related Work
4Data 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.
5Data Aggregation Techniques
- Can be structured or unstructured.
- What to use depends on the nature of the
application data gathering or event-based.
6Structured 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.
7Goal 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.
8Keep 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.
9Some (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 gt Spanning Tree is good
- DAG Directed Acyclic Graph
- Edges have directions
- No cycles
Graph with spanning tree
DAG
10Some (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)
11Related 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
12A 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.
13The Proposed ProtocolDynamic Forwarding over ToD
14Proposed 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 thus
decreasing 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.
15ToD in a one-dimensional network
- F-Tree F-cells -gt F-aggregators F-Cluster A
pair of F-cells - S-Tree S-cells -gt S-aggregators S-Cluster
A pair of S-cells - F-Tree overlapped with S-Tree A DAG christened
as ToD
16How 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) -gt F1 - If nodes of adjacent F-clusters are involved, the
F-aggregator then forwards packets to the
S-aggregator. eg (C,D) -gt (F4,F5) -gt S4 - Thus aggregation involves one or at most two
steps in a single dimension
17ToD in a two-dimensional network
- F-Tree F-cells -gt F-aggregators F-Cluster 4
F-cells - S-Tree S-cells -gt S-aggregators S-Cluster
4 S-cells - A,B,C,D.. -gt F-clusters
- F-Tree overlapped with S-Tree ToD
18How 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) -gt 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)
-gtX, C3 -gtYX -gt S1 Y -gt S2S1 -gt S2
19Clustering 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)?
20Clustering 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 ltk lt n where n
number of nodes in cluster. - Then, node k is elected as aggregator (read
cluster-head)?
21Clustering 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.
22Clustering 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)?
23Avoiding 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
24Avoiding Voids
- Case 2 Two aggregating clusters nearer one is
a void.
25Avoiding Voids
- Case 3 Two aggregating clusters farther one in
void.
26Avoiding 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! )
27Performance Analysis Evaluation
28Analysis of the worst case
- Worst case distance
(How?)
29Performance 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
30Normalized number of transmissions
- ToD has minimum number of transmissions even when
event size gt cell size
31Large-scale simulation using ns2
32Evaluation 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 gt 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
33Event 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.
34Scalability
- 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.
35Aggregation 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.
36Cell Size
- ToD downgrades to DAA for extremely small and
large cell sizes - ToD peroformance clearly has an optimum cell
size.
37Conclusion
- 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
38Thank You!