/
Approximation of Approximation of

Approximation of - PowerPoint Presentation

celsa-spraggs
celsa-spraggs . @celsa-spraggs
Follow
386 views
Uploaded On 2017-06-26

Approximation of - PPT Presentation

δ Timeliness Carole DelporteGallet LIAFA UMR 7089 Paris VII Stéphane Devismes VERIMAG UMR 5104 Grenoble I Hugues Fauconnier LIAFA UMR 7089 Paris VII LIAFA Motivation ID: 563518

sss 2010 correct approximation 2010 sss approximation correct process algorithm true timeliness processes time tpq message eventually extraction proposition local predicates link

Share:

Link:

Embed:

Download Presentation from below link

Download Presentation The PPT/PDF document "Approximation of" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.


Presentation Transcript

Slide1

Approximation of δ-Timeliness

Carole Delporte-Gallet, LIAFA UMR 7089, Paris VIIStéphane Devismes, VERIMAG UMR 5104, Grenoble IHugues Fauconnier, LIAFA UMR 7089, Paris VII

LIAFASlide2

Motivation

SettingsAsynchronous message-passing distributed system with process crashesProblem ∃t, ∃ P = p, …,q such that ∀t’>t every message sent through P arrives to q in at most δ time unitsOutput all correct processes eventually

agree on such a path

2

SSS'2010

22/09/2010

We want to solve this problem with a general algorithmSlide3

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 unitsPɸ

P ⇔∃t such that ∀t

’>t

, ɸP(

t’) = trueP

ɸP is true ⇔ ɸ

P is eventually forever trueP

ɸP is false ⇔ ɸP

is infinitely often false

Set of predicates

S

P

e.g., {

P

ɸ

P

: P is an elementary path from p to q }If ∃P ∈ SP : P is true in the run, thenAll correct processes eventually agree on P’ such that P’ is true in the run e.g., problem of the previous slide

22/09/2010

SSS'2010

3Slide4

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 tickApproximate (P,Q) P,Q are predicatesP ⇒

Qe.g, (δ-timeliness of

P, Δ

-timeliness of P) with

Δ≥ δSet of pairs of predicates (

P0,Q0), (

P1,Q

1) …Extraction Algorithm If ∃P

i

:

P

i

is true in the run, then

All correct processes eventually agree on

Q

j

such that Qj is true in the run 22/09/2010SSS'20104Slide5

Framework (3/3)Other problems:

Extraction of tree containing at least all correct processes whose all paths from the root are Δ-timelyExtraction of ring among all correct processes whose all links are Δ-timely…22/09/2010SSS'20105Slide6

Outline

ModelApproximation and ExtractionCase-Study: δ-TimelinessApproximation for δ-Timeliness of a linkExtraction of δ-Timeliness graphsConclusion 6SSS'201022/09/2010Slide7

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 graphMessagesLinks: Reliable (no message loss)FIFO7SSS'201022/09/2010Slide8

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)22/09/2010

SSS'2010

8Slide9

Approximation AlgorithmLet (

P,Q) be a pair of predicates such that P⇒QAn approximation algorithm A for process p of predicates (P,Q) is an algorithm with a variable OutAp such that:If P is true, then OutAp is eventually forever true If Q is false, then Out

Ap is false infinitely often

22/09/2010

SSS'2010

9Slide10

ExampleAn approximation algorithm

A for process q of (Tpq(δ),Tpq(Δ))If (p,q) is δ-timely, then OutAq

is eventually forever true If (p,q) is not (p,q) is

Δ-timely, , then Out

Aq is false infinitely often

Remark: If (p,q) is not

δ-timely but is (p,q) is Δ-timely, nothing to guarantee

22/09/2010

SSS'2010

10Slide11

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 on p only,

e.g:Tpq(δ

) is local to q

Pp is crashed

is local to p

Sketch: Each time p modifies

OutAp

, it (reliably) broadcasts the new valueWhenever a process q (included p

) delivers a message from

p

,

q

updates

Out

B

q

with the new value and, then sets OutBq to true again 22/09/2010SSS'201011Slide12

Composition of approximations

Proposition: If AP,Q and 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

22/09/2010

SSS'2010

12Slide13

Extraction Algorithm (1/3)Let (

Pi,Qi)i∈I be a set of pairs of predicatesExtraction algorithm Each process p has a variable dpIn each run where ⋁i∈IPi = true, ∃i0∈I:

Eventual Agreement: ∃t: after time t, d

p =

i0 for all correct process p

Validity: Q

i0 is true

22/09/2010

SSS'2010

13Slide14

Extraction Algorithm (2/3)

Proposition: Let (Pi,Qi)i∈I be a set of predicates.. If (Ai)i∈I is a set of approximation algorithms of (Pi,Q

i)i∈I, then there exists an

extraction algorithm for (P

i,Qi

)i∈I

Sketch: Acc[i

] initialized to 0p increments

Acc[i] each time OutAi

p

become 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 Ip chooses i0 such that Acc[i0]

is minimum

22/09/2010

SSS'2010

14Slide15

Extraction Algorithm (3/3)

Proposition: Let (Pi,Qi)i∈I be a set of predicates. If (Ai)i∈I is a set of approximation algorithms of (Pi,Q

i)i∈I, then there exists an

communication-efficient extraction algorithm

A for (P

i,Qi

)i∈ICommunication-efficiency

: In each run where ⋁

i∈IPi = true, ∃t

: after time

t

j

∈I

: every process

p

reads only

OutAjpNo message is sent by A 22/09/2010SSS'201015Slide16

Summary22/09/2010

SSS'201016Local approximation of predicateGlobal approximation of predicate

Composition

Extraction Algorithm

Local approximation of predicate

Global approximation of predicateSlide17

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)22/09/2010SSS'2010

17Slide18

Approximation of Link δ-Timeliness (2/3)

Theorem: If processes are equipped of perfectly synchronized clocks, then approximation of (Tpq(δ) , Tpq(δ+K))

is possibleTheorem: If ∃ a

Γ-timely

path from

q to p, then

approximation of (Tpq(δ

) , Tpq

(δ+Γ+K))

is

possible

These

results

can

be generalized for paths(Hence we solve our initial problem) 22/09/2010

SSS'2010

18Slide19

Approximation of Link δ-Timeliness (3/3)

Assume processes are equipped of perfectly synchronized clocksApproximation algorithm of (Tpq(δ) , Tpq(δ+K)) for process q

Every K time, p send to q

a message including its local timeIf a message spends more than

δ time or q

does not receive message from p during δ

+K, thenOutAp

← falseOutA

p is reset to true every n time

22/09/2010

SSS'2010

19Slide20

Approximation of crashed processes

Approximation for every correct process q of (Pp is crashed,Pp is crashed)If p is faulty, then OutAq is eventually forever true If

p is correct, then OutAq

is false infinitely often Algorithm:

OutAp

← falsep regularly sends messages to q

,Upon receiving a message from p:Out

Aq

← falseOutAq

is reset to true every

n

time

22/09/2010

SSS'2010

20Slide21

Extraction of δ-Timeliness graphs

I.e., a graph G(V,E) such thatAll processes in ∏/V is crashedE only contains δ-Timely linksEasy: TGGi ≣⋀e∈Edges(Gi

) Te(δ)

⋀ ⋀ v

∉Nodes(Gi)

Pv

is crashed

22/09/2010

SSS'2010

21Slide22

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 dicut of 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

22/09/2010

SSS'2010

22

Correct

FaultySlide23

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 processes22/09/2010SSS'2010

23Slide24

Extraction of δ-Timeliness graphs

We can extract:A tree containing at least all correct processes whose all paths from the root are Δ-timelyA ring among all correct processes whose all links are Δ-timely…22/09/2010SSS'2010

24Slide25

ConclusionGeneral

framework to approximate and extract propertiesCase study: δ-TimelinessPerspective: approximate other properties, e.g., general timeliness

22/09/2010SSS'2010

25Slide26

Thank you

22/09/2010SSS'201026