Skip to main content
QUICK REVIEW

[论文解读] Narwhal and Tusk: A DAG-based Mempool and Efficient BFT Consensus

George Danezis, Eleftherios Kokoris-Kogias|arXiv (Cornell University)|May 25, 2021
Distributed systems and fault tolerance参考文献 36被引用 8
一句话总结

本文提出 Narwhal,一种基于 DAG 的内存池协议,用于在拜占庭容错系统中实现高吞吐量、可靠的交易传播;以及 Tusk,一种零消息开销的异步共识协议。通过将交易传播与共识排序解耦,Narwhal-HotStuff 实现了每秒 130,000 笔交易、延迟低于 2 秒的性能,而 Tusk 实现了每秒 160,000 笔交易、延迟约 3 秒的性能,表明在区块链系统中,可靠传播才是主要性能瓶颈,而非共识本身。

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.

研究动机与目标

  • 为解决单体共识协议将交易传播与排序混杂所导致的区块链系统性能瓶颈。
  • 设计一种可扩展、可靠的内存池协议,确保在异步网络中具备因果排序和容错能力。
  • 通过将传播与排序解耦,在网络异步或发生故障时仍能实现高吞吐量共识。
  • 开发一种零消息开销共识协议(Tusk),使其在完全异步环境下高效运行。
  • 证明系统整体吞吐量的限制并非来自共识,而是来自可靠交易传播。

提出的方法

  • Narwhal 使用基于 DAG 的结构,实现验证者之间交易区块的因果有序可靠广播,确保容错性和高吞吐量。
  • 每个验证者维护一个本地的交易 DAG,其中包含证书,可用于验证因果关系和数据可用性。
  • Narwhal 通过允许多个工作线程运行于每个验证者,实现横向扩展,分担交易数据的存储与处理。
  • Narwhal-HotStuff 将 Narwhal 内存池与 HotStuff 共识组合,仅对区块哈希进行排序,从而降低共识负载。
  • Tusk 是一种完全异步、无等待的共识协议,利用 Narwhal 的 DAG 结构,使每个参与者无需额外消息即可本地决定最终顺序。
  • Tusk 通过让每个验证者本地检查其 DAG 并推导出全局顺序,避免在决策阶段进行消息交换。

实验结果

研究问题

  • RQ1是否可以将可靠、高吞吐量的交易传播与共识排序解耦,以提升系统性能?
  • RQ2如何在异步网络中以最小开销确保内存池协议的因果排序与容错能力?
  • RQ3在拜占庭容错系统中,将传播与共识分离对性能有何影响?
  • RQ4能否基于基于 DAG 的内存池构建零消息开销共识协议,以确保在异步环境下的活性?
  • RQ5工作线程的横向扩展在不增加延迟的前提下,能在多大程度上提升吞吐量?

主要发现

  • 在 50 个地理分布的验证者组成的广域网部署中,Narwhal-HotStuff 实现了超过 130,000 笔交易/秒的吞吐量,延迟低于 2 秒。
  • 吞吐量随额外工作线程线性增长,在不增加延迟的前提下达到 600,000 笔交易/秒,证明了有效的水平扩展能力。
  • 在发生故障或网络异步时,Narwhal-HotStuff 仍能保持高吞吐量,但因领导者瓶颈和重传导致延迟增加。
  • Tusk 实现了 160,000 笔交易/秒的吞吐量,延迟约 3 秒,证明在完全异步环境下实现零消息开销共识具有高性能。
  • 系统保持至少 50% 的链质量(即 50% 的区块由诚实方生成),在现有协议中处于领先水平。
  • 传播与排序的解耦证明,可靠交易传播才是区块链系统的主要性能瓶颈,而非共识本身。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。