sensor networks
play

Sensor Networks Costas Busch Division of Computer Science and Eng. - PowerPoint PPT Presentation

Universal Steiner Trees for Efficient Data Aggregation in Sensor Networks Costas Busch Division of Computer Science and Eng. Louisiana State University 1 Talk Overview Oblivious Network Design Distr. Transactional Memory 2 Single-Sink


  1. Universal Steiner Trees for Efficient Data Aggregation in Sensor Networks Costas Busch Division of Computer Science and Eng. Louisiana State University 1

  2. Talk Overview Oblivious Network Design Distr. Transactional Memory 2

  3. Single-Sink Network Design Task: For each terminal, sink choose a path to sink. : terminals

  4. Single-Sink Network Design Task: For each terminal, sink choose a path to sink. Goal: Minimize  w e  E e edge weights Communication Cost : terminals

  5. Oblivious Network Design Task: pre-compute paths to sink. sink Goal: Minimize  w e  E e Communication Cost For every set of terminals : terminals

  6. Different Steiner trees for different sources on top of same universal spanning tree sink sink Tree 1 Tree 2 : terminals

  7. Applicability Sensor Networks Distributed sensor nodes send information to central node(s) Content-based publish-subscribe systems Users “publish” or “subscribe” to information VLSI, Transportation, Power Grids, Pipelines

  8. Problem Hardness Steiner Tree Problem is NP-complete For universal Steiner trees:   log n     stretch     log log n

  9. Our Results Busch, Dutta, Radhakrishnan, Rajaraman and Srinivasagopalan “Split and Join: Strong Partitions and Universal Steiner Trees for Graphs” IEEE Symposium on Foundations of Computer Science (FOCS 2012) General graphs  O ( log n ) 2 stretch Planar graphs  poly log n stretch Srinivasagopalan, Busch, and Iyengar “An Oblivious Spanning Tree for Single-Sink Buy-at-Bulk in Low Doubling-Dimension Graphs” IEEE Transactions on Computers, 2012 Doubling dimension  poly log n stretch 9

  10. Partitions     ( , , ) partition 10

  11.     ( , , ) partition       Cluster strong diameter     11

  12.     ( , , ) partition        Cluster strong diameter      #clusters in radius   12

  13. Partition Hierarchy       ( , , ) partition hierarchy ( P , P , , P ) d log ( D G / a )  0 1 d ……   0 P : ( a , b , ) partition 0 13

  14. Partition Hierarchy       ( , , ) partition hierarchy ( P , P , , P ) d log ( D G / a )  0 1 d ……   1 P : ( a , b , ) partition 1 ……   0 P : ( a , b , ) partition 0 14

  15.       ( , , ) partition hierarchy ( , , , ) P P P d log ( D G / a )  0 1 d ……   i P : ( a , b , ) partition i ……    i 1 P : ( a , b , ) partition  1 i …… ……   1 P : ( a , b , ) partition 1 ……   0 P : ( a , b , ) partition 0 15

  16.       ( , , ) partition hierarchy ( , , , ) P P P d log ( D G / a )  0 1 d Whole graph   d P : ( a , b , ) partition d …… ……   i P : ( a , b , ) partition i ……    i 1 P : ( a , b , ) partition  1 i …… ……   1 P : ( a , b , ) partition 1 ……   0 P : ( a , b , ) partition 0 16

  17. Root padding  i r   i P : ( a , b , ) partition i r      1 i i 1 P : ( a , b , ) partition  i 1 17

  18. Universal Tree   0 P : ( a , b , ) partition 0 18

  19. Universal Tree Combine sub-trees of clusters by organizing them on a virtual shortest path tree ……   1 P : ( a , b , ) partition 1   0 P : ( a , b , ) partition 0 19

  20. Universal Tree ……   i P : ( a , b , ) partition i ……    i 1 P : ( a , b , ) partition  1 i …… ……   1 P : ( a , b , ) partition 1   0 P : ( a , b , ) partition 0 20

  21. Universal Tree Whole graph root   d P : ( a , b , ) partition d …… ……   i P : ( a , b , ) partition i ……    i 1 P : ( a , b , ) partition  1 i …… ……   1 P : ( a , b , ) partition 1   0 P : ( a , b , ) partition 0 21

  22. Approximation:      ( , , ) partition hierarchy ( P , P , , P ) 0 1 d   stretch log    n 2  O ( ) log n Bad! For small (constant)    , , stretch is some root of n 22

  23. Top Down Approach P d P  d 1 P  d 1 P  d 1 P  d 1 23

  24. Top Down Approach P d P  d 1 P  d 1 P  d 1 P  d 1 Find shortest paths from lower level leader to the root 24

  25. Top Down Approach P d P  d 1 P  d 1 P  d 1 P  d 1 Find shortest paths from lower level leader to the higher level 25

  26. Top Down Approach P d P  d 1 P  d 1 P  d 1 P  d 1 Find shortest paths from lower level leader to the higher level 26

  27. Approximation:      ( , , ) partition hierarchy ( P , P , , P ) 0 1 d   stretch     2 2 log O n Better! 27

  28. Why Partitions? Many long paths BAD CASE Many nearby nodes 28

  29. Why Partitions? Many long paths Impossible with partitions Many nearby nodes 29

  30. Partition Algorithm for General Graphs      ( , , ) partition hierarchy ( , , , ) P P P 0 1 d Recursive construction We will build ……   i P : ( a , b , ) partition i Assuming ……    i 1 P : ( a , b , ) partition  i 1 Basis of Recursion: …… 1  partition P  Individual nodes 30

  31. Recursive step works in stages The rank of a cluster is the stage that it has been created rank 0 rank 0 rank 0 rank 0 …… Stage 0    1 i P : ( a , b , ) partition  i 1 31

  32. Recursive step works in stages 1 Problematic nodes: clusters of rank 0 in  k n i   neighborho od rank 1 rank 1 Stage 1 Merge Merge rank 0 rank 0 rank 0 rank 0 …… Stage 0   i i    1 i P : ( a , b , ) partition  i 1 32

  33. A stage has 2 phases 1 clusters of rank 0 in Problematic nodes  k n i  with rank 1:  neighborho od rank 1 Phase 2: Merge rank 1 rank 1 rank 0 …… Phase 1:  i 33

  34. In stage 2 we merge clusters of rank 1 or less if there are problematic nodes Algorithm repeats to higher stages Final stage has no more problematic nodes 34

  35. Analysis Stage j, Phase 1: rank j Merge  i rank j-1 rank j-1 rank j-1 Problematic node 35

  36. Stage j, Phase 2: rank j-1  rank j i rank j-1 rank j-1 Problematic node 36

  37. Stage j, Phase 2: rank j rank j-1 rank j rank j-1 rank j-1 37

  38. Stage j, Phase 2: IMPOSSIBLE! rank j rank j-1 rank j-1 rank j  i rank j-1 rank j-1 rank j-1 rank j-1 New problematic node 38

  39. Stage j, Phase 2: The only possibility for problematic nodes rank j rank j-1 rank j-1  i rank j rank j-1 rank j-1 rank j-1 rank j-1 39

  40. Stage j, Phase 2: Problematic nodes can only be at core rank j rank j-1 rank j-1 rank j core rank j-1 rank j-1 rank j-1 rank j-1 40

  41. Stage j, Phase 2: Problematic nodes can only be at core rank j rank j-1 rank j-1 rank j core rank j-1 rank j-1 rank j-1 rank j-1 This helps to bound the diameter    D 4 D 2 D 6 D    j j 1 j 1 j 1 41

  42. How many stages? Minimum size of cluster Stage 0: 1 1 Stage 1: k n 1 1 2 Stage 2:   k k k n n n j Stage j: k n 42

  43. Minimum size of cluster j Stage j: k n Therefore, maximum stage: k Maximum diameter: k  k D 6 D 0 43

  44.      ( , , ) partition hierarchy ( P , P , , P ) 0 1 d          O log n O log n O log n  2 , 2 , 2 partition hierarchy ( P , P , , P ) 0 1 d 1   log n Take k     O log n k n 2 log 6 level i level i-1 k   log n k D 6 D D 2 D  0 i i 1  log n a 2 44

  45.     ( , , ) partition hierarchy   stretch     2 2 log O n          O log n O log n O log n 2 , 2 , 2 partition hierarchy  O ( log n ) 2 stretch 45

  46. For planar graphs:    3 4 3 log n , log n , log n partition hierarchy By recursively splitting the graph 46

  47. Talk Overview Oblivious Network Design Distr. Transactional Memory 47

  48. Distributed Transactional Memory • Transactions run on network nodes • They ask for shared objects distributed over the network for either read or write • They appear to execute atomically The reads and writes on shared objects are supported • through three operations: Publish  Lookup  Move  48

Recommend


More recommend