CN112468414B - 一种云计算多级调度方法、***及存储介质 - Google Patents
一种云计算多级调度方法、***及存储介质 Download PDFInfo
- Publication number
- CN112468414B CN112468414B CN202011229753.1A CN202011229753A CN112468414B CN 112468414 B CN112468414 B CN 112468414B CN 202011229753 A CN202011229753 A CN 202011229753A CN 112468414 B CN112468414 B CN 112468414B
- Authority
- CN
- China
- Prior art keywords
- coflow
- node
- scheduling
- queue
- sending
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 67
- 238000003860 storage Methods 0.000 title claims description 7
- 238000012216 screening Methods 0.000 claims description 25
- 238000012544 monitoring process Methods 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 7
- 230000002222 downregulating effect Effects 0.000 claims description 4
- 238000004891 communication Methods 0.000 abstract description 9
- 238000005457 optimization Methods 0.000 abstract description 7
- 238000010586 diagram Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/58—Changing or combining different scheduling modes, e.g. multimode scheduling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2425—Traffic characterised by specific attributes, e.g. priority or QoS for supporting services specification, e.g. SLA
- H04L47/2433—Allocation of priorities to traffic types
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2441—Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
- H04L47/625—Queue scheduling characterised by scheduling criteria for service slots or service orders
- H04L47/6275—Queue scheduling characterised by scheduling criteria for service slots or service orders based on priority
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种云计算多级调度方法,包括选择接收节点并通知Coflow的发送节点,以使得发送节点将被调度的Coflow中的流量发送到被选择的接收节点;接收发送节点发送来的每个Coflow已发送的数据流大小信息,根据接收到的信息确定不同Coflow的优先级,将所述Coflow的优先级发送给发送节点,以使得发送节点根据接收到的所述Coflow的优先级在本地的多级队列中对Coflow进行调度。本发明通过优化云计算多级调度,可以提升云环境内部网络通信效率,可以更好的发挥云计算的计算价值。
Description
技术领域
本发明涉及一种云计算多级调度方法、***及存储介质,属于云计算技术领域。
背景技术
目前,为了提高资源利用率和大规模任务处理的效率,往往通过集群技术将大量多余闲置的计算机连接起来形成云数据中心。在云数据中心中,通常采用MapReduce、Spark等分布式并行计算框架来处理大规模的数据。由于采用了分布式计算框架,一个作业往往会被划分成多个子任务然后交给数据中心中的多台计算机来完成,在对子任务进行分发及子任务结果进行合并时,会产生大量的中间通信数据流。如果其中的某条数据流没能及时完成,依赖这条数据流结果的后续子任务将无法继续,最终导致作业的完成时间延长。
目前的研究中,具有语义相关的一组通信数据流被称为Coflow。Coflow是一组数据流(flow)的集合,以MapReduce并行计算框架为例,Map映射阶段需要对作业的任务进行划分和分发(shuffle),会产生中间通信数据流,Reduce归并阶段需要读取Map阶段处理完成后的中间结果,也会产生中间通信数据流。为了提高云数据中心的性能,提高其中作业的完成时间,需要对Coflow的完成时间(Coflow Completion Time,CCT)进行优化,而不是对单个数据通信流的完成时间(Flow Completion Time,FCT)进行优化。因为对于一个网络,只有当此阶段的所有流都完成,这个阶段的通信才算真正完成,才可以进行下一个阶段的任务。目前多级调度优化技术还存在Coflow平均完成时间较高和可用性不强的问题,因此目前多级调度优化技术还存在优化的空间。
发明内容
本发明针对目前多级调度优化技术还存在Coflow平均完成时间较高的问题,提供一种云计算多级调度方法和***。
本发明采用以下技术方案。一方面,本发明提供了一种云计算多级调度方法,包括以下步骤:
选择接收节点并通知Coflow的发送节点,以使得发送节点将被调度的Coflow中的流量发送到被选择的接收节点;
接收发送节点发送来的每个Coflow已发送的数据流大小信息,根据接收到的信息确定不同Coflow的优先级,将所述Coflow的优先级发送给发送节点,以使得发送节点根据接收到的所述Coflow的优先级在本地的多级队列中对Coflow进行调度。
进一步地,选择接收节点的方法为:监测产生Coflow的作业利用Coflow流量放置策略选择待进行Coflow流量放置的接收节点,所述Coflow流量放置策略包括初步筛选已经拥有数据的计算节点,在初步筛选出的计算节点中筛选网络负载小的节点。
再进一步地,在初步筛选出的计算节点中筛选网络负载小的节点的具体方法为:
计算节点j接收端口的累计待处理数据流量表示为其计算公式表示如下:
其中为节点j在第t个时间间隔内的可用带宽,/>为第t个时间间隔内计算节点j接收到的数据流量;
网络负载小的节点MkM确定公式为:k为对应的第k个数据流。
进一步地,根据发送节点发送来的每个Coflow已发送的数据流大小信息确定不同Coflow的优先级的具体方法如下:
对每个Coflow已经发送的数据量进行统计,如果Coflow的已发送数据量超过了当前优先级队列的阈值,则将Coflow下调到低一级优先级队列中。
进一步地,发送节点根据接收到的所述Coflow的优先级在本地的多级队列中对Coflow进行调度的具体方法为:
发送端口在选择队列中下一个Coflow进行调度时,如果其他的端口中的Coflow都已经被放置到下一级优先级队列中且其他发送端口存在闲置空间时,对下一个Coflow进行调度的同时,提前开启闲置端口的低一级优先级队列中的Coflow进行调度;
在同一级队列中使用FIFO方式进行调度,不同队列之间使用加权公平队列调度方式直到所有的Coflow调度完。
第二方面,本发明提供了一种云计算多级调度方法,包括以下步骤:
获取全局协调器选择的接收节点,将被调度的Coflow中的流量发送到被选择的接收节点;
向全局协调器发送每个Coflow已发送的数据流大小信息,以使得全局协调器根据接收到的信息确定不同Coflow的优先级并返回所述不同Coflow的优先级;
根据接收到的所述Coflow的优先级在本地的多级队列中对Coflow进行调度。
进一步地,根据接收到的所述Coflow的优先级在本地的多级队列中对Coflow进行调度的具体方法为:
发送端口在选择队列中下一个Coflow进行调度时,如果其他的端口中的Coflow都已经被放置到下一级优先级队列中且其他发送端口存在闲置空间时,对下一个Coflow进行调度的同时,提前开启闲置端口的低一级优先级队列中的Coflow进行调度;
在同一级队列中使用FIFO方式进行调度,不同队列之间使用加权公平队列调度方式直到所有的Coflow调度完。
进一步地,全局协调其选择接收节点的方法如下:监测产生Coflow的作业利用Coflow流量放置策略选择待进行Coflow流量放置的接收节点,所述Coflow流量放置策略包括初步筛选已经拥有数据的计算节点,在初步筛选出的计算节点中筛选网络负载小的节点。
第三方面,本发明提供了一种云计算多级调度***,包括全局协调器和发送节点本地守护进程模块,
所述全局协调器,用于选择接收节点并通知Coflow的发送节点,以使得所述发送节点本地守护进程模块根据确定的调度结果将被调度的Coflow中的流量发送到被选择的接收节点;
所述全局协调器,还用于接收发送节点本地守护进程模块发送来的每个Coflow已发送的数据流大小信息,根据接收到的信息确定不同Coflow的优先级,将所述Coflow的优先级发送给发送节点;
所述发送节点本地守护进程模块,用于根据所述全局协调器发送来的Coflow的优先级在本地的多级队列中对Coflow进行调度;
所述发送节点本地守护进程模块,还用于向全局协调器发送每个Coflow已发送的数据流大小信息。
本发明所取得的有益技术效果:
本发明提供的一种云计算多级调度方法和***,是一种面向无先验知识Coflow的高效多级队列调度E-Aalo,在无先验知识的情况下通过基于计算节点状态的流量放置策略和优化多级队列调度中的闲置空间来降低Coflow的平均完成时间,并保证可用性。
根据Coflow流量放置策略选择Coflow的合适的接收节点,基于计算节点状态确定流量放置策略,优化闲置空间的多级队列调度,完成多级调度优化。通过该方法不但可以优化网络通信调度,还能降低网络通信压力,对于确保云计算资源高效调度运行具有重要的实际意义。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明提供的云计算多级调度方法流程示意图;
图2是本发明提供的云计算多级调度体统整体框架示意图。
具体实施方式
为使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合具体实施方式,进一步阐述本发明。
为了便于理解本发明,给出下面解释说明。
当一个作业在云数据中心中执行时,首先需要选择合理的主机作为计算节点来执行子任务。假设一个作业在被调度的时候产生了1个Coflow Cn,Cn包括k个数据流(对应于k个子任务),只有当这k个数据流都完成时,整个Coflow才算完成。Coflow的完成时间如公式(1)所示,表示Coflow中第i个数据流的完成时间,T即为Coflow的完成时间。
假设数据中心一共产生了n个Coflow,第i个Coflow包含k个数据流fi 1,...,fi k,则第i个Coflow的完成时间Ti如公式(1)所示:
Ti=max(time(fi 1),time(fi 2),...,time(fi k)) (1)
其中,每个Coflow的完成时间是其所包含的flow中完成时间最长的flow的完成时间。那么Coflow调度的目标如公式(2)所示:
后续叙述中使用的变量定义如表1所示。
表1相关参数及定义
表1中是Coflow中的n条数据流,计算节点j的接收端口在一段时间内可能会收到来自多个Coflow的流量,所以将计算节点的接收端口抽象为一个队列Arrj,/>为第t个时间间隔内计算节点j接收到的数据流量,/>是节点j在第t时间间隔内的可用带宽,则在第t个时间间隔结束后,计算节点j接收端口的累计待处理数据流量表示为/>这些变量将在具体实施例中用于计算节点的状态,并选择合适的节点进行Coflow流量放置。
实施例一、一种云计算多级调度方法,包括以下步骤:
选择接收节点并通知Coflow的发送节点,以使得发送节点将被调度的Coflow中的流量发送到被选择的接收节点;
接收发送节点发送来的每个Coflow已发送的数据流大小信息,根据接收到的信息确定不同Coflow的优先级,将所述Coflow的优先级发送给发送节点,以使得发送节点根据接收到的所述Coflow的优先级在本地的多级队列中对Coflow进行调度。
本实施例方法的执行主体独立于发送节点和接收节点,可设置于如全局协调器或综合协调器中。
实施例二、在实施一的基础上,本实施例中选择接收节点的方法为:监测产生Coflow的作业利用Coflow流量放置策略选择待进行Coflow流量放置的接收节点,所述Coflow流量放置策略包括初步筛选已经拥有数据的计算节点,在初步筛选出的计算节点中筛选网络负载小的节点。
初步筛选已经拥有数据的计算节点用公式(3)表示。其中,的表示Cn中的第i个数据流能否选择节点j作为潜在的目标节点,若值为1则表示可以,否则为0。所有/>节点都将被选为任务i的备选计算节点集合。
在初步筛选出的计算节点中再筛选网络负载小的节点。在的情况下,只能表明计算节点j可以直接执行任务i,避免多余的数据传输流量,但是节点j在接收到任务i的执行命令并执行完成后还需要将计算得到的结果传输回去,这依然会产生大量的数据流,并且此时Coflow的完成时间CCT除了受到计算节点的计算性能影响外,还受到计算节点网络带宽、网络负载、Coflow调度算法的影响。在Coflow流量的放置阶段还需要考虑所选计算节点的网络负载能力,计算节点j的接收端口在一段时间内可能会收到来自多个Coflow的流量,所以将计算节点的接收端口抽象为一个队列Arrj,/>为第t个时间间隔内计算节点j接收到的数据流量,/>是节点j在第t时间间隔内的可用带宽,则在第t个时间间隔结束后,计算节点j接收端口的累计待处理数据流量表示为/>其计算方式如公式(4)所示。
通过可以知道计算节点j接收端口的网络负载情况,即/>的数值越大,则计算节点j的端口网络负载越大,此时选择计算节点j来执行某个子任务,将会导致这个子任务的完成时间加长,导致CCT变大。根据公式(3)和公式(4)可以对Coflow流量进行选择性的放置来降低CCT,放置算法如表2所示。
表2 Coflow流量放置选择算法
其中,m表示m个待选择的计算节点;1~7行对CoflowCn中的每个数据流筛选出潜在的可以直接执行该任务的计算节点;8~13行则从每个数据流/>的潜在可选节点中选出网络负载最小的计算节点。
实施例一和实施例二中,根据发送节点发送来的每个Coflow已发送的数据流大小信息确定不同Coflow的优先级的具体方法如下:
对每个Coflow已经发送的数据量进行统计,如果Coflow的已发送数据量超过了当前优先级队列的阈值,则将Coflow下调到低一级优先级队列中。
以上实施例中,发送节点根据接收到的所述Coflow的优先级在本地的多级队列中对Coflow进行调度的具体方法可采用现有技术实现。为了优化调度策略,优化调度过程中的闲置空间,可选地,根据接收到的所述Coflow的优先级在本地的多级队列中对Coflow进行调度的具体方法为:
每个发送端口先将高优先级队列中的Coflow进行调度;
发送端口在选择队列中下一个Coflow进行调度时,如果其他的端口中的Coflow都已经被放置到下一级优先级队列中且其他发送端口存在闲置空间时,对下一个Coflow进行调度的同时,提前开启闲置端口的低一级优先级队列中的Coflow进行调度;
在同一级队列中使用FIFO方式进行调度,不同队列之间使用加权公平队列调度方式直到所有的Coflow调度完。
实施例三、一种云计算多级调度方法,包括以下步骤:一种云计算多级调度方法,其特征在于,包括以下步骤:
获取全局协调器选择的接收节点,将被调度的Coflow中的流量发送到被选择的接收节点;
向全局协调器发送每个Coflow已发送的数据流大小信息,以使得全局协调器根据接收到的信息确定不同Coflow的优先级并返回所述不同Coflow的优先级;
根据接收到的所述Coflow的优先级在本地的多级队列中对Coflow进行调度。
本实施例提供的所述方法部署与发送节点上,其中为方便描述加入了全局协调器,并不能理解为对执行主体的限定,可以采用其它模块实现,如综合协调器等。
本实施例中,根据接收到的所述Coflow的优先级在本地的多级队列中对Coflow进行调度的具体方法为:
发送端口在选择队列中下一个Coflow进行调度时,如果其他的端口中的Coflow都已经被放置到下一级优先级队列中且其他发送端口存在闲置空间时,对下一个Coflow进行调度的同时,提前开启闲置端口的低一级优先级队列中的Coflow进行调度;
在同一级队列中使用FIFO方式进行调度,不同队列之间使用加权公平队列调度方式直到所有的Coflow调度完。
具体实施例中,全局协调器可采用现有技术确定待选择的接收节点;为了选择更优的接收节点缩短Coflow平均完成时间,具体实施例中选择接收节点的方法为:监测产生Coflow的作业利用Coflow流量放置策略选择待进行Coflow流量放置的接收节点,所述Coflow流量放置策略包括初步筛选已经拥有数据的计算节点,在初步筛选出的计算节点中筛选网络负载小的节点。
在初步筛选出的计算节点中筛选网络负载小的节点的具体方法为:计算节点j接收端口的累计待处理数据流量表示为其计算公式表示如下:
其中为节点j在第t个时间间隔内的可用带宽,/>为第t个时间间隔内计算节点j接收到的数据流量;
网络负载小的节点Mk确定公式为:
实施例四、在以上实施例的基础上,本实施例根据发送节点发送来的每个Coflow已发送的数据流大小信息确定不同Coflow的优先级的具体方法如下:
对每个Coflow已经发送的数据量进行统计,如果Coflow的已发送数据量超过了当前优先级队列的阈值,则将Coflow下调到低一级优先级队列中。
实施例五、在以上实施例的基础上,为了优化闲置空间的多级队列调度,具体实施例中根据接收到的所述Coflow的优先级在本地的多级队列中对Coflow进行调度的具体方法为:
每个发送端口先将高优先级队列中的Coflow进行调度;
发送端口在选择队列中下一个Coflow进行调度时,如果其他的端口中的Coflow都已经被放置到下一级优先级队列中且其他发送端口存在闲置空间时,对下一个Coflow进行调度的同时,提前开启闲置端口的低一级优先级队列中的Coflow进行调度;
在同一级队列中使用FIFO方式进行调度,不同队列之间使用加权公平队列调度方式直到所有的Coflow调度完。
实施例六、一种云计算多级调度方法,包括以下步骤:
选择接收节点并通知Coflow的发送节点;
Coflow的发送节点将被调度的Coflow中的流量发送到被选择的接收节点;
接收发送节点发送来的每个Coflow已发送的数据流大小信息,根据接收到的信息确定不同Coflow的优先级,将所述Coflow的优先级发送给发送节点;
发送节点根据接收到的所述Coflow的优先级在本地的多级队列中对Coflow进行调度。
本实施例详细步骤如下:
1.初始化全局网络调度协调器,通过全局网络调度协调器(或称为全局协调器)选择接受节点,即全局协调器根据流量放置方案选择Coflow的合适的接收节点:
全局协调器监测每个作业是否产生Coflow,对产生Coflow的作业利用Coflow流量放置策略,筛选合适的计算节点放置每个Coflow中的流量并生成放置方案,然后通知发送节点将Coflow中的流量从送发送到选择的接收节点。同时,全局协调器还需接收发送节点发送来的每个Coflow已发送的数据流大小信息,根据这些信息确定不同Coflow的优先级并发送给本地守护进程;
2.初始化本地守护进程,本地守护进程主要负责接收全局协调器发送来的Coflow优先级信息,然后在本地的多级队列中对Coflow进行调度。多级队列内部使用FIFO方式进行调度,不同队列之间使用加权公平队列调度方式。此外,本地的守护进程还需要将本计算节点中每个Coflow已发送的数据量信息发送给全局协调器,以便全局协调器可以及时调整Coflow的优先级;
3.全局协调器负责分析Coflow的发送位置和Coflow的调度优先级,本地守护进程负责进行Coflow流量的发送并将已经发送的Coflow信息通知全局协调器,帮助全局协调器进行优先级的分析。全局协调器和本地守护进程相互合作完成Coflow的调度;
实施例七、在实施例六的基础上,本实施例中选择接收节点的方法如下:监测产生Coflow的作业利用Coflow流量放置策略选择待进行Coflow流量放置的接收节点,所述Coflow流量放置策略包括初步筛选已经拥有数据的计算节点,在初步筛选出的计算节点中筛选网络负载小的节点。
实施例八、在实施例七的基础上,本实施例中还包括:发送节点根据接收到的所述Coflow的优先级在本地的多级队列中对Coflow进行调度的具体方法为(本实施例具体流程如图1所示):
发送端口在选择队列中下一个Coflow进行调度时,如果其他的端口中的Coflow都已经被放置到下一级优先级队列中且其他发送端口存在闲置空间时,对下一个Coflow进行调度的同时,提前开启闲置端口的低一级优先级队列中的Coflow进行调度;
在同一级队列中使用FIFO方式进行调度,不同队列之间使用加权公平队列调度方式直到所有的Coflow调度完。
实施例六~实施例八中,选择接收节点的方法为:监测产生Coflow的作业利用Coflow流量放置策略选择待进行Coflow流量放置的接收节点,所述Coflow流量放置策略包括初步筛选已经拥有数据的计算节点,在初步筛选出的计算节点中筛选网络负载小的节点。具体实现方法如以上实施例二提供的方法这里不再赘述。
实施例九、基于实施例六、实施例七或者实施例八,本实施例提供的一种云计算多级调度方法中,对当前多级队列调度中可能产生的闲置空间进行分析,若当前最高优先级队列中只有一个Coflow且只使用部分发送端口,此时出现端口闲置空间,则提前启动低优先级队列中的Coflow流量调度来降低CCT在实施例六或者实施例七的基础上。发送节点根据接收到的所述Coflow的优先级在本地的多级队列中对Coflow进行调度为考虑了优化闲置空间的多级队列调度,具体包括:
1.每个发送端口先将高优先级队列中的Coflow进行调度;每个发送端口还需要将当前Coflow已经调度的流量信息(即数据流大小信息)发送到全局协调器,以使得全局协调器对每个Coflow已经发送的数据量进行统计,如果Coflow的已发送数据量超过了当前优先级队列的阈值,则将Coflow下调到低一级优先级队列中。
2.发送端口在选择队列中下一个Coflow进行调度时,提前开启闲置端口的低一级优先级队列中的Coflow进行调度,其他端口中的低优先级队列中的Coflow调度方式和步骤1中一样;
3.提前开启闲置端口的低一级优先级队列时,同样在同一级队列中使用FIFO方式进行调度,直到所有的Coflow调度完;
实施例十、本实施例提供了一种云计算多级调度***,框架示意图如图2所示,包括全局协调器和发送节点本地守护进程模块,
所述全局协调器,用于选择接收节点并通知Coflow的发送节点,以使得所述发送节点本地守护进程模块根据确定的调度结果将被调度的Coflow中的流量发送到被选择的接收节点;
所述全局协调器,还用于接收发送节点本地守护进程模块发送来的每个Coflow已发送的数据流大小信息,根据接收到的信息确定不同Coflow的优先级,将所述Coflow的优先级发送给发送节点;
所述发送节点本地守护进程模块,用于根据所述全局协调器发送来的Coflow的优先级在本地的多级队列中对Coflow进行调度;
所述发送节点本地守护进程模块,还用于向全局协调器发送每个Coflow已发送的数据流大小信息。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***以及其中全局协调器和发送节点本地守护进程模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本发明提供了面向无先验知识Coflow的高效多级队列调度方法,在无先验知识的情况下通过基于计算节点状态的流量放置策略和优化多级队列调度中的闲置空间来降低Coflow的平均完成时间,并保证可用性。通过优化云计算多级调度,可以提升云环境内部网络通信效率,可以更好的发挥云计算的计算价值;通过优化调度策略,实现资源利用最优化。
本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。
Claims (5)
1.一种云计算多级调度方法,其特征在于,包括以下步骤:
选择接收节点并通知Coflow的发送节点,以使得发送节点将被调度的Coflow中的流量发送到被选择的接收节点;
接收发送节点发送来的每个Coflow已发送的数据流大小信息,根据接收到的信息确定不同Coflow的优先级,将所述Coflow的优先级发送给发送节点,以使得发送节点根据接收到的所述Coflow的优先级在本地的多级队列中对Coflow进行调度;
选择接收节点的方法为:监测产生Coflow的作业利用Coflow流量放置策略选择待进行Coflow流量放置的接收节点,所述Coflow流量放置策略包括初步筛选已经拥有数据的计算节点,在初步筛选出的计算节点中筛选网络负载小的节点;
在初步筛选出的计算节点中筛选网络负载小的节点的具体方法为:
计算节点j接收端口的累计待处理数据流量表示为其计算公式表示如下:
其中为节点j在第t个时间间隔内的可用带宽,/>为第t个时间间隔内计算节点j接收到的数据流量;
网络负载小的节点Mk确定公式为:k为对应的第k个数据流;
发送节点根据接收到的所述Coflow的优先级在本地的多级队列中对Coflow进行调度的具体方法为:
发送端口在选择队列中下一个Coflow进行调度时,如果其他的端口中的Coflow都已经被放置到下一级优先级队列中且其他发送端口存在闲置空间时,对下一个Coflow进行调度的同时,提前开启闲置端口的低一级优先级队列中的Coflow进行调度;
在同一级队列中使用FIFO方式进行调度,不同队列之间使用加权公平队列调度方式直到所有的Coflow调度完。
2.根据权利要求1所述的一种云计算多级调度方法,其特征在于,根据发送节点发送来的每个Coflow已发送的数据流大小信息确定不同Coflow的优先级的具体方法如下:
对每个Coflow已经发送的数据量进行统计,如果Coflow的已发送数据量超过了当前优先级队列的阈值,则将Coflow下调到低一级优先级队列中。
3.一种云计算多级调度方法,其特征在于,包括以下步骤:
获取全局协调器选择的接收节点,将被调度的Coflow中的流量发送到被选择的接收节点;
向全局协调器发送每个Coflow已发送的数据流大小信息,以使得全局协调器根据接收到的信息确定不同Coflow的优先级并返回所述不同Coflow的优先级;
根据接收到的所述Coflow的优先级在本地的多级队列中对Coflow进行调度;
选择接收节点的方法为:监测产生Coflow的作业利用Coflow流量放置策略选择待进行Coflow流量放置的接收节点,所述Coflow流量放置策略包括初步筛选已经拥有数据的计算节点,在初步筛选出的计算节点中筛选网络负载小的节点;
在初步筛选出的计算节点中筛选网络负载小的节点的具体方法为:
计算节点j接收端口的累计待处理数据流量表示为其计算公式表示如下:
其中为节点j在第t个时间间隔内的可用带宽,/>为第t个时间间隔内计算节点j接收到的数据流量;
网络负载小的节点Mk确定公式为:k为对应的第k个数据流;
根据接收到的所述Coflow的优先级在本地的多级队列中对Coflow进行调度的具体方法为:
每个发送端口先将高优先级队列中的Coflow进行调度;
发送端口在选择队列中下一个Coflow进行调度时,如果其他的端口中的Coflow都已经被放置到下一级优先级队列中且其他发送端口存在闲置空间时,对下一个Coflow进行调度的同时,提前开启闲置端口的低一级优先级队列中的Coflow进行调度;
在同一级队列中使用FIFO方式进行调度,不同队列之间使用加权公平队列调度方式直到所有的Coflow调度完。
4.一种云计算多级调度***,其特征在于,包括全局协调器和发送节点本地守护进程模块,所述全局协调器,用于选择接收节点并通知Coflow的发送节点,以使得所述发送节点本地守护进程模块根据确定的调度结果将被调度的Coflow中的流量发送到被选择的接收节点;
所述全局协调器,还用于接收发送节点本地守护进程模块发送来的每个Coflow已发送的数据流大小信息,根据接收到的信息确定不同Coflow的优先级,将所述Coflow的优先级发送给发送节点;
所述发送节点本地守护进程模块,用于根据所述全局协调器发送来的Coflow的优先级在本地的多级队列中对Coflow进行调度;
所述发送节点本地守护进程模块,还用于向全局协调器发送每个Coflow已发送的数据流大小信息;
选择接收节点的方法为:监测产生Coflow的作业利用Coflow流量放置策略选择待进行Coflow流量放置的接收节点,所述Coflow流量放置策略包括初步筛选已经拥有数据的计算节点,在初步筛选出的计算节点中筛选网络负载小的节点;
在初步筛选出的计算节点中筛选网络负载小的节点的具体方法为:
计算节点j接收端口的累计待处理数据流量表示为其计算公式表示如下:
其中为节点j在第t个时间间隔内的可用带宽,/>为第t个时间间隔内计算节点j接收到的数据流量;
网络负载小的节点Mk确定公式为:k为对应的第k个数据流;
发送节点根据接收到的Coflow的优先级在本地的多级队列中对Coflow进行调度的具体方法为:
发送端口在选择队列中下一个Coflow进行调度时,如果其他的端口中的Coflow都已经被放置到下一级优先级队列中且其他发送端口存在闲置空间时,对下一个Coflow进行调度的同时,提前开启闲置端口的低一级优先级队列中的Coflow进行调度;
在同一级队列中使用FIFO方式进行调度,不同队列之间使用加权公平队列调度方式直到所有的Coflow调度完。
5.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1~3任意一项权利要求所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011229753.1A CN112468414B (zh) | 2020-11-06 | 2020-11-06 | 一种云计算多级调度方法、***及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011229753.1A CN112468414B (zh) | 2020-11-06 | 2020-11-06 | 一种云计算多级调度方法、***及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112468414A CN112468414A (zh) | 2021-03-09 |
CN112468414B true CN112468414B (zh) | 2023-10-24 |
Family
ID=74826359
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011229753.1A Active CN112468414B (zh) | 2020-11-06 | 2020-11-06 | 一种云计算多级调度方法、***及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112468414B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111966513A (zh) * | 2020-08-31 | 2020-11-20 | 国网上海市电力公司 | 无先验知识Coflow的多级队列调度方法、装置及其调度设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106533981A (zh) * | 2016-12-19 | 2017-03-22 | 北京邮电大学 | 一种基于多属性的大数据流量调度方法及装置 |
CN110048966A (zh) * | 2019-03-10 | 2019-07-23 | 天津大学 | 基于截止时间的最小化***开销的Coflow调度方法 |
CN110708259A (zh) * | 2019-09-25 | 2020-01-17 | 江苏省未来网络创新研究院 | 自动调整队列阈值的信息无感知Coflow调度***及其调度方法 |
CN110730142A (zh) * | 2019-10-14 | 2020-01-24 | 安徽工业大学 | 一种信息不可知情况下的数据中心流自适应调度方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017139305A1 (en) * | 2016-02-09 | 2017-08-17 | Jonathan Perry | Network resource allocation |
-
2020
- 2020-11-06 CN CN202011229753.1A patent/CN112468414B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106533981A (zh) * | 2016-12-19 | 2017-03-22 | 北京邮电大学 | 一种基于多属性的大数据流量调度方法及装置 |
CN110048966A (zh) * | 2019-03-10 | 2019-07-23 | 天津大学 | 基于截止时间的最小化***开销的Coflow调度方法 |
CN110708259A (zh) * | 2019-09-25 | 2020-01-17 | 江苏省未来网络创新研究院 | 自动调整队列阈值的信息无感知Coflow调度***及其调度方法 |
CN110730142A (zh) * | 2019-10-14 | 2020-01-24 | 安徽工业大学 | 一种信息不可知情况下的数据中心流自适应调度方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112468414A (zh) | 2021-03-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105718479B (zh) | 跨idc大数据处理架构下执行策略生成方法、装置 | |
CN107038069B (zh) | Hadoop平台下动态标签匹配DLMS调度方法 | |
CN106802826B (zh) | 一种基于线程池的业务处理方法及装置 | |
US20170255496A1 (en) | Method for scheduling data flow task and apparatus | |
US20100125847A1 (en) | Job managing device, job managing method and job managing program | |
CN103279351B (zh) | 一种任务调度的方法及装置 | |
US20090282413A1 (en) | Scalable Scheduling of Tasks in Heterogeneous Systems | |
CN102096599A (zh) | 一种多队列任务调度方法及相关***和设备 | |
US8082546B2 (en) | Job scheduling to maximize use of reusable resources and minimize resource deallocation | |
US20110161965A1 (en) | Job allocation method and apparatus for a multi-core processor | |
US11347546B2 (en) | Task scheduling method and device, and computer storage medium | |
CN111104211A (zh) | 基于任务依赖的计算卸载方法、***、设备及介质 | |
CN113918314A (zh) | 任务处理方法、边缘计算设备、计算机设备、介质 | |
CN114911612B (zh) | 一种面向cpu-gpu异构资源的任务调度方法 | |
CN111343288A (zh) | 作业调度方法、***及计算设备 | |
Pascual et al. | Effects of topology-aware allocation policies on scheduling performance | |
CN112468414B (zh) | 一种云计算多级调度方法、***及存储介质 | |
CN114461393A (zh) | 多任务调度方法、装置、电子设备、***及自动驾驶车辆 | |
CA2631255A1 (en) | Scalable scheduling of tasks in heterogeneous systems | |
CN112925616A (zh) | 任务分配方法、装置、存储介质及电子设备 | |
CN110502337B (zh) | 针对Hadoop MapReduce中混洗阶段的优化*** | |
CN108109104B (zh) | 一种面向统一染色架构gpu的三级任务调度电路 | |
CN112506640B (zh) | 一种用于加密运算芯片的多处理器架构及调配方法 | |
CN111858019B (zh) | 任务调度方法、装置及计算机可读存储介质 | |
CN116848508A (zh) | 基于强化学习模型调度任务以供计算机执行 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |