simple fast and deterministic gossip and rumor spreading
play

Simple, Fast and Deterministic Gossip and Rumor Spreading Main - PowerPoint PPT Presentation

Simple, Fast and Deterministic Gossip and Rumor Spreading Main paper by: B. Haeupler, MIT Talk by: Alessandro Dovis, ETH Presentation Outline What is gossip? Applications Basic Algorithms Advanced Algorithms Other


  1. Simple, Fast and Deterministic Gossip and Rumor Spreading Main paper by: B. Haeupler, MIT Talk by: Alessandro Dovis, ETH

  2. Presentation Outline ● What is gossip? ● Applications ● Basic Algorithms ● Advanced Algorithms ● Other Results & Current Research ● Q & A

  3. What is gossip?

  4. What is gossip? Broadcast strategies

  5. What is gossip? Broadcast strategies STRUCTURED

  6. What is gossip? Broadcast strategies ISSUES STRUCTURED

  7. What is gossip? Broadcast strategies ISSUES STRUCTURED

  8. What is gossip? Broadcast strategies ISSUES STRUCTURED

  9. What is gossip? Broadcast strategies ISSUES STRUCTURED

  10. What is gossip? Broadcast strategies ISSUES ? STRUCTURED

  11. What is gossip? Broadcast strategies FLOODING STRUCTURED

  12. What is gossip? Broadcast strategies FLOODING

  13. What is gossip? Broadcast strategies ISSUES FLOODING

  14. What is gossip? Broadcast strategies ISSUES FLOODING

  15. What is gossip? Broadcast strategies ISSUES FLOODING

  16. What is gossip? Broadcast strategies ISSUES COMPLEXITY FLOODING

  17. What is gossip? Broadcast strategies ISSUES COMPLEXITY TIME: O(D) MESSAGE: O(m) (or O(D*m) ) FLOODING

  18. What is gossip? Broadcast strategies FLOODING GOSSIP STRUCTURED

  19. What is gossip? Broadcast strategies GOSSIP

  20. What is gossip? Broadcast strategies ● choice of active edge ● randomized vs. deterministic ● time complexity GOSSIP

  21. What is gossip? Broadcast strategies ● choice of active edge ● randomized vs. deterministic ● time complexity ? GOSSIP

  22. Applications

  23. Applications DATABASE REPLICATION

  24. Applications 1. Direct mail 2. Anti-entropy 3. Rumor mongering ● PUSH ● PULL ● PUSH-PULL DATABASE REPLICATION

  25. Applications RESOURCE DISCOVERY

  26. Applications RESOURCE DISCOVERY DISTRIBUTED COMPUTATION

  27. Applications NODE FAILURE DETECTION RESOURCE DISCOVERY DISTRIBUTED COMPUTATION

  28. Basic algorithms

  29. Naive solution: simulated flooding R[v] = rumor of v 2 1 REPEAT D times R’ = ∅ FOR t = 1 to ∆ 3 4 exchange rumors in R[v] with n[v][t] add all received rumors to R’ R[v] = R[v] ∪ R’

  30. Naive solution: simulated flooding R[v] = rumor of v 2 1 REPEAT D times R’ = ∅ FOR t = 1 to ∆ 3 4 exchange rumors in R[v] with n[v][t] add all received rumors to R’ R[v] = R[v] ∪ R’

  31. Naive solution: simulated flooding R[v] = rumor of v 2 1 REPEAT D times R’ = ∅ FOR t = 1 to ∆ 3 4 exchange rumors in R[v] with n[v][t] add all received rumors to R’ R[v] = R[v] ∪ R’

  32. Naive solution: simulated flooding R[v] = rumor of v 2 1 REPEAT D times R’ = ∅ FOR t = 1 to ∆ 3 4 exchange rumors in R[v] with n[v][t] add all received rumors to R’ R[v] = R[v] ∪ R’

  33. Naive solution: simulated flooding COMPLEXITY 2 1 TIME: O(∆*D) 3 4 MESSAGE: O(m*D)

  34. Classic solution: uniform gossip REPEAT ? times choose a uniformly random neighbor PUSH-PULL rumors in R[v] with n[v][t] add received rumors to R[v]

  35. Classic solution: uniform gossip REPEAT ? times choose a uniformly random neighbor PUSH-PULL rumors in R[v] with n[v][t] add received rumors to R[v]

  36. Classic solution: uniform gossip REPEAT ? times choose a uniformly random neighbor PUSH-PULL rumors in R[v] with n[v][t] add received rumors to R[v]

  37. Classic solution: uniform gossip REPEAT ? times choose a uniformly random neighbor PUSH-PULL rumors in R[v] with n[v][t] add received rumors to R[v]

  38. Classic solution: uniform gossip GIAKKOUPIS ‘12 TIME: O(log n / φ)

  39. Classic solution: uniform gossip GIAKKOUPIS ‘12 TIME: O(log n / φ) φ ?!

  40. Graph conductance VOLUME CUT CONDUCTANCE GRAPH CONDUCTANCE

  41. Graph conductance It measures how much the network is bottlenecked

  42. Graph conductance It measures how much the network is bottlenecked θ(1/n)

  43. Graph conductance It measures how much the network is bottlenecked θ(1/n) θ(1)

  44. Graph conductance It measures how much the network is bottlenecked θ(1/n) θ(1) θ(1/n^2)

  45. Advanced algorithms

  46. Conductance Independent results NEIGHBOR EXCHANGE PROBLEM

  47. Conductance Independent results NEIGHBOR EXCHANGE PROBLEM COMMON IDEA Solve NEP + compose it D times

  48. Conductance Independent results NEIGHBOR EXCHANGE PROBLEM COMMON IDEA Solve NEP + compose it D times RESULTS (global) RANDOMIZED O(D*log^3 n) DETERMINISTIC O(D*log n + log^2 n)

  49. NEP: randomized (1) NEIGHBOR EXCHANGE PROBLEM

  50. NEP: randomized (1) NEIGHBOR EXCHANGE PROBLEM QUALITATIVE IDEA Run uniform gossip for a while… + … remove some edges … + do it again

  51. NEP: randomized (1) NEIGHBOR EXCHANGE PROBLEM Superstep(G, τ): 1. UniformGossip algorithm with respect to F [i] for τ rounds. K[i]: order of the random activated edges 2. UniformGossip Krev[i], the reverse process of the one realized in Step 1 3. (Pruning) Set of pruned directed edges P [i] = (u, w) : u received from v 4. Set F[i+1] := F[i] − P[i] and i := i + 1

  52. NEP: randomized (1) NEIGHBOR EXCHANGE PROBLEM Superstep(G, τ): 1. UniformGossip algorithm with respect to F [i] for τ rounds. K[i]: order of the random activated edges 2. UniformGossip Krev[i], the reverse process of the one realized in Step 1 3. (Pruning) Set of pruned directed edges P [i] = (u, w) : u received from v 4. Set F[i+1] := F[i] − P[i] and i := i + 1

  53. NEP: randomized (1) NEIGHBOR EXCHANGE PROBLEM Superstep(G, τ): 1. UniformGossip algorithm with respect to F [i] for τ rounds. K[i]: order of the random activated edges 2. UniformGossip Krev[i], the reverse process of the one realized in Step 1 3. (Pruning) Set of pruned directed edges P [i] = (u, w) : u received from v 4. Set F[i+1] := F[i] − P[i] and i := i + 1

  54. NEP: randomized (1) NEIGHBOR EXCHANGE PROBLEM Superstep(G, τ): 1. UniformGossip algorithm with respect to F [i] for τ rounds. K[i]: order of the random activated edges 2. UniformGossip Krev[i], the reverse process of the one realized in Step 1 3. (Pruning) Set of pruned directed edges P [i] = (u, w) : u received from v 4. Set F[i+1] := F[i] − P[i] and i := i + 1

  55. NEP: randomized (1) NEIGHBOR EXCHANGE PROBLEM Superstep(G, τ): 1. UniformGossip algorithm with respect to F [i] for τ rounds. K[i]: order of the random activated edges 2. UniformGossip Krev[i], the reverse process of the one realized in Step 1 3. (Pruning) Set of pruned directed edges P [i] = (u, w) : u received from v 4. Set F[i+1] := F[i] − P[i] and i := i + 1

  56. NEP: randomized (1) NEIGHBOR EXCHANGE PROBLEM RESULT If τ = θ(log^2 n), we need only θ(log n) cycles

  57. NEP: randomized (1) NEIGHBOR EXCHANGE PROBLEM RESULT If τ = θ(log^2 n), we need only θ(log n) cycles NEP: θ(log^3 n)

  58. NEP: randomized (1) NEIGHBOR EXCHANGE PROBLEM RESULT If τ = θ(log^2 n), we need only θ(log n) cycles PROOF

  59. NEP: randomized (1) NEIGHBOR EXCHANGE PROBLEM RESULT If τ = θ(log^2 n), we need only θ(log n) cycles PROOF

  60. NEP: randomized (1) NEIGHBOR EXCHANGE PROBLEM RESULT If τ = θ(log^2 n), we need only θ(log n) cycles PROOF φ=Ω(1/log n)

  61. NEP: randomized (1) NEIGHBOR EXCHANGE PROBLEM RESULT If τ = θ(log^2 n), we need only θ(log n) cycles PROOF F ← F/2 φ=Ω(1/log n)

  62. NEP: randomized (2) NEIGHBOR EXCHANGE PROBLEM

  63. NEP: randomized (2) NEIGHBOR EXCHANGE PROBLEM QUALITATIVE IDEA Run simulated flooding for a while… + … add some edges … + do it again

  64. NEP: randomized (2) NEIGHBOR EXCHANGE PROBLEM R[v] = v WHILE Γ[v]\R[v] = ∅ pick Θ(log^2 n) random edges in Γ[v]\R[v] d = Θ(log^2 n); E’ = all newly picked edges Flood in R[v] along E’-edges for d-hops add all received rumors to R[v]

  65. NEP: randomized (2) NEIGHBOR EXCHANGE PROBLEM R[v] = v WHILE Γ[v]\R[v] = ∅ pick Θ(log^2 n) random edges in Γ[v]\R[v] d = Θ(log^2 n); E’ = all newly picked edges Flood in R[v] along E’-edges for d-hops add all received rumors to R[v]

  66. NEP: randomized (2) NEIGHBOR EXCHANGE PROBLEM R[v] = v WHILE Γ[v]\R[v] = ∅ pick Θ(log^2 n) random edges in Γ[v]\R[v] d = Θ(log^2 n); E’ = all newly picked edges Flood in R[v] along E’-edges for d-hops add all received rumors to R[v]

  67. NEP: randomized (2) NEIGHBOR EXCHANGE PROBLEM R[v] = v WHILE Γ[v]\R[v] = ∅ pick Θ(log^2 n) random edges in Γ[v]\R[v] d = Θ(log^2 n); E’ = all newly picked edges Flood in R[v] along E’-edges for d-hops add all received rumors to R[v] O(log^6 n)

  68. NEP: deterministic NEIGHBOR EXCHANGE PROBLEM R[v] = v WHILE Γ[v]\R[v] = ∅ pick Θ(log^2 n) random edges in Γ[v]\R[v] d = Θ(log^2 n); E’ = all newly picked edges Flood in R[v] along E’-edges for d-hops add all received rumors to R[v]

  69. NEP: deterministic NEIGHBOR EXCHANGE PROBLEM R[v] = v WHILE Γ[v]\R[v] = ∅ arbitrarily pick one edge in Γ[v]\R[v] d = 2log n ; E’ = all newly picked edges Flood in R[v] along E’-edges for d-hops add all received rumors to R[v]

  70. NEP: deterministic NEIGHBOR EXCHANGE PROBLEM RESULT We need only log n cycles

Recommend


More recommend