链本身也可以作为一个单体区块链运行。像Uniswap和Opensea这样的应用目前在以太坊基础层上运行。这意味着rollup也在与以太坊原生app争夺区块空间。因此,rollup所能达到的TPS上限很可能小于5000。即使引入了Proto Dank Sharding,TPS上限也不会显著增加。虽然Dank Sharding可能会提供显著的增加,但它将需要相当长的时间才能实现。 出于这些原因,Sei选择用自己的共识机制和区块时间建设L1解决方案,而不是依赖于rollup(以及ETH或Celestia)。当然,对于许多用户来说,要获得无缝顺滑的使用体验,网络必须非常快,同时仍然可以确保区块链固有的安全性。那么,Sei究竟是如何建设其网络的,它的速度有多快? 2、Sei网络概况 SEI网络通常被视为专门用于交易的L1区块链,但它实际上是一个通用区块链。虽然SEI有自己的“订单匹配引擎”,但将SEI网络描述为具有强化的交易基础设施的通用区块链更为准确。这是因为交易资产被认为是区块链技术的基本特征之一。此外,除了内部强化的交易基础设施外,SEI还拥有惊人的速度,在“最终确定时间”方面超过了许多其他区块链。因此,更重要的是研究SEI用来实现这种速度的共识机制。 2.1 Twin-Turbo共识机制:是什么让Sei速度这么快? Twin Turbo共识机制可以理解为一种配备了两个涡轮的共识机制,即SEI网络所强调的智能区块传播(Intelligent Block Propagation)和Optimistic区块处理(Optimistic Block Processing)。它们扮演着什么角色?它们是如何提高SEI的速度的? 2.1.1 智能区块传播 在传统的区块链中,区块传播包括两个步骤: (1)当用户发起交易时,节点接收并验证交易,将其添加到其内存池中,并将此交易传播到其他节点。 (2)经过验证的交易由leader(PoW中的挖掘节点,BFT中的区块提议者)包含在一个区块中。然后,这个区块在整个网络中传播。只有当所有节点都接收此区块后,交易才能被视为被成功处理。 然而,这种传统方法效率低下,因为相同的交易被传输两次:第一次是在交易传播期间,然后在区块传播期间被再次传输。这将导致网络带宽的浪费。 为了解决这个问题,SEI网络引入了一种机制,在该机制下,区块提议者传播一个包含交易哈希值和一个引用完整区块的区块ID的提案,而不是实际的交易数据。哈希值是通过哈希函数处理的原始交易数据的汇总,占用空间比较小。 区块提议者首先将区块提议传播到网络中,然后逐渐将完整的区块进行一部分一部分传播。 形成区块,而不必等待完整区块的到来。如果有任何交易丢失,它们会等到整个区块到达后再处理交易。 SEI使用这种区块传播过程成功地将网络性能提高了约40%。(此外,SEI通过智能区块传播将最终确定时间降低到210ms,下文会提及。) 2.1.2 Optimistic区块处理 在SEI的Optimistic处理之前,必须先建立对区块的共识,然后才能处理区块。然而,SEI一旦接收到一个区块就开始处理,同时处理Prevote和Precommit。这种结构可能看起来有潜在风险,但由于在区块处理期间也执行Prevote和Precommit进程,如果在此过程中认为区块无效,则可以简单地弃用区块并重新启动进程。因此,这并不是一个大问题。SEI网络并没有省略传统的共识过程,而是将这些过程并行处理。 SEI通过Optimistic区块处理成功地将网络性能提高了约33%。 2.2 交易并行处理 SEI还与Twin Turbo共识机制一起执行交易并行处理,这里重要的是找出哪些交易可以并行处理。并非所有交易都可以并行处理,因为很显然存在相互影响的交易。最终,为了实现安全的交易并行处理,找到具有潜在冲突的交易是非常重要的。SEI通过有向无环图(DAG)预识别交易之间的关系,如果确认这些交易是彼此独立的,则可以并行处理交易。通过这种方式,SEI已经能够每秒处理20,000笔订单。 3、依然渴望速度:Sei如何再减少最终确定时间 3.1 什么是最终确定时间?为什么它很重要? 许多人在计算区块链的性能和可扩展性时经常考虑到TPS(每秒交易量),但实际上,TPS可能是一个相当模糊的指标。这里有一个例子来解释为什么。让我们假设区块链A可以在一个区块中包含60万笔交易。但如果区块链A创建一个区块需要1分钟,那么TPS(=一个区块中的交易数量/以秒为单位的区块时间)将是10,000,但实际上,由于网络包含60万笔交易需要1分钟,因此不能视为每秒实时处理10,000笔交易。TPS只是一个将区块链的处理能力以秒为单位划分的数字,所以表面上的TPS对用户来说是不同的。 我举的例子可能不够极端,但即使你大幅增加每个区块的交易数量,并将区块时间延长到1小时,TPS仍然可能非常高(尽管用户将不得不等待一个小时才能将交易包含在网络中)。出于这个原因,最近在讨论区块链的可扩展性时,TTF(最终确定时间)似乎比TPS更常用,TTF是一个表明交易被确认所需时间的指标。特别是对于像SEI网络这样专注于金融交易的L1链来说,即时处理交易并在反映在网络中很重要,因此使TTF尽可能快是非常重要的。 3.2 Sei与其他区块链比较 通过上述Twin Turbo共识机制(特别是通过智能区块传播),SEI网络成功地将最终确定时间降至约250ms。这是现有区块链中最快的最终确定时间,实际上可以被用户视为近乎即时的交易确认。当然,这是在非常积极的情况下的最终确定时间,在SEI测试网Atlantic-2上进行多次尝试后,最稳定的最终确定时间是410ms。他们成功地将终最终确定时间降至250ms,但某些节点难以维护网络,而RPC节点等基础设施玩家已经落后了。这是不可避免的,因为从本质上讲,区块链节点分散在世界各地,因此在传播和通信方面肯定会有困难。那么如何在减少最终确认时间的同时包含所有这些节点呢? 3.3 Sei优化:即使在最保守的情况下也是最快的 为了解决上述问题,SEI网络在共识过程中添加了大约100ms的commit timeout(提交超时)。 根据网络条件,commit timeout时间将来可能会更短,但是现在,在这个测试网络中,添加的timeout是100ms。有了这个,就能够实现380ms的更快的最终确定时间,而没有添加timeout的情况下,可以实现稳定的410ms。有趣的是,即使有100ms的timeout,SEI也实现了现有区块链中最快的确认时间。根据未来的网络条件和对所添加timeout的调整,SEI的最终确定时间可能会进一步降低。SEI在保守环境中实现的最终确定时间比其他现有区块链更快,这是个非常有趣的事实。 4、SEI的未来前景 实际上,SEI主网发布在去年一直被推迟,刚刚才最终确定。我并不隶属于SEI基金会,所以我无法准确解释为什么SEI主网计划被推迟,但我在研究SEI的期间了解到这样一个事实,那就是SEI一直在努力提高网络性能。似乎他们一直推迟主网发布,是为了达到他们理想的最终确定时间。当然,减少最终确定时间是必要的,但更关键的是网络在稳定环境下运行情况。过去的一年里,SEI一直专注于网络改进,推迟主网发布以确保速度和稳定性。 当然,在主网发布之后,可以被认为是一个不同于测试网的环境,有许多外部变量,因此无法确认在测试网获取的性能是否可以直接转嫁过去。然而,由于测试网环境的设置是尽可能保守的,因此在主网发布后立即实现快速最终确定时间是非常有可能的。 高稳定性和高速——如果SEI网络能够做到这两点,就可以创造这样一个环境:很多用户都可以使用该链而不会产生任何不便。最终,无论是L1还是L2,都需要大量用户使用才能成功,因此SEI主网发布吸引了区块链行业众多参与者的兴趣。作为一个更喜欢单体区块链而非模块化区块链的人,我真诚地希望SEI能够取得成功,并为L1竞争带来一个新的开端。 来源:金色财经lg...