嗨 @arajasek,很高兴看到你加入这里的讨论!
我们将我们的库与Shadow集成,并运行了与 @ppopth 在“Doubling the blob count”实验中相同的 Ethereum 主网类实验(感谢您在那里的出色工作,非常容易构建)。
请注意,Shadow 不考虑 CPU 时间。根据您集成代码的方式,与在试验台上运行相比,这可能会有很大的差异。我们正在研究如何解决这个问题(它在一定程度上是 Shadow 的一部分,但为了提高可重复性而被删除)。
与此处的方法不同,我们修改了 Gossipsub 协议本身以使用 chunks。我认为这很重要,因为这样您可以完全控制 chunks 的传播方式。我不确定此线程中的方法是如何工作的……
已经有各种关于通过 GossipSub 进行大型消息传播和分块的研究。在FullDAS work中(其中模拟部分也使用 nim-libp2p + Shadow),我在实现中使用了朴素的方法,只是简单地使用小消息并在堆栈中更高级别处理与大型消息上下文相关的任何事情。但是,链接的帖子还包含有关结构化消息 ID、基于位图的 IHAVE/IWANT 等的提案。
看看你在你的版本中做了哪些修改,真的会很有趣。