基于网络带宽估计的云计算任务调度方法

文档序号:7856679阅读:195来源:国知局
专利名称:基于网络带宽估计的云计算任务调度方法
技术领域
本发明涉及计算机网络领域,特别涉及任务调度技术,具体涉及一种基于网络带宽感知的云计算任务调度方法。
背景技术
随着海量数据处理(如Web日志分析、0LAP、0LTP)的广泛应用,面向海量数据处理的云计算平台(如MapReduce、Hadoop、Dryad等)发展迅速。这些云计算平台以无共享(Shared Nothing)架构部署于数据中心。在数据存储 方面,将数据文件划分成等大小的若干文件块,存储于计算节点的本地硬盘,并利用分布式文件系统进行管理。为了保证高可靠性,每个文件块存有多个副本。在计算方面,将数据处理作业(Job)划分为若干独立的子任务(Task),每个任务从计算节点本地硬盘或通过网络读取输入文件块,并加以处理,当所有子任务完成后,数据处理作业才能完成。利用数据的分布式存储和任务的并行化执行,云计算平台可以高效地读写和处理TB级,甚至PB级的海量数据。但是,网络带宽是数据中心紧缺的资源,并严重影响云计算平台性能。首先,为了保持高性价比,大多数数据中心的计算节点未采用高速网络设备(如万兆以太网)互联;其次,部分数据中心采用层次式的网络拓扑(可分为数据中心、机架、计算节点三级),不同机架内的计算节点通信时存在带宽瓶颈;再次,部分计算任务需要通过网络读取数据,网络传输开销影响任务完成时间。最后,大规模数据的读写、文件块副本创建与迁移等操作需要占用大量网络带宽。

发明内容
本发明针对现有技术的不足和缺陷,提出了一种基于网络带宽估计的云计算任务调度方法,该方法通过感知数据中心的工作负载和网络可用带宽,动态调整调度器的调度策略,以减少作业的执行时间,从而提高云计算系统的执行性能。本发明采用的技术方案一种基于网络带宽估计的云计算任务调度方法,包括以下步骤a.每个计算节点首先利用操作系统的网络命令(如ifconfig、sar等)每隔3秒钟读取网络适配器的流量,再计算出该计算节点的可用带宽,最后将该计算节点的带宽信息发送给管理节点。b.管理节点的带宽采集程序收集每个计算节点的可用带宽信息,并在内存中保存每个计算节点最近I分钟内的带宽信息,并计算最近I分钟计算节点j的可用带宽的均值
Bj和所有计算节点可用带宽的均值万=最后清理内存中的过期(5分钟前)数据。
J=Ic.管理节点从每个机架中选择一台平均可用带宽最高的计算节点,令这些计算节点两两之间运行可用带宽估计程序(pathchirp)。机架m和机架n间的可用带宽Bm’n可用上述估计结果代替。机架间可用带宽的均值
权利要求
1.一种基于网络带宽估计的云计算任务调度方法,其特征在于该方法包括以下步骤 步骤ー计算节点动态监控节点网络带宽,并定时向管理节点报告带宽信息;管理节点计算分析节点的平均带宽,并为每个机架选举ー个合适的计算节点以测量机架之间的带宽;被选举的计算节点执行可 用带宽估计程序,并将带宽估计结果向管理节点汇报;管理节点分析机架间的平均带宽; 步骤ニ 计算节点完成任务后,向管理节点请求新的任务;管理节点更新本地任务计时器和机架任务计时器,井根据空闲计算节点的到达强度,计算数据中心的工作负载; 步骤三管理节点扫描任务池中的任务,优先调度数据在当前空闲计算节点本地硬盘的任务,若不存在这样的任务,则计算延迟等待窗ロ,井根据窗ロ大小做出调度决策; 步骤四管理节点根据调度结果将本地任务计时器或机架任务计时器清零。
2.根据权利要求I所述的基于网络带宽估计的云计算任务调度方法,其特征在于所述步骤一中所述的可用带宽为系统实时采集的数据,计算节点每隔3秒钟利用操作系统的网络命令采集网络适配器的使用情况,并计算出可用带宽;管理节点收到来自各计算节点的带宽信息后,先将其存入内存和数据库,再求各计算节点最近一分钟内带宽均值,然后统计所有计算节点带宽最近一分钟内带宽均值,最后清理内存中的过期数据;管理节点每隔I分钟为每ー个机架选择带宽最大的计算节点;被选择的计算节点两两之间利用可用带宽估计程序估计可用带宽,并将结果发送给管理节点;管理节点统计机架间带宽信息,并求出机架间可用带宽的均值。
3.根据权利要求I所述的基于网络带宽估计的云计算任务调度方法,其特征在于所述步骤ニ中所述的本地任务计时器和机架任务计时器是两个数值,分别记录当前时刻和上次计时器清零时刻的时间间隔;数据中心的工作负载是计算节点请求任务的频率;计算节点请求任务的频率越高表示工作负载越低,反之亦然;计算节点请求任务的频率通过统计的方法求得;每当ー个计算节点空闲,该计算节点向管理节点请求新的任务,管理节点记录当前的时间点,并统计I分钟时间内请求任务的计算节点的个数,从而得到计算节点请求任务的频率。
4.根据权利要求I所述的基于网络带宽估计的云计算任务调度方法,其特征在于所述步骤三中所述的延迟等待窗ロ由面向分层网络拓扑的延迟调度模型求得,延迟等待窗ロ分为本地延迟等待窗口和机架延迟等待窗ロ两种;调度器先根据数据中心的工作负载和网络带宽信息,结合面向分层网络拓扑的延迟调度模型,计算本地延迟等待窗口和机架延迟等待窗ロ的值,对于当前请求任务的计算节点来说,若任务池中的任务K所需的数据在该节点上,则将任务K调度到该计算节点;否则判断本地计时器是否小于本地延迟等待窗ロ,若小于,则不作任何调度;否则检查任务池中是否有任务所需的数据在该计算节点所在的机架上,若能找到这样的任务,则将该任务调度到该计算节点;若找不到合适的任务,则判断本机架计时器是否小于机架延迟等待窗ロ,若小于,则不作任何调度;否则随机选择ー个任务到该计算节点。
5.根据权利要求I所述的基于网络带宽估计的云计算任务调度方法,其特征在于所述步骤四中所述的理节点根据调度结果将本地任务计时器或机架任务计时器清零是指若调度了一个任务且该任务所需的数据在计算节点本地硬盘,则将本地任务计时器和机架任务延时计时器清零;指若调度了一个任务且该任务所需的数据在计算节点所在的机架其他节点,则将机架任务延时计时器清零;若调度的任务的数据在其他机架,则不清零;若不作调度,则不清零。全文摘要
本发明公开了一种基于网络带宽估计的云计算任务调度方法,本发明平台分为数据中心、机架、计算节点三级,并由管理节点统一管理,计算节点负责执行任务和采集可用带宽信息;当执行任务时,计算节点从本地硬盘或通过网络读取输入数据,当任务完成后,计算节点向管理节点请求新的任务;管理节点负责管理可用带宽信息和调度任务,在管理可用带宽信息时,管理节点收集计算节点的带宽数据,指定不同机架内的两台计算节点执行可用带宽估计程序,并统计可用带宽信息;当计算节点请求任务时,管理节点结合机架内网络带宽、机架间可用带宽、数据中心负载,做出任务调度决策。
文档编号H04L12/24GK102739785SQ20121020557
公开日2012年10月17日 申请日期2012年6月20日 优先权日2012年6月20日
发明者东方, 宋爱波, 罗军舟, 金嘉晖 申请人:东南大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1