Papers
Topics
Authors
Recent
Search
2000 character limit reached

Narwhal and Tusk: A DAG-based Mempool and Efficient BFT Consensus

Published 25 May 2021 in cs.CR and cs.DC | (2105.11827v4)

Abstract: We propose separating the task of reliable transaction dissemination from transaction ordering, to enable high-performance Byzantine fault-tolerant quorum-based consensus. We design and evaluate a mempool protocol, Narwhal, specializing in high-throughput reliable dissemination and storage of causal histories of transactions. Narwhal tolerates an asynchronous network and maintains high performance despite failures. Narwhal is designed to easily scale-out using multiple workers at each validator, and we demonstrate that there is no foreseeable limit to the throughput we can achieve. Composing Narwhal with a partially synchronous consensus protocol (Narwhal-HotStuff) yields significantly better throughput even in the presence of faults or intermittent loss of liveness due to asynchrony. However, loss of liveness can result in higher latency. To achieve overall good performance when faults occur we design Tusk, a zero-message overhead asynchronous consensus protocol, to work with Narwhal. We demonstrate its high performance under a variety of configurations and faults. As a summary of results, on a WAN, Narwhal-Hotstuff achieves over 130,000 tx/sec at less than 2-sec latency compared with 1,800 tx/sec at 1-sec latency for Hotstuff. Additional workers increase throughput linearly to 600,000 tx/sec without any latency increase. Tusk achieves 160,000 tx/sec with about 3 seconds latency. Under faults, both protocols maintain high throughput, but Narwhal-HotStuff suffers from increased latency.

Citations (223)

Summary

  • The paper introduces a novel approach by decoupling transaction dissemination from ordering via Narwhal, a DAG-based mempool.
  • It demonstrates Tusk, a zero-message asynchronous BFT consensus protocol that achieves high throughput and low latency with linear scalability.
  • Robustness is affirmed through rigorous fault tolerance tests, ensuring efficient performance under asynchronous network conditions and Byzantine faults.

Narwhal and Tusk: A DAG-based Mempool and Efficient BFT Consensus

Introduction

The paper "Narwhal and Tusk: A DAG-based Mempool and Efficient BFT Consensus" discusses the design and implementation of Narwhal, a high-throughput mempool protocol, and Tusk, a zero-message asynchronous consensus protocol. These innovations aim at improving transaction dissemination and consensus in Byzantine Fault Tolerant (BFT) systems. The authors propose separating transaction dissemination from ordering to enhance performance, and they demonstrate how Narwhal scales effectively with additional workers, achieving high throughput even under asynchrony and faults.

Narwhal: Design and Implementation

Narwhal is a DAG-based mempool protocol that specializes in reliable transaction dissemination and storage. It separates the mempool from consensus, allowing each layer to focus on its strengths. The system assumes a message-passing model with an asynchronous network, where up to f<n/3f < n/3 validators can be Byzantine. Its core operations are designed to handle write, read, and causal dependency checks among blocks, using certificates of availability to ensure block integrity and accessibility. Figure 1

Figure 1: Three rounds of Narwhal, illustrating block inclusion and certificate formation.

Key properties ensured by Narwhal include Integrity, Block-Availability, Containment, $2/3$-Causality, and $1/2$-Chain Quality. These features ensure transactions are disseminated efficiently and are ready for inclusion in consensus processes, regardless of network instability or faults.

Tusk: Asynchronous Consensus Protocol

Tusk extends the capabilities of Narwhal by providing an asynchronous consensus protocol that incorporates a random coin mechanism, similar to DAG-Rider, but with improved practical performance. Tusk stands out for its zero-message overhead, relying solely on the DAG structure formed by Narwhal for consensus, which enhances throughput without additional communication costs. Figure 2

Figure 2: Example of commit rule in Tusk, demonstrating leader selection and total ordering in the DAG.

In Tusk, blocks are organized into waves. Each wave consists of blocks that propose, vote, and produce randomness for leader selection. The commit rule guarantees that, with high probability, a leader block in each wave is decided, ordering all its dependencies. This design ensures robustness and low-latency consensus, even when network conditions are less than ideal.

Performance and Scalability

Narwhal and Tusk demonstrate substantial improvements in throughput and fault tolerance over traditional approaches such as baseline HotStuff and Batched-HotStuff. With a setup of four validators and multiple workers, Narwhal-Tusk achieves a throughput of 160,000 tx/sec with latency around three seconds. This linear scaling of throughput with added workers illustrates the effectiveness of their decoupled transaction dissemination approach. Figure 3

Figure 3: Scale-out architecture in Narwhal, showing the parallel processing capabilities with multiple workers per validator.

The robustness of Narwhal and Tusk is evident from their stable performance during faults. Where traditional systems may suffer from degraded throughput and increased latency, Narwhal and Tusk maintain high efficiency, leveraging their underlying DAG-based design.

Implications and Future Work

The innovations presented in Narwhal and Tusk suggest a shift in designing distributed ledger systems. By decoupling consensus from transaction dissemination and leveraging DAG structures, these protocols provide a scalable infrastructure for BFT consensus, capable of handling high transaction volumes with resilience to network disruptions and Byzantine faults.

Future research could explore further optimizations in the scalability of the primary machine architecture and the application of these protocols to various use cases in blockchain and distributed ledger technologies. Additionally, extending the theoretical foundation and practical deployment of DAG-based consensus models can further advance the field of fault-tolerant distributed systems.

Conclusion

Narwhal and Tusk offer a significant contribution to the implementation of BFT consensus systems, addressing scalability, throughput, and fault tolerance challenges. By utilizing a DAG-based mempool and an innovative zero-message consensus protocol, these systems point towards a future of highly efficient and robust distributed ledgers in asynchronous and hostile network environments.

Paper to Video (Beta)

Whiteboard

No one has generated a whiteboard explanation for this paper yet.

Open Problems

We haven't generated a list of open problems mentioned in this paper yet.

Collections

Sign up for free to add this paper to one or more collections.

Tweets

Sign up for free to view the 5 tweets with 95 likes about this paper.