Distributed Computing in Fault-Prone Dynamic Networks
Philipp Brandes, Friedhelm Meyer auf der Heide
ETH Zurich – Distributed Computing Group – www.disco.ethz.ch
Distributed Computing in Fault-Prone Dynamic Networks Philipp - - PowerPoint PPT Presentation
Distributed Computing in Fault-Prone Dynamic Networks Philipp Brandes, Friedhelm Meyer auf der Heide ETH Zurich Distributed Computing Group www.disco.ethz.ch Introduction Moving nodes in a dynamic network with changing connections
ETH Zurich – Distributed Computing Group – www.disco.ethz.ch
◮ Moving nodes in a dynamic network with changing
◮ Moving nodes in a dynamic network with changing
◮ Given highly dynamic network with n nodes ◮ But n unknown ◮ Needed for many basic tasks
◮ all-to-all dissemination ◮ determining median
◮ Counting important task by itself
◮ Introduction ◮ Model ◮ Impossibility of strong counting ◮ Weak counting ◮ Strong counting with upper bound N
◮ Gt = (V , Et) with V = |n| ◮ Connected in every round, but no other restriction on Et ◮ Nodes communicate via broadcast ◮ Each node has unique identifier (UID) ◮ T-interval dynamics: ∃stable, connected subgraph for the
◮ Solved by Kuhn et al. in O
T
◮ Gt = (V , Et) with V = |n| ◮ Connected in every round, but no other restriction on Et ◮ Nodes communicate via broadcast ◮ Each node has unique identifier (UID) ◮ T-interval dynamics: ∃stable, connected subgraph for the
◮ Solved by Kuhn et al. in O
T
◮ Assume algorithm A with runtime bound t(n) ◮ Consider edges e1, e2 which create segments of length n
◮ Assume algorithm A with runtime bound t(n) ◮ Consider edges e1, e2 which create segments of length n ◮ Always faulty during the first t(n) steps if size of the ring
p
◮ Assume algorithm A with runtime bound t(n) ◮ Consider edges e1, e2 which create segments of length n ◮ Always faulty during the first t(n) steps if size of the ring
p
◮ Strong Counting is not possible under random edge faults
◮ Guess k = 2, 4, 8, . . . ◮ Use T-dissemination to spread UIDs ◮ Count UIDs to obtain n
T
◮ Guess k = 2, 4, 8, . . . ◮ Use T-dissemination to spread UIDs ◮ Count UIDs to obtain n
T
◮ Guess k = 2, 4, 8, . . . ◮ Use T-dissemination to spread UIDs ◮ Count UIDs to obtain n
T
◮ Guess k = 2, 4, 8, . . . ◮ Use T-dissemination to spread UIDs ◮ Count UIDs to obtain n
T
◮ Guess k = 2, 4, 8, . . . ◮ Use T-dissemination to spread UIDs ◮ Count UIDs to obtain n
T
◮ Guess k = 2, 4, 8, . . . ◮ Use T-dissemination to spread UIDs ◮ Count UIDs to obtain n
T
◮ Adapt dissemination such that it can handle failures
x
◮ Use Disseminate(A, l, x) to achieve s-dissemination.
◮ If p > 1
T , set s = T 2 log(T) log
p
1 1−p · e · k s .
◮ If p ≤ 1
T , set s = T 2 , and l = 2 · 1 1−p · e · k s .
◮ Note that s = T
x
T , then all
T
log
p
1 1−p
T , they do so after O
T
2T .
◮ k-Verification
◮ Send committee ID or ⊥ if at least two committees are known
◮ Use upper bound N ≥ n and reuse k-verification
T , then it needs
T ·
log
p
1 1−p + log
p
T , then runtime O
T + log
p
◮ If p is unknown, strong counting is not possible
◮ If p is unknown, strong counting is not possible ◮ Weak counting with log n overhead
◮ Let k′ = 2, 4, 8, . . . be powers of 2 (upper bound on runtime) ◮ Let k = 2, 4, 8, . . . be powers of 2 (estimation number of
nodes)
◮ Set p such that runtime bound is met
◮ Strong counting not possible without upper bound ◮ Strong counting possible with upper bound on n ◮ Weak counting possible with small overhead
◮ Strong counting not possible without upper bound ◮ Strong counting possible with upper bound on n ◮ Weak counting possible with small overhead ◮ Other connectivity models?
◮ Strong counting not possible without upper bound ◮ Strong counting possible with upper bound on n ◮ Weak counting possible with small overhead ◮ Other connectivity models?