Prysm 中的轻客户端服务器支持

该项目旨在为 Prysm 共识客户端添加轻客户端服务器支持。通过实现轻客户端协议所需的 API 和 p2p 订阅,使轻客户端能够连接到 Prysm 节点并获取轻客户端更新,从而增强以太坊网络的健壮性和多样性,实现负载均衡。

Prysm 中的轻客户端服务器支持

该项目旨在向 Prysm 共识客户端添加轻客户端服务器支持。

动机

自从 Altair 以来,已经引入了轻客户端协议,它使轻客户端能够连接到网络,并以最小的硬件和网络要求跟上链的步伐。

为了让轻客户端能够连接到网络,完整的共识客户端需要添加对 同步协议 的支持。目前只有 Lodestar 和 Nimbus 在他们的客户端中实现了该协议。 我们的目标是在 Prysm 中也添加支持。

向 Prysm 添加轻客户端支持将允许:

  • 更多样化的支持轻节点的共识客户端集合。
  • 更多轻客户端连接到网络。
  • 更好的共识客户端之间的负载平衡。
  • 更强大的网络。

项目描述

基于最新的 共识规范,我们将实现所需的 API 和 p2p subs,允许轻客户端连接到 Prysm 节点并获取轻客户端更新。

规范

轻节点需要 4 个 API 和 2 个 gossip subs 才能获取更新并同步链。

有一个 LightClientBootstrap 端点,允许轻节点从他们信任的属于规范链的块哈希中获取当前/下一个同步委员会。

之后,他们将使用其他 3 个 API LightClientUpdateLightClientFinalityUpdateLightClientOptimisticUpdate 将链的其余部分同步到头部。

然后使用两个 gossip subs 向在线轻客户端广播新更新。

还将实现一种缓存机制,以缓存每个周期的 最佳更新, 这样我们就不需要每次都计算它。

路线图

我们需要采取 几个步骤。 我们还花了一些时间研究和理解轻客户端协议,但还有更多内容需要阅读。 一个抽象的时间表如下所示:

  • 前两个月将用于理解和实现协议的工作版本。
  • 然后第三个月将用于重构和优化代码,并向实现中添加小功能。

可能的挑战

  • 该实现不应给系统引入可见的开销,例如 cpu/内存/带宽使用。

项目目标

完成的项目将在 Prysm 客户端中实现所有需要的 信标 APIs。 希望我们会有连接到 Prysm 节点并从中接收更新的轻客户端。

合作者

研究员

导师

资源

  • 原文链接: github.com/eth-protocol-...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
eth-protocol-fellows
eth-protocol-fellows
江湖只有他的大名,没有他的介绍。