skip to main content
10.1145/343477.362113acmconferencesArticle/Chapter ViewAbstractPublication PagespodcConference Proceedingsconference-collections
Article
Free Access

Optimal implementation of the weakest failure detector for solving consensus (brief announcement)

Published:16 July 2000Publication History

ABSTRACT

Unreliable failure detectors were introduced by Chandra and Toueg [2] as a mechanism that provides (possibly incorrect) information about process failures. They showed how unreliable failure detectors can be used to solve the Consensus problem in asynchronous systems. They also showed in [1] that one of the classes of failure detectors they defined, namely Eventually Strong (⋄S), is the weakest class allowing to solve Consensus1.

This brief announcement presents a new algorithm implementing ⋄S. Due to space limitation, the reader is referred to [4] for an in-depth presentation of the algorithm (system model, correctness proof, and performance analysis). Here, we present the general idea of the algorithm and compare it with other algorithms implementing unreliable failure detectors.

The algorithm works as follows. We have n processes, p1, …, pn. Initially, process p1 starts sending messages periodically to the rest of processes. The rest of processes initially trust p1, and wait for its messages. If a process does not receive a message within some timeout period from its trusted process, then it suspects its trusted process and takes the next process as its new trusted process. If a process trusts itself, then it starts sending messages periodically to its successors. Otherwise, it just waits for periodical messages from its trusted process.

If, at some point, a process receives a message from a process pi such that pi precedes its trusted process, then it will trust pi again, increasing the value of its timeout period with respect to pi.

With this algorithm, eventually all the correct processes will permanently trust the same correct process. This provides the eventual weak accuracy property required by ⋄S. By simply suspecting the rest of processes, we obtain the strong completeness property required by ⋄S.

Our algorithm compares favorably with the algorithms proposed in [2] and [3] in terms of the number and size of the messages periodically sent and the total amount of information periodically exchanged. Since algorithms implementing failure detectors need not necessarily be periodic, we propose a new and (we believe) more adequate performance measure, which we call eventual monitoring degree. Informally, this measure counts the number of pairs of correct processes that will infinitely often communicate. We show that the proposed algorithm is optimal with respect to this measure. Table 1 summarizes the comparison, where C denotes the number of correct processes and LFA denotes the proposed algorithm.

References

  1. 1.T. D. Chandra, V. Hadzilacos, and S. Toueg. The weakest failure detector for solving consensus. Journal of the ACM, 43(4):685-722, July 1996.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. 2.T. D. Chandra and S. Toueg. Unreliable failure detectors for reliable distributed systems. Journal of the ACM, 43(2):225-267, March 1996.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. 3.M. Larrea, S. Ardvalo, and A. Fernandez. Efficient algorithms to implement unreliable failure detectors in partially synchronous systems. In Proceedings of the 13th International Symposium on Distributed Computing (DISC'99), (Formerly WDAG), pages 34-48, September 1999.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. 4.M. Larrea, A. Fernindez, and S. Ardvalo. Optimal implementation of the weakest failure detector for solving consensus. Technical Report, Universidad Pdblica de Navarra, Departamento de Matemitica e Informitica, January 2000. http://www.gsd.unavarra.es/pres/miembros/mikel/.]]Google ScholarGoogle ScholarCross RefCross Ref

Index Terms

  1. Optimal implementation of the weakest failure detector for solving consensus (brief announcement)

              Recommendations

              Comments

              Login options

              Check if you have access through your login credentials or your institution to get full access on this article.

              Sign in
              • Published in

                cover image ACM Conferences
                PODC '00: Proceedings of the nineteenth annual ACM symposium on Principles of distributed computing
                July 2000
                344 pages
                ISBN:1581131836
                DOI:10.1145/343477

                Copyright © 2000 ACM

                Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

                Publisher

                Association for Computing Machinery

                New York, NY, United States

                Publication History

                • Published: 16 July 2000

                Permissions

                Request permissions about this article.

                Request Permissions

                Check for updates

                Qualifiers

                • Article

                Acceptance Rates

                PODC '00 Paper Acceptance Rate32of117submissions,27%Overall Acceptance Rate740of2,477submissions,30%

                Upcoming Conference

                PODC '24

              PDF Format

              View or Download as a PDF file.

              PDF

              eReader

              View online with eReader.

              eReader