Affiliation:
1. Yale University, USA
2. Northeastern University, USA
Abstract
Despite recent advances, guaranteeing the correctness of large-scale distributed applications without compromising performance remains a challenging problem. Network and node failures are inevitable and, for some applications, careful control over how they are handled is essential. Unfortunately, existing approaches either completely hide these failures behind an atomic state machine replication (SMR) interface, or expose all of the network-level details, sacrificing atomicity. We propose a novel, compositional, atomic distributed object (ADO) model for strongly consistent distributed systems that combines the best of both options. The object-oriented API abstracts over protocol-specific details and decouples high-level correctness reasoning from implementation choices. At the same time, it intentionally exposes an abstract view of certain key distributed failure cases, thus allowing for more fine-grained control over them than SMR-like models. We demonstrate that proving properties even of composite distributed systems can be straightforward with our Coq verification framework, Advert, thanks to the ADO model. We also show that a variety of common protocols including multi-Paxos and Chain Replication refine the ADO semantics, which allows one to freely choose among them for an application's implementation without modifying ADO-level correctness proofs.
Funder
National Science Foundation
Defense Advanced Research Projects Agency
Publisher
Association for Computing Machinery (ACM)
Subject
Safety, Risk, Reliability and Quality,Software
Cited by
6 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. LiDO: Linearizable Byzantine Distributed Objects with Refinement-Based Liveness Proofs;Proceedings of the ACM on Programming Languages;2024-06-20
2. AdoB: Bridging Benign and Byzantine Consensus with Atomic Distributed Objects;Proceedings of the ACM on Programming Languages;2024-04-29
3. Verifying a C Implementation of Derecho’s Coordination Mechanism Using VST and Coq;Lecture Notes in Computer Science;2024
4. Survey of the Formal Verification of Operating Systems in Power Monitoring System;Proceedings of the 2023 5th International Conference on Pattern Recognition and Intelligent Systems;2023-07-28
5. Adore: atomic distributed objects with certified reconfiguration;Proceedings of the 43rd ACM SIGPLAN International Conference on Programming Language Design and Implementation;2022-06-09