版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、指導(dǎo)教師:李指導(dǎo)教師:李 祥祥 教授教授答答 辯辯 人:唐人:唐 宇宇貴州大學(xué)計算機軟件與理論研究所貴州大學(xué)計算機軟件與理論研究所2l 隨著計算機和通信技術(shù)的迅速發(fā)展,相對于目前計算機網(wǎng)絡(luò)中廣泛存在的客戶機/服務(wù)器模式,另一種模式P2P(Peer-to-Peer Network,簡稱P2P)模式也逐漸流行起來。簡單的說,P2P 直接將人們聯(lián)系起來,讓人們通過互聯(lián)網(wǎng)直接交互。P2P使得網(wǎng)絡(luò)上的溝通變得容易、更直接共享和交互,真正地消除中間商。 l 因此,大力的發(fā)展P2P的應(yīng)用技術(shù),有助于網(wǎng)絡(luò)資源的最大共享,使網(wǎng)絡(luò)中的每一臺計算機都能主動參與到網(wǎng)絡(luò)信息庫的建立中來,大大的弱化了對中心服務(wù)器的依賴,
2、使網(wǎng)絡(luò)中的每個終端都能得到有效的利用。貴州大學(xué)計算機軟件與理論研究所貴州大學(xué)計算機軟件與理論研究所3l 研究了研究了P2P技術(shù)。對技術(shù)。對P2P的概念、發(fā)展歷程、模型、的概念、發(fā)展歷程、模型、分類、特點及發(fā)展趨勢進行了詳細的研究。分類、特點及發(fā)展趨勢進行了詳細的研究。l 詳細分析了詳細分析了SUNSUN公司的公司的P2PP2P平臺平臺- -JXTAJXTA的關(guān)鍵協(xié)議。的關(guān)鍵協(xié)議。JXTAJXTA的主要協(xié)議有:對等機發(fā)現(xiàn)協(xié)議的主要協(xié)議有:對等機發(fā)現(xiàn)協(xié)議( (PDP) PDP) 、管道、管道綁定協(xié)議綁定協(xié)議( (PBP)PBP)、 端點路由協(xié)議端點路由協(xié)議( (ERP) ERP) 、對等機解、對等
3、機解析協(xié)議析協(xié)議( (PRP)PRP)、 集合點協(xié)議集合點協(xié)議( (RVP)RVP)、 對等機信息協(xié)對等機信息協(xié)議議( (PIP)PIP)。貴州大學(xué)計算機軟件與理論研究所貴州大學(xué)計算機軟件與理論研究所4l 研究了研究了JXTA平臺實現(xiàn)平臺實現(xiàn)P2P設(shè)計及應(yīng)用。研究了設(shè)計及應(yīng)用。研究了如何在如何在SunSun公公司的司的P2PP2P平臺平臺JXTAJXTA上實現(xiàn)對等點的發(fā)布、對等點的發(fā)現(xiàn)及對上實現(xiàn)對等點的發(fā)布、對等點的發(fā)現(xiàn)及對等點間的通信。等點間的通信。 l 系統(tǒng)功能模塊的設(shè)計。系統(tǒng)是基于系統(tǒng)功能模塊的設(shè)計。系統(tǒng)是基于WindowsWindows操作系統(tǒng)所建操作系統(tǒng)所建立的,采用立的,采用JAV
4、AJAVA語言開發(fā),整個系統(tǒng)由對等點發(fā)布模塊、語言開發(fā),整個系統(tǒng)由對等點發(fā)布模塊、對等點發(fā)現(xiàn)模塊和對等點通信模塊三部分組成,其中其中對等點發(fā)現(xiàn)模塊和對等點通信模塊三部分組成,其中其中發(fā)現(xiàn)模塊和通信模塊以線程啟動。發(fā)現(xiàn)模塊和通信模塊以線程啟動。l 多線程的設(shè)計實現(xiàn)。實現(xiàn)了多線程的設(shè)計實現(xiàn)。實現(xiàn)了發(fā)現(xiàn)模塊和通信模塊以線程啟發(fā)現(xiàn)模塊和通信模塊以線程啟動,實現(xiàn)對等點間實時的查找和發(fā)現(xiàn)及通信。動,實現(xiàn)對等點間實時的查找和發(fā)現(xiàn)及通信。貴州大學(xué)計算機軟件與理論研究所貴州大學(xué)計算機軟件與理論研究所5nP2P網(wǎng)絡(luò)網(wǎng)絡(luò)lJXTA平臺平臺 l系統(tǒng)設(shè)計系統(tǒng)設(shè)計l工作總結(jié)工作總結(jié)貴州大學(xué)計算機軟件與理論研究所貴州大學(xué)計
5、算機軟件與理論研究所6l 從字面上看,從字面上看,P2PP2P是是Peer-to-PeerPeer-to-Peer的縮寫,的縮寫,peerpeer在英語里有在英語里有“( (地位、地位、能力等能力等) )同等者同等者”、“同事同事”和和“伙伴伙伴”等意義。這樣一來,等意義。這樣一來,P2PP2P也就也就可可以理解為以理解為“伙伴對伙伴伙伴對伙伴”的意思,或稱為對等聯(lián)網(wǎng)。抽象一點的認為的意思,或稱為對等聯(lián)網(wǎng)。抽象一點的認為P2PP2P是為了達到既定目標而進行的、生產(chǎn)者和消費者之間直接的信是為了達到既定目標而進行的、生產(chǎn)者和消費者之間直接的信息和服務(wù)雙向交換行為息和服務(wù)雙向交換行為. . l IB
6、M IBM 則為則為P2PP2P下了如下定義下了如下定義:P2P:P2P系統(tǒng)由若干互聯(lián)協(xié)作的計算機構(gòu)成,系統(tǒng)由若干互聯(lián)協(xié)作的計算機構(gòu)成,且至少具有如下特征之一且至少具有如下特征之一: :系統(tǒng)依存于邊緣化系統(tǒng)依存于邊緣化( (非中央式服務(wù)器非中央式服務(wù)器) )設(shè)設(shè)備的主動協(xié)作,每個成員直接從其他成員而不是從服務(wù)器的參與中備的主動協(xié)作,每個成員直接從其他成員而不是從服務(wù)器的參與中受益受益; ;系統(tǒng)中成員同時扮演服務(wù)器與客戶機的角色系統(tǒng)中成員同時扮演服務(wù)器與客戶機的角色: :系統(tǒng)應(yīng)用的用戶系統(tǒng)應(yīng)用的用戶能夠意識到彼此的存在,構(gòu)成一個虛擬或?qū)嶋H的群體。能夠意識到彼此的存在,構(gòu)成一個虛擬或?qū)嶋H的群體。貴
7、州大學(xué)計算機軟件與理論研究所貴州大學(xué)計算機軟件與理論研究所7l 網(wǎng)絡(luò)中每一個節(jié)點同時具有網(wǎng)絡(luò)中每一個節(jié)點同時具有ClientClient和和ServerServer的特點的特點 l 每一個節(jié)點在加入每一個節(jié)點在加入P2PP2P網(wǎng)絡(luò)的同時能夠提供有用的資源進行網(wǎng)絡(luò)的同時能夠提供有用的資源進行共享共享l 沒有中心協(xié)作機制沒有中心協(xié)作機制 l 沒有中心數(shù)據(jù)庫服務(wù)器沒有中心數(shù)據(jù)庫服務(wù)器貴州大學(xué)計算機軟件與理論研究所貴州大學(xué)計算機軟件與理論研究所8l 沒有一個節(jié)點擁有對整個網(wǎng)絡(luò)系統(tǒng)數(shù)據(jù)存放位置的全局視圖沒有一個節(jié)點擁有對整個網(wǎng)絡(luò)系統(tǒng)數(shù)據(jù)存放位置的全局視圖 l 系統(tǒng)的整體行為是由網(wǎng)絡(luò)局部連接逐步形成的系統(tǒng)
8、的整體行為是由網(wǎng)絡(luò)局部連接逐步形成的 l 系統(tǒng)中所有已存在的數(shù)據(jù)和服務(wù)對網(wǎng)絡(luò)中任何節(jié)點都是可獲系統(tǒng)中所有已存在的數(shù)據(jù)和服務(wù)對網(wǎng)絡(luò)中任何節(jié)點都是可獲得的得的l 節(jié)點具有自治性,多個節(jié)點可以組成為一個節(jié)點組節(jié)點具有自治性,多個節(jié)點可以組成為一個節(jié)點組l 節(jié)點之間的連接是短暫的和不可靠的節(jié)點之間的連接是短暫的和不可靠的 貴州大學(xué)計算機軟件與理論研究所貴州大學(xué)計算機軟件與理論研究所9l集中索引模型集中索引模型 集中索引模型并不是一種嚴格意義上的集中索引模型并不是一種嚴格意義上的P2PP2P網(wǎng)絡(luò)模型。在集中索網(wǎng)絡(luò)模型。在集中索引模型中,一臺或多臺有特殊用途的服務(wù)器為對等體提供目求服務(wù)。引模型中,一臺或多
9、臺有特殊用途的服務(wù)器為對等體提供目求服務(wù)。對等體向目錄服務(wù)注冊關(guān)于自身的信息對等體向目錄服務(wù)注冊關(guān)于自身的信息( (其名稱、地址、資源和元數(shù)其名稱、地址、資源和元數(shù)據(jù)據(jù)) ),并根據(jù)對目錄服務(wù)器中信息的查詢來定位其他對等體,并根據(jù)對目錄服務(wù)器中信息的查詢來定位其他對等體. .一旦發(fā)現(xiàn)一旦發(fā)現(xiàn)其他對等體的位置信息,該對等體將直接與其建立聯(lián)系其他對等體的位置信息,該對等體將直接與其建立聯(lián)系.P2P.P2P領(lǐng)域中集領(lǐng)域中集中索引模型的最佳示例是中索引模型的最佳示例是NapsterNapster。貴州大學(xué)計算機軟件與理論研究所貴州大學(xué)計算機軟件與理論研究所10分布式P2P模型 l 分布式分布式P2P模
10、型模型 分布式模型按其網(wǎng)絡(luò)拓撲的結(jié)構(gòu)化程度又可分為非結(jié)構(gòu)化模型分布式模型按其網(wǎng)絡(luò)拓撲的結(jié)構(gòu)化程度又可分為非結(jié)構(gòu)化模型和結(jié)構(gòu)化模型。和結(jié)構(gòu)化模型。 非結(jié)構(gòu)化模型非結(jié)構(gòu)化模型此類此類P2PP2P系統(tǒng)既沒有專門的中心目錄服務(wù)器也不對網(wǎng)絡(luò)拓撲和資系統(tǒng)既沒有專門的中心目錄服務(wù)器也不對網(wǎng)絡(luò)拓撲和資源放置進行控制,因此也稱之為分布式非結(jié)構(gòu)化模型。源放置進行控制,因此也稱之為分布式非結(jié)構(gòu)化模型。 結(jié)構(gòu)化模型結(jié)構(gòu)化模型 此類此類P2PP2P系統(tǒng)沒有專門的中心目錄服務(wù)器,因此我們將其歸為分系統(tǒng)沒有專門的中心目錄服務(wù)器,因此我們將其歸為分布式一類,但它同時又是有結(jié)構(gòu)的。這里所說的布式一類,但它同時又是有結(jié)構(gòu)的。這里
11、所說的“結(jié)構(gòu)結(jié)構(gòu)”是指是指P2PP2P系統(tǒng)的網(wǎng)絡(luò)拓撲是經(jīng)過人為控制,并且要共享的資源是按照某種規(guī)系統(tǒng)的網(wǎng)絡(luò)拓撲是經(jīng)過人為控制,并且要共享的資源是按照某種規(guī)律而不是隨機地存放在節(jié)點上的,這使得有關(guān)節(jié)點和資源的查詢能律而不是隨機地存放在節(jié)點上的,這使得有關(guān)節(jié)點和資源的查詢能高效地完成。高效地完成。 貴州大學(xué)計算機軟件與理論研究所貴州大學(xué)計算機軟件與理論研究所11l 混合混合P2P模型模型 在混合在混合P2PP2P模型中,模型中,P2PP2P網(wǎng)絡(luò)由提供查詢服務(wù)的網(wǎng)絡(luò)由提供查詢服務(wù)的 super-super-peer(peer(超級對等體超級對等體) )和其他客戶對等體組成。在資源共享方和其他客戶對等
12、體組成。在資源共享方面,所有對等體的地位相同。這樣就形成了一個個以面,所有對等體的地位相同。這樣就形成了一個個以super-peersuper-peer為中心的自治系統(tǒng),每個對等體在加入此類網(wǎng)為中心的自治系統(tǒng),每個對等體在加入此類網(wǎng)絡(luò)時郁需要連接到某個特定的絡(luò)時郁需要連接到某個特定的super-peersuper-peer上。上。貴州大學(xué)計算機軟件與理論研究所貴州大學(xué)計算機軟件與理論研究所12lP2P網(wǎng)絡(luò)網(wǎng)絡(luò) nJXTA平臺平臺l系統(tǒng)設(shè)計系統(tǒng)設(shè)計l工作總結(jié)工作總結(jié)貴州大學(xué)計算機軟件與理論研究所貴州大學(xué)計算機軟件與理論研究所13l JXTAJXTA(juxtaposejuxtapose)是)是S
13、unSun公司為了構(gòu)建公司為了構(gòu)建P2PP2P網(wǎng)絡(luò)而網(wǎng)絡(luò)而制定的一組協(xié)議制定的一組協(xié)議,它,它目的是為目的是為P2PP2P的網(wǎng)絡(luò)應(yīng)用開發(fā)提的網(wǎng)絡(luò)應(yīng)用開發(fā)提供一個統(tǒng)一的供一個統(tǒng)一的跨平臺、跨操作系統(tǒng)和跨編程語言的跨平臺、跨操作系統(tǒng)和跨編程語言的P2PP2P網(wǎng)絡(luò)開發(fā)平臺網(wǎng)絡(luò)開發(fā)平臺。 lJXTAJXTA由六個協(xié)議組成,這些協(xié)議是專為特定的、分由六個協(xié)議組成,這些協(xié)議是專為特定的、分布式的、對等的網(wǎng)絡(luò)計算而設(shè)計的。使用這些協(xié)議,布式的、對等的網(wǎng)絡(luò)計算而設(shè)計的。使用這些協(xié)議,PeerPeer可以互相合作來建立自我組織、自我管理的對等可以互相合作來建立自我組織、自我管理的對等組,而不必關(guān)心它們在網(wǎng)絡(luò)中所
14、處的位置組,而不必關(guān)心它們在網(wǎng)絡(luò)中所處的位置( (在網(wǎng)絡(luò)邊在網(wǎng)絡(luò)邊緣或者防火墻的后面緣或者防火墻的后面) ),并且也不需要集中的管理機,并且也不需要集中的管理機構(gòu)。構(gòu)。 貴州大學(xué)計算機軟件與理論研究所貴州大學(xué)計算機軟件與理論研究所14核心層(JXTA Core):這一層封裝了最根本的東西,包括Peer、對等組、Peer發(fā)現(xiàn)、Peer通信、Peer監(jiān)視和相關(guān)的安全原語。服務(wù)層(JXTA Services):這層包括對于P2P網(wǎng)絡(luò)不是必需的、但很通用的功能,如查找、共享、索引、代碼緩存和內(nèi)容緩存的機制。應(yīng)用層(JXTA Application):這一層包括了應(yīng)用JXTA服務(wù)開發(fā)出來的完整的P2P應(yīng)
15、用序。核心層(JXTA Core):這一層封裝了最根本的東西,包括Peer、對等組、Peer發(fā)現(xiàn)、Peer通信、Peer監(jiān)視和相關(guān)的安全原語。服務(wù)層(JXTA Services):這層包括對于P2P網(wǎng)絡(luò)不是必需的、但很通用的功能,如查找、共享、索引、代碼緩存和內(nèi)容緩存的機制。應(yīng)用層(JXTA Application):這一層包括了應(yīng)用JXTA服務(wù)開發(fā)出來的完整的P2P應(yīng)用序。核心層(JXTA Core):這一層封裝了最根本的東西,包括Peer、對等組、Peer發(fā)現(xiàn)、Peer通信、Peer監(jiān)視和相關(guān)的安全原語。服務(wù)層(JXTA Services):這層包括對于P2P網(wǎng)絡(luò)不是必需的、但很通用的功能
16、,如查找、共享、索引、代碼緩存和內(nèi)容緩存的機制。應(yīng)用層(JXTA Application):這一層包括了應(yīng)用JXTA服務(wù)開發(fā)出來的完整的P2P應(yīng)用序。l核心層核心層(JXTA Core)(JXTA Core):這一層封裝了最根本的東西,包:這一層封裝了最根本的東西,包括括PeerPeer、對等組、對等組、PeerPeer發(fā)現(xiàn)、發(fā)現(xiàn)、PeerPeer通信、通信、PeerPeer監(jiān)視和相監(jiān)視和相關(guān)的安全原語。關(guān)的安全原語。l服務(wù)層服務(wù)層(JXTA Services)(JXTA Services):這層包括對于:這層包括對于P2PP2P網(wǎng)絡(luò)不是網(wǎng)絡(luò)不是必需的、但很通用的功能,如查找、共享、索引、代碼
17、必需的、但很通用的功能,如查找、共享、索引、代碼緩存和內(nèi)容緩存的機制。緩存和內(nèi)容緩存的機制。l應(yīng)用層應(yīng)用層(JXTA Application)(JXTA Application):這一層包括了應(yīng)用:這一層包括了應(yīng)用JXTAJXTA服務(wù)開發(fā)出來的完整的服務(wù)開發(fā)出來的完整的P2PP2P應(yīng)用序。應(yīng)用序。貴州大學(xué)計算機軟件與理論研究所貴州大學(xué)計算機軟件與理論研究所15l(1)(1)對等點發(fā)現(xiàn)協(xié)議對等點發(fā)現(xiàn)協(xié)議Peer Discovery Protocol(PDP)Peer Discovery Protocol(PDP) 通過這個協(xié)議發(fā)布自己的信息,并且發(fā)現(xiàn)所有已經(jīng)公通過這個協(xié)議發(fā)布自己的信息,并且發(fā)現(xiàn)
18、所有已經(jīng)公布的資源布的資源, ,資源是通過廣告資源是通過廣告(Advertisement)(Advertisement)來公布的來公布的, ,一一個對等實體通過個對等實體通過PDPPDP發(fā)現(xiàn)另一個對等實體發(fā)布的廣告。發(fā)現(xiàn)另一個對等實體發(fā)布的廣告。l(2)(2)管道綁定協(xié)議管道綁定協(xié)議Pipe Binding Protocol(PBP)Pipe Binding Protocol(PBP) 它允許它允許PeerPeer之間建立虛擬的通信管道,由管道負責(zé)向之間建立虛擬的通信管道,由管道負責(zé)向遠程遠程PeerPeer發(fā)送數(shù)據(jù)或接收數(shù)據(jù),該協(xié)議首要關(guān)注的是通發(fā)送數(shù)據(jù)或接收數(shù)據(jù),該協(xié)議首要關(guān)注的是通過過P
19、eerPeer端點路由協(xié)議提供的路由連接端點路由協(xié)議提供的路由連接PeerPeer。貴州大學(xué)計算機軟件與理論研究所貴州大學(xué)計算機軟件與理論研究所16l(3)(3)對等點解析協(xié)議對等點解析協(xié)議Peer ResolverPeer Resolver Protocol(PRP) Protocol(PRP) 該協(xié)議允許該協(xié)議允許PeerPeer發(fā)送更一般的請求,并可以接收到該發(fā)送更一般的請求,并可以接收到該請求的回應(yīng)。同時可以將請求分發(fā)到組內(nèi)的一個或者多請求的回應(yīng)。同時可以將請求分發(fā)到組內(nèi)的一個或者多個匹配的處理器。該協(xié)議是一個基礎(chǔ)通信協(xié)議,它按照個匹配的處理器。該協(xié)議是一個基礎(chǔ)通信協(xié)議,它按照一種請求
20、一種請求/ /響應(yīng)格式來進行。響應(yīng)格式來進行。l(4)(4)對等點信息協(xié)議對等點信息協(xié)議Peer Information Protocol(PIP)Peer Information Protocol(PIP) 用于獲得其他用于獲得其他PeerPeer的狀態(tài)信息的狀態(tài)信息, ,包括更新時間、狀態(tài)包括更新時間、狀態(tài)等。該協(xié)議可以被擴展來提供對等。該協(xié)議可以被擴展來提供對PeerPeer的監(jiān)視和控制。的監(jiān)視和控制。 貴州大學(xué)計算機軟件與理論研究所貴州大學(xué)計算機軟件與理論研究所17l (5)(5)端點路由協(xié)議端點路由協(xié)議Peer Endpoint Protocol(PEP)Peer Endpoint
21、Protocol(PEP) 通過該協(xié)議通過該協(xié)議PeerPeer以發(fā)送消息的形式獲得一條路由路徑,它以發(fā)送消息的形式獲得一條路由路徑,它使用使用PeerPeer間的網(wǎng)關(guān)來建立一條包含一個或多個適合建立管道間的網(wǎng)關(guān)來建立一條包含一個或多個適合建立管道的管道協(xié)議組成的通路。管道綁定協(xié)議借助此的管道協(xié)議組成的通路。管道綁定協(xié)議借助此PeerPeer列表來建列表來建立立PeerPeer間的路由。間的路由。l (6)(6)集合點協(xié)議集合點協(xié)議Rendezvous Protocol(RVP)Rendezvous Protocol(RVP) 通過該協(xié)議通過該協(xié)議PeerPeer可以對一個服務(wù)訂閱或者被訂閱。
22、集合點可以對一個服務(wù)訂閱或者被訂閱。集合點協(xié)議負責(zé)在協(xié)議負責(zé)在JXTAJXTA對等組內(nèi)傳播消息,它為對等組內(nèi)傳播消息,它為PeerPeer在組內(nèi)接收和在組內(nèi)接收和發(fā)送消息并且控制消息和如何傳播定義了一個基本的協(xié)議。發(fā)送消息并且控制消息和如何傳播定義了一個基本的協(xié)議。貴州大學(xué)計算機軟件與理論研究所貴州大學(xué)計算機軟件與理論研究所18l 對等點對等點(Peer)(Peer):PeerPeer是一個虛擬通信點,一臺設(shè)備上可是一個虛擬通信點,一臺設(shè)備上可以有多個以有多個PeerPeer。PeerPeer可以使用網(wǎng)絡(luò)提供的基本服務(wù),與可以使用網(wǎng)絡(luò)提供的基本服務(wù),與特定的網(wǎng)絡(luò)服務(wù)聯(lián)系得很緊密,如特定的網(wǎng)絡(luò)服
23、務(wù)聯(lián)系得很緊密,如rendezvous(rendezvous(集合點集合點服務(wù)服務(wù)) ),routes(routes(路由服務(wù)路由服務(wù)) ),gateway(gateway(網(wǎng)關(guān)服務(wù)網(wǎng)關(guān)服務(wù)) )等等l 對等組對等組(Peer Group ):(Peer Group ):對等組是一種組織對等組是一種組織PeerPeer并且發(fā)布并且發(fā)布組內(nèi)的特定服務(wù)的方式。對等組可以創(chuàng)建、加入和退出,組內(nèi)的特定服務(wù)的方式。對等組可以創(chuàng)建、加入和退出,也可以更新一個組成員的關(guān)系。還可以對也可以更新一個組成員的關(guān)系。還可以對PeerPeer成員進行成員進行安全、隱私等方面的一些限制。安全、隱私等方面的一些限制。貴州
24、大學(xué)計算機軟件與理論研究所貴州大學(xué)計算機軟件與理論研究所19l 端點端點(Endpoint):(Endpoint):一個端點就是實現(xiàn)了特定通信協(xié)議的一個端點就是實現(xiàn)了特定通信協(xié)議的PeerPeer的地址。端點不一定要是物理地址,它可以允許物的地址。端點不一定要是物理地址,它可以允許物理地址發(fā)生變化,一個理地址發(fā)生變化,一個PeerPeer可以具有多個端點,這樣可可以具有多個端點,這樣可以通過不同的協(xié)議與其他以通過不同的協(xié)議與其他PeerPeer通信。通信。l 管道管道(Pipe)(Pipe):PeerPeer之間的虛擬通道。因為防火墻和其他之間的虛擬通道。因為防火墻和其他障礙的存在,許多障礙的
25、存在,許多PeerPeer并不能直接連接。這時,管道更并不能直接連接。這時,管道更像一個在多種通信協(xié)議之上的虛擬層,可以通過起網(wǎng)關(guān)像一個在多種通信協(xié)議之上的虛擬層,可以通過起網(wǎng)關(guān)作用的作用的PeerPeer對通信提供中繼支持。對通信提供中繼支持。貴州大學(xué)計算機軟件與理論研究所貴州大學(xué)計算機軟件與理論研究所20l 廣告廣告(Advertisement ):(Advertisement ):一個廣告就是一個一個廣告就是一個XMLXML文檔,用文檔,用來描述來描述JXTAJXTA的消息、的消息、PeerPeer、對等組或者服務(wù)等、對等組或者服務(wù)等, ,廣告用廣告用來交換來交換JXTAJXTA網(wǎng)絡(luò)上可
26、以獲得的任何信息。網(wǎng)絡(luò)上可以獲得的任何信息。l 集合點集合點(Rendezvous Peer):(Rendezvous Peer):是一個能夠處理來自其他是一個能夠處理來自其他PeerPeer請求的請求的PeerPeer。集合點通常擁有更多資源,并且可以。集合點通常擁有更多資源,并且可以存儲大量的有關(guān)它周圍存儲大量的有關(guān)它周圍PeerPeer的信息。主要目的就是為了的信息。主要目的就是為了方便在本地網(wǎng)絡(luò)之外搜索廣告。方便在本地網(wǎng)絡(luò)之外搜索廣告。貴州大學(xué)計算機軟件與理論研究所貴州大學(xué)計算機軟件與理論研究所21lP2P網(wǎng)絡(luò)網(wǎng)絡(luò) lJXTA平臺平臺n系統(tǒng)設(shè)計系統(tǒng)設(shè)計l工作總結(jié)工作總結(jié)貴州大學(xué)計算機軟
27、件與理論研究所貴州大學(xué)計算機軟件與理論研究所22l 本系統(tǒng)完全基于本系統(tǒng)完全基于JXTA平臺開發(fā),所使用的開發(fā)平臺開發(fā),所使用的開發(fā)語言是語言是Java ,主要是實現(xiàn)對等點在網(wǎng)絡(luò)中互相發(fā),主要是實現(xiàn)對等點在網(wǎng)絡(luò)中互相發(fā)現(xiàn),然后進行通信。系統(tǒng)主要分為對等點發(fā)布、現(xiàn),然后進行通信。系統(tǒng)主要分為對等點發(fā)布、對等點發(fā)現(xiàn)、對等點通信三個模塊,其中發(fā)現(xiàn)模對等點發(fā)現(xiàn)、對等點通信三個模塊,其中發(fā)現(xiàn)模塊和通信模塊以線程啟動。塊和通信模塊以線程啟動。貴州大學(xué)計算機軟件與理論研究所貴州大學(xué)計算機軟件與理論研究所23l 發(fā)布模塊發(fā)布模塊 對等點的發(fā)布是通過創(chuàng)建模塊規(guī)范廣告和管道廣對等點的發(fā)布是通過創(chuàng)建模塊規(guī)范廣告和管
28、道廣告并且發(fā)布模塊規(guī)范廣告實現(xiàn)的。告并且發(fā)布模塊規(guī)范廣告實現(xiàn)的。 在創(chuàng)建模塊規(guī)范廣告和管道廣告后,接著在對等在創(chuàng)建模塊規(guī)范廣告和管道廣告后,接著在對等組內(nèi)利用發(fā)現(xiàn)服務(wù)的組內(nèi)利用發(fā)現(xiàn)服務(wù)的publish()和和remotePublish()方法將方法將模塊規(guī)范廣告進行發(fā)布,這樣可以讓其他點在查找的模塊規(guī)范廣告進行發(fā)布,這樣可以讓其他點在查找的時候能夠找到這個點。接著用管道服務(wù)來創(chuàng)建相關(guān)聯(lián)時候能夠找到這個點。接著用管道服務(wù)來創(chuàng)建相關(guān)聯(lián)的輸入管道端點,然后作為主線程監(jiān)聽通過此管道接的輸入管道端點,然后作為主線程監(jiān)聽通過此管道接收到的信息。通過這一過程就在對等組中加入了這個收到的信息。通過這一過程就在
29、對等組中加入了這個點,并且將這個點的信息發(fā)布到了對等組內(nèi),等待著點,并且將這個點的信息發(fā)布到了對等組內(nèi),等待著要與之通信的消息的到來。要與之通信的消息的到來。貴州大學(xué)計算機軟件與理論研究所貴州大學(xué)計算機軟件與理論研究所24l 32 發(fā)現(xiàn)模塊發(fā)現(xiàn)模塊 在在JXTA的的Java實現(xiàn)中實現(xiàn)中DiscoveryService接口接口為開發(fā)人員提供了簡單的方法來發(fā)送發(fā)現(xiàn)請求,為開發(fā)人員提供了簡單的方法來發(fā)送發(fā)現(xiàn)請求,其中廣告是對等點之間各種信息交流的基本單元,其中廣告是對等點之間各種信息交流的基本單元,發(fā)現(xiàn)其他對等點及其資源的問題就是發(fā)現(xiàn)描述各發(fā)現(xiàn)其他對等點及其資源的問題就是發(fā)現(xiàn)描述各資源的廣告的問題,
30、只要找到對應(yīng)的廣告,就相資源的廣告的問題,只要找到對應(yīng)的廣告,就相當于找到了對等點。當于找到了對等點。貴州大學(xué)計算機軟件與理論研究所貴州大學(xué)計算機軟件與理論研究所25l 對等點互相發(fā)現(xiàn)的過程如下:對等點互相發(fā)現(xiàn)的過程如下: 1. 1. Peer1Peer1給所有已知的普通點和集合點發(fā)送一個發(fā)現(xiàn)查詢請求。給所有已知的普通點和集合點發(fā)送一個發(fā)現(xiàn)查詢請求。 2. 2. 收到請求的集合點對查找請求進行處理,并返回一個發(fā)收到請求的集合點對查找請求進行處理,并返回一個發(fā) 現(xiàn)現(xiàn)響應(yīng)信息,其中包括它緩存中的廣告,并把這個查找請求廣播給響應(yīng)信息,其中包括它緩存中的廣告,并把這個查找請求廣播給所有知道的對等點。所
31、有知道的對等點。 3 3收到查找請求的普通點搜索本地緩存尋找匹配的廣告如果找收到查找請求的普通點搜索本地緩存尋找匹配的廣告如果找到,就直接給最初的請求點發(fā)送一個發(fā)現(xiàn)響應(yīng)信息。到,就直接給最初的請求點發(fā)送一個發(fā)現(xiàn)響應(yīng)信息。貴州大學(xué)計算機軟件與理論研究所貴州大學(xué)計算機軟件與理論研究所26l 通信模塊通信模塊 在在JXTAJXTA網(wǎng)絡(luò)中有管道負責(zé)向遠程對等點發(fā)送數(shù)據(jù)和接網(wǎng)絡(luò)中有管道負責(zé)向遠程對等點發(fā)送數(shù)據(jù)和接收數(shù)據(jù)。在管道實際應(yīng)用之前,必須先綁定到一個對等收數(shù)據(jù)。在管道實際應(yīng)用之前,必須先綁定到一個對等點的端點,綁定之后,點的端點,綁定之后,PeerPeer可以創(chuàng)建可以創(chuàng)建Input PipeInp
32、ut Pipe來接收來接收數(shù)據(jù)或創(chuàng)建數(shù)據(jù)或創(chuàng)建Output PipeOutput Pipe來發(fā)送數(shù)據(jù)。來發(fā)送數(shù)據(jù)。 貴州大學(xué)計算機軟件與理論研究所貴州大學(xué)計算機軟件與理論研究所27l33 通信模塊通信模塊 對等點間的通信過程如下:對等點間的通信過程如下: 1 1 對等點對等點1 1根據(jù)管道廣告創(chuàng)建一個輸入管道,并等待消息的到達,根據(jù)管道廣告創(chuàng)建一個輸入管道,并等待消息的到達, 這一步本系統(tǒng)在發(fā)布對等點的時候就先創(chuàng)建了輸入管道,然后這一步本系統(tǒng)在發(fā)布對等點的時候就先創(chuàng)建了輸入管道,然后 等待著通信請求。等待著通信請求。 2 2 對等點對等點2 2得到對等點得到對等點1 1的管道廣告,想給對等點的管道廣告,想給對等點1 1發(fā)送消息,它需發(fā)送消息,它需 要創(chuàng)建一個對應(yīng)該管道廣告的輸出管道,首先,它會給所有知要創(chuàng)建一個對應(yīng)該管道廣告的輸出管道,首先,它會給所有知 道的對等點和集合點發(fā)送一個管道綁定消息道的對等點和集合點發(fā)送一個管道綁定消息 3 3 對等點對等點1 1收到管道綁定消息后,檢查它的緩存看看是否有匹配的收到管道綁定消息后,檢查它的緩存看看是否有匹配的 管道,如果有,它就回復(fù)一個管道綁定回復(fù)信息,其中包含它管道,如果有,它就回復(fù)一個管道綁定回復(fù)信息,其中包
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 石河子大學(xué)《西方法律思想史》2021-2022學(xué)年第一學(xué)期期末試卷
- 石河子大學(xué)《生態(tài)工程學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 石河子大學(xué)《基礎(chǔ)工程》2023-2024學(xué)年第一學(xué)期期末試卷
- 石河子大學(xué)《電子技術(shù)》2022-2023學(xué)年期末試卷
- 沈陽理工大學(xué)《信號變換》2021-2022學(xué)年第一學(xué)期期末試卷
- 沈陽理工大學(xué)《計算機網(wǎng)絡(luò)與通信》2022-2023學(xué)年期末試卷
- 溫病息風(fēng)止痙法
- 消毒設(shè)備維護管理
- 沈陽理工大學(xué)《光纖傳感技術(shù)》2023-2024學(xué)年第一學(xué)期期末試卷
- 廣告合同高空作業(yè)免責(zé)協(xié)議書
- 發(fā)現(xiàn)生活中的美-完整版PPT
- 小學(xué)道德與法治人教三年級上冊第三單元安全護我成長-《遭遇陌生人》教案
- CAMDS操作方法及使用技巧
- 平狄克《微觀經(jīng)濟學(xué)》(第8版)筆記和課后習(xí)題詳解
- 最優(yōu)化理論與算法課程教學(xué)大綱
- 2022年湖北省武漢市江岸區(qū)育才第二小學(xué)六上期中數(shù)學(xué)試卷
- (最新版)中小學(xué)思政課一體化建設(shè)實施方案三篇
- PSA提氫裝置操作規(guī)程
- 水工隧洞概述(67頁清楚明了)
- 計算機維修工技能考核試卷
- 2020年四川省德陽市高三一診考試地理試卷(Word版,含答案)
評論
0/150
提交評論