1 / 26

Approximation of δ -Timeliness

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

ull
Download Presentation

Approximation of δ -Timeliness

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 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

  2. 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

  3. 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

  4. 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

  5. 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

  6. Outline • Model • Approximation and Extraction • Case-Study: δ-Timeliness • Approximation for δ-Timeliness of a link • Extraction of δ-Timeliness graphs • Conclusion SSS'2010

  7. 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

  8. 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

  9. 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

  10. 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

  11. 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

  12. 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

  13. 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

  14. 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

  15. 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

  16. Summary Local approximation of predicate Local approximation of predicate Global approximation of predicate Global approximation of predicate Composition Extraction Algorithm SSS'2010

  17. 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

  18. 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

  19. 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

  20. 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

  21. 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

  22. 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

  23. 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

  24. 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

  25. Conclusion • General frameworkto approximate and extractproperties • Case study: δ-Timeliness • Perspective: approximateotherproperties, e.g., generaltimeliness SSS'2010

  26. Thankyou SSS'2010

More Related