??? 摘? 要: 根據(jù)資源在網(wǎng)絡(luò)上的分布特性,,在混合式P2P結(jié)構(gòu)的基礎(chǔ)上設(shè)計(jì)了P2P-Grid物理結(jié)構(gòu)模型,。實(shí)驗(yàn)證明,,基于這種資源組織模式的資源查找所消耗的時(shí)間相對(duì)單一資源目錄樹而言,查找時(shí)間明顯縮短,。
??? 關(guān)鍵詞: P2P-Grid模型? Grid-Peer? 資源組織? 資源發(fā)現(xiàn)? 資源組
?
??? 目前,對(duì)網(wǎng)格和P2P環(huán)境下資源發(fā)現(xiàn)進(jìn)行研究的論文很多,,也提出了一些有效的解決辦法,。而對(duì)真正決定資源查找效率的資源組織方法的研究則很少,結(jié)合P2P與Grid兩種新型網(wǎng)絡(luò)結(jié)構(gòu)的P2P-Grid方面的研究更少,。P2P-Grid結(jié)構(gòu)是作者在考慮到現(xiàn)階段不同地區(qū)網(wǎng)絡(luò)之間的通信速度遠(yuǎn)遠(yuǎn)低于集群或局域網(wǎng)內(nèi)部的通信速度以及網(wǎng)絡(luò)環(huán)境下資源分布不均勻而在混合式P2P結(jié)構(gòu)的基礎(chǔ)上提出來的,。雖然兩者都涉及到對(duì)虛擬社區(qū)內(nèi)共享資源的組織,且都采用較為先進(jìn)的技術(shù),,但二者有明顯不同,。網(wǎng)格強(qiáng)調(diào)結(jié)構(gòu)健壯性,而P2P則恰好相反,;網(wǎng)格系統(tǒng)整合的資源功能更加強(qiáng)大,,而P2P更能夠有效地提高互聯(lián)網(wǎng)邊緣普通PC的利用率,這也恰恰是網(wǎng)格的最終目標(biāo),;網(wǎng)格動(dòng)態(tài)性的本質(zhì)需要容錯(cuò)機(jī)制,,在執(zhí)行高度分布的程序時(shí),需要一種可靠性和容錯(cuò)機(jī)制保證程序的正確運(yùn)行,,而P2P系統(tǒng)具有廣泛分布性,,可能會(huì)避免一些關(guān)鍵性的失敗。在局部范圍內(nèi)把地理位置彼此相近的資源構(gòu)造成規(guī)模適當(dāng)?shù)木W(wǎng)格系統(tǒng),。全局上把這些網(wǎng)格系統(tǒng)看作是P2P-Grid的Grid-Peer(相當(dāng)于混合式P2P結(jié)構(gòu)中的Super-Peer),,并使用P2P技術(shù)組織這些Grid-Peer資源,從而充分體現(xiàn)兩者的優(yōu)點(diǎn),。在局部網(wǎng)格系統(tǒng)集中的高效率搜索和Grid-Peer之間健壯的分布式搜索之間達(dá)成一種平衡機(jī)制,,且可有效地避免單一網(wǎng)格系統(tǒng)的瓶頸產(chǎn)生。
1? 相關(guān)工作
??? Gondor的匹配器[1]使用集中式組織方式組織資源,,負(fù)責(zé)資源提供者和資源請(qǐng)求者之間需求的匹配,。Adriana Iamnitchi等人使用P2P模式分布式組織資源[2],并使用請(qǐng)求向前搜索的策略發(fā)現(xiàn)資源,。中科院的織女星網(wǎng)格項(xiàng)目研究了基于路由轉(zhuǎn)發(fā)模型的資源發(fā)現(xiàn)方法[3]和面向資源發(fā)現(xiàn)的VEGA體系結(jié)構(gòu)[4],。
2? P2P-Grid模型研究與設(shè)計(jì)
2.1 P2P-Grid模型研究
??? 根據(jù)網(wǎng)絡(luò)環(huán)境下資源的廣泛分布性及其最終面向普通計(jì)算機(jī)用戶提供計(jì)算機(jī)能力的目標(biāo),,為避免單一網(wǎng)格系統(tǒng)上產(chǎn)生瓶頸,基于P2P和Grid的互補(bǔ)性,,采用P2P-Grid模型[7]來組織網(wǎng)絡(luò)環(huán)境下的資源,。根據(jù)銀行系統(tǒng)的運(yùn)作模式,采用“分而治之”的思想,,把“單一網(wǎng)格系統(tǒng)”分割成若干個(gè)處于對(duì)等地位的“小規(guī)模網(wǎng)格”系統(tǒng),,本文稱為Grid-Peer。這些Grid-Peer可以采用不同的網(wǎng)格技術(shù)來組織本系統(tǒng)內(nèi)部的資源,,其交互方式采用分布式P2P技術(shù),。整個(gè)Grid-Peer具備較強(qiáng)的處理能力,可以完成本系統(tǒng)中絕大部分任務(wù)的資源需求,。若任務(wù)在某個(gè)Grid-Peer中不能完成,,則可以通過P2P技術(shù)轉(zhuǎn)移到可完成該任務(wù)的Grid-Peer中。
2.2 Grid-Peer系統(tǒng)地理位置的選擇
??? 網(wǎng)絡(luò)環(huán)境下的資源種類眾多,,數(shù)量龐大,。相對(duì)于要調(diào)度的任務(wù)而言,需要對(duì)這些資源進(jìn)行有序的組織,,并采取合理的措施進(jìn)行管理,,根據(jù)任務(wù)需求對(duì)它們進(jìn)行調(diào)度。為提高資源的利用率,,可采用類似于銀行系統(tǒng)建立或新增分行的模式,,在資源密集的地方優(yōu)先建立Grid-Peer。本文的Grid-Peer實(shí)際上是一個(gè)網(wǎng)格系統(tǒng),。但是相對(duì)于P2P系統(tǒng)而言,,只是其中的一個(gè)Peer。在P2P-Grid系統(tǒng)中,,最具有超級(jí)處理能力的Super-Peer管理一定數(shù)目的資源,。例如,銀行系統(tǒng)優(yōu)先在人流量比較集中的地方建立分行,,既能有效聚集閑散資金,,提高其業(yè)務(wù)處理能力,又可方便附近的居民,。這種思想同樣可應(yīng)用于P2P-Grid系統(tǒng),。P2P-Grid系統(tǒng)中的Grid-Peer優(yōu)先建立在網(wǎng)絡(luò)資源密集的地方,可以在本地范圍內(nèi)合理地整合資源,,減少共同處理一個(gè)任務(wù)的資源之間通信所消耗的時(shí)間,。同時(shí)本地用戶也可用更短的時(shí)間完成任務(wù)提交。當(dāng)系統(tǒng)返回結(jié)果時(shí),其平均通信時(shí)間也比較短,。
2.3 Grid-Peer系統(tǒng)層次功能模型研究
??? Grid-Peer相對(duì)于單獨(dú)的網(wǎng)格系統(tǒng)而言,,需要一個(gè)和其他Grid-Peer進(jìn)行交互的接口,代理被用來充當(dāng)這個(gè)角色,。實(shí)際上,,代理可以作為本地Grid-Peer的代理,其功能是接受用戶提交的任務(wù),,與其他Grid-Peer系統(tǒng)中的代理交互,,實(shí)現(xiàn)不同Grid-Peer之間的資源共享,負(fù)責(zé)任務(wù)在Grid-Peer系統(tǒng)之間的遷移,,從而達(dá)到多個(gè)Grid-Peer系統(tǒng)之間的負(fù)載均衡,。圖1為Grid-Peer系統(tǒng)功能模型(PC:個(gè)人計(jì)算機(jī),,HPC:高性能計(jì)算機(jī),,LAN:局域網(wǎng))。
?
??? 網(wǎng)格用戶可以向任何一個(gè)代理提出資源請(qǐng)求,。代理接受網(wǎng)格用戶的抽象任務(wù)信息包后,,查看其所需的資源信息,把它交給相應(yīng)的資源管理器處理,。資源管理器查詢某資源組隊(duì)列,,發(fā)現(xiàn)了多個(gè)資源后,選擇最適合的資源分配給任務(wù),。若沒有在資源組中查到任務(wù)需求的資源,,則查找性能較高的資源組或向代理返回“查找失敗”消息。代理收到“查找失敗”消息后,,向其他的代理傳送該任務(wù)的需求信息,,直到找到相應(yīng)的資源,或經(jīng)過一段的時(shí)間后,,以失敗結(jié)束這次資源查找過程,。
3? Grid-Peer中的資源組織
3.1 Grid-Peer與單一網(wǎng)格系統(tǒng)的區(qū)別
??? Grid-Peer與單一網(wǎng)格系統(tǒng)在規(guī)模和系統(tǒng)資源的組成上有很大區(qū)別。Grid-Peer的規(guī)模比單一網(wǎng)格系統(tǒng)小,。其主要特點(diǎn)是在系統(tǒng)的核心部分很少出現(xiàn)瓶頸現(xiàn)象,,它管理的資源在性能上很普通,可能是許許多多的PC機(jī),。另外一個(gè)顯著的區(qū)別就是具有和其他Grid-Peer進(jìn)行交互的接口,。Grid-Peer整合的資源地理位置之間的平均距離也比單一網(wǎng)格系統(tǒng)中的短,它組織的資源可以是高校中的某幢樓層里或整個(gè)校園中并包括其附近地區(qū)里的計(jì)算機(jī),,或其他設(shè)備,。
3.2 基本概念
??? 定義1 資源屬性值域R為某資源任一屬性值所有可能取值為實(shí)數(shù)的集合,R上的值域定義為VA={x|r1≤x≤r2,,x∈R,,r1∈R,,r2∈R},則令VA=[r1,,r2],,VA為R的子集,表示VA由所有介于r1(可以等于r1)和r2之間的實(shí)數(shù)組成,。
??? 定義2 資源組:資源屬性值在某個(gè)資源屬性值域范圍內(nèi)的資源集合,。
??? 定義3 計(jì)算能力:計(jì)算資源在單位時(shí)間內(nèi)運(yùn)算的次數(shù)。
??? 定義4 CPU==[1G,,2G],,CPU的主頻取值在1GB~2GB的范圍內(nèi)。
??? 定義5 Mem(內(nèi)存)==[64M,,128M]內(nèi)存容量取值在64MB~128MB之間,。
??? 性質(zhì)1 同一資源組中的資源具有的計(jì)算能力屬于規(guī)定該資源組CPU屬性值域的集合。
??? 性質(zhì)2 同一資源組中的資源具有的存儲(chǔ)容量屬于規(guī)定該資源組的內(nèi)存屬性值域的集合,。
3.3 資源組目錄樹
??? 資源的組織方式?jīng)Q定資源發(fā)現(xiàn),、資源匹配和資源調(diào)度等其他資源管理技術(shù)。而資源管理器為用戶選擇資源,、匹配資源請(qǐng)求與具體資源的方法有很多種,,不同方法會(huì)影響資源的利用率和系統(tǒng)開銷。P2P-Grid環(huán)境下的資源組織會(huì)影響到Grid-Peer的資源管理系統(tǒng)內(nèi)部模塊之間以及Grid-Peer系統(tǒng)之間的通信模式,,也會(huì)決定P2P-Grid資源管理系統(tǒng)是否可擴(kuò)充,。通常有集中式和分布式兩種資源組織方式。由于P2P-Grid系統(tǒng)本身是P2P技術(shù)與Grid技術(shù)的融合,,整體上可看做是一種分布的集中式系統(tǒng),。本文采用分布式與層次式結(jié)合的資源組織方式組織P2P-Grid環(huán)境下的資源。為了共享接入Grid-Peer中的資源,,應(yīng)注意資源接入到互聯(lián)網(wǎng)中的不同方式和不同種類:有的計(jì)算機(jī)通過其所在的局域網(wǎng)接入互聯(lián)網(wǎng),,而另外一些則直接接入互聯(lián)網(wǎng);有的是普通工作站,,另外的計(jì)算資源則是一些高性能計(jì)算機(jī),,資源使用方式很不相同。按照資源被接入到互聯(lián)網(wǎng)的方式,,把主要執(zhí)行計(jì)算的計(jì)算資源分為高性能計(jì)算機(jī),、PC和LAN中的計(jì)算機(jī)三個(gè)大類,分別用三個(gè)不同的服務(wù)器對(duì)這些資源進(jìn)行管理,。局部網(wǎng)格中還包括對(duì)這三大類資源屬性信息進(jìn)行管理的高性能計(jì)算資源管理器,、PC資源管理器和LAN資源管理器。Grid-Peer系統(tǒng)中使用分類的層次式資源組目錄樹記錄資源屬性信息。資源組由計(jì)算能力相當(dāng)?shù)馁Y源聚集而成,。
??? 分類層次式資源組目錄樹的邏輯組織是根據(jù)物理資源實(shí)際拓?fù)浣Y(jié)構(gòu)由資源向Grid-Peer注冊(cè)建立起來的,。資源組目錄樹第一層主干節(jié)點(diǎn)充當(dāng)三種不同類別的資源信息管理器。
??? 資源的組織形式如圖2和圖3所示,。用戶作業(yè)請(qǐng)求計(jì)算資源時(shí),,一般會(huì)指定所需資源的CPU、內(nèi)存和OS(操作系統(tǒng))的具體的屬性值所在的范圍,,在對(duì)計(jì)算資源分類時(shí)(如圖2中的PC,、LAN和HPC),可再細(xì)分多個(gè)子目錄,,分別由CPU,、內(nèi)存和操作系統(tǒng)的屬性值范圍確定。資源組目錄樹的葉子節(jié)點(diǎn)是屬于某資源組的資源,,其某些屬性值都在指定的范圍內(nèi),。查找資源時(shí)可快速準(zhǔn)確地找到某一屬性值范圍內(nèi)的資源集合,從而減少資源搜索的時(shí)間,。
?
?
??? 從圖2中可以看出,,Grid-Peer系統(tǒng)中的資源分為PC資源(一般是通過寬帶技術(shù)直接訪問互聯(lián)網(wǎng)),、LAN資源(作為一個(gè)小型的局域網(wǎng)絡(luò)實(shí)體通過局域網(wǎng)訪問互聯(lián)網(wǎng))和HPC資源,。圖2中的LAN 管理器的資源子樹如圖3所示。由于HPC 管理器的資源子樹和LAN管理器的資源子樹大同小異,,本文不再加以描述,。
??? 圖3與圖2顯著的區(qū)別是把LAN當(dāng)作一個(gè)整體,并且每個(gè)LAN擁有工作站的數(shù)目不同,,具有相同數(shù)量工作站的LAN都屬于同一個(gè)LAN資源組,。由于LAN中工作站之間可能出現(xiàn)的異構(gòu)性,確定了某個(gè)LAN中具體的工作站數(shù)目后,,繼續(xù)采用PC資源管理器中的PC資源組的組織方法,。其優(yōu)點(diǎn)是:一旦PC資源管理器太過忙碌,LAN資源管理器中工作站同樣可以當(dāng)作PC資源來運(yùn)行任務(wù),。
4? 資源發(fā)現(xiàn)
??? 把單一網(wǎng)格系統(tǒng)分割成許多Grid-Peer,,組成P2P-Grid系統(tǒng)。每個(gè)Grid-Peer系統(tǒng)管理資源的數(shù)目變少,,可以避免單一網(wǎng)格系統(tǒng)中出現(xiàn)的瓶頸現(xiàn)象,。當(dāng)某個(gè)Grid-Peer系統(tǒng)規(guī)模大到一定程度時(shí),可以把該Grid-Peer系統(tǒng)分割成兩個(gè)Grid-Peer系統(tǒng),。P2P-Grid系統(tǒng)中的許多Grid-Peer不僅可以同時(shí)工作,,而且,由于Grid-Peer規(guī)模適中,在任務(wù)處理,、資源發(fā)現(xiàn),、資源調(diào)度等方面能夠縮短處理時(shí)間,可進(jìn)一步提高整個(gè)P2P-Grid系統(tǒng)的效率,。
??? 采用分類的層次式資源組目錄樹模式組織Grid-Peer系統(tǒng)中的資源時(shí),,資源首先被分為三類:PC資源、LAN資源和HPC資源,。在每類資源構(gòu)成的子樹中,,把計(jì)算能力相當(dāng)?shù)馁Y源聚集起來保存在同一個(gè)資源組中,彼此之間可互為備份資源,。一旦運(yùn)行任務(wù)的資源出錯(cuò),,備份資源馬上可以接收遷移過來的任務(wù)并進(jìn)行工作,以保證用戶的QoS需求,。系統(tǒng)進(jìn)行資源查找時(shí),,其時(shí)間復(fù)雜度主要體現(xiàn)在對(duì)資源樹進(jìn)行層次遍歷上。由于資源各個(gè)屬性值的變化范圍不大(操作系統(tǒng)類型種類有限,,硬件中組件屬性取值一般都是相對(duì)應(yīng)的,,例如CPU主頻高,內(nèi)存容量也比較大),,所以在資源樹的某一層進(jìn)行遍歷時(shí),,比較次數(shù)較少,資源查找范圍相對(duì)于單一的資源樹而言縮小了,。
??? 對(duì)Grid-Peer系統(tǒng)中的PC資源和LAN資源的發(fā)現(xiàn)也進(jìn)行了研究,。試驗(yàn)環(huán)境采用Globus Toolkit 3.2建立了小型網(wǎng)格平臺(tái),其中有3臺(tái)IBM品牌機(jī),, CPU為2.66GHz,,內(nèi)存為256MB,1臺(tái)兼容機(jī),,CPU為266MHz,,內(nèi)存160MB。每臺(tái)計(jì)算機(jī)模擬成一個(gè)管理Grid-Peer系統(tǒng)中資源信息的服務(wù)器,,即資源管理器,。該資源管理器中保存有記錄資源屬性信息的資源組目錄樹,對(duì)Grid-Peer系統(tǒng)中的資源信息進(jìn)行管理,,主要就是對(duì)該資源組目錄樹進(jìn)行操作,。在這個(gè)模擬平臺(tái)上,對(duì)在資源組目錄樹和單一資源目錄樹中資源查找所消耗的時(shí)間進(jìn)行了研究,。圖4和圖5分別為查找單個(gè)資源和多個(gè)資源所消耗的時(shí)間,。
?
?
??? 圖4是針對(duì)資源組目錄樹和資源目錄樹(就是資源沒有進(jìn)行分類聚合)兩種不同模式的資源組織方式查找單個(gè)PC資源所消耗的時(shí)間,。從中可以看出,資源組目錄樹這種資源組織方式在Grid-Peer系統(tǒng)中的資源比較多的情況下,,其資源查找所消耗的時(shí)間相對(duì)資源目錄樹而言比較短,。但是,兩種資源組織方式隨著系統(tǒng)中注冊(cè)的資源數(shù)量的增加,、系統(tǒng)規(guī)模的變大,,其資源查找時(shí)間也明顯增加。
??? 圖5是查找資源組目錄樹中含有5個(gè)工作站的LAN資源所消耗的時(shí)間與在單一資源目錄樹中查找5個(gè)資源所消耗時(shí)間的比較,。隨著Grid-Peer系統(tǒng)規(guī)模的變大,,發(fā)現(xiàn)5個(gè)資源所消耗的時(shí)間也隨著增加,這與發(fā)現(xiàn)單個(gè)資源的情況是相同的,。從圖5可知,,在增加相同資源數(shù)目的情況下,資源組目錄樹中資源發(fā)現(xiàn)時(shí)間的增加量要小于在單一資源目錄樹中資源發(fā)現(xiàn)時(shí)間的增加量,。這是由于LAN資源被當(dāng)作一個(gè)整體時(shí),,LAN資源的數(shù)目增加相對(duì)單一資源目錄樹中把LAN中的每個(gè)工作站作為一個(gè)資源時(shí)資源數(shù)目增加得要少。
5? 結(jié)? 論
??? 隨著網(wǎng)格技術(shù)和P2P技術(shù)的成熟,,結(jié)合P2P和Grid的P2P-Grid也將成為高性能計(jì)算研究中的一個(gè)熱點(diǎn),。在研究了P2P-Grid的資源組織模型后發(fā)現(xiàn),采取層次式資源組模式的資源組目錄樹組織資源時(shí),,由于資源發(fā)現(xiàn)時(shí)間查找范圍縮小了,,其查找時(shí)間大大縮短,這無疑將會(huì)提高整個(gè)P2P-Grid的性能,。
參考文獻(xiàn)
1?? Raman R,,Livny M,,Solomon M.Matchmaking:distributed resource management for high throughput computing.In:Proc.of the 7th IEEE Int′l Symp.on High Performance?Distributed Computing.Chicago,,IL,USA,,1998
2?? Iamnitchi A,,F(xiàn)oster I.On Fully Decentralized Resource Discovery in Grid Environments.In:Craig A.Lee.Grid?Computing-Grid 2001,Germany:Springer,,2001
3?? Li W,,Xu ZW,Dong FP et al.Grid Resource Discovery? Based on a Routing-transgerring model.In:Manish?Parashar,,Grid Computing-Grid 2002,,Germany:Springer,2002
4?? Gong Y l,,Dong F P,,Li W et al.VEGA Infrastructure for? Resource Discovery in Grids.J Computu Sci.&Technol,, 2003;18(4)
5?? 徐志偉,,馮百明,,李偉.網(wǎng)格計(jì)算技術(shù).北京:電子工業(yè)出版社,2004
6?? 周曉,,陳鳴.基于散列值的廣域網(wǎng)服務(wù)發(fā)現(xiàn).軟件學(xué)報(bào),,2004;15(10)
7?? 葉從歡,,江武漢,,孫世新.P2P與Grid的結(jié)合:P2P-Grid模型研究.微型機(jī)與應(yīng)用,2005,;24(5)