原文标题:《TheCaseforParallelProcessingChains》
原文作者:MohamedFouda
原文编译:深潮TechFlow
当我们重新审视区块链技术的演变时,可以看到一个强劲的趋势正在显现,即新的L1注重并行执行。
这并不是什么新鲜技术,目前Solana就在Sealevel的执行环境中使用。
然而,在过去的牛市中,DeFi和NFT令人印象深刻的表现也让人们意识到,技术迫切需要改进。
在下轮市场中,一些采用并行执行理念的著名项目即将出现,这些项目的名单是Aptos、Sui、Linera和Fuel。
本文将会讨论这些项目的异同,以及它们所面临的挑战。
问题
智能合约平台可以创建广泛的去中心化应用程序。为了执行这些应用,需要一个共享的计算引擎。网络中的每个节点都运行这个计算引擎,以及执行应用程序和用户与应用程序的互动。当节点从执行中得到相同的结果时,他们就会达成共识,并推动链的运转。
以太坊虚拟机是最主要的智能合约执行引擎,有大约20种不同的实现方式。
自EVM发明以来,它已经建立了开发人员采用的临界质量。
除了以太坊和以太坊的L2,其他几个链包括Polygon、BNB智能链和AvalancheC链都采用EVM作为执行引擎,并专注于改变共识机制以提高网络吞吐量。
EVM的一个主要限制性特征是交易的顺序执行。EVM基本上是一次执行一个交易,将所有其他交易搁置,直到交易执行完毕,区块链状态被更新。即使两个交易是独立的,例如,从Alice到Bob的付款和从Carol到Dave的另一个付款,EVM不能并行执行这些交易。虽然这种执行模式允许有趣的用例,如闪电借贷,但它既没有效率,也没有可扩展性。
甘肃省首个5G联合创新中心:聚焦区块链等技术深度应用:8月3日消息,甘肃5G联合创新中心近日正式建成使用,该中心是目前甘肃省规模最大、覆盖面最广的信息化展厅,主要聚焦区块链等技术在教育、生活、政务、医疗、工业等领域的深度应用,也是推进政府数字化转型、推动经济社会数字化建设的一次具体实践。(人民网)[2021/8/3 1:31:31]
这种顺序执行交易是网络吞吐量的主要瓶颈之一:
首先,它导致区块中的交易执行时间更长,限制了区块时间;
此外,它限制了可以添加到区块中的交易数量,以使节点能够执行交易并确认区块。
以太坊的平均吞吐量约为17tx/秒。这种低吞吐量意味着在高活动期间,例如NFTMint,网络矿工/验证者不能处理所有的交易,随之而来的是费用竞标战,以确保优先执行,推动交易费用上升。以太坊的平均费用在某些时候超过了0.2个ETH,许多用户都因此不敢使用以太坊。
顺序执行的第二个问题是网络节点的低效率。顺序指令执行不能从多个处理器核心中获益,这导致硬件利用率低,效率低下。这阻碍了可扩展性,并导致不必要的能源消耗。
并行执行能解决这个问题吗?
EVM结构的限制为并行执行的L1新领域创造了条件。并行允许在多个处理器内核之间划分交易处理,提高硬件利用率,从而实现更好的可扩展性。在高吞吐量链中,增加硬件资源与可执行的交易数量直接相关。
在高频活动期间,验证者节点可以委托更多的核心来处理额外的交易负载。计算资源的动态扩展允许网络在高需求时期实现更高的吞吐量,从而显着改善用户体验。
这种方法的另一个优点是改善了交易确认的延迟,节点资源的动态扩展使得确认所有可能的网络负载的低延迟交易成为可能。
交易不需要等待几十或几百个区块,也不需要为优先确认而产生过多的费用。改进后的确认时间提高了交易的终结性,为低延迟区块链打开了大门。保证执行交易的低延迟使几个以前不可能实现的用例成为可能。
工信部辛国斌:推动区块链与金融深度融合 提高企业融资便利性:10月22日,在2020金融街论坛年会上,工业和信息化部副部长辛国斌表示,支持银行在合理区间自主、理性确定对制造业相关企业的贷款利率,发挥贷款市场报价利率方向性和指导性作用。辛国斌称,通过引导贷款利率下行等方式,推动金融部门降低企业融资综合成本,强化金融科技创新,推动大数据、云计算、区块链、人工智能与金融深度融合,提高制造企业融资的可得性和便利性。(新京报)[2020/10/22]
改变链式执行模式以允许PE并不是一个新的想法,一些项目已经对此进行了探索。一种方法是将EVM使用的会计模型从Accounts模型替换为UnspentTransactionOutput(UTXO)模型。UTXO执行模型在比特币中使用,它允许并行处理交易,这使得它成为支付的理想选择。
但由于UXTO的功能有限,需要进行扩展以实现智能合约所需的复杂互动。例如,Cardano为此目的使用了扩展的UTXO模型,而Findora使用了混合UTXO模型,它实现了两种会计模型并允许用户在两种模型之间更改资产类型。
PE的另一种方法并不改变账户模型,而是专注于改善链状态的架构和修改。例如Solana的Sealevel框架。
并行执行是如何工作的?
并行执行的工作方式是确定独立的事务并同时执行它们。如果一个事务的执行会影响到另一个事务的执行,那么两个事务就是相关联的。例如,同一池中的AMM事务是相关联的,必须按顺序执行。
虽然并行处理的概念听起来很简单,但困难就在细节中,主要的挑战是如何有效地识别"独立"交易。独立交易的分类需要了解每笔交易如何改变区块链内存或链状态,与同一智能合约互动的交易可以同时改变合约状态,因此,不能同时执行。
以目前应用程序之间的可组合程度,识别是否相互关联是一项具有挑战性的任务。想象一下,一个将UNI换成USDC的AMM交易,AMM发现执行它的最有效路线是UNI->ETH->DAI->AAVE->USDC。所有参与该交易的池子不能处理任何其他交易,直到该交易完全执行,然后所有参与的池子的状态才能被更新。
IOST与Tweebaa推易吧达成深度战略合作:据官方消息,近日,IOST与基于多维价值体系的价值社交平台“Tweebaa推易吧”达成深度战略合作。双方将围绕区块链技术创新、品牌共建、政企合作、全球社区拓展、B/C端业务布局等方面展开深度合作,共同打造开放共赢的区块链商业应用。
IOST是全球化的企业级区块链技术应用平台,致力于将区块链技术应用,推广至商业端各类行业和客户端各类应用场景中。
推易吧是基于多维价值体系的价值社交平台,致力于打造人人都能创新变现的价值社交生态圈,实现物质财富、精神财富、社会财富的共同增长。[2020/6/9]
识别独立交易
在本节中,对不同的并行执行引擎所使用的方法进行了比较。重点讨论的是控制状态访问的方法。区块链状态可以被认为是一个RAM存储器,每个链上的账户,或智能合约,都拥有一系列可以修改的内存位置。关联交易是那些试图改变同一区块中相同内存位置的交易,不同的链利用不同的内存架构和不同的机制来识别这些交易。
这一类的几条链都是建立在Facebook已消亡的区块链项目Diem所开发的技术之上。Diem团队创建了智能合约语言Move,专门改善SC的执行。Aptos、Sui和Linera是属于这一组的三个高知名度的项目。除了这个小组,Fuel是另一个专注于PE的知名项目,使用自己的SC语言。
开发者透明,也就是说,不要求交易明确声明它们使用哪一部分状态。
Aptos使用的是?SoftwareTransactionalMemory?的修改版,称为Block-STM。
在Block-STM中,交易在块内被预先排序,并在处理器线程之间进行划分,以便被执行。
在过程中,交易的执行都是假定没有关联关系。被交易修改的内存位置被记录下来,执行后,所有交易的结果都被验证。在验证过程中,如果一个交易被发现访问了被前面的交易修改过的内存位置,这个交易就会被废止。该交易的结果被刷新,然后重新执行。
浙江省水利厅:将区块链等技术与水利业务深度融合:金色财经消息,近日,浙江省水利厅下发《关于进一步加快推进浙江省水管理平台建设的通知》。《通知》要求,要强化组织领导,规范工作程序,强化工作指导和和技术保障,全力推进水管理平台建设的各项工作;要推动示范引领,将区块链、北斗导航、人工智能、5G等技术与水利业务深度融合,提高水利业务系统智能决策的水平,推进通用性强的地方优秀应用在全省推广使用。[2020/4/26]
这个过程不断重复,直到块中的所有事务都被执行。
当使用多个处理器核心时,Block-STM会加快执行速度,加速的多少来自于交易的相互关联程度。
Aptos团队的结果表明,使用32个内核可以将高相互关联性能提高8倍,将低相互关联性能提高16倍。如果一个区块中的所有交易都是相互依赖的,那么与顺序执行相比,Block-STM会导致性能上的轻微损失。Aptos声称,这种方法可以实现160,000TPS的吞吐量。
Sui
另一种PE方法是要求交易明确声明他们所修改的链状态部分,这种方法目前被Solana和Sui使用。
Solana将内存单元称为账户,而交易必须说明它修改了哪些账户。Sui也使用了类似的方法。
Sui也通过使用MoveVM建立在Diem的技术之上。然而,Sui使用不同版本的Move语言。
SuiMove的实现改变了Diem的核心存储模型和资产权限,这代表了与使用核心DiemMove的Aptos的重大区别。
SuiMove定义了一个状态存储模型,允许更容易识别独立交易。
在Sui中,状态存储被定义为Objects。Objects通常代表资产,并且可以共享,这意味着多个用户可以修改该对象。每个Objects在Sui执行环境中都有一个唯一的ID,并有指向所有者地址的内部指针。通过使用这些概念,很容易通过检查交易是否使用相同的Objects来识别关联。
动态 | 阿里巴巴成为杭州亚运会官方合作伙伴 蚂蚁区块链将深度参与:金色财经报道,12月10日,杭州2022年第19届亚运会组委会宣布,阿里巴巴成为杭州亚运会官方合作伙伴。作为创新技术,蚂蚁区块链技术将深度参与杭州亚运会,全程应用在这一国际赛事中,包括交通出行、签约协议、文化版权、票务及纪念品销售等。在现场,杭州亚组委和阿里巴巴还通过蚂蚁金服区块链可信存证技术签约,为大型综合国际赛事首创。[2019/12/10]
通过将声明关联关系的工作转移给开发者,使执行引擎的实施变得更容易,这意味着理论上它可以有更好的性能和可扩展性。然而,这是以不太理想的开发者体验为代价的。
Sui还没有启动,最近刚刚推出了测试网。
Sui的创始人声称,并行执行的实施以及使用Narwhal和Tusk共识机制导致吞吐量超过100,000tx/秒。这个吞吐量,如果是真的,那么它可能比Solana当前的约2400tx/秒的吞吐量有很大的提升,并且将超过Visa和Mastercard的吞吐量。
a16z领投。关于项目实施的细节不多。然而,根据他们的融资公告帖子,我们知道它是基于同样在Facebook开发的FastPay协议。
Fastpay是基于一种叫做ByzantineConsistentBroadcast的技术,这项技术专注于加速独立的支付,例如发生在销售点网络中的支付。它允许一组验证者确保付款的完整性,只要超过三分之二的验证者是诚实的。快速支付是实时毛额结算系统的一个变种,用于银行和金融机构之间的网络。
在FastPay的基础上,Linera正计划建立一个区块链,通过并行执行支付交易,专注于快速结算和低延迟。值得注意的是,Sui也使用ByzantineConsistentBroadcast的方式进行简单的支付。对于其他交易,Sui自己的共识机制Narwhal和Tusk被用于高效处理DeFi交易等更复杂的和有关系性的交易。
Fuel
Fuel专注于成为模块化区块链中的执行层,这意味着Fuel不实施共识或将区块链的数据存储在Fuel链上。对于功能性区块链,Fuel与其他链交互以达成共识和数据可用性,例如Ethereum或Celestia。
Fuel使用UTXO来创建严格的访问列表,即用一个列表来控制对同一片状态的访问。这个模型建立在规范交易排序的概念之上。在这个方案中,区块中的交易排序导致了检测交易之间的关联关系的显著简化。为了实现这个架构,Fuel公司建立了一个新的虚拟机,称为FuelVM和一种新的语言,称为Sway。
FuelVM是对EVM的一种兼容和简化的表现,可以有效地让开发者加入到Fuel的生态系统中。
此外,由于Fuel专注于模块化区块链,FuelSC的执行可以在以太坊主网上解决。这种方法与合并后以太坊的愿景一致,即作为以Rollup为中心的结算和数据可用性层。在这种架构中,Fuel可以实现在以太坊上批量和结算的高吞吐量执行。
为了验证该概念,Fuel团队已经创建了一个名为SwaySwap的AMM,类似于Uniswap,并在测试网上运行。目的是证明FuelVM与EVM相比性能更高。
可并行交易的百分比
准确估计在任何链上可并行执行的链上交易的百分比是具有挑战性的。此外,根据网络活动的类型,这个百分比在区块之间会有很大的变化。
例如,一个NFTMint可能会导致一个具有高百分比的关联性交易的爆发。也就是说,我们可以使用一些假设来获得可并行交易的平均百分比的粗略估计。
例如,我们可以假设大多数ETH和ERC20的转移是独立的,即从不同的地址发起并接收到不同的地址。所以我们可以假设约25%的ETH和ERC20转账是相互关联的,即向SC存款以及将交易所热钱包的资产聚合到冷钱包。
另一方面,同一池中的所有AMM交易都是有关联性的。鉴于大多数AMM通常由少数池子主导,而且AMM交易具有高度的可组合性,并与多个池子互动,我们可以安全地假设至少50%的AMM交易都是相互关联的。
通过对以太坊的交易类别进行分析,我们可以发现,在以太坊每天约120万的交易中,20-30%是ETH转账,10-20%是稳定币转账,10-15%是DEX转账,4-6%是NFT交易,8-10%是ERC20批准,12-15%是其他ERC20转账。
使用这些数字和假设,我们可以估计,PE可以加速SC平台中大约70-80%的交易。
这意味着关联交易的顺序执行占所有交易的20-30%。换句话说,如果使用相同的Gas限制,就有可能通过PE实现3倍-5倍的吞吐量增长。
一些关于构建并行执行EVM的实验显示了类似的估计,其中可以持续实现3-5倍的吞吐量提高。
在实践中,高吞吐量链使用更高的Gas限制和更短的块时间来实现比至少100倍以太坊的吞吐量提高。增加的吞吐量需要强大的验证节点来处理这些区块,这一要求导致了第二个挑战,即网络的中心化。
投资于专用服务器或可扩展的云架构来处理这些交易。而对于使用链并需要运行完整节点与链交互的公司或个人,情况并非如此。这些实体无法负担复杂的服务器来处理这种大规模的交易负载。这将推动链上用户依赖专门的RPC节点供应商,例如Infura,从而导致更多的中心化。
如果不选择使用消费级硬件来运行完整节点,高吞吐量的链可能会变成一个封闭的系统,一小部分实体拥有对网络的绝对权力。在这种情况下,这些实体可以协调审查交易、实体甚至应用程序,例如TornadoCash,它们可以将这些链转变为与Web2没有什么不同的许可系统。
目前,在Sui测试网上运营一个完整节点的要求低于Aptos测试网节点的要求。然而,我们预计当主网启动和应用程序开始在链上出现时,这些需求将发生重大变化。
去中心化的倡导者们一直在提出解决方案来解决这些预期的问题。这些解决方案包括使用轻型节点,通过使用ZK有效性证明或欺诈证明来验证区块的正确性。
Fuel团队在这方面很积极,与以太坊社区关于去中心化重要性的精神相一致。并不清楚Aptos和Sui团队是否优先实施这些方法或其他促进去中心化。Linera团队在他们的介绍帖子中简要地讨论了这些问题,但协议实施尚未确认这一承诺。
总结
并行执行引擎是提高智能合约平台吞吐量的有前途的解决方案。
结合共识机制的创新,交易的并行执行可以使链的吞吐量接近或超过10万TPS,这样的性能可以与Visa和Mastercard相媲美,可以实现当今最具挑战性的几个用例,例如完全的链上游戏和去中心化小额支付。
这些令人印象深刻的吞吐量改进并不是没有挑战,即关于如何确保去中心化,我们期待致力于解决这些问题的创始人。
原文链接
以太坊重大里程碑—合并(TheMerge)将分成两个阶段进行准备,6日晚间7点半左右首先迎来「Bellatrix」的共识层升级,下一步则是「Paris」执行层升级.
1900/1/1 0:00:00DearGate.ioUsers,Thanksforyourvaluablefeedbackonthesurvey!Accordingtothecampaignrules.
1900/1/1 0:00:00GateLearn自上线至今,致力于在不断优化改进中给用户提供最优质的服务。为了回馈支持Gate.io的新老用户,特此GateLearn再推出为期7天的学习并参与问卷答题有奖活动,浏览学院专题文.
1900/1/1 0:00:00DearKuCoinUsers,KuCoinhasnowopenedtheBifrostPolkadot(BNCDOT)depositserviceforBifrost(BNC).Usersca.
1900/1/1 0:00:00加密资产的价格最近出现了更大的波动。许多价格出现了一些飙升和回调。例如,本周初,比特币离2万美元大关更远。比特币在9月2日失去了2万美元大关,收于19,969美元.
1900/1/1 0:00:00親愛的用戶:幣安推出VIP借貸計劃,讓使用槓桿交易與借貸產品的用戶成為幣安VIP或達到更高的VIP等級.
1900/1/1 0:00:00