探索Solana平行手续费市场的动态基础费用

  • thogiti
  • 发布于 2025-01-31 22:45
  • 阅读 45

本文探讨了动态基础费用对Solana区块链的重要性,借鉴了以太坊EIP-1559的概念,以适应多线程环境。文章详细描述了现有费用模型的不足,以及如何通过引入动态费用机制来提升资源使用的公平性和防止网络拥堵,同时保持Solana的高并发性能。

概述

Solana 的区块链模型以其并行执行和本地费用市场而著称,这使得在规模大时能够实现高吞吐量和低延迟。然而,当网络使用量激增时,静态费用结构可能无法满足需求,因为它们缺乏实时调整交易成本的自动机制。在这篇文章中,我们探讨了动态基础费用——受到以太坊 EIP-1559 的启发,但针对多线程环境进行了调整——展示了 Solana 如何实现全球拥堵信号,以:

  • 在使用量稀少时保持费用较低,
  • 当区块接近容量时阻止垃圾交易,
  • 确保根据每笔交易的资源使用量公平分配费用。

下面,我们概述了 Solana 与以太坊费用模型的现状,强调了动态费用的动机,然后提出一个简单的数学框架,说明 Solana 如何可能纳入基础费用乘数以进行全球拥堵管理。


为什么 Solana 需要动态基础费用?

动态基础费用对 Solana 重要的原因有几个:

  • 在高负载下防止垃圾交易
    如果使用量较低,基础费用保持最低——没有损害。但是,随着区块容量接近极限(例如,每个区块 4800 万计算单位),费用乘数将自动上升。这会阻止垃圾交易或低价值交易堵塞网络。

  • 与资源使用成比例定价
    在动态模型中,每笔交易的费用与其消耗的计算单位(CUs)的数量相一致(而不是对所有交易收取固定的签名费用)。这提供了更公平的费用分配,并激励开发者优化他们的链上程序。

  • 通货紧缩效应和验证者奖励
    与 EIP-1559 类似,基础费用的一部分(或全部)可以被销毁。这减少了在高使用时的代币供应,有利于长期持有者。验证者仍然可以从急需包括交易的用户那里获得优先小费。

  • 保持并行性和可扩展性
    即使有全球费用,Solana 的并发模型仍然完整。争夺同一账户的用户可以在本地出价,而全球基础费用则确保整个网络不会因低价垃圾交易而受到影响。


背景:当前区块链的费用模型

今日的 Solana 模型

目前,Solana 收取固定基础费用(例如,每签名 5000 lamports),并为竞争较大的账户提供本地费用优先权。虽然本地费用竞标可以在“热点”账户场景中提供帮助,但当整体网络使用量激增时,并没有全球强制动态机制来提高或降低交易的基线成本。主要缺点是:

  • 垃圾交易脆弱性:即使网络接近满负荷,基础签名费用仍然保持不变。恶意或低价值的交易可以廉价占用区块空间。
  • 静态成本:交易支付大致相同的费用,不管它们消耗了多少计算单位(CUs),这在经济上几乎没有优化资源使用的激励。

Ethereum 中的 EIP-1559:详细概述及其基础费用更新规则

以太坊的 EIP-1559 引入了一种全球基础费用,该费用逐块调整,以目标气体使用阈值为目标(通常为 50%)。它包括:

  • 自适应:如果上一个区块超过了目标气体使用,那么下一个区块的基础费用会上升;如果低于目标,基础费用则会下降。
  • 单线程执行:以太坊按顺序执行交易;全球基础费用是一个简单的拥堵信号。
  • 小费:用户可以添加“优先费用”以超越其他人,而基础费用本身通常被销毁,这创造了一种部分通货紧缩的代币模型。

基础费用计算

在其核心,以太坊协议将每个区块的大小(气体使用)与目标区块大小 s\*s^\* 进行比较。如果上一个区块使用的气体大于目标,基础费用就会上涨;如果使用的少,基础费用就会下降。形式上,如果 b[i1]b[i - 1] 是上一个区块 i1i-1 的基础费用,s[i1]s[i - 1] 是该区块的测量气体使用量,那么新区块的基础费用 b[i]b[i] 是:

b[i]  =  b[i1]    (1  +  ϕs[i1]ss),b[i] \;=\; b[i - 1] \;\cdot\; \Bigl( 1 \;+\;\phi \,\frac{s[i - 1] - s^*}{\,s^*\,} \Bigr),

其中:

  • s\*s^\* = 目标区块大小,例如最大允许区块大小的一半 (2s\*2s^\*)。
  • ϕ\phi = 影响基础费用对超出/低于目标区块使用量响应程度的调整参数(在以太坊主网中,ϕ\phi 通常为 1/81/8)。

例如,如果 s[i1]s[i-1] 大于 s\*s^\*,表示需求高,则 b[i]b[i] 按比例增长为 s[i1]s\*s\*\frac{s[i - 1] - s^\*}{s^\*}。相反,如果区块使用的气体单位少于 s\*s^\*,基础费用则会下降。

初始条件:在以太坊中,b[0]b[0] 设置为 1 Gwei,区块大小可以扩展到 2s\*2s^\*。采纳类似模型的 Solana 或其他区块链可以选择不同的起始费用或区块大小参数。

交易费用上限和小费

在 EIP-1559 下,当用户创建交易时,他们除了气体限制外,还指定两个关键参数:

  1. 费用上限 (c)\bigl(c\bigr)。这是他们愿意支付的最高金额(以每气体 Gwei 计),包括基础费用 + 小费。
  2. 小费 (ε)\bigl(\varepsilon\bigr)。有时被称为“优先费用”,这是用户在基础费用之上自愿支付给矿工(或验证者)的金额,以获得本地优先权。

设交易实际消耗的气体为 g~g\tilde{g} \le g。那么有效气体价格为:

min{b+ε,c},\min\{\,b + \varepsilon,\, c\},

且用户支付的总金额为 g~×min{b+ε,c}\tilde{g}\,\times\,\min\{b + \varepsilon,\,c\}

销毁与矿工奖励

用户的总支付中:

  • 一部分 g~×b\tilde{g}\,\times\,b(基础费用乘以气体使用量)被销毁——从流通中移除——在高使用时具有通货紧缩效应。
  • 其余部分,g~×(min{b+ε,c}b)\tilde{g}\,\times\,(\min\{b + \varepsilon,\,c\} - b),作为小费收取,激励区块生产者快速纳入交易。

实际影响

  • 自动化费用调整:由于 b[i]b[i] 每块更新一次,以反映之前的区块是超出还是低于目标,用户不再需要从头猜测气体价格。在稳定条件下,基础费用趋向于平衡,像是网络的“标价”。
  • 缓解垃圾交易:如果垃圾交易或机器人填充超过 s\*s^\* 的区块,那么 b[i]b[i] 会上升,使得垃圾交易成本越来越高,最终迫使垃圾交易出局。
  • 优先小费:高价值或延迟敏感的用户可以通过增加小费 ε\varepsilon 确保纳入。这个本地机制与全球基础费用逻辑共存。
  • 销毁大量基础费用也将防止如区块提议者通过生成虚假需求而进行的恶意行为,以提高基础费用,即使没有拥堵。

对并行、Solana 风格环境的影响

在像 Solana 这样的并行或“多线程”区块链中,直接采用 EIP-1559 的方法可能需要调整:

  • 区块大小与计算单位:Solana 的运行时代替气体使用 s[i1]s[i-1],可能记录所有线程的“计算单位使用”。
  • 目标与最大:就像以太坊将 s\*s^\* 设置为最大区块大小的一半,Solana 可以定义一个目标计算使用率,以允许瞬时的峰值高达目标的 2 倍。
  • 本地与全球:Solana 的“热点”账户的本地费用市场仍然适用于细粒度优先级,而全球 EIP-1559 风格的基础费用可以保护整个系统,免受区块级拥挤或垃圾交易。

尽管如此,更新基础费用的方程式、费用上限 (c)\bigl(c\bigr) 的概念以及小费 (ε)\bigl(\varepsilon\bigr) 都可以直接延续,前提是链上实施逻辑来衡量每个区块的使用情况与期望目标的比较。

通过销毁基础费用,网络在高使用期间获得通货紧缩的杠杆,同时验证者仍然可以受益于小费。这种“标定价格”与本地“加小费”相结合,有可能成为管理 Solana 这样的高吞吐量、并发区块链中交易需求的有效途径。

将并发性与动态基础费用融合

为了将 EIP-1559 类似的机制调整到 Solana 的并行环境中,我们考虑一个混合模型:

  • 保持 Solana 的线程级并发(不同线程处理不同账户的子集)。
  • 引入一个全球动态基础费用,随整体资源使用情况上下波动。

这样的设计,局部费用处理微观层面的竞争,而全球费用则保护系统免受大规模垃圾交易或需求冲击。


为 Solana 提出的简单动态费用机制

并行执行与本地优先级

Solana 的线程级并发将保持不变——多个线程各自处理一组账户。如果用户希望在一个热门线程上确保快速处理,他们增加一个优先小费以影响本地排序。然而,仅此并不足以处理全球拥堵。

引入全球基础费用乘数

我们增加一个每块更新的拥堵信号:

  • 区块容量,BB:假设我们定义每个区块最高为 4800 万计算单位(CUs)。

  • 使用量,unu_n:追踪第 nn 个区块使用的 CUs 总数。

  • 填充率,ϕn\phi_nϕn=un/B\phi_n = u_n / B

  • 基础费用乘数,MnM_n:第 nn 个区块的单一参数。交易 τ\tau 的费用为:

    BaseFee(τ,n)=CU(τ)×Mn+(可选小费)。 \text{BaseFee}(\tau,n) = \text{CU}(\tau) \,\times\, M_n \quad+\quad \text{(可选小费)}。

更新基础费用

受 EIP-1559 启发,我们使用以下公式调整 Mn+1M_{n+1}

Mn+1  =  Mn×exp ⁣(α(ϕnϕ)), M_{n+1} \;=\; M_n \times \exp\!\Bigl(\alpha \,(\,\phi_n - \phi^*)\Bigr),
  • ϕ\*\phi^\* 是目标填充率(例如 50% 或 90%)。
  • α\alpha 是一个灵敏度参数,用来控制费用对使用量的响应速度。
  • 如果 ϕn>ϕ\*\phi_n > \phi^\*,费用上升;如果 ϕn<ϕ\*\phi_n < \phi^\*,费用下降。

对并行线程的考虑

如果 Solana 使用 TT 并行线程,设 un(t)u_n^{(t)} 为线程 tt 的使用量。总使用量为 un=tun(t)u_n = \sum_t u_n^{(t)},得出全球填充率 ϕn\phi_n。另外,为了突显“热门线程”,你可以定义:

ϕn=maxt{un(t)/Bt}, \phi_n = \max_{t} \Bigl\{ u_n^{(t)} / B_t \Bigr\},

其中 BtB_t 是每个线程的容量。任何方法确保 Mn+1M_{n+1} 反映所有线程的峰值或总资源使用情况。


数学形式化

让我们定义一组最小的方程来描述该系统:

  • 区块容量:BB(例如 4800 万计算单位)。
  • 使用量:un=t=1Tun(t)Bu_n = \sum_{t=1}^{T} u_n^{(t)} \le B
  • 填充率:ϕn=un/B\phi_n = u_n / B
  • 基础费用乘数:MnM_n
  • 目标填充率:ϕ\*\phi^\*(例如,如果我们的目标是 90% 的使用率则为 0.9)。
  • 更新规则:
Mn+1  =  Mn×exp ⁣(α(ϕnϕ)). M_{n+1} \;=\; M_n \,\times\, \exp\!\Bigl(\alpha\,(\phi_n - \phi^*)\Bigr).
  • 用户在区块 nn 的交易 τ\tau 的费用:
Cost(τ,n)  =  CU(τ)×Mn  +  小费(τ) \text{Cost}(\tau,n) \;=\; \text{CU}(\tau) \,\times\, M_n \;+\; \text{小费}(\tau)。
  • 费用销毁(可选):链可以销毁全部或部分的 CU(τ)×Mn\text{CU}(\tau)\times M_n,并将小费(τ\tau) 分配给验证者。这在使用量高时会产生通货紧缩的效应。

对 Solana 的好处

这种方法有几种好处:

  • 高负载下的灵活性
    随着使用接近最大容量,指数规则迅速提高基础费用。低价值垃圾交易变得不经济,确保资源用于高价值交易。

  • 公平资源核算
    使用更多计算时间或更重操作的交易支付更多,以阻止未优化程序占用网络。

  • 保持并行效率
    本地费用市场(优先小费)仍然管理微观层面的竞争。全球基础费用层只是确保系统整体使用情况保持在目标的 ϕ\* \phi^\* 附近。

  • 费用稳定性
    如果 α\alpha 设置得当,基础费用会在多个区块上平稳调整,最大限度减少费用波动,同时仍能响应上升或下降的需求。


潜在挑战与下一步

这种方法存在一些潜在挑战:

  • 本地与全球拥堵
    线程可能面临热点;单一的全球基础费用可能无法完美反映每个线程的使用情况。我们可能需要一种“线程权重”方案或对非常热门账户征收本地附加费。

  • 摆动
    如果 α\alpha 设置得太高,费用可能快速飙升和下跌。需要实证测试来寻找稳定的参数。

  • 实施复杂性
    每块更新基础费用乘数并在并行线程中强制实施可能需要对 Solana 运行时进行更深层的更改。收益是一个强大、自动化和更加公平的费用市场。

  • 定义目标填充率
    ϕ\*\phi^\* 设置为 50% 留有应对需求激增的“余地”,但可能导致链的利用不足。将 ϕ\*\phi^\* 设置为 90% 则接近最大使用率但减小了应对突然激增的缓冲。治理或开发者共识是选择最佳选择所必需的。


结论

在 Solana 上实施动态基础费用机制将结合:

  • 并行执行(线程、本地费用市场)
  • 自适应全球定价(EIP-1559 风格的乘数)
  • 基于计算的交易成本(按比例收费)

这种混合方法可以解决一些持续存在的问题:

  • 当使用量高但费用保持低时的全球垃圾交易,
  • 不公平或未优化的使用,
  • 无法快速响应需求激增的能力。

最终,采用随区块填充率上升的基础费用,确保合法的高价值交易可以超越垃圾交易,而日常使用在正常情况下仍然保持可负担。当 Solana 继续扩展——潜在地处理成千上万的交易每秒——动态基础费用提供了一条能够应对未来挑战的用户友好型、拥堵响应的可持续发展路径。


进一步阅读与参考

  1. EIP-1559 – 以太坊改进提案 1559 文档
  2. Solana 官方文档 – Solana 文档
  3. Solana 的费用
  4. Tim Roughgarden 论文 – 以太坊区块链的交易费用机制设计:EIP-1559 的经济分析。
  5. Block-STM vs. Sealevel:并行执行引擎的比较
  6. Solana 费用的理论与实践
  7. 关于 Solana 本地费用市场的真实性
  • 原文链接: github.com/thogiti/thogi...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论