详解区块链模块的性能瓶颈及挑战:网络模块、共识模块及执行模块

区块链的性能优化是一个很热的话题。然而,由于区块链系统的复杂性,系统性理解性能优化门槛很高,这就为「性能虚标」提供了空间。前有「百万 tps」大跃进,后有「80 万 tps」宕机链。

所以,我希望展开来讲一下决定区块链各模块的性能瓶颈和挑战,看看那些漂亮数据背后的水分。

1. 网络模块

作为一个去中心化的系统,网络通信是整个系统的基础,也有人将其称为 Layer 0。

我将网络模块抽象为三层:网络设施层、节点连结层、广播协议层。每一层都是下一层的基础,每一层的性能都是下一层性能的上限。

网络模块的带宽和延迟构成了区块链系统 tps 和 finality 延迟的基础。

1.1 网络设施层

带宽:主要取决于网络基础设施的发展,以及区块链节点的配置要求。前几年公链的网络配置要求一般在 20Mbps 到 100 Mbps. 到 2022 年,Aptos 已经要求 1 Gbps 网络带宽了。总之,带宽要求越高,节点门槛越高,越中心化。

延迟:延迟有一个优化的极限,就是光速。互联网中的传输延迟比光速延迟要更大一些。Conflux 曾经测得的洲际节点延迟可达 200-300ms。如果是那种所有节点都在一个数据中心的「机房链」,延迟可以忽略不计。

1.2 节点连结层

节点连结层主要通过邻居节点间的通信实现网络中的消息广播。

带宽:一般情况下,节点连结层可以获得接近于网络设施层的带宽。也可以选择牺牲带宽来降低延迟:例如,当要广播一条消息时,同时发给所有邻居(带宽要求翻几倍),而不是发完一个再发下一个。

延迟:消息广播延迟和节点数量有关,节点越多,延迟越高。

目前比特币和以太坊大概有几千个节点。根据我们的实验,如果全网有一万个世界各地的节点,广播延迟中位数 3~6 秒,最大可至 15 秒。通过一些协议优化,最大延迟可以再降低一半。

而一些宣称确认延迟 1~2 秒的公链,显然只能支撑更少的节点

1.3 广播协议层

节点连结层只负责转发数据块,而不管数据是什么。而广播协议层则定义具体的区块、交易转发规则。

带宽:主要在于如何减少冗余传输。试想,如果每个邻居都给你发了同一笔交易,是不是很浪费?Conflux 设计的转发协议 Shrec,就通过减少冗余,在同等网络带宽下将广播交易的 tps 提升了 6 倍。

不过,只要网络设施层带宽足够高(比如 1Gbps),即使不优化,这里也不会成为瓶颈。

延迟:一些共识协议会将广播协议层的延迟放大若干倍,例如,比特币的出块间隔需要 5 倍于广播协议层的延迟,而确认需要 6 个块。因此,优化这里的延迟至关重要。2016 年,比特币通过紧凑区块的设计,将区块广播延迟从 120 秒降低到了不到 10 秒。

紧凑区块不包含完整交易,只包含交易哈希前 6 字节,因为这些交易已经在网络中被广播过并被多数节点收到。这可以加速区块广播,使广播协议层获得接近节点连结层的延迟。2017 年后,高性能公链基本都采取了这一设计。

2. 共识模块

共识协议是区块链系统中最复杂、最精巧的部分,它协调各个互不信任的节点,并为上层应用提供提供可信的去中心化服务。很长一段时间内,对共识模块的性能优化都是热点。

带宽:中本聪共识自身的缺陷导致它的共识带宽必须处于一个非常低的水平,否则会增加网络分叉,降低系统安全性。

2017 年后的新协议基本都可以充分利用带宽了,这不再是一个难题。

不过,有些项目混淆了共识模块的 tps 和区块链系统的 tps,把充分利用带宽称为「无限可扩展」,仿佛网络带宽是无限的。

延迟:共识的延迟指区块从产生到 finalize 需要多久。中本聪共识的确认延迟很差,大概需要 30~60 倍广播协议层延迟,后续 PoW 协议例如 Bitcoin-NG, OHIE 等也没有优化这一延迟。Prism 将延迟优化到了 23 倍,Conflux 优化到了 3 倍。PoS 协议我了解得有限,估算大概需要 5 倍延迟。

不过 PoW 和 PoS 协议有一个很大的不同:PoW 参考最大延迟,PoS 参考中位数延迟,而最大延迟和中位数延迟可能有 3 倍差异,所以 PoS 共识普遍延迟表现更好一些。节点少的话,进入 10 秒也不是不可能。至于以太坊这种上了 PoS 共识反而更慢的,只能说是一个奇葩吧。

共识模块是「参数虚标」最严重的地方。比如,明明需要等 6 个区块才能达到安全性要求,项目方告诉你 1 个区块就行,反正没人攻击就不会露馅,没资产就没人攻击。

还有一种叫分片的技术:给节点分组,把交易分给各组,每组只处理自己的交易、相信其他小组。这种技术通过增加小组数量,容易获得一个很高的 tps 用于吹嘘,但相信其他小组会带来安全风险。所以分片适用于对安全性要求不高的场景,如国产联盟链。

3. 执行模块

以太坊之所以能在比特币外开辟一片天地,在于它创造了可编程的数字资产。因此交易执行模块也是区块链系统的重要的一环。也是在早期的性能优化中被忽视的一环。

执行不再区分带宽和延迟,只关心单位时间内处理的交易或计算任务数量。

执行模块的效率受到计算机系统各个资源的限制。

3.1 CPU 资源

在串行执行中,CPU 的性能瓶颈是非常明显的。在过去 5 年内,CPU 单核性能提升了不到 1 倍。在 EVM 中,如果不考虑存储访问,最快的 CPU 大概 1 秒能执行 1 亿 gas , 是现在以太坊性能的 80 倍(仅是量级的粗略估计)。

并行执行是利用 CPU 资源的关键一步。一些项目在尝试提出更利于并行的语言模型,例如 Move。

在 Conflux 一项关于 EVM 并行化的研究表示,目前以太坊链上交易的并行化潜力是 9 倍 tps。

但是,并行化 VM 有很多的挑战。比如,理想情形下,交易高度并行;最差情形下,交易相互依赖,只能串行。那如何设计 gas 定价与 gas limit,使得理想情况可以充分利用并行优化,而最差情况又不至于跟不上执行?

3.2 存储访问资源

和网络设施层一样,这里的性能主要取决于硬件的发展和区块链节点的最低配置。除非数据被缓存在内存里,执行交易时的读写性能不可能超越硬盘的读写性能。

还拿 Aptos 举例,他们节点的存储要求是 40K IOPS,而一笔交易可能涉及到发送者和接受者两个账户的状态修改,也就是最差情况下网络只能支持 2 万 tps。

但他们的宣称 tps 是 16 万,可想而知这后面有多少不公开的前提条件了。

3.3 可验证存储结构

可验证存储结构是区块链存储的一个重要数据结构。它允许一个轻节点向一个它不信任的全节点查询链上状态,是区块链 trustless 里的最重要一环。在以太坊中,访问可验证存储结构 MPT 比直接访问数据库慢 10 倍。所以,有些区块链干脆去除了可验证存储结构,以换取更好的性能。

最后做个总结,区块链的性能优化不是一个追求极限的过程,而是在各种限制下对安全、效率、去中心化程度的取舍。

有些取舍是可以被优化的,比如中本聪共识中,共识带宽与安全性的矛盾后来被解决了。

有些取舍是不可避免的,如果你要求每个节点配备 256 GB 的内存,就注定了独立参与者的数量不会太多。

一味地去追求纸面上的高性能,只会得到一个中心化的宕机链。只有真正去面对和解决性能优化中的问题,才是性能提升的正途。

受篇幅所限,还有很多安全性相关的考量并没有提到。不过以上内容足以点破很多大饼了。


24小时热点

交易

比特币的交易(Transation,缩写Tx),并不是通常意 ...

68612

Xmax星球

988pay虚拟钱包使用指南分享

988pay虚拟钱包被称为数字货币钱包或者是区块链钱包,方便 ...

657985

波场区块链浏览器

1U等于多少人民币?U币怎么兑换人民币?

U币(如USDT)是一种基于区块链技术的稳定币,其价值与美元 ...

251060

区块链圈小菜鸡

如何为Solana钱包添加自定义RPC节点

Solana(简称SOL)是一种高性能的区块链,要与Sola ...

54837

区块链圈小菜鸡

USDT钱包官网入口在哪?

USDT钱包官网入口可以在搜索引擎中输入“USDT钱包官网” ...

70005

波场区块链浏览器

nopay钱包下载使用方法

nopay钱包是一款功能比较强大的数字货币交易应用,为用户提 ...

166931

波场区块链浏览器

盘点十大比特币挖矿网站

随着比特币和其他数字货币的普及,挖矿已经成为许多人获取加密货 ...

193163

波场区块链浏览器

如何查询钱包里的USDT是否是黑U?详细教程

“黑U”指的是通过非法手段获取的USDT,这些USDT可能涉 ...

103070

波场区块链浏览器

OEX全球站交易所介绍

OEX(www.oex.com)隶属于OEX Interna ...

624318

Cointelegraph Bitcoin

比特币最开始价格多少一个?比特币刚进入中国多少钱一个?

比特币最开始的价格不到1美分,1美元可以兑换1300个比特币 ...

329124

区块链圈小菜鸡

热点专题

区块链网是什么

中国区块链价值评价中心 中国区块链价值评价中心于2 ...

5292806

知信链

免费的行情软件app网站在国外有哪些?

区块链看行情的软件,简而言之,就是一类能够实时提供数字货币行 ...

2377018

波场区块链浏览器

雷达币最新进展:2024年主网上线时间及前景预测

近期有传闻称,新加坡的加密货币交易所推出了一款雷达币,这款被 ...

1827508

波场区块链浏览器

2024年最新十大不收费看盘软件排名公布

随着股市交易的普及和技术的发展,投资者对高效、可靠且免费的看 ...

1125849

波场区块链浏览器

元界(Metaverse)

元界(Metaverse)是一个去中心化的公有区块链项目,元 ...

992187

WEEX数字货币

BTC123

BTC123(www.btc123.com)成立于2011年 ...

839225

Kusama 测试网

最全传销名单,请告诉家人朋友,别让他们上当受骗后赔到血本无归

因为互联网的发展,让现代传销具备了更强的隐蔽性,更让社会经验 ...

785641

律动 BlockBeats

中币网zb——中币交易所

ZB.com是一个全球化的数字货币交易所,目前已获得泰国和迪 ...

751221

中币交易所

Bitfinex(香港B网)

Bitfinex交易平台目前仍处于试运营阶段,该平台由iFi ...

722733

Hi元宇宙

DAC币——达芬奇Davinci Coin

达芬奇项目的平台是通过叫作"Dchain"的自身区块链把可以 ...

715222

Mechanism Capital