网络分片(概念构想)- 分片

本文提出了网络分片(Network Shards)的概念,将网络划分为多个分片,每个分片负责一部分Gossip网络流量的传播(Push)和一部分网络数据的保管与服务(Pull)。这种分片方法旨在优化数据可用性抽样(DAS),解决现有方法中发现和连接子网慢、小规模子网易受攻击、以及随机抽样慢等问题。文章还探讨了自愿分片参与、Danksharding应用以及一些开放性问题。

网络分片

注意:这是关于如何组织网络以满足未来数据分片需求的高级想法。这个想法可以看作是 PeerDASSubnetDAS 提案的后续。在某些方面,它补充了这些提案,而在另一些方面,它可以作为这些提案的替代方案。

最基本的想法是将网络分成 N 个(假设 N = 32 作为初始方法)网络分片,并让每个分片负责:

  • 传播推送)整个 Gossip 网络流量的 1/N,作为各种子网(例如,证明、同步委员会和未来的 DA 采样子网)的骨干
  • 保管和服务拉取1/N 的网络数据(DA 样本、blob 切片、潜在的区块)

数据传播(Gossip 子网骨干)

这个想法可以被认为是广义的 Attnet Revamp spec PR

类似于 Attnet Revamp,网络中的每个节点在任何时刻都被分配到一个网络分片。节点作为一个 Gossip 骨干,服务于静态分配给该分片的一组 Gossip 子网。同样类似于 Attnet Revamp,节点以确定性的方式在网络分片之间循环。

这个概念的主要优势是能够统一且安全地支持更小尺寸的 Gossip 子网(甚至是单个发布者和单个订阅者的极端情况)。网络分片的概念也为推/拉数据传播建立了一个额外的抽象层。

注意:单个 Gossip 子网(主题)可能跨越多个分片(明显的例子是跨越所有分片的 beacon_block 主题)。

数据保管

除了服务于分配给分片的 Gossip 骨干外,节点还承诺保管和服务于在该分片主题上发布的数据。数据保留策略应该是特定于主题的。

当一个节点加入或重新连接到网络时,它应该填补缺失的过去数据的保管空白,以诚实地履行其职责。

注意:由于节点随着时间的推移在分片之间循环,因此以客户端的身份检索历史数据并不那么直接。可以利用不同的实现策略来优化此过程。

自愿分片参与

具有高带宽和存储能力的节点可能自愿希望加入到多个网络分片。这可以通过 PeerDAS write up 中提出的方法来实现。

Danksharding 应用

现有方法的问题

  • 查找和连接到抽象子网基本上很慢并且需要不可预测的时间
  • 小型子网容易受到女巫攻击
  • 拉取随机样本(在追赶头部时)也很慢且不可预测

推送采样

让我们考虑原始的 Danksharding DAS(数据可用性采样)。每个 slot 256K512 * 512)的数据样本需要发布。每个节点只需要接收其中的 75 个(由节点随机选择)。理想情况下,一个节点应该在每个 slot(或至少每隔几个 slot)验证不同的随机样本子集。

可以有 256K 样本子网分布在所有分片上(例如,每个分片 8K 个子网)。

一个采样节点(从“客户端”的角度来看)应该只维护与来自所有分片的节点之间的稳定和平衡的连接。

注意:如果可以放宽采样算法,则对于常规节点可以放宽上述连接到所有分片的要求:例如,节点可以随机选择并缓慢旋转分片子集,并从分配给所选分片的那些样本子网中随机选择样本子集。但是,对于任何放宽的方法,都需要重新审视安全属性。

节点将能够订阅/取消订阅相应的样本子网,几乎是立即的,因为无需搜索和连接到子网节点

这个概念满足了各种采样方法的需求,包括原始的 Danksharding、SubnetDAS 方法

拉取采样

拉取最近的样本非常简单:使用特定的 RPC 方法从分配给相应分片的节点请求样本。

由于分片节点的轮换,拉取历史样本有点棘手。但是,可以使用各种策略来优化该过程:

  • 在搜索和连接到缺失样本的节点时,检索当前连接的节点可用的样本
  • 可能采用更宽松的采样策略,并略微放宽安全属性

未解决的问题

  • (技术) Gossip 实现是否能够处理该数量级(10K 左右)的主题订阅?
    • (Gossip 协议 更改) 主题通配符?例如 das_shard_N_sample_*
    • (Gossip 协议 更改) 主题层次结构?例如 das/shard_N -> das/shard_N/sample_M
    • (Gossip 实现 更改) 按需订阅?分片节点订阅单个子网 das_shard_N,但如果客户端发起 subscribe das_shard_N_sample_M 消息,则节点会回复相同的 subscribe 消息
  • (技术) 当节点(作为客户端)订阅一个主题时,及时包含到 mesh 中的概率是多少?否则客户端只能通过 gossip 收到消息(大约 500 毫秒的额外延迟)
  • 在节点跨分片轮换中增加交错(在提出 Attnet Revamp 时已经讨论过)
  • 在跨分片轮换中增加随机性,使得只能预测接下来 M 个 epoch 的分片分配。这将有助于缓解对单个分片的女巫攻击(保证在发现中存活超过 M 个 epoch 的节点不是专门为女巫攻击而设计的)(在提出 Attnet Revamp 时已经讨论过)
  • 分片数量:
    • 较少数量分片(每个分片更多节点)的缺点
    • 每个节点更高的吞吐量和 CPU 负载
    • 每个节点更大的保管存储
    • 较多数量分片(每个分片更少节点)的缺点
    • 可靠性较低
    • 更容易受到攻击(女巫/日蚀)
    • 需要连接到所有分片(例如,用于完整采样)的客户端节点需要更多的对等连接
  • 原文链接: ethresear.ch/t/network-s...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
以太坊中文
以太坊中文
以太坊中文, 用中文传播以太坊的最新进展