Fully Compact Routing in Low Memory Self-Healing Trees

The paper (Compact Routing Messages in Self-Healing Trees, TCS 2017) introduced CompactFTZ, the first self-healing compact routing algorithm that works in a distributed network with each node using only O(log n) words (i.e. O(log2 n) bits) memory and thus O(log n) sized messages. The routing uses only O(1) and O(log n) words routing table and packet labels respectively on a self-healing tree that also works using only O(1) words repairing the network in face of a strong adversary deleting nodes. This deterministic algorithm sets up its data structures in a preprocessing phase and then updates the required data structures in only O(1) parallel time per healing round during execution of the algorithm. However, CompactFTZ has no constraints in its preprocessing phase which could be done in distributed large memory or even centrally. In this paper, we correct that by developing the algorithms for preprocessing of CompactFTZ in a fully distributed manner using only O(log n) words memory in optimal time. In fact, the preprocessing for the self-healing tree (ForgivingTree) component takes only O(1) memory. We develop a local function which each node invokes to instantly compute and then relay its repair instructions (known as its Will) in only O(1) time. We formalise the low memory CONGEST model setting used in previous low memory algorithms (e.g.[24]); nodes' working memory is restricted to be much smaller (in our case, O(log n)) than the numbers of their neighbours to whom they communicate through their I/O ports. We expand the model to allow for non-contiguous ports (e.g. empty ports or neighbours unmarked or lost in dynamic settings) and adversarial order of inputs from neighbours. Besides the Wills, we set up the tree structures and traversals for the routing scheme using only O(log n) memory and O(D) parallel time, where D is the diameter. Thus, we devise the first self-healing compact routing algorithm that can be fully set up and executed in low memory.

[1]  Peter Robinson,et al.  DEX: self-healing expanders , 2014, 2014 IEEE 28th International Parallel and Distributed Processing Symposium.

[2]  Eli Upfal,et al.  A tradeoff between space and efficiency for routing tables , 1988, STOC '88.

[3]  Michael Elkin,et al.  Linear-Size Hopsets with Small Hopbound, and Distributed Routing with Low Memory , 2017, ArXiv.

[4]  Pierre Fraigniaud,et al.  A Space Lower Bound for Routing in Trees , 2002, STACS.

[5]  Nancy A. Lynch,et al.  Distributed computation in dynamic networks , 2010, STOC '10.

[6]  Jared Saia,et al.  Picking up the Pieces: Self-Healing in reconfigurable networks , 2008, 2008 IEEE International Symposium on Parallel and Distributed Processing.

[7]  Feng Xiushan,et al.  A fault-tolerant routing scheme in dynamic networks , 2001 .

[8]  Calvin C. Newport,et al.  The Computational Power of Beeps , 2015, DISC.

[9]  Thomas P. Hayes,et al.  The Forgiving Graph: a distributed data structure for low stretch under adversarial attack , 2009, PODC '09.

[10]  Lenore Cowen,et al.  Compact routing with minimum stretch , 1999, SODA '99.

[11]  Shay Kutten,et al.  On the Complexity of Universal Leader Election , 2015, J. ACM.

[12]  Shlomi Dolev,et al.  Self-Stabilizing Depth-First Search , 1994, Inf. Process. Lett..

[13]  Stefan Schmid,et al.  A Self-repairing Peer-to-Peer System Resilient to Dynamic Adversarial Churn , 2005, IPTPS.

[14]  Bruno Courcelle,et al.  Compact Forbidden-Set Routing , 2007, STACS.

[15]  Michael Elkin,et al.  On efficient distributed construction of near optimal routing schemes , 2017, Distributed Computing.

[16]  Shiri Chechik,et al.  Compact Routing Schemes , 2016, Encyclopedia of Algorithms.

[17]  Xiushan Feng,et al.  A fault-tolerant routing scheme in dynamic networks , 2008, Journal of Computer Science and Technology.

[18]  Ittai Abraham,et al.  Routing with Improved Communication-Space Trade-Off , 2004, DISC.

[19]  Baruch Awerbuch,et al.  Improved Routing Strategies with Succinct Tables , 1990, J. Algorithms.

[20]  Robert D. Doverspike,et al.  Comparison of capacity efficiency of DCS network restoration routing techniques , 1994, Journal of Network and Systems Management.

[21]  Ivan Rapaport,et al.  Brief Announcement: A Hierarchy of Congested Clique Models, from Broadcast to Unicast , 2015, PODC.

[22]  Avner Porat,et al.  Maintenance of a spanning tree in dynamic networks , 1999, PODC '99.

[23]  Marcin Paprzycki,et al.  Distributed Computing: Fundamentals, Simulations and Advanced Topics , 2001, Scalable Comput. Pract. Exp..

[24]  Amos Korman,et al.  General compact labeling schemes for dynamic trees , 2005, Distributed Computing.

[25]  Edsger W. Dijkstra,et al.  Self-stabilizing systems in spite of distributed control , 1974, CACM.

[26]  David Peleg,et al.  Labeling Schemes for Dynamic Tree Networks , 2002, Theory of Computing Systems.

[27]  Gopal Pandurangan,et al.  Xheal: a localized self-healing algorithm using expanders , 2013, Distributed Computing.

[28]  Toshimitsu Masuzawa,et al.  Fast and compact self-stabilizing verification, computation, and fault detection of an MST , 2011, PODC '11.

[29]  Shay Kutten,et al.  Fast and Compact Distributed Verification and Self-stabilization of a DFS Tree , 2014, OPODIS.

[30]  Roger Wattenhofer,et al.  Stone age distributed computing , 2012, PODC '13.

[31]  Cyril Gavoille,et al.  On the Communication Complexity of Distributed Name-Independent Routing Schemes , 2013, DISC.

[32]  David Peleg,et al.  Compact routing schemes with low stretch factor , 2003, J. Algorithms.

[33]  Shiri Chechik Compact routing schemes with improved stretch , 2013, PODC '13.

[34]  Amitabh Trehan,et al.  Self-healing using virtual structures , 2012, ArXiv.

[35]  Michael Langberg,et al.  f-Sensitivity Distance Oracles and Routing Schemes , 2010, ESA.

[36]  Shiri Chechik,et al.  Fault-tolerant compact routing schemes for general graphs , 2011, Inf. Comput..

[37]  Christian Scheideler,et al.  A Self-stabilizing General De Bruijn Graph , 2017, SSS.

[38]  Amitabh Trehan,et al.  Algorithms for Self-Healing Networks , 2013, ArXiv.

[39]  Michael Elkin,et al.  Near-Optimal Distributed Routing with Low Memory , 2018, PODC.

[40]  Thomas P. Hayes,et al.  The forgiving tree: a self-healing distributed data structure , 2008, PODC '08.

[41]  Danny Dolev,et al.  Compact routing messages in self-healing trees , 2015, Theor. Comput. Sci..

[42]  Boaz Patt-Shamir,et al.  Fast routing table construction using small messages: extended abstract , 2012, STOC '13.

[43]  Nicola Santoro,et al.  Labelling and Implicit Routing in Networks , 1985, Computer/law journal.

[44]  David Peleg,et al.  Distributed Computing: A Locality-Sensitive Approach , 1987 .

[45]  Jared Saia,et al.  A theoretical and empirical evaluation of an algorithm for self-healing computation , 2017, Distributed Computing.

[46]  David Peleg,et al.  Time-Optimal Leader Election in General Networks , 1990, J. Parallel Distributed Comput..

[47]  Shlomi Dolev,et al.  Self Stabilization , 2004, J. Aerosp. Comput. Inf. Commun..

[48]  David Peleg,et al.  Compact and localized distributed data structures , 2003, Distributed Computing.

[49]  Amitabh Trehan,et al.  Edge-preserving self-healing: Keeping network backbones densely connected , 2012, 2012 Proceedings IEEE INFOCOM Workshops.

[50]  Seif Haridi,et al.  Distributed Algorithms , 1992, Lecture Notes in Computer Science.

[51]  J. Degesys,et al.  DESYNC: Self-Organizing Desynchronization and TDMA on Wireless Sensor Networks , 2007, 2007 6th International Symposium on Information Processing in Sensor Networks.

[52]  Fabian Kuhn,et al.  On the power of the congested clique model , 2014, PODC.

[53]  Armando Castañeda,et al.  Self-healing Routing and Other Problems in Compact Memory , 2018, ArXiv.

[54]  Thomas Frisanco,et al.  Optimal spare capacity design for various protection switching methods in ATM networks , 1997, Proceedings of ICC'97 - International Conference on Communications.