Introduction | Monad

Monad is a high-performance Ethereum-compatible L1. Monad materially advances the efficient frontier in the tradeoff between decentralization and scalability.

Monad introduces optimizations in four major areas, resulting in a blockchain with throughput of 10,000 transactions per second (tps):

MonadBFT

MonadBFT是一种流水线化的共识机制,分为两个阶段进行。简单来说:

  1. 提案阶段:每轮中,领导者向所有节点发送一个新的区块以及上一轮的QC(Quorum Certificate,法定人数证书)或TC(Timeout Certificate,超时证书)。每个验证者检查该区块是否符合协议,如果同意,则向下一轮的领导者发送签名的“是”票。
  2. 确认阶段:下一轮的领导者收集2f+1个“是”票,聚合成一个QC。如果验证者收到了下一轮的QC,就可以确定当前轮的区块已经被最终确定。

如果验证者在预定时间内没有收到有效的区块,它会向所有节点广播一个带有最高QC的超时消息。如果任何验证者收集到2f+1个超时消息,它会将这些消息聚合成一个TC,然后直接发送给下一轮的领导者。

这种两阶段的流程使得MonadBFT能够在常见情况下保持线性的通信开销,并且在领导者超时的情况下通过TC来保证系统的活性。

Deferred Execution

Overview

延迟执行是一种编程技术,它允许将一段代码的执行推迟到将来的某个时间点。这通常用于提高程序的效率和响应性,通过将一些耗时的操作延迟到必要时再执行,从而避免阻塞程序的主线程。在并发编程中,延迟执行也可以用来优化资源使用,避免不必要的计算和内存占用。

在Monad中,每个节点有D个区块的时间来执行交易,并在D个区块后对这个状态转移的结果达成共识。这意味着网络同时在进行两种共识:一种是关于区块内容的共识,另一种是关于状态转移结果的共识。