前言:Filecoin主网上线前,作者曾写文章分析过Filecoin手续费模型,讨论过关于Filecoin改用EIP-1559设计后的手续费计算模型和优缺点。在讨论计算模型时,默认为理性的交易发送者不会设置超过Gas燃烧阙值,但在现实情况中,官方给定的设置却出现了Gas超额燃烧的不理性的结果。
本文作为《Filecoin手续费模型-EIP1559》(https://zhuanlan.zhihu.com/p/234700165)的姊妹篇,进一步分析了Filecoin的手续费模型中的超额燃烧,并介绍一种降低超额燃烧费的方法。
Filecoin上数据存储和检索工具Boost发布v1.0.0版本:金色财经消息,Filecoin上数据存储和检索工具Boost发布v1.0.0版本,Boost引入了v1.2.0存储交易提议协议(SDPP),使存储客户端能够指定传输数据的不同传输类型。该协议的先前版本v1.1.0仅支持Graphsync,这是目前Filecoin上默认且唯一的数据传输协议。除了v1.2.0 SDPP,Boost还支持HTTP、libp2p-http和Graphsync数据传输,为存储客户端提供了更多选项。[2022/6/24 1:28:51]
作者|?litianc
来源|??Blockcasting&BitTribeLab?
Filecoin的手续费回顾
在之前的文章中,我们介绍了Filecoin采用EIP-1559的方案,用于解决恶意设置GasLimit的问题。我们从宏观层面分析了交易手续费的计算模型和主要影响因素。?
ConsenSysCodefi推出Filecoin存储应用:ConsenSys旗下ConsenSysCodefi宣布推出Filecoin存储应用(FilecoinStorage),用户可通过Web应用程序和API访问Filecoin去中心化存储市场。FilecoinStorage由一个简单的可搜索市场组成,可让生态系统参与者全面了解Filecoin存储市场,并允许客户通过筛选和分类找到适合其需求的最佳矿工。另外,提供数据存储服务的Filecoin矿工可以使用该应用向客户进行报价,也可与客户进行互动来确定最佳价格。[2020/10/21]
当时,由于理解有限,文中将GasLimit直接套用在Gas实际燃烧的概念上,但是这样的描述是不准确的。理论上,这样计算出的结果已接近实际FIL消耗,但在特定情况下会有最多10%的偏差,这一偏差就是我们中所说的超额燃烧费。?
那么,为什么会有超额燃烧,在何种情况下会产生超额燃烧呢?
超额燃烧的由来
GOKO平台即将上线FIL(Filecoin):据官方公告,GOKO即将上线FIL (Filecoin)。在Filecoin主网正式开启后(主网区块高度达到148,888时,预计时间为2020年10月15日开放充币业务,FIL/USDT的交易将在充币开放后择时开放,具体时间将以公告形式提前通知。
星际文件系统IPFS(InterPlanetary File System)是一个面向全球的、点对点的分布式版本文件系统,目标是为了补充(甚至是取代)目前统治互联网的超文本传输协议(HTTP),将所有具有相同文件系统的计算设备连接在一起。
GOKO是一个社区化治理的加密资产交易平台,公平、公正、安全可信赖,是一家社区友好型的交易所。目前GOKO交易所已获得节点资本战略投资。[2020/10/13]
我们知道,Gas是由交易发送者支付的Filecoin链上资源消耗对应的燃料数量,类比汽车行驶一段距离需要消耗相应的汽油xx升。
与以太坊相似的,Filecoin的Gas也有GasLimit和GasUsed的概念。
MXC抹茶上线FIL(Filecoin)永续合约、杠杆ETF交易:据官方公告,MXC抹茶9月30日22:15上线FILUSDT永续合约,支持1-10倍杠杆自由调节,当日23:00上线杠杆ETF FIL3L、FIL3S交易对,购买3L表示三倍做多、购买3S表示三倍做空。
星际文件系统IPFS(InterPlanetary File System)是一个面向全球的、点对点的分布式版本文件系统,Filecoin(FIL)是在IPFS其上的激励层,通过token激励模式在IPFS上构建了一个去中心化存储市场。详情请阅读相关公告。[2020/10/1]
GasLimit:表示该笔交易最多消耗燃料数量,由交易发送方设置。GasUsed:表示交易上链所消耗的燃料数量,在交易上链之后计算出来。与以太坊不同的是,Filecoin区块中包含的所有消息的GasLimit之和不得超过BlockGasLimit;而以太坊是统计所有消息的GasUsed之和。
一个有趣的知识点:由于Filecoin的区块链采用DAG结构,一个Tipset中可以有多个区块,同一高度下的区块顺序由下一个Tipset的区块统计。因此,交易产生的GasUsed只有在下一个Tipset的区块上链后才能被准确计算出来。
Filecoin创始人:Web3.0具有划时代价值:Filecoin创始人胡安·贝内特在Filecoin太空竞赛启动仪式上发表演讲,他认为Web3.0的时代正在到来。从计算机到互联网,再到人工智能、AI等新科技,人类正在经历翻天覆地的变化。而互联网也从Web1.0到2.0,再到Web3.0的转变,而Web3.0比之前增加了信任机制。Web3.0的价值在于出版、交流、交易的安全保障;数据的存储;去中心化;无信任机制;每个人的隐私得到保护。Web3.0由去中心化网络、区块链和相连的数据组成。(哔哔News)[2020/8/27]
正是由于设计的差异,决定了Filecoin需要对Gas进行更复杂的设计,于是就有了Gas超额燃烧的概念。Gas超额燃烧的设计出现在EIP-1559上线之前,它与EIP-1559并不冲突,可以把它看作是比EIP-1559更基础的Gas模型规则。
超额燃烧的计算
Gas超额燃烧:当GasLimit和GasUsed之间的差异较大时,需要燃烧的额外Gas量。
根据GasLimit与GasUsed的数值,我们将Gas分为三种情况:
GasLimit较接近GasUsed时,认为GasLimit设置合理:GasOverestimationBurn=0GasLimit明显大于GasUsed时,认为GasLimit设置不合理:GasOverestimationBurn=GasLimit-GasUsed当GasLimit处于上述两者之间时,认为这是一个过渡范围,采用抛物线进行拟合:GasOverestimationBurn=(GasLimit-1.1*GasUsed)*(GasLimit-GasUsed)/GasUsed?
GasOverestimationBurn=(k-1.1)*(k-1)*GasUsed
接下来,采用控制变量法,假设GasUsed=30000,横轴为k,纵轴为GasOverestimationBurn,得出Gas超额燃烧曲线,如下图:
从Gas超额燃烧曲线,我们能够看出当GasLimit设置越高,超额燃烧也就越高;GasLimit越接近GasUsed,超额燃烧也就越少,在合理的GasLimit条件下,超额燃烧为0。?
正常情况下,Filecoin客户端只需要在设置GasLimit时,比预估的Gas设置稍高一点,就能实现“零”超额燃烧。但是现实却是,官方代码中给定的默认系数k=1.25,因此现阶段链上的大多数的交易都产生了超额燃烧费用。这究竟是一个Feature,还是一个Bug呢?让我们继续往下分析。
Feature还是Bug
通过官方社群交流平台的记录和github上的问题追踪,我们最终确定这是由一个Bug引发的官方修改。在主网上线3个月后,社区成员提交的一个(https://github.com/filecoin-project/lotus/issues/5066)。
报告内容是ProveCommitSector交易类型的Gas评估在特定条件下会有40%左右的评估偏差,从而导致Gas溢出、交易出错。为了避免Prove交易的Gas溢出问题,官方经过反复调整,最终还是把默认系数设置为1.25。
在v1.4.2的版本中,经过我们对自建节点三种交易类型的数据分析,得出以下结论:
?Prove交易的评估偏差波动较大,最低与最高相差40%;PreCommitSector交易的有一定偏差,但偏差波动较小;SubmitWindowedPoSt交易能准确评估。超额燃烧优化
上述三种交易是当前Filecoin网络矿工消耗手续费最多的交易类型。如果能够减少这三类交易的超额燃烧,甚至做到“零”超额燃烧,对矿工来说可以节省不小的开销。?
我们对超额燃烧进行优化的基本思路是根据不同的交易类型分别实现。目前能够直接实现“零”超额燃烧的交易有PreCommit交易和WindowedPoSt交易;对于Prove交易,需等到共识部分的代码完善后才能实现最理想的优化。?
因此,对于不同阶段的矿工,可操作的优化方法和优化空间也有所不同。?
对于算力已经稳定,只需要发送WindowedPoSt交易的矿工,优化的操作比较简单:可以直接调整mpool中的评估系数GasLimitOverestimation,直至“零”超额燃烧。
对于正在增加算力的矿工,则需要权衡Gas超额燃烧的收益与Gas溢出的风险,结合节点新增算力的速度和交易的历史数据,计算出最适合自身节点的评估系数。?
如果有代码修改能力的矿工,可以尝试在mpool的源代码中修改不同的交易类型的评估系数,从而实现当前手续费的最优化。
总结
超额燃烧费是Filecoin区块链搭建之初的基础设计,它的实现不受后来的EIP-1559的影响。这部分费用本身是带有一定惩罚属性的,法不责众,理论上Filecoin的所有的交易都应当很容易避免超额燃烧。目前官方正在通过底层数据结构修改来进行完善,以减少Prove交易的Gas评估偏差。
我们相信普遍的超额燃烧情况只是一个短期的状态,通过技术升级最终将解决这一问题。那时,生态应用开发者和用户不必知晓底层复杂的概念逻辑,可以把注意力更多地投入到业务设计和产品体验中。
1月30日,CFTC公布了最新一期CME比特币期货周报,最新统计周期内BTC出现了约6000美元的大幅回调,并一度跌破30000美元整数大关.
1900/1/1 0:00:00YAMFinance在推特上表示,我们将与UMAprotocol合作,为我们的新产品uSTONKS打气,明天在#DegenerativeFinance上发布.
1900/1/1 0:00:00报告摘要:1、截至2020年12月,全球区块链专利累计达到5.14万件,其中我国累计申请了3.01万件,占全球总数的58%.
1900/1/1 0:00:00基于二层的去中心化组织协议Metis团队在ETHDenver2021峰会上正式公布基于OptimisticRollup的Layer2DAO基础协议的技术路线.
1900/1/1 0:00:00美联社(AP)联合Everipedia与著名数字艺术家MarkoStanojevic合作,创作一件纪念首次在区块链上报道美国大选的NFT艺术品《AViewfromOuterSpace》.
1900/1/1 0:00:00本文来源:移动支付网,作者:佘云峰近日,北京数字人民币试点活动已经圆满结束,此次活动中除了中签用户使用手机App支付之外.
1900/1/1 0:00:00