THE TEMPORAL EVOLUTION OF SELF-HEALING AMITABH TREHAN LOUGHBOROUGH - - PowerPoint PPT Presentation

the temporal evolution of self healing
SMART_READER_LITE
LIVE PREVIEW

THE TEMPORAL EVOLUTION OF SELF-HEALING AMITABH TREHAN LOUGHBOROUGH - - PowerPoint PPT Presentation

THE TEMPORAL EVOLUTION OF SELF-HEALING AMITABH TREHAN LOUGHBOROUGH UNIVERSITY (Joint work with Armando Castanader, Danny Dolev, Gopal Pandurangan, Peter Robinson, Danupon Nanangkoi, Jared Saia, Tom Hayes, and anybody else who cared to


slide-1
SLIDE 1

THE TEMPORAL EVOLUTION OF SELF-HEALING

AMITABH TREHAN LOUGHBOROUGH UNIVERSITY

www.amitabhtrehan.net www.huntforthetowel.wordpress.com

(Joint work with Armando Castanader, Danny Dolev, Gopal Pandurangan, Peter Robinson, Danupon Nanangkoi, Jared Saia, Tom Hayes, … and anybody else who cared to listen! )

slide-2
SLIDE 2

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

CENTRALISED: WHO GETS TO PRINT?

Q: which one of them will get the printer?

A Network A Printer Centralised Algorithms: Single computer with the whole problem instance/data available.

slide-3
SLIDE 3

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

DISTRIBUTED: WHO GETS TO PRINT

Q: which one of us will get the printer?

A Network A Printer DeCentralised/ Distributed Algorithm: Multiple `computers’ each with it’s own local view/data.

Token Leader

slide-4
SLIDE 4

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

DISTRIBUTED IN A DYNAMIC/FAULTY ENVIRONMENT: AY YE PRINTER!

Q: which one of us will get the printer despite failures or changes?

A Network A Printer Fault-Tolerant/Dynamic Algorithms: In faulty/dynamic environments

slide-5
SLIDE 5

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

GRAPH RECONSTRUCTION (SELF-HEALING) GAME!

slide-6
SLIDE 6

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

MOTIVATIONS

  • Responsive Repair: As in the human brain! (rewire, don’t reboot!)
  • Autonomic systems:
  • Churn in P2P/Reconfigurable networks: Nodes come and go!
slide-7
SLIDE 7

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

SELF-HEALING (ON NETWORKS)

Start: a distributed network G Run forever or till possible { Attack: An adversary inserts or deletes one node per round Healing: After each adversary action, we add and/or drop some edges between pairs of nearby nodes, to “heal” the network }

  • Node dynamic as opposed to edge dynamic!
slide-8
SLIDE 8

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

SELF-HEALING ILLUSTRATION

v

slide-9
SLIDE 9

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

SELF-HEALING ILLUSTRATION

slide-10
SLIDE 10

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

SELF-HEALING ILLUSTRATION

slide-11
SLIDE 11

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

SELF-HEALING ILLUSTRATION

slide-12
SLIDE 12

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

SELF-HEALING ILLUSTRATION

slide-13
SLIDE 13

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

SELF-HEALING ILLUSTRATION

slide-14
SLIDE 14

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

SELF-HEALING ILLUSTRATION

slide-15
SLIDE 15

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

SELF-HEALING ILLUSTRATION

v

and so on ….

slide-16
SLIDE 16

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

PROBLEM

v

G0 G 3 Degree(v,G0) = 2 Degree(v,G3) = 5

v

slide-17
SLIDE 17

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

POSSIBLE HEALING TOPOLOGIES:

v v

Low degree increase but diameter/ distances blow up G0 G 3

LINE GRAPH

slide-18
SLIDE 18

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

POSSIBLE HEALING TOPOLOGIES:

v v

Low distances but degree blows up G 3 G0

STAR GRAPH

slide-19
SLIDE 19

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

CHALLENGE 1: PROPERTIES CONFLICT

  • Low degree increase => high diameter/stretch/

poorer expansion?

  • Low diameter => high degree increase?
slide-20
SLIDE 20

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

CHALLENGE 2: LOCAL FIXING OF GLOBAL PROPERTIES

✴ Limited global Information with nodes ✴ Limited resources and time constraints

slide-21
SLIDE 21

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

SELF-HEALING(TOPOLOGICAL) GOALS

Healing should be fast. Certain (topological) properties should be maintained within bounds: Connectivity Degree (quantifies the work done by algorithm) Diameter/ Stretch Expansion/ Spectral properties

slide-22
SLIDE 22

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

DASH: DEGREE ASSISTED SELF-HEALING*

Original Graph, n = 100; t =0 Algorithm Intuition:

  • Keep track of load (degree increase) of nodes
  • After each deletion, Insert a binary tree of

neighbours of deleted node with more loaded nodes as leaves

*Jared Saia, AT, Picking up the Pieces: Self-Healing in reconfigurable networks. IPDPS 2008

slide-23
SLIDE 23

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

DASH: DEGREE ASSISTED SELF-HEALING

  • Certain neighbours of the deleted node reconnect as a

tree sorted on degree increase; degree of any vertex increases by at most 2 log n; no guarantees on diameter.

v

a

b c d e f

+1 +0 +5 +1 +2 +3

a

b e c f +3

+2 +5 +3 +1

slide-24
SLIDE 24

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

DASH: DEGREE ASSISTED SELF-HEALING

Healed Graph, n = 70; t =30 Algorithm:

  • Keep track of load (degree increase) of nodes
  • After each deletion, Insert a binary tree of

neighbours of deleted node with more loaded nodes as leaves *Limits degree increase to O(log n) over series

  • f deletions; empirical analysis of stretch over

various attack strategies done.

slide-25
SLIDE 25

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

DASH: DEGREE ASSISTED SELF-HEALING

Graph, n = 50; t =50

slide-26
SLIDE 26

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

DASH: DEGREE ASSISTED SELF-HEALING

Graph, n = 20; t =80 Graph, n = 30; t = 70 Graph, n = 10; t =90

slide-27
SLIDE 27

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

DASH: ALL TOGETHER

slide-28
SLIDE 28

SIMULATIONS: DEGREE

slide-29
SLIDE 29

SIMULATIONS: STRETCH

Stretch: Maximum over all pairs of nodes u,v : Distance(Gt,u,v) / Distance (G0, u,v)

slide-30
SLIDE 30

VIRTUAL GRAPHS HEALING APPROACH

Virtual Graph (VG) Real Graph (RG) Mappings

Method: Setup virtual graph (VG) on the real graph (RG). Maintain (self-heal) VG. Required: If property A is maintained on VG, it is also maintained on RG (i.e. the correct mappings).

slide-31
SLIDE 31

a b c a a c b a b c d

A virtual tree (left) and its homomorphic image (right)

Homomorphism: Given G1 = (V1, E1), G2 = V2, E2

{v, w} ∈ E1 ⇒ {f(v), f(w)} ∈ E2

a map such that a d

‘Real’ Network Virtual Graph

slide-32
SLIDE 32

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

OUR SELF-HEALING ALGORITHMS

Non-Virtual DASH

(Connectivity,

Virtual Forgiving Tree Forgiving Graph Xheal Xheal+

Edge Preserving SH

+Stretch +Expansion +Density

DEX

Low CompactFT Compact Routing CompactFTZ

slide-33
SLIDE 33

FORGIVING TREE*

*Tom Hayes, Jared Saia, AT, The forgiving tree: a self-healing distributed data structure. PODC 2008

slide-34
SLIDE 34

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

THE FORGIVING TREE: MODEL

  • Start: a network G0.
  • Nodes fail in unknown order v1, v2, ..., vn
  • After each node deletion, we can add and/or drop

some edges between pairs of nearby nodes, to “heal” the network

slide-35
SLIDE 35

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

THE FORGIVING TREE: MAIN RESULT

  • A distributed algorithm, Forgiving Tree such that, for any

network G with max degree D, for an arbitrary sequence

  • f t deletions:
  • Gt stays connected
  • Diameter(Gt) ≤ log(D). Diameter(G0)
  • For any node v in Gt, degree(Gt,v) ≤ degree(G0,v) + 3
  • Each repair takes constant time and involves O(D) nodes.
slide-36
SLIDE 36

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

THE FORGIVING TREE: MAIN RESULT

  • A distributed algorithm, Forgiving Tree such that, for any

network G with max degree D, for an arbitrary sequence

  • f t deletions:
  • Gt stays connected
  • Diameter(Gt) ≤ log(D). Diameter(G0)
  • For any node v in Gt, degree(Gt,v) ≤ degree(G0,v) + 3
  • Each repair takes constant time and involves O(D) nodes.

Matching lower bound

}

slide-37
SLIDE 37

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

  • Adversary can force, for any self-healing

algorithm:

  • Degree increase stretch of

α⇒

≤ Ω(logα(n − 1))

α Degree(v) = y α − 1 Δ x y z z

BFS Tree of y in GT+1 GT

THE LOWER BOUND

slide-38
SLIDE 38

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

THE FORGIVING TREE: MOTIVATIONS

  • Trees are the “worst case” for maintaining connectivity.

Suppose we are given one.

  • Our algorithm is based on maintaining a virtual tree. This

helps us keep track of which vertices can afford to have their degrees increased, and also avoid blowing up distances.

slide-39
SLIDE 39

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

FT: FIRST APPROXIMATION

  • Find a spanning tree of G.
  • Choose some vertex to be the root, and orient all edges

toward the root.

  • When a node is deleted, replace it by a balanced binary

tree of “virtual nodes”

  • Short-circuit any redundant virtual nodes
  • Somehow the surviving real nodes simulate the virtual

nodes

slide-40
SLIDE 40

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

d a b c e f g h

P

d f a b c h a b c

v

d e e f f g g h

P

Replacing v by a balanced binary tree of virtual nodes Short-circuiting a redundant virtual node

slide-41
SLIDE 41

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

Algorithm in action

Node v deleted:

m n o r v c j p a b d e i k g f h

m n o r j p i k g h f c a b d e a g f e d c b h .

slide-42
SLIDE 42

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

Node p deleted:

m n o r j p i k g h f c a b d e a g f e d c b h . g c e m n o i i j k r k h j h f a b d a g f e d c b

slide-43
SLIDE 43

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

Node d deleted:

g c e m n o i i j k r k h j h f a b d a g f e d c b

g h f e a b a c g f e b k r i i h j j k c m n o

slide-44
SLIDE 44

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

THE FT: MAIN RESULT INTUITION

  • A distributed algorithm, Forgiving Tree such that, for any

network G with max degree D, for an arbitrary sequence

  • f t deletions:
  • Gt stays connected: Since the healing graph is connected
  • Diameter(Gt) ≤ log(D). Diameter(G0): The largest healing

binary tree is on D nodes and never increases!

  • For any node v in Gt, degree(Gt,v) ≤ degree(G0,v) + 3:

Every real node simulates at most one virtual node!

  • Each repair takes constant parallel time and involves

O(D) nodes: By the wills mechanism (not discussed)

slide-45
SLIDE 45

FORGIVING GRAPH*

*Tom Hayes, Jared Saia, AT, The Forgiving Graph: A distributed data structure for low stretch under adversarial attack. PODC 2009, Distributed Computing 2012

slide-46
SLIDE 46

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

FORGIVING GRAPH (FG)

  • FG extends Forgiving Tree:

Fully dynamic: has both insertions and deletions Bounds the stronger property of stretch (as opposed to diameter only) More complex and slower than Forgiving Tree

slide-47
SLIDE 47

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

FORGIVING GRAPH: INSERTIONS PERMITTED

Big question: How to analyse a self-healing algorithm which has insertions? Hint: What can G_0 look like?

slide-48
SLIDE 48

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

THE FG ALGORITHM: OUTLINE

  • Node inserted without restrictions.
  • When a node is deleted, replace it by a half-full

tree(described later) of “virtual nodes”.

  • If two half-full trees become neighbors, ‘merge’ them to

form a new half-full tree.

  • Somehow the surviving real nodes simulate the virtual

nodes

slide-49
SLIDE 49

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

Replacing v by a Reconstruction Tree (RT) of virtual nodes (in oval). The ‘real’ neighbors are the leaves of the tree. Merging two reconstruction trees on deletion of x

e v a b c d e f g a e a b c d f g d f b c

q

l n

  • n

l m m

p q r x p q n l p q r

  • n

l m m p

slide-50
SLIDE 50

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

ANALYSIS FROM VIRTUAL NODES

  • A virtual node has degree at most 3, since internal node
  • f a binary tree.
  • Each real node will simulate at most one virtual node per

neighbor.

  • After any sequence of deletions, the distance between

two nodes can only increase by a factor of the longest path in the largest RT i.e. log n.

slide-51
SLIDE 51

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

HALF-FULL TREES (HAFTS)

  • A rooted binary tree in which every non-leaf node v has

the following properties:

  • v has exactly two children.
  • The left child of v is the root of a complete binary

subtree containing at least half of v’s children.

Spine node Primary root

k

T

k−1

T T1

2 T

slide-52
SLIDE 52

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

OPERATIONS ON HAFTS

  • Merge: Recombine hafts to make new haft. Analogous to

binary addition.

  • Strip to get forest of complete trees.
  • Join adjacent trees with a new node as root, larger

tree as left child.

= 1000 + 0101 0010 + 0001

slide-53
SLIDE 53

FG IN ACTION

u v w y z x t

Node v deleted ...

(x,v) (x,y)

slide-54
SLIDE 54

u w y z x t

w’ u’ x’

x

replaced by RT(v)

slide-55
SLIDE 55

u w y z x t

w’ u’ x’

x

Node y deleted...

slide-56
SLIDE 56

u w z x t

w’ u’ x’

x

replaced by RT(y)

x’’ z’

slide-57
SLIDE 57

u w z x t

w’ u’ x’

x

Node w deleted...

x’’ z’

slide-58
SLIDE 58

u z t

u’ u’’

x

RT(v), RT(w) and u merge.

z’ x’

x’’

slide-59
SLIDE 59

WHERE’S THE HAFT?

u z t

u’ u’’

x

z’ x’

x’’ u z t

u’ u’’

x

z’ x’

x’’ x u

(x,v) (x,y) (u,v) (u,w)

slide-60
SLIDE 60

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

COMPARING RESULTS

G: healed network G’: graph of only insertions and original nodes

slide-61
SLIDE 61

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

MAIN RESULT

  • A distributed algorithm, Forgiving Graph

such that:

  • Degree increase: Degree of node in G ≤ 3

times degree in G’ G’

3

G

5

v v

slide-62
SLIDE 62

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

MAIN RESULT (CONTD.)

  • Stretch: Distance between any two nodes

in G ≤ log n times their distance in G’ G u v d(u,v) = 5 G’ u v d(u,v) = 3

slide-63
SLIDE 63

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

FG: RESULTS AND OPTIMALTIY

  • A distributed algorithm, Forgiving Graph such that:
  • Degree of node in G ≤ 3 times degree in G’
  • Distance between any two nodes in G ≤ log n

times their distance in G’

  • Cost: Repair of node of degree d requires at most

O(d logn) messages of length O(log2n) and time O(logd logn)

Matching lower bound

}

slide-64
SLIDE 64

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

LOWER BOUND AGAIN

  • Stretch: Distance between any two nodes in GT ≤ log n times

their distance in G’T d(u,v) = 2 FGT

u v

d(u,v) 2 log n

u v

G’T

slide-65
SLIDE 65

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

LOWER BOUND AGAIN

  • Adversary can force, for any self-healing algorithm:
  • Degree increase. stretch of

α ⇒

Ω(logα(n − 1))

α Degree(v) = y α − 1 Δ x y z z

BFS Tree of y in FGT G’T

slide-66
SLIDE 66

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

PROVE IT!

  • A distributed algorithm, Forgiving Graph such that,

at time T:

  • Degree of node in GT ≤ 3 times degree in G’T
  • Distance between any two nodes in GT ≤ log n

times their distance in G’T

  • Cost: Repair of node of degree d requires at most

O(d logn) messages of length O(log2n) and time O(log d log n)

slide-67
SLIDE 67
  • Degree increase: Degree of node in GT ≤ 3 times degree

in G’T:

  • i. An internal node of a binary tree has degree at most 3
  • ii. Each edge in G’T has at most one corresponding helper

node in FGT

FGT v’ v

(v,x)

GT’ x v

(v,x)

slide-68
SLIDE 68

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

OUR SELF-HEALING ALGORITHMS

Non-Virtual DASH

(Connectivity,

Virtual Forgiving Tree Forgiving Graph Xheal Xheal+

Edge Preserving SH

+Stretch +Expansion +Density

DEX

Low CompactFT Compact Routing CompactFTZ The red algorithms are fully dynamic!

slide-69
SLIDE 69

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

TEMPORAL QUESTIONS AND FUTURE WORK

  • What is the best way to analyse fully node dynamic algorithms (say, self-healing

graphs)?

  • Can edge dynamic temporal theory help? In some use cases, possibly node

dynamic are contained in Edge dynamic!

  • Other interactions between distributed algorithms and temporal theory
  • Temporal self-healing and memory constrained Processes? - Routing* etc…
  • A general theory for dynamicity - routing schemes as compositions/operators on

self-healing networks

*Armando Castanader, Danny Dolev, AT. Compact routing messages in self-healing trees. ICDCN 2016, Theor. Comp. Sci. 2018

slide-70
SLIDE 70

Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II

THANK YOU