鄭藝芳
摘 要:隨著計算機網絡的飛速發展,計算機技術也從傳統的單機運行發展到網絡、網格化發展,當前計算機網絡發展模式主要為:客戶端/服務器, 瀏覽器/服務器模式,這兩種模式都存在著對服務器要求非常高,海量信息調度、檢索存在著耗時高等問題,而peer-to-peer(P2P)正是針對此問題二提出的分布式計算模式。此種模式具有存儲內容集中、檢索方便、系統組織協調能力優良等特點。
關鍵詞:P2P技術;網絡信息檢索;研究
1 P2P技術概述
1.1 P2P定義
P2P是Peer-to-Peer(對等網絡,對等計算)的簡稱,中文譯名為對等互聯或者點對點技術,在P2P網絡中各個節點被稱為peer(對等體)。P2P是一種網絡模型,在這種網絡中所有的節點是對等的(稱為對等點),各節點無主從之分,具有相同的責任與能力并協同完成任務。對等點之間通過直接互連共享信息資源、處理器資源、存儲資源甚至高速緩存資源等,無需依賴集中式服務器或資源就可完成。
P2P網絡并不是一種專門的新興技術,而是假設在互聯網絡中的結構基礎?;ヂ摼W最基本的協議TCP/IP并沒有客戶機和服務器的概念,所有的設備都是通訊的平等的一端。在十年之前,所有的互聯網上的系統都同時具有服務器和客戶機的功能。當然,后來發展的那些架構在TCP/IP之上的軟件的確采用了客戶機/服務器的結構:瀏覽器和Web服務器,郵件客戶端和郵件服務器。但是,對于服務器來說,它們之間仍然是對等聯網的。以email為例,互聯網上并沒有一個巨大的、唯一的郵件服務器來處理所有的email,而是對等聯網的郵件服務器相互協作把email傳送到相應的服務器上去。另外用戶之間email則一直對等的聯絡渠道。
1.2 P2P發展的影響
由于各種信息資源的發展和不斷壯大,通過共享資源的方式來提升數據的傳送、文件共享的功能要求將會越來越高,而當前的應用系統采用的方式大都是用服務器共享的方式,這已經開始嚴重制約著信息傳遞的數據,因而P2P作為一種新的共享方式出現,成為了時代的寵兒,它為文件共享、分布式計算機和信息交流提供了一種更加靈活和高效的模式,也為信息安全帶來了新的挑戰。
2 基于P2P技術的網絡信息檢索
2.1 基于P2P技術的網絡信息檢索的提出
傳統的信息檢索基于C/S模式,在該模式中,數據的分發采用專門的服務器,多個客戶端都從此服務器獲取數據。這種模式的優點是:數據的一致性容易控制,系統也容易管理,但這種模式對于大規模網絡的環境容易造成性能瓶頸。在網絡邊緣信息不斷豐富的今天,我們必須在互聯網上設置擁有強大處理能力和高寬帶的高性能計算機,配合高檔的服務器軟件,再將大量的數據集中存放在上面。這種架構使我們對服務端的投入巨大,因此服務器的個數只能是有限的,這就使系統容易出現單一失效點。同時C/S模式使得互聯網中無論是信息還是資源均向同一方向集中,它的網絡優勢往往被局限于企業內部,制約了企業間的信息交流,而且網絡安全性較差也是一個不容忽視的問題。從目前公布的數據來看,容量最大的搜索引擎也不過是抓取了整個網頁數量的40%左右。傳統的集中式引擎無法勝任實時性強的海量信息檢索,P2P技術的蓬勃發展卻為信息檢索提供了全新的思路。在P2P網絡中,每個參與網絡的主機既是內容的消費者,又是內容的提供者,各個結點各自對自己本機上存儲的信息做索引,所有信息提供者一起構成一個龐大的分布式數據庫以供檢索,這可以有效解決動態網頁信息檢索的問題,同時P2P網絡中的每一個企業的信息點都是一個獨立的Peer節點,每個Peer節點之間進行對等通訊,避免了傳統C/S結構的低效和高成本,數據的集中處理又避免了P2P帶來的數據分散。
2.2 基于P2P技術的網絡信息檢索的原理
在P2P網絡中,每個參與的節點既是服務器又是客戶端,既是信息的提供者又是信息的消費者。P2P信息檢索的目的就是網絡中的任意節點都可以提交檢索的請求,然后這些檢索通過某種路由機制被路由到和檢索相關的節點上去,存儲有和該檢索相關信息的節點將會回應請求,把本地相關的內容以對等的形式直接傳送到請求節點上,示意圖見圖1。
圖中的檢索過程分為以下幾個階段:
每個節點在加入網絡的時候,會對存儲在本節點上的內容進行索引,以滿足本地內容檢索的目的。然后按某種預定的規則選擇一些節點作為自己的鄰居,加入到P2P網絡當中。
(1)發起者P提出檢索請求q,并將q發送給自己的鄰居。
(2)P的鄰居收到q后,再按照某種策略轉發給它在網絡中的其它鄰居節點。這樣,q就在整個網絡中傳播開來。
(3)收到請求q的節點如果存儲有相應內容信息,則將對應的內容返回。
2.3 基于P2P技術的網絡信息檢索的主要分類
P2P檢索主要分成3種類型:結構化的P2P、網絡的搜索技術以及針對這2種類型的改進技術。前出現的P2P系統具備足夠的語義,能夠處理復雜查詢,以稱為新一代的P2P檢索技術。
P2P信息檢索主要是要提高交互式作業方式、用戶透明度,拓寬信息檢索空間、提高信息檢索的準確性。
2.4 P2P檢索技術的方法
P2P查詢的關鍵技術包含比較廣泛,核心技術包括索引構造技術、路由策略及查詢優化等,下面將分別對它們進行介紹。
2.4.1 索引構造技術
索引構造技術直接影響P2P系統的路由策略以及系統的查詢效率,因此,構造具有豐富語義和高效的索引對于P2P系統是非常關鍵的,一般索引構造技術分成基于模式的索引和實例索引,模式索引為PDMS所特有,考慮了語義異構問題。實例索引包括:①通過散列將原始數據標識符映射到ID集合,再將ID集合映射到負責該ID的peer,可以具有多種拓撲形態的散列索引;②把數據庫中B+樹思想在P2P環境下進行擴展產生的樹形索引。實例索引有多種分布方法:本地分布、集中式分布和分布式分布。本地索引中各peer只維持對自己的數據的引用,而不管其他節點上的數據的信息;集中式索引需單個服務器上保存許多peer上數據的引用,索引是集中的,但數據是分布的;分布式索引指向目標的指針存放在多個peer上,可有效分散查詢負載和索引的存儲負載,具有更強的健壯性和可擴展性。
2.4.2 查詢優化
由于P2P網絡動態的特性,不能假定具備數據分布的全局視圖,也不能在這些網絡中采用靜態的拓撲和查詢計劃,使得提交的查詢不太可能在整個查詢處理過程中都保持原來的性質。為此,對查詢進行優化變得非常重要,這樣可以加快查詢執行的效率,同時減少網絡流量。
2.5 基于P2P技術的網絡信息檢索的特點
P2P系統具有自組織性、對稱性、可擴展性以及分布控制等優良特性。隨著P2P系統的廣泛應用,該系統被認為是未來分布式計算的關鍵技術,可以應用于數據共享、CPU周期共享、及時信息傳輸以及協同工作組件等方面,同時在搜索引擎、數據流管理、語義網、協作信息過濾等領域具有廣闊的應用前景。對P2P的研究主要集中在搜索、存儲、安全和應用4個方面,而搜索是P2P技術的核心。
P2P信息檢索通過分布式存儲和處理能力為大范圍的Web文件搜索提供可能,傳統式的搜索引擎對于數據的更新緩慢不能滿足用戶實時性要求。受網絡爬蟲采集信息能力的限制,傳統的搜索引擎很難進行深度采集深層次的網頁信息。與傳統的檢索技術相比較,基于P2P信息檢索技術有以下優點:(1)P2P信息檢索充分利用以大規模分布形式存在的信息。(2)彌補傳統搜索引擎無力深度挖掘網站信息的弱點。(3)挖掘移動終端的信息。(4)構建人性化的信息終端。
傳統的信息檢索,必須借助網絡檢索工具Internet上的信息極其豐富,這些信息分布在全世界不同的計算機主機上,基于超文本結構在Internet上,基于WWW的信息組織采用了超文本方式?;赑2P技術的信息檢索技術以人為本的理念使客戶使用起來更加方便、容易,檢索的更加徹底和透明。未來的P2P檢索技術主要是和3G技術,移動智能技術結合起來,使用戶深切感受到21世紀網絡時代的方便。
3 基于P2P技術的研究
3.1 基于P2P的網絡信息資源的檢索-搜索引擎的研究
3.1.1 Caching技術
在對等網絡中,索引信息的擴散是通過查詢來驅動的,成功的查詢結果被緩存下來,使得索引信息可以再網絡擴散開來。資源搜索效率可否再次成百倍地提高,即在用戶未提出問題時就為他準備好答案,Caching技術可以使資源效率達到10-100。盡管網絡資源無限爆炸,但每一個成員及其每一次查詢,所涉及到的回答域都是有限的,并且基本保持固定不變,這就是局部性原理。計算機體系結構中關鍵技術指令和數據在不久的將來可能被再次訪問,即下一程序指令在前條指令的概率非常大,因此,實踐局部性往往會引起對最近使用區域的集中訪問;空間局部性指的是一個進程訪問的各項進程彼此很近,即下一次程序指令在前條指令附近的概率非常大。前者就是程序Cache,后者就是數據Cache的理論依據。
3.1.2 分布式的Gnutella搜索機制
在Gnutella中,每個節點共享一些文件,并提供基于文件名的本地查詢操作。它使用消費洪泛的方式搜索其他節點上的文件。發起搜索操作的節點向所有鄰居節點發送Query消息,而接到Query消息的節點進行本地查詢,并把查詢進一步轉發給自己的所有鄰居。為避免無窮遞歸,每個搜索消息都有一個TTL域,它隨著轉發的進行而遞減,TTL為零的消息則不再被轉發。每個請求都有一個準一的標識號。已收到請求的節點如發現已處理過,則丟棄該請求。
Gnutella的搜索機制可以看出,個別節點失效對查詢結果影響較小,能動態適應網絡拓撲變化,允許節點動態加入或退出。
4 結束語
基于P2P對等檢索技術的發展將會為互聯網信息搜索技術提供出了全新的解決方案,它讓Internet上的共享方式提升到了一個新的水平,讓人們能夠以更方便、快捷的方式參與到網絡交互中去,讓人們能夠更好的體驗到數據共享、數據應用。
參考文獻
[1]劉化君.計算機網絡與通信[M].北京:高等教育出版社,2007.11.
[2]James F.Kurose,Keith W.Ross.Computer NetworkingATop-DownApproach.Chenming.第四版.機械工業出版社,2008.12.
[3]田口美帆.互聯網技術[M].科學出版社,2004.
[4]傅向華,馮博琴.主題驅動的P2P分布式信息搜索機制研究[J].小型微型計算機系統,2006.
[5]徐光明,沈云付.基于語義網的節點關聯的P2P搜索[Z].
[6]周晉,路海明,李衍達.用Small2World設計無組織P2P系統的路由算法[J].軟件學報,2004.
[7]凌波,陸志國,黃維維,等.PeerIS:基于Peer2to2Peer的信息檢索系統[J].軟件學報,2004.
[8]馮國富,毛鶯池,陸桑璐,等.PeerRank.一種無結構P2P資源發現策略[J].軟件學報,2006.
[9]何盈捷,王珊,杜小勇.純PeertoPeer環境下有效的Top2k查詢[J].軟件學報,2005.
[10]李治軍,廖明宏.基于信任的P2P真實性查詢及副本管理算法[J].軟件學報,2006.