2011-09-20 16 views
0

我試圖連接到P2P網絡中給定數量的對等方,我希望讓它們儘可能地跨越全球(讓它們儘可能遠離彼此儘可能)。由於我逐漸與他們聯繫,我會逐個發現更好的同伴,並放棄(或斷開)脫離我的最佳列表的同伴。問題是我堅持定義一個度量標準來告訴我一個對等體是多麼「好」。我將使用geo ip數據庫將ips映射到地理座標,但我無法找到適用的好度量標準。定位網絡探針以跨越全球

回答

0

在我看來,你不應該想到地理,但在網絡拓撲。對於每個新的同伴,你應該做tracerouteping,這樣你就知道連接的好處了。存儲這個並做成本計算。最簡單的就是加入延遲。帶寬和延遲更重要。如果您關注特定同伴所在地的當地法律,您可以開始考慮地理位置。

+0

圖形數據庫是非常合適的,例如找到最邊緣的節點。 – Gustav

+0

問題是網絡運行一個客戶端,因此具有固定的程度(連接數量)。 Traceroute和ping並不是很好,因爲它們會導致額外的流量,並且只會告訴我從我的路由到節點的任何事情,但沒有任何關於節點彼此連接的情況。我知道我的全球分佈是基於這樣的假設,即延遲和丟失主要是由於節點之間的絕對距離,但這是我現在的最佳選擇。 – cdecker

0

我想知道,您是否可以讓用戶在其用戶界面中設置位置?這可能是比平時更好的地理分佈度量。也就是說,出於各種複雜的原因 - 我相信你知道 - 相距500英里的兩個節點可能比距離250英里的兩個節點有更好的速度和延遲測量。所以這取決於你是否關心位置或性能:)