如果我们强制要求每个验证者将所有见证消息聚合起来,那么将每个见证消息传给每个验证者所需的通信量很快就会导致网络过载。同样地,如果聚合只是可选项,那么验证者就不会浪费自己的资源这么做。因此,网络会选择一组验证者来负责进行聚合 1 。出于利益考虑,验证者会认真履行职责,因为包含较多验证者的聚合见证消息更有可能被添加到区块链上,验证者就更有可能获得奖励。
执行这一聚合过程的验证者就是 聚合者(aggregator) 。
见证奖励的变化情况ETH 2.0 在为验证者计算见证奖励时采用了 打包距离( inclusion distance ) 这一指标。打包距离指的是见证消息生成时所处的 slot 与该见证消息被打包到区块时所处的 slot 之差。例如,在 slot s 生成的见证消息在 slot s+1 被打包到区块中,这时打包距离就是 1 。如果见证消息在 slot s+5 被打包到区块中,这时打包距离就是 5 。
在 ETH 2.0 网络中,见证消息的价值取决于打包距离,打包距离越小越好。这是因为越早上链的信息越有用。
为体现见证消息的相对价值,验证者所获得的见证奖励会随打包距离的增大而减少。具体来说,见证奖励会乘以 1/d (d 为打包距离)。
图 4 :见证消息与打包距离之间存在函数关系
见证消息的打包过程见证消息是如何打包到 ETH 2.0 区块链上的?其过程如下 2 :
每个参与见证的验证者都会使用其所拥有的链状态的相关数据生成见证消息;
见证消息会通过 ETH 2.0 网络广播给相关聚合者;
每个聚合者在收到见证消息后都会将它与其它具有相同声明的见证消息聚合起来;
聚合见证消息会通过 ETH 2.0 网络广播至所有节点;
只要是没有在链上看见该聚合见证消息的区块提议者都可以将其打包到区块中。
一旦你发现打包距离大于 1 ,就要了解其背后原因。可能有以下几个原因:
见证消息生成延迟
验证者可能会遇到一些问题,从而导致见证消息生成延迟。例如,验证者所拥有的链状态相关数据过时,或者验证者在生成和签署见证消息上花费时间过久。无论出于哪种原因,见证消息生成步骤的迟滞都会对整个流程的剩余步骤产生连锁反应。 (责任编辑:admin) |