欧易数字货币交易所 更快、更好、更强

EIP-4844经济学:深入探索Rollup的数据可用策略

作者:Jason,ETHconomicsResearchSpace

非常感谢Colin@colinlyguo参与本文的讨论和提供的意见,以及QiZhou@qc_qizhou对本文的反馈。

写在前面

在EIP-4844经济学系列中,我们将分四部分来讲述新增的blob-carryingtransaction会给网络带来何种影响。在上一篇文章中,笔者深入Blob交易的费用机制,包括Blob交易的费用计算方式,Blob交易的特质以及BlobBaseFee的更新算法等内容。在本篇文章中,笔者基于EIP-4844EconomicsandRollupStrategies的分析框架进一步挖掘EIP-4844新引入的Blob市场会如何影响其主要的需求方Rollup的数据可用策略。

EIP-4844经济学系列:

EIP-4844经济学#1:深入EIP-4844费用机制EIP-4844经济学#2:深入Rollup数据可用策略(本文)EIP-4844经济学#3:深入多维资源定价EIP-4844经济学#4:深入Type3交易打包策略Rollup数据可用策略

EIP-4844引入了Blob数据空间作为更佳的数据可用方案。似乎对于Rollup而言,只需要技术性地升级其密码学承诺算法以支持Blob即可。然而,除了技术底层的升级外,Rollup更需要研究如何利用Blob来尽可能降低其可用性数据的成本。换而言之,Rollup需要根据各自的成本曲线以及需求曲线制定其数据可用的策略。

模型假设分析

建模分析的有效性依赖于模型假设。模型假设肯定是无法完全贴近现实,需要做得到抓小放大,关键在于假设的合理性以及对分析的影响。因此,在进行模型推导前,我们先来分析一下本文依赖的一些关键假设。

假设1:引入隐性的延迟成本

在建模过程中,除了数据可用方法消耗的手续费外,本文还引入了隐性的数据延迟成本。数据延迟成本可能对于大部分人而言不太直觉。举一个极端例子,比如一个rollup的TPS是每天1笔交易,等待这些交易塞满一个Blob才提交至L1似乎不是一个优秀的策略。

数据延迟成本的隐形来自于其主要关联于用户体验,某些去中心化应用的安全模型,以及某些去中心化应用的活性。

L2的优势在于其之上的交易能够得到L1的确认。虽然序列器能够快速返回L2交易处理结果,但是若L2交易未得到L1的确认,中心化的序列器实际上比Polygon等L1安全性更差。因此,L2的目标用户理应关注L2交易的可用性数据被提交至L1事件以判断交易的状态,并依赖该状态进行后续操作。因此,数据延迟越大,用户需要等待时间越长,用户体验越差以跨L2应用为例,此类应用最终的安全性都依赖于被提交至L1的L2可用性数据。因此,此类应用的一些关键功能需要等待相应的L2交易的可用性数据上传后才可以实现。对于zkrollup而言,L2交易的可用性数据以及有效性证明被提交至L1时L2交易立即得到L1确认。然而,对于optimisticrollup而言,L2交易的可用性数据被提交至L1后仍需等待一段挑战期(如7天)。在该情况下,似乎L2交易的可用性数据的及时提交没那么重要。实际上并不然,因为有一些应用(如MakerBridge)会直接执行验证提交至L1的L2的可用性数据,无需等待挑战期。假设2:数据延迟成本与交易等待时长成正比

本文假设数据延迟成本与交易等待时长成正比(线性函数)。现实中,延迟成本应该更适合用非线形的函数进行刻画。例如,

指数函数(延迟成本随时间指数上升)分段函数(超过某个阈值才引入延迟成本)

相对于上面更精细的刻画,线形函数具有以下优势:

导数是常数,方便建模推导连续可导,建模过程中的导数运算

同时,线形函数整体上也刻画了交易等待时长越大,数据延迟成本越高的关键特征,满足建模的需求。不同的线性比例也能捕捉拟合非线形函数。

假设3:智能合约处理可用性数据的Gas消耗为常数

本文在Blob的可用策略和Calldata和Blob间的可用策略中假设智能合约处理可用性数据的Gas消耗为常数,与交易批次中的交易量无关。

在实际场景中,处理可用性数据的Gas消耗可能是与交易量成线性关系的。例如,交易批次中全是L2→L1的操作,那么智能合约可能需要逐个处理这些操作,因此处理可用性数据的Gas消耗也会呈线性关系的。

若对处理可用性数据的Gas消耗感兴趣,可以以Scroll为例进行洞察:https://github.com/scroll-tech/scroll/pull/659。值得注意的是,EIP-4844之后,计算交易witness的keccak256消耗的gas可以省去。

根据统计数据可以发现,各个layer2处理可用性数据的方式实际上不太一样。下面挑选典型例子进行说明:

1.Optimism中处理可用性数据消耗的Gas基本与交易批次的大小无关,十分符合本文的假设。

cr:@donnoh_eth

2.Arbitrum中处理可用性数据消耗的Gas基本与交易批次的大小呈正相关,似乎不太符合本文的假设。固定的部分达到175000Gas,可变部分最大达到90000Gas,比例约为51.4%。某种程度而言,该假设仍是合理的。

cr:@donnoh_eth假设4:智能合约处理可用性数据的Gas可忽略

本文在Blob均衡价格,Blob拼单策略以及Blob成本分摊的推导中假设智能合约处理可用性数据的Gas消耗可忽略,即远低于上传可用性数据的成本。

在EIP-4844之前,根据统计数据,该假设很明显是成立的:

cr:@donnoh_ethcr:@donnoh_eth

然而,EIP-4844上线前期,Blob的费用似乎可以忽略不计,参见Optimism的一个batch交易。这个时期Blob的供给远高于需求,DataGasPrice为1wei。

cr:beaconcha.in

虽然不符合当前情况,但是该假设在探讨上述三个主题还是有意义的

Blob均衡价格探讨的是Blob在未来达到供给需求平衡时的场景Blob拼单策略以及Blob成本分摊探讨的是Blob成本过高而需要拼单的场景

?当前(2024.3.31)的Blob已经锚定了目标,更接近建模假设:

cr:@0xRob假设5:GasPrice和DataGasPrice为静态均衡值

本文在推导的过程中假设GasPrice以及DataGasPrice为静态均衡值。实际上,均衡值会受供需范式转移的影响,也是动态的。不过,供需范式转移(非随机波动)发生的频率较低。在这中间,均衡值可以考虑为静态值,不会影响在这中间实施的策略。不过,供需范式转移转移后,要更新一下新的状态均衡值即可。

Blob的可用策略

在EIP-4844中,Blob采用的是集装箱的收费模型。因此,对于Rollup而言,需要权衡:

当Blob被完全利用时,上传可用性数据均摊成本是最低的

当Blob被完全利用时,数据延迟成本是最高的(等待最长时间才能提交至一层网络)

Blob数据可用方案成本

Calldata和Blob间的可用策略

Blob作为一种数据可用方案,并非完全优于Calldata:

利用Calldata上传可用性数据的均摊成本是不变的,无需如Blob般等待数据达到某种量级以降低成本,因此可以做到快速发布,因而有着更低的数据延迟成本。可以预想,有着较少交易量的Rollup会更倾向于使用Calldata。这些Rollup需要付出很大的数据延迟成本才能把Blob填充完。Calldata数据可用方案成本

然而,Vitalik基于技术的角度更倾向于限制Calldata的使用,让Rollup都使用Blob:

对于Rollup而言,维护两套机制成本太高。Calldata本身不是为数据可用设计的。

关于提高Calldata作为数据可用性方案成本的EIP-7623(Draft)也被提出。基本思路很简单:

若交易Gas消耗中Calldata的占比>~76%,Calldata的成本为68gas/byte若交易Gas消耗中Calldata的占比~76%,那么该交易就被认定其用于数据可用。该值是通过历史统计权衡出来的:

观察数据可用交易的Calldata的占比,尽可能命中观察非数据可用交易的Calldata的占比,尽可能不要误伤Blob均衡价格

Blob拼单策略

Blob的联合发布似乎可以解决Blob数据延迟成本过高的问题,类比于现实世界的集装箱也不限于只装一家的货物。

本章节评估在下列三种场景下,拼单策略导致Blob均衡价格的变化,并分析拼单策略是否相对单独发布为更优策略。

Rollupi和Rollupj都采用Blob作为数据可用方案Rollupi采用Blob作为数据可用方案,而Rolupj采用Calldata作为数据可用方案Rollupi和Rollupj都采用Calldata作为数据可用方案

场景1:Rollupi和Rollupj都采用Blob作为数据可用方案

场景1中Blob的均衡价格会降低,最多降低一半

场景1中拼单策略相对单独发布为更优策略

场景2:Rollupi采用Blob作为数据可用方案,而Rolupj采用Calldata作为数据可用方案

场景2中Blob的均衡价格会上升,最多为原来的2倍

场景2中拼单策略相对单独发布不一定是更优策略

场景3:Rollupi和Rollupj都采用Calldata作为数据可用方案

场景3中拼单策略相对单独发布不一定是更优策略

Blob成本分摊

性质1:必然存在最佳成本均摊方案

性质2:大型Rollup需要支付低于其交易比例的Blob费用

性质3:大型Rollup需要支付超过一半的Blob费用

性质4:小型Rollup单笔交易成本优化效果更佳

后记

EIP-4844下Rollup数据可用策略让我们辩证地看待新旧技术,每种不同的技术都有其适用的范围,我们需要划清各个技术的效用边界,从而让我们更有效率地利用技术。延迟成本基本主导了本文的推导,而这块在平时的讨论中都隐藏在水下。

后续仍有很多开放的研究空间,如限制Calldata的EIP敲定后,Rollup数据可用策略会发生什么变化。欢迎加入ETHconomicsResearchSpace一起讨论研究。

相关资料

EIP4844:WhatdoesitmeanforL2users?

https://medium.com/offchainlabs/eip-4844-what-does-it-mean-for-l2-users-5e86ebc4c028

EIP-4844EconomicsandRollupStrategies

https://arxiv.org/abs/2310.01155

EIP-4844经济学#1:深入EIP-4844费用机制