Trees and Turtles: Modular Abstractions for State Machine Replication Protocols
Abstract
We present two abstractions for designing modular state machine replication (SMR) protocols: trees and turtles. A tree captures the set of possible state machine histories, while a turtle represents a subprotocol that tries to find agreement in this tree. We showcase the applicability of these abstractions by constructing crash-tolerant SMR protocols out of abstract tree turtles and providing examples of tree turtle implementations. Tree turtles can also be extended to be made Byzantine fault-tolerant (BFT). The modularity of tree turtles allows a generic approach for adding a leader for liveness. We expect that these abstractions will simplify reasoning and formal verification of SMR protocols as well as facilitate innovation in protocol designs.
Keywords
Cite
@article{arxiv.2304.07850,
title = {Trees and Turtles: Modular Abstractions for State Machine Replication Protocols},
author = {Natalie Neamtu and Haobin Ni and Robbert van Renesse},
journal= {arXiv preprint arXiv:2304.07850},
year = {2023}
}
Comments
Full version of the paper published in PaPoC '23, including full proofs and discussion of BFT protocols