A closer look at fault tolerance

Gadi Taubenfeld

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

The traditional notion of fault tolerance requires that all the correct participating processes eventually terminate, and thus, is not sensitive to the number of correct processes that should properly terminate as a result of failures. Intuitively, an algorithm that in the presence of any number of faults always guarantees that all the correct processes except maybe one properly terminate, is more resilient to faults than an algorithm that in the presence of a single fault does not even guarantee that a single correct process ever terminates. However, according to the standard notion of fault tolerance both algorithms are classified as algorithms that can not tolerate a single fault. To overcome this difficulty, we generalize the traditional notion of fault tolerance in a way which enables to capture more sensitive information about the resiliency of an algorithm. Then, we present several algorithms for solving classical problems which are resilient under the new notion. It is well known that, in an asynchronous systems where processes communicate either by reading and writing atomic registers or by sending and receiving messages, important problems such as, consensus, set-consensus, election, perfect renaming, implementations of a test-and-set bit, a shared stack, a swap object and a fetch-and-add object have no deterministic solutions which can tolerate even a single fault. We show that while, some of these problems have solutions which guarantee that in the presence of any number of faults most of the correct processes will properly terminate; other problems do not even have solutions which guarantee that in the presence of just one fault at least one correct process properly terminates.

Original languageEnglish
Title of host publicationPODC'12 - Proceedings of the 2012 ACM Symposium on Principles of Distributed Computing
Pages261-270
Number of pages10
DOIs
StatePublished - 2012
Externally publishedYes
Event2012 ACM Symposium on Principles of Distributed Computing, PODC'12 - Madeira, Portugal
Duration: 16 Jul 201218 Jul 2012

Publication series

NameProceedings of the Annual ACM Symposium on Principles of Distributed Computing

Conference

Conference2012 ACM Symposium on Principles of Distributed Computing, PODC'12
Country/TerritoryPortugal
CityMadeira
Period16/07/1218/07/12

Keywords

  • consensus
  • election
  • estack
  • fault tolerance
  • fetch-and-add
  • message passing
  • renaming
  • set-consensus
  • shared memory
  • swap
  • test-and-set swap, fetch-and-add.

Fingerprint

Dive into the research topics of 'A closer look at fault tolerance'. Together they form a unique fingerprint.

Cite this