还有许多其他类似的覆盖结构,它们使用基于内容的路由来查找存储密钥的正确节点。在一个环中定位一个密钥需要每次在环中搜索一个节点(除非您保留一个本地查找表,这在数千个节点的 DHT 中是有问题的) ,这是 O (n)-跳路由。其他结构-包括增强环-保证 O (logn)-跳路由,以及一些声称 O (1)-跳路由的代价更多的维护。
就 DHT 而言,每个节点都有一个唯一的 k 位节点 ID,并且这些节点按照其节点 ID 的递增顺序排列。
假设这些节点以称为标识符环的环形结构排列。对于每个节点,后继节点有顺时针方向的最短距离。对于大多数节点,这是其 ID 最接近但仍大于当前节点的 ID 的节点。
为了找到适合某个特定密钥的节点,首先使用类似 SHA-1的一致哈希技术将密钥 k 和所有节点散列到确切的 k 位。
从环中的任何一点开始,顺时针方向遍历,直到捕获节点 ID 接近键 K 但可以大于 K 的节点。此节点负责该特定密钥的存储和查找。