skip to main content
research-article

Optimal maintenance of a spanning tree

Published:18 September 2008Publication History
Skip Abstract Section

Abstract

In this article, we show that keeping track of history enables significant improvements in the communication complexity of dynamic network protocols. We present a communication optimal maintenance of a spanning tree in a dynamic network. The amortized (on the number of topological changes) message complexity is O(V), where V is the number of nodes in the network. The message size used by the algorithm is O(log |ID|) where |ID| is the size of the name space of the nodes. Typically, log |ID| = O(log V).

Previous algorithms that adapt to dynamic networks involved Ω (E) messages per topological change—inherently paying for re-computation of the tree from scratch.

Spanning trees are essential components in many distributed algorithms. Some examples include broadcast (dissemination of messages to all network nodes), multicast, reset (general adaptation of static algorithms to dynamic networks), routing, termination detection, and more. Thus, our efficient maintenance of a spanning tree implies the improvement of algorithms for these tasks. Our results are obtained using a novel technique to save communication. A node uses information received in the past in order to deduce present information from the fact that certain messages were NOT sent by the node's neighbor. This technique is one of our main contributions.

References

  1. Afek, Y., Awerbuch, B., and Gafni, E. 1987. Applying static network protocols to dynamic networks. In Proceedings of the 28th IEEE Conference on Foundations of Computer Science (Oct.). IEEE Computer Society Press, Los Alamitos, CA, 358--370. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Afek, Y., Awerbuch, B., Gafni, E., Mansour, Y., Rosen, A., and Shavit, N. 1997. Slide-the key to polynomial end-to-end communication. J. Algorithms 22, 1, 158--186. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Afek, Y., Awerbuch, B., and Moriel, H. 1989. Overhead of resetting a communication protocol is independent of the size of the network. (May) Unpublished manuscript.Google ScholarGoogle Scholar
  4. Afek, Y., and Gafni, E. 1988. End-to-end communication in unreliable networks. In Proceedings of the ACM Symposium on Principles of Distributed Computing, ACM, New York, 131--148. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Afek, Y., and Gafni, E. 1991. Bootstrap network resynchronization. In Proceedings of the ACM Symposium on Principles of Distributed Computing, ACM, New York, 295--307. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Afek, Y., Gafni, E., and Rosen, A. 1992. The slide mechanism with applications in dynamic networks. In Proceedings of the ACM Symposium on Principles of Distributed Computing, ACM, New York, 35--46. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Afek, Y., Kutten, S., and Yung, M. 1990. Memory-efficient self stabilizing protocols for general networks. In Proceedings of the 5th Workshop on Distributed Algorithms. Lecture Notes in Computer Science, Springer-Verlag, New York, 15--28. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Arora, A., and Gouda, M. G. 1994. Distributed reset. IEEE Trans. Computers 43. 9, 1026--1038. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Auerbach, J., Gopal, M., Kaplan, M., and Kutten, S. 2003. Multicast group membership management. IEEE/ACM Trans. Netw. 11, 1 (Feb.), 166--175. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Awerbuch, B. 1985. Complexity of network synchronization. J. ACM. 32, 4 (Oct.), 804--823. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Awerbuch, B. 1990. On the effects of feedback in dynamic network protocols. J. Algorithms 11, 3, 342--373. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Awerbuch, B., Cidon, I., Gopal, I., Kaplan, M., and Kutten, S. 1990a. Distributed control for PARIS. In Proceedings of the 9th Annual ACM Symposium on Principles of Distributed Computing (Quebec City, Que., Canada), ACM, New York, 145--160. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Awerbuch, B., Cidon, I., and Kutten, S. 1990b. Communication-optimal maintenance of replicated information. In Proceedings of IEEE Symposium on Foundations of Computer Science. Ieee Computer Society Press, Loss Alamitos, CA, 492--502. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Awerbuch, B., Cidon, I., Kutten, S., Mansour, Y., and Peleg, D. 1998. Optimal broadcast with partial knowledge. SIAM J. Comput. 28, 2, 511--524. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Awerbuch, B., Goldreich, O., and Herzberg, A. 1990c. A quantitative approach to dynamic networks. In Proceedings of the ACM Symposium on Principles of Distributed Computing. ACM, New York, 189--203. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Awerbuch, B., Goldreich, O., Peleg, D., and Vainish, R., 1990d. A tradeoff between information and communication in broadcast protocols. J. ACM. 37, 2, 238--256. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Awerbuch, B., Mansour, Y., and Shavit, N. 1989. End-to-end communication with polynomial overhead. In Proceedings of IEEE Symposium on Foundations of Computer Science. IEEE Computer Society Press, Los Alamitos, CA, 358--363. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Awerbuch, B., and Micali, S. 1986. Dynamic deadlock resolution protocols. In Proceedings of the IEEE Symposium on Foundations of Computer Science. IEEE Computer Society Press, Los Alamitos, CA, 196--207. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Awerbuch, B., Patt-Shamir, B., and Varghese, G. 1991. Self-stabilization by local checking and correction. In of the IEEE Symposium on Foundations of Computer Science. IEEE Computer Society Press, Los Alamitos, CA, 268--277. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Awerbuch, B., and Schulman, L.J. 1997. The maintenance of common data in a distributed system. J. ACM 44, 1, 86--103. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Awerbuch, B., and Sipser, M. 1988. Dynamic networks are as fast as static networks. In Proceedings of the IEEE Symposium on Foundations of Computer Science. IEEE Computer Society Press, Los Alamitos, CA, 206--220. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Baratz, A. E., Gray, J. P., Green Jr., P. E., Jaffe, J. M., and Pozefski, D. P. 1985. SNA networks of small systems. IEEE J. Select. Areas Commun. SAC-3, 3 (May), 416--426.Google ScholarGoogle Scholar
  23. Barnes, D., and Sakandar, B. 2004. Cisco LAN Switching Fundamentals. Cisco Press, ISBN: 1587050897. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Behrens, J., and Garcia-Luna-Aceves, J. J. 1994. Distributed, scalable routing based on link-state vectors. In Proceedings of the Conference on Communications Architectures (London, UK), 136--147. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Bellur, B., and Ogier, R. G. 1999. A reliable, efficient topology broadcast protocol for dynamic networks. In Proceedings of IEEE INFOCOM. IEEE Computer Society Press, Los Alamitos, CA.Google ScholarGoogle Scholar
  26. Bui, M., Butelle, F., and Lavault, C. 2004. A distributed algorithm for constructing a minimum diameter spanning tree. J. Parallel Distrib. Comput. 64, 5, 571--577. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Chandy, K. M., and Lamport, L. 1985. Distributed snapshots: Determining global states of distributed systems. ACM Trans. Comput. Syst. 3, 1, 63--75. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Cheng, C., Cimet, I. A., and Kumar, S. P. R. 1988. A protocol to maintain a minimum spanning tree in dynamic topology. In Proceedings of ACM SIGCOMM 1988 Symposium (Stanford, CA, Aug. 16--18), ACM, New York, 330--337. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Cheng, C., Riley, R., Kumar, S. P. R., and Garcia-Luna-Aceves, J. J. 1989. A loop-free extended Bellman-Ford routing protocol without bouncing effect. In Proceedings of the ACM SIGCOMM '89th (Sept.), ACM, New York, 224--237. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Cicerone, S., Stefano, G. D., Frigione, D., and Nanni, U. 2003. A fully dynamic algorithm for distributed shortest paths. Theoret. Comput. Sci. 297, 83--102. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Cidon, I., and Gopal, I. S. 1988. PARIS: An approach to integrated high-speed private networks. Int. J. Digital Analog Cabled Syst. 1, 2, (April-June), 77--86.Google ScholarGoogle Scholar
  32. Cidon, I., Gopal, I. S., Kaplan, M., and Kutten, S. 1995a. A distributed control architecture of high-speed networks. IEEE Trans. Commun. 43, 5 (May) 1950--1960.Google ScholarGoogle ScholarCross RefCross Ref
  33. Cidon, I., Gopal, I. S., and Kutten, S. 1995b. New models and algorithms for future networks. IEEE Trans. Inf. Theory 41, 3 (May), 769--780. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Cidon, I., Hsiao, T., Khamisy, A., Parekh, A., Rom, R., and Sidi, M. 1999. OPENET: An open and efficient control platform for ATM networks. J. High Speed Netw. 8, 3, 195--210. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. Cohen, R., and Segall, A. 1988. A distributed query protocol for high-speed networks. In Proceedings of the 9th International Conference on Computer Communication (ICCC88), (Tel Aviv, Israel, Oct.-Nov.) 299--302.Google ScholarGoogle Scholar
  36. Dijkstra, E. W., and Scholten, C. S. 1980. Termination detection for diffusing computations. Inf. Proc. Lett. 11, 1 (Aug.) 1--4.Google ScholarGoogle ScholarCross RefCross Ref
  37. Dolev, S., Israeli, A., and Moran, S. 1993. Self-stabilization of dynamic systems assuming only read/write atomicity. Distrib. Comput. 7, 1, 3--16. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. Elkin, M. 2007. A near-optimal distributed fully dynamic algorithm for maintaining sparse spanners. In Proceedings of the 26th Annual ACM Symposium on Principles of Distributed Computing Portland, Or). ACM, New York, 185--194. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. Even, S. 1979. Graph Algorithms. Computer Science Press. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. Finn, S. G. 1979. Resynch procedures and a fail-safe network protocol. IEEE Trans. Commun. COM-27, 6 (June) 840--845.Google ScholarGoogle ScholarCross RefCross Ref
  41. Fischer, M. J., Lynch, N. A., and Paterson, M.S. 1985. Impossibility of distributed consensus with one family faulty process. J. ACM, 32, 2 (Apr.), 374--382. Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. Frederickson, G. N. 1985. Data structures for on-line updating of minimum spanning trees. SIAM J. Comput. 14, 781--798.Google ScholarGoogle ScholarCross RefCross Ref
  43. Gafni, E. 1987. Topology resynchronization: A new paradigm for fault tolerance in distributed algorithms. In Proceedings of the 2nd Workshop on Distributed Algorithms (WDAG'87) Amsterdam, The Netherlands, July 8--10), Lecture Notes in Computer Science, vol. 312, Springer-Verlag, New York,Google ScholarGoogle Scholar
  44. Gafni, E., and Afek, Y. 1987. Local fail-safe resynch procedure. unpublished manuscript, (Apr.).Google ScholarGoogle Scholar
  45. Gallager, R. G. 1976. A shortest path routing algorithm with automatic resynch. Tech. repo. MIT LIDS, (Mar).Google ScholarGoogle Scholar
  46. Gallager, R. G. 1977. A minimum delay routing algorithm using distributed computation. IEEE Trans. Commun. 25, 1, 73--85.Google ScholarGoogle ScholarCross RefCross Ref
  47. Gallager, R. G., Humblet, P. A., and Spira, P. M. 1983. A distributed algorithm for minimum-weight spanning trees. ACM Trans. Prog. Lang. Syst. 5, 1 (Jan.), 66--77. Google ScholarGoogle ScholarDigital LibraryDigital Library
  48. Garcia-Luna-Aceves, J. J. 1989. A unified approach to loop-free routing using distance vectors or link states. ACM SIGCOMM Comput. Commun. Rev. Arch. 19, 4, 212--223. Google ScholarGoogle ScholarDigital LibraryDigital Library
  49. Garcia-Luna-Aceves, J. J. 1993. Loop-free routing using diffusing computations. IEEE/ACM Trans. Netw. 1, 1 (Feb.), 130--141. Google ScholarGoogle ScholarDigital LibraryDigital Library
  50. Guerin, R., Rank, J., Sarkar, S., and Vergetis, E. 2003. Forming connected topologies in bluetooth adhoc networks. In Proceedings of ITC'18 (Berlin, Germany, Sept.).Google ScholarGoogle Scholar
  51. Humblet, P. A. 1981. An adaptive distributed Dijkstra shortest path algorithm. Tech. Rep. CICS-P-60, Center for Intelligent Control Systems, MIT, Cambridge, MA, (May).Google ScholarGoogle Scholar
  52. Humblet, P. 1991. Another adaptive distributed shortest path algorithm. IEEE Trans. Commun. 39, 6, 995--1003.Google ScholarGoogle ScholarCross RefCross Ref
  53. Humblet, P., and Soloway, S. 1989. Topology broadcast algorithms. Comput. Netw. ISDN Syst. 16, 179--186. Google ScholarGoogle ScholarDigital LibraryDigital Library
  54. IETF. http://www.ietf.org/proceedings/02nov/179.htm.Google ScholarGoogle Scholar
  55. Italiano, G. F. 1991. Distributed algorithms for updating shortest paths. In Proceedings of the 5th International Workshop on Distributed Algorithms. Lecture Notes in Computer Science, Springer-Verlag, New York, 200--211. Google ScholarGoogle ScholarDigital LibraryDigital Library
  56. Italiano, G. F., and Ramaswami, R. 1998. Maintaining spanning trees of small diameter. Algorithmica, 22, 3, 275--304.Google ScholarGoogle ScholarCross RefCross Ref
  57. Jaffe, J., and Moss, F. 1982. A responsive distributed routing protocol. IEEE Trans. Commun. COM-30, 7, II (Jul.), 1758--1762.Google ScholarGoogle Scholar
  58. Korach, E., and Markovitz, M. 1986. Algorithms for distributed spanning tree construction in dynamic networks. Tech. Rep. 401, Dept of CS, Technion, Haifa, Israel (Feb).Google ScholarGoogle Scholar
  59. Korach, E., Moran, S., and Zaks, S. 1989. Optimal lower bounds for some distributed algorithms for a complete network of processors. Theoret. Comput. Sci. 64, 1, 125--132. Google ScholarGoogle ScholarDigital LibraryDigital Library
  60. Kutten, S., and Porat, A. 1999. Maintenance of a spanning tree in dynamic networks. In Proceedings of the 13th International Symposium on Distributed Computing (DISC'99), (Bratislava, Slovak Republic, Sept.), 342--355. Google ScholarGoogle ScholarDigital LibraryDigital Library
  61. McQuillan, J., Richer, I., and Rosen, E. 1980. The new routing algorithm for the arpanet. IEEE Trans. Commun., 28, 5 (May), 711--719.Google ScholarGoogle ScholarCross RefCross Ref
  62. Marin, G. A., Immanuel, C. P., Chimento, P. F., and Gopal, I. S. 1995. Overview of the NBBS architecture — Networking BroadBand Services. IBM Syst. J. 34, 4 (Dec.), 564. Google ScholarGoogle ScholarDigital LibraryDigital Library
  63. Merlin, P., and Segall, A. 1979. Failsafe distributed routing protocol. IEEE Trans. Comm. 27 (Sept.), 1280--1287.Google ScholarGoogle ScholarCross RefCross Ref
  64. Ogier, R., Templin, F., and Lewis, M. 2004. RFC3684: Topology Dissemination Based on Reverse-Path Forwarding (TBRPF). An Internet RFC: http://portal.acm.org/citation.cfm-id=RFC3684. Google ScholarGoogle ScholarDigital LibraryDigital Library
  65. Perlman, R. 1999. Interconnections: Bridges, Routers, Switches, and Internetworking Protocols, (2nd Ed.), Addison-Wesley Professional, Reading, MA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  66. Rajagopalan, B., and Faiman, M. 1989. A new responsive distributed shortest path routing algorithm. In Proceedings of the ACM Symposium on Communications Architectures & Protocols (Austin, TX, Sept.). ACM, New York, 237--246. Google ScholarGoogle ScholarDigital LibraryDigital Library
  67. Ramarao, K. V. S., and Venkatesan, S. 1992. On finding and updating shortest paths distributively. J. Algorithms, 13, 235--257. Google ScholarGoogle ScholarDigital LibraryDigital Library
  68. Segall, A. 1983. Distributed network protocols. IEEE Trans. Inf. Syst. IT-29, 1 (Jan.), 23--35.Google ScholarGoogle ScholarDigital LibraryDigital Library
  69. Segall, A., and Sidi, M. 1981, A failsafe distributed protocol for minimum delay routing. IEEE Trans. Commun., COM-29, 5 (May), 689--695.Google ScholarGoogle ScholarCross RefCross Ref
  70. Spinelli, J.M., and Gallager, R. G. 1989. Broadcasting topology information in computer networks. IEEE Trans. Commun. (May).Google ScholarGoogle Scholar
  71. Tanenbaum, A. 2002. Computer Networks, (4th Ed.), Prentice-Hall, Engewood, Cliffs, NJ. Google ScholarGoogle ScholarDigital LibraryDigital Library
  72. Turner, J. S. 1988. Design of a broadcast packet switching network. IEEE Trans. Commun. 36, 6 (Jun.), 734--743.Google ScholarGoogle ScholarCross RefCross Ref
  73. Vishkin, U. 1983. A distributed orientation algorithm. IEEE Trans. Inf. Theory, IT-29, 4 (July), 624--629.Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Optimal maintenance of a spanning tree

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        Full Access

        • Published in

          cover image Journal of the ACM
          Journal of the ACM  Volume 55, Issue 4
          September 2008
          170 pages
          ISSN:0004-5411
          EISSN:1557-735X
          DOI:10.1145/1391289
          Issue’s Table of Contents

          Copyright © 2008 ACM

          Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 18 September 2008
          • Accepted: 1 February 2008
          • Revised: 1 November 2006
          • Received: 1 February 2005
          Published in jacm Volume 55, Issue 4

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • research-article
          • Research
          • Refereed

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader