我想在 PeerSim 中使用 Kademlia 协议进行对等网络模拟。Peersim 有一个 kademlia 模块(在 Java 中),这很好,但它跳过了 STORE 过程的实现。我认为从头开始为它编写一个模块是很困难的。所以最好将此功能添加到当前模块中,但我不知道该怎么做。
如果有人告诉我如何将 STORE RPC 添加到 Kademlia,那就太好了。
提前致谢
我想在 PeerSim 中使用 Kademlia 协议进行对等网络模拟。Peersim 有一个 kademlia 模块(在 Java 中),这很好,但它跳过了 STORE 过程的实现。我认为从头开始为它编写一个模块是很困难的。所以最好将此功能添加到当前模块中,但我不知道该怎么做。
如果有人告诉我如何将 STORE RPC 添加到 Kademlia,那就太好了。
提前致谢
我建议先阅读kademlia 论文以了解这些概念。
我假设您已经实现了FIND_NODE
迭代查找。
通过返回存储的数据(如果远程节点有任何数据)来构建FIND_VALUE
查找,FIND_NODE
以获取特定目标键而不是/除了其他节点。
ASTORE
使用最接近目标键的节点集,这些节点在FIND_VALUE
查找期间做出响应,并将数据发送到它们保存在内存中的远程节点,并与存储数据的键相关联。他们将在FIND_VALUE
查询期间返回该数据。
因此,您需要的大部分内容应该已经存在,您只需添加另一个子类或其他任何内容(尚未查看源代码)。