移动在网格计算中的研究

时间:2022-07-02 06:41:47

移动在网格计算中的研究

摘要:网格的异构性,动态性,导致移动在网格中使用时,和平台之间的安全策略变得很复杂,移动的路由算法也很难制定,许多现有的安全解决方案都不能满足需要,且为移动量身定做安全策略也不太现实。该文提出了用户角色映射和移动相结合的网格计算模型,根据资源的特征属性,在资源模块进行判断,动态的选择资源的使用方式。有效解决了在网格中引入移动所带来的安全问题,同时提高了网格计算的效率。

关键词:角色映射;移动;网格

Research about Mobile Agent in Grid Compute

XING Wei-ning

(Nanjing University of Aeronautics and Astronautics, Nanjing 210016, China)

Abstract: As a result of the heterogeneity and dynamic of the grid, while use mobile agent in the grid, the security strategies between mobile agent and agent platforms became more and more complexity, routing algorithm of the mobile agent also difficult to establish, a lot of existing security solving scheme can't satisfy the requirement, and it is too unpractical to constitute security strategies for mobile agent. The paper design a new grid compute model combine with user role mapping and mobile agent, on the basis of resource characteristic, estimate in the resource broker model, dynamically choice the use mode of the resource. The model effectively resolve the security problem which aroused by the use of mobile agent in the grid, and enhance the efficiency of the grid compute.

Key words: role mapping; mobile agent; grid

网格计算是指动态地将地理上分布的、系统异构的各种计算资源、存储资源以及其它仪器设备,通过互联网技术,高度的集合在一起, 进行无缝的、协同的,大规模计算应用。这些计算应用可以是分布式超级计算、远程沉浸、分布式数据挖掘等[1]。由于网格提供了在不同平台、不同管理域的任意两点或多点间,实现直接或间接的互连、互通、互操作的,资源的高度共享和高级计算的协同处理能力,因此,网格计算的安全问题是网格能够在各个领域、各个行业得到广泛应用所需要解决的最基本问题[2]。

1 移动

Mobile Agent 技术起源于20世纪的分布式人工智能的研究,近年来这一技术逐渐被应用在越来越多的领域中。Mobile Agent 技术强调软件的移动性、分布性、自主性、智能性、协同性和社会性等,通常用来构建大规模的分布式软件系统[3]。软件Mobile Agent是模型化的复杂软件系统的高级抽象,展示高度的动态行为,是一种复杂的计算机程序,采取自治的行为,协同应用与环境交互,完成给定的目标。它与传统的RPC(远程过程调用)相比,具有以下优点:1) 减轻了网络负载;2) 对网络的延时和抖动不敏感;3) 可以封装专有协议,在不兼容系统之间协调和互操作;4) 异步操作不需要持续的网络连接;5) 容易支持服务的个性化;6) 容易适应多变的网络环境。正是因为移动技术具有的这些优点很好地适应了网格计算环境下分布式并行计算的任务需求,所以它首当其冲地成为网格计算实现中间件的首选 [4]。

2 移动在网格中使用所产生的问题

由于网格具有很大的异构性,移动所登陆的各异构平台之间的安全策略不一样,安全防护水平也不一样,因此移动在使用时,其安全措施都是在和平台之间进行交互的,网格的异构性导致移动应用环境的安全问题变得相当复杂,移动自身的安全保护策略也很难制定。同时各移动平台之间的安全评价标准也不一致,这使得移动进行路由选择时的算法设计相当困难。网格的动态性也给移动的使用带来了安全隐患,网格中的资源数量巨大,并且是动态变化的,独立的研究机构和用户可以自主决定是否或如何共享自己的资源,因此网格环境中可用资源的数量和位置经常改变。一些固有的移动安全解决方案在动态的网格中并不适用,如基于JavaCard的移动安全模型,因为在网格中事先并不知道哪个资源可以使用,所以不能给所要使用的资源配置硬件,而且资源的数量巨大,实现成本很高[5]。

在网格应用中,所需要的安全等级以及移动的代码和数据的敏感程度直接决定了移动的迁移率。如图1所示,当任务的敏感度增加,的创建者就会降低的迁移率。垂直的阴影条代表了一个分割点,的创建者根据这个分割点判断哪个是静态的,哪个是移动的。分割点的位置是由现有可用的安全机制、执行需求、的代码和数据的敏感程度、最大可承受的风险和功能性需求的等级决定的。

综合上面问题,由于网格结构庞大,关系复杂,网格中资源高度共享,使得移动在网格中的使用存在安全和效率的问题。如果为网格中的移动量身定做一套安全方案,可能会在安全性方面有所提高,但由于网格的异构性,动态性,其对效率的影响会抵消使用移动带来的优势,甚至最终反而不如未使用移动的情况。因此,本文提出一种新的网格计算模型,利用静态的用户角色映射和动态的移动相结合的方法,根据资源的属性,有选择的使用移动,减少使用移动带来的安全漏洞,有效地提高了移动在网格系统中的安全性,同时提高了网格计算的效率。

3 用户角色映射和移动相结合的可信网格计算模型

在网格环境下,用户和资源的管理通常是以VO或社区作为基本的管理单元的,一个静态的网格系统从理论上来讲是比较安全的,不会对网格系统造成安全威胁。只有当用户通过网格门户进入网格系统,提交任务并对资源进行调度时,才会造成安全威胁。特别是纯粹使用移动进行网格计算,会带来更多的安全隐患。针对以上的安全问题,本文提出静态的用户角色映射和动态的移动相结合的网格计算模型,如图2。

1) 用户模块

在网格环境中,某些时候(如希望检索同等地位的多个资源) 用户必须重复地输入通行代码以证明自己的合法性,显得很不方便。用户当然希望能一次性通过,但这样做会导致通行代码和私钥长时间暴露在外,存在安全隐患。在GSI中是使用委托来解决这个问题的。委托是一种短期证书,是由用户的长期证书签字的,时间限制一般在数小时或数天,有了这个委托,用户就不必做重复工作了。证书是应用于分布式环境中的委托机制[6]。

用户通过网格入口登录网格系统,由用户生成用户的证书。证书包括用户的全局角色(Grid Role),开始时间(Start Time),结束时间(End Time)等。

2) 用户管理模块

用户使用证书进入虚拟组织,用户管理模块对各种用户进行分流,对归属于本社区的用户和非本社区用户区别对待。对于属于本社区的用户来说,用户管理模块首先要对其进行身份认证,经过角色和权限映射机制给其分配相应的角色并授予访问权限。对于非本社区用户来说,用户管理模块将该用户的身份信息提交给用户请求URB,委托URB对该用户进行身份认证并创建零时的角色,接着用户管理模块对角色进行角色与权限映射并授予访问权限,在访问控制的同时缓存了该用户的活动记录,直至用户访问活动结束时,用户管理模块将此用户的活动记录转交给URB并委托URB把此记录以UAML文档的形式发送给相应的宿主社区或虚拟组织。同时定义基于XML的UAML(User Activity XML)文档格式来登记用户的活动记录,方便对系统维护以及相关数据的采集与统计分析。

3) 资源模块

一个资源是一个商,通常在域内(intradomain)或域间(interdomain)进行安全传输。负责资源调度去访问一个资源和映射一个计算到资源。资源在使用资源时受用户控制和权限的限制。资源是由网格系统创建的进程,完成资源的认证、分配、回收等[7]。

本模型中资源调度模块的流程如图3所示,首先用户使用证书和资源证书进行相互认证,认证通过后,用户向资源提交资源使用申请。资源根据用户所要使用的资源号,以及资源特征,进行判断。如果是申请的本地资源,资源直接调度资源,并把计算映射到资源上。如果本地资源不能满足用户的需求,则需要进行跨虚拟组织访问。进行跨虚拟组织访问有两种途径:用户角色映射和移动。资源根据用户所申请资源的特征属性,决定采取哪种方法。

如果所申请资源具有需传递数据少,计算过程相对独立,网络通信负荷小的特性,则采用用户角色映射的方法进行跨虚拟组织访问。资源向跨虚拟组织访问策略库发出申请,策略库根据一定的策略,进行资源评估,包括安全性,可信度,高效性。按照评估结果,搜索到适合的包含资源的虚拟组织。该虚拟组织中的用户管理模块对用户的证书进行鉴定,如果用户合法,进入该虚拟组织的用户管理模块。计算完成后,数据返回给资源模块。

如果用户所申请的资源需和用户进程进行频繁交互,需占用大量网络通信资源,并且在计算过程中,还会再次跨虚拟组织进行资源访问,则资源把所有用户数据传递给移动创建模块,由移动创建模块进行处理。

4 资源调度模块

在跨虚拟组织进行资源调度时,可能有多个网格资源能够提供资源和移动所提出的需求的时候,需要在多个网格资源之间进行选择。考虑到网格中计算机的处理速度和连接传输速率都不同,在异构的网络中进行资源调度的目标是最优化整体应用的完成时间。而且网格环境复杂、动态变化、资源异构性强,因此需要对资源进行安全性、可信度、高效性进行评估,并为用户选择相应的虚拟组织[10]。资源调度模块主要包括两部分:资源评价模块和移动迁移策略模块。

5 结论与进一步工作

本文提出了基于用户角色映射和移动相结合的网格计算模型,利用资源模块,根据所申请资源的特征属性进行判断,选择用户角色映射方法还是选择移动的方法,节约通信带宽的同时,保证了安全性,较好的解决了在网格计算中引入移动所带来的安全和效率问题。模型中的用户模块用于生成用户的证书,并且代表用户与其余模块进行交互。对用户模块的设计,拟采用MyProxy为基础,针对网格的动态性特点,在证书的生成、更新、撤销方面作出改进。并且考虑到MyProxy系统用硬件加密的密钥处理机来保护私钥成本太高,拟采用cookie来保护私钥,即可以解决私钥的安全问题,又可以降低成本。

参考文献:

[1] Foster I,Kesselman C,Nick J,et al.The physiology of the grid:An open grid services architecture for distributed systems integration[EB/OL]./research/papers/ogsa.pdf.

[2] 刘怡文,李伟琴,韦卫.信息网格安全体系结构的研究[J].北京航空航天大学学报,2003,29(7):631-635.

[3] 王汝传,徐小龙,郑晓燕,孙知信.移动安全机制模型的研究[J].计算机学报,2002,25(12):1294-1301.

[4] Wu Jiehong,Chang Guiran,Li Jia.A Scheme for Protecting Mobile Agents Based on Combining Obfuscated Data and Time Checking Technology[C].IEEE Computer Society,Washington, DC,USA:Proceedings of the Third International Conference on International Information Hiding and Multimedia Signal Processing (IIH-MSP 2007) - Volume 01 table of contents,2007:221-224.

[5] Myproxy Overview[EB/OL].www.ncsa.uiuc.edu/Di2visions/ ACES/Myproxy/.

[6] 刘利民,查礼.网格用户管理体系结构的研究与设计[J].计算机研究与发展,2004,41(12):2237-2242.

[7] 石柯,代峰,石宣化,陶永才.资源在异构网格互操作中的应用[J].华中科技大学学报,2007,35(11):80-83.

[8] Bürkle A,Essendorfer B,Hertel A,et al.A Test Suite for the Evaluation of Mobile Agent Platform Security[C].IAT '06: Proceedings of the IEEE/WIC/ACM international conference on Intelligent Agent Technology Publisher: IEEE Computer Society,2006:752-756.

[9] 穆鸿,王汝传,徐小龙.基于移动的网格计算安全基础架构研究[J].南京邮电学院学报,2004(1):72-77.

[10] 柳毅,张凌.基于移动的安全选择式路由协议[J].华南理工大学学报,2007,35(1):84-88.

上一篇:案例教学+项目驱动模式在网页设计教学中的应用 下一篇:“C++程序设计”项目课程的设计与实施的研究初...