42
Self-stabilizing Overlay Networks Sukumar Ghosh University of Iowa Work in progress. Jointly with Andrew Berns and Sriram Pemmaraju (Talk at Michigan Technological University)

Self-stabilizing Overlay Networks

  • Upload
    lala

  • View
    21

  • Download
    0

Embed Size (px)

DESCRIPTION

Self-stabilizing Overlay Networks. Sukumar Ghosh University of Iowa. (Talk at Michigan Technological University). Work in progress. Jointly with Andrew Berns and Sriram Pemmaraju. On Thursday, 16th August 2007 Skype had an outage - PowerPoint PPT Presentation

Citation preview

Page 1: Self-stabilizing Overlay Networks

Self-stabilizing Overlay Networks

Sukumar GhoshUniversity of Iowa

Work in progress. Jointly with Andrew Berns and Sriram Pemmaraju

(Talk at Michigan Technological University)

Page 2: Self-stabilizing Overlay Networks
Page 3: Self-stabilizing Overlay Networks

On Thursday, 16th August 2007 Skype had an outage

(Skype is known to be a “self-healing” overlay network)

(Skype’s explanation)

The disruption was triggered by a massive restart of users’

computers across the globe within a very short timeframe,

as they re-booted after receiving a routine set of patches

through Windows Update.

Page 4: Self-stabilizing Overlay Networks

Overlay Network

A logical network laid on top of the Internet

AB

C

Internet

Logical link AB Logical link BC

Page 5: Self-stabilizing Overlay Networks

The Formal Model

Let V be a set of nodes. The functions

id : V Z+ assigns a unique id to each node in V

rs : V {0, 1}* assigns a random bit string to each node

in V

A family of overlay networks ON : F G, where F is the

set

of all triples λ= (V; id; rs) and G is the set of all directed

graphs.

The family of overlay networks associates a unique

directed

graph ON(λ)∈ G with each labeled set λ = (V; id; rs) of

nodes.

Page 6: Self-stabilizing Overlay Networks

Structured vs. Unstructured

Overlay networks

Unstructured Structured

No restriction on

network topology.

Examples: Gnutella,

Kazaa, Bittorrent,

Skype etc.

Network topology

satisfies specific

invariants.

Examples:

Chord, CAN, Pastry

Skip Graph etc

Page 7: Self-stabilizing Overlay Networks

The Challenge

Can an overlay network restore its correct functionality from

an arbitrary initial configuration?

Bad configurations can be caused by failures, perturbations,

selfish actions, malicious attacks.

Page 8: Self-stabilizing Overlay Networks

Autonomic Systems

Self-management is the holy grail of all complex

dynamic systems.

Page 9: Self-stabilizing Overlay Networks

Self-stabilizing systems

(Convergence) Recover from any arbitrary

initial configuration to a legal configuration in a

bounded number of steps, and

(Closure) remain in the legal configuration

thereafter, until another failure or perturbation

occurs.

Page 10: Self-stabilizing Overlay Networks

Self-stabilizing Overlay Networks

Can an overlay network restore its topology from

an arbitrary initial configuration?

Does it make sense in unstructured networks?

Does it make sense in structured networks?

Page 11: Self-stabilizing Overlay Networks

Related work

Self-stabilizing and Byzantine-tolerantoverlay network. OPODIS 2007[Dolev, Hoch, van Renesse]

A distributed polylog time algorithm for self-stabilizing SKIP graph. PODC ’09[Jacob, Richa, Scheideler et. al]

Linearization: Locally self-stabilizing Sorting in graphs. ALENEX, SIAM ‘07[Onus, Richa, Scheideler]

Page 12: Self-stabilizing Overlay Networks

Example: Linearization

2 7

102015

30

13

18 3421

2 5 7 10 131518 213034

The ideal topology is a sorted list. The goal is to spontaneously recover to the ideal topology from anarbitrary connected topology

(Onus, Richa, Scheideler, ALENEX 2007)

Page 13: Self-stabilizing Overlay Networks

Self-stabilizing algorithm: Linearization

Left and right neighbors:– ‘w’ is left neighbor of node ‘u’ if {u, w} E and w < u.

– ‘w’ is right neighbor of node ‘u’ if {u, w} E and u < w.

u=10

w1=2 w2=3 w4=8w3=6 v1=19 v2=28 v4=35v3=30

left neighbors right neighbors

Page 14: Self-stabilizing Overlay Networks

Self-stabilizing algorithm: Linearization

u=10

w1=2 w2=3 w4=8w3=6 v1=19 v2=28 v4=35v3=30

(The Algorithm) In each round do

Convert left neighbors into sorted listConvert right neighbors into sorted list

Takes at most (n-2) rounds.

Slide borrowed from Onus et al.

Page 15: Self-stabilizing Overlay Networks

Evolution of Skip Graph(Aspenes, Shah SODA 2003)

42 329 15 6347 9380 107

Search time is O(n) hops

Page 16: Self-stabilizing Overlay Networks

SKIP Graph

42 329 15 6347 9380 107

Node degree = O(log n), diameter = O(log n)

Number of levels = O(log n),

Search time now is O(log n) hops

001 100 110 010 111 000101 011 101 010

Level 0

Level 1

Level 2

0 - -

1 - -

00 -

01 -

10 -

11 -

Page 17: Self-stabilizing Overlay Networks

SKIP Graph: the question

Can we have a self-stabilizing skip graph that

can spontaneously restore its topology starting

from any “connected” initial configuration?

Page 18: Self-stabilizing Overlay Networks

Why local checking is important

Unless bad configurations are detected via local

checking, periodic global snapshots are needed,

which is disruptive for the system.

Page 19: Self-stabilizing Overlay Networks

SKIP Graph is NOT locally checkable

Self-stabilization requires local detection of errors,

but certain failures are not locally checkable

Page 20: Self-stabilizing Overlay Networks

SKIP+ graph

Jacob, Richa, Scheideler et al. (PODC 2009) proposed a

locally checkable version of SKIP Graph by adding a

few extra edges to an existing Skip Graph. They called

it a SKIP+ Graph.

They presented an algorithm to stabilize such a topology

in O(log2n) rounds with high probability. The algorithm is

quite cumbersome.

We try to devise a simpler and better solution.

Page 21: Self-stabilizing Overlay Networks

Detectors

detectordetector

detector

detector

detectordetector

Our first step

Page 22: Self-stabilizing Overlay Networks

Detector diameter

The detector diameter of G, is the maximum hop

distance in G between any node and the closest

detector.

Page 23: Self-stabilizing Overlay Networks

Transitive Closure Framework

Due to the local checkability property

in any faulty configuration, there is at least one detector

Page 24: Self-stabilizing Overlay Networks

Transitive Closure Framework

Theorem

For a SKIP+ graph, the detector diameter D = O(log n)

Page 25: Self-stabilizing Overlay Networks

Transitive Closure Framework

Page 26: Self-stabilizing Overlay Networks

Transitive Closure Framework

The neighbors of each detector become detectors in the next

round. In O(log n) rounds, every node becomes a detector, and

these detectors initiate the transitive closure process. After

an additional O(log n) rounds, all nodes become connected with

one another, and the topology becomes completely connected.

Page 27: Self-stabilizing Overlay Networks

Transitive Closure Framework

After all nodes becomes detectors and eventually the

topology becomes completely connected, the nodes

rebuild the correct topology using a REPAIR

subroutine. REPAIR takes only one round.

Page 28: Self-stabilizing Overlay Networks

The Repair Process

Lemma

If the network is completely connected and all nodes are

detectors in round i, a legal overlay network will be built in

round (i + 1), and no node will be a detector.

Compare with Jacob et. al’s results

Page 29: Self-stabilizing Overlay Networks

Local checkability

Let L define a correct configuration of an overlay network.

Then network is locally checkable when

L = p0 p∧ 1 p∧ 2 … p∧ ∧ n-1

where pi is a local predicate involving process i and its

immediate neighbors only.

Most of the real life networks are NOT locally checkable

Page 30: Self-stabilizing Overlay Networks

Example: a clique

Theorem. A complete connected topology is locally checkable

a

b

c

Page 31: Self-stabilizing Overlay Networks

Example: a clique

Theorem. A complete connected topology is locally checkable

a

b

c

Page 32: Self-stabilizing Overlay Networks

Chord is not locally checkable

Chord ring Loopy chord ring

Page 33: Self-stabilizing Overlay Networks

CAN is not locally checkable

Content Addressable Network (CAN) on a 2D torus

Replace the black edges by thered edges, and each columnbecomes a loopy chord ring

Page 34: Self-stabilizing Overlay Networks

LCON: a locally checkableoverlay network in a circular key space

18

0

3

32

5

37

23

25

40

50

54

59

N= 64

7

Page 35: Self-stabilizing Overlay Networks

LCON: a locally checkableoverlay network in a circular key space

18

0

3

32

5

37

23

25

40

50

54

59

S-links for node u:one edge to each node

in the range (u to u+s mod N)

D-links for node u:Succ (u+s mod N), Succ (u+2s mod N)Succ (u+(d-1)s + mod N)

Nmax = s x dLet s=16, d=4

7

Page 36: Self-stabilizing Overlay Networks

Observations

Observation

Each node in LCON has (d+s-2) neighbors.

When

d = s, the size of the neighborhood is O(sqrt

N).

Theorem

The detector diameter of LCON is at most

two.

Page 37: Self-stabilizing Overlay Networks

Some properties of LCON

Theorem. LCON is locally checkable.

Main idea.

Case 1. If the diameter is two, then every node can “see”

every other node, and check if the topology is correct.

Case 2. We show that if the diameter if greater than two,

then there is at least one detector.

Page 38: Self-stabilizing Overlay Networks

Self-stabilization of LCON

The Transitive Closure Framework (TCF) will stabilize LCON

in O(log N) time.

But it may be a sledgehammer. What is the space complexity

of stabilization using TCF?

Page 39: Self-stabilizing Overlay Networks

Self-stabilization of LCON

We have an algorithm customized for LCON that stabilizes

LCON in polylog time, while the space complexity does

not skyrocket to O(n)

Page 40: Self-stabilizing Overlay Networks

Generalization of LCON

Main idea

Consider a CAN-like topology on

a d-dimensional torus. Convert

the “ring” in each dimension into

an LCON ring. It is only partially

shown in the figure on a 2-

dimensional torus

Each node has O(d.N1/2d)

neighbors

Page 41: Self-stabilizing Overlay Networks

Conclusion

A new problem of growing interest. We need

efficient

algorithms for stabilizing a variety of overlay

topologies.

The initial topology must be connected.

Stabilization

from a partitioned topology is impossible. Also for a

given (V, id, rs) the legal topology should be

unique.

Otherwise there will be an additional step for

distributed

consensus

Working on extending this to more fragile

networks.

Page 42: Self-stabilizing Overlay Networks

Questions?