![p2p平臺系統(tǒng)開發(fā)的關鍵技術_第1頁](http://file4.renrendoc.com/view/aa9bbae6fb6a1d38c5ac143be74d61be/aa9bbae6fb6a1d38c5ac143be74d61be1.gif)
![p2p平臺系統(tǒng)開發(fā)的關鍵技術_第2頁](http://file4.renrendoc.com/view/aa9bbae6fb6a1d38c5ac143be74d61be/aa9bbae6fb6a1d38c5ac143be74d61be2.gif)
![p2p平臺系統(tǒng)開發(fā)的關鍵技術_第3頁](http://file4.renrendoc.com/view/aa9bbae6fb6a1d38c5ac143be74d61be/aa9bbae6fb6a1d38c5ac143be74d61be3.gif)
![p2p平臺系統(tǒng)開發(fā)的關鍵技術_第4頁](http://file4.renrendoc.com/view/aa9bbae6fb6a1d38c5ac143be74d61be/aa9bbae6fb6a1d38c5ac143be74d61be4.gif)
![p2p平臺系統(tǒng)開發(fā)的關鍵技術_第5頁](http://file4.renrendoc.com/view/aa9bbae6fb6a1d38c5ac143be74d61be/aa9bbae6fb6a1d38c5ac143be74d61be5.gif)
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
P2P平臺系統(tǒng)開發(fā)的關鍵技術摘要隨著Internet的快速發(fā)展,P2P系統(tǒng)在研究領域和產(chǎn)品開發(fā)中備受關注。鑒于P2P系統(tǒng)的應用背景差異較大,我們將其劃分為P2P平臺層和P2P應用層。本文主要討論P2P平臺的關鍵技術,著重分析了通信、安全、性能等方面的技術,為我們設計和實現(xiàn)P2P應用提供借鑒。關鍵字Peer-to-Peer資源定位通信安全性能AbstractWiththeexplosivedevelopmentofInternet,Peer-to-Peersystemsareincreasinglycapturingtheattentionofresearchersandpractitioners.DuetoremarkabledifferencesofP2Papplicationbackgrounds,wedividetheP2PsystemintoP2PplatformlayerandP2Papplicationlayer.ThispaperanalyzesthekeytechnologyinP2Pplatformlayer,andemphasizesontheunderlyingtechnologiessuchascommunication,securityandperformance.ItcanprovideguidanceforthedesignandimplementationofP2Papplications.KeywordsPeer-to-Peer,resource-locating,communication,security,performanceP2P(Peer-to-Peer)計算是指不同系統(tǒng)之間通過直接交換,實現(xiàn)計算機資源和服務共享、進行信息處理的過程,這里,資源可以是處理器、緩存和磁盤空間等,服務包括信息交換、數(shù)據(jù)計算等。P2P模式與傳統(tǒng)客戶/服務器模式的關鍵區(qū)別在于Peer與Peer在通信過程中,可以完全摒棄服務器的角色,完成一種直接通信,來獲得共享資源或服務。從P2P的發(fā)展史來看,Internet的快速發(fā)展是P2P系統(tǒng)崛起的催化劑,在Internet上進行客戶/服務器模式的訪問,使得信息源分布過于集中,邊緣網(wǎng)絡的資源被閑置和浪費,而P2P技術的引入,使得網(wǎng)絡中任何一個與網(wǎng)絡相關的設備都可能為網(wǎng)絡中的其他設備提供有效的內容服務。一般的P2P系統(tǒng)都有強烈的應用背景,系統(tǒng)實現(xiàn)也與應用類型緊密相關。為了深入分析P2P系統(tǒng)的關鍵技術,我們將P2P系統(tǒng)劃分為P2P平臺層和應用層,P2P平臺包含支撐P2P應用所需的基礎組件,例如,發(fā)現(xiàn)機制、通信、安全、資源集成等組件。P2P應用層利用P2P平臺提供的功能,向用戶提供專門的服務。這種區(qū)分可界定P2P的關鍵技術,幫助我們設計和實現(xiàn)更多種類的P2P應用。本文主要討論P2P平臺的關鍵技術,全文按如下方式組織:第1節(jié)描述了P2P系統(tǒng)的特點,第2節(jié)概括了Peer通信的各種技術,第3節(jié)敘述了P2P平臺的安全措施,第4節(jié)討論了P2P平臺的性能問題,最后是全文小結。1.P2P系統(tǒng)特點在P2P系統(tǒng)中,每一個Peer都是平等的參與者,承擔服務使用者和服務提供者兩個角色。資源的所有權和控制權被分散到網(wǎng)絡的每一個節(jié)點中。服務使用者和服務提供者之間進行直接通信,可充分利用網(wǎng)絡帶寬,減少網(wǎng)絡的擁塞狀況,使得資源的有效利用率大大提高(包括各種計算資源和存儲資源)。同時由于沒有中央節(jié)點的集中控制,系統(tǒng)的伸縮性較強,也能避免單點故障,提高系統(tǒng)的容錯性能。但由于P2P網(wǎng)絡的分散性、自治性、動態(tài)性等特點,造成了某些情況下Peer的訪問結果是不可預見的。例如,一個請求可能得不到任何應答消息的反饋。P2P系統(tǒng)的匿名性等特點可能會帶來系統(tǒng)的安全漏洞。P2P系統(tǒng)的這些特點也決定了P2P應用主要包括資源共享和協(xié)作。資源共享主要是文件共享系統(tǒng)、文件分發(fā)系統(tǒng)(FileDistributionSystem)。通過P2P網(wǎng)絡實現(xiàn)文件共享和文件分發(fā),能夠應付爆發(fā)式訪問,系統(tǒng)的可伸縮性好,可靠性好。此類典型系統(tǒng)有Napster[1],Gnutella⑵,F(xiàn)reeNet⑶,Chord-basedSystem.BitTorrent[4]。P2P協(xié)作應用的種類很多,包括即時消息系統(tǒng)、在線游戲、共享企業(yè)應用(在提供即時消息之外,還可共享內容和進行共同的活動如組內共同開發(fā)和編輯)、文件搜索、pub/sub系統(tǒng)等。其中,即時消息系統(tǒng)⑸有AOLAIM、YahooMessenger、MSNMessenger、Jabber】6’7]等;在線游戲有星際爭霸、Net-Z和DOOM;共享企業(yè)應用有Groove⑻、Magi⑼;文件搜索有YouSearch[10],OpenCola等;pub/sub系統(tǒng)有Scribe、Herms等;還有基于P2P網(wǎng)絡構造的email系統(tǒng)。而從P2P系統(tǒng)的典型特點來分析,常常被引證為P2P應用的科學計算系統(tǒng)Seti@Home[11]應該屬于P2P的非典型應用。各種P2P系統(tǒng)由于應用背景的差異,彼此互不兼容,導致不同的P2P網(wǎng)絡無法通信,難以有效地利用網(wǎng)絡資源提供服務。Sun公司組織開發(fā)的JXTA】i2]項目,希望通過提供一個簡單通用的P2P平臺來解決這個問題。從上述應用可以看出,P2P系統(tǒng)并不能替代客戶/服務器系統(tǒng),它們兩者是相輔相成的關系。從P2P系統(tǒng)的基本特點和應用情況分析,我們認為P2P平臺中的Peer的通信、平臺的安全和平臺的性能優(yōu)化這三項技術是P2P系統(tǒng)的成功與否的關鍵所在。2P2P通信P2P通信時需要解決的最基本的問題即是如何連接其它的終端獲得信息、資源和服務。該問題可細分為以下一些問題:P2P網(wǎng)絡的拓撲結構和Peer節(jié)點的功能角色劃分;資源和服務如何標識;進行資源查找時如何進行Peer定位;P2P網(wǎng)絡中Peer節(jié)點的動態(tài)變化的處理;如何穿越NAT(NetworkAddressTranslation)和防火墻進行Peer節(jié)點之間的直接通信P2P網(wǎng)絡的拓撲結構和Peer節(jié)點的角色劃分在P2P網(wǎng)絡中,有兩種典型的拓撲結構,即純P2P網(wǎng)絡和混雜的P2P網(wǎng)絡[13]。在純P2P網(wǎng)絡中,每個Peer都具有同等的責任和地位,不存在中間節(jié)點的協(xié)調。FreeNet、Gnutella都屬于純P2P網(wǎng)絡。而在混雜的P2P網(wǎng)絡中,存在著充當服務器角色的Peer節(jié)點或提供特殊功能的Super-Peer節(jié)點,這些節(jié)點保存其它Peer節(jié)點的基本狀態(tài)和存儲內容源信息,協(xié)助完成對其它節(jié)點的記錄、查詢等工作。Napster,Groove,Magi等系統(tǒng)均是典型的混雜型P2P系統(tǒng)。每一個Peer根據(jù)其提供的角色功能可以劃分為三種類型,即簡單類型Peer節(jié)點,super-peer節(jié)點和服務器型的peer節(jié)點。簡單類型Peer節(jié)點僅僅是一個簡單的終端用戶,它可以請求獲得服務并為網(wǎng)絡中的其它Peer提供服務。Super-peer節(jié)點除了具有和簡單Peer節(jié)點類似的功能外,還提供某些特殊功能。女叮XTA系統(tǒng)中就存在路由器Peer節(jié)點和會聚點Peer節(jié)點[12],前者作為一個橋梁,使得被防火墻或NAT隔離的Peer可以相互通信;后者為簡單節(jié)點提供查詢定位信息的功能。服務器型的Peer節(jié)點主要提供類似與客戶/服務器模型下的服務器功能,如提供一個全局統(tǒng)一的目錄查詢。在Napster這種混雜型的P2P系統(tǒng)中,有若干個簡單Peer節(jié)點相互提供文件下載功能的服務,還有一個目錄服務器節(jié)點提供文件條目的注冊管理。Groove和Magi系統(tǒng)中也均存在這樣的服務器型節(jié)點。而在純P2P網(wǎng)絡中,每一個Peer節(jié)點均充當了上述的三種角色。資源的標識為了在P2P網(wǎng)絡中準確地查找資源進行Peer定位,還需要確定Peer中存貯資源的標識(這里我們將在P2P網(wǎng)絡中需要進行查找的對象統(tǒng)稱為資源)。不同的應用場景均有適合自身特點的資源標識方式。在以文件共享為主的應用中,資源主要以文件的名稱、關鍵字、源數(shù)據(jù)等進行標識。而即時消息通訊系統(tǒng)往往采用類似于電子郵件的命名方式,如在Jabber系統(tǒng)中,Jabber的用戶ID以[node@]domain/[resource]的形式進行地址標識⑺,提供一個全局統(tǒng)一的地址空間。其中,Domain是主要的ID標識,是與多個用戶連接進行消息轉發(fā)的JabberServer;Node為用戶姓名或昵稱,Resource屬于一個Node,標識屬于一個用戶的多個資源。一個用戶可以同時與同一服務器建立多次連接。以用戶之間協(xié)作為主的P2P應用如Groove系統(tǒng)和Magi系統(tǒng),由于在協(xié)作中對即時消息通訊和文件共享的要求兼而有之,用戶一般以用戶名進行標識,而文件則以源數(shù)據(jù)標識[14]。JXTA作為一個解決不同P2P應用彼此不兼容的底層平臺,提出了一個統(tǒng)一的資源標識定義,即廣告[12](advertisement)。廣告是一個XML結構的文檔,由Peer或相互協(xié)作共同完成一種應用Peer組進行發(fā)布,用來描述現(xiàn)有的資源、服務或實體Peer。Peer節(jié)點通過查詢廣告以獲得各種資源的消息,進行Peer定位。Peer的定位方式在查找資源的過程中,可采用直接或間接方式定位Peer。直接定位Peer的方式比較簡單,即利用廣播或多播的形式發(fā)出查詢請求,符合查詢要求的Peer節(jié)點進行應答,然后建立直接的通信連接。由于這種方式只能在局域網(wǎng)中使用,所以應用范圍有限。當然這種方式可以和其它的定位方式結合使用以獲得良好的查詢效率。間接方式包括三種模型:服務器模型、洪流模型、和路由模型。服務器模型:該模型是基于混雜型的P2P拓撲結構。充當服務器的peer節(jié)點提供資源查詢。peer將請求發(fā)送至服務器獲得查詢結果,隨后,直接與目標節(jié)點通信獲取所需服務。但這種方式存在單點失敗問題,同時,也存在伸縮性問題。但因為peer節(jié)點僅在啟動、停止及查詢的時候才與服務器交互,所以此時的伸縮性還是強于客戶/服務器模式。典型系統(tǒng)有Napster.Magi,Groove和Jabber。Napster系統(tǒng)采用一個目錄服務器記錄資源索引,Groove系統(tǒng)和Magi系統(tǒng)均是采用動態(tài)DNS查找用戶的IP地址[14]。Jabber系統(tǒng)由于其資源標識類似于Email地址,所以,利用DNS的MX記錄進行IP地址的查詢[7]。洪流模型:該模型基于純P2P拓撲結構。Peer節(jié)點采用洪流法將查詢請求不斷地轉發(fā)至鄰居節(jié)點,直到到達目標節(jié)點,獲得查詢結果。同時為了避免消息無限制的轉發(fā),查詢請求中設定有TTL(TimetoLive)或HTL(HopstoLive)進行轉發(fā)控制。Gnutella是采用此類模型的典型系統(tǒng)。路由模型:該模型也是基于純P2P網(wǎng)絡結構。首先為網(wǎng)絡中的每一個peer賦予一個ID,同時,每個Peer存儲的資源和服務也有類似的ID。Peer節(jié)點的路由表中登記一定數(shù)量的鄰居節(jié)點。Peer的請求被轉發(fā)至與所請求的資源或服務的ID最接近的Peer,直到發(fā)現(xiàn)這個資源或服務麗。插入一個新資源/服務的過程與查詢過程類似,也是通過查找該資源/服務ID來確定存儲的正確位置。此類模型主要用在文件共享系統(tǒng)中,如FreeNet,Chord[16],CAN[17],Tapestry,Pastry等。路由模型又可細分為非結構化路由模型和結構化路由模型。FreeNet系統(tǒng)屬于典型的非結構化路由模型。在查找到所需資源后,為了提高搜索性能,系統(tǒng)沿搜索路徑復制資源。這樣,由于資源的存儲位置不固定,其行為不易觀察,不確定因素較大。所以相對于結構化路由模型來說,其資源分布的規(guī)律性不強,難以從全局上把握整個系統(tǒng)的資源分布狀況。而結構化路由模型如Chord,CAN,Tapestry.Pastry均采用了DHT(DistributedHashTable)作為主要的存儲算法。DHT的主要思想是將資源定位用的索引(索引結構通常是兩元組(文件名,實際的存儲位置))分散存儲到整個P2P網(wǎng)絡上,這樣,哈希表的存儲和查詢操作就會涉及到P2P網(wǎng)絡中的多個節(jié)點。以DHT思想進行路由模型的設計時,首先需要確定通過Hash函數(shù)進行虛擬地址空間映射的規(guī)則。虛擬地址空間的設計有多種方式,Chord采用的虛擬地址空間為m-位的循環(huán)地址空間[16],CAN系統(tǒng)采用的是多維的地址空間[17]。Peer節(jié)點的IP地址和端口號經(jīng)過哈希函數(shù)映射到地址空間,再將映射空間進行劃分,每個節(jié)點負責存儲屬于自己空間的值對(key,value)。其次需要確定路由表項的存儲內容,即鄰居節(jié)點的規(guī)模,以適應于不同的網(wǎng)絡需求。這里需要對路由表項的規(guī)模與網(wǎng)絡搜索跳轉數(shù)進行綜合考慮。在動態(tài)性較強的網(wǎng)絡中,節(jié)點頻繁加入和退出網(wǎng)絡會使得規(guī)模較大的路由表更新頻率過高,操作費時。但規(guī)模較小的路由表在進行資源定位時,又使得查找時間過長。再次是確定在接收到一個資源的查詢請求時,從路由表中選擇轉發(fā)的鄰居節(jié)點的規(guī)則。最后要確定新節(jié)點的插入和刪除操作后,虛擬的地址空間如何進行分裂和合并。P2P網(wǎng)絡中節(jié)點的登錄和退出在服務器模型的P2P網(wǎng)絡中,由于Peer節(jié)點的狀態(tài)信息和管理的資源信息直接記錄在服務器中,Peer節(jié)點的登錄和退出僅需和服務器進行交互,由服務器進行協(xié)調處理。如在Napster系統(tǒng)中,Peer節(jié)點登錄系統(tǒng)后,向服務器發(fā)送當前的網(wǎng)絡狀態(tài)和所有的文件列表信息,由服務器更新目錄索引。在Jabber等即時消息通訊系統(tǒng)中,Peer節(jié)點往往是與用戶綁定的。服務器接收到用戶的登錄消息或退出消息后,通知訂閱該用戶在線狀態(tài)的所有在線用戶。非結構化路由模型FreeNet中,新節(jié)點首先需要獲知網(wǎng)絡中的若干可連接節(jié)點的信息,通過執(zhí)行搜索操作向整個網(wǎng)絡宣布自己的存在。在結構化路由模型的P2P網(wǎng)絡中,節(jié)點的登錄和退出,將導致虛擬地址空間的分裂和合并。Peer節(jié)點登錄網(wǎng)絡的操作,類似于一個資源的查找過程。Peer節(jié)點定位到所屬的地址空間后,將地址空間以一定規(guī)則進行分裂。負責管理該地址空間資源的原節(jié)點將所屬資源按分裂的規(guī)則,部分轉移到新節(jié)點。同時兩個節(jié)點的路由表項和其它相關節(jié)點的路由表項均要進行修改。而Peer節(jié)點退出網(wǎng)絡的過程,則是登錄網(wǎng)絡的逆過程,資源需要轉移合并,相關節(jié)點的路由表項同樣需要更新。防火墻和NAT的穿越在實際的網(wǎng)絡通信中,Peer節(jié)點往往是一個私有網(wǎng)絡中的節(jié)點,位于防火墻之后。這樣,Peer與Peer之間直接通信需要解決的一個關鍵問題是穿越防火墻和NAT。由于防火墻會對IP進行過濾,限制了墻內外的連接,而NAT技術雖然可以使得內部網(wǎng)絡地址映射到外部網(wǎng)絡地址,但要求內部網(wǎng)絡首先發(fā)起對外連接,否則外部網(wǎng)絡機器無法達到內部網(wǎng)絡[12]。穿越防火墻和NAT的策略有兩個基本點:需要使用在一般情況下可以通過防火墻的協(xié)議,如基于請求/應答方式的HTTP協(xié)議。Peer之間進行通信時,必須由內部網(wǎng)絡的機器首先發(fā)起連接請求,如果通信雙方均處于防火墻之后,則需要有防火墻外的轉發(fā)節(jié)點進行消息轉發(fā)。在Napster系統(tǒng)中當Peer節(jié)點請求下載的資源位于一個防火墻之后的節(jié)點上,請求節(jié)點向服務器端發(fā)送需要進行轉換下載的請求(Alternatedownloadrequest),由服務器通知被請求節(jié)點首先發(fā)起文件下載的連接請求。而Gnutella是在將查詢的詳細信息返回給請求者的同時發(fā)送資源文件,以此方式解決文件提供者位于防火墻之后的情況。JXTA平臺中,其super-peer節(jié)點中的路由節(jié)點是提供防火墻和NAT穿越功能的特殊節(jié)點。若通信一方在防火墻之后,那么單向穿越的過程由試圖與防火墻后的peerA連接的peer節(jié)點B發(fā)起,節(jié)點B首先與路由Peer連接,同時peerA周期性地連接路由Peer,由于路由Peer對PeerA是可見的,且不在防火墻后,連接請求消息可作為http的應答內容返回至peerAo若通信的雙方都在防火墻之后,那么需要兩個路由peer。Peer1通過路由節(jié)點1轉發(fā)消息,路由節(jié)點1將消息轉發(fā)至路由節(jié)點2,Peer2周期性地向路由節(jié)點2發(fā)送http請求,獲得消息后斷開連接。JXTA平臺中路由節(jié)點的使用不僅可以穿越防火墻,還可以解決瓶頸問題,解決網(wǎng)絡傳輸?shù)牟患嫒菪裕?2]。3.P2P平臺的安全機制與安全有緊密關系的是P2P平臺提供的匿名性。為了進行自由的交互,避免引起不必要的法律糾紛,所以,P2P系統(tǒng)允許匿名方式的信息交換[15]。匿名性可分為以下三種類型:發(fā)布者匿名:發(fā)布者匿名地發(fā)布服務或資源請求者匿名:請求方匿名地請求服務或資源服務提供者匿名:P2P網(wǎng)絡中的資源擁有者匿名地提供資源或服務提供匿名性的基本方法有六種:組播:采用IP組播方法進行資源發(fā)送可以達到請求者匿名的目的。但是這種方法需要底層網(wǎng)絡如以太網(wǎng)的支持。地址欺騙:使用面向無連接協(xié)議如UDP,可以更改地址,達到地址欺騙的目的。身份欺騙:網(wǎng)絡中的文件可能擁有多個備份,所以應答者往往并不是文件的提供者口FreeNet就使用了這種方法提供匿名性。隱藏路徑:Peer之間并不是進行直接的消息通信,而是通過若干的中間節(jié)點,這樣可以達到發(fā)送者匿名的要求。別名:每一個Peer在網(wǎng)絡中均有一個別名,Peer之間通過別名進行消息傳遞,這種方法需要一個ProxyServer保存所有的Peer實體與別名的對應關系。強制存放:一個文件存放的位置是由文件本身確定的,發(fā)布者無法選擇,從而實現(xiàn)發(fā)布者匿名,如基于Chord的系統(tǒng)。上述方法可以組合應用,例如,F(xiàn)reeNet采用純P2P網(wǎng)絡中的非結構化文檔路由模型,同時在發(fā)布文件和查找文件的過程中,沿搜索路徑復制文件。通過隱藏路徑和身份欺騙的方法達到服務提供者匿名的目的,通過隱藏路徑的方法形成請求者匿名,同時由于文件的發(fā)布是一個根據(jù)文件名強制存放的過程,所以也完成了發(fā)布者匿名的功能。P2P平臺所具有的上述特性可能會帶來下列安全隱患:拒絕服務攻擊:P2P應用會消耗網(wǎng)絡帶寬,占用磁盤空間,使得系統(tǒng)性能降低甚至完全癱瘓。如果被大量惡意地使用,就會出現(xiàn)正常服務請求得不到服務的現(xiàn)象。處理這種攻擊的難點在于如何將惡意節(jié)點和真正負載過重的節(jié)點區(qū)分開。從根本上說,限制網(wǎng)絡服務請求的數(shù)量是解決拒絕服務攻擊的根本方法。合理選擇網(wǎng)絡底層的拓撲結構,均衡系統(tǒng)中的負載和資源,加入流量控制策略,這三種措施綜合使用可使惡意節(jié)點根本無法占用過多的資源,降低其對系統(tǒng)的影響。惡意軟件分發(fā):P2P無中央服務器控制,允許匿名分發(fā)資源,對軟件的分發(fā)缺乏控制,如果P2P系統(tǒng)被惡意使用,會給系統(tǒng)用戶帶來安全隱患。通常的名譽評估系統(tǒng)可以用來跟蹤和處理Peer的狀態(tài),并根據(jù)得到的信息選擇資源的提供者。但是這種方法比較消耗網(wǎng)絡資源。信息泄露和篡改:例如,有些P2P系統(tǒng)在路由表中保存了一批網(wǎng)絡地址,這些信息可能會被泄露和篡改;有些P2P系統(tǒng)例如Napster、Gnutella允許直接訪問用戶硬盤,惡意用戶可利用這個特性察看和篡改磁盤信息。這些都需要有相應的策略加以解決,例如,設計安全路由策略,可解決路由表信息泄露問題。4.P2P平臺的性能改善技術P2P平臺的性能指標包括請求響應時間、公平性等。請求響應時間與P2P平臺的拓撲結構有很大關系。對于有中央服務器的P2P系統(tǒng)如Napster系統(tǒng)和Seti@Home系統(tǒng),Peer之間由服務器進行協(xié)調,服務器變成了系統(tǒng)的瓶頸,影響系統(tǒng)性能。為了改善性能,可采用層次性的混雜式結構,由每一個協(xié)調者負責一個Peer組,形成一個層次的管理結構。在非集中式的P2P網(wǎng)絡中,主要通過消息轉發(fā)來獲取和查詢數(shù)據(jù),消息轉發(fā)的次數(shù)影響帶寬的消耗,因此要盡量減少消息的轉發(fā)次數(shù)[15]。采用復制的方法可提供多個資源備份,提高容錯性,也減少了請求節(jié)點到服務節(jié)點的距離,減少了請求響應時間。但復制會帶來數(shù)據(jù)一致性的問題;另一種減少消息轉發(fā)次數(shù)的方法是建立智能路由和網(wǎng)絡組織,尋找目標文件到請求節(jié)點的最小路徑。該類方法包括:在基于DHT的結構化路由模型中設計合乎應用背景要求的路由表存儲結構,以減少網(wǎng)絡中的消息跳轉數(shù);采用一些反饋機制,智能地選擇曾經(jīng)命中過的Peer節(jié)點進行消息轉發(fā);監(jiān)測網(wǎng)絡中的運行狀態(tài),繞過一些負載較重的Peer節(jié)點。這些方法都可以根據(jù)不同的使用背景獲得較好的性能提升。除了通過復制改善系統(tǒng)的響應時間之外,緩存的替換策略對響應時間改善也有很大影響。SmallWorld模型刻畫了網(wǎng)絡通信中的一個有趣的特征:在規(guī)則網(wǎng)絡中隨機地添加少量通路,能很好減短通信距離,減少請求的響應時間,它被用來改進FreeNet中的緩存替換策略,也獲得了較好的性能改善[18]。P2P體系結構使得P2P系統(tǒng)中會出現(xiàn)“無政府主義”行為,例如,過量下載或有意讓下載的文件中包含廣告等,這些行為導致P2P信息交換的不公平性。在P2P網(wǎng)絡中,為避免每一個Peer享受服務而不提供服務的現(xiàn)象,需要實行一定的管理機制。在P2P網(wǎng)絡中引入經(jīng)濟學中買賣交易的原理,可以促進資源的共享和交互。Stanford大學的P2P研究小組提出了RTR(right-to-respond)協(xié)議】19],用以解決在洪流模型中,中間節(jié)點不愿消耗資源轉發(fā)請求的問題。RTR是指對查詢請求的響應權,Peer節(jié)點可以購買和出售系統(tǒng)中每個查詢請求的RTR。當某一Peer節(jié)點轉發(fā)請求時,其它Peer節(jié)點可以向其購買RTR。購買了RTR的Peer節(jié)點可以執(zhí)行兩個操作,一是響應該請求,如果被請求的發(fā)出者選中,就可以為其提供服務并收取費用;二是再將RTR售出給其它節(jié)點。通過這種方法,Peer節(jié)點在經(jīng)濟利益的驅使下會不斷轉發(fā)請求,擴大搜索范圍。同時可以促進擁有類似資源或服務的Peer節(jié)點頻繁聯(lián)系,形成PeerGroup,提高搜索效率。另一個利用經(jīng)濟學原理的實例是數(shù)據(jù)交易(datatrading)方法的引入[20]°P2P系統(tǒng)經(jīng)常采用數(shù)據(jù)備份的機制來增強資源可用性,提高系統(tǒng)性能。而用戶往往不愿無償提供存儲資源備份其它數(shù)據(jù)。這時利用數(shù)據(jù)交易的方法提供相互備份,即獲得對方存儲空間或數(shù)據(jù)資源是以向對方提供存儲空間為前提的。系統(tǒng)中Peer節(jié)點之間建立了良好的相互備份關系,將會減少搜索和訪問的開銷。以上這些實例均表明,采用經(jīng)濟學中以交易為基礎的資源管理機制,可以提高P2P系統(tǒng)的資源使用率。5.小結P2P計算,作為分布式計算的一個分支,目前不論是從技術研究還是產(chǎn)品開發(fā)來看,都已成為了一個重要的領域。P2P的算法、平臺和應用都將有進一步的發(fā)展空間。P2P的思想也被廣泛地應用在很多其他的研究領域。本文著重介紹了P2P的發(fā)展背景、P2P系統(tǒng)的特點,在P2P平臺層識別出若干P2P平臺的關鍵技術,包括Peer的通信技術、P2P平臺的安全機制和P2P平臺的性能改善技術,這些技術的總結和分析能對設計和實現(xiàn)P2P平臺和應用起到一定的借鑒和指導作用。參考文獻:[1]NapsterInc.[2]Gnutella,Freenet,/lang/enBitTorrent,/BitTorrent/SixtoOrtizJr.,"InstantMessaging:NoLongerJustChat",IEEEComputer,March2001JeremieMiller,"Jabber,Peer-to-Peer:HarnessingthePowerOfDisruptiveTechnologies,”O(jiān)'Reilly,March2001PeterSaint-Andre,“JabberTechnologyOverview”PreetiMehra,Groove,16thNovember,2001,ECE-579GregoryAlanBolcer,MichaelGorlick,”Peer-to-PeerArchitecturesandtheMagiOpen-SourceInfrastructure”,EndeavorsTechnology,2000MayankBawa,RobertoJ.BayardoJr.,SridharRajagopalan,EugeneJ.Shekita,“MakeitFresh,MakeitQuick-Searc
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 校園環(huán)境下的壓力與應對策略培訓研討會
- 2025年白銀礦冶職業(yè)技術學院高職單招職業(yè)技能測試近5年??及鎱⒖碱}庫含答案解析
- 跨文化背景下的學科競賽與國際化人才培養(yǎng)
- 家庭教育中如何平衡孩子的學業(yè)與興趣愛好發(fā)展
- 跨境電商戰(zhàn)略視角下的海外農業(yè)生產(chǎn)合作分析
- 零售商在面對疫情時安全性產(chǎn)品之應對價格調整策略的研究報告
- 2025年海南經(jīng)貿職業(yè)技術學院高職單招高職單招英語2016-2024歷年頻考點試題含答案解析
- 2025年皮制帶燈匙扣項目可行性研究報告
- 2025年普通鑄鐵件項目可行性研究報告
- 探索互動式教學法在小學數(shù)學教學中的實施與應用研究
- 安全生產(chǎn)網(wǎng)格員培訓
- 小學數(shù)學分數(shù)四則混合運算300題帶答案
- 林下野雞養(yǎng)殖建設項目可行性研究報告
- 動物生產(chǎn)與流通環(huán)節(jié)檢疫(動物防疫檢疫課件)
- 2024年山東泰安市泰山財金投資集團有限公司招聘筆試參考題庫含答案解析
- 英語主語從句省公開課一等獎全國示范課微課金獎課件
- C139客戶開發(fā)管理模型
- 年度工作總結與計劃會議
- 醫(yī)保按病種分值付費(DIP)院內培訓
- 近五年重慶中考物理試題及答案2023
- 全科醫(yī)醫(yī)師的臨床診療思維
評論
0/150
提交評論