李艷鵬 鐘軍凱 魏 慧
濟寧職業技術學院 山東濟寧 272037
P2P網絡中基于本體驅動的網格資源發現的研究
李艷鵬 鐘軍凱 魏 慧
濟寧職業技術學院 山東濟寧 272037
提出了一種新的語義網格資源發現方法。P2P網絡用來分發和查找資源目錄,每個點能夠提供資源描述和背景知識,能夠查找網絡中存在的資源信息。每個點都有自己的本體,該本體由網絡上知識傳播來完成,因此不需要一個中心本體來描述和匹配資源,具有很好的擴展性。
網格;資源管理;語義;本體;查找;分配
語義網格的目的是把語義本體和邏輯描述應用到網格中間設備中去。把本體應用到資源匹配中去,要求資源提供者和請求者必須具有相同的背景知識,且資源代理程序必須具有訪問本體域的權利。
資源代理程序訪問本體域需要相應的結構與之對應。筆者采用了基于本體的P2P網絡查找網格資源,該網絡利用傳統語義知識來處理分布式網格中的資源請求,并利用P2P網絡傳播概念知識。除了具有一般P2P網絡的分散化、易擴展、耐攻擊、高容錯及隱私性能好的優點外,該網絡還具有智能性,因為把本體引入到網格中,使資源之間能夠相互理解,從而能夠根據用戶的需求有效、動態、智能地聚合各種資源來滿足用戶的需要。
1.1 模型
文中采用的資源發現模型如圖1所示。

圖1 資源發現模型
該模型分為上下兩層,上層是P2P層,由多個PS服務組成,每個PS服務對應一個虛擬組織(VO),主要實現2個方面的功能:跨VO的資源發現和覆蓋網絡。下層是網格層,由多個VO組成,實現的功能有:資源聚合、VO內的資源發現、建立在PKI基礎上的身份認證和授權機制。
當用戶有查詢請求時,先向本地VO提出請求,本地VO根據用戶請求在本地的索引服務中查找,若找到匹配的資源則對資源進行分配和預約。否則,由本地VO中作業應用代理把請求提交到P2P層對應的節點,在此節點保存著鄰居節點的資源信息。在P2P層進行跨不同VO的資源查找,并把最終的結果返回到請求資源的應用代理處,根據情況做進一步處理。
1.2 模型中存在的問題及解決方法
上述模型需要解決如下兩個方面的問題:
(1)不知道哪個節點有資源匹配請求。
(2)節點可能自己也不知道是否具有匹配的資源,因為它們缺少本體域中信息的重要部分。
我們構造了一個能夠解決上述問題的P2P網絡(如圖2所示)。在該網絡中,所有節點的概念和信息都將在網絡中進行傳播。PS和CS服務的功能和前面模型中的功能一致,我們主要對VO內的節點進行設置。第一個節點的IP地址為192.168.0.45,根據處理器廠家的不同進行分類(如圖3所示);第二個節點根據字節長度進行分類(如圖4所示);第三個節點根據AMD子類對CPU進行分類(如圖5所示)。第一個節點包括一個資源且處理器的類型是賽揚ID8,這說明圖3中IP地址為192.168.0.45[8]的賽揚框中資源ID8是這個概念的一個事例(其中ID指標識符)。

圖2 P2P網絡

圖3 根據廠家對CPU進行分類

圖4 根據單詞長度對CPU進行分類

圖5 根據AMD子類對CPU進行分類
通過網絡來傳播當地DAGS類型,具體的結果如圖6所示,網絡也傳送有關資源消息。在192.168.0.45[8]顯示的CELERON,INTEL,32位和PROC框都說明IP地址為192.168.0.45節點ID8是這些概念的一個事例。

假設查詢需要32位的處理器。盡管節點1有一個匹配的資源,由于它不知道自己的處理器是32位的,所以并不能滿足自己的需要。通過查找網絡,使用虛擬類DAG發現IP地址為192.168.0.45中的資源8能滿足需要。
1.3 消息傳播
消息傳播是指在點到點網絡中傳播事例檢查、T-Box和A-Box。DHT算法能夠實現概念在網絡中傳播。對每一個概念來說,T-Box和A-Box都要被存儲。T-Box是子概念目錄,這些目錄能夠在網絡中進行傳播,形成虛擬的DAG。A-Box包含每個點的資源列表,這些資源是符合該概念的事例(把它叫做事例列表)。對每個資源來說,節點的IP地址和資源在節點上具有的ID都將被存儲,具體表示為“IP1[Resources of IP1],IP2[Resources of IP2],...,IPn[Resources of IPn]”,這個列表越大所包括的資源就越多。
把事例列表存儲在哈希表中,通過IP地址進行檢索,以矢量形式存儲資源ID。因此,要對每個節點的資源進行線性編號。采用這種數據結構,事例列表能夠根據所需內存和所要求操作進行有效的存儲。
1.4 網絡中節點的加入和離開
從兩個角度來分析節點的加入和離開:網格層和P2P層。其中網格層主要指VO內部節點的變化,P2P層主要是PS服務節點的變化。PS服務節點的變化由CS服務實現,當有新的PS節點加入時首先向CS注冊,同時獲得幾個其他PS的GSH,這些PS成為其鄰居節點,在網絡中找到該位置完成加入;離開時要向已注冊的CS發消息,使CS去掉該節點的地址信息。VO內部節點的變化可以通過服務數據的通知機制來實現,基本原理可參照文獻[4,5]。
1.5 概念查詢
概念查詢分為簡單概念查詢和復雜概念查詢兩種。簡單概念查詢中最主要的問題是怎樣找到請求者所需求的概念事例節點。首先,要看決定節點簡單概念定義的主要因素。其次,使用基本函數功能(一般指并、交和差)來提供查詢的定義。根據概念名稱在哈希表中的值來選擇查詢所需要的節點,找到的節點具有該概念的事例。
復雜概念查詢是在簡單概念并、交和差的基礎上根據概念定義形成的。在網絡中連續訪問復雜概念定義中包含的每個簡單概念,并在此基礎上從底向上構造復雜概念的事例列表。當概念進行聯合或交操作時,可以對每個概念進行或和與操作。復雜概念查詢中邏輯非的處理有兩種不同的方式:如果非和與一起出現,例如A∩?B,事例列表就可以被刪除;如果非單獨出現或和邏輯或一起連用,例如A∪?B,B就將從Resource的事例列表中刪除,因為Resource事例列表已包括了所有節點有關B的列表。非操作無效,無論資源的類型是什么,Resource事例列表中都會包括該資源的事例。根據復雜概念事例列表和上述規則可以實現復雜概念查詢。
通過模擬幾種網絡情況,得出了該方法的執行圖,解決了下面的問題:
(1)一個查找請求需要多長時間才能找到滿足需要的資源?
(2)新消息公布的過程中網絡能傳播多少信息?
模擬產生了一個隨機的分類DAG,該圖能夠在節點中傳播,因此每個節點都擁有DAG的子圖和該圖的一些事例。根據這種情況,通過改變節點個數、DAG大小和事例個數,模擬了網絡中信息的傳播情況,計算出不同大小的DAG下,隨著節點個數的增加消息的迭代次數和消息傳送量。在保持每個固定節點事例個數不變情況下,增加了總的事例個數,如圖7和8所示。X軸表示節點的個數,它由相應事例的個數決定,Y軸分別表示的是迭代次數和消息傳送量,需要注意的是節點個數不是線性變化的。每種情況運行10次,為了避免隨機產生DAG所帶來的特殊影響,圖中的值是10次運行的平均值,因此迭代次數和消息傳送量可能不是整數。

圖7 迭代次數
圖7說明迭代次數隨節點個數的增加變化不明顯,由于實驗中事例是隨機傳送的,所以當節點個數增加時,要重新計算迭代次數。迭代次數隨著概念個數的增加,變化也不明顯。從圖中可以看出,552個概念下,計算迭代次數的平均值大約為9.3,而50733概念下迭代次數的平均值大約為15.3。把迭代次數為1.6所對應的節點個數和節點個數為90兩種情況進行比較發現,當概念以DAG形式組織時,僅當最長路徑和迭代次數相關時,結果才很明顯。

圖8 消息量
圖8表明消息傳送量的增長和節點個數的增加很協調。從圖中可以看出,552個概念時,隨著節點個數的增加,消息傳送量的變化很小;50733個概念時,消息傳送量隨節點個數的變化就很明顯,而且基本上是成比例的,這說明概念個數越多,消息傳送量的增長和節點個數的增加越協調。
本文提出一種動態網格環境中資源查找方法,通過本體來描述資源,在分布式哈希表的基礎上實現節點之間信息傳播。如果資源提供者不在網格范圍內,可以結合可傳輸的DAG圖內所有節點的知識來實現資源查找。通過模擬獲得了網絡傳播新信息時系統的行為和當概念個數發生變化時系統數值的變化范圍。但該方法的使用范圍還受到以下因素的限制:完備性、查找的表示、容錯情況、垃圾的收集和傳遞的優化,所以將進一步改進使它不再受這些條件的限制。
[1]A. Vidal, and S. Kofuji, “Semantics-Based Grid resource Management”[C]. In Procedings of5th International Workshop on Middleware for Grid Computing-MGC’07, Newport Beach, CA, USA, Nov26, 2007
[2]P. Wieder, W.Ziegler, “Bringing Knowledge to Midleware –Grid Scheduling Ontology”[C]. In Proceedings of the Workshop on Future Generation Grids, Nov. 1-5,2004, Dagstuhl, Germany, Springer, 2006:47~59
[3]Borja Sotomayor.The Globus Toolkit 4 Programmer’s Tutorial[EB/OL].http://www.casa-sotomayor.net/gt4- tutorial-wo-rking/, 2005
[4]Domenico Talia, Paolo Trunfio.Web Services for Peer-to-Peer Resource Discovery on the Grid[C].DEIS,University of Calabria’s, Rende, Italy
[5]Professional Open Source Middleware for Parallel,Distributed, Multithreaded Programming[EB/OL].http://proactive.inr- ia.fr
[6]孫帥,董小社,楊凡,等.基于三層P2P結構的網格資源發現模型[J].微電子學與計算機,2005,8:127~129
Abstract: We present a new approach to semantic resource discovery in the grid in this paper. A peer-to-peer network is used to distribute and query the resource catalogue. Each peer can provide resource descriptions and background knowledge, and each peer can query the network for existing resources. We do not require a central ontology for resource description and matching. Each peer may have its own ontology, which will be completed by the knowledge distributed over the network. And it can be argued that this network has excellent scalability.
Key words: grid; resource management; semantic; ontology; query; location
Research for grid resource discovery in P2P network based on ontology-driven
Li Yanpeng, Zhong Junkai, Wei Hui
Jining vocational technology college, Jining, 272037, China
2010-08-16
李艷鵬,碩士,助教。鐘軍凱,碩士,助教。魏慧,本科,助教。