论文部分内容阅读
P2P网络与分布式计算并非新近才出现的概念。本文所要研究的对象是基于混合型P2P网络的分布式计算,目的是研究节点机器时钟周期的共享而并非以往所研究的对文件资源的共享。通过利用空闲机器的空闲时钟周期,就有可能模拟专用并行机器所提供的计算能力,却只需要其成本的一部分,从而满足在现代科学研究以及商业应用领域对高性能计算的需求。
本文首先介绍了当前分布式计算与P2P研究领域的现状,采用混合型P2P作为本文所设计的分布式计算系统基本模型的理由。以Condor、SETI@home及Snowflakes三个现有的分布式计算系统为代表,深入研究并总结了国内外在基于P2P网络的分布式计算领域相关工作的一些研究成果和当前新的进展。该领域以往工作中还存在着许多不足,比如系统局限于单一的分布式计算应用和单一用户,系统中只能运行单个任务,对于实际环境(网络带宽、客户端处理能力等)的变化缺乏动态的适应性,对系统的安全性考虑不足,系统对底层网络异类环境的适应性差,系统管理和操作繁杂,等等。
为解决这些问题,本文的主体部分之一,就是在对系统需求进行分析的基础上提出了一种新的基于混合型P2P网络的分布式计算系统模型,并设计了一个通用的具有多种特性的可编程的分布式计算系统,包括服务器端、客户端以及远程接口各模块的设计。针对该系统的实现本文还提出了应该考虑的一些问题,包括开发语言的选择、通信模型的实现、系统安全、系统的安装与部署、适合该系统处理的计算问题类型以及提供给分布式计算应用开发人员的编程API等。
本文的另一个重点就是还较为深入地研究了此类分布式计算系统中最重要的核心问题:调度管理机制及其调度算法问题,重点研究了与本文所设计的基于混合型P2P的分布式计算系统相关的调度管理方案及其策略方面的问题,这是系统获得高性能的一个关键问题,该问题在大规模平台(如全球计算平台)上变得尤为复杂。在以往工作的基础上,本文提出了一个集成了Duplication与Timeout机制[15]的综合调度策略,并在系统设计最重要的调度管理方面提出了自己的关于计算问题工作单元大小动态更新的算法以及一个调度算法,以使系统能够更好地适应实际环境和利用好系统资源。
本文最后是对上述调度算法及整个系统并行性能的仿真试验,以及对实验数据的分析和比较。实验结果表明我们设计的系统及其调度算法是有效的。