-
KAD網絡
鎖定
KAD網絡簡介
Kademlia 節點間使用傳輸通訊協議 UDP 溝通。Kademlia 節點利用分佈式散列表 (DHT) 儲存資料索引。透過現有的局域網/廣域網( LAN/WAN),建立起一個新的虛擬網絡或重疊網絡。
KAD網絡工作原理
Kad 網絡利用UDP,包括了以下五點
1、查找ed2k散列來源
3、查找文件的註解與評分。
4、 為防火牆內的節點(低ID)提供夥伴服務(buddy service)
5、 貯存位置、註解與(來自關鍵字的)文件名
在Kad網絡中,每個節點只負責處理一小部分搜索和查找源的工作。分配這些工作的時候,通過我們每個用户端的唯一的ID和搜索文件的Hash值之間的匹配來決定。
用户可以進行簡單的理解:在Kad網絡的世界裏,用户可以直接問其他用户“你有沒有我要的文件”,如果有,就會進行文件傳輸,如果沒有,就會告之哪個用户有或者可能有,直到文件傳輸完畢。
與ED2K網絡的不同在於,KAD網絡讓用户省去了從服務器尋找用户源的步驟,可以直接找尋到合適的用户源,進行文件傳輸。
KAD端口則是用來進行KAD節點間溝通的端口。
KAD網絡其他説明
kad 網絡是一種根本不需要服務器的架構,每個emule客户端負責處理一小部分search和source finding的工作。分配工作的原理是基於客户端的唯一id和search或者source的hash之間的匹配來決定。比如説XXX.avi這個文件 由用户a來負責,則任何用户共享這個文件的時候都會告訴用户a我有這個文件,其他用户去下載這個文件的時候也會詢問a,a告訴他們誰有這個文件, source finding就完成了。至於如何找到用户a則是通過一種將用户id異或的方式,兩個id的二進制異或值決定他們之間的邏輯距離,比如1100距離 1101要比距離1001近。當一個用户加入kad網絡後,首先通過一個已知的用户找到一批用户的id和port。當此用户a要尋找某特定用户x時,a先詢問幾個已知的邏輯距離x較近的用户,如x1,x2,x3會告訴a他們知道的更加近的用户的id和port,依次類推,a最終就能找到x。