虽说find_node, get_peers在通信层上是递归操作, 但是这点对逻辑处理上应该是透明的, 也就find_node操作应该执行到发现最近的节点为止, 而不应该中途中断(虽然说可以节省本分带宽)。或者编写接口的时候就不应该导出这些控制方法。
2. 结果的截断。
find_node以及get_peers只关心最终的K(K=8)个节点。所以每次只需要保留响应结果的最近的K个节点。至于那些K节点之外应该裁掉, 即不用向他们发送请求, 甚至返回的结果也不用处理。并且结果是允许模糊的。
3. ping的时机。
至于执行ping时机, 路由表桶已经满并且需要加入新的节点, 并且节点存在。
4. 路由表的更新。
一个相同的ID的
参见原先协议
5. 由find_nodes以及get_peers返回的节点被当成是1970.00.00.00.00时最后一次看见的节点, 所以该节点根据LRU算法当有新的节点被加入并且需要ping时将优先被ping。