Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/1281100.1281136acmconferencesArticle/Chapter ViewAbstractPublication PagespodcConference Proceedingsconference-collections
Article

Tolerating corrupted communication

Published: 12 August 2007 Publication History

Abstract

Consensus encalpsulates the inherent problems of building fault tolerant distributed systems. In this context, the classic model of Byzantine faulty processes can be restated such that messages from a subset of processes can be arbitrarily corrupted (including addition and omission of messages).
We consider the case of dynamic and transient faults,that may affect all processes and that are not permanent, and we model them via corrupted communication. For corrupted communication it is natural to distinguish between the safety of communication, which is concerned with the number of altered messages, and the liveness of communication, which restricts message loss.
We present two consensus algorithms, together with sufficient conditions on the system to ensure correctness. Our first algorithm needs strong conditions on safety but requires weak conditions on liveness in order to terminate. Our second algorithm tolerates a lower degree of communication safety at the price of stronger liveness conditions.
Our algorithms allow us to circumvent the resilience lower bounds from Santoro/Widmayer and Martin/Alvisi.

References

[1]
I. Abraham, G. Chockler, I. Keidar, and D. Malkhi. Byzantine disk paxos: optimal resilience with Byzantine shared memory. Distributed Computing, 18(5):387--408, 2006.
[2]
M. K. Aguilera, C. Delporte-Gallet, H. Fauconnier, and S. Toueg. Consensus with Byzantine failures and little system synchrony. In Dependable Systems and Networks (DSN 2006), pages 147--155, 2006.
[3]
H. Attiya and J. Welch. Distributed Computing. John Wiley & Sons, 2nd edition, 2004.
[4]
M. Castro and B. Liskov. Practical Byzantine fault tolerance and proactive recovery. ACM Transactions on Computer Systems, 20(4):398--461, 2002.
[5]
B. Charron-Bost and A. Schiper. Improving fast paxos: being optimistic with no overhead. In Pacific Rim Dependable Computing, Proceedings, pages 287--295, 2006.
[6]
B. Charron-Bost and A. Schiper. The Heard-Of model: Computing in distributed systens with benign failures. Technical report, EPFL, 2007.
[7]
C. Dwork, N. Lynch, and L. Stockmeyer. Consensus in the presence of partial synchrony. Journal of the ACM, 35(2):288--323, Apr. 1988.
[8]
E. Gafni. Round-by-round fault detectors (extended abstract): unifying synchrony and asynchrony. In Proc. 16th Annual ACM Symposium on Principles of Distributed Computing (PODC'98), pages 143--152, Puerto Vallarta, Mexico, 1998. ACM Press.
[9]
J. N. Gray. Notes on data base operating systems. In G. S. R. Bayer, R. M. Graham, editor, Operating Systems: An Advanced Course, volume 60 of Lecture Notes in Computer Science, chapter 3.F, page 465. Springer, New York, 1978.
[10]
M. Hutle and A. Schiper. Communication predicates: A high-level abstraction for coping with transient and dynamic faults. In Dependable Systems and Networks (DSN 2007), 2007.
[11]
L. Lamport. Lower bounds for asynchronous consensus. In Future Directions in Distributed Computing, number 2584 in Lecture Notes in Computer Science, pages 22--23. Springer-Verlag, 2003.
[12]
L. Lamport. Fast paxos. Technical Report MSR-TR-2005-12, Microsoft Research, 2005.
[13]
L. Lamport, R. Shostak, and M. Pease. The Byzantine generals problem. ACM Trans. Program. Lang. Syst., 4(3):382--401, 1982.
[14]
B. Lampson. The ABCD's of paxos. In Proc. 19th Annual ACM Symposium on Principles of Distributed Computing (PODC'01), page 13, New York, NY, USA, 2001. ACM Press.
[15]
N. Lynch. Distributed Algorithms. Morgan Kaufman, 1996.
[16]
J.-P. Martin and L. Alvisi. Fast Byzantine consensus. Transactions on Dependable and Secure Computing, 3(3):202--214, 2006.
[17]
M. Pease, R. Shostak, and L. Lamport. Reaching agreement in the presence of faults. Journal of the ACM, 27(2):228--234, 1980.
[18]
N. Santoro and P. Widmayer. Time is not a healer. In Proc. 6th Annual Symposium on Theor. Aspects of Computer Science (STACS'89), volume 349 of LNCS, pages 304--313, Paderborn, Germany, Feb. 1989. Springer-Verlag.
[19]
N. Santoro and P. Widmayer. Distributed function evaluation in the presence of transmission faults. In SIGAL International Symposium on Algorithms, pages 358--367, 1990.
[20]
U. Schmid, B. Weiss, and J. Rushby. Formally verified Byzantine agreement in presence of link faults. In 22nd International Conference on Distributed Computing Systems (ICDCS'02), pages 608--616, Vienna, Austria, July 2-5, 2002.
[21]
G. Varghese and N. A. Lynch. A tradeoff between safety and liveness for randomized coordinated attack. Inf. Comput., 128(1):57--71, 1996.
[22]
P. Zieliński. Paxos at war. Technical Report UCAM-CL-TR-593, University of Cambridge, 2004.

Cited By

View all
  • (2024)Iterative approximate Byzantine consensus in arbitrary directed graphsDistributed Computing10.1007/s00446-024-00468-237:3(225-246)Online publication date: 22-May-2024
  • (2024)Liveness and latency of Byzantine state-machine replicationDistributed Computing10.1007/s00446-024-00466-437:2(177-205)Online publication date: 3-May-2024
  • (2023)Efficient Fault-Tolerant Consensus for Collaborative Services in Edge ComputingIEEE Transactions on Computers10.1109/TC.2023.323813872:8(2139-2150)Online publication date: 1-Aug-2023
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
PODC '07: Proceedings of the twenty-sixth annual ACM symposium on Principles of distributed computing
August 2007
424 pages
ISBN:9781595936165
DOI:10.1145/1281100
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]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 12 August 2007

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. byzantine fault tolerance
  2. consensus
  3. dynamic faults
  4. transient faults

Qualifiers

  • Article

Conference

PODC07

Acceptance Rates

Overall Acceptance Rate 740 of 2,477 submissions, 30%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)6
  • Downloads (Last 6 weeks)0
Reflects downloads up to 27 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Iterative approximate Byzantine consensus in arbitrary directed graphsDistributed Computing10.1007/s00446-024-00468-237:3(225-246)Online publication date: 22-May-2024
  • (2024)Liveness and latency of Byzantine state-machine replicationDistributed Computing10.1007/s00446-024-00466-437:2(177-205)Online publication date: 3-May-2024
  • (2023)Efficient Fault-Tolerant Consensus for Collaborative Services in Edge ComputingIEEE Transactions on Computers10.1109/TC.2023.323813872:8(2139-2150)Online publication date: 1-Aug-2023
  • (2023)HOME: Heard-of Based Formal Modeling and Verification Environment for Consensus ProtocolsProceedings of the 45th International Conference on Software Engineering: Companion Proceedings10.1109/ICSE-Companion58688.2023.00016(16-20)Online publication date: 14-May-2023
  • (2022)Making Byzantine consensus liveDistributed Computing10.1007/s00446-022-00432-y35:6(503-532)Online publication date: 2-Sep-2022
  • (2021)Verifying Safety of Parameterized Heard-Of AlgorithmsNetworked Systems10.1007/978-3-030-67087-0_14(209-226)Online publication date: 14-Jan-2021
  • (2020)Programming at the edge of synchronyProceedings of the ACM on Programming Languages10.1145/34282814:OOPSLA(1-30)Online publication date: 13-Nov-2020
  • (2020)A Formally Verified Protocol for Log Replication with Byzantine Fault Tolerance2020 International Symposium on Reliable Distributed Systems (SRDS)10.1109/SRDS51746.2020.00018(101-112)Online publication date: Sep-2020
  • (2020)Verification of customizable blockchain consensus rule using a formal method2020 IEEE International Conference on Blockchain and Cryptocurrency (ICBC)10.1109/ICBC48266.2020.9169472(1-3)Online publication date: May-2020
  • (2020)Higher-Order Quantifier Elimination, Counter Simulations and Fault-Tolerant SystemsJournal of Automated Reasoning10.1007/s10817-020-09578-5Online publication date: 29-Aug-2020
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media