2010-11-07 15 views

回答

1

確保您瞭解「結構化覆蓋」的含義。 結構化p2p網絡實際上是分佈式散列表,可以與KEY/VALUE對(如簡單的散列表)一起工作。

我試圖讓它更簡單,讓我們說你連接到一個P2P網絡,你想下載一首新歌。 首先你必須找到資源,你怎麼做?

在結構化p2p網絡(DHT)中,您必須採用文件名並通過傳遞散列/校驗和函數來創建密鑰 - 現在您獲得密鑰,下一步是找到存儲此密鑰的對等方=>網絡是有組織的,路由過程是基於密鑰的。

你在這裏看到問題了嗎?

這些鍵是唯一的,這意味着您需要EXACT鍵才能到達存儲所需信息的對等體。例如,它使關鍵字搜索操作相當困難。

「New_song.mp3」和「new_song.mp3」將產生完全不同的密鑰。

然後,如果網絡中有人共享文件 - 「New_song.mp3」,則不會通過搜索「new_song.mp3」找到它。

在非結構化對等體中,只需使用搜索查詢來氾濫網絡 - 它不是基於鍵的路由,這使得處理此類搜索查詢變得更加容易。

要解決這個「問題」,我們可以發佈文件名變體的許多鍵。

(小寫,大寫,沒有空格/延伸等)

那Kademlia的網絡如何解決這個問題。