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