基于自組織的P2P技術
目前,P2P已經作為一種流行的網絡技術被越來越多地應用于互聯網的文件共享、分布式計算、資源搜索等領域。P2P技術將各個用戶節點互相結合成一個網絡,共享其中的帶寬,共同處理其中的信息。P2P網絡是去中心,自組織和從單純意義上來說的動態的(網絡),并且為傳統的服務器-客戶端計算模型提供另外一種選擇,體現了自組織的組網思想。目前,在學術界、工業界對于P2P沒有一個統一的定義,都分別從不同的應用角度描述出P2P的應用特點。P2P的共同點就是它打破了傳統的Client/Server(C/S)模式,在網絡中的每個結點的地位都是對等的。每個結點既充當服務器,為其他結點提供服務,同時也享用其他結點提供的服務。
本文引用地址:http://www.j9360.com/article/156190.htmP2P網絡工作的三個基本步驟包括:找到網絡人口,進人網絡;找到需要進行交互的對等端,與對等端進行交互。其基本原理與P2P網絡拓撲結構有著密切的關系。
P2P組網機制與移動自組網有許多相似之處,如全分布的體系結構、自組織及動態變化的拓撲結構等。
1.無結構化P2P網絡
(1)集中式
以Napster為代表,其本質上并非純粹的P2P系統。Napster通過一個中央索引服務器保存用戶所共享的音樂文件索引和存放位置的信息。當用戶需要某個音樂文件時,首先與中央索引服務器建立連接并進行相關檢索,得到服務器返回的文件所有者信息后,與所有者建立連接進行文件傳輸。集中式的P2P網絡維護簡單、檢索效率高。但由于整個系統依賴于中心索引服務器,存在單點失效問題。同時,該類系統的可擴展性較差,無法動態適應網絡規模的變化,隨著網絡規模的擴大,對中央索引服務器進行維護和更新的成本也將急劇增加,因而集中式拓撲結構不適合于大型網絡應用。
(2)全分布式
以其典型代表Gnutella來說明其原理,Gnutella是一個無中心的純P2P網,每個結點都隨機維護自己本地局部的拓撲連接關系,采用了基于完全隨機圖的“泛洪”發現和隨機轉發機制。當需要進行信息查找時,Gnutella系統將發送一個廣播消息給周邊的結點,詢問是否有相關的內容。如果周邊結點存在相關的內容,則向查詢結點發回查找結果。盡管Gnutella系統的這種基于“洪泛”的查詢技術支持語義查詢,能有效定位復制率很高的內容,能夠適應動態變化的P2P網絡環境,但這種查詢機制無法定位網絡中稀缺的內容,隨著查詢數目和網絡規模的增加,每個節點的負荷也快速增加,使得網絡不具有可擴展性。
評論