摘 要:隨著網(wǎng)絡(luò)日益的廣泛化,人們對(duì)信息的需求量越來(lái)越大。在強(qiáng)大的信息沖擊下,P2P適時(shí)地出現(xiàn)了,但對(duì)于任何一個(gè)可擴(kuò)展的P2P網(wǎng)絡(luò)而言,限制帶寬和擴(kuò)展節(jié)點(diǎn)兩方面取得平衡是一個(gè)很重要的需求。本文討論了P2P網(wǎng)絡(luò)資源檢索性能的帶寬可擴(kuò)展性,對(duì)幾種優(yōu)化資源檢索的解決辦法做了分析,并提出了資源優(yōu)先檢索的思想。
關(guān)鍵字:P2P;可擴(kuò)展性;資源優(yōu)先檢索
1 前言
P2P(peer-to-peer),即對(duì)等網(wǎng)絡(luò)或?qū)Φ扔?jì)算,網(wǎng)絡(luò)的參與者共享他們所擁有的一部分硬件資源(處理能力、存儲(chǔ)能力、網(wǎng)絡(luò)連接能力、打印機(jī)等),這些共享資源通過(guò)網(wǎng)絡(luò)提供服務(wù)和內(nèi)容,能被其它對(duì)等節(jié)點(diǎn)(Peer)直接訪問(wèn)而無(wú)需經(jīng)過(guò)中間實(shí)體。P2P體現(xiàn)在對(duì)等性,它是一種網(wǎng)絡(luò)模型,由大量高度動(dòng)態(tài)的節(jié)點(diǎn)組成。網(wǎng)絡(luò)中的節(jié)點(diǎn)都是對(duì)等的,同時(shí)是動(dòng)態(tài)的,可隨時(shí)加入或退出,并具有相同的能力。與傳統(tǒng)的C/S網(wǎng)絡(luò)結(jié)構(gòu)的本質(zhì)區(qū)別是,整個(gè)網(wǎng)絡(luò)不存在中心節(jié)點(diǎn)。
2 P2P動(dòng)態(tài)網(wǎng)絡(luò)中對(duì)等節(jié)點(diǎn)和資源檢索
讓對(duì)等節(jié)點(diǎn)發(fā)現(xiàn)和使用相互提供功能的技術(shù),可能是P2P技術(shù)的最大特點(diǎn)之一,同時(shí)也是有別于C/S結(jié)構(gòu)的網(wǎng)絡(luò)技術(shù)的最為明顯的標(biāo)志之一了。目前,資源的定位一般采用的是"地址查詢"的方法,即:每個(gè)資源有一個(gè)全局唯一標(biāo)識(shí)符OID和一個(gè)包含其所在地址的指針P,系統(tǒng)將
2.1 集中目錄式
在集中目錄式(Central Index Server)中,有一個(gè)類似于服務(wù)器的節(jié)點(diǎn)集中提供資源索引信息,。當(dāng)用戶共享資源時(shí),需將資源的
2.2 泛洪請(qǐng)求式
與集中目錄式不同,泛洪請(qǐng)求式(Flooding Request)沒(méi)有中央目錄服務(wù)器,用戶的請(qǐng)求通過(guò)所有連接的節(jié)點(diǎn)傳遞,這些節(jié)點(diǎn)或者響應(yīng)該請(qǐng)求,或者在不能滿足請(qǐng)求時(shí),將該請(qǐng)求向與自己相連的其他節(jié)點(diǎn)廣播,直到請(qǐng)求得到響應(yīng)為止(泛洪)。Gnutella是泛洪的經(jīng)典之作,Gnutella協(xié)議設(shè)置了三種機(jī)制來(lái)控制消息數(shù)量的指數(shù)增長(zhǎng)。
機(jī)制一:消息生存時(shí)間(Time-to-Live簡(jiǎn)稱TTL)
機(jī)制二:消息的唯一標(biāo)識(shí)符(Unique Message Identification簡(jiǎn)稱UID).
機(jī)制三:路徑標(biāo)識(shí)符(Path Identification)。
以上三個(gè)控制機(jī)制保證了消息在網(wǎng)絡(luò)中不會(huì)被無(wú)限制的擴(kuò)散,從而確保Gnutella網(wǎng)絡(luò)可以正常的運(yùn)行。
3 P2P動(dòng)態(tài)網(wǎng)絡(luò)帶寬的可擴(kuò)展性
對(duì)于任何一個(gè)可擴(kuò)展的P2P網(wǎng)絡(luò)而言,限制帶寬和擴(kuò)展節(jié)點(diǎn)兩方面取得平衡是一個(gè)很重要的需求。盡管P2P網(wǎng)絡(luò)具有節(jié)電可擴(kuò)展的特性,但是隨著節(jié)點(diǎn)擴(kuò)展,相應(yīng)的帶寬會(huì)被更多的占據(jù)。對(duì)于資源檢索,如何更好的利用帶寬和提高檢索效率是我們亟待解決的課題。目前的幾種檢索方式有:非結(jié)構(gòu)化P2P網(wǎng)絡(luò)中的搜索技術(shù);結(jié)構(gòu)化P2P網(wǎng)絡(luò)中的搜索技術(shù);基于興趣局部性優(yōu)化的P2P搜索。
3.1 資源檢索過(guò)程的解決方案
對(duì)任何一個(gè)可擴(kuò)展的P2P網(wǎng)絡(luò)而言,在連接位于不同地理位置的節(jié)點(diǎn)和限制過(guò)多的消耗帶寬兩方面都取得平衡是一個(gè)非常重要的需求。目前存在幾種可用于優(yōu)化資源檢索過(guò)程的解決方案,并對(duì)這些方案進(jìn)行了分析:
使用路徑的多樣性來(lái)以更高的效率到達(dá)虛擬空間內(nèi)更大范圍內(nèi)的對(duì)等節(jié)點(diǎn)上。使用路徑的多樣性,對(duì)于擴(kuò)展帶寬增加檢索資源,具有很重要的作用。但是同時(shí),增加了算法的復(fù)雜性,同時(shí)可能會(huì)帶來(lái)檢索延時(shí)。通過(guò)使用特殊目的的對(duì)等表產(chǎn)生路由表的方式來(lái)最小化路由表的尺寸。
路由表的大小可能會(huì)影響路徑檢索的能力,但是卻提高了檢索的效率,降低了帶寬的消耗。但是基于P2P網(wǎng)絡(luò)的動(dòng)態(tài)性,在緩沖陣列發(fā)生較大變化時(shí)(這在P2P網(wǎng)絡(luò)中非常常見(jiàn)),原有的URL和代理之間的對(duì)應(yīng)關(guān)系可能發(fā)生改變,從而使得原有的配置文件失效。
禁止資源檢索請(qǐng)求和最小心跳注冊(cè)次數(shù)。心跳注冊(cè)即每隔一段時(shí)間,與對(duì)等節(jié)點(diǎn)通信并注冊(cè)節(jié)點(diǎn)信息,以便及時(shí)更新對(duì)等節(jié)點(diǎn)的資源信息。隨著心跳注冊(cè)次數(shù)的減少,在某種程度上可以減少帶寬消耗。另外,禁止資源檢索請(qǐng)求可以減少?gòu)V播對(duì)帶寬的吞噬,但在另一方面卻不能夠及時(shí)地更新資源,使得檢索的效率降低。
3.2 資源優(yōu)先檢索
對(duì)于監(jiān)控到的對(duì)等節(jié)點(diǎn)的資源使用情況,可以確定后面的查詢和資源檢索情況。對(duì)于帶寬情況及響應(yīng)相關(guān)參數(shù)值可以創(chuàng)建一個(gè)關(guān)于主題或資源檢索的優(yōu)先順序列表。對(duì)于使用資源的情況,當(dāng)某些對(duì)等節(jié)點(diǎn)具有這些資源的參數(shù)值很高,那么則優(yōu)先查詢這些對(duì)等節(jié)點(diǎn),如果查詢這些優(yōu)先級(jí)高的節(jié)點(diǎn)失敗的時(shí)候,才需要查詢參數(shù)值較低的節(jié)點(diǎn)。
這種技術(shù)的主要優(yōu)點(diǎn)是:對(duì)等節(jié)點(diǎn)組織成對(duì)等節(jié)點(diǎn)集群,形成能夠滿足某種類型信息的資源檢索請(qǐng)求的對(duì)等節(jié)點(diǎn)組,使對(duì)等節(jié)點(diǎn)對(duì)資源的檢索更有效率。此外,對(duì)等節(jié)點(diǎn)集群對(duì)限制節(jié)點(diǎn)所使用的數(shù)據(jù)包的數(shù)量有著全面的影響,從而對(duì)為獲得某個(gè)對(duì)等節(jié)點(diǎn)所需的特定的響應(yīng)消息所需的網(wǎng)絡(luò)帶寬有著全局性的影響。缺點(diǎn)是:對(duì)參數(shù)值較低的對(duì)等節(jié)點(diǎn)利用率較低,浪費(fèi)一部分可用資源。
TCP協(xié)議主要是提高消息傳輸?shù)目煽啃?那么對(duì)于集中目錄式的資源檢索方式,基于TCP協(xié)議的消息傳輸無(wú)疑是最合適的選擇。這種機(jī)制的安全性不高,集中的服務(wù)器必然是系統(tǒng)的瓶頸也會(huì)是系統(tǒng)的單一故障點(diǎn)。
Napster就是基于集中式目錄機(jī)制的,并且是基于TCP協(xié)議的。
在泛洪請(qǐng)求式資源檢索定位機(jī)制中,由于系統(tǒng)的冗余,任何的一個(gè)對(duì)等節(jié)點(diǎn)的失效都不會(huì)影響到整個(gè)網(wǎng)絡(luò),因此UDP協(xié)議很適應(yīng)這種情況。UDP的傳輸效率非常高,很適合泛洪請(qǐng)求式資源檢索機(jī)制。但是這種基于UDP協(xié)議的檢索消耗了帶寬,加長(zhǎng)了信息的等待時(shí)間。而且UDP協(xié)議本身是不可靠的傳輸,所以對(duì)于信息檢索的可靠性有待提高。
結(jié)束語(yǔ)
由于P2P技術(shù)的飛速發(fā)展,基于P2P的軟件越來(lái)越多,應(yīng)用越來(lái)越廣。帶寬可擴(kuò)展性也成為研究的熱點(diǎn),人們對(duì)資源檢索的研究也逐漸深入。
本文提出了資源優(yōu)先檢索的思想,在資源檢索與帶寬可擴(kuò)展兩方面求得一個(gè)相對(duì)的平衡。同時(shí)對(duì)資源檢索過(guò)程的方案作了概括性的分析,綜合一些方案我們能夠在帶寬可擴(kuò)展性方面取得更大的突破。這是一項(xiàng)很有潛力也很有價(jià)值的研究,我們將一如既往地研究下去。
參考文獻(xiàn)
[1].Tassiulas and A.Ephremides,Stability properties of constrained queueing systems and scheduling policies for maximum throughput in multihop radio networks.IEEE Transactions on Automatic Control,Vol 37,No 12,Dec.1992,pp:1936~1948
[2]Robert Flenner,Michael Abbott,Toufic Boubez.JAVA P2P 技術(shù)內(nèi)幕.北京:人民郵電出版社,2003.
[3]Lv Q,Cao P,Cohen E,et al.Search and Replication in Unstructured Peer-to-Peer Networks.Proc 16th ACM Int'l Conf Supercomputing,2002.
[4]楊天路,劉宇宏等.P2P網(wǎng)絡(luò)技術(shù)原理與系統(tǒng)開發(fā)案例.北京:人民郵電出版社,2007.
[5]Gribble S,Halevy A,Ives Z,et al.What can databases do for peer-to-peer.In:WebDB,California,USA,2001.
[6]羅杰文.Peer-To-Peer綜述.中科院計(jì)算機(jī)研究所
作者簡(jiǎn)介: 曲志明(1972-),女 (滿族),河北省承德市隆化縣第一中學(xué)信息技術(shù)教研組,中學(xué)一級(jí)教師,主要研究方向:計(jì)算機(jī)應(yīng)用。