昨天Arbitrum因gas费奇高被热议,流传出一个有趣的梗,“为什么l2比l1好,原来是因为gas费是l1的2倍。”
这个梗指出的情况不常见,但确实指出了l2存在的问题。
为什么会有l2,为什么以太坊有那么多l2,因为比特币和以太坊的pow链,gas费高并且堵塞,今年以太坊gas费在ape推出元宇宙地块的时候,gas price一度冲到了5000,而近期,以太坊的gas price最低跌破了10。
在这样低的gas price下,很多pos链、l2链已经没了竞争力。
以太坊挑战者和l2链的出现,就是为了解决以太坊的高gas费和堵塞,但在现在这样的环境下,l2的gas费已经比以太坊主网高了,主要表现就是Arbitrum在展开交互大赛,而如此频繁的交互让Arbitrum链上gas费已经成功高于以太坊gas费的2倍。
为什么呢?
gas费,是用户承担服务器资源的必备品,也是调控交易进程的重要因素,以太坊从pow链转到pos,在gas定价里,只看共识层的gas price会有变化。
而那些以太坊挑战者,新出现的pos链,包含l2,大都和以太坊上pow的gas price差了很多个数量级。
例如以太坊gas price在10gwei时,polygon上的gas price可能是其1000分之一。大部分以太坊挑战者都是如此。
gas费是gas消耗量和gas prcie的乘积,链上通过gas费来标定链上交易资源的消耗,与之相关的就是链上交易大小,以及资源消耗,例如合约的代码编辑,合约中会有执行码,不同执行码都有不同的定价,这些执行码组合决定了合约执行的gas消耗。
而当涉及到多个链交互的情况,比如从l2本身定义去看。
L2是为了给l1扩容存在的,对于arbitrum来说,就是为了把以太坊的交易迁移到l2里交易,但用户很多操作会回到l1。
那l2上的交易数据要回到l1上链,这也代表着在这种需求下,l2的交易证明的大小,决定了用户操作l2-l1合约时的gas用量。就有用户提出过,Arbitrum的存在交易压缩度不够的情况。
但l2的公链逻辑,让l2希望用户进来之后就不要再回到l1,只在l2做交易就可以了。
那l2链和其他公链的角色是一样的,其对与gas费的设计和要求,要更加符合pos链、低gas、高并发链的属性。
那如何设计gas定价机制呢?
我们从arbitrum此次出现的问题看。
网传arbitrum是由单一项目gmx设置了合约交互的最小gas消耗值而抬高了gas。这一理论,在公链gas设计里是杜绝的,dapp合约和链基础协议是完全分开的,即便一个dapp合约执行设置了最低消耗gas,可能是为了合约执行打包更顺利,但dapp无法改变链整体的gas。
我们去查询了arbitrum的gas定价,其有一个单独的gas系统arbgas,其中标明了链上有一个最低值,也可以设置支付gas限制。
但arbitrum的gas定价和以太坊的定价有相同之处,那就是包含价格竞价,竞价被称为gasbid,交易者设置的最高可支付gas费就是gasbid,在交易越来越多的情况下,gasbid会不断推高。
而arbitrum上还有一个很有趣的规定是交易发送者的L2账户中必须至少有 gasbid乘maxgas的ETH。该设置虽然会让很多交易直接无法完成,但从用户体验上,似乎有可能让用户陷入不断推高的情绪里。
如果想把gas降下来,那些市场博弈的方式都是很难奏效的,唯一的,也是最好的方法就是降低gas price计算的数量级和降低合约执行码的gas消耗量。
利用pos共识的链,其没有像pow那样的资源消耗和资源成本,定价必然会降低很多,并且,网络会发行代币,代币中也会有相应保持网络运营的部分,所以,gas费在这样飘忽不定的市场下,暂时不会有明确的定义和标准。
如果其他链学习以太坊就一定会有gas费巨高不下的情况出现,因为基础网络运作并不考虑市场,像harmony这样的新l1也曾因为大量交易,gas费高的离谱,是否还需要有其他的先行者解决gas费的问题呢?答案当然是需要,但无人解决的时候,我们只能暂且选择等待和忍受。
声明:此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。本网站所提供的信息,只供参考之用。