Agreement and consistency without knowing the number of processes

  • Authors:
  • Mohssen Abboud;Carole Delporte-Gallet;Hugues Fauconnier

  • Affiliations:
  • LIAFA- CNRS et Université, Paris Cedex, France;LIAFA- CNRS et Université, Paris Cedex, France;LIAFA- CNRS et Université, Paris Cedex, France

  • Venue:
  • NOTERE '08 Proceedings of the 8th international conference on New technologies in distributed systems
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

We study in this paper three classical problems of fault tolerance in a system where the set of processes is unknown. These three problems are: the consensus, the implementation of atomics registers and the eventual leader election. For this, we consider different models. In the first one, the communication and the processes are asynchronous. In this model, these three problems could not be solved, but we define the weakest failure detectors needed to solve them. We consider then a model where the processes and the communication are synchronous, which permit to realize synchronous rounds. In this case, the processes are created dynamically and may have crash failures. We prove that, if for all rounds at least one process is alive in two consecutive rounds, the consensus and the implementation of registers could be solved. The eventual leader election, which is in this case less interesting, can be solved also. Between these two extremities, we focus on the case where the communications are asynchronous. Concerning processes, we assume that, onetime a process is created, it remains alive forever. In this case, if the leader election is easy, the consensus and the implementation of registers are impossible. If we augment the system with the failure detector (Σ) which permits to realize a quorum, consensus and implementation of atomic register can be solved. At the end, we consider a partially synchronous model and we prove that the consensus and the implementation of atomic register could be solved if there exists a process that can communicate synchronously with the other processes.