The Computer Journal Advance Access originally published online on January 26, 2007
The Computer Journal 2007 50(3):332-340; doi:10.1093/comjnl/bxl081
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||
An Optimal Snap-Stabilizing Multi-Wave Algorithm
1 Erik Jonsson School of Engineering and Computer Science, University of Texas at Dallas, Richardson, TX 75083-0688
2 School of Computer Science, University of Nevada, Las Vegas, NV 89154-4019, USA
3 Department of Computer Engineering, Kuwait University, P.O. Box 5969, Safat 13060, Kuwait
* Corresponding author: karaata{at}eng.kuniv.edu.kw
Received 28 December 2005; revised 24 November 2006
Synchronization is an important task in distributed computing since it allows asynchronous systems to simulate synchronous ones. Synchronization among distributed processes can be implemented using waves. A wave is a distributed execution, often made up of a broadcast phase followed by a feedback phase, requiring the participation of all the system processes before a particular event called decision is taken. Waves consisting of consecutive distinct broadcasts with corresponding feedbacks are referred to as a multi-wave. Solutions to a large number of fundamental problems in distributed computing such as distributed reset [1] and multiphase stabilization [10] require the completion of multi-waves. In this article, we propose a time and state-space optimal snap-stabilizing multi-wave algorithm implementing k distinct consecutive waves (k > 2) in a rooted tree, with O(kh) rounds of delay and at most k + 4 states per process, where h is the height of the tree. A system is said to be snap-stabilizing if it always behaves according to its specification [13]. One of the main advantages of the multi-wave algorithm being snap-stabilizing is that the arbitrary initial configuration has limited or no effect on the pace of the broadcast propagation.
Key Words: Distributed computing fault tolerance phase clocks propagation of information with feedback and cleaning (PFC) self-stabilization, snap-stabilization wave algorithms