论文部分内容阅读
网格系统具有动态性强、异构性复杂和节点数量庞大的特点,在这样的环境下正确并高效的完成应用就必须解决动态性屏蔽、异构性屏蔽和系统扩展性等问题。当前的网格项目能够做到动态性和异构性的屏蔽,但是在系统扩展性上很难达到Internet计算的节点数量级,这是因为资源管理和数据传输等重要问题的解决还存在困难。本文介绍的NoMan-Grid系统采用了一种无资源管理自协调网格计算模型使得系统规模扩大的同时系统内部不会形成资源管理瓶颈,从而使系统的扩展性得以提高。
本文的主要研究内容包括NoMan-Grid的体系结构、算法、原型系统的实现、针对主要特性设计相应实验并分析实验数据。
NoMan-Grid基于无资源管理自协调网格计算模型实现,该模型整体组织形式上采用自组织方式构成,系统中没有中心资源管理节点也没有任何节点具有全局知识,所有节点的地位、功能都相同。节点只管理自身的资源,只需将需要计算的任务根据给定的算法传递给相邻的节点。系统中每个节点只需遵守一定的相对简单的算法对任务及自身资源进行管理,整个系统全局即形成了无中心管理的自治网格系统。
NoMan-Grid提出了一系列算法来保障系统的动态性和扩展性。完全分布式的任务调度算法,系统中的每个节点在没有全局知识的情况下能够将任务发送到相邻的节点,任务负载分布会遵循压力传递分布模式,算法保证任务可以传达到系统的所有节点。在系统中存在多个任务源节点的情况下,会出现多个应用争用计算资源的现象,对于这种情况可以使用资源竞争算法判定并分配被竞争的计算资源。根据边界解除算法及时释放已经不再需要的资源以供其它用户的应用使用,可以提高系统内资源利用率。针对应用环境的动态性NoMan-Grid提出了有限任务复制算法,此算法能够屏蔽动态性保证用户提交的应用正确完成。
对于无资源管理自协调网格计算模型和各种算法的验证需要建立一个原型系统即NoMan-Grid,然后针对NoMan-Grid的不同特性设计实验方案,从实验数据分析NoMan-Grid的特性是否符合设计的初衷。原型系统根据无资源管理自协调网格计算模型设计并实现,开发环境使用Java开发平台,在开发过程中采用了模块化的设计思想。
设计了两组实验验证NoMan-Grid系统的两个主要特性:任务负载分布符合压力传递分布模式和资源管理成本不随系统规模扩大而上升。根据实验数据结果分析说明NoMan-Grid适用于节点数量庞大的系统环境。