Abstract
We consider the problem of self-healing in peer-to-peer networks that are under repeated attack by an omniscient adversary. We assume that, over a sequence of rounds, an adversary either inserts a node with arbitrary connections or deletes an arbitrary node from the network. The network responds to each such change by quick “repairs,” which consist of adding or deleting a small number of edges. These repairs essentially preserve closeness of nodes after adversarial deletions, without increasing node degrees by too much, in the following sense. At any point in the algorithm, nodes v and w whose distance would have been ℓ in the graph formed by considering only the adversarial insertions (not the adversarial deletions), will be at distance at most ℓ log n in the actual graph, where n is the total number of vertices seen so far. Similarly, at any point, a node v whose degree would have been d in the graph with adversarial insertions only, will have degree at most 3d in the actual graph. Our distributed data structure, which we call the Forgiving Graph, has low latency and bandwidth requirements. The Forgiving Graph improves on the Forgiving Tree distributed data structure from Hayes et al. (2008) in the following ways: 1) it ensures low stretch over all pairs of nodes, while the Forgiving Tree only ensures low diameter increase; 2) it handles both node insertions and deletions, while the Forgiving Tree only handles deletions; 3) it requires only a very simple and minimal initialization phase, while the Forgiving Tree initially requires construction of a spanning tree of the network.
Similar content being viewed by others
References
Andersen D., Balakrishnan H., Kaashoek F., Morris R.: Resilient overlay networks. SIGOPS Oper. Syst. Rev. 35(5), 131–145 (2001)
Awerbuch, B., Patt-Shamir, B., Peleg, D., Saks, M.: Adapting to asynchronous dynamic networks (extended abstract). In: TOC ’92: Proceedings of the Twenty-Fourth Annual ACM Symposium on Theory of Computing, pp. 557–570. ACM, New York (1992)
Boman, I., Saia, J., Abdallah, C.T., Schamiloglu, E.: Brief announcement: self-healing algorithms for reconfigurable networks. In: Symposium on Stabilization, Safety, and Security of Distributed Systems(SSS) (2006)
Cormen T.H., Leiserson C.E., Rivest R.L., Stein C.: Introduction to Algorithms, 2 edn. McGraw-Hill, New York (2001)
Doverspike R.D., Wilson B.: Comparison of capacity efficiency of DCS network restoration routing techniques. J. Netw. Syst. Manag. 2(2), 95–123 (1994)
Frisanco, T.: Optimal spare capacity design for various protection switching methods in ATM networks. In: IEEE International Conference on Communications (ICC 97 Montreal), ‘Towards the Knowledge Millennium’, 1997, vol. 1, pp. 293–298 (1997)
Goel, S., Belardo, S., Iwan, L.: A resilient network that can operate under duress: to support communication between government agencies during crisis situations. In: Proceedings of the 37th Hawaii International Conference on System Sciences, 0-7695-2056-1/04:1–11 (2004)
Hayashi, Y., Miyazaki, T.: Emergent rewirings for cascades on correlated networks. cond-mat/0503615 (2005)
Hayes, T.P., Saia, J., Trehan, A.: The Forgiving Graph: a distributed data structure for low stretch under adversarial attack. In: PODC ’09: Proceedings of the 28th ACM Symposium on Principles of Distributed Computing, pp. 121–130. ACM, New York (2009)
Hayes, T., Rustagi, N., Saia, J., Trehan, A.: The forgiving tree: a self-healing distributed data structure. In: PODC ’08: Proceedings of the Twenty-Seventh ACM Symposium on Principles of Distributed Computing, pp. 203–212. ACM, New York (2008)
Holme P., Kim B.J.: Vertex overload breakdown in evolving networks. Phy. Rev. E 65, 066109 (2002)
Iraschko R.R., MacGregor M.H., Grover W.D.: Optimal capacity placement for path restoration in STM or ATM mesh-survivable networks. IEEE/ACM Trans. Netw. 6(3), 325–336 (1998)
Manku, G.S., Naor, M., Wieder, U.: Know thy neighbor’s neighbor: the power of lookahead in randomized p2p networks. In: Proceedings of the 36th ACM Symposium on Theory of Computing (STOC) (2004)
Medard M., Finn S.G., Barry R.A.: Redundant trees for preplanned recovery in arbitrary vertex-redundant or edge-redundant graphs. IEEE/ACM Trans. Netw. 7(5), 641–652 (1999)
Minsky, Y., Trachtenberg, A.: Practical set reconciliation. Technical Report, Boston Unuiversity, Boston (2002–2003)
Motter A.E.: Cascade control and defense in complex networks. Phys. Rev. Lett. 93, 098701 (2004)
Motter A.E., Lai Y.-C: Cascade-based attacks on complex networks. Phys. Rev. E 66, 065102 (2002)
Murakami, K., Kim, H.S.: Comparative study on restoration schemes of survivable ATM networks. In: INFOCOM (1), pp. 345–352 (1997)
Naor, M., Wieder, U.: Know thy neighbor’s neighbor: better routing for skip-graphs and small worlds. In: Proceedings of IPTPS, 2004, pp. 269–277 (2004)
Saia, J., Trehan, A.: Picking up the pieces: Self-healing in reconfigurable networks. In: IEEE International Parallel & Distributed Processing Symposium (2008)
van Caenegem, B., Wauters, N., Demeester, P.: Spare capacity assignment for different restoration strategies in mesh survivable networks. In: IEEE International Conference on Communications (ICC 97 Montreal), ’Towards the Knowledge Millennium’, vol. 1, pp. 288–292 (1997)
Vaucher, J.G.: Building optimal binary search trees from sorted values in o(n) time. In: Essays in Memory of Ole-Johan Dahl, pp. 376–388 (2004)
Xiong Y., Mason L.G.: Restoration strategies and spare capacity requirements in self-healing ATM networks. IEEE/ACM Trans. Netw. 7(1), 98–110 (1999)
Author information
Authors and Affiliations
Corresponding author
Additional information
This research was partially supported by NSF CAREER Award 0644058, NSF CCR-0313160, and an AFOSR MURI grant.
Supported in part at the Technion by a fellowship of the Israel Council for Higher Education. An extended abstract of this work was published in PODC 2009.
Part of this work done by author Amitabh Trehan as a student at University of New Mexico, and as a postdoc at University of Victoria
Rights and permissions
About this article
Cite this article
Hayes, T.P., Saia, J. & Trehan, A. The Forgiving Graph: a distributed data structure for low stretch under adversarial attack. Distrib. Comput. 25, 261–278 (2012). https://doi.org/10.1007/s00446-012-0160-1
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00446-012-0160-1