3WebDAO

Posted on Dec 27, 2021Read on Mirror.xyz

Filecoin v14升级中FIP-0024对存储提供者的影响研究

背景

Filecoion于10月26日(区块高度1231620, UTC+8:21:30:00)进行v14 Chocolate 🍫网络强制升级,它被称为Chocolate是因为这次升级将为网络带来许多好处,例如小型用户体验和协议改进。 本次升级包含以下内容: ●FIP-0020:在WithdrawBalance方法中添加调用返回值 ●FIP-0021:正确地计算到期时的扇区质量 ●FIP-0022:错误的交易不会使PublishStorageDeals消息失败 ●FIP-0023:打破相等权重的tipsets之间的联系 ●FIP-0024:BatchBalancer和BatchDiscount Post-HyperDrive调整 ●FIP-0026 :将允许扇区故障周期从2周延长至6周

其中对存储提供者比较重要的提案就是FIP-0024,主要调整 BatchBalancer 和 BatchDiscount参数以匹配FIP-0013 HyperDrive升级后观察到的网络增长率。

更改BatchBalancer和BatchDiscount的原因

FIP-0013 HyperDrive 中引入了 BatchBalancer 和 BatchDiscount,以使参与者的激励与网络的长期健康和成功保持一致。FIP-0013 HyperDrive升级是支持聚合提交ProveCommitSector消息上链,单次聚合可证明的扇区数最少4个,最多819个。这样就大大减少了需要提交上链的存储证明消息,间接提高网络处理速度25倍以上,缓解了网络拥堵,大大降低了存储提供者的封装GAS费用。FIP-0013 HyperDrive升级后预期Filecoin网络每天可以支持1EB的封装速度,但经过三个月来的观察,其实网络日封装速只有60PB左右。所以截止目前只有一小部分存储提供者升级了聚合上链,还有很多没有升级,这就导致了网络处理能力没有充分释放。 BatchBalancer 和 BatchDiscount 的初始参数值是在考虑存储期望、均衡网络 BaseFee、在 Filecoin 上提供存储的回报、PublishStorageDeals 成本和协议收入后设置的。HyperDrive 解锁了 10-25 倍的存储载入容量,并且参数正在以载入 1 EiB/天的数量级增长。然而,网络并没有在那个水平上增长,导致协议收入的损失,长期伤害所有参与者。因此,该协议需要根据当前的网络增长率(~60PiB/天)和当前的增长预测相应地调整其参数至 >150PiB/天。一旦网络显着超过该增长率,协议可能会重新校准此参数。

具体修改规格

HyperDrive(旧版本):

v14(目前的新版本):

带来的影响

我们都知道Filecoin采用EIP-1559的交易手续费机制,其核心是Gas 费将分为两部分:基础费(BaseFee)和存储提供者小费(Tip)。 EIP-1559提案通过将Gas费的费率根据实际的使用需求进行调整,从而保证区块的使用率维持在半满状态,并动态地调整Gas 费的上限,更好地应付短时的需求峰值,避免需求旺盛时导致的网络拥堵,从而改善用户体验。 基础费(BaseFee)是用户必须支付的最低价格,以便将其交易打包进区块之中,不过基础费(BaseFee)不归存储提供者所有而是将其销毁。 考虑到广泛的利益相关者和利益,在设置 BatchBalancer 和 BatchDiscount 的参数值时有许多权衡和考虑。调整 BatchBalancer 和 BatchDiscount 首先会改变均衡交叉 BaseFee,其中不聚合的单位成本超过聚合的单位成本,从而激发聚合以释放链容量。Crossover BaseFee 并使用以下公式以近似形式计算。 CrossoverNetworkBaseFee = BatchBalancer * BatchDiscount * SingleProofGasUsage / (SingleProofGasUsage - BatchProofGasUsage / NumProofsBatched) 这种Crossover BaseFee 反过来会影响其他指标,例如 PublishStorageDeals 的成本、特定增长率的协议收入以及存储供应的回报。您可以在下表中找到现有和建议的平衡值之间的比较。

所以此次升级的FIP-0024提案旨在根据当前网络封装速度重新校准参数,将 BatchBalancer 增加到 5 nanoFIL,对存储提供者的影响主要为: 1、 直接导致了之前Crossover BaseFee在0.12nanoFil左右开始聚合更划算,变成了目前在0.32nanoFil左右开始聚合更划算, 2、 预估每扇区(32GiB)封装的Gas费用从之前的0.0085FIL变成0.021FIL 尽管对存储提供者而言增加了封装的Gas费用支出,但这样做可以确保存储提供者尽快完成聚合上链对其本身是有利的,从而进一步释放网络处理性能,有利于网络长期利益发展。

总结

简单地讲,BatchBalancer和BatchDiscount是BatchGasCharge中使用的参数。BatchDiscount是一个gas费用折扣因子,在原则上会让提交聚合证明的费用比提交单一的证明所使用的gas费用(SingleProofGasUsage)便宜(如只需1/20的费用)。BatchBalancer是GasCharge的最小gas费用。这个参数调节着 聚合交易的gas fee的使用,确保大范围的存储增加会向网络支付费用,建立了实用性的门槛,并寻求为其他网络操作(如PublishStorageDeals)维持一个更低的 BaseFee费用水平。当 BaseFee低于BatchBalancer * BatchDiscount时,提交单一的证明就会更便宜。当BaseFee明显高于BatchBalancer * BatchDiscount时,提交聚合证明就会更便宜。这些参数是用于支撑大范围的存储速率增长,从 ~30 PiB/日到~2 EiB/日。