Consensus with Partial Synchrony
Pedro Ferreira do Souto
Departamento de Engenharia Informtica Faculdade de Engenharia Universidade do Porto
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 1 / 55
Consensus with Partial Synchrony Pedro Ferreira do Souto - - PowerPoint PPT Presentation
Consensus with Partial Synchrony Pedro Ferreira do Souto Departamento de Engenharia Informtica Faculdade de Engenharia Universidade do Porto Pedro F. Souto (FEUP) Consensus with Partial Synchrony 1 / 55 Outline Failure Detection 1
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 1 / 55
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 2 / 55
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 2 / 55
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 2 / 55
Failure Detection
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 3 / 55
Failure Detection
◮ The number m of steps is taken to be the smallest integer that is
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 4 / 55
Failure Detection
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 5 / 55
Failure Detection
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 6 / 55
Failure Detection
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 7 / 55
Consensus
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 8 / 55
Consensus Problem Definition
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 9 / 55
Consensus Problem Definition
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 10 / 55
Consensus Problem Definition
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 11 / 55
Consensus Problem Definition
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 12 / 55
Consensus Solution by Transformation of Synchronous Algorithms
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 13 / 55
Consensus Solution by Transformation of Synchronous Algorithms
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 14 / 55
Consensus Solution by Transformation of Synchronous Algorithms
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 15 / 55
Consensus Solution by Transformation of Synchronous Algorithms
◮ a round r message from Rj, or ◮ an inform-stopped(j)i input from Qi
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 16 / 55
Consensus Solution by Transformation of Synchronous Algorithms
⋆ But Qi begins its timeout activity at the start of the timed execution.
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 17 / 55
Consensus Solution by Transformation of Synchronous Algorithms
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 18 / 55
Consensus Solution by Transformation of Synchronous Algorithms
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 19 / 55
Consensus Solution by Transformation of Synchronous Algorithms
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 20 / 55
Consensus Solution by Transformation of Synchronous Algorithms
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 21 / 55
Consensus Solution by Transformation of Synchronous Algorithms
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 22 / 55
Consensus Solution by Transformation of Synchronous Algorithms
◮ All locally controlled steps occur at times that are multiples of ℓ2.
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 23 / 55
Consensus Solution by Transformation of Synchronous Algorithms
◮ For every r ≥ 1, since no message arrives between times ((r − 1)d, rd),
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 24 / 55
Consensus Solution by Transformation of Synchronous Algorithms
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 25 / 55
Consensus Solution by Transformation of Synchronous Algorithms
◮ The sequence of messages process i sends in the interval [(r − 1)d, rd)
◮ The behavior caused by the failure of i in A corresponds to a possible
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 26 / 55
Consensus PSynchAgreement
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 27 / 55
Consensus PSynchAgreement
◮ Furthermore, the upper bound is somewhat large.
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 28 / 55
Consensus PSynchAgreement
◮ In each round, Ri tries to reach a decision. ◮ Ri can decide 0 only in even numbered rounds. ◮ Ri can decide 1 only in odd numbered rounds.
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 29 / 55
Consensus PSynchAgreement
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 30 / 55
Consensus PSynchAgreement
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 31 / 55
Consensus PSynchAgreement
Proof Lemma 25.11
Proof Lemma 25.11
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 32 / 55
Consensus PSynchAgreement
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 33 / 55
Consensus PSynchAgreement
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 34 / 55
Consensus PSynchAgreement
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 35 / 55
Consensus PSynchAgreement
Proof
Proof
Proof
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 36 / 55
Consensus PSynchAgreement
Skip lemma proofs Pedro F. Souto (FEUP) Consensus with Partial Synchrony 37 / 55
Consensus PSynchAgreement
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 38 / 55
Consensus PSynchAgreement
Proof
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 39 / 55
Consensus PSynchAgreement
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 40 / 55
Consensus PSynchAgreement
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 41 / 55
Consensus PSynchAgreement
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 42 / 55
Consensus PSynchAgreement
◮ A sequence of non-quiet rounds, numbered up to f + 1 ◮ Followed by a single quiet round, say r.
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 43 / 55
Consensus PSynchAgreement
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 44 / 55
Consensus PSynchAgreement
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 45 / 55
Consensus PSynchAgreement
proof
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 46 / 55
Consensus PSynchAgreement
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 47 / 55
Consensus PSynchAgreement
j does not fail in the middle of its attempt, then R′ j
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 48 / 55
Consensus PSynchAgreement
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 49 / 55
Consensus PSynchAgreement
◮ Usually, together with access to a clock, that measures the time
◮ What happened to this assumption? Pedro F. Souto (FEUP) Consensus with Partial Synchrony 50 / 55
Consensus More Partially Synchronous Models
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 51 / 55
Consensus More Partially Synchronous Models
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 52 / 55
Consensus More Partially Synchronous Models
◮ To ensure termination, a process should not wait for messages from
◮ To ensure agreement, every decision should take into account the
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 53 / 55
Further Reading
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 54 / 55
Further Reading
Pedro F. Souto (FEUP) Consensus with Partial Synchrony 55 / 55