Properties of � (cont.) Proposition. P + �� P + . q · · · q F ( t ) failure pattern ∅ ∅ q · · · q history of P + H ( p , t ) ∅ ∅ · · · steps of p 18/32
Properties of � (cont.) Proposition. P + �� P + . q · · · q F ( t ) failure pattern ∅ ∅ q · · · q history of P + H ( p , t ) ∅ ∅ · · · steps of p q · · · O ( p , t ) output of transformation ∅ ∅ ∅ 18/32
Properties of � (cont.) Proposition. P + �� P + . q · · · q F ( t ) failure pattern ∅ ∅ q · · · q history of P + H ( p , t ) ∅ ∅ · · · steps of p q · · · O ( p , t ) output of transformation ∅ ∅ ∅ O �∈ P + . . . � is not reflexive! 18/32
Properties of � (cont.) “No problem, lets just consider the reflexive closure of � . . . ” 19/32
The reflexive closure of the CT relation � failure pattern-wise inclusion of histories D ⊑ D ′ ⇔ ∀ F ∈ E : D ( F ) ⊆ D ′ ( F ) 20/32
The reflexive closure of the CT relation � failure pattern-wise inclusion of histories D ⊑ D ′ ⇔ ∀ F ∈ E : D ( F ) ⊆ D ′ ( F ) ◮ very natural ◮ D ′ allows more possible histories ◮ D is “more precise” ◮ � good relation should extend ⊑ 20/32
The reflexive closure of the CT relation � failure pattern-wise inclusion of histories D ⊑ D ′ ⇔ ∀ F ∈ E : D ( F ) ⊆ D ′ ( F ) ◮ very natural ◮ D ′ allows more possible histories ◮ D is “more precise” ◮ � good relation should extend ⊑ There is an FD S + with P + ⊑ S + and P + �� S + . 20/32
Extended CT relation � ∗ “No problem, lets just add the history-wise inclusion . . . ” The patch rev.1.02 D � ∗ D ′ ⇔ ( D � D ′ ) ∨ ( D ⊑ D ′ ) 21/32
Extended CT relation � ∗ “No problem, lets just add the history-wise inclusion . . . ” The patch rev.1.02 D � ∗ D ′ ⇔ ( D � D ′ ) ∨ ( D ⊑ D ′ ) . . . investigate � ∗ : ◮ in async. systems: real-time properties not relevant ◮ two FDs that give information on failures of same “quality” and differ only in the time domain should be equivalent ◮ � study of time contraction 21/32
Time contraction ◮ Θ is a sequence of values from T 22/32
Time contraction ◮ Θ is a sequence of values from T ◮ e.g. Θ = 2 , 3 , 6 , 11 · · · · · · H ( p , ) H ( q , ) · · · H ( r , ) · · · t Θ . H ( p , ) Θ . H ( q , ) Θ . H ( r , )
Time contraction ◮ Θ is a sequence of values from T ◮ e.g. Θ = 2 , 3 , 6 , 11 · · · · · · H ( p , ) H ( q , ) · · · H ( r , ) · · · t Θ . H ( p , ) Θ . H ( q , ) Θ . H ( r , )
Time contraction ◮ Θ is a sequence of values from T ◮ e.g. Θ = 2 , 3 , 6 , 11 · · · · · · H ( p , ) H ( q , ) · · · H ( r , ) · · · t Θ . H ( p , ) Θ . H ( q , ) Θ . H ( r , )
Time contraction ◮ Θ is a sequence of values from T ◮ e.g. Θ = 2 , 3 , 6 , 11 · · · · · · H ( p , ) H ( q , ) · · · H ( r , ) · · · t Θ . H ( p , ) Θ . H ( q , ) Θ . H ( r , )
Time contraction ◮ Θ is a sequence of values from T ◮ e.g. Θ = 2 , 3 , 6 , 11 · · · · · · H ( p , ) H ( q , ) · · · H ( r , ) · · · t · · · Θ . H ( p , ) Θ . H ( q , ) · · · · · · Θ . H ( r , )
Time contraction ◮ Θ is a sequence of values from T ◮ e.g. Θ = 2 , 3 , 6 , 11 · · · · · · H ( p , ) H ( q , ) · · · H ( r , ) · · · t · · · Θ . H ( p , ) all possible time contractions Θ . H ( q , ) · · · of D : � D · · · Θ . H ( r , ) 22/32
Time contraction — indistinguishable runs H ( p , ) · · · Θ . H ( p , ) · · · 23/32
Time contraction — indistinguishable runs H ( p , ) · · · run ( p ) using D Θ . H ( p , ) · · · run ( p ) using � D 23/32
Time contraction — indistinguishable runs H ( p , ) · · · run ( p ) using D Θ . H ( p , ) · · · run ( p ) using � D ◮ � D and D only differ in their “relation to time” ◮ any asynchronous algorithm cannot distinguish D from � D 23/32
Time contraction — problem solving ◮ � D and D only differ in their “relation to time” ◮ and 24/32
Time contraction — problem solving ◮ � D and D only differ in their “relation to time” ◮ and Theorem TC. An algorithm A solves a problem P using D if and only if A solves P using � D 24/32
Time contraction — problem solving ◮ � D and D only differ in their “relation to time” ◮ and Theorem TC. An algorithm A solves a problem P using D if and only if A solves P using � D ◮ D and � D allow solving the same problems ◮ with the same algorithm ◮ but D and � D may not be equivalent C �� ∗ C (perfect clock) ◮ e.g., � 24/32
Time contraction — problem solving (cont.) D ′ failure detector layer D A asynchronous system layer 25/32
Time contraction — problem solving (cont.) D ′ failure detector layer D A asynchronous system layer � less operational relation would be required. . . 25/32
Time contraction also explains the DLS/Paxos vs. Ω paradox 26/32
On weakest failure detectors ∆ a set of FDs that is closed w.r.t. Θ-contraction. ∆ P ⊆ ∆ FDs in ∆ that can be used to solve problem P � arbitrary preorder Weakest failure detector A failure detector W P is a weakest to solve P if ◮ W P ∈ ∆ P ◮ ∀D ∈ ∆ P : D � W P 27/32
On weakest failure detectors ∆ a set of FDs that is closed w.r.t. Θ-contraction. ∆ P ⊆ ∆ FDs in ∆ that can be used to solve problem P � arbitrary preorder Weakest failure detector A failure detector W P is a weakest to solve P if ◮ W P ∈ ∆ P ◮ ∀D ∈ ∆ P : D � W P consequences: ◮ � W P ∈ ∆ P (Theorem TC) 27/32
On weakest failure detectors ∆ a set of FDs that is closed w.r.t. Θ-contraction. ∆ P ⊆ ∆ FDs in ∆ that can be used to solve problem P � arbitrary preorder Weakest failure detector A failure detector W P is a weakest to solve P if ◮ W P ∈ ∆ P ◮ ∀D ∈ ∆ P : D � W P consequences: ◮ � W P ∈ ∆ P (Theorem TC) ◮ if � extends ⊑ then 27/32
On weakest failure detectors ∆ a set of FDs that is closed w.r.t. Θ-contraction. ∆ P ⊆ ∆ FDs in ∆ that can be used to solve problem P � arbitrary preorder Weakest failure detector A failure detector W P is a weakest to solve P if ◮ W P ∈ ∆ P ◮ ∀D ∈ ∆ P : D � W P consequences: ◮ � W P ∈ ∆ P (Theorem TC) ◮ if � extends ⊑ then ◮ W P � � W P 27/32
On weakest failure detectors ∆ a set of FDs that is closed w.r.t. Θ-contraction. ∆ P ⊆ ∆ FDs in ∆ that can be used to solve problem P � arbitrary preorder Weakest failure detector A failure detector W P is a weakest to solve P if ◮ W P ∈ ∆ P ◮ ∀D ∈ ∆ P : D � W P consequences: ◮ � W P ∈ ∆ P (Theorem TC) ◮ if � extends ⊑ then ◮ W P � � W P ◮ from Theorem TC: � W P ∈ ∆ P 27/32
On weakest failure detectors ∆ a set of FDs that is closed w.r.t. Θ-contraction. ∆ P ⊆ ∆ FDs in ∆ that can be used to solve problem P � arbitrary preorder Weakest failure detector A failure detector W P is a weakest to solve P if ◮ W P ∈ ∆ P ◮ ∀D ∈ ∆ P : D � W P consequences: ◮ � W P ∈ ∆ P (Theorem TC) ◮ if � extends ⊑ then ◮ W P � � W P ◮ from Theorem TC: � W P ∈ ∆ P ◮ from def. of weakest: � W P � W P 27/32
On weakest failure detectors ∆ a set of FDs that is closed w.r.t. Θ-contraction. ∆ P ⊆ ∆ FDs in ∆ that can be used to solve problem P � arbitrary preorder Weakest failure detector A failure detector W P is a weakest to solve P if ◮ W P ∈ ∆ P ◮ ∀D ∈ ∆ P : D � W P consequences: ◮ � W P ∈ ∆ P (Theorem TC) ◮ if � extends ⊑ then ◮ W P � � W P ◮ from Theorem TC: � W P ∈ ∆ P ◮ from def. of weakest: � W P � W P ◮ � W P and W P are equivalent w.r.t. � 27/32
Good periods of weakest failure detectors Failure detector with “good periods”: H ∈ D φ φ t 28/32
Good periods of weakest failure detectors Failure detector with “good periods”: Θ . H ∈ � D t H ∈ D φ φ t 28/32
Good periods of weakest failure detectors Failure detector with “good periods”: Θ . H ∈ � D t H ∈ D φ φ t ◮ � D and D allow solving the same problems ◮ D has good period of just finite length ⇒ D cannot be used to solve non-trivial problems ◮ every weakest FD to solve some non-trivial problem has eventually forever good period (independently of � chosen) 28/32
Conclusions due to two-layered structure of the FD model: ◮ shortcomings of classic � relation 29/32
Conclusions due to two-layered structure of the FD model: ◮ shortcomings of classic � relation ◮ in the FD world, fine grained sufficient conditions for consensus are eliminated from the very beginning 29/32
Conclusions due to two-layered structure of the FD model: ◮ shortcomings of classic � relation ◮ in the FD world, fine grained sufficient conditions for consensus are eliminated from the very beginning ◮ eventually forever is necessary to solve non-trivial problems 29/32
Conclusions due to two-layered structure of the FD model: ◮ shortcomings of classic � relation ◮ in the FD world, fine grained sufficient conditions for consensus are eliminated from the very beginning ◮ eventually forever is necessary to solve non-trivial problems ◮ lower bound results are invalidated by “real systems” 29/32
Conclusions due to two-layered structure of the FD model: ◮ shortcomings of classic � relation ◮ in the FD world, fine grained sufficient conditions for consensus are eliminated from the very beginning ◮ eventually forever is necessary to solve non-trivial problems ◮ lower bound results are invalidated by “real systems” ◮ models that restrict the executions appear more appropriate ◮ � restrictions internally to the system instead of augmenting information 29/32
Recommend
More recommend