Abstract
An f-sensitivity distance oracle for a weighted undirected graph G(V,E) is a data structure capable of answering restricted distance queries between vertex pairs, i.e., calculating distances on a subgraph avoiding some forbidden edges. This paper presents an efficiently constructible f-sensitivity distance oracle that given a triplet (s,t,F), where s and t are vertices and F is a set of forbidden edges such that |F|≤f, returns an estimate of the distance between s and t in G(V,E∖F). For an integer parameter k≥1, the size of the data structure is O(fkn 1+1/klog (nW)), where W is the heaviest edge in G, the stretch (approximation ratio) of the returned distance is (8k−2)(f+1), and the query time is O(|F|⋅log 2 n⋅log log n⋅log log d), where d is the distance between s and t in G(V,E∖F).
Our result differs from previous ones in two major respects: (1) it is the first to consider approximate oracles for general graphs (and thus obtain a succinct data structure); (2) our result holds for an arbitrary number of forbidden edges. In contrast, previous papers concern f-sensitive exact distance oracles, which consequently have size Ω(n 2). Moreover, those oracles support forbidden sets F of size |F|≤2.
The paper also considers f-sensitive compact routing schemes, namely, routing schemes that avoid a given set of forbidden (or failed) edges. It presents a scheme capable of withstanding up to two edge failures. Given a message M destined to t at a source vertex s, in the presence of a forbidden edge set F of size |F|≤2 (unknown to s), our scheme routes M from s to t in a distributed manner, over a path of length at most O(k) times the length of the optimal path (avoiding F). The total amount of information stored in vertices of G is O(kn 1+1/klog (nW)log n). To the best of our knowledge, this is the first result obtaining an f-sensitive compact routing scheme for general graphs.
Similar content being viewed by others
References
Afek, Y., Attiya, H., Fekete, A., Fischer, M.J., Lynch, N., Mansour, Y., Wang, D., Zuck, L.D.: Reliable communication over unreliable channels. J. ACM 41, 1267–1297 (1994)
Afek, Y., Awerbuch, B., Gafni, E., Mansour, Y., Rosen, A., Shavit, N.: Slide-the key to polynomial end-to-end communication. J. Algorithms 22, 158–186 (1997)
Aingworth, D., Chekuri, C., Indyk, P., Motwani, R.: Fast estimation of diameter and shortest paths (without matrix multiplication). SIAM J. Comput. 28(4), 1167–1181 (1999)
Awerbuch, B., Even, S.: Efficient and reliable broadcast is achievable in an eventually connected network. In: Proc. 3rd ACM Symp. on Principles of Distributed Computing (PODC), pp. 278–281 (1984)
Awerbuch, B., Peleg, D.: Sparse partitions. In: Proc. 31st IEEE Symp. on Foundations of Computer Science, pp. 503–513 (1990)
Awerbuch, B., Bar-Noy, A., Linial, N., Peleg, D.: Improved routing strategies with succinct tables. J. Algorithms 307–341 (1990)
Awerbuch, B., Kutten, S., Peleg, D.: On buffer-economical store-and-forward deadlock prevention. In: Proc. INFOCOM, pp. 410–414 (1991)
Bagchi, A., Hakimi, S.L.: Information dissemination in distributed systems with faulty units. IEEE Trans. Comput. 43, 698–710 (1994)
Bao, F., Igarashi, Y., Katano, K.: Broadcasting in hypercubes with randomly distributed byzantine faults. In: Proc. WDAG’95, pp. 215–229 (1995)
Baswana, S., Kavitha, T.: Faster algorithms for approximate distance oracles and all-pairs small stretch paths. In: Proc. IEEE Symp. on Foundations of Computer Science, pp. 591–602 (2006)
Baswana, S., Sen, S.: A simple linear time algorithm for computing sparse spanners in weighted graphs. In: Proc. 30th Int. Colloq. on Automata, Languages and Programming, pp. 384–396 (2003)
Baswana, S., Sen, S.: Approximate distance oracles for unweighted graphs in expected O(n 2) time. ACM Trans. Algorithms 2(4), 557–577 (2006)
Berman, P., Diks, K., Pelc, A.: Reliable broadcasting in logarithmic time with byzantine link failures. J. Algorithms 22, 199–211 (1997)
Bernstein, A., Karger, D.: Improved distance sensitivity oracles via random sampling. In: Proc. 19th ACM-SIAM Symp. on Discrete Algorithms (SODA), pp. 34–43 (2008)
Bernstein, A., Karger, D.: A nearly optimal oracle for avoiding failed vertices and edges. In: Proc. 41st ACM Symp. on Theory of Computing (STOC), pp. 101–110 (2009)
Blough, D., Pelc, A.: Optimal communication in networks with randomly distributed byzantine faults. Networks 23, 691–701 (1993)
Chechik, S., Langberg, M., Peleg, D., Roditty, L.: Fault-tolerant spanners for general graphs. SIAM J. Comput. 37(7), 3403–3423 (2010)
Cohen, E.: Fast algorithms for constructing t-spanners and paths with stretch t. In: Proc. IEEE Symp. on Foundations of Computer Science, pp. 648–658 (1993)
Courcelle, B., Twigg, A.: Compact forbidden-set routing. In: Proc. STACS, pp. 37–48 (2007)
Cowen, L.J.: Compact routing with minimum stretch. J. Algorithms 38, 170–183 (2001)
Demetrescu, C., Italiano, G.F.: Experimental analysis of dynamic all pairs shortest path algorithms. In: Proc. 15th SODA, pp. 362–371 (2004)
Demetrescu, C., Thorup, M., Chowdhury, R., Ramachandran, V.: Oracles for distances avoiding a failed node or link. SIAM J. Comput. 37(5), 1299–1318 (2008)
Diks, K., Pelc, A.: Almost safe gossiping in bounded degree networks. SIAM J. Discrete Math. 5, 338–344 (1992)
Dolev, D.: The byzantine generals strike again. J. Algorithms 3, 14–30 (1982)
Dor, D., Halperin, S., Zwick, U.: All-pairs almost shortest paths. SIAM J. Comput. 29(5), 1740–1759 (2000)
Duan, R., Pettie, S.: Dual-failure distance and connectivity oracles. In: Proc. SODA (2009)
Eilam, T., Gavoille, C., Peleg, D.: Compact routing schemes with low stretch factor. J. Algorithms 46, 97–114 (2003)
Elkin, M.: Computing almost shortest paths. ACM Trans. Algorithms 1(2), 283–323 (2005)
Eppstein, D., Galil, Z., Italiano, G.F., Nissenzweig, N.: Sparsification—A technique for speeding up dynamic graph algorithms. J. ACM 44 (1997)
Fekete, A.D., Lynch, N., Mansour, Y., Spinelli, J.: The impossibility of implementing reliable communication in the face of crashes. J. ACM 40, 1087–1107 (1993)
Fraigniaud, P., Gavoille, C.: Memory requirement for universal routing schemes. In: Proc. 14th ACM Symp. on Principles of Distributed Computing, pp. 223–230 (1995)
Gafni, E., Afek, Y.: End-to-end communication in unreliable networks. In: Proc. 7th ACM Symp. on Principles of Distributed Computing (PODC), pp. 131–148 (1988)
Gavoille, C., Gengler, M.: Space-efficiency for routing schemes of stretch factor three. J. Parallel Distrib. Comput. 61, 679–687 (2001)
Gavoille, C., Peleg, D.: Compact and localized distributed data structures. Distrib. Comput. 16, 111–120 (2003)
Goldreich, O., Herzberg, A., Mansour, Y.: Source to destination communication in the presence of faults. In: Proc 7th ACM Symp. on Principles of Distributed Computing (PODC), pp. 85–101 (1989)
Herzberg, A., Kutten, S.: Fast isolation of arbitrary forwarding faults. In: Proc. 8th ACM Symp. on Principles of Distributed Computing (PODC), pp. 339–353 (1989)
Holm, J., de Lichtenberg, K., Thorup, M.: Poly-logarithmic deterministic fully-dynamic algorithms for connectivity, minimum spanning tree, 2-edge, and biconnectivity. J. ACM 48(4), 723–760 (2001)
Kavitha, T.: Faster algorithms for all-pairs small stretch distances in weighted graphs. In: Proc. FSTTCS, pp. 328–339 (2007)
Khanna, N., Baswana, S.: Approximate shortest paths oracle handling single vertex failure. In: Proc. STACS (2010)
Kučera, L.: Broadcasting through a noisy one-dimensional network. Technical Report MPI-I-93-106, Max-Planck-Institut, Saarbruecken, Germany (1993)
Nagamochi, H., Ibaraki, T.: Linear time algorithms for finding a sparse k-connected spanning subgraph of a k-connected graph. Algorithmica 7, 583–596 (1992)
Pǎtraşcu, M., Thorup, M.: Planning for fast connectivity updates. In: Proc. 48th IEEE Symposium on Foundations of Computer Science (FOCS), pp. 263–271 (2007)
Pelc, A.: Fault-tolerant broadcasting and gossiping in communication networks. Networks 28, 143–156 (1996)
Pelc, A., Peleg, D.: Feasibility and complexity of broadcasting with random transmission failures. Theor. Comput. Sci. 370, 279–292 (2007)
Peleg, D.: Distributed Computing: A Locality-Sensitive Approach. SIAM, Philadelphia (2000)
Peleg, D., Ullman, J.D.: An optimal synchronizer for the hypercube. SIAM J. Comput. 18(4), 740–747 (1989)
Peleg, D., Upfal, E.: A trade-off between space and efficiency for routing tables. J. ACM 36(3), 510–530 (1989)
Roditty, L., Zwick, U.: A fully dynamic reachability algorithm for directed graphs with an almost linear update time. In: Proc. 36th STOC, pp. 184–191 (2004)
Roditty, L., Thorup, M., Zwick, U.: Deterministic constructions of approximate distance oracles and spanners. In: Proc. 32nd ICALP, pp. 261–272 (2005)
Roditty, L., Thorup, M., Zwick, U.: Roundtrip spanners and roundtrip routing in directed graphs. ACM Trans. Algorithms 4(3), 1–17 (2008)
Thorup, M.: Fully-dynamic all-pairs shortest paths: Faster and allowing negative cycles. In: Proc. 9th SWAT, pp. 384–396 (2004)
Thorup, M.: Worst-case update times for fully-dynamic all-pairs shortest paths. In: Proc. 37th ACM Symp. on Theory of Computing (STOC), pp. 112–119 (2005)
Thorup, M., Zwick, U.: Compact routing schemes. In: Proc. 13th ACM Symp. on Parallel Algorithms and Architectures (SPAA), pp. 1–10 (2001)
Thorup, M., Zwick, U.: Approximate distance oracles. J. ACM 52(1), 1–24 (2005)
Thurimella, R.: Techniques for the design of parallel graph algorithms. PhD thesis, Univ. of Texas, Austin (1989)
Twigg, A.: Compact forbidden-set routing. PhD thesis, Cambridge University (2006)
Author information
Authors and Affiliations
Corresponding author
Additional information
The work of the second author was supported in part by The Open University of Israel’s Research Fund (grant no. 46109) and Cisco Collaborative Research Initiative (CCRI).
Rights and permissions
About this article
Cite this article
Chechik, S., Langberg, M., Peleg, D. et al. f-Sensitivity Distance Oracles and Routing Schemes. Algorithmica 63, 861–882 (2012). https://doi.org/10.1007/s00453-011-9543-0
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00453-011-9543-0