P2P普及系列之七:DHT算法的研究

   現有DHT算法由於採用分佈式散列函數,所以只適合於準確的查找,如果要支持目前Web上搜索引擎具有的多關鍵字查找的功能,還要引入新的方法。主要的原因在於DHT的工作方式。

    基於DHT的P2P系統採用相容散列函數根據精確關鍵詞進行對象的定位與發現。散列函數總是試圖保證生成的散列值均勻隨機分佈,結果兩個內容相似度很高但不完全相同的對象被生成了完全不同的散列值,存放到了完全隨機的兩個結點上。因此,DHT可以提供精確匹配查詢,但是支持語義是非常困難的。

    目前在DHT基礎上開展帶有語義的資源管理技術的研究還非常少。由於DHT的精確關鍵詞映射的特性決定了無法和信息檢索等領域的研究成果結合,阻礙了基於DHT的P2P系統的大規模應用。

    P2P發現技術中最重要的研究成果應該是基於small world理論的非結構化發現算法和基於DHT的結構化發現算法。尤其是DHT及其發現技術爲資源的組織與查找提供了一種新的方法。

    隨着P2P系統實際應用的發展,物理網絡中影響路由的一些因素開始影響P2P發現算法的 效率。一方面,實際網絡中結點之間體現出較大的差異,即異質性。由於客戶機/服務器模式在Internet和分佈式領域十幾年的應用和大量種類的電子設備 的普及,如手提電腦、移動電話或PDA。這些設備在計算能力、存儲空間和電池容量上差別很大。另外,實際網絡被路由器和交換機分割成不同的自治區域,體現 出嚴密的層次性。

    另一方面,網絡波動的程度嚴重影響發現算法的效率。網絡波動(Churn、fluctuation of network)包括結點的加入、退出、失敗、遷移、併發加入過程、網絡分割等。DHT的發現算法如Chord、CAN、Koorde等都是考慮網絡波動的最差情況下的設計與實現。由於每個結點的度數儘量保持最小,這樣需要響應的成員關係變化的維護可以比較小,從而可以快速恢復網絡波動造成的影響。但是每個結點僅有少量路由狀態的代價是發現算法的高延時,因爲每一次查找需要聯繫多個結點,在穩定的網絡中這種思路是不必要的。

    同時,作爲一種資源組織與發現技術必然要支持複雜的查詢,如關鍵詞、內容查詢等。儘管信息檢索和數據挖掘領域提供了大量成熟的語義查詢技術,由於DHT精確關鍵詞映射的特性阻礙了DHT在複雜查詢方面的應用。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章