260 likes | 379 Views
LIAFA. Approximation of δ -Timeliness. Carole Delporte-Gallet , LIAFA UMR 7089 , Paris VII Stéphane Devismes , VERIMAG UMR 5104, Grenoble I Hugues Fauconnier , LIAFA UMR 7089 , Paris VII. Motivation. Settings Asynchronous message-passing distributed system with process crashes
E N D
LIAFA Approximation of δ-Timeliness Carole Delporte-Gallet, LIAFA UMR 7089, Paris VII Stéphane Devismes, VERIMAG UMR 5104, Grenoble I Hugues Fauconnier, LIAFA UMR 7089, Paris VII
Motivation • Settings • Asynchronous message-passing distributed system with process crashes • Problem • ∃t, ∃ P = p, …,q such that ∀t’>t every message sent through P arrives to q in at most δtime units • Output • all correct processes eventually agree on such a path We want to solve this problem with a general algorithm SSS'2010
Framework (1/3) • Eventual Property • e.g., δ-timeliness of a path: ɸP(t) ⇔ every message sent through P= p,…,q at time t arrives to q in at most δtime units • PɸP⇔∃t such that ∀t’>t, ɸP(t’) = true • PɸP is true ⇔ ɸP is eventually forever true • PɸP is false ⇔ ɸP is infinitely often false • Set of predicates SP • e.g., {PɸP: P is an elementary path from p to q} • If ∃P ∈ SP : P is true in the run, then • All correct processes eventually agree on P’ such that P’ is true in the run • e.g., problem of the previous slide SSS'2010
Framework (2/3) • Approximate a property is often too hard ! • e.g.,δ-timeliness of a link (p,q): Proposition: In any algorithm that approximates the δ-timeliness of a (p,q), p must eventually sends messages at every clock tick • Approximate (P,Q) • P,Q are predicates • P ⇒ Q • e.g, (δ-timeliness of P,Δ-timeliness of P) with Δ≥ δ • Set of pairs of predicates (P0,Q0), (P1,Q1) … • Extraction Algorithm • If ∃Pi : Pi is true in the run, then • All correct processes eventually agree on Qj such that Qj is true in the run SSS'2010
Framework (3/3) • Other problems: • Extraction of tree containing at least all correct processes whose all paths from the root are Δ-timely • Extraction of ring among all correct processes whose all links are Δ-timely • … SSS'2010
Outline • Model • Approximation and Extraction • Case-Study: δ-Timeliness • Approximation for δ-Timeliness of a link • Extraction of δ-Timeliness graphs • Conclusion SSS'2010
System Settings • Processes: • Synchronous (able to take a step at each clock tick → accurately measure the time) • Some process crashes (correct / faulty) • Communication: • Fully connected graph • Messages • Links: • Reliable (no message loss) • FIFO SSS'2010
Reliable Broadcast (possible because links are reliable) • Two primitives:Broadcast(m), Deliver(m) • Validity: If a correct process invokes Broadcast(m) then it eventually executes Deliver(m) • Agreement: If a process executes Deliver(m), then all other correct processes eventually execute Deliver(m) • Integrity: For every message m, every process executes Deliver(m) at most once, and only if sender(m) previously invokes Broadcast(m) SSS'2010
Approximation Algorithm • Let (P,Q) be a pair of predicates such that P⇒Q • An approximation algorithm A for process p of predicates (P,Q) is an algorithm with a variable OutAp such that: • If P is true, then OutApis eventually forever true • If Q is false, then OutApis false infinitely often SSS'2010
Example • An approximation algorithm A for process q of (Tpq(δ),Tpq(Δ)) • If (p,q) is δ-timely, then OutAqis eventually forever true • If (p,q) is not (p,q) is Δ-timely, , then OutAqis false infinitely often • Remark: If (p,q) is not δ-timely but is (p,q) is Δ-timely, nothing to guarantee SSS'2010
From local to global approximation • Proposition: If A is an approximation algorithm for p of predicates local to p (P,Q), then for every correct process q there exists an approximation algorithm B for q of predicate (P,Q). • Local to p= depend onponly, e.g: • Tpq(δ) is local to q • Pp is crashedis local top • Sketch: • Each time p modifies OutAp , it (reliably) broadcasts the new value • Whenever a process q (included p) delivers a message from p, q updates OutBq with the new value and, then sets OutBqto true again SSS'2010
Composition of approximations • Proposition: If AP,Qand AP’,Q’are approximation algorithms for correct process p of (P,Q) and for correct process q of predicates (P’,Q’), then for every correct process r there exists an approximation algorithm for r of predicate (P∧P’,Q∧Q’). • Sketch: Similar to the previous proposition SSS'2010
Extraction Algorithm (1/3) • Let (Pi,Qi)i∈Ibe a set of pairs of predicates • Extraction algorithm • Each process p has a variable dp • In each run where ⋁i∈IPi = true, ∃i0∈I: • Eventual Agreement: ∃t: after time t, dp= i0 for all correct process p • Validity:Qi0 is true SSS'2010
Extraction Algorithm (2/3) • Proposition: Let (Pi,Qi)i∈Ibe a set of predicates..If (Ai)i∈Iis a set of approximation algorithms of (Pi,Qi)i∈I, then there exists an extraction algorithm for (Pi,Qi)i∈I • Sketch: • Acc[i] initialized to 0 • p increments Acc[i] each time OutAipbecome false • p regularly sends Acc to all other process • Upon receiving an array A, a process sets Acc[i] to max(A[i],Acc[i]) for all I • p chooses i0 such that Acc[i0] is minimum SSS'2010
Extraction Algorithm (3/3) • Proposition: Let (Pi,Qi)i∈Ibe a set of predicates.If (Ai)i∈Iis a set of approximation algorithms of (Pi,Qi)i∈I, then there exists an communication-efficient extraction algorithm Afor (Pi,Qi)i∈I • Communication-efficiency: In each run where ⋁i∈IPi = true, ∃t: after time t • ∃j∈I : every process p reads only OutAjp • No message is sent by A SSS'2010
Summary Local approximation of predicate Local approximation of predicate Global approximation of predicate Global approximation of predicate Composition Extraction Algorithm SSS'2010
Approximation of Link δ-Timeliness (1/3) • Proposition: Without additional assumption on the system, it is not possible to approximate (Tpq(δ) , Tpq(Δ)) • Sketch: If the links are asynchronous and the local clocks are not synchronized, then it is impossible to evaluate the time to traverse the link (p,q) SSS'2010
Approximation of Link δ-Timeliness (2/3) • Theorem: If processes are equipped of perfectlysynchronizedclocks, then approximation of (Tpq(δ) , Tpq(δ+K))is possible • Theorem: If ∃ a Γ-timelypathfromq to p, then approximation of (Tpq(δ) , Tpq(δ+Γ+K))is possible • Theseresultscanbegeneralized for paths (Hencewesolveour initial problem) SSS'2010
Approximation of Link δ-Timeliness (3/3) • Assume processes are equipped of perfectlysynchronizedclocks • Approximation algorithm of (Tpq(δ) , Tpq(δ+K)) for process q • Every K time, p send to qa message including its local time • If a message spends more than δtime or q does not receive message from p during δ+K, then • OutAp← false • OutApis reset to true every ntime SSS'2010
Approximation of crashedprocesses • Approximation for every correct process qof (Pp is crashed,Pp is crashed) • If pis faulty, then OutAqis eventually forever true • If p is correct, then OutAqis false infinitely often • Algorithm: • OutAp← false • p regularly sends messages to q, • Upon receiving a message from p: • OutAq← false • OutAqis reset to true every ntime SSS'2010
Extraction of δ-Timeliness graphs • I.e., a graph G(V,E)suchthat • All processes in ∏/V is crashed • E only contains δ-Timely links • Easy: TGGi≣⋀e∈Edges(Gi) Te(δ) ⋀ ⋀ v∉Nodes(Gi)Pv is crashed SSS'2010
Properties of the extracted graph (1/2) • Proposition: If Gi is the extracted graph, then (Nodes(Gi[Correct(R)]), Nodes(Gi[Faulty(R)])) is a dicutof Gi • (X,Y) is a dicut of G=(S,E)iff(X,Y) is a partition of S such that there is no (directed) link from Y to X Correct Faulty SSS'2010
Properties of the extracted graph (2/2) • Proposition: If there is at least one correct process and (Gi)i∈I only contains strongly connected graphs, then the extracted graph only contains exactly all the correct processes SSS'2010
Extraction of δ-Timeliness graphs • Wecanextract: • A tree containing at least all correct processes whose all paths from the root are Δ-timely • A ring among all correct processes whose all links are Δ-timely • … SSS'2010
Conclusion • General frameworkto approximate and extractproperties • Case study: δ-Timeliness • Perspective: approximateotherproperties, e.g., generaltimeliness SSS'2010
Thankyou SSS'2010