STABILIZATION & LOCALITY

1 / 71

# STABILIZATION & LOCALITY - PowerPoint PPT Presentation

STABILIZATION & LOCALITY. Shay Kutten Technion, Israel. Recall: Traditional methods are global. * Dijkstra- 1 fault- O( n ) Time ; f faults- o( fn ) time * [Katz, Perry]- 1 st general method, 1 fault- O( n ) time (1) self stab bcast freezees all nodes

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

## STABILIZATION & LOCALITY

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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
STABILIZATION & LOCALITY

Shay Kutten

Technion, Israel

* Dijkstra- 1 fault-O(n) Time; f faults- o(fn) time

* [Katz, Perry]- 1st general method, 1 fault- O(n) time

(1) self stab bcast freezees all nodes

(2) global self-stab snapshot to a leaser

(4) Leader initializes every node (if faulty)

(5) bcast unfreezes nodes

* Global reset (general) methods, 1 fault- O(n) time

[Afek, Kutten, Yung],

[Awerbuch, Patt-Shamir, Vargheses],

[Awerbuch, K., Mansour, Patt-Shamir, Varghese]

(1) bcast freezes all nodes

(2) reset to a specific initial state

[Dolev, Herman] superstabilizing global reset:

(2’) reset to a state “nearest” to current state

(still 1 fault- O(n) time)

8

8

8

8

8

8

8

8

8

8

7 = 8

8

7

8

7

token

7

8

7

7  8

Global effect example

8

8

8

8

8

8

8

8

8

8

7 = 8

8

7

token

8

7

7

8

8

7

Global effect example

8

8

8

8

8

8

8

8

8

8

7 = 8

8

7

token

8

7

8

8

8

7

Global effect example

7

8

8

8

8

8

8

8

8

8

8

8

7

8

7

token

7

8

7

Global effect example

7

7

8

8

8

8

8

8

8

8

8

7

8

7

token

7

8

7

Global effect example

7

7

8

7

8

8

8

8

8

8

8

7

8

7

token

7

8

7

Global effect example

7

7

8

7

8

7

8

8

8

8

8

7

8

7

token

7

8

7

Global effect example

General purpose computer

A

B

Fast stupid switch

E

C

D

Fast route from A to C, passing only B’s stupid switch, not B’s

general purpose computer. Possible since route is preset.

Another example of self stab in industry

A

B

E

C

D

In bcast how does A’s stupid switch detect that it already

Another example of self stab in Industry

A

B

E

C

D

(non- self stab) solution- stupid switch forwards only over ports

Another example of self stab in industry

A

B

fault

E

C

D

(non- self stab) solution- (stupid) switch forwards only over ports

Vulnerable to state fault: suppose the “tree” is really a cycle.

Another example of self stab in industry

root

A

pulse

pulse

E

B

pulse

pulse

C

D

Industrial Solutions to the self stab problem(1) Digital’s LAN Bridges Solution

root

A

pulse

pulse

E

B

pulse

pulse

C

D

pulse

Industrial Solutions to the self stab problem(1) Digital’s LAN Bridges Solution

root

A

6

6

E

B

C

D

Hop counter decreased. When hop counter reaches 0, discard

message.

root

A

6

6

E

B

5

5

C

D

Hop counter decreased. When hop counter reaches 0, discard

message.

root

A

E

B

5

5

C

D

4

4

4

Hop counter decreased. When hop counter reaches 0, discard

message.

root

A

E

B

3

3

3

C

D

4

4

4

3

Hop counter decreased. When hop counter reaches 0, discard

message.

Industrial Solutions to the self stab problem(1) Digital’s LAN Bridges Solution

root

A

2

2

E

B

2

3

3

2

C

D

3

Hop counter decreased. When hop counter reaches 0, discard

message.

Industrial solutions to the self stab problem(1) Digital’s LAN bridges solution
Scallability
• Industrial solutions are global. They do not scale well
• Conventional self stab protocols are global. They do not scale well

(Local “checking” [Awerbuch, Patt-Shamir, Varghese])

root

0

1

14

2

14

13

3

A cycle will be detected by a node seeing

Only its parent’s state and its own state.

12

4

5

11

6

10

7

Local detection [Afek, Kutten, Yung]

2(A)

1(A)

D

B

root

A

0(C)

C

0(A)

root

G

E

2(A)

1(A)

H

F

1(C)

0(A)

Local checking of a spanning tree, with a root

Any graph marking function is locally checkable

• Any algorithm global state is locally checkable
• For any bit complexity Cfunction with local checking bit complexity O(C)
• Some complexities for interesting marking functions are known
• Many other problems are open
Local checking of other functions

Goal: (unknown)f faults O(f) time for correction

Idea: Diameter of faults is f. Prevent faults expansion, shrink faulty area.

0

1

14

2

14

13

3

fault

12

4

22

11

23

25

24

5

10

6

7

Possibly consistent faults

From local checking to local correction

Goal: (unknown)f faults O(f) time for correction

Idea: Diameter of faults is f. Prevent faults expansion, shrink faulty area.

0

1

14

2

14

13

3

fault

12

4

22

11

23

(“impossible” if faulty majority)

25

24

5

10

6

7

Possibly consistent faults

From local checking to local correction

For example: need to prevent expansion of

Faulty area: recall Dijkstra’s algorithm

T

T

T

f faults create “gap” or “bump” of length f.

val2

val1

Adversary spoils (ones) minority of replicated val1 and of states.

Alg. Recovers val1 everywhere.

A

B

val5

D

C

E

val3

val4

val1

val1

A

B

val5

D

C

E

val1

val1

val’1 val1

val’1

Stable Value Problem

Adversary spoils (ones) minority of replicated val1 and of states.

Alg. Recovers val1 everywhere.

val2

val1

A

B

val5

D

C

E

val3

val4

Reducing a general problem to the Stable Value Problem

B can compute any func(val1, val2, val3,val4, val5) if it receives every correct vali.

val1

val1

A

B

“Simple” since E’s vote can be spoiled in D on the way to B.

val1

D

C

E

val1

val1

“Simple” but global solution:consensus voting

val1

A

B

Time = O(diameter) even for one fault.

Desired: few faults short time

val1

D

C

E

val1

val1

“Simple” but global solution:consensus voting

val1

Local voting does not solve

Minority faulty notes but local majority everywhere

In O(f) time

so majority is

non faulty

A

2f

In O(f) time

get >2f authentic

so majority is

non faulty

A

2f

C

C’s vote at A is

authentic

(though faulty)

B’s vote at A is

NOT authentic

B

1

A said: “1”

D

A

B

C

1

E

1

A said: “1”

D

A

B

C

A said: “0”

1

E

1

A said: “1”

D

A

B

C

A said: “0”

1

A

said:

“0”

E

1

A said: “1”

D

A

B

C

A said: “0”

1

A

said:

“0”

E

1

A said: “1”

D

A

B

C

A said: “0”

1

A

said:

“0”

E

1

A said: “1”

D

A

B

C

A said: “0”

1

A

said:

“0”

E

1

A said: “1”

D

A

B

C

A said: “0”

1

A

said:

“0”

E

Actually,

A said: “1”

1

A said: “1”

D

A

B

C

1

A

said:

“0”

E

Actually,

A said: “1”

1

A said: “1”

D

A

B

C

1

Actually,

A said:

“1”

E

Actually,

A said: “1”

1

A said: “1”

D

A

B

C

1

Actually,

A said:

“1”

E

Actually,

A said:

“1”

Actually,

A said: “1”

1

A said: “1”

D

A

B

C

1

Actually,

A said:

“1”

E

Actually,

A said:

“1”

Actually,

A said: “1”

Actually,

A said: “1”

1

A said: “1”

D

A

B

C

1

Actually,

A said:

“1”

Here, the vote of A at Z is not authentic even

After a long time, even with 1 fault

E

Z

Actually,

A said:

“1”

Actually,

A said: “1”

Actually…

Actually,

A said: “1”

1

A said: “1”

D

A

B

C

1

Actually,

A said:

“1”

Here, the vote of A at Z is not authentic even

After a long time, even with 1 fault

E

Global effect for onefault

Z

Actually,

A said:

“1”

Actually,

A said: “1”

Actually…

F

A

B

C

B, C,D,D,F

All said: “0”

D

E

One faulty node can make the cotes of a majority non-authentic

Regulated Bcast [Kutten, Patt-Shamir]

Power Supply [Afek, Bremler]

1

A

B

C

D

Regulated Bcast [Kutten, Patt-Shamir]

Power Supply [Afek, Bremler]

1

A

B

C

D

A

1111111111111111111111111111111111111111111111111111111111

Regulated Bcast [Kutten, Patt-Shamir]

Power Supply [Afek, Bremler]

A

f= five faults hit

1111111111111111111111111111111111111111111111111111111111

111111111111111000001111111111111111111111111111111111111

Regulated Bcast [Kutten, Patt-Shamir]

Power Supply [Afek, Bremler]

0

1

111111110000  11111111111111111111111

A

After One time unit, the first 0 notices inconsistency and resets A’s

Bcast value to bottom. The first “1” after the zeros does the same

Regulated Bcast [Kutten, Patt-Shamir]

Power Supply [Afek, Bremler]

0

1

A

111111111  000 0 1111111111111111111

After two time units, the  spreads twice as fast as

the bcast (“0”s and “1”s).

Regulated Bcast [Kutten, Patt-Shamir]

Power Supply [Afek, Bremler]

0

1

A

111111111  00 0 111111111111111111

After Three time units, the  spreads twice as fast as

the bcast (“0”s and “1”s).

Regulated Bcast [Kutten, Patt-Shamir]

Power Supply [Afek, Bremler]

0

1

A

1111111111  0 0 0 111111111111111

After Four time units, the  spreads twice as fast as

the bcast (“0”s and “1”s).

Regulated Bcast [Kutten, Patt-Shamir]

Power Supply [Afek, Bremler]

0

1

A

1111111111  0 0 11111111111111

After Five time units, the  spreads twice as fast as

the bcast (“0”s and “1”s).

Regulated Bcast [Kutten, Patt-Shamir]

Power Supply [Afek, Bremler]

0

1

11111111111  0 0 11111111111

A

After Six time units, the  spreads twice as fast as

the bcast (“0”s and “1”s).

Regulated Bcast [Kutten, Patt-Shamir]

Power Supply [Afek, Bremler]

0

1

11111111111  0 11111111

After seven time units, the  spreads twice as fast as

the bcast (“0”s and “1”s).

A

Regulated Bcast [Kutten, Patt-Shamir]

Power Supply [Afek, Bremler]

0

1

111111111111    0 1111

After eight time units, the  spreads twice as fast as

the bcast (“0”s and “1”s).

A

Regulated Bcast [Kutten, Patt-Shamir]

Power Supply [Afek, Bremler]

0

A

111111111111     11111111

After nine time units, the  spreads twice as fast as

the bcast (“0”s and “1”s).

Regulated Bcast [Kutten, Patt-Shamir]

Power Supply [Afek, Bremler]

A

1111111111111  

After 10 time units, the  replaces the un-authentic vote, while

the authentic vote “1” continues to proceed at half speed.

Impossible

after O(f)

A

2f

(3) Majority of these votes are

not faulty.

Recall the Stable Value Problem
• In O(f) time all non authentic values disappear in A.

(2)In another O(f) time A

of 2f +1.

A lot of recent related work. A very partial bibliography:

[Kutten, Peleg], [KP1]

[Ghosh, Gupta, Herman, Pamaraju]

[Afek, Dolev]

[Chlamtac,Pinter], [Dolev, Herman], [Naor, Stockmeyer]

[Arora, Zhang]

Beauquier, Genolini, Cournier, Datta, Petit, Viliain, Xin He

Error Confinement, Time Adaptive, Fault Local, Mending,

Fault Containment, Snap Stabilization, Local Stabilization