新聞中心

EEPW首頁 > 模擬技術(shù) > 設(shè)計應(yīng)用 > P2P對等網(wǎng)絡(luò)路由模型及關(guān)鍵技術(shù)分析

P2P對等網(wǎng)絡(luò)路由模型及關(guān)鍵技術(shù)分析

作者: 時間:2009-07-29 來源:網(wǎng)絡(luò) 收藏
1 引言
是近年來互聯(lián)網(wǎng)最熱門的技術(shù),在VOIP、下載、流媒體、協(xié)調(diào)計算等領(lǐng)域得到飛速發(fā)展。是Peer to Peer的縮寫,即為對等計算或,可以簡單的定義成通過直接交換,共享計算機(jī)資源和服務(wù)。架構(gòu)是一種資源分布利用和共享的體系架構(gòu),與網(wǎng)絡(luò)中占據(jù)主導(dǎo)地位的客戶端/服務(wù)器(C/S)體系架構(gòu)相對應(yīng)。在P2P網(wǎng)絡(luò)模式中,每個節(jié)點(diǎn)的地位都是對等的,整個網(wǎng)絡(luò)一般不依賴于專用集中的服務(wù)器。每個節(jié)點(diǎn)同時承擔(dān)服務(wù)器和客戶端兩個角色,既提供資源和服務(wù),也享用其他節(jié)點(diǎn)的資源和服務(wù)。通常這些資源和服務(wù)包括:信息的共享與交換、存儲資源、磁盤空間和計算資源等的共享使用。

2 主流P2P網(wǎng)絡(luò)模型分析
2.1 集中目錄式P2P模型
集中目錄式P2P結(jié)構(gòu)是最早的P2P應(yīng)用模式,因其仍具有中心化的特點(diǎn)也被稱為非純粹的P2P結(jié)構(gòu),Napster是這種模型的典型代表,如圖l所示。集中目錄式模型,是由一個中心服務(wù)器來負(fù)責(zé)記錄共享信息以及反饋對這些信息的查詢,每一個對等實體要對它所需共享的信息以及進(jìn)行的通信負(fù)責(zé)。當(dāng)某節(jié)點(diǎn)希望搜索一個不知道位置的資源時,該節(jié)點(diǎn)向目錄服務(wù)器發(fā)送請求,目錄服務(wù)器在數(shù)據(jù)庫中查詢到匹配的資源后將其定位信息返回該節(jié)點(diǎn),然后在兩個節(jié)點(diǎn)之間執(zhí)行交互。
與傳統(tǒng)的客戶朋艮務(wù)器模式不同,這種模式中客戶所需要的資料并非存儲在服務(wù)器上,而是存貯在P2P網(wǎng)絡(luò)內(nèi)的各個節(jié)點(diǎn)中,當(dāng)查詢節(jié)點(diǎn)收到節(jié)點(diǎn)地址信息列表后,會根據(jù)網(wǎng)絡(luò)流量和延遲等信息選擇合適的節(jié)點(diǎn)建立直接連接,其文件傳遞并不經(jīng)過中央目錄服務(wù)器,而是直接在節(jié)點(diǎn)之間通過TCP協(xié)議進(jìn)行。此外服務(wù)器與對等實體以及對等實體之間都互有交互能力。

本文引用地址:http://butianyuan.cn/article/188793.htm

集中目錄式P2P首先實現(xiàn)了文件查詢與文件傳輸?shù)姆蛛x,有效地節(jié)約了中央服務(wù)器的帶寬消耗,減少了系統(tǒng)的文件傳輸延時。但中央目錄服務(wù)器卻成為脆弱的瓶頸,如果該服務(wù)器失效,整個系統(tǒng)都會癱瘓。而且,不同等級的用戶連接速度也會使系統(tǒng)性能大大降低。在Napster之后的P2P系統(tǒng),都在這一點(diǎn)上進(jìn)行重點(diǎn)改進(jìn),系統(tǒng)基本上都采用無中心結(jié)構(gòu),準(zhǔn)確性和可擴(kuò)展性都得到極大提高。
2.2 分布式P2P模型
分布式P2P網(wǎng)絡(luò)采用隨機(jī)圖的組織方式,利用TTL(Time-to-Live),洪泛(Flooding),隨機(jī)漫步或有選擇轉(zhuǎn)發(fā)等方式搜索網(wǎng)絡(luò)資源。當(dāng)節(jié)點(diǎn)度數(shù)服從冪率(power―law)規(guī)律時,該方式能夠較快發(fā)現(xiàn)目標(biāo)結(jié)點(diǎn),而且面對網(wǎng)絡(luò)的動態(tài)變化體現(xiàn)了較好的容錯能力。代表性網(wǎng)絡(luò)是Gnutella,如圖2所示。

在分布式P2P模式下,所有節(jié)點(diǎn)都參與服務(wù),控制流和數(shù)據(jù)流都在對等節(jié)點(diǎn)之間交互,解決了中心化的問題,避免服務(wù)器瓶頸,部分節(jié)點(diǎn)出問題也不會影響整個網(wǎng)絡(luò)的運(yùn)行,搜索結(jié)果更新比較及時,時效性高;但是,采用flooding方式傳播搜索請求,造成網(wǎng)絡(luò)額外開銷比較大,隨著P2P網(wǎng)絡(luò)規(guī)模的逐漸擴(kuò)大,網(wǎng)絡(luò)開銷成指數(shù)級上升。因此準(zhǔn)確性和可擴(kuò)展性是非結(jié)構(gòu)化網(wǎng)絡(luò)面臨的兩個重要問題。
2.3 結(jié)構(gòu)化P2P模型
結(jié)構(gòu)化P2P模式是一種采用純分布式的消息傳遞機(jī)制和根據(jù)關(guān)鍵字(KEY)的定位服務(wù),從根本上改變了P2P網(wǎng)絡(luò)無結(jié)構(gòu)的狀態(tài)。其中主流的方法就是采用分布式哈希表(Distributed Hash Table,DHT)技術(shù),是目前擴(kuò)展性最好的P2P方式之一。DHT首先為網(wǎng)絡(luò)中的每一個節(jié)點(diǎn)分配虛擬地址(VID),同時用一個關(guān)鍵字(KEY)表示其可提供的共享內(nèi)容。通過一個特定的哈希函數(shù)(一般使用的是安全哈希函數(shù),如SHA一1等)將文件名(KEY)與節(jié)點(diǎn)信息(VID)運(yùn)算為一個哈希值H(KEY,VID),當(dāng)網(wǎng)絡(luò)上其它節(jié)點(diǎn)進(jìn)行資源定位的時候,可以容易地根據(jù)H(Key)值獲得文檔的精確存儲位置。由于DHT各節(jié)點(diǎn)并不需要維護(hù)整個網(wǎng)絡(luò)的信息,只在節(jié)點(diǎn)中存儲其臨近的后繼節(jié)點(diǎn)信息,因此較少的信息可有效地實現(xiàn)到目標(biāo)節(jié)點(diǎn),同時又取消了洪泛算法,該模型有效地減少了節(jié)點(diǎn)信息的發(fā)送數(shù)量,增強(qiáng)了P2P網(wǎng)絡(luò)的擴(kuò)展性。同時,出于冗余度及延時的考慮,大部分DHT總是在節(jié)點(diǎn)的虛擬標(biāo)識與關(guān)鍵字最接近的K個節(jié)點(diǎn)上備份冗余信息,避免了單一節(jié)點(diǎn)失效的問題。
基于DHT的方式是P2P系統(tǒng)研究的主流之一。所涉及的系統(tǒng)一般都假定節(jié)點(diǎn)的能力相當(dāng),這對于較小規(guī)模的系統(tǒng)非常有效,但這種假設(shè)并不適合大規(guī)模的Intemet部署。目前,成功應(yīng)用也比較少見。
2.4 混合式P2P模型
混合式P2P網(wǎng)絡(luò)結(jié)合了集中式結(jié)構(gòu)和分布式拓?fù)涞膬?yōu)點(diǎn),網(wǎng)絡(luò)中存在著中間服務(wù)器,文件目錄是分布的。在分布式模式的基礎(chǔ)上引入了超級節(jié)點(diǎn)(Super Node)概念,將用戶節(jié)點(diǎn)按能力(處理、存儲、帶寬等方面性能)分為搜索節(jié)點(diǎn)和普通節(jié)點(diǎn)兩類.搜索節(jié)點(diǎn)與其臨近的若干普通節(jié)點(diǎn)之間構(gòu)成一個自治的簇(Cluster),簇內(nèi)采用基于集中目錄式的P2P模式,而整個P2P網(wǎng)絡(luò)中存在著眾多這樣的簇,各個不同的簇之間再通過分布式P2P模式將搜索節(jié)點(diǎn)相連起來,甚至可在各個搜索節(jié)點(diǎn)之間,再次選取性能最優(yōu)的節(jié)點(diǎn)或者另外引入一新的性能最優(yōu)的節(jié)點(diǎn)作為索引節(jié)點(diǎn),來保存整個網(wǎng)絡(luò)中可以利用的搜索節(jié)點(diǎn)信息,并且負(fù)責(zé)維護(hù)整個網(wǎng)絡(luò)的結(jié)構(gòu)。混合式P2P模型消除了分布式P2P結(jié)構(gòu)中使用Flooding算法帶來的網(wǎng)絡(luò)擁塞、搜索遲緩等不利影響,吸收了集中式拓?fù)涞囊坠芾硇耘c分布式拓?fù)涞目蓴U(kuò)展性,在異構(gòu)的P2P網(wǎng)絡(luò)環(huán)境下是一種較好的模式選擇。其中最典型的案例就是Fastrack,如圖3所示。

p2p機(jī)相關(guān)文章:p2p原理



上一頁 1 2 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉