CN111343104B - 一种实现带权带宽分配的拥塞控制方法 - Google Patents

一种实现带权带宽分配的拥塞控制方法 Download PDF

Info

Publication number
CN111343104B
CN111343104B CN202010135425.9A CN202010135425A CN111343104B CN 111343104 B CN111343104 B CN 111343104B CN 202010135425 A CN202010135425 A CN 202010135425A CN 111343104 B CN111343104 B CN 111343104B
Authority
CN
China
Prior art keywords
link
network
streams
parameter
priority
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
CN202010135425.9A
Other languages
English (en)
Other versions
CN111343104A (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.)
Guangzhou Zhanfu Technology Co.,Ltd.
Original Assignee
Southwest Jiaotong University
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 Southwest Jiaotong University filed Critical Southwest Jiaotong University
Priority to CN202010135425.9A priority Critical patent/CN111343104B/zh
Publication of CN111343104A publication Critical patent/CN111343104A/zh
Application granted granted Critical
Publication of CN111343104B publication Critical patent/CN111343104B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • 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
    • 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/522Dynamic queue service slot or variable bandwidth allocation

Abstract

本发明公开一种实现带权带宽分配的拥塞控制方法,将流对ECN标记的敏感程度用x参数表示,通过全局控制器接纳应用提交的网络带宽分配需求,并根据这些传输需求的优先级顺序,计算并更新各个流的x参数值,对每个流的x参数的取值下限x_min进行取值,并对经过一个链路的所有流的x参数之和的上限x_sum进行估算。本发明在性能上,够让全局网络按照给定的优先级进行带宽的差异化分配,实现全局优化;在应用和部署上,该方案只需引入一个控制器,对现有传输协议做非常小的改动,无需修改交换机硬件,易于实现和部署。

Description

一种实现带权带宽分配的拥塞控制方法
技术领域
本发明涉网络数据传输及技术领域,具体为一种实现带权带宽分配的拥塞控制方法。
背景技术
在数据中心里,不同的数据传输任务往往具有不同的重要程度。它们希望网络能够按照传输任务的优先顺序,提供差异化的带宽分配,而不是简单的按照流的粒度进行公平性的带宽分配。例如,在优化平均任务完成时间的场景中,这些流希望网络能够按照剩余任务量越小越优先的顺序来分配带宽,这样能够实现平均流完成时间的优化。而在优化时限满足性的场景中,这些流具有最晚完成时限属性,如果实际的传输完成时间超过了该最晚完成实现,则收益会下降,此时,这些流希望网络能够按照最晚完成时间剩余时间少的流优先的策略分配带宽,从而让更多的流能够在自己的最晚完成时限内完成。
因此,如何在网络中为传输任务提供差异化的带宽分配服务,按照任务给定的优先顺序分配带宽,是十分重要的网络需求。
目前已有多种能够实现按优先级带宽分配的方案,大致分为以下几类。
第一类方案是设计一个集中的控制器,严格的控制网络中的每个数据包应该何时进行发送,或者限制每个流的发送速率,通过集中式的精确控制,让不同的流按照优先关系占用网络链路。这类方法有两方面缺点。一是控制器管控的内容太多太细,成为整个网络的性能瓶颈;二是与传统网络兼容性不好,需要做大量的协议修改。
第二类方案是让每个数据包携带优先级值,然后让设计新颖的网络交换机或者路由器,让网络设备严格的按照流的优先级顺序近排队和转发,从而实现按照优先级的带宽分配。这种方法虽然能够实现很好的调度效果,但是需要交换机进行复杂的计算和处理,而目前的交换机支持的优先级数目非常有限,因此这种方案很难在实际生产中进行部署。
第三类方案则是在第二类方案的基础上做出了一些设计妥协。因为目前的大部分交换机具备支持4-8个数目不等优先级的队列能力。因此这类方案通过动态的将不同的流所需的优先级映射到这些已有的数量的优先级上,虽然会有一定的性能损失,但是也能较好的实现按优先级进行带宽分配的目的。不过这种方案依然存在部署的问题。这是因为,实际的数据中心里同通常是很多类的业务并存。这些网络优先级往往已经预留给了特殊的应用或者服务,最后每类应用最多只有一个队列可以用。当多个同类业务经过同一个链路时,这些方案依然无法在这些相同业务类型的多个流之间按照优先顺序使用带宽。
此外,还有一些方案则是通过控制DCTCP(数据中心传输控制协议Data CenterTransmission Control Protocol)拥塞控制窗口在应对ECN(显式拥塞通知ExplicitCongestion Notification)标记时的减少幅度来控制每个流对拥塞反应,从而让不同的流按照不同的优先顺序抢占带宽。具体的,假设某个TCP流的当前拥塞窗口为W,接收者反馈的标记ECN的ACK所占比例值的滑动平均值为a,是[0,1]之间的小数。在传统的DCTCP协议中,DCTCP发送方在收到带ECN标记的ACK后,将对窗口进行调整。先后出现了两种调整策略:A策略收到一个ECN标记的ACK后将W减少Wa/2(即W=W*(1-a/2),并确保在一个窗口的数据量内W最多因此减少一次;B策略每收到一个ECN标记的ACK后,将W减少a/2,由于在拥塞避免情况下发送方每收到一个ACK还会将拥塞窗口增加1/W,因此此种情况下拥塞控制窗口的改变情况是:W=W+1/W-a/2。
为了让不同的流对拥塞有不同处理,这类方案主要是对A策略进行修改。让发送方在遇到ECN时,对窗口的更新方式改变为W=W*(1-p/2);其中p=ad (a的d次幂),d是一个每个流可以单独配置的参数。这类方案有连发面的缺点,一是d的取值情况和带宽分配结果之间的关系并不明确,没有完备的理论支撑;二是不同的流之间d的选择相互独立,缺乏全局的视角,很难做到全局协作优化。
研究表明,对于采用了类DCTCP拥塞控制机制的传输协议,通过给每个流设置x参数,然后让发送者在进行窗口调整时,不再都是以Wa/2(如果是A策略)或者a/2(如果是B策略)进行拥塞窗口的调整,而是以Wa/(2x)或者a/(2x)进行调整,网络可以让这些流在共同瓶颈链路上分得的带宽与各自的x参数值成比例。
基于这一理论发现,对于优先级更高的流,网络只需要让其x参数值更大,即可实现按优先级的带权带宽分配。
因此,对于要实现平均流完成时间优化,或者时限满足性优化的传输场景,网络只需要让优先级更高的流的x参数更大即可。
发明内容
针对上述问题,本发明的目的在于提供一种x参数的计算方法,能够让全局网络按照给定的优先级对并发的流进行差异化的带宽分配。技术方案如下:
一种实现带权带宽分配的拥塞控制方法,包括:
(1)定义流:将网络中的数据存储节点作为发送方,数据请求者作为接收方,发送方向接收方发送数据,接收方收到后反馈确认消息,发送的数据和收到的确认反馈一起称为一个流;
(2)定义x参数:将流对ECN标记的敏感程度用x参数表示,x取值越大越不敏感;不同的流的x取值不同;
通过全局控制器接纳应用提交的网络带宽分配需求,并根据这些传输需求的优先级顺序,计算并更新各个流的x参数值;
(3)x参数的计算方法包括:
输入:按照优先级,对网络中的N个传输任务进行排序,排序后分别记为F[1], F[2], …, F[N];且每个传输任务包含一组相互关联的流,其中第F[i]的任务包含的流的集合为P[i],其中的第j个子流记为p[i,j];对于只包含一个子流的传输任务,P[i]={p[i,1]},集合只包含一个流; p[i,j]代表一条子流,也代表这条子流经过链路的集合;
用x_min代表每个流的x参数的取值下限;
用x_sum,代表经过一个链路的所有流的x参数之和的上限;x_sum默认取R*C/2;其中R为网络满载情况下网络中的平均往返延迟,C为网络链路的平均带宽;
输出:所有传输任务每个子流的x参数值记作{x[i,j]};
计算过程如下:
1)初始化集合E为空,用于记录已经分配了较大x值的链路;
2)统计每个链路上经过的流的数目,将经过链路e的流的数目记为num[e];
3)对于每个链路e,创建空队列pi[e],用于记录经过该链路的高优先级的流;
4)从i=1到N,依次处理F[i]任务中的子流;
a. 创建空集合EP,用于记录该任务中的流所经过的链路中,那些将该任务的流保存在高优先级队列pi[e]中的链路;
b. 对于P[i]中的每个子流p[i,j]进行下述处理:若p[i,j]经过集合E中所包含的链路;则x[i,j]=x_min;否则,x[i,j]=x_sum,并将 p[i,j]中的链路添加到集合EP中;对p[i,j]中的每个链路e,将p[i,j]添加到队列pi[e]中;
c. 将集合EP中的链路添加到集合E中;
5) 对网络中的每个链路e:
计算 r=max(1, (x_sum – x_min(num[e] – len(pi[e]))) / len(pi[e])),其中len(pi[e])表示计算并返回pi[e]中包含的流个数;
对pi[e]中的每个流p[i,j],更新其x[i,j] = min(x[i,j], r)
计算完毕。
进一步的,所述x参数的计算和更新有3个触发条件:新任务出现、正在运行的任务结束,或者是正在进行任务的优先级发生改变。
本发明的有益效果是:本发明在性能上,够让全局网络按照给定的优先级进行带宽的差异化分配,实现全局优化;在应用和部署上,该方案只需引入一个控制器,对现有传输协议做非常小的改动,无需修改交换机硬件,易于实现和部署。
具体实施方式
下面结合具体实施例对本发明做进一步详细说明。将网络中的数据存储节点作为发送方,数据请求者作为接收方,发送方向接收方发送数据,接收方收到后反馈确认消息,发送的数据和收到的确认反馈一起称为一个流;将流对ECN标记的敏感程度用x参数表示,x取值越大越不敏感;不同的流的x取值不同;
本发明包含两个组件:
1)全局控制器:全局控制器接纳应用提交的网络带宽分配需求,并根据这些传输需求的优先级顺序,计算并更新各个流的x参数值;x参数的计算和更新有3个触发条件:新任务出现、正在运行的任务结束,或者是正在进行任务的优先级发生改变。
2)工作在发送端的代理模块,能够按照控制器的要求更新每个流的x参数。
是x参数的计算方法
输入:网络中有N个传输任务,它们已经按照优先级进行了排序,排序后分别记为F[1], F[2], …, F[N]。并且,每个传输任务包含一组相互关联的流,其中第F[i]的任务包含的流的集合为P[i],其中的第j个子流记为p[i,j](对于只包含一个子流的传输任务,P[i]={p[i,1]},集合只包含一个流)。在后续描述中,p[i,j]除了代表一条子流,也代表这条子流经过链路的集合;
x_min,可配置的参数,代表每个流的x参数的取值下限;x_min默认取0.5;
x_sum,可配置的参数,代表经过一个链路的所有流的x参数之和的上限;x_sum默认取R*C/2;其中R为网络满载情况下网络中的平均往返延迟,C为网络链路的平均带宽。
输出:所有传输任务每个子流的x参数值:{x[i,j]}。
核心思想:
1)根据x参数的不同,网络中的流可以分为两类,第一类的x取值为0.5,另外一类取值大于0.5,但是整个链路上链路权重之和应当尽量不大于x_sum。
2)对于网络中的每条链路,那么本方法将确保链路上最多只有一个任务的流的取较大的x值,其他任务的流取的较小的x值(即x_min)。
3)一个流能够获得较大的x参数值,等于它在整个路径所有链路上获得的x值中的最小者。
计算过程如下:
1)初始化集合E为空,用于记录已经分配了较大x值的链路;
2)统计每个链路上经过的流的数目,将经过链路e的流的数目记为num[e];
3)对于每个链路e,创建空队列pi[e],用于记录经过该链路的高优先级的流;
4)从i=1到N,依次处理F[i]任务中的子流;
a. 创建空集合EP,用于记录该任务中的流所经过的链路中,那些将该任务的流保存在高优先级队列pi[e]中的链路;
b. 对于P[i]中的每个子流p[i,j]进行下述处理:如果p[i,j]经过了集合E中所包含的链路;那么x[i,j]=x_min;
否者,x[i,j]=x_sum,并将 p[i,j]中的链路添加到集合EP中;
对p[i,j]中的每个链路e,将p[i,j]添加到队列pi[e]中;
c. 将集合EP中的链路添加到集合E中
5) 对网络中的每个链路e:
计算 r=max(1, (x_sum – x_min(num[e] – len(pi[e]))) / len(pi[e]));
对pi[e]中的每个流p[i,j],更新其x[i,j] = min(x[i,j], r)
计算完毕。
计算出来的x值可以用于DCTCP,QUIC等协议中;
任务的优先级如果采用剩余任务越小越优先的方式获得,则本方法所计算获得的x能够实现平均任务传输完成时间的优化;
如果采用时限要求剩余时间越少越优先的方式获得,则本方法所计算获得的x能够实现时限满足性的优化。

Claims (2)

1.一种实现带权带宽分配的拥塞控制方法,其特征在于,包括:
(1)定义流:将网络中的数据存储节点作为发送方,数据请求者作为接收方,发送方向接收方发送数据,接收方收到后反馈确认消息,发送的数据和收到的确认反馈一起称为一个流;
(2)定义x参数:将流对ECN标记的敏感程度用x参数表示,x取值越大越不敏感;不同的流的x取值不同;
通过全局控制器接纳应用提交的网络带宽分配需求,并根据这些传输需求的优先级顺序,计算并更新各个流的x参数值;
(3)x参数的计算方法包括:
输入:按照优先级,对网络中的N个传输任务进行排序,排序后分别记为F[1], F[2],…, F[N];且每个传输任务包含一组相互关联的流,其中第F[i]的任务包含的流的集合为P[i],其中的第j个子流记为p[i,j];对于只包含一个子流的传输任务,P[i]={p[i,1]},集合只包含一个流; p[i,j]代表一条子流,也代表这条子流经过链路的集合;
用x_min代表每个流的x参数的取值下限;
用x_sum,代表经过一个链路的所有流的x参数之和的上限;x_sum默认取R*C/2;其中R为网络满载情况下网络中的平均往返延迟,C为网络链路的平均带宽;
输出:所有传输任务每个子流的x参数值,记作{x[i,j]};
计算过程如下:
初始化集合E为空,用于记录已经分配了较大x值的链路;
统计每个链路上经过的流的数目,将经过链路e的流的数目记为num[e];
对于每个链路e,创建空队列pi[e],用于记录经过该链路的高优先级的流;
从i=1到N,依次处理F[i]任务中的子流;
a. 创建空集合EP,用于记录该任务中的流所经过的链路中,那些将该任务的流保存在高优先级队列pi[e]中的链路;
b. 对于P[i]中的每个子流p[i,j]进行下述处理:若p[i,j]经过集合E中所包含的链路;则x[i,j]=x_min;否则,x[i,j]=x_sum,并将 p[i,j]中的链路添加到集合EP中;对p[i,j]中的每个链路e,将p[i,j]添加到队列pi[e]中;
c. 将集合EP中的链路添加到集合E中;
5) 对网络中的每个链路e:
计算 r=max(1, (x_sum – x_min(num[e] – len(pi[e]))) / len(pi[e])),其中len(pi[e])表示计算并返回pi[e]中包含的流个数;
对pi[e]中的每个流p[i,j],更新其x[i,j] = min(x[i,j], r)
计算完毕。
2.根据权利要求1所述的实现带权带宽分配的拥塞控制方法,其特征在于,所述x参数的计算和更新有3个触发条件:新任务出现、正在运行的任务结束,或者是正在进行任务的优先级发生改变。
CN202010135425.9A 2020-03-02 2020-03-02 一种实现带权带宽分配的拥塞控制方法 Active CN111343104B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010135425.9A CN111343104B (zh) 2020-03-02 2020-03-02 一种实现带权带宽分配的拥塞控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010135425.9A CN111343104B (zh) 2020-03-02 2020-03-02 一种实现带权带宽分配的拥塞控制方法

Publications (2)

Publication Number Publication Date
CN111343104A CN111343104A (zh) 2020-06-26
CN111343104B true CN111343104B (zh) 2022-04-29

Family

ID=71187843

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010135425.9A Active CN111343104B (zh) 2020-03-02 2020-03-02 一种实现带权带宽分配的拥塞控制方法

Country Status (1)

Country Link
CN (1) CN111343104B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114461392B (zh) * 2022-01-25 2023-03-31 西南交通大学 一种带宽感知的选择性数据多播方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108259383A (zh) * 2016-12-29 2018-07-06 北京华为数字技术有限公司 一种数据的传输方法和网络设备
CN108768880A (zh) * 2018-05-29 2018-11-06 华东师范大学 一种sdn环境下基于调节通告窗口方法的拥塞控制机制
CN109873773A (zh) * 2019-03-14 2019-06-11 宁波大学 一种用于数据中心的拥塞控制方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101640017B1 (ko) * 2011-12-23 2016-07-15 한국전자통신연구원 패킷 전송 장비 및 그것의 트래픽 관리 방법
EP3076618B1 (en) * 2015-03-31 2017-09-20 Telefonica, S.A. A computer implemented method, a system and computer programs for congestion control in a transport node of a communication network
US11575609B2 (en) * 2019-07-19 2023-02-07 Intel Corporation Techniques for congestion management in a network

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108259383A (zh) * 2016-12-29 2018-07-06 北京华为数字技术有限公司 一种数据的传输方法和网络设备
CN108768880A (zh) * 2018-05-29 2018-11-06 华东师范大学 一种sdn环境下基于调节通告窗口方法的拥塞控制机制
CN109873773A (zh) * 2019-03-14 2019-06-11 宁波大学 一种用于数据中心的拥塞控制方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Differentiated Congestion Management of Data Traffic for Data Center Ethernet;Shuo Fang等;《 IEEE Transactions on Network and Service Management 》;20111029;第8卷(第4期);全文 *
数据中心网络拥塞控制研究综述;王远;《信息工程大学学报》;20191215(第06期);全文 *

Also Published As

Publication number Publication date
CN111343104A (zh) 2020-06-26

Similar Documents

Publication Publication Date Title
CN111600754B (zh) 一种面向tsn和非tsn互联的工业异构网络调度方法
US6859438B2 (en) Policy based quality of service
US6822940B1 (en) Method and apparatus for adapting enforcement of network quality of service policies based on feedback about network conditions
US8619793B2 (en) Dynamic assignment of traffic classes to a priority queue in a packet forwarding device
US8542585B2 (en) Method and system for transmit scheduling for multi-layer network interface controller (NIC) operation
DE69935587T2 (de) Verfahren und vorrichtung zur weiterleitung von paketen von einer mehrzahl konkurrierender warteschlangen zu einem ausgang
WO1999011003A1 (en) Policy based quality of service
US9455927B1 (en) Methods and apparatus for bandwidth management in a telecommunications system
EP1187404A2 (en) Adaptive-weighted packet scheduler for supporting premium service in a communications network
CN1848812A (zh) 一种用于在分布的网元中均等地调整带宽的方法和系统
CN108768880B (zh) 一种sdn环境下基于调节通告窗口的拥塞控制机制方法
EP1461914A1 (en) Packet scheduling method and apparatus
CN111343104B (zh) 一种实现带权带宽分配的拥塞控制方法
CN112152933B (zh) 一种发送流量的方法和装置
EP1455488B1 (en) System and method for providing differentiated services
EP2025105B1 (en) Call admission control method
US11463370B2 (en) Scalable deterministic services in packet networks
CN112437019A (zh) 用于数据中心的基于信用包的主动型传输方法
CN103327560A (zh) 路由器和用于路由器的通信控制方法
EP4120657A1 (en) System and method for prioritizing network traffic in a distributed environment
Banchs et al. A scalable share differentiation architecture for elastic and real-time traffic
CN114095431A (zh) 队列管理的方法和网络设备
Venkitaraman et al. A core-stateless utility based rate allocation framework
US20240098028A1 (en) Marker Graph for HQoS
WO2022208134A1 (en) Fair hierarchical quality of service marking

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
TR01 Transfer of patent right

Effective date of registration: 20230919

Address after: 518000 1104, Building A, Zhiyun Industrial Park, No. 13, Huaxing Road, Henglang Community, Longhua District, Shenzhen, Guangdong Province

Patentee after: Shenzhen Hongyue Information Technology Co.,Ltd.

Address before: 610031 science and technology division, Southwest Jiao Tong University, 111 north section of two ring road, Sichuan, Chengdu

Patentee before: SOUTHWEST JIAOTONG University

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20231208

Address after: Room 212, No. 118 and 120 Science Avenue, Huangpu District, Guangzhou City, Guangdong Province, 510670

Patentee after: Guangzhou Zhanfu Technology Co.,Ltd.

Address before: 518000 1104, Building A, Zhiyun Industrial Park, No. 13, Huaxing Road, Henglang Community, Longhua District, Shenzhen, Guangdong Province

Patentee before: Shenzhen Hongyue Information Technology Co.,Ltd.

TR01 Transfer of patent right