摘 要:基于當前的移動aget問題以及網格計算特點,在前人的理論基礎上,文中結合agent 技術和網格計算研究基于移動agent的網格計算管理模型,運用系統中各個元素進行agent 建模。介紹移動agent 技術,以及網格計算管理模型應具備的特征,最后提出基于移動Agent 的網格計算管理模型來解決網格中資源管理,作業調度,負載平衡的問題。仿真結果表明,基于agent 的網格計算管理模型仿真能夠細致地刻畫系統特性,降低系統對網絡帶寬的嚴格要求,同時也縮短時間延遲,提高服務響應速度。
關鍵詞:移動Agent;網格計算; 資源管理;作業調度
中圖分類號:TP393文獻標識碼:A
Research on Grid Computing Management Model Based on Mobile Agent
LIAO Mengyi,LIU Gaoyuan
(Pingdingshan University, Pingdingshan 467000,China)
Abstract:Based on the current problems of mobile agent and grid computing features, the paper combines agent technology and grid computing to research grid computing management model based on mobile agent, and we builds models. Introduce the technology of mobile agent and the character of the grid compute management model which should have ,in the end bring forward a model based mobile agent to solve the problem of resources management ,task schedule ,load balance in the grid computing. Simulation results show that the features of system can be depicted clearly by grid computing management model based on mobile agent. Also it shortens the time delay and improves the service response time.
Key words:mobile agent ;grid computing ;resources management; task schedule
1 前 言
網格是將不同地理位置的計算資源包括CPU、存儲器、數據庫等,通過高速的互聯網組成充分共享的資源集成,從而提供一種高性能計算、資源管理及服務的能力。網格環境中具有數目巨大、地理上廣泛分布的資源,并且這些資源和服務在網格中是動態的,可能會在不同的時間動態地加入或離開不同的虛擬組織(VirtualOrganization,VO)。 為了能使網格用戶方便、高效地使用各種資源,必須解決網格環境下的資源管理問題,包括資源發現、資源分發、資源監控和更新等各方面的問題。
本文結合移動Agent 技術對網格資源管理模型進行了分析和探討。
2 移動Agent技術
移動Agent是一可執行的程序,能夠攜帶其代碼和狀態自主地從網絡中的一個節點移動到另一個節點,尋找合適的計算資源和信息資源, 完成。由于移動Agent 具有移動性和智能性的特點,所以移動Agent 特別適合網格的動態性和異構性的特征,我們在網格資源管理和調度方面引入移動Agent 技術,可以很好的進行資源的發布、資源發現、資源的分發和資源的調度[1]。將移動Agent 技術引入網格資源管理系統有以下幾個方面的優點:
1)減少了各資源調度中心通信量。移動Agent 的本質是將計算移動到數據端,直接在數據端進行本地處理,只返回最終結果,從而避免了大量中間數據在通信兩端的傳輸,節約了網絡帶寬。移動Agent 一次也可攜帶多個服務請求移動到服務器進行本地調用,避免了多次遠程調用,從而節省了每次遠程調用的網絡延遲。
2)提高了任務的并行求解能力。移動Agent 不需統一調度用戶創建的Agent 可以異步地在不同節點上運行,任務完成后將結果傳送用戶。 為完成某項任務,用戶可創建多個Agent 同時在一個或若干個節點上運行,形成并行求解。
3)更好的適應網絡資源的動態性。移動Agent 支持離線計算,它可以很好地支持移動計算地分布式應用. 并且移動Agent 具有動態適應性,能與環境交互,感知環境變化,并快速、自主地做出反應[2]。
3 網格計算模型特征
“網格計算”就是把網絡連接的各種自治資源和系統組合起來,以實現資源共享、協同工作和聯合計算,為用戶提供基于網格的各類綜合性服務。網格概念的根本特征是它能在動態的、多機構組成的VO環境下進行有組織的資源共享和問題解決[3]。
網格計算是以信息處理為核心的技術,根據網格計算環境的物理特征和體系結構特征,其應用層模型應具有以下特征:
1) 作業分級:為有效處理網格計算環境中的任務,體現各任務的優先級,網格計算模型;應按照高等級的作業優先處理的原則。
2) 高可靠性:模型應能夠保證在網格計算環境中的各個模塊之間能夠實現高可靠性通信并能動態,高效的獲得任務所需要的資源。
3) 可交互性:各模塊之間的可以進行智能交互,互換各自的信息以及時了解各自的資源信息和作業處理量,并以此來動態決定和修改自己的管理決策,協調之間的沖突。
4 基于移動agent的網格計算管理模型
研究
4.1 網格計算管理模型構建
網格致力于實現資源的共享,所以,對資源的組織、調度是網格的核心內容. 在網格研究的代表項目Globus開發的工具集globus tookis 2.2 中,資源的組織、調度主要由兩個功能模塊實現:MDS,GRAM。分散的網格資源通過MDS 進行了有效的聚合,并提供了一定程度的優化調度功能,MDS 信息與資源狀態的同步由GRAM 來保證,此外,GRAM還可以對資源負載狀態進行監控. 利用網格提供的資源組織、調度信息將會大大方便進程遷移中目標節點的選取。網絡資源管理模型中一個重要的問題是資源負載平衡,資源負載平衡是實現資源有效共享、提高系統資源使用率的必然要求. 移動代理能實現負載平衡和高容錯性,與負載平衡相比具有以下優點. 負載平衡系統允許作業或進程在網絡上的重新定位或遷移,但這種移動是由OS 或相關的負載平衡應用程序決定的,被遷移的作業或進程根本無法知道,是完全被動的,即負載平衡系統要求遷移的透明性. 移動Agent 的移動性與此正好相反,移動Agent 的移動是主動的,是該Agent 顯示請求的結果,這是由Agent 的自治特性決定的. 移動Agent 移動的主動性要求實現移動Agent 的語言具有移動語義,即要求移動Agent 代碼中含有帶函數功能調用的函數或語句,因此利用移動Agent 技術可以實現分布式系統的負載平衡。
基于移動代理的優點,建立基于移動Agent網格計算管理模型,模型示意圖見圖1。
圖1 基于移動Agent網格計算管理模型
系統分為5層:資源層、資源Agent 層、協商層、作業代理層和用戶層。
資源層包含網格系統中的各種異構資源. 資源Agent 層包含兩類Agent ,一類是資源Agent:一個資源Agent 可以管理一個或多個同類資源,并負責調度這些資源。另一類是資源提供協商Agent:此類Agent 是由資源Agent 創建的,用來代表資源提供者進行價格協商[4]。協商層主要是給資源的請求者和提供者提供一個協商的平臺,并提供相應的服務,并于請求記憶庫進行聯系,如果原來已經有過同樣的資源請求則可以直接聯系資源提供商Agent請求資源。作業代理層負責接收終端用戶提交的任務并建立作業Agent , 作業Agent 又為資源需求創建資源請求協商Agent。 用戶層包含人類終端用戶或其他軟件應用。
4.2 系統流程分析
作業Agent收到一個作業請求,就建立一個作業Agent,將負責查詢資源請求協商Agent 以發現可用的資源,并與其建立聯系。 進行協商以形成協作聯盟,共同完成作業。當作業已完成,結果發送給終端用戶后,作業Agent 將被解散. 作業Agent必須能夠表達其資源需求,并通過協商獲得系統資源。
5 結果仿真與分析
運用美國Santa Fe研究所的Swarm平臺試驗仿真網格服務管理[5]。在該移動Agent仿真模型中,采用JAVA語言編程調用Swarm中的類庫進行仿真。聚集類中不同角色的Agent對應于Swarm仿真試驗系統中的一系列不同Agent之間的信息流交互對應于Swarm試驗系統中不同Agent之間通信及消息傳遞,移動Agent模型中合同網協已的任務分派、角色分派和承諾的兌現對應于Swarm試驗系統中離散事件仿真和時間調度所觸發的Agent行為。
本仿真設計針對一次網格服務進行。聚集體Agent的內部結構及模型借鑒美國Sandia實驗室研制的經濟微觀模擬模型-ASPEN模型,由資源Agent,源提供協商Agent,作業Agent,資源請求協商Agent等組成。系統仿真年數10年,刷新頻率為1,即每個仿真周期后刷新一次。啟動仿真試驗系統運行后,各個A gent按照事先設定好的行為時間表,即每個動作和交互,通過計算機觀察窗口,觀察交易聚集的變化情況。試驗結果如圖2所示。
6 結 論
把移動代理技術引入網格計算資源管理,能構建一個動態自適應性的資源環境. 移動Agent 的優勢表現為:其能較大地減輕網絡上的數據流量. 通過將服務請求Agent 移動到目標主機,使得agent 直接訪問該主機上的資源,與源主機有較少的交互,從而避免了大量數據的網絡傳送,降低了系統對網絡帶寬的嚴格要求,同時也縮短了時間延遲,提高了服務響應速度. 并且能以異步的方式自主地運行.我們可以將要完成的任務植入到移動agent 中。
參考文獻
[1] FRANK G, M. TUAN T, MALTE M.Electronic Contract Negotiation as an Application Niche for Mobile Agents[J].IEEE,2000:23-25.
[2] 裘杭萍; 肖登海.一種新的基于Agent的體系結構[J].計算機技術與發展,2010(1):50-52.
[3] 劉高原,劉覺夫. 基于Web 服務的網格服務研究[J].華東交通大學學報,2005(4):78-79.
[4] 邵星; 王汝傳. 一種基于Agent的Ad hoc網絡路由算法[J].計算機技術與發展,2010(4):21-24.
[5] JAIN P, KIRCHER M. Leasing Pattern[A].Sandholm TW. PLOP 2000 conference[C]. USA , Illionis: AllertonPark, 2000:326-328.
[6] FOSCHINI G J,GANSM J .On limits of wireless communications in a fading environment when using multiple antennas[J]. Wireless Pers. Commun., 1998,10(2)315- 335.
[7] 田翠華,于天放. 基于Agent技術的交通流仿真研究[J].計算機技術與發展,2010(2):232-235.
[8] SANDHU R,CONYE E, et al. Role - based Access Control Models[J ] . IEEE Computer ,1996,10(7):125-130.
[9] 朱雅麗, 熊前興. 移動Agent在電子商務中的應用研究[J].計算機與數字工程. 2008(4):165-166.
[10]馬寅秋,吳砥. 移動Agent 結合AJAX 實現資源檢索方案[J].微計算機信息, ,2008(4):71-73.
[11]黃智維; 倪子偉. 網格計算環境下資源管理的研究[J].計算機技術與發展,2009(3):200-204.
[12]何炎祥, 陳萃萌. Agent 和多Agent 系統的設計與應用[M].武漢: 武漢大學出版社, 2001.
[13]鄭磊, 劉方愛. 網格環境中資源發現與監視機制的研究[J].計算機技術與發展, 2006, 16( 1) : 83- 86.
注:本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文