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