CN108712305B - 一种基于子流流量值估计方法的Coflow调度方法 - Google Patents

一种基于子流流量值估计方法的Coflow调度方法 Download PDF

Info

Publication number
CN108712305B
CN108712305B CN201810420239.2A CN201810420239A CN108712305B CN 108712305 B CN108712305 B CN 108712305B CN 201810420239 A CN201810420239 A CN 201810420239A CN 108712305 B CN108712305 B CN 108712305B
Authority
CN
China
Prior art keywords
flow
priority
message
host
value
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
Application number
CN201810420239.2A
Other languages
English (en)
Other versions
CN108712305A (zh
Inventor
虞红芳
黄鸿
孙罡
许都
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of Electronic Science and Technology of China
Original Assignee
University of Electronic Science and Technology of China
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by University of Electronic Science and Technology of China filed Critical University of Electronic Science and Technology of China
Priority to CN201810420239.2A priority Critical patent/CN108712305B/zh
Publication of CN108712305A publication Critical patent/CN108712305A/zh
Application granted granted Critical
Publication of CN108712305B publication Critical patent/CN108712305B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0882Utilisation of link capacity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/52Queue scheduling by attributing bandwidth to queues
    • H04L47/527Quantum based scheduling, e.g. credit or deficit based scheduling or token bank
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/625Queue scheduling characterised by scheduling criteria for service slots or service orders
    • H04L47/6275Queue 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)
  • Environmental & Geological Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种基于子流流量值估计方法的Coflow调度方法,包括如下步骤:S1、将Coflow子流流量的估计值周期性上报给控制器;S2:通过控制器侧Coflow优先级制定方法,计算Coflow对应优先级,并下发报文到各主机;S3、主机侧根据Coflow优先级信息,更新Coflow优先级map和各Coflow优先级对应虚拟传输完成时间,生成数据报文;S4、主机侧对数据报文进行入队处理,得到Coflow报文的存储队列;S5、对数据报文进行出队处理,得到调度报文,实现对Coflow进行调度。本发明解决了现有技术存在的缺乏准确性、影响调度策略的优化效果、方案缺乏合理性以及优化性和处理效率低的问题。

Description

一种基于子流流量值估计方法的Coflow调度方法
技术领域
本发明属于互联网技术领域,具体涉及一种基于子流流量值估计方法的Coflow调度方法。
背景技术
数据中心是指由专业机构拥有的大型专用计算机集群,通常具有不同规模,以满足多样的使用需求。其中服务器数量过万的数据中心通常被一些大型的线上服务提供商(比如Google、Microsoft以及Amazon)用于运行一些大规模数据密集型任务,比如网页索引或者大型数据集分析。这些数据密集型任务通常借助MapReduce范型(或各式变种)在数据中心的集群间进行并行的计算处理,并在处理过程中产生并行的协同数据流,这样的协同数据流通常用Coflow模型进行描述。Coflow被定义为一组具有共同性能目标的协同数据流量的集合,通常是指同一项并行计算应用在通信阶段产生协同数据流的集合。集合中每条单独流量被称为这个Coflow的一条子流。Coflow的完成时间取决于其中子流传输完成时间的最大值。由于Coflow的传输完成时间上具有协同性,传统的网络流调度相关手段不能很好地适用于Coflow,因此,需要对适用于Coflow的流量调度方案进行研究,以便优化Coflow的传输完成时间,从而提高数据中心对并行计算应用的处理能力。实际上,Coflow调度方案主要需解决两个问题:(1)同一Coflow中的各流量如何分配带宽。(2)不同Coflow中的流量如何分配带宽。
近年来,数据中心Coflow完成时间的优化问题吸引了广大研究者关注。基于Coflow相关信息的可知性,这方面的研究可以进一步被分为两类——先验知识已知的调度机制、先验知识未知的调度机制。先验知识已知的调度机制,指决策时能够获知完整的Coflow特征,包括Coflow中子流的数量,各子流的大小以及持续时间等。先验知识未知的调度机制,指决策时不能够获知完整的Coflow特征,或者完全不能知道Coflow的任何特征信息。
上述两个不同的研究场景中,先验知识已知的调度机制由于拥有充足的信息,其思路通常是以最小化Coflow平均完成时间为目标函数,根据网络拓扑、网络容量以及业务需求建立约束条件,建立最优化问题模型。这种场景下的调度方案一般都会得到较为详细的调度策略,包括Coflow每条子流的路由指定和在对应路径上的带宽分配,优化效果较好。但是,该场景下的Coflow调度机制通常需要假设主机功能足够强大,能够提供完整的Coflow信息,这通常是不实际的,不适用于实际数据中心网络环境。
现有技术存在的问题如下:
(1)现有技术的仅发送完成的报文累计大小作为Coflow大小估计值的方法过于粗糙,没有充分利用已知信息,忽略了Coflow当前在网络中的累计状况,导致对Coflow大小的估计缺乏准确性,影响调度策略的优化效果;
(2)现有技术且仅依据Coflow大小制定Coflow优先级,方案缺乏合理性;
(3)现有技术依据Coflow大小为Coflow制定优先级在一些场景下不利于减小Coflow平均完成时间,优化性和处理效率低。
发明内容
针对现有技术中的上述不足,本发明提供了一种准确性高、优化性高、合理性高、高效性和处理效率高的基于子流流量值估计方法的Coflow调度方法,解决了现有技术存在的缺乏准确性、影响调度策略的优化效果、方案缺乏合理性以及优化性和处理效率低的问题。
为了达到上述发明目的,本发明采用的技术方案为:
一种基于子流流量值估计方法的Coflow调度方法,包括如下步骤:
S1:使用Coflow子流流量值估计方法,周期性对主机侧各Coflow子流流量值进行估计,并将Coflow子流流量的估计值周期性上报给控制器;
S2:根据Coflow子流流量的估计值,通过控制器侧Coflow优先级制定方法,计算Coflow对应优先级,并下发携带Coflow优先级信息的报文到各主机;
S3:在主机侧根据控制器下发的报文中携带的Coflow优先级信息,使用控制器报文处理方法,调整本地Coflow优先级对应关系,更新Coflow优先级map和各Coflow优先级对应虚拟传输完成时间,生成数据报文;
S4:在主机侧对步骤S3生成的数据报文进行入队处理,得到Coflow报文的存储队列;
S5:根据步骤S4得到的存储队列和各Coflow优先级对应虚拟传输完成时间,对数据报文进行出队处理,得到调度报文,实现对Coflow进行调度。
进一步地,步骤S1中,Coflow子流流量值估计方法,包括如下步骤:
S1-1:判断是否到达主机侧预设上报周期,若是则进入步骤S1-2,执行主机侧的统计和上报,否则进入步骤S1-4;
S1-2:计算本地Coflow子流的估计值;
S1-3:将Coflow子流周期内到达报文的累计值归零,并重置预设上报周期,进入步骤S1-1;
S1-4:得到主机侧的Coflow子流周期内到达报文流量的累计值、Coflow子流在传输队列中的报文流量累计值和Coflow子流传输完成报文流量累计值;
S1-5:判断是否到达预设上报仿真时长,若是则结束主机侧的上报,否则进入步骤S1-1。
进一步地,步骤S1-2中,本地Coflow子流的估计值的计算公式为:
Figure GDA0001677547720000041
式中,
Figure GDA0001677547720000042
为本地Coflow子流在发送端主机统计的流量估计值;
Figure GDA0001677547720000043
为Coflow子流在发送端主机传输队列中的累计报文流量值;
Figure GDA0001677547720000044
为Coflow子流在发送端主机统计到的传输完成报文累计流量值;
Figure GDA0001677547720000045
为Coflow子流在发送端主机周期内到达报文的累计值。
进一步地,步骤S2中,控制器侧Coflow优先级制定方法,包括如下步骤:
S2-1:判断是否到达控制器算法预设执行周期,若是则进入步骤S2-2,否则进入步骤S2-4;
S2-2:根据本地Coflow子流流量的估计值,计算Coflow对应的瓶颈值,并结合瓶颈阈值,对各Coflow进行优先级的划分,得到各Coflow的对应优先级;
S2-3:将各Coflow的对应优先级编码到报文中,下发至各主机,并重置预设执行周期,并进入步骤S2-1;
S2-4:统计各主机上报的本地Coflow子流流量的估计值,得到本地Coflow子流的发送总估计值和本地Coflow子流的接收总估计值;
S2-5:判断是否到达算法预设仿真时长,若是则结束控制器侧控制算法,否则进入步骤S2-1。
进一步地,步骤S2-2中,Coflow对应的瓶颈值的计算公式为:
Figure GDA0001677547720000046
式中,bottleneck(c)为Coflow对应的瓶颈值;
Figure GDA0001677547720000047
为本地Coflow子流的发送总估计值;
Figure GDA0001677547720000051
为本地Coflow子流的接收总估计值;
本地Coflow子流的接收总估计值的计算公式为:
Figure GDA0001677547720000052
式中,
Figure GDA0001677547720000053
为本地Coflow子流的接收总估计值;
Figure GDA0001677547720000054
为本地Coflow子流的接收估计值;i∈I_r(n,c)表示接收端主机n中属于Coflow c的流的集合;
本地Coflow子流的发送总估计值的计算公式为:
Figure GDA0001677547720000055
式中,
Figure GDA0001677547720000056
为本地Coflow子流的发送总估计值;
Figure GDA0001677547720000057
为本地Coflow子流的发送估计值;I(n,c)为发送端主机n中属于Coflow c的流的集合。
进一步地,步骤S3中,控制器报文处理方法,包括如下步骤:
S3-1:在主机侧解析步骤S2中的报文的内容,得到各Coflow对应的优先级;
S3-2:根据Coflow与其优先级的对应关系,得到每个优先级包含的CoflowID,并根据Coflow到达时间的顺序更新Coflow优先级map;
S3-3:判断Coflow优先级map是否改变,若是则进入步骤S3-4,否则不更新Coflow优先级对应的虚拟传输完成时间,并结束方法;
S3-4:根据WFQ调度方法,计算各Coflow优先级对应的虚拟传输完成时间。
进一步地,步骤S4中,数据报文入队处理的方法,包括如下步骤:
S4-1:判断主机本地是否有该数据报文所属Coflow的记录,若是则进入步骤S4-5,否则进入步骤S4-2;
S4-2:判断Coflow优先级map中最高优先级对应队列是否为空,若是则进入步骤S4-3,否则不更新Coflow最高优先级对应虚拟传输完成时间,并进入步骤S4-4;
S4-3:根据WFQ调度方法,计算Coflow最高优先级对应虚拟传输完成时间;
S4-4:将该Coflow的优先级设为最高优先级,并更新主机本地的Coflow优先级map;
S4-5:将数据报文和该Coflow数据报文的到达时间存入与Coflow编号对应的存储队列中,并输出存储队列。
8.根据权利要求7所述的基于子流流量值估计方法的Coflow调度方法,其特征在于,所述步骤S4-3中,Coflow最高优先级对应虚拟传输完成时间的计算公式为:
Figure GDA0001677547720000061
式中,V_finish[i]为Coflow优先级对应虚拟传输完成时间;A[i]为位于首位的Coflow对应存储队列中队首报文的到达时间;P[i]为位于首位的Coflow对应存储队列中队首报文的报文大小值;w[i]为Coflow优先级i对应权重;w[l]为Coflow优先级l的对应权重;R为实际链路速率。
进一步地,步骤S5中,数据报文出队处理的方法,包括如下步骤:
S5-1:根据WFQ调度方法和各Coflow优先级对应虚拟传输完成时间,选择对应虚拟传输完成时间最小的优先级作为本轮待调度Coflow优先级;
S5-2:根据本轮待调度优先级包含的Coflow中的Coflow到达时间,得到到达时间最早的Coflow作为待调度Coflow,其编号作为TRAN_ID;
S5-3:选择编号为TRAN_ID的Coflow存储队列,从中选择队首报文弹出,输出调度报文。
S5-4:判断步骤S5-1中得到的本轮待调度Coflow优先级中对应的Coflow报文是否为空,若是则不更新本轮待调度Coflow优先级的虚拟传输完成时间,并结束方法,否则进入步骤S5-5;
S5-5:根据WFQ调度方法,计算本轮待调度Coflow优先级的虚拟传输完成时间。
进一步地,Coflow优先级的虚拟传输完成时间的计算公式为:
Figure GDA0001677547720000071
式中,V_finish[i]为Coflow优先级对应虚拟传输完成时间;V_start[i]为Coflow优先级对应虚拟传输开始时间;P[i]为位于首位的Coflow对应存储队列中队首报文的报文大小值;w[i]为Coflow优先级i对应权重;w[l]为Coflow优先级l的对应权重;R为实际链路速率;
V_start[i]=max{A[i],V_pre[i]}
式中,V_start[i]为Coflow优先级对应虚拟传输开始时间;A[i]为位于首位的Coflow对应存储队列中队首报文的到达时间;V_pre[i]为Coflow优先级map中优先级i上一次计算的虚拟传输完成时间。
本方案的有益效果为:
(1)本发明根据Coflow瓶颈大小制定Coflow优先级,充分利用已知信息,提高了准确性;
(2)改进了Coflow子流大小的估计方法,提高了方案的合理性;
(3)有效减小了平均Coflow完成时间,提高并行计算应用的处理效率;
(4)本发明所提出的Coflow调度机制,部署简单,算法复杂度低,可应用于大业务量场景,实现数据中心高效的Coflow调度。
附图说明
图1为基于子流流量值估计方法的Coflow调度方法流程图;
图2为Coflow子流流量值估计方法流程图;
图3为控制器侧Coflow优先级制定方法流程图;
图4为控制器报文处理方法流程图;
图5为数据报文入队处理的方法流程图;
图6为数据报文出队处理的方法流程图。
具体实施方式
下面对本发明的具体实施方式进行描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
本发明实施例中,一种基于子流流量值估计方法的Coflow调度方法,如图1所示,包括如下步骤:
S1:使用Coflow子流流量值估计方法,周期性对主机侧各Coflow子流流量值进行估计,并将Coflow子流流量的估计值周期性上报给控制器;
Coflow子流流量值估计方法,如图2所示,包括如下步骤:
S1-1:判断是否到达主机侧预设上报周期,若是则进入步骤S1-2,执行主机侧的统计和上报,否则进入步骤S1-4;
S1-2:计算本地Coflow子流的估计值;
本地Coflow子流的估计值的计算公式为:
Figure GDA0001677547720000091
式中,
Figure GDA0001677547720000092
为本地Coflow子流在发送端主机统计的流量估计值;
Figure GDA0001677547720000093
为Coflow子流在发送端主机传输队列中的累计报文流量值;
Figure GDA0001677547720000094
为Coflow子流在发送端主机统计到的传输完成报文累计流量值;
Figure GDA0001677547720000095
为Coflow子流在发送端主机周期内到达报文的累计值;
S1-3:将Coflow子流周期内到达报文的累计值归零,并重置预设上报周期,进入步骤S1-1;
S1-4:得到主机侧的Coflow子流周期内到达报文流量的累计值、Coflow子流在传输队列中的报文流量累计值和Coflow子流传输完成报文流量累计值;
S1-5:判断是否到达预设上报仿真时长,若是则结束主机侧的上报,否则进入步骤S1-1;
在Coflow子流流量值估计方法运行时,不会在第一个循环内到达预设上报周期,从而方法由步骤S1-1直接进入步骤S1-4,得到主机侧的Coflow子流周期内到达报文流量的累计值、Coflow子流在传输队列中的报文流量累计值和Coflow子流传输完成报文流量累计值,预设上报周期小于预设上报仿真时长,重新进入步骤S1-1,当到达主机侧预设上报周期时,进行本地Coflow子流的估计值的计算;
S2:根据Coflow子流流量的估计值,通过控制器侧Coflow优先级制定方法,计算Coflow对应优先级,并下发携带Coflow优先级信息的报文到各主机;
控制器侧Coflow优先级制定方法,如图3所示,包括如下步骤:
S2-1:判断是否到达控制器算法预设执行周期,若是则进入步骤S2-2,否则进入步骤S2-4;
S2-2:根据本地Coflow子流流量的估计值,计算Coflow对应的瓶颈值,并结合瓶颈阈值,对各Coflow进行优先级的划分,得到各Coflow的对应优先级;
Coflow对应的瓶颈值的计算公式为:
Figure GDA0001677547720000101
式中,bottleneck(c)为Coflow对应的瓶颈值;
Figure GDA0001677547720000102
为本地Coflow子流的发送总估计值;
Figure GDA0001677547720000103
为本地Coflow子流的接收总估计值;
本地Coflow子流的接收总估计值的计算公式为:
Figure GDA0001677547720000104
式中,
Figure GDA0001677547720000105
为本地Coflow子流的接收总估计值;
Figure GDA0001677547720000106
为本地Coflow子流的接收估计值;i∈I_r(n,c)表示接收端主机n中属于Coflow c的流的集合;
本地Coflow子流的发送总估计值的计算公式为:
Figure GDA0001677547720000107
式中,
Figure GDA0001677547720000108
为本地Coflow子流的发送总估计值;
Figure GDA0001677547720000109
为本地Coflow子流的发送估计值;I(n,c)为发送端主机n中属于Coflow c的流的集合;
S2-3:将各Coflow的对应优先级编码到报文中,下发至各主机,并重置预设执行周期,并进入步骤S2-1;
S2-4:统计各主机上报的本地Coflow子流流量的估计值,得到本地Coflow子流的发送总估计值和本地Coflow子流的接收总估计值;
S2-5:判断是否到达算法预设仿真时长,若是则结束控制器侧控制算法,否则进入步骤S2-1;
在控制器侧Coflow优先级制定方法运行时,不会在第一个循环内到达控制器算法预设执行周期,从而方法由步骤S2-1直接进入步骤S2-4,统计各主机上报的本地Coflow子流流量的估计值,得到本地Coflow子流的发送总估计值和本地Coflow子流的接收总估计值,预设执行周期小于算法预设仿真时长,重新进入步骤S2-1,当到达控制器算法预设执行周期时,根据本地Coflow子流流量的估计值,计算Coflow对应的瓶颈值,并结合瓶颈阈值,对各Coflow进行优先级的划分,得到各Coflow的对应优先级;
S3:在主机侧根据控制器下发的报文中携带的Coflow优先级信息,使用控制器报文处理方法,调整本地Coflow优先级对应关系,更新Coflow优先级map和各Coflow优先级对应虚拟传输完成时间,生成数据报文;
控制器报文处理方法,如图4所示,包括如下步骤:
S3-1:在主机侧解析步骤S2中的报文的内容,得到各Coflow对应的优先级;
S3-2:根据Coflow与其优先级的对应关系,得到每个优先级包含的CoflowID,并根据Coflow到达时间的顺序更新Coflow优先级map;
S3-3:判断Coflow优先级map是否改变,若是则进入步骤S3-4,否则不更新Coflow优先级对应的虚拟传输完成时间,并结束方法;
S3-4:根据WFQ调度方法,计算各Coflow优先级对应的虚拟传输完成时间;
Coflow优先级的虚拟传输完成时间的计算公式为:
Figure GDA0001677547720000111
式中,V_finish[i]为Coflow优先级对应虚拟传输完成时间;V_start[i]为Coflow优先级对应虚拟传输开始时间;P[i]为位于首位的Coflow对应存储队列中队首报文的报文大小值;w[i]为Coflow优先级i对应权重;w[l]为Coflow优先级l的对应权重;R为实际链路速率;
V_start[i]=max{A[i],V_pre[i]}
式中,V_start[i]为Coflow优先级对应虚拟传输开始时间;A[i]为位于首位的Coflow对应存储队列中队首报文的到达时间;V_pre[i]为Coflow优先级map中优先级i上一次计算的虚拟传输完成时间;
S4:在主机侧对步骤S3生成的数据报文进行入队处理,得到Coflow报文的存储队列;
数据报文入队处理的方法,如图5所示,包括如下步骤:
S4-1:判断主机本地是否有该数据报文所属Coflow的记录,若是则进入步骤S4-5,否则进入步骤S4-2;
S4-2:判断Coflow优先级map中最高优先级对应队列是否为空,若是则进入步骤S4-3,否则不更新Coflow最高优先级对应虚拟传输完成时间,并进入步骤S4-4;
S4-3:根据WFQ调度方法,计算Coflow最高优先级对应虚拟传输完成时间;
Coflow最高优先级对应虚拟传输完成时间的计算公式为:
Figure GDA0001677547720000121
式中,V_finish[i]为Coflow优先级对应虚拟传输完成时间;A[i]为位于首位的Coflow对应存储队列中队首报文的到达时间;P[i]为位于首位的Coflow对应存储队列中队首报文的报文大小值;w[i]为Coflow优先级i对应权重;w[l]为Coflow优先级l的对应权重;R为实际链路速率;
S4-4:将该Coflow的优先级设为最高优先级,并更新主机本地的Coflow优先级map;
S4-5:将数据报文和该Coflow数据报文的到达时间存入与Coflow编号对应的存储队列中,并输出存储队列;
S5:根据步骤S4得到的存储队列和各Coflow优先级对应虚拟传输完成时间,对数据报文进行出队处理,得到调度报文,实现对Coflow进行调度;
数据报文出队处理的方法,如图6所示,包括如下步骤:
S5-1:根据WFQ调度方法和各Coflow优先级对应虚拟传输完成时间,选择对应虚拟传输完成时间最小的优先级作为本轮待调度Coflow优先级;
S5-2:根据本轮待调度优先级包含的Coflow中的Coflow到达时间,得到到达时间最早的Coflow作为待调度Coflow,其编号作为TRAN_ID;
S5-3:选择编号为TRAN_ID的Coflow存储队列,从中选择队首报文弹出,输出调度报文。
S5-4:判断步骤S5-1中得到的本轮待调度Coflow优先级中对应的Coflow报文是否为空,若是则不更新本轮待调度Coflow优先级的虚拟传输完成时间,并结束方法,否则进入步骤S5-5;
S5-5:根据WFQ调度方法,计算本轮待调度Coflow优先级的虚拟传输完成时间;
Coflow优先级的虚拟传输完成时间的计算公式为:
Figure GDA0001677547720000131
式中,V_finish[i]为Coflow优先级对应虚拟传输完成时间;V_start[i]为Coflow优先级对应虚拟传输开始时间;P[i]为位于首位的Coflow对应存储队列中队首报文的报文大小值;w[i]为Coflow优先级i对应权重;w[l]为Coflow优先级l的对应权重;R为实际链路速率;
V_start[i]=max{A[i],V_pre[i]}
式中,V_start[i]为Coflow优先级对应虚拟传输开始时间;A[i]为位于首位的Coflow对应存储队列中队首报文的到达时间;V_pre[i]为Coflow优先级map中优先级i上一次计算的虚拟传输完成时间。
本发明提供了一种准确性高、优化性高、合理性高、高效性和处理效率高的基于子流流量值估计方法的Coflow调度方法,解决了现有技术存在的缺乏准确性、影响调度策略的优化效果、方案缺乏合理性以及优化性和处理效率低的问题。

Claims (9)

1.一种基于子流流量值估计方法的Coflow调度方法,其特征在于,包括如下步骤:
S1:使用Coflow子流流量值估计方法,周期性对主机侧各Coflow子流流量值进行估计,并将Coflow子流流量的估计值周期性上报给控制器;
S2:根据Coflow子流流量的估计值,通过控制器侧Coflow优先级制定方法,计算Coflow对应优先级,并下发携带Coflow优先级信息的报文到各主机,所述步骤S2中,控制器侧Coflow优先级制定方法,包括如下步骤:
S2-1:判断是否到达控制器算法预设执行周期,若是则进入步骤S2-2,否则进入步骤S2-4;
S2-2:根据主机本地Coflow子流流量的估计值,计算Coflow对应的瓶颈值,并结合瓶颈阈值,对各Coflow进行优先级的划分,得到各Coflow的对应优先级;
S2-3:将各Coflow的对应优先级编码到报文中,下发至各主机,并重置预设执行周期,并进入步骤S2-1;
S2-4:统计各主机上报的主机本地Coflow子流流量的估计值,得到主机本地Coflow子流的发送总估计值和主机本地Coflow子流的接收总估计值;
S2-5:判断是否到达算法预设仿真时长,若是则结束控制器侧控制算法,否则进入步骤S2-1;
S3:在主机侧根据控制器下发的报文中携带的Coflow优先级信息,使用控制器报文处理方法,调整主机本地Coflow优先级对应关系,更新Coflow优先级map和各Coflow优先级对应虚拟传输完成时间,生成数据报文,其中,map表示映射;
S4:在主机侧对步骤S3生成的数据报文进行入队处理,得到Coflow报文的存储队列;
S5:根据步骤S4得到的存储队列和各Coflow优先级对应虚拟传输完成时间,对数据报文进行出队处理,得到调度报文,实现对Coflow进行调度。
2.根据权利要求1所述的基于子流流量值估计方法的Coflow调度方法,其特征在于,所述步骤S1中,Coflow子流流量值估计方法,包括如下步骤:
S1-1:判断是否到达主机侧预设上报周期,若是则进入步骤S1-2,执行主机侧的统计和上报,否则进入步骤S1-4;
S1-2:计算主机本地Coflow子流的估计值;
S1-3:将Coflow子流周期内到达报文流量的累计值归零,并重置预设上报周期,进入步骤S1-1;
S1-4:得到主机侧的Coflow子流周期内到达报文流量的累计值、Coflow子流在传输队列中的报文流量累计值和Coflow子流传输完成报文流量累计值;
S1-5:判断是否到达预设上报仿真时长,若是则结束主机侧的上报,否则进入步骤S1-1。
3.根据权利要求2所述的基于子流流量值估计方法的Coflow调度方法,其特征在于,所述步骤S1-2中,主机本地Coflow子流的估计值的计算公式为:
Figure FDA0002369165530000021
式中,
Figure FDA0002369165530000022
为主机本地Coflow子流在发送端主机统计的流量估计值;
Figure FDA0002369165530000023
为Coflow子流在发送端主机传输队列中的累计报文流量值;
Figure FDA0002369165530000024
为Coflow子流在发送端主机统计到的传输完成报文累计流量值;
Figure FDA0002369165530000025
为Coflow子流在发送端主机周期内到达报文流量的累计值。
4.根据权利要求1所述的基于子流流量值估计方法的Coflow调度方法,其特征在于,所述步骤S2-2中,Coflow对应的瓶颈值的计算公式为:
Figure FDA0002369165530000031
式中,bottleneck(c)为Coflow对应的瓶颈值;
Figure FDA0002369165530000032
为本地Coflow子流的发送总估计值;
Figure FDA0002369165530000033
为主机本地Coflow子流的接收总估计值;
本地Coflow子流的接收总估计值的计算公式为:
Figure FDA0002369165530000034
式中,
Figure FDA0002369165530000035
为主机本地Coflow子流的接收总估计值;
Figure FDA0002369165530000036
为主机本地Coflow子流的接收估计值;i∈I_r(n,c)表示接收端主机n中属于Coflow c的流的集合;
主机本地Coflow子流的发送总估计值的计算公式为:
Figure FDA0002369165530000037
式中,
Figure FDA0002369165530000038
为主机本地Coflow子流的发送总估计值;
Figure FDA0002369165530000039
为主机本地Coflow子流的发送估计值;I(n,c)为发送端主机n中属于Coflow c的流的集合。
5.根据权利要求1所述的基于子流流量值估计方法的Coflow调度方法,其特征在于,所述步骤S3中,控制器报文处理方法,包括如下步骤:
S3-1:在主机侧解析步骤S2中的报文的内容,得到各Coflow对应的优先级;
S3-2:根据Coflow与其优先级的对应关系,得到每个优先级包含的Coflow ID,并根据Coflow到达时间的顺序更新Coflow优先级map;
S3-3:判断Coflow优先级map是否改变,若是则进入步骤S3-4,否则不更新Coflow优先级对应的虚拟传输完成时间,并结束方法,其中,map表示映射;
S3-4:根据WFQ调度方法,计算各Coflow优先级对应的虚拟传输完成时间。
6.根据权利要求1所述的基于子流流量值估计方法的Coflow调度方法,其特征在于,所述步骤S4中,数据报文入队处理的方法,包括如下步骤:
S4-1:判断主机本地是否有该数据报文所属Coflow的记录,若是则进入步骤S4-5,否则进入步骤S4-2;
S4-2:判断Coflow优先级map中最高优先级对应队列是否为空,若是则进入步骤S4-3,否则不更新Coflow最高优先级对应虚拟传输完成时间,并进入步骤S4-4,其中,map表示映射;
S4-3:根据WFQ调度方法,计算Coflow最高优先级对应虚拟传输完成时间;
S4-4:将该Coflow的优先级设为最高优先级,并更新主机本地的Coflow优先级map;
S4-5:将数据报文和该Coflow数据报文的到达时间存入与Coflow编号对应的存储队列中,并输出存储队列。
7.根据权利要求6所述的基于子流流量值估计方法的Coflow调度方法,其特征在于,所述步骤S4-3中,Coflow最高优先级对应虚拟传输完成时间的计算公式为:
Figure FDA0002369165530000041
式中,V_finish[i]为Coflow优先级对应虚拟传输完成时间;A[i]为位于首位的Coflow对应存储队列中队首报文的到达时间;P[i]为位于首位的Coflow对应存储队列中队首报文的报文大小值;w[i]为Coflow优先级i对应权重;w[l]为Coflow优先级l的对应权重;R为实际链路速率。
8.根据权利要求1所述的基于子流流量值估计方法的Coflow调度方法,其特征在于,所述步骤S5中,数据报文出队处理的方法,包括如下步骤:
S5-1:根据WFQ调度方法和各Coflow优先级对应虚拟传输完成时间,选择对应虚拟传输完成时间最小的优先级作为本轮待调度Coflow优先级;
S5-2:根据本轮待调度优先级包含的Coflow中的Coflow到达时间,得到到达时间最早的Coflow作为待调度Coflow,其编号作为TRAN_ID;
S5-3:选择编号为TRAN_ID的Coflow存储队列,从中选择队首报文弹出,输出调度报文;
S5-4:判断步骤S5-1中得到的本轮待调度Coflow优先级中对应的Coflow报文是否为空,若是则不更新本轮待调度Coflow优先级的虚拟传输完成时间,并结束方法,否则进入步骤S5-5;
S5-5:根据WFQ调度方法,计算本轮待调度Coflow优先级的虚拟传输完成时间。
9.根据权利要求5或8所述的基于子流流量值估计方法的Coflow调度方法,其特征在于,所述Coflow优先级的虚拟传输完成时间的计算公式为:
Figure FDA0002369165530000051
式中,V_finish[i]为Coflow优先级对应虚拟传输完成时间;V_start[i]为Coflow优先级对应虚拟传输开始时间;P[i]为位于首位的Coflow对应存储队列中队首报文的报文大小值;w[i]为Coflow优先级i对应权重;w[l]为Coflow优先级l的对应权重;R为实际链路速率;
V_start[i]=max{A[i],V_pre[i]}
式中,V_start[i]为Coflow优先级对应虚拟传输开始时间;A[i]为位于首位的Coflow对应存储队列中队首报文的到达时间;V_pre[i]为Coflow优先级map中优先级i上一次计算的虚拟传输完成时间,map表示映射。
CN201810420239.2A 2018-05-04 2018-05-04 一种基于子流流量值估计方法的Coflow调度方法 Active CN108712305B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810420239.2A CN108712305B (zh) 2018-05-04 2018-05-04 一种基于子流流量值估计方法的Coflow调度方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810420239.2A CN108712305B (zh) 2018-05-04 2018-05-04 一种基于子流流量值估计方法的Coflow调度方法

Publications (2)

Publication Number Publication Date
CN108712305A CN108712305A (zh) 2018-10-26
CN108712305B true CN108712305B (zh) 2020-03-31

Family

ID=63867849

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810420239.2A Active CN108712305B (zh) 2018-05-04 2018-05-04 一种基于子流流量值估计方法的Coflow调度方法

Country Status (1)

Country Link
CN (1) CN108712305B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110708259B (zh) * 2019-09-25 2023-07-07 江苏省未来网络创新研究院 自动调整队列阈值的信息无感知Coflow调度***及其调度方法
CN111756653B (zh) * 2020-06-04 2022-03-04 北京理工大学 基于图神经网络深度强化学习的多coflow调度方法
EP4111310A1 (en) * 2020-10-06 2023-01-04 Huawei Technologies Co., Ltd. Device and method for coflow tracking and scheduling
CN117221126B (zh) * 2023-11-09 2024-02-13 之江实验室 一种面向网络协同流量的路由调度方法与***

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105227488A (zh) * 2015-08-25 2016-01-06 上海交通大学 一种用于分布式计算机平台的网络流组调度方法
CN105827545A (zh) * 2016-04-21 2016-08-03 中国科学院信息工程研究所 数据中心网络中tcp共流的调度方法和装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105227488A (zh) * 2015-08-25 2016-01-06 上海交通大学 一种用于分布式计算机平台的网络流组调度方法
CN105827545A (zh) * 2016-04-21 2016-08-03 中国科学院信息工程研究所 数据中心网络中tcp共流的调度方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Leveraging multiple coflow attributes for information-agnostic coflow scheduling;Shuo Wang 等;《2017 IEEE International Conference on Communications (ICC)》;20170731;第II-III节 *

Also Published As

Publication number Publication date
CN108712305A (zh) 2018-10-26

Similar Documents

Publication Publication Date Title
CN108712305B (zh) 一种基于子流流量值估计方法的Coflow调度方法
US10764215B2 (en) Programmable broadband gateway hierarchical output queueing
Ghodsi et al. Multi-resource fair queueing for packet processing
CN108768876B (zh) 一种面向机器学习框架的流量调度方法
Guo et al. On efficient bandwidth allocation for traffic variability in datacenters
Liu et al. eBA: Efficient bandwidth guarantee under traffic variability in datacenters
CN101834786B (zh) 队列调度的方法和装置
US20070242675A1 (en) Dual scheduling for efficient network traffic management
WO2018233425A1 (zh) 网络拥塞的处理方法、装置及***
US20220124039A1 (en) Fine Grain Traffic Shaping Offload For A Network Interface Card
EP2740245A1 (en) A scalable packet scheduling policy for vast number of sessions
Oral et al. Evaluation of the shortest processing time scheduling rule with truncation process
Li et al. Endpoint-flexible coflow scheduling across geo-distributed datacenters
CN113132265A (zh) 一种多路以太网的多级调度方法和装置
CN110177056B (zh) 一种自动适应的带宽控制方法
Gao et al. Flash: Joint flow scheduling and congestion control in data center networks
CN101374109A (zh) 一种报文调度方法和调度装置
Gao et al. DemePro: DEcouple packet Marking from Enqueuing for multiple services with PROactive congestion control
CN106209683B (zh) 基于数据中心广域网的数据传输方法及***
Jajoo et al. Saath: Speeding up coflows by exploiting the spatial dimension
Zhang et al. ATFQ: a fair and efficient packet scheduling method in multi-resource environments
da Silva et al. Algorithm for the placement of groups of virtual machines in data centers
Zhang et al. Scheduling coflows with incomplete information
Uchechukwu et al. Scalable analytic models for performance efficiency in the cloud
Wang et al. Efficient and fair: Information-agnostic online coflow scheduling by combining limited multiplexing with drl

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