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
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 listen! ) www.amitabhtrehan.net www.huntforthetowel.wordpress.com
CENTRALISED: WHO GETS TO PRINT? A Network A Printer Centralised Algorithms: Single computer with the whole problem instance/data available. Q: which one of them will get the printer? Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II
DISTRIBUTED: WHO GETS TO PRINT A Network A Printer Token Leader DeCentralised/ Q: Distributed Algorithm: which one of us will get the Multiple `computers’ each printer? with it’s own local view/data. Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II
DISTRIBUTED IN A DYNAMIC/FAULTY ENVIRONMENT: AY YE PRINTER! A Network A Printer Q: Fault-Tolerant/Dynamic Algorithms: which one of us will get the In faulty/dynamic environments printer despite failures or changes? Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II
GRAPH RECONSTRUCTION (SELF-HEALING) GAME! 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! 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! Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II
SELF-HEALING ILLUSTRATION v Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II
SELF-HEALING ILLUSTRATION Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II
SELF-HEALING ILLUSTRATION Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II
SELF-HEALING ILLUSTRATION Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II
SELF-HEALING ILLUSTRATION Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II
SELF-HEALING ILLUSTRATION Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II
SELF-HEALING ILLUSTRATION Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II
SELF-HEALING ILLUSTRATION v and so on …. Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II
PROBLEM v v G0 G 3 Degree(v,G 3 ) = 5 Degree(v,G 0 ) = 2 Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II
POSSIBLE HEALING TOPOLOGIES: LINE GRAPH v v G0 G 3 Low degree increase but diameter/ distances blow up Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II
POSSIBLE HEALING TOPOLOGIES: STAR GRAPH v v G0 G 3 Low distances but degree blows up 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? 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 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 Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II
DASH: DEGREE ASSISTED SELF-HEALING* 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 Original Graph, n = 100; t =0 *Jared Saia, AT, Picking up the Pieces: Self-Healing in reconfigurable networks. IPDPS 2008 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. +1 a +0 +1 b b +3 +5 f v c +2 +3 a e e +2 d +1 +5 f +3 c Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II
DASH: DEGREE ASSISTED SELF-HEALING 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 of deletions; empirical analysis of stretch over Healed Graph, n = 70; t =30 various attack strategies done. Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II
DASH: DEGREE ASSISTED SELF-HEALING Graph, n = 50; t =50 Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II
DASH: DEGREE ASSISTED SELF-HEALING Graph, n = 30; t = 70 Graph, n = 20; t =80 Graph, n = 10; t =90 Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II
DASH: ALL TOGETHER Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II
SIMULATIONS: DEGREE
SIMULATIONS: STRETCH Stretch: Maximum over all pairs of nodes u,v : Distance(G t ,u,v) / Distance (G 0 , u,v)
VIRTUAL GRAPHS HEALING APPROACH Virtual Graph (VG) Mappings Real Graph (RG) 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).
Homomorphism: Given G 1 = ( V 1 , E 1 ) , G 2 = V 2 , E 2 a map such that { v, w } ∈ E 1 ⇒ { f ( v ) , f ( w ) } ∈ E 2 a b a c a b c d a b c a d Virtual Graph ‘Real’ Network A virtual tree (left) and its homomorphic image (right)
OUR SELF-HEALING ALGORITHMS Virtual Non-Virtual Compact Forgiving Tree DASH Routing Low (Connectivity, +Stretch +Expansion CompactFT Forgiving Graph Xheal +Density DEX CompactFTZ Xheal+ Edge Preserving SH Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II
FORGIVING TREE* *Tom Hayes, Jared Saia, AT, The forgiving tree: a self-healing distributed data structure. PODC 2008
THE FORGIVING TREE: MODEL • Start: a network G 0 . • Nodes fail in unknown order v 1 , v 2 , ..., v n • After each node deletion, we can add and/or drop some edges between pairs of nearby nodes, to “heal” the network 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 of t deletions: • G t stays connected • Diameter(G t ) ≤ log(D). Diameter(G 0 ) • For any node v in G t, degree(G t, v) ≤ degree(G 0, v) + 3 • Each repair takes constant time and involves O(D) nodes. 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 of t deletions: • G t stays connected } • Diameter(G t ) ≤ log(D). Diameter(G 0 ) Matching • For any node v in G t, degree(G t, v) ≤ degree(G 0, v) + 3 lower bound • Each repair takes constant time and involves O(D) nodes. Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II
THE LOWER BOUND • Adversary can force, for any self-healing algorithm: - Degree increase stretch of Ω (log α ( n − 1)) ≤ α ⇒ y α x Degree(v) = Δ y α − 1 z z G T BFS Tree of y in G T+1 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. 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 Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II
P P h d b f v a e g c g g a b c f h e f h a b c d e f d Replacing v by a balanced binary tree of virtual nodes Short-circuiting a redundant virtual node Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II
Algorithm in action Node v deleted: r . p r i j k p h i d j k v f b g c a a e b h g c d e g f a b c d e f h m n o m n o Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II
Node p deleted: r r . k p h j i i j k i j k h d d f f b b g g c c a a e e g g a b c d e f h a b c d e f h m n o m n o Amitabh Trehan o Algorithmic Aspects of Temporal Graphs II
Recommend
More recommend
Explore More Topics
Stay informed with curated content and fresh updates.