Encapsulating Failure Detection: From Crash to Byzantine Failures

  • Authors:
  • Assia Doudou;Benoît Garbinato;Rachid Guerraoui

  • Affiliations:
  • -;-;-

  • Venue:
  • Ada-Europe '02 Proceedings of the 7th Ada-Europe International Conference on Reliable Software Technologies
  • Year:
  • 2002

Quantified Score

Hi-index 0.01

Visualization

Abstract

Separating different aspects of a program, and encapsulating them inside well defined modules, is considered a good engineering discipline. This discipline is particularly desirable in the development of distributed agreement algorithms which are known to be difficult and error prone. For such algorithms, one aspect that is important to encapsulate is failure detection. In fact, a complete encapsulation was proven to be feasible in the context of distributed systems with process crash failures, by using black-box failure detectors. This paper discusses the feasibility of a similar encapsulation in the context of Byzantine (also called arbitrary or malicious) failures. We argue that, in the Byzantine context, it is just impossible to achieve the level of encapsulation of the original crash failure detector model. However, we also argue that there is some room for an intermediate approach where algorithms that solve agreement problems, such as consensus and atomic broadcast, can still benefit from grey-box failure detectors that partially encapsulate Byzantine failure detection.