Shoal: Improving DAG-BFT Latency And Robustness (2306.03058v2)
Abstract: The Narwhal system is a state-of-the-art Byzantine fault-tolerant scalable architecture that involves constructing a directed acyclic graph (DAG) of messages among a set of validators in a Blockchain network. Bullshark is a zero-overhead consensus protocol on top of the Narwhal's DAG that can order over 100k transactions per second. Unfortunately, the high throughput of Bullshark comes with a latency price due to the DAG construction, increasing the latency compared to the state-of-the-art leader-based BFT consensus protocols. We introduce Shoal, a protocol-agnostic framework for enhancing Narwhal-based consensus. By incorporating leader reputation and pipelining support for the first time, Shoal significantly reduces latency. Moreover, the combination of properties of the DAG construction and the leader reputation mechanism enables the elimination of timeouts in all but extremely uncommon scenarios in practice, a property we name Prevalent Responsiveness" (it strictly subsumes the established and often desired Optimistic Responsiveness property for BFT protocols). We integrated Shoal instantiated with Bullshark, the fastest existing Narwhal-based consensus protocol, in an open-source Blockchain project and provide experimental evaluations demonstrating up to 40% latency reduction in the failure-free executions, and up-to 80% reduction in executions with failures against the vanilla Bullshark implementation.
- Fault-scalable Byzantine fault-tolerant services. In Proceedings of the 20th ACM Symposium on Operating Systems Principles 2005, SOSP 2005, Brighton, UK, October 23-26, 2005, Andrew Herbert and Kenneth P. Birman (Eds.). ACM, 59–74.
- Asymptotically Optimal Validated Asynchronous Byzantine Agreement. In Proceedings of the 2019 ACM Symposium on Principles of Distributed Computing, PODC 2019, Toronto, ON, Canada, July 29 - August 2, 2019, Peter Robinson and Faith Ellen (Eds.). ACM, 337–346.
- Salem Alqahtani and Murat Demirbas. 2021. Bottlenecks in Blockchain Consensus Protocols. CoRR abs/2103.04234 (2021).
- Balaji Arun and Binoy Ravindran. 2022. Scalable Byzantine Fault Tolerance via Partial Decentralization. Proc. VLDB Endow. 15, 9 (may 2022), 1739–1752. https://doi.org/10.14778/3538598.3538599
- Leemon Baird. 2016. The swirlds hashgraph consensus algorithm: Fair, fast, byzantine fault tolerance. Swirlds Tech Reports SWIRLDS-TR-2016-01, Tech. Rep (2016).
- Michael Ben-Or. 1983. Another advantage of free choice (extended abstract) completely asynchronous agreement protocols. In Proceedings of the second annual ACM symposium on Principles of distributed computing. 27–30.
- State machine replication for the masses with BFT-SMART. In 2014 44th Annual IEEE/IFIP International Conference on Dependable Systems and Networks. IEEE, 355–362.
- Short signatures from the Weil pairing. In Advances in Cryptology - CRYPTO 2001 (Lecture Notes in Computer Science, Vol. 2139). Springer, 514–532. https://doi.org/10.1007/3-540-44647-8_32
- Making byzantine consensus live. Distributed Computing 35, 6 (2022), 503–532.
- The latest gossip on BFT consensus. arXiv preprint arXiv:1807.04938 (2018).
- Introduction to reliable and secure distributed programming. Springer Science & Business Media.
- Random oracles in Constantinople: Practical asynchronous Byzantine agreement using cryptography. Journal of Cryptology 18, 3 (2005), 219–246.
- Miguel Castro and Barbara Liskov. 2002. Practical Byzantine fault tolerance and proactive recovery. ACM Transactions on Computer Systems (TOCS) 20, 4 (2002), 398–461.
- The weakest failure detector for solving consensus. Journal of the ACM (JACM) 43, 4 (1996), 685–722.
- Brian Cho and Alexander Spiegelman. 2023. Quorum Store: How Consensus Horizontally Scales on the Aptos Blockchain. https://medium.com/aptoslabs/quorum-store-how-consensus-horizontally-scales-on-the-aptos-blockchain-988866f6d5b0 Aptos Labs.
- Be aware of your leaders. In Financial Cryptography and Data Security: 26th International Conference, FC 2022, Grenada, May 2–6, 2022, Revised Selected Papers. Springer, 279–295.
- Narwhal and tusk: a dag-based mempool and efficient bft consensus. In Proceedings of the Seventeenth European Conference on Computer Systems. 34–50.
- BEAT: Asynchronous BFT Made Practical. In Proceedings of the 2018 ACM SIGSAC Conference on Computer and Communications Security, CCS 2018, Toronto, ON, Canada, October 15-19, 2018, David Lie, Mohammad Mannan, Michael Backes, and XiaoFeng Wang (Eds.). ACM, 2028–2041.
- Impossibility of Distributed Consensus with One Faulty Process. J. ACM 32, 2 (1985), 374–382.
- Bryan Ford. 2019. Threshold logical clocks for asynchronous distributed coordination and consensus. arXiv preprint arXiv:1907.07010 (2019).
- Aleph: Efficient Atomic Broadcast in Asynchronous Networks with Byzantine Nodes. In Proceedings of the 1st ACM Conference on Advances in Financial Technologies. 214–228.
- Jolteon and ditto: Network-adaptive efficient consensus with asynchronous fallback. In Financial Cryptography and Data Security: 26th International Conference, FC 2022, Grenada, May 2–6, 2022, Revised Selected Papers. Springer, 296–315.
- The next 700 BFT protocols. In Proceedings of the 5th European conference on Computer systems. 363–376.
- Sbft: a scalable and decentralized trust infrastructure. In 2019 49th Annual IEEE/IFIP international conference on dependable systems and networks (DSN). IEEE, 568–580.
- Dumbo: Faster Asynchronous BFT Protocols. In CCS ’20: 2020 ACM SIGSAC Conference on Computer and Communications Security, Virtual Event, USA, November 9-13, 2020, Jay Ligatti, Xinming Ou, Jonathan Katz, and Giovanni Vigna (Eds.). ACM, 803–818.
- CheapBFT: Resource-efficient Byzantine fault tolerance. In Proceedings of the 7th ACM european conference on Computer Systems. 295–308.
- All You Need is DAG. In Proceedings of the 40th Symposium on Principles of Distributed Computing (Virtual Event, Italy) (PODC ’21). Association for Computing Machinery, New York, NY, USA.
- Cordial Miners: A Family of Simple, Efficient and Self-Contained Consensus Protocols for Every Eventuality. arXiv preprint arXiv:2205.09174 (2022).
- Zyzzyva: speculative byzantine fault tolerance. In Proceedings of twenty-first ACM SIGOPS symposium on Operating systems principles. 45–58.
- Leslie Lamport. 2019. The part-time parliament. In Concurrency: the Works of Leslie Lamport. 277–317.
- Dumbo-MVBA: Optimal Multi-Valued Validated Asynchronous Byzantine Agreement, Revisited. In Proceedings of the 39th Symposium on Principles of Distributed Computing (Virtual Event, Italy) (PODC ’20). Association for Computing Machinery, New York, NY, USA, 129–138. https://doi.org/10.1145/3382734.3405707
- The honey badger of BFT protocols. In Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security. 31–42.
- Lumière: Byzantine View Synchronization. CoRR abs/1909.05204 (2019). arXiv:1909.05204 http://arxiv.org/abs/1909.05204
- Oded Naor and Idit Keidar. 2020. Expected linear round synchronization: The missing link for linear byzantine smr. arXiv preprint arXiv:2002.07539 (2020).
- Bullshark: Dag bft protocols made practical. In Proceedings of the 2022 ACM SIGSAC Conference on Computer and Communications Security. 2705–2718.
- Bullshark: The Partially Synchronous Version. arXiv preprint arXiv:2209.05633 (2022).
- Mir-BFT: High-Throughput BFT for Blockchains. CoRR abs/1906.05552 (2019). arXiv:1906.05552 http://arxiv.org/abs/1906.05552
- The Avalanche Team. 2020a. Avalanche Networks. https://www.avax.network/ Accessed: May 2023.
- The Aptos Team. 2022. Aptos Networks. https://aptosfoundation.org/ Accessed: May 2023.
- The Celo Team. 2020b. Celo Networks. https://celo.org/ Accessed: May 2023.
- The Definity Team. 2018. Definity Networks. https://definity.network/ Accessed: May 2023.
- The Diem Team. 2021. DiemBFTv4. https://developers.diem.com/papers/diem-consensus-state-machine-replication-in-the-diem-blockchain/2021-08-17.pdf Accessed: May 2023.
- The Solana Team. 2020c. Solana Networks. https://solana.com/ Accessed: May 2023.
- The Sui Team. 2023. Sui Networks. https://sui.io/ Accessed: May 2023.
- {{\{{DispersedLedger}}\}}:{{\{{High-Throughput}}\}} Byzantine Consensus on Variable Bandwidth Networks. In 19th USENIX Symposium on Networked Systems Design and Implementation (NSDI 22). 493–512.
- HotStuff: BFT Consensus with Linearity and Responsiveness. In Proceedings of the 2019 ACM Symposium on Principles of Distributed Computing, PODC 2019, Toronto, ON, Canada, July 29 - August 2, 2019, Peter Robinson and Faith Ellen (Eds.). ACM, 347–356.