論P(yáng)2P網(wǎng)絡(luò)模型分析與探討

時間:2022-03-18 03:30:00

導(dǎo)語:論P(yáng)2P網(wǎng)絡(luò)模型分析與探討一文來源于網(wǎng)友上傳,不代表本站觀點,若需要原創(chuàng)文章可咨詢客服老師,歡迎參考。

論P(yáng)2P網(wǎng)絡(luò)模型分析與探討

摘要p2p模型是一種基于互聯(lián)網(wǎng)環(huán)境的新的應(yīng)用型技術(shù),可以充分利用大量自治的參與者的資源,主要為軟件技術(shù)。該文首先對比了傳統(tǒng)的客戶/服務(wù)器模型與P2P網(wǎng)絡(luò)模型的基本特性,然后闡述了典型的四種P2P模型的技術(shù)特點,接著探討了P2P模型的關(guān)鍵技術(shù),最后分析了P2P模型存在的問題,展望了P2P的應(yīng)用前景。關(guān)鍵詞P2P;客戶/服務(wù)器;網(wǎng)絡(luò)模型1引言今日的Internet正面臨著一場革命。這場革命試圖改變當(dāng)前以客戶/服務(wù)器為基本特性之一的互聯(lián)網(wǎng)架構(gòu),結(jié)束以服務(wù)器為主導(dǎo)的Internet,這就是P2P。P2P,即PeertoPeer,稱為對等連接或?qū)Φ染W(wǎng)絡(luò),主要指由硬件形成連接后的信息控制技術(shù)。P2P讓人們通過互聯(lián)網(wǎng)直接交互,使得網(wǎng)絡(luò)上的溝通變得容易、更直接共享和交互,真正地消除中間商。2從客戶/服務(wù)器模型到P2PP2P是一個網(wǎng)絡(luò)的模型,它的基本概念就是任何的節(jié)點都可以作為服務(wù)器或者客戶端。傳統(tǒng)的客戶/服務(wù)器網(wǎng)絡(luò),都有預(yù)定義的客戶和服務(wù)器節(jié)點,而P2P則不同,P2P可提供一些額外的特性,而這些特性使用傳統(tǒng)的客戶/服務(wù)器模型是無法實現(xiàn)的。基于P2P的模型與客戶/服務(wù)器(C/S)模型相比,其優(yōu)勢在于降低了對服務(wù)器的依賴和它的分散控制能力(相對于服務(wù)器的集中控制)。一些P2P模型甚至不需要服務(wù)器,用戶可以不經(jīng)過服務(wù)器和其他用戶進(jìn)行連接。在傳統(tǒng)的結(jié)構(gòu)下必須使用傳統(tǒng)的規(guī)則,用戶在P2P模型下比傳統(tǒng)的客戶/服務(wù)器結(jié)構(gòu)有更多的命令。P2P系統(tǒng)和C/S系統(tǒng)不同,它沒有單一的失敗點。在一些模型中,P2P把服務(wù)器放到合適的位置,服務(wù)器的作用被限制到最小。為了共享文件,用戶不需要服務(wù)器的幫助,他們之間可以直接進(jìn)行。P2P的另一個重要特點是改變互聯(lián)網(wǎng)現(xiàn)在的以大網(wǎng)站為中心的狀態(tài)、重返“非中心化”,并把權(quán)力交還給用戶。從網(wǎng)絡(luò)看,P2P并不是新概念,P2P是互聯(lián)網(wǎng)整體架構(gòu)的基礎(chǔ)。互聯(lián)網(wǎng)最基本的協(xié)議TCP/IP并沒有客戶機(jī)和服務(wù)器的概念,所有的設(shè)備都是通訊的平等的一端。在十年之前,所有的互聯(lián)網(wǎng)上的系統(tǒng)都同時具有服務(wù)器和客戶機(jī)的功能。當(dāng)然,后來發(fā)展的那些架構(gòu)在TCP/IP之上的軟件的確采用了客戶機(jī)/服務(wù)器的結(jié)構(gòu)。在20世紀(jì)90年代,客戶/服務(wù)器計算體系極為流行,它之所以流行時因為它打破了世界上一些數(shù)據(jù)提供者的壟斷。同時,它也鼓勵資源共享并為它的用戶提供不同的防火墻。但是1999年Napster對C/S體系提出了挑戰(zhàn),它是基于P2P的應(yīng)用,延伸了共享的意義,超出了C/S創(chuàng)建者的想象。通過MP3文件的共享系統(tǒng),Napster使得網(wǎng)絡(luò)在深度和廣度上又向前邁進(jìn)了一步,并獲得更大的可伸縮性而進(jìn)行優(yōu)化。P2P和C/S模型各有千秋。例如,在C/S模型中,當(dāng)許多的用戶登陸來下載信息時,服務(wù)器就成了瓶頸;P2P模型與之相反,在網(wǎng)絡(luò)用戶之間傳送太多的請求會使網(wǎng)絡(luò)管理員繁忙,并使網(wǎng)絡(luò)本身的負(fù)載增加。除此之外,在商業(yè)的管理和控制方面,P2P模型明顯優(yōu)于C/S模型。關(guān)于P2P的流行和使用,許多商業(yè)機(jī)構(gòu)正在各自的領(lǐng)域內(nèi)尋求合作。P2P的另一個優(yōu)點就是公司可以建立集體的計算能力,因此不必考慮服務(wù)器和昂貴的存儲設(shè)備。P2P已經(jīng)在共享資源和服務(wù)器的開銷方面對網(wǎng)絡(luò)界產(chǎn)生了巨大反響。與C/S模型相比,P2P是更好的選擇,它正在變得更靈活,更通用。3P2P網(wǎng)絡(luò)模型分析P2P網(wǎng)絡(luò)模型可以分為以下幾種類型:(1)純P2P模型;(2)帶有簡單的發(fā)現(xiàn)服務(wù)器的P2P模型;(3)帶有發(fā)現(xiàn)和查找服務(wù)器的P2P模型;(4)帶有發(fā)現(xiàn),查找和內(nèi)容服務(wù)器的P2P模型。3.1純P2P模型

純P2P模型完全依賴于計算機(jī)(C/S模型中的客戶)。這似乎是矛盾的,因為每個網(wǎng)絡(luò)模型都像傳統(tǒng)的C/S模型一樣涉及到客戶和服務(wù)器。但是純的P2P模型不依賴任何中心服務(wù)器而工作。一旦P2P應(yīng)用程序下載到計算機(jī)的內(nèi)存中,網(wǎng)絡(luò)中的端就會動態(tài)地發(fā)現(xiàn)其他連接的端,相連端之間的通信完全不需要來自服務(wù)器的圖1純P2P模型純P2P模型打破了C/S模型傳統(tǒng)的通信方式,在以前的C/S模型下,客戶和服務(wù)器之間的通信是基于服務(wù)器設(shè)定的規(guī)則。純P2P模型允許用戶設(shè)定他們自己的規(guī)則和建立自己的網(wǎng)絡(luò)環(huán)境,這種模型避免了用戶成為利用Internet服務(wù)器或ISP的一部分,完全消除了他們的麻煩。為了與Internet合作,P2P模型提供了近似的即插即用的特性,即你只要連上Internet,就能使用P2P的特性。純P2P模型的另一個優(yōu)點就是它不僅能夠在Internet下有效地工作,而且對于LAN和Intranet也非常有用。純P2P模型存在的唯一問題就是網(wǎng)絡(luò)上的端發(fā)現(xiàn)問題,因為沒有一個中心管理者注冊登陸到網(wǎng)絡(luò)上的端,所以用戶自己必須定位其他的端。3.2帶有一個簡單的發(fā)現(xiàn)服務(wù)器的P2P模型這樣的P2P模型實際上不包括一個服務(wù)器。因為這種模型中的服務(wù)器的作用已經(jīng)下降,只是為了實現(xiàn)一些管理。正在加入的端通知服務(wù)器它已經(jīng)登陸了,服務(wù)器的作用只限于為正在加入的端提供連接的另一個端的名字。一定要注意服務(wù)器僅僅是提供相連端的清單來輔助端,建立連接和通信仍然是端之間的事情(見圖2)。這樣的P2P模型通過提供給端一系列已經(jīng)相連端的清單而超出純P2P模型,這樣增加了發(fā)現(xiàn)網(wǎng)絡(luò)上大量端的機(jī)會。為了下載資源,端必須單獨(dú)與每個相連端接觸并發(fā)出請求,這樣會消耗大量的處理時間。客戶/服務(wù)器的模型與此相反,任何端查找資源不需要圍繞其他相連的端,因為服務(wù)器本身維護(hù)了所有必須的內(nèi)容。3.3帶有發(fā)現(xiàn)和查找服務(wù)器的P2P模型這種模型中,服務(wù)器提供相連端的清單和它們的可用資源(見圖2)。因此,這種模型為增強(qiáng)服務(wù)器的功能而繼承了純P2P和帶有簡單發(fā)現(xiàn)服務(wù)器的P2P兩者的特性。這種模型減輕了端的負(fù)擔(dān),因為不再需要通過訪問每個端來查找必要的信息。這種模型中的服務(wù)器初始化兩個端的通信,然后,這兩個相連的端建立通信,保持連接并執(zhí)行各種活動,例如登陸進(jìn)入相連的信息數(shù)據(jù)庫,進(jìn)入它們共享的資源目錄等等。圖2帶有一個簡單的發(fā)現(xiàn)服務(wù)器的P2P3.4帶有發(fā)現(xiàn),查找和內(nèi)容服務(wù)器的P2P模型這種模型中,服務(wù)器占有支配地位,正如在傳統(tǒng)的客戶/服務(wù)器體系中一樣。所有滿足端請求的部分都從端的范圍內(nèi)移出而進(jìn)入服務(wù)器的范圍(見圖3)。同樣,端之間不允許直接互相連接,因為所有的資源都存儲在中心服務(wù)器的數(shù)據(jù)庫中。如果一個端需要信息,它直接訪問服務(wù)器而不是和另外的端通信,服務(wù)器處理這些請求并顯示信息來源。這種模型主要的缺點在于如果同時有太多的請求,服務(wù)器的速度會減慢;這種模型的另一個缺點就是成本很高,因為服務(wù)器必須自己管理、存儲數(shù)據(jù)并處理所有的請求。

因為這樣的模型完全依賴于中心服務(wù)器,所以單點失敗影響整個系統(tǒng)的機(jī)會就增加了。這和前面幾個P2P圖3帶有發(fā)現(xiàn)、查找和內(nèi)容服務(wù)器的P2P4P2P網(wǎng)絡(luò)模型的關(guān)鍵技術(shù)4.1P2P網(wǎng)絡(luò)模型的運(yùn)行特性P2P是一種基于互聯(lián)網(wǎng)環(huán)境的新的應(yīng)用型技術(shù),主要為軟件技術(shù)。(1)對于互聯(lián)網(wǎng)上眾多計算機(jī),P2P應(yīng)用比其他應(yīng)用要更多考慮那些低端PC的互聯(lián),它們不具備服務(wù)器那樣強(qiáng)的聯(lián)網(wǎng)能力,同時對于以往的P2P應(yīng)用技術(shù),現(xiàn)在的硬件環(huán)境已經(jīng)更為復(fù)雜,這樣在通信基礎(chǔ)方面,P2P必須提供在現(xiàn)有硬件邏輯和底層通信協(xié)議上的端到端定位(尋址)和握手技術(shù),建立穩(wěn)定的連接。涉及的技術(shù)有IP地址解析、NAT路由及防火墻。(2)在應(yīng)用層面上,如果兩個Peer分別代表兩家不同的公司,而且它們已經(jīng)通過互聯(lián)網(wǎng)建立連接,那么一方的信息就必須為另一方所識別,所以當(dāng)前互聯(lián)網(wǎng)上關(guān)于數(shù)據(jù)描述和交換的協(xié)議,如XML、SOAP、UDDI等都是一個完善的P2P軟件所要考慮的。(3)有通信就要有安全保障,加密技術(shù)是必須要考慮的。(4)其他需考慮的有如何設(shè)置中心服務(wù)器,如何控制網(wǎng)絡(luò)規(guī)模等。傳統(tǒng)客戶/服務(wù)器的應(yīng)用程序能夠以前面所講過的任何模型為基礎(chǔ),但是一個應(yīng)用程序要成為理想的P2P應(yīng)用程序必須具有一些條件。每種P2P模型的應(yīng)用程序都有一些關(guān)鍵特性:(1)發(fā)現(xiàn)其他端:發(fā)現(xiàn)與服務(wù)器相連的其他端;(2)為所需內(nèi)容查詢端:從其他端得到共享資源的清單;(3)和其他端共享內(nèi)容/資源:能明白內(nèi)容是怎樣在對等網(wǎng)絡(luò)之間共享的。4.2P2P網(wǎng)絡(luò)模型中的端發(fā)現(xiàn)技術(shù)發(fā)現(xiàn)其他端是P2P應(yīng)用的一個基本特征,這個特征根據(jù)P2P模型的不同而不同。(1)在純P2P模型中發(fā)現(xiàn)其他端因為這個模型沒有服務(wù)器,端動態(tài)發(fā)現(xiàn)其他端并在它們之間直接通信。因此,這種通信不受傳統(tǒng)模型中的條款和規(guī)則限制。雖然本地配置方案和網(wǎng)絡(luò)信息服務(wù)是可用的。但是登陸到模型上的用戶不可能一直擁有可以發(fā)送請求的真實端數(shù)目;另外,端之間的直接通信會影響系統(tǒng)的安全性。(2)在帶有一個簡單發(fā)現(xiàn)服務(wù)器的P2P模型中發(fā)現(xiàn)端這種模型帶有一個中心服務(wù)器,這個服務(wù)器在數(shù)據(jù)庫中存儲了所有注冊用戶的位置。任何搜索一個端的請求都由服務(wù)器來處理,它會返回一個數(shù)據(jù)庫中端的清單。這種模型的主要好處是增強(qiáng)了安全性并對于請求端來說由大量的端可以用,但是如果服務(wù)器速度減慢或者崩潰,定位端就會很困難,其他的端也會受到影響。(3)在帶有發(fā)現(xiàn)和查找服務(wù)器的P2P模型中發(fā)現(xiàn)端在這種模型中,服務(wù)器提供了服務(wù)的清單和端的清單,所有的用戶在登陸時都要通知服務(wù)器。這種服務(wù)器不僅發(fā)現(xiàn)其他端而且返回所有登陸的重要信息。以此,這種模型相比其他的模型減少了時間耗費(fèi)。(4)在帶有發(fā)現(xiàn),查找和內(nèi)容服務(wù)器的P2P模型中發(fā)現(xiàn)端這種模型為響應(yīng)請求而發(fā)現(xiàn)端,在這種情況下中心服務(wù)器保留所有重要信息和請求端具有的內(nèi)容。每個端都在服務(wù)器時注冊,服務(wù)器通過它自己和服務(wù)器響應(yīng)來處理所有請求,因此這種模型對服務(wù)器的要求比較高。4.3P2P網(wǎng)絡(luò)模型中的搜索技術(shù)在P2P模型中,內(nèi)容搜索根據(jù)模型的應(yīng)用保持變化。一些P2P結(jié)構(gòu)的模型遵循客戶端的搜索,有些遵循服務(wù)器端的搜索,有些遵循以上兩種情況。搜索工具一直在速度快與可靠性的優(yōu)點和不相關(guān)與不可靠信息的缺點之間尋求平衡。有利的條件是速度、直接通信和可靠性,不利的條件是不可靠和費(fèi)應(yīng)用信息。下面是不同P2P模型中的搜索技術(shù):(1)在純P2P模型中搜索內(nèi)容因為這種模型沒有服務(wù)器協(xié)助通訊,它使用客戶端的搜索模型。如果請求端有關(guān)于另外端定位的信息,處理會非常的快速。但是由于沒有服務(wù)器可能會導(dǎo)致缺少可以連接的端,導(dǎo)致搜索的端的范圍較小。(2)在帶有一個簡單發(fā)現(xiàn)服務(wù)器的P2P模型中搜索內(nèi)容這種模型有一個服務(wù)器,但是它同樣使用客戶端的搜索技術(shù)。服務(wù)器提出請求端連接用戶的一個清單,請求端查找擁有所需內(nèi)容的端,連接它并獲取內(nèi)容。這種模型的好處在于它提供了可以連接獲取所需內(nèi)容的大量端。(3)在帶有發(fā)現(xiàn)服務(wù)器和查找服務(wù)器的P2P模型中搜索內(nèi)容這種模型遵循客戶端的搜索和服務(wù)器端的搜索。在所有的P2P模型中,這種模型是最有效和最靈活的。一個端無論何時要搜索一些特殊的內(nèi)容,它都可以直接在服務(wù)器是對已經(jīng)相連的端進(jìn)行搜索,或者簡單的請求服務(wù)器對所需信息的結(jié)果進(jìn)行回答。這種模型除了網(wǎng)絡(luò)上相連的端外,還有可服務(wù)于請求端,服務(wù)器上搜索工具可用是因為無論何時一個注冊端登陸后,除了驗證外,還將發(fā)送它的名字和共享的資源清單。(4)在帶有發(fā)現(xiàn)、查找和內(nèi)容服務(wù)器的P2P模型中查找內(nèi)容這種模型不能使用客戶端的搜索技術(shù),因為位于中心的服務(wù)器管理整個網(wǎng)絡(luò),服務(wù)器處理所有的操作。這種模型完全基于服務(wù)器的搜索技術(shù),一個端無論何時需要信息,它只需連接服務(wù)器,因為服務(wù)器數(shù)據(jù)庫中有完整的信息:從注冊用戶到所有可能的內(nèi)容。但是如果太多的端訪問服務(wù)器,服務(wù)器的處理速度就會下降,也會影響到其他相關(guān)服務(wù)器。4.4P2P網(wǎng)絡(luò)模型存在的問題P2P最大的優(yōu)點在于能夠提供可靠的信息查詢,但從社會和法律意義來說,絕大多數(shù)的P2P服務(wù)都將不可避免地遇到知識產(chǎn)權(quán)沖突,也可能成為一些非法內(nèi)容傳播的平臺。同時由于缺乏中心監(jiān)管以及自由平等的動態(tài)特性,自組織的P2P網(wǎng)絡(luò)在技術(shù)層面也有許多難以解決的問題。從某種意義上來說,P2P網(wǎng)絡(luò)和人際網(wǎng)絡(luò)具有一定的相似性。一般來說,每個P2P網(wǎng)絡(luò)都是眾多參與者按照共同興趣組建起來的一個虛擬組織,節(jié)點之間存在著一種假定的相互信任關(guān)系,但隨著P2P網(wǎng)絡(luò)規(guī)模的擴(kuò)大,這些P2P節(jié)點本質(zhì)所特有的平等自由的動態(tài)特性往往與網(wǎng)絡(luò)服務(wù)所需要的信任協(xié)作模型之間產(chǎn)生矛盾。激勵作用的缺失使節(jié)點間更多表現(xiàn)出“貪婪”、“抱怨”和“欺詐”的自私行為,因此P2P中預(yù)先假設(shè)的信任機(jī)制實際上非常脆弱,同時這種信任也難以在節(jié)點之間進(jìn)行推理,導(dǎo)致了全局性信任的缺乏,這直接影響了整個網(wǎng)絡(luò)的穩(wěn)定性與可用性。此外,相對于傳統(tǒng)客戶/服務(wù)器模式的服務(wù)器可以做主動和被動的防御,由于P2P節(jié)點安全防護(hù)手段的匱乏以及P2P協(xié)議缺乏必要的認(rèn)證機(jī)制和計算機(jī)操作系統(tǒng)的安全漏洞,安全問題在P2P網(wǎng)絡(luò)中更為嚴(yán)重,這將直接影響P2P的大規(guī)模商用。另外,P2P網(wǎng)絡(luò)中的節(jié)點本身往往是計算能力相差較大的異構(gòu)節(jié)點,每一個節(jié)點都被賦予了相同的職責(zé)而沒有考慮其計算能力和網(wǎng)絡(luò)帶寬,局部性能較差的點將會導(dǎo)致整體網(wǎng)絡(luò)性能的惡化,在這種異構(gòu)節(jié)點的環(huán)境中難以實現(xiàn)優(yōu)化的資源管理和負(fù)載平衡。同時,由于用戶加入離開P2P網(wǎng)絡(luò)的隨意性使得用戶獲得目標(biāo)文件具有不確定性,導(dǎo)致許多并非必要的文件下載,而造成大量帶寬資源的濫用。特別是大多數(shù)P2P用戶更喜歡傳送音頻、視頻這些較大的媒體文件,這將使得帶寬浪費(fèi)問題更為突出,尤其在中國大量的用戶還是撥號用戶,較窄的帶寬也成為P2P應(yīng)用難以逾越的障礙。5結(jié)論與展望P2P技術(shù)在最近幾年獲得了高速的發(fā)展,也出現(xiàn)了較多應(yīng)用,但截至目前,P2P中仍有很多的關(guān)鍵技術(shù)問題并沒有得到解決,其中最典型的就是帶寬吞噬、網(wǎng)絡(luò)可擴(kuò)展性差和路由效率低下等問題。這導(dǎo)致P2P至少在目前的技術(shù)水平而言只能是一種小范圍不可靠的應(yīng)用或是滿足特定任務(wù)需求的專門應(yīng)用。并且,作為一種潛在的商業(yè)應(yīng)用,如何在P2P網(wǎng)絡(luò)中有效地保護(hù)知識產(chǎn)權(quán)以及如何設(shè)計盈利模式將會面臨更為嚴(yán)格的考驗。參考文獻(xiàn):[1](美)IanFoster,CarlKesselman編著.金海,袁平鵬,石柯譯.網(wǎng)格計算(第二版).北京:電子工業(yè)出版社,2004[2](美)Dreamtech軟件研發(fā)組著.吳文輝,陳建榮,肖國尊等譯.對等網(wǎng)絡(luò)編程源代碼解析.北京:電子工業(yè)出版社,2002[3]陳姝,方濱興,周勇林.p2p技術(shù)的研究與應(yīng)用.計算機(jī)工程與應(yīng)用,2002年13期[4]毛薇,姚青,李濤.p2p系統(tǒng)發(fā)現(xiàn)技術(shù)的研究與實現(xiàn).武漢理工大學(xué)學(xué)報(交通科學(xué)與工程版),2002年06期[5]雷葆華,楊明川.p2p技術(shù)的組網(wǎng)模式與業(yè)務(wù)模式探討.電信技術(shù),2004年11期[6]趙恒,陳杰.p2p技術(shù)的應(yīng)用及其研究現(xiàn)狀.電信快報,2004年09期