什么决定你的份额
每个周期的发放量是固定的。你的奖励等于你的权重除以所有合格节点权重之和,而权重是质押量乘以三项服务度量——每一项都不超过 1.0。
share = emission × (stake × connectivity × availability × pinning) ÷ Σ (the same, for every eligible node)
effective_stake
你质押了多少
该数值读取自你的链上质押账户,而非节点自报的数字。一份质押只对应一个节点:若两个节点指向同一账户,两者在该周期内都会被排除。
connectivity_bps
你是否接入 Solana
若网络观测到你的节点发起过 Solana blockhash 公告,则计为 1.0;若只观测到你参与 gossip,则计为 0.4。接入链的节点承担的工作确实更多,且这一差异体现在它自己签名的公告中,而非一句声明。
availability_bps
你当天在线了多久
指该周期 24 个一小时时间片中,你的节点被听到过的比例。一个时间片内被听到一次即计入,被听到五百次也一样,因此向网络灌流量不会带来任何额外收益。
pinning_bps
你是否提供内容
若你的节点在被挑战时返回了与内容地址相符的字节,则计为 1.0;若从未被挑战或未能通过,则计为 0.7。这是三项度量中唯一被证明而非仅仅可信的一项——不持有内容就无法产出哈希值等于该 CID 的字节。
关于第四项需要说明一点。OFS-4100 §9.2 已确认的参数表只列出三个因子——质押量、连通性、可用性——并未提及内容留存。但代码中确实应用了它。当规范与代码不一致时,本页以代码为准,因为真正计算奖励表的是代码;不过请将内容留存乘数理解为超前于规范,而非已由规范敲定。
任何乘数都不会超过 1.0
每个乘数都是不超过一的分数,若参数集中有任何一项不满足这一点,软件会拒绝启动。
这不是出于保守,而是唯一算得通的安排。一个周期的资金池是固定数量的代币,乘数决定的是这个池子如何被分配。高于 1.0 的乘数并不会凭空多付给优质节点,它分配的是基础设施资金池中并不存在的代币。RewardParams::validate 会直接拒绝这样的参数集,而不是让缺口在发放当天才暴露出来。
这也是为什么提供内容的奖励被实现为对不提供内容者的惩罚。「留存内容的节点收益更高」与「不留存内容的节点收益更低」描述的是同一个结果,而只有后者能在不凭空增发代币的前提下实现。留存内容的节点保留全部份额;不留存的节点则让出自身份额的十分之三。
| 连通性 | 内容 | 乘数 |
|---|---|---|
| 接入 Solana | 通过了挑战 | 1.00 |
| 接入 Solana | 未被挑战或未通过 | 0.70 |
| 仅参与 gossip | 通过了挑战 | 0.40 |
| 仅参与 gossip | 未被挑战或未通过 | 0.28 |
请把中间两行放在一起看:仅参与 gossip 但提供内容的节点(0.40)仍然低于接入链却不提供内容的节点(0.70)。提供内容是接入链之上的加成,而绝不是它的替代。
用你自己的数字试算
左栏是你能控制的部分。右栏把结果分成两半:由你的输入完全确定的部分,以及取决于一个尚未成形的网络的部分。
你的节点
低于 1,000 OPEN 的节点根本不参与加权。它不是拿到更小的份额,而是被直接跳过。
在该周期的 24 个一小时时间片中。无论你在其中发送多少流量,一个时间片只计一次。
由你的输入确定
1.00上限为 1.00
你的质量乘数——三项服务因子,按奖励表的方式合并计算。
- 连通性
- 1.00
- 可用性
- 1.00
- 内容留存
- 1.00
- 质量
- 1.00
取决于网络中的其他节点
你的份额等于你的权重除以所有合格节点权重之和,因此仅凭你的输入无法算出。这里也没有可代入的实时总量——本页不读取任何链上状态,而且从未有过任何一次奖励发放。所以这个总量是一个假设,由你设定,下面两个数字都建立在它之上,而没有更扎实的依据。
- 1.1%
- 你在该周期资金池中的份额
- 928.72
- 在该假设下,每周期的 OPEN
整个资金池为每周期 82,192 OPEN,由所有合格节点共同分配。只要有任何人质押,上面两个数字都会随之变化,两者都不是预测。
资金池是有限的
引导期发放是一个水池,而不是一个速率。它会被用完。
120,000,000 OPEN——占总供应量的 12%——被划出用于在协议收入尚不足道时支付节点,并均匀分摊到大约四年的每日周期中。它耗尽的那一天,奖励资金池就只剩基础设施国库在结算费中所占的份额:网络实际赚到的部分,再无其他。任何依据上面数字来测算节点投入的人,也应当把那一天一并算进去。
- 120,000,000
- 水池中的 OPEN
- 82,192
- 每周期的 OPEN
- 1,460
- 每日周期数
基础设施 / 节点引导创世分配,占总供应量的 12%。
由所有合格节点共享,并以水池中剩余的数量为上限。
约四年,之后的发放量取决于协议收入能支撑多少。
本页不会告诉你的事
有三个数字是缺失的,而每一个都是有意不给出的。
换算成你的货币值多少
OPEN 没有市场,因此没有价格。在这里给出美元、欧元或人民币金额,等于本项目自行编造一个关于自家代币的数字,再借计算器之名交到你手上。没有可信的换算汇率,所以不做换算。
收益率、年化或回报
百分比回报读起来就像一种承诺,而这是协议无法承诺的。其背后的发放会在四年内耗尽,份额要与每一个新加入的节点分摊,且所有参数都不是固定的——§9 明确规定它们均可由治理更新。一个年化数字会把这三点全部掩盖。
网络今天的总质押量
本页不读取任何链上状态。你的份额取决于所有合格节点的总质押量,与其代入一个看似合理的数字,计算器选择把这个总量做成由你设定的假设,并为一切依赖它的数字加上标注。
目前真正在运行的部分
计算已经存在,支付还没有。
节点会互相观测存活性并公布所见,而把这些观测转换为金额的奖励表也已实现并通过测试——其结果是确定性的,任何掌握相同观测数据的人都能推导出同样的答案,因此负责支付的节点是可被核验的,而非只能被信任。缺的是最后一步:没有任何程序把奖励表提交上链,奖励金库也是空的。从未有任何节点获得过报酬。
这里的每个数值都是治理参数而非常量:1,000 OPEN 的门槛、24 个可用性时间片,以及全部四个乘数,都可以通过投票更改而无需改动代码。这些只是当前的默认值。
常量取自 crates/rewards/src/params.rs;算术过程与 schedule.rs 一致,包括其取整方式。