Sparse fault-tolerant BFS structures

Merav Parter, David Peleg

Research output: Contribution to journalArticlepeer-review

18 Scopus citations

Abstract

A fault-tolerant structure for a network is required for continued functioning following the failure of some of the network's edges or vertices. This article considers breadth-first search (BFS) spanning trees and addresses the problem of designing a sparse fault-tolerant BFS structure (FT-BFS structure), namely, a sparse subgraph T of the given network G such that subsequent to the failure of a single edge or vertex, the surviving part T? of T still contains a BFS spanning tree for (the surviving part of) G. For a source node s, a target node t, and an edge e ∈ G, the shortest s - t path Ps,t,e that does not go through e is known as a replacement path. Thus, our FT-BFS structure contains the collection of all replacement paths Ps,t,e for every t ∈ V (G) and every failed edge e ∈ E(G). Our main results are as follows. We present an algorithm that for every n-vertex graph G and source node s constructs a (single edge failure) FT-BFS structure rooted at s with O(n · min{Depth(s), √n}) edges, where Depth(s) is the depth of the BFS tree rooted at s. This result is complemented by a matching lower bound, showing that there exist n-vertex graphs with a source node s for which any edge (or vertex) FT-BFS structure rooted at s has Ω(n3/2) edges. We then consider fault-tolerant multi-source BFS structures (FT-MBFS structures), aiming to provide (following a failure) a BFS tree rooted at each source s ∈ S for some subset of sources S ⊆ V . Again, tight bounds are provided, showing that there exists a poly-time algorithm that for every n-vertex graph and source set S ⊆ V of size σ constructs a (single failure) FT-MBFS structure T∗(S) from each source si ∈ S, with O(√σ · n3/2) edges, and, on the other hand, there exist n-vertex graphs with source sets S ⊆ V of cardinality σ, on which any FT-MBFS structure from S has Ω(√σ · n3/2) edges. Finally, we propose an O(log n) approximation algorithm for constructing FT-BFS and FT-MBFS structures. The latter is complemented by a hardness result stating that there exists no Ω(log n) approximation algorithm for these problems under standard complexity assumptions. In comparison with previous constructions, our algorithm is deterministic and may improve the number of edges by a factor of up to √n for some instances. All our algorithms can be extended to deal with one vertex failure as well, with the same performance.

Original languageEnglish
Article number11
JournalACM Transactions on Algorithms
Volume13
Issue number1
DOIs
StatePublished - Oct 2016
Externally publishedYes

Bibliographical note

Publisher Copyright:
© 2016 ACM.

Funding

This work was supported in part by the Israel Science Foundation (Grant No. 894/09), the United States-Israel Binational Science Foundation (Grant No. 2008348), the I-CORE program of the Israel PBC and ISF (Grant No. 4/11), the Israel Ministry of Science and Technology (infrastructures grant), and the Citi Foundation. M. Parter is recipient of the Google European Fellowship in distributed computing; research is supported in part by this Fellowship. An extended abstract of this article has appeared in the proceedings of the 2014 ACM-SIAM Symposium on Discrete Algorithms. We are grateful to Gilad Braunschvig, Alon Brutzkus, Adam Sealfon, and Oren Weimann and the anonymous reviewers for helpful comments.

FundersFunder number
Alon Brutzkus, Adam Sealfon
Gilad Braunschvig
Israel Ministry of Science and Technology
Israel PBC
Citi Foundation
United States-Israel Binational Science Foundation2008348
Israel Science Foundation4/11, 894/09
Israeli Centers for Research Excellence

    Keywords

    • Algorithms
    • C.2.1 [computer-communication networks]: Network architecture and design
    • Design
    • Fault tolerance
    • Reliability
    • Replacement paths
    • Single source shortest paths

    Fingerprint

    Dive into the research topics of 'Sparse fault-tolerant BFS structures'. Together they form a unique fingerprint.

    Cite this