立即获得价值高达6万元的数字货币盲盒。
摘要
基于Move语言的区块链具有不同的系统逻辑和潜力。——的特点是并行性和更灵活的一致协议。Aptos的并行处理可以提高可扩展性,并行处理的过程充分体现了Move基本链的灵活性。进一步来说,气费分开存储和执行的方式将进一步解放网络资源的潜力。SUI对单个写入者事务的简单快速处理和异步一致协议在提高系统效率方面也非常有特色。本文从Aptos和SUI区块链的建立等并行处理和共识协议创新的角度分析了典型移动生态的特征。
Aptos使用Block-STM(软件事务内存)引擎实现并行处理,带来了明显的性能提升。Block-STM的工作原理类似以太坊两层网络的Optimal Rollup(乐观Rollup),其中事务在块内是预先排序的,假设事务之间没有依赖关系,并行事务乐观执行。执行后验证所有交易的结果。如果发现事务已经访问了由先前事务修改的存储器位置,则该事务是无效的——,因为很明显这两个事务是相关的。刷新事务结果并重新执行事务。重复此过程,直到执行完块中的所有事务。Block-STM的特点是支持复杂的东西,适合各种应用负载条件。
Aptos区块链分阶段、独立、批量运行,为气费的市场定价带来了更大的优化和细化的潜在空间,于是产生了存储和执行成本分离的气费模型。Aptos网络中燃气费计算的主要原理是:运行的成本应该与CPU、内存、网络、存储等资源的消耗直接相关。该模型充分细化了010年至31013年合同执行的流程,从财务价值、数据量、计算能力资源消耗等角度充分考虑了合同执行的市场价值。
Aptos的共识协议本质上是一个**同步的并行执行引擎,将相互依赖的执行层和共识层解耦,从而实现扩展。在事务传播的过程中,事务被各个验证者分组为批,在达成一致的过程中,批再次合并到块——,其中与协议无关的事务流可以不通过区块链的一般节点验证过程,大大提高了效率。将这些与协议无关的任务从共识阶段解耦并排序,将消耗非常少的计算资源(只有块元数据和证明,如前块哈希值、**树数据、时间戳等。),从而实现高事务吞吐量和**化延迟。通过**共识和执行之间的相互依赖,可以实现更高的吞吐量和延迟。
SUI的单写者事务和异步一致协议带来了效率的提高。这个链中有许多简单的事务。例如,用户只想将资产发送给接收方,而这个简单的事务通常只与发送方相关。SUI的单写者应用只是把那些个别的、简单的事务放在客户端本地操作,减轻了验证节点的共识压力,提高了系统的可扩展性。简单的“单个作者”发送的交易判定是独立的,与其他用户无关,因此可以将计算委托给发送者,而不会浪费验证者的计算能力,从而可以由验证者在本地进行计算。隋用“因果排序”来筛选交易的一致意见。与大多数区块链共识协议不同的是,SUI并不对所有的交易进行排序,或者有些交易不需要SUI的**共识——,比如上面提到的单个写者发起的简单交易,SUI只需要对交易进行因果排序即可。因此,SUI可以利用编写器的本地计算能力,并且可以同时执行多个任务。
风险提示区块链商业模式未能达到预期;监管政策的不确定性。
1.核心观点
针对Solidity、Move等现有编程语言,考虑了很多细节。比如最突出的特点就是资源类型,也就是面向资源的编程;此外,并行处理还会带来可扩展性的提升。因此,基于Move语言的区块链具有不同的系统逻辑和潜力。——的特点是并行性和更灵活的一致协议。本文从并行处理和共识协议创新的角度分析了Aptos、SUI等典型的Move foundation区块链的特点。
Aptos的并行处理可以提高可扩展性,并行处理过程充分体现了Move生态系统的灵活性。进一步来说,气费分开存储和执行的方式将进一步解放网络资源的潜力。SUI对单个写入者事务的简单快速处理和异步一致协议在提高系统效率方面也非常有特色。
2并行处理增强可扩展性
Aptos使用新的并行处理系统和Move编程语言来扩展单片链的限制。本节主要介绍共识机制、Move语言、数据模型、移动模块和并行化的改进。
2.1 apto的并行处理
在事务执行方面,Move的并行处理特性带来了区块链的扩展性相对于Solidity的巨大提升。并行执行(PE)就是识别独立的事务,同时执行(不相关的事务),大大提高了区块链的可扩展性。Solidity不支持并行处理。比如以太坊上的交易按顺序执行,其他交易放在——的挂起(排序)状态,这样就产生了mempool和MEV行情。对于两个不相关的事务,如果它们可以并行处理,则是**的和可伸缩的。
Aptos使用Block-STM(软件事务内存)引擎实现并行处理,带来了明显的性能提升。Block-STM的工作原理类似以太坊两层网络的Optimal Rollup(乐观Rollup),其中事务在块内是预先排序的,假设事务之间没有依赖关系,并行事务乐观执行。执行后验证所有交易的结果。如果发现事务已经访问了由先前事务修改的存储器位置,则该事务是无效的——,因为很明显这两个事务是相关的。刷新事务结果并重新执行事务。重复此过程,直到执行完块中的所有事务。Block-STM的特点是支持复杂的东西,适合各种应用负载条件。
如下图所示,Block-STM与事务顺序中的块执行进行了比较。每个区块包含10,000个交易,账户的数量决定了该区块处理的交易的竞争复杂性。在低竞争和高竞争的情况下,Block-STM实现了比顺序执行方案快8-16倍。当事务任务是顺序的时,Block-STM的消耗也较小。可见Move带来的并发性能非常出众。
可见,在L2(二层网络)之前,主链的并行处理能力也是区块链扩容要积极考虑的方案。这为Move基础链的生态带来了更多的可能性。
2.2应用程序:具有单独存储和执行成本的Gas模型
以太坊作为一个分散式网络,在用于驱动网络的计算能力资源运行智能合同程序时,需要消耗燃气费作为燃料。——气费的大小与驱动智能合同程序的复杂程度和气单价有关。但无论如何以太坊网气费的计算模型比较简单(主要以智能合约带动量来衡量),甚至不能反映用户对合约方案需求的市场价值。也就是说,气费的大小并不能很好的衡量合约应用的市场价值(比如发送一个0 ETH的转账价值可能很低,但是智能合约还是要驱动的,气费也不**很低)。显然,Aptos区块链权衡了计算能力、存储和网络之间的成本,充分考虑了用户或开发者的需求。如前一节所述,Aptos区块链分阶段、独立和批量运行,这为mark中的优化和细化带来了更多的潜在空间
Aptos网络中燃气费计算的主要原理是:运行的成本应该与CPU、内存、网络、存储等资源的消耗直接相关。在实施过程中,成本模型如下:
1)固定成本,固定基数加上大额交易的额外费用;
2)执行成本,用于执行Move指令;
3)从**存储器读取数据的读取成本;
4)写入成本,用于将数据写入**存储。
该模型充分细化了010年至31013年合同执行的流程,从财务价值、数据量、计算能力资源消耗等角度充分考虑了合同执行的市场价值。此外,为了进一步减轻系统I/O的成本负担,Aptos团队还将提供一个框架来支持存储成本的返还,进一步减轻存储的负担。
这种执行成本和存储成本的分离很有想象力,更符合区块链网络目前的资源消耗需求。举个简单的例子,在以太坊网络中,如果一个用户要向一个去**化的块发送一篇文章,他必须发送一个事务——。当然,交易转账金额可以是0ETH,但他还是需要承担燃气费;气费关系到现网的负担。无论如何,无论是转账金额还是气费,都不能体现物品的价值,存储空间的消耗,用户的需求价值。对于无意义的物品和有**价值的物品,在不同的网络负担下,气费可能会有所不同。Aptos将执行成本和存储成本分开,非常方便用户衡量自己事务执行的价值。以太坊生态在后续的模块化探索中,我们也注意到了存储和事务执行的分离。
3共识协议和交易处理
我们熟悉的区块链,比如以太坊,通常作为一个去**化的状态共享机,随着时间的推移,系统的用户状态分块累积——,也就是**串行事务排名。我们已经在本系列的前两个报告层中分析了Move语言的并行处理。以Aptos和SUI为代表的Move系统基本链都有自己的并行处理模式,依赖于新的共识协议——。由于Move语言的特点,Aptos的一致性协议与事务执行是解耦的。而SUI的单写者和异步共识协议为区块链事务的共识提供了更多的灵活性。前者将事务执行过程细分为独立和批处理,后者充分考虑验证节点的计算负担,试图将一些简单的事务从验证节点中解放出来。
3.1应用程序:解耦共识协议和事务执行
交易流程的批量执行进一步挖掘了扩展潜力。在Move语言并发执行的基础上,在事务执行流程方面,Aptos试图进一步探索并发执行的吞吐量和可伸缩性。its区块链上的交易处理是分阶段并行处理的,即交易执行流程分为几个阶段。每个阶段都是**独立的,可以分别并行化和批处理。——如果说Move的并行处理相当于把Solidity的一个打包流水线变成了n个并行流水线,Aptos会在此基础上进一步细化分工,打包过程的每一个阶段都是相互独立的,并在阶段级别进一步批量化。同时可以优化性能,在客户端快速执行事务,减轻验证节点的压力,带来更多的交互性和灵活性。例如,在一批事务中,一些特定且**的事务可以立即提交并在客户端本地执行,而无需等待远程验证节点执行。就像包装过程中的一些确定的、**的、有效的工序(比如印logo),在流水线对线的时候,可以在外面独立进行。
需要注意的是,这里所说的处理方法与Aptos将共识协议与交易执行分离的特性有关,这一点将在后面详细描述。Aptos的这种批量和模块化并行执行,为系统升级和新版本发布带来了更大的灵活性,缩短了系统演进周期。由于更新只能针对单个模块进行,此外,这种模块化的特性将验证者节点的计算能力扩展到更多的客户端节点,这些非验证节点资源可以提供额外的计算、网络和存储资源。
与SUI的异步共识协议类似,Aptos的共识协议本质上是一个**同步的并行执行引擎,将相互依赖的执行层和共识层解耦,从而实现扩展。如前所述,交易传播、交易执行、存储、账簿认证等环节都是批量独立运行的,基础是执行层和共识层的解耦。在事务传播的过程中,事务被各个验证者分组为批,在一致同意的过程中,批再次合并到块——,其中与协议无关的事务流可能不需要通过区块链的一般节点验证过程(根据不可能三位一体,一致同意过程会**效率),大大提高了效率。将这些与协议无关的任务从共识阶段解耦并排序,将消耗非常少的计算资源(只有块元数据和证明,如前块哈希值、**树数据、时间戳等。),从而实现高事务吞吐量和**化延迟。共识协议接受节点提出的事务顺序。非协议相关事务验证在识别相关性后,可以在远离关键路径的不同协议中执行事务,验证节点会对**的事务顺序和执行结果达成一致。通过**共识和执行之间的相互依赖,可以实现更高的吞吐量和延迟。
如上所述,在批量执行方面,执行、存储和账簿认证阶段也是批量工作的,以便在重新排序、减少操作(例如,重复计算或签名验证)和并行执行之间权衡机会。目前Aptos区块链使用Diem项目共识协议BFTv4的**迭代版本,等待200毫秒累积一批交易后再分发,并通过leader信誉机制动态调整有缺陷的验证者。
我们可以理解Aptos,一个**同步的并行共识引擎。如果街区像火车车厢一样,在商品最初的包装和配送过程中,独立运行,分批运行。首先会根据商品的包装特点进行分类。
如果只需要打印Logo的过程(类似于非协议相关的过程),可以在外面完成(比如客户端是本地的,分担验证节点的计算压力),然后,这些货物**会再次装入车厢(块),形成区块链条。
3.2SUI:单个写入者和异步一致协议
我们在报告《Web3.0程序该跑在哪里?》中提到:“以以太坊为代表的公链在基础性能上的局限性,不足以单纯依靠共识机制的创新,不足以通过多个链之间的桥接来承载Web3.0的数据和计算。因此,碎片化、L2、以太坊2.0的博卡并联链等各种扩展方案成为当前现实的解决方案。这些方案的细节各不相同,但**都传达了一个市场共识:即Web3.0的数据和计算不会**运行在底层的独木桥上区块链,大量的数据和计算处理将在主链之外实现(L2、平行链,甚至其他非区块链模式)。换句话说,链外计算已经成为业界的共识,尤其是大量的数据处理和计算,将在主链之外完成。”
SUI的单写者应用只是把那些个别的、简单的事务放在客户端本地操作,减轻了验证节点的共识压力,提高了系统的可扩展性。
这个链中有许多简单的事务。例如,用户只想将资产发送给接收方,而这个简单的事务通常只与发送方相关。正如我们前两个报告中提到的,Move的资产是一种类型的资源,SUI区分了两种类型的资产:I)只能由特定所有者修改的资产,例如将资产发送给接收者;Ii)共享对象资源——没有特定的所有者,但被多个用户修改,操作流程复杂。显然,**类是非常简单的事务类型,这种差异使SUI能够通过简化**类简单事务的共识来实现非常低延迟的设计。
简单的“单个作者”发送的交易判定是独立的,与其他用户无关,因此可以将计算委托给发送者,而不会浪费验证者的计算能力,从而可以由验证者在本地进行计算。来自单个编写器的单个事务将经历以下步骤:
1)发送者向网络广播简单交易的数据;
2)验证者将一致同意的投票结果发送回发送者;
3)发送方统计验证方收到的所有选票,一旦符合要求,就会创建“验证证书”并发送给验证方;
4)验证者收到证书后,会检查其有效性,并立即完成交易。
简单来说,这种单写手的简单交易就像公司的流程请假会签——,类似于年假的申请。单写人可以将申请文件分别发给会签流程的领导,然后将他们的签名汇总成一份**的请假函,相当于申请人(单写人)自己承担了验证计算流程,不需要公司各级领导聚在一起开会决定(相当于共识验证计算),大大提高了效率。区块链共识协议确定了验证者之间不需要通信,因此上述过程几乎不会增加验证者的计算负担,证书机制进一步保证了交易的安全性。特别需要注意的是,简单交易的计算负担几乎由发送方本地承担,分担了SUI区块链主网的计算负担,进一步增强了可扩展性。
为了识别简单的交易,SUI使用拜占庭式的一致广播算法。这个简单的算法是,SUI在处理不相关的简单事务时,只锁定相关的数据而不是整个链(或者“stop区块链 world”,比如以太坊 chunking delay)。或者简单理解为对这种不相关的简单交易进行特殊处理——,即sui单写友好(swf)类app。官方文件列出了24种简单的交易(如简单的P2P2交易和公共信息公告),使用该算法可以简单快速地处理这些单作者交易
Move强大的资源类型模型帮助SUI灵活处理各种类型的事务,这些事务可能由其他发送方和其他因素决定。为了明确交易者的依赖性,SUI将多通道方法应用于交易验证,以确保这些独立的交易过程可以独立进行。SUI的并行性还体现在逐个验证事务,而不是批量写入块中。这种方法的主要优点是低延迟。交易一旦成功,就会得到网络的确认,而不是像以太坊那样等待整块**确认。SIO交易流程的核心是识别交易是否关联,具体来说,验证者需要投票识别交易平台是否独立。
除了优化简单的单写者事务,SUI还有全局一致机制(类似于以太坊状态机的工作模式),可以处理更复杂的事务,并定期检查区块链的全局状态。SUI使用名为Narwhal和Tusk的异步共识协议。这是一个有向无环图数据结构的共识引擎,两部分的职责如下:
1)Narwhal内存池,充当管家,负责检查待处理的一致事务,确认数据的可用性;
2)Tusk是保证共识交易有序进行的协议,这样就可以约定数据的具体排序。
本质上,Narwhal聚集了一批要处理的事务(这里类似于以太坊的事务内存池Mempool),并在等待处理的同时对它们进行“图形化”。即Narwhal会标记事务的版本号,并指向上一个事务的版本号,形成一个类似于文件树的有向无环图(DAG)。Tusk也是HotStuff共识协议的修改版本(HotStuff是一个具有三阶段投票的BFT共识协议,它总结了PBFT和Tendermint等共识算法的特点,实现了一个兼具安全性、活性和响应性的共识算法)。它优化了Narwhal提供的DAG结构,着重于减少网络。Sui共识引擎算法实现了每秒超过125,000个事务的吞吐量,延迟为两秒。
采用这种异步共识协议的好处是SUI通过使用“因果排序”来过滤交易的共识。与大多数区块链共识协议不同的是,SUI并不对所有交易进行排序,或者有些交易不需要SUI的**共识——,比如上面提到的单个写者发起的简单交易,但是SUI只需要对交易进行因果排序即可。因此,SUI可以利用编写器的本地计算能力,并且可以同时执行多个任务。
值得注意的是,SUI也会使用远程非验证节点进行一些计算,但SUI**会实现异步一致。但在Aptos区块链中,这些非验证节点的计算部分**会合并到块中,所以Aptos是**同步的并行共识。
风险警告
区块链商业模式达不到预期区块链、密码学等相关技术和项目处于发展初期,存在商业模式达不到预期的风险;动生态发展不及预期。
监管政策的不确定性区块链项目的实际操作涉及多项金融、网络等监管政策。目前各国监管政策仍处于研究探索阶段,没有成熟的监管模式,行业面临监管政策不确定性的风险。
本文摘自郭盛证券研究所2023年2月16日发布的报告《Web3底层语言(三):Move生态有哪些亮点?》。详情请参考相关报告。
前两期内容:《Web3底层语言:Solidity问题重重,MOVE如何“乘虚而入”?》
《Move语言分析:如何避免闪电贷重入攻击?》
原文:《Web3底层语言(三):Move生态有哪些亮点?》
作者:宋佳吉**仪
来源:panewslab
文章来自抹茶交易平台。
抹茶安卓下载:立即前往
抹茶IOS下载:立即前往
正加财富网内容推荐 | ||
OK交易所下载 | USDT钱包下载 | 比特币平台下载 |
新手交易教程 | 平台提币指南 | 挖矿方法讲解 |