Document Open Access Logo

Atomic Register Abstractions for Byzantine-Prone Distributed Systems

Authors Vincent Kowalski , Achour Mostéfaoui , Matthieu Perrin



PDF
Thumbnail PDF

File

LIPIcs.OPODIS.2023.35.pdf
  • Filesize: 0.86 MB
  • 20 pages

Document Identifiers

Author Details

Vincent Kowalski
  • LS2N, Nantes Université, France
Achour Mostéfaoui
  • LS2N, Nantes Université, France
Matthieu Perrin
  • LS2N, Nantes Université, France

Cite AsGet BibTex

Vincent Kowalski, Achour Mostéfaoui, and Matthieu Perrin. Atomic Register Abstractions for Byzantine-Prone Distributed Systems. In 27th International Conference on Principles of Distributed Systems (OPODIS 2023). Leibniz International Proceedings in Informatics (LIPIcs), Volume 286, pp. 35:1-35:20, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2023)
https://doi.org/10.4230/LIPIcs.OPODIS.2023.35

Abstract

The construction of the atomic register abstraction over crash-prone asynchronous message-passing systems has been extensively studied since the founding work of Attiya, Bar-Noy, and Dolev. It has been shown that t < n/2 (where t is the maximal number of processes that may be faulty) is a necessary and sufficient requirement to build an atomic register. However, little attention has been paid to systems where faulty processes may exhibit a Byzantine behavior. This paper studies three definitions of linearizable single-writer multi-reader registers encountered in the state of the art: Read/Write registers whose read perations return the last written value, Read/Write-Increment registers whose read perations return both the last written value and the number of previously written values, and Read/Append registers whose read perations return the sequence of all previously written values. More specifically, it compares their computing power and the necessary and sufficient conditions on the maximum ratio t/n which makes it possible to build reductions from one register to another. Namely, we prove that t < n/3 is necessary and sufficient to implement a Read/Write-Increment register from Read/Write registers whereas this bound is only t < n/2 for a reduction from a Read/Append register to Read/Write-Increment registers. Reduction algorithms meeting these bounds are also provided.

Subject Classification

ACM Subject Classification
  • Theory of computation → Distributed computing models
  • Software and its engineering → Process synchronization
  • Computer systems organization → Dependable and fault-tolerant systems and networks
Keywords
  • Byzantine processes
  • Concurrent Object
  • Linearizability
  • Shared Register

Metrics

  • Access Statistics
  • Total Accesses (updated on a weekly basis)
    0
    PDF Downloads

References

  1. Ittai Abraham, Gregory V. Chockler, Idit Keidar, and Dahlia Malkhi. Byzantine disk paxos: optimal resilience with byzantine shared memory. Distributed Comput., 18(5):387-408, 2006. URL: https://doi.org/10.1007/S00446-005-0151-6.
  2. Ittai Abraham and Dahlia Malkhi. The blockchain consensus layer and BFT. Bull. EATCS, 123, 2017. URL: http://eatcs.org/beatcs/index.php/beatcs/article/view/506.
  3. Amitanand Aiyer, Lorenzo Alvisi, and Rida A. Bazzi. Bounded wait-free implementation of optimally resilient byzantine storage without (unproven) cryptographic assumptions. In Proceedings of the Twenty-Sixth Annual ACM Symposium on Principles of Distributed Computing, PODC '07, pages 310-311, New York, NY, USA, 2007. Association for Computing Machinery. URL: https://doi.org/10.1145/1281100.1281147.
  4. Hagit Attiya. Efficient and robust sharing of memory in message-passing systems. J. Algorithms, 34(1):109-127, 2000. URL: https://doi.org/10.1006/JAGM.1999.1025.
  5. Hagit Attiya, Amotz Bar-Noy, and Danny Dolev. Sharing memory robustly in message-passing systems. J. ACM, 42(1):124-142, 1995. URL: https://doi.org/10.1145/200836.200869.
  6. Hagit Attiya and Amir Bar-Or. Sharing memory with semi-byzantine clients and faulty storage servers. Parallel Process. Lett., 16(4):419-428, 2006. URL: https://doi.org/10.1142/S0129626406002745.
  7. E. Borowsky and E. Gafni. Generalized FLP impossibility result for t-resilient asynchronous computations. In Proc. of the 25th Annual ACM Symposium on Theory of Computing STOC, pages 91-100, 1993. URL: https://doi.org/10.1145/167088.167119.
  8. Gabriel Bracha and Sam Toueg. Asynchronous consensus and broadcast protocols. Journal of the ACM (JACM), 32(4):824-840, 1985. URL: https://doi.org/10.1145/4221.214134.
  9. Miguel Castro and Barbara Liskov. Practical byzantine fault tolerance. In Margo I. Seltzer and Paul J. Leach, editors, Proceedings of the Third USENIX Symposium on Operating Systems Design and Implementation (OSDI), New Orleans, Louisiana, USA, February 22-25, 1999, pages 173-186. USENIX Association, 1999. URL: https://dl.acm.org/citation.cfm?id=296824.
  10. Gregory V. Chockler and Dahlia Malkhi. Active disk paxos with infinitely many processes. Distributed Comput., 18(1):73-84, 2005. URL: https://doi.org/10.1007/S00446-005-0123-X.
  11. V. Cholvi, A. Fernández Anta, C. Georgiou, N. Nicolaou, and M. Raynal. Atomic appends in asynchronous byzantine distributed ledgers. In 16th European Dependable Computing Conference EDCC, pages 77-84. IEEE, 2020. URL: https://doi.org/10.1109/EDCC51268.2020.00022.
  12. Shir Cohen and Idit Keidar. Tame the Wild with Byzantine Linearizability: Reliable Broadcast, Snapshots, and Asset Transfer. In Seth Gilbert, editor, 35th International Symposium on Distributed Computing (DISC 2021), volume 209 of Leibniz International Proceedings in Informatics (LIPIcs), pages 18:1-18:18, Dagstuhl, Germany, 2021. Schloss Dagstuhl - Leibniz-Zentrum für Informatik. URL: https://doi.org/10.4230/LIPICS.DISC.2021.18.
  13. Dan Dobre, Rachid Guerraoui, Matthias Majuntke, Neeraj Suri, and Marko Vukolić. The complexity of robust atomic storage. In Proceedings of the 30th Annual ACM SIGACT-SIGOPS Symposium on Principles of Distributed Computing, PODC '11, pages 59-68, New York, NY, USA, 2011. Association for Computing Machinery. URL: https://doi.org/10.1145/1993806.1993816.
  14. Rachid Guerraoui and Marko Vukolić. How fast can a very robust read be? In Proceedings of the Twenty-Fifth Annual ACM Symposium on Principles of Distributed Computing, PODC '06, pages 248-257, New York, NY, USA, 2006. Association for Computing Machinery. URL: https://doi.org/10.1145/1146381.1146419.
  15. Maurice Herlihy and Jeannette Wing. Linearizability: A correctness condition for concurrent objects. ACM Transactions on Programming Languages and Systems (TOPLAS), 12(3):463-492, 1990. URL: https://doi.org/10.1145/78969.78972.
  16. Damien Imbs, Sergio Rajsbaum, Michel Raynal, and Julien Stainer. Read/write shared memory abstraction on top of asynchronous byzantine message-passing systems. J. Parallel Distributed Comput., 93-94:1-9, 2016. URL: https://doi.org/10.1016/J.JPDC.2016.03.012.
  17. Leslie Lamport. On interprocess communication. part I: basic formalism. Distributed Comput., 1(2):77-85, 1986. URL: https://doi.org/10.1007/BF01786227.
  18. Leslie Lamport, Robert E. Shostak, and Marshall C. Pease. The byzantine generals problem. ACM Trans. Program. Lang. Syst., 4(3):382-401, 1982. URL: https://doi.org/10.1145/357172.357176.
  19. Dahlia Malkhi and Michael K. Reiter. Secure and scalable replication in phalanx. In Proceedings of the The 17th IEEE Symposium on Reliable Distributed Systems, SRDS '98, page 51, USA, 1998. IEEE Computer Society. URL: https://doi.org/10.1109/RELDIS.1998.740474.
  20. Jean-Philippe Martin and Lorenzo Alvisi. A framework for dynamic byzantine storage. In Proceedings of the 2004 International Conference on Dependable Systems and Networks, DSN '04, pages 325-334, USA, 2004. IEEE Computer Society. URL: https://doi.org/10.1109/DSN.2004.1311902.
  21. Achour Mostéfaoui, Matoula Petrolia, Michel Raynal, and Claude Jard. Atomic read/write memory in signature-free byzantine asynchronous message-passing systems. Theory Comput. Syst., 60(4):677-694, 2017. URL: https://doi.org/10.1007/S00224-016-9699-8.
  22. Marshall C. Pease, Robert E. Shostak, and Leslie Lamport. Reaching agreement in the presence of faults. J. ACM, 27(2):228-234, 1980. URL: https://doi.org/10.1145/322186.322188.
  23. Fred B. Schneider. The state machine approach: A tutorial. In Proc. of Asilomar Workshop on Fault-Tolerant Distributed Computing, volume 448 of LNCS, pages 18-41. Springer, 1986. URL: https://doi.org/10.1007/BFB0042323.
Questions / Remarks / Feedback
X

Feedback for Dagstuhl Publishing


Thanks for your feedback!

Feedback submitted

Could not send message

Please try again later or send an E-mail