Abstract
A smoothing network is a distributed data structure that accepts tokens on input wires and routes them to output wires. It ensures that however imbalanced the traffic on input wires, the numbers of tokens emitted on output wires are approximately balanced.
Prior work on smoothing networks always assumed that such networks were properly initialized. In a real distributed system, however, network switches may be rebooted or replaced dynamically, and it may not be practical to determine the correct initial state for the new switch. Prior analyses do not work under these new assumptions.
This paper makes the following contributions. First, we show that some well-known 1-smoothing networks, known as counting networks, when started in an arbitrary initial state (perhaps chosen by an adversary), remain remarkably smooth, degrading from 1-smooth to (log n)-smooth, where n is the number of input/output wires. For the networks that we consider, we show that the above (log n) bound for the smoothness is tight.
Our second contribution is to show how any balancing network can be made self-stabilizing with the addition of local stabilization actions and state, which restore the network back to a “legal state” even if it starts out in an illegal state.
Similar content being viewed by others
References
Aiello, W., Venkatesan, R., Yung, M.: Coins, weights and contention in balancing networks. In: Proceedings of the ACM Symposium on Principles of Distributed Computing, pp. 193–205 (August 1994)
Aspnes, J., Herlihy, M., Shavit, N.: Counting networks. J. ACM, 41(5), 1020–1048 (1994)
Batcher, K.E.: Sorting networks and their applications. In: Proceedings of the AFIPS Spring Joint Computer Conference. vol 32, pp. 338–334 (1968)
Busch, C., Herlihy, M.: A survey on counting networks. In Proceedings of Workshop on Distributed Data and Structures (WDAS). (March 1998)
Dijkstra, E.W.: Self stabilizing systems in spite of distributed control. Communications of the ACM, 17, 643–644 (1974)
Dolev, S.: Self-Stabilization. The MIT Press. (2000)
Dowd, M., Perl, Y., Rudolph, L., Saks, M.: The periodic balanced sorting network. J. ACM, 36(4), 738–757 (October 1989)
Herlihy, M., Tirthapura, S.: Randomized smoothing networks. In Proceedings of the International Parallel and Distributed Processing Symposium. (April 2004)
Reidel, M., Bruck, J.: Tolerating faults in counting networks. In IEEE Workshop on Fault-Tolerant Parallel and Distributed Systems. (April 1999)
Schneider, M.: Self-stabilization. ACM Computing Surveys, 25, 45–67 (1993)
Author information
Authors and Affiliations
Corresponding author
Additional information
A preliminary version of this work appeared in the Proceedings of The 23rd International Conference on Distributed Computing Systems, Providence, Rhode Island, USA.
Rights and permissions
About this article
Cite this article
Herlihy, M., Tirthapura, S. Self-stabilizing smoothing and balancing networks. Distrib. Comput. 18, 345–357 (2006). https://doi.org/10.1007/s00446-005-0130-y
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00446-005-0130-y