我一直在为个人项目研究糕点 DHT,我真的很喜欢它,但路由让我感到困惑。
路由是使用前缀路由完成的,并使用叶子集来表示近节点(IE 节点与本地节点具有共同前缀),而路由集则用于更远的节点。
现在我的困惑来自以下几点:DHT 由 5 个节点引导。充当引导程序的服务器将每个加入的节点添加到它的路由集中,并将其提供给之后加入 DHT 的每个节点。
因此,如果前缀 A 加入,引导程序会将其添加到它的路由集中。如果前缀 F 在 A 之后加入,它将从包含 A 的引导程序接收路由集。
如果 A 需要路由到 F 怎么办?它永远不会知道它的存在,因为规范没有指定仅在叶子集节点之间复制路由表。
这是一个小例子,我希望它很清楚。糕点中是否可能存在布线间隙?
亲切的问候