Exploring Scalability of BFT Blockchain Protocols through Network Simulations
Abstract
1 Introduction
Cloud-scale Deployments.
Simulating BFT Protocols.
Why Not Just Use Network Emulation?.
Simulation as (Better?) Alternative.
1.1 Our Contributions
1.2 Structure
2 Related Work
2.1 Simulation or Modeling of BFT Protocols
2.2 Generic Simulators and Emulators
2.3 Blockchain Research
2.4 Tools for Vulnerability Detection or Performance Evaluation of BFT Protocols
3 BFT Protocols
3.1 Synchrony Models
3.2 Running Agreements
3.3 PBFT
3.4 HotStuff
3.5 Kauri
3.6 Narwhal & Tusk and BullShark
4 Methodology
4.1 Why Simulate BFT Protocol Implementations?
Phantom as Choice for the Backend.
4.2 The Frontend: Accelerating Large-scale Simulations of BFT Protocol Implementations
4.2.1 Challenges.
4.2.2 Experimental Description and Frontend Design.
Scheduler.
Environment Generator.
Protocol Connectors.
Fault Induction.
4.3 The Backend: Using Phantom to Simulate BFT Protocols as Native Linux Processes
Simulated Environment.
Simulation Engine.
Deterministic Execution.
5 Validation
BFT Protocol Selection.
Framework | BFT Protocol | Language | Repository on github.com |
---|---|---|---|
libhotstuff | HotStuff [59] | C++ | /hot-stuff/libhotstuff |
themis [45] | PBFT [14] | Rust | /ibr-ds/themis |
bft-smart | BFT-SMaRt [11] | Java | /bft-smart/library |
hotstuff-bls [40] | HotStuff [59] (with BLS) | C++ | /Raycoms/Kauri-Public/ |
kauri | Kauri [40] | C++ | /Raycoms/Kauri-Public/ |
narwhal | Narwhal & Tusk [17] | Rust | /facebookresearch/narwhal/ |
bullshark | BullShark [50] | Rust | /facebookresearch/narwhal/tree/bullshark |
Simulator Machine Specification and Data Collection.
5.1 HotStuff-secp256k1
5.2 BFT-SMaRt and PBFT
LAN environment.
Geo-distribution.
5.3 Kauri and HotStuff-bls
5.4 Tusk and Bullshark
5.5 Resource Consumption and Implementations
6 Experimental Results
6.1 General Setup
6.2 Failure-free Scenario: Scalability and Block Size
Observations for the Partially Synchronous Protocols.
Observations for the Asynchronous Protocols.
6.3 Packet Loss
Observations.
6.4 Denial-of-service Attack
Observations.
6.5 Crashing Replicas
Observations.
6.6 Discussion and Lessons Learned
7 Conclusions
8 Future Work
Footnotes
References
Index Terms
- Exploring Scalability of BFT Blockchain Protocols through Network Simulations
Recommendations
BFT in Blockchains: From Protocols to Use Cases
A blockchain is a distributed system that achieves strong security guarantees in storing, managing, and processing data. All blockchains achieve a common goal: building a decentralized system that provides a trustworthy service in an untrustworthy ...
Does my BFT protocol implementation scale?
DICG '22: Proceedings of the 3rd International Workshop on Distributed Infrastructure for the Common GoodThe novel blockchain generation of Byzantine fault-tolerant (BFT) state machine replication (SMR) protocols focuses on scalability and performance to meet the requirements of distributed ledger technology (DLT), e.g., decentralization and geographic ...
From Byzantine Consensus to BFT State Machine Replication: A Latency-Optimal Transformation
EDCC '12: Proceedings of the 2012 Ninth European Dependable Computing ConferenceWe present a new algorithm for state machine replication that is built around a leader-driven consensus primitive. This algorithm requires only two additional communication steps between replicas and clients if the consensus leader is correct and the ...
Comments
Please enable JavaScript to view thecomments powered by Disqus.Information & Contributors
Information
Published In

- Editor:
- Jim Woodcock,
- Guest Editors:
- Zhe Hou,
- Yun Liu
Publisher
Association for Computing Machinery
New York, NY, United States
Publication History
Check for updates
Author Tags
Qualifiers
- Research-article
Funding Sources
- Deutsche Forschungsgemeinschaft (DFG, German Research Foundation)
Contributors
Other Metrics
Bibliometrics & Citations
Bibliometrics
Article Metrics
- 0Total Citations
- 548Total Downloads
- Downloads (Last 12 months)548
- Downloads (Last 6 weeks)116
Other Metrics
Citations
View Options
Login options
Check if you have access through your login credentials or your institution to get full access on this article.
Sign in