论文部分内容阅读
云计算作为一门新兴的技术是从网格计算、分布式计算和并行计算一步步发展而来的。它的运用使得传统的服务模式发生了巨大的变化,云计算所展现的计算模式是通过与互联网技术紧密结合的一种新型商业模式。目前云计算环境下的资源是以虚拟机资源的方式进行呈现,最主要的就是通过运用虚拟化技术对数据中心的各种硬件资源进行虚拟化从而形成虚拟资源池,然后在这些虚拟资源池上进行虚拟机动态部署,提供给用户使用,这些资源对用户来说是透明的,用户知道提交的任务已执行,但并不知道执行的具体位置。目前云计算的相关研究中任务调度、资源分配是一个热点问题,云计算的动态性、异构性和自治性以及其虚拟化技术的使用决定了云计算的任务调度、资源分配方式同以往的网格计算、分布式计算和并行计算大不相同。随着数据中心规模的持续扩大和用户数量的不断增加,如何使数据中心的虚拟机资源得到高效地利用的同时又满足用户提出的QoS要求,成为云计算任务调度的面临的首要问题。因此研究云计算的虚拟机任务调度问题对于当前云计算的发展具有重要意义。云计算虚拟机任务调度主要研究如何将数据中心虚拟资源池中提供的虚拟机资源分配给用户提交的任务使用,在提高云计算资源使用率,减少计算时间同时能够满足用户QoS要求,达到不违反服务等级协议(Service LevelAgreement,SLA)的目的。本文主要研究云计算环境下任务调度策略,在总结前人工作的基础上,所做的主要工作和创新包括以下几点:1.分析了当前云计算发展趋势以及云计算环境下的任务调度研究现状,简要的介绍了云计算中与任务调度、资源分配相关的技术。通过详细分析虚拟机资源调度的特点,总结了虚拟机任务调度模型,以及传统的任务调度算法的优缺点。详细分析了蚁群算法的原理及其数学模型,根据蚁群算法的特点结合云计算任务调度的要求,设计了用改进蚁群算法进行云计算任务调度的策略,介绍了一种云数据中心任务调度模拟系统CloudSim,并在这个模拟系统上进行实验。2.分析了云计算编程最常用的Map/Reduce框架,在此基础上设计了一个云计算任务调度物理模型以及基于这种模型的任务调度算法粒子群_蚁群联合算法(PSO_ACO)。针对当前蚁群算法中两个重要参数(,)在各种实际应用中值的选取大都是靠大量重复实验来确定的,所得出的参数组合可能不是最优参数,而且不能适应云计算任务调度的动态性从而影响调度算法性能的问题,提出了用粒子群优化算法来求解蚁群算法参数最优组合的改进算法(PSO_ACO),模拟实验表明基于PSO_ACO算法的任务调度与基于传统蚁群和其它启发式智能算法的任务调度相比能够更快地寻找到适合的资源,以保证用户服务等级协议,并且从系统资源的角度来说,能够实现较好的负载均衡。3.考虑到云环境的多样性、云规模的差异性,为了让PSO_ACO算法更具适应性,第四章从最优解的分布状态入手,对原有算法的信息素更新规则进行改进,完成了自适应PSO_ACO算法的设计,最后通过实验表明这种自适应调度算法具有比PSO_ACO更好的全局搜索最优解的能力和使资源负载均衡能力。