29
University of Iowa 1 Self-stabilization

University of Iowa1 Self-stabilization. The University of Iowa2 Man vs. machine: fact 1 An average household in the developed countries has 50+ processors

Embed Size (px)

Citation preview

Page 1: University of Iowa1 Self-stabilization. The University of Iowa2 Man vs. machine: fact 1 An average household in the developed countries has 50+ processors

University of Iowa 1

Self-stabilization

Page 2: University of Iowa1 Self-stabilization. The University of Iowa2 Man vs. machine: fact 1 An average household in the developed countries has 50+ processors

The University of Iowa 2

Man vs. machine: fact 1

An average household in the developed

countries has 50+ processors. Most are

embedded or special purpose in nature.

Page 3: University of Iowa1 Self-stabilization. The University of Iowa2 Man vs. machine: fact 1 An average household in the developed countries has 50+ processors

The University of Iowa 3

A checklist BMW 7 series car 55+ Washing and drying machines 2 Mobile phone 1 Digital TV 1 Camera 1 CD / DVD / MP3 player 1 Kitchen gadgets 3 + PC / laptop/ accessories 2-3

Page 4: University of Iowa1 Self-stabilization. The University of Iowa2 Man vs. machine: fact 1 An average household in the developed countries has 50+ processors

The University of Iowa 4

Man vs. machine fact 2

The number of processors in the world

is increasing at a faster pace than the

number of human beings. We are being

outnumbered by the processors.

Page 5: University of Iowa1 Self-stabilization. The University of Iowa2 Man vs. machine: fact 1 An average household in the developed countries has 50+ processors

The University of Iowa 5

Man vs. machine: fact 3

As computing becomes ubiquitous,

failures and perturbations become

expected events. Systems must adapt to

such events. There will not be enough

human beings to fix the systems!

Page 6: University of Iowa1 Self-stabilization. The University of Iowa2 Man vs. machine: fact 1 An average household in the developed countries has 50+ processors

The University of Iowa 6

So What?

Future systems should be able to take care of

themselves. These include the ability to self-

organize, self-heal, self-optimize etc.

IBM proclaimed autonomic computing as their vision of the

future of computing systems. Such systems will be able to

self-heal, self-organize, self-optimize and self-protect.

Page 7: University of Iowa1 Self-stabilization. The University of Iowa2 Man vs. machine: fact 1 An average household in the developed countries has 50+ processors

The University of Iowa 7

Self-stabilization The earliest concept in the self -* category

Coined by Dijkstra (CACM 74) illustrating three

mutual exclusion systems that recover to a legal

configurations (i.e. exactly one process in its critical

section) from ANY initial configuration.

Page 8: University of Iowa1 Self-stabilization. The University of Iowa2 Man vs. machine: fact 1 An average household in the developed countries has 50+ processors

The University of Iowa 8

Self-stabilizing systems

Recover from any initial configuration to a legitimate

configuration in a bounded number of steps as long

as the codes are in tact.

{true} SSS {Legal}

Pre-condition post-condition

self-stabilizing system

Page 9: University of Iowa1 Self-stabilization. The University of Iowa2 Man vs. machine: fact 1 An average household in the developed countries has 50+ processors

The University of Iowa 9

Self-stabilizing systems

State space

legal

Transient failures perturb the global state.

The ability to spontaneously recover from any

initial state implies that no initialization is ever required

Page 10: University of Iowa1 Self-stabilization. The University of Iowa2 Man vs. machine: fact 1 An average household in the developed countries has 50+ processors

The University of Iowa 10

Self-stabilizing systems

Self-stabilizing systems exhibits non-masking fault-

tolerance. It satisfies the following two criteria

fault

1. Convergence

2. Closure

Not Legal Legal

convergence

closure

Page 11: University of Iowa1 Self-stabilization. The University of Iowa2 Man vs. machine: fact 1 An average household in the developed countries has 50+ processors

University of Iowa 11

Example: Spanning tree construction

Given a connected graph G=(V,E) and a root r,

design an algorithm for maintaining a spanning

tree in presence of transient failures that may

corrupt the local states of processes. Nodes are

numbered 0, 1, 2, .., n-1

n = |V|

Page 12: University of Iowa1 Self-stabilization. The University of Iowa2 Man vs. machine: fact 1 An average household in the developed countries has 50+ processors

University of Iowa 12

Definitions

Each process i has two variables:

L = level, its distance from the root r via tree edges

P = parent

N(i) denotes the neighbors of i

By definition L(r) = 0, and P(r) is undefined.

In a legal state i V: i ≠ r, L(i) ≠ n and P(i) ≠ n,

and L(i) = L(P(i))+1.

Page 13: University of Iowa1 Self-stabilization. The University of Iowa2 Man vs. machine: fact 1 An average household in the developed countries has 50+ processors

University of Iowa 13

Sample case

0

1

2

5

4

3

0

1

2

5

4

3

1

2

3 4

5

Page 14: University of Iowa1 Self-stabilization. The University of Iowa2 Man vs. machine: fact 1 An average household in the developed countries has 50+ processors

University of Iowa 14

The algorithm

Repeat

(R1). If (L(i)≠ n) (L(i) ≠ L(P(i)) +1) (L(P) ≠ n) → L(i) :=L(P(i))+1

(R2). if (L(i) n) (L(P(i))=n) → L(i):=n

(R3) if (L(i)=n) (k N(i):L(k) < n-1) → L(i) :=L(k)+1; P(i):= k

od

Page 15: University of Iowa1 Self-stabilization. The University of Iowa2 Man vs. machine: fact 1 An average household in the developed countries has 50+ processors

The University of Iowa 15

A spanning tree example

L=0 L=1 L=2 L=3

L=4L=5

L(i) = L (P(i)) + 1

When L becomes > n-1, a node looks for a new parent.

root

L=6

Page 16: University of Iowa1 Self-stabilization. The University of Iowa2 Man vs. machine: fact 1 An average household in the developed countries has 50+ processors

The University of Iowa 16

A spanning tree exampleL=0 L=1 L=5 L=3

L=4L=5

L(i) = L (P(i)) + 1

When L becomes > n-1, a node looks for a new parent.

root

L=6

Page 17: University of Iowa1 Self-stabilization. The University of Iowa2 Man vs. machine: fact 1 An average household in the developed countries has 50+ processors

The University of Iowa 17

A spanning tree example

L=0 L=1 L=5 L=6

L=4L=5

L(i) = L (P(i)) + 1

When L becomes > n-1, a node looks for a new parent.

.

root

L=6

Page 18: University of Iowa1 Self-stabilization. The University of Iowa2 Man vs. machine: fact 1 An average household in the developed countries has 50+ processors

The University of Iowa 18

A spanning tree example

L=0 L=1 L=5 L=6

L=7L=5

L(i) = L (P(i)) + 1

When L becomes > n-1, a node looks for a new parent.

root

L=6

Page 19: University of Iowa1 Self-stabilization. The University of Iowa2 Man vs. machine: fact 1 An average household in the developed countries has 50+ processors

The University of Iowa 19

A spanning tree example

L=0 L=1 L=5 L=6

L=6L=5

L(i) = L (P(i)) + 1

When L becomes > n-1, a node looks for a new parent.

root

L=6

Page 20: University of Iowa1 Self-stabilization. The University of Iowa2 Man vs. machine: fact 1 An average household in the developed countries has 50+ processors

The University of Iowa 20

A spanning tree example

L=0 L=1 L=5 L=6

L=6L=7

L(i) = L (P(i)) + 1

When L becomes > n-1, a node looks for a new parent.

.

root

L=6

Page 21: University of Iowa1 Self-stabilization. The University of Iowa2 Man vs. machine: fact 1 An average household in the developed countries has 50+ processors

The University of Iowa 21

A spanning tree example

L=0 L=1 L=5 L=6

L=6L=2

L(i) = L (P(i)) + 1

When L becomes > n-1, a node looks for a new parent.

root

L=3

Page 22: University of Iowa1 Self-stabilization. The University of Iowa2 Man vs. machine: fact 1 An average household in the developed countries has 50+ processors

The University of Iowa 22

A spanning tree example

L=0 L=1 L=4 L=6

L=3L=2

L(i) = L (P(i)) + 1

When L becomes > n-1, a node looks for a new parent.

root

L=3

Page 23: University of Iowa1 Self-stabilization. The University of Iowa2 Man vs. machine: fact 1 An average household in the developed countries has 50+ processors

The University of Iowa 23

A spanning tree example

L=0 L=1 L=4 L=5

L=3L=2

L(i) = L (P(i)) + 1

When L becomes > n-1, a node looks for a new parent.

root

L=3

Page 24: University of Iowa1 Self-stabilization. The University of Iowa2 Man vs. machine: fact 1 An average household in the developed countries has 50+ processors

University of Iowa 24

Proof of stabilization

Define an edge from i to P(i) to be well-formed,

when L(i) ≠ n, L(P(i) ≠ n and L(i) = L(P(i))+1.

In any configuration, the well-formed edges form

a spanning forest. Delete all edges that are not

well-formed. Designate each tree T(k) in the

forest by the lowest value of L in it.

Page 25: University of Iowa1 Self-stabilization. The University of Iowa2 Man vs. machine: fact 1 An average household in the developed countries has 50+ processors

University of Iowa 25

Example In the sample graph shown earlier.

T(0) = {0, 1}

T(2) = {2, 3, 4, 5}

Let F(k) denote the number of T(k) in the forest.

Define a tuple F= (F(0), F(1), F(2) …, F(n)). For the sample graph, F = (1, 0, 1, 0, 0, 0) after node 2 underwent a transient failure.

Page 26: University of Iowa1 Self-stabilization. The University of Iowa2 Man vs. machine: fact 1 An average household in the developed countries has 50+ processors

University of Iowa 26

Skeleton of the proof

Minimum F = (1,0,0,0,0,0) {legal configuration}

Maximum F = (1, n-1, 0, 0, 0, 0).

With each action of the algorithm, F decreases

lexicographically. Verify the claim!

This proves that eventually F becomes (1,0,0,0,0,0) and

the spanning tree stabilizes.

Page 27: University of Iowa1 Self-stabilization. The University of Iowa2 Man vs. machine: fact 1 An average household in the developed countries has 50+ processors

The University of Iowa 27

Pursuer Evader Games

In a disaster zone,

rescuers (pursuers)

can track hot spots

(evaders) using

sensor networks.

(Arora, Demirbas 2003)

Page 28: University of Iowa1 Self-stabilization. The University of Iowa2 Man vs. machine: fact 1 An average household in the developed countries has 50+ processors

The University of Iowa 28

Pursuer Evader Games

A spanning tree (DFS) is

constructed on-the-fly with

the evader as the root.

How fast can the pursuer

“catch” the evader?

Page 29: University of Iowa1 Self-stabilization. The University of Iowa2 Man vs. machine: fact 1 An average household in the developed countries has 50+ processors

The University of Iowa 29

Conclusion Applications are growing.

New techniques for convergence by studying the behavior of biological elements.

Relationship between game theory and stabilization is worth studying