p2p服务器怎么判断离请求者节点最近的其他节点

p2p服务器如何判断离请求者节点最近的其他节点?
  rt.小弟最近在做一个p2p服务器,采用集中式p2p模式,即所有节点连接到服务器查询资源索引。遇到的问题是如何判断离查询节点最近的其他节点呢?通过ip地址吗?网络提供商分配的ip地址是随机分配呢,还是有规律的,比如同一个小区,都分配到同一个网络?
------解决思路----------------------
你这么着判断我估计是南辕北辙了。

这个世界上,最长的距离的两个节点,不是南极和北极,而是你在电信,而我用的是联通。
------解决思路----------------------
比如你分100个块,自己开5个进程,分别去不同的可用点下载.(你池里还有95块).

先下载完的进程(表明它快),就去池里再拿一个块来下载。

最后池里没有了,那就看哪个还没下载完,快的点也一起下载。

这样资源浪费不大(最后的一两块,可能在不同点重复下载了),速度也快。
------解决思路----------------------
实际上你追求的是 下载最快的, 而不是最近的, 哪个先下载完 再去他那里下载 。