When consensus meets self-stabilization

  • Authors:
  • Shlomi Dolev;Ronen I. Kat;Elad M. Schiller

  • Affiliations:
  • Department of Computer Science, Ben-Gurion University of the Negev, Beer-Sheva, 84105, Israel;Department of Computer Science, Ben-Gurion University of the Negev, Beer-Sheva, 84105, Israel;Department of Computer Science and Engineering, Chalmers University of Technology and Göteborg University, Rännvägen 6B SE-412 96 Göteborg, Sweden

  • Venue:
  • Journal of Computer and System Sciences
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper presents a shared-memory self-stabilizing failure detector, asynchronous consensus and replicated state-machine algorithm suite, the components of which can be started in an arbitrary state and converge to act as a virtual state-machine. Self-stabilizing algorithms can cope with transient faults. Transient faults can alter the system state to an arbitrary state and hence, cause a temporary violation of the safety property of the consensus. Started in an arbitrary state, the long lived, memory bounded and self-stabilizing failure detector, asynchronous consensus, and replicated state-machine suite, presented in the paper, recovers to satisfy eventual safety and eventual liveness requirements. Several new techniques and paradigms are introduced. The bounded memory failure detector abstracts away synchronization assumptions using bounded heartbeat counters combined with a balance-unbalance mechanism. The practically infinite paradigm is introduced in the scope of self-stabilization, where an execution of, say, 2^6^4 sequential steps is regarded as (practically) infinite. Finally, we present the first self-stabilizing wait-free reset mechanism that ensures eventual safety and can be used to implement efficient self-stabilizing timestamps that are of independent interest.