CN110868359B - 一种网络拥塞控制方法 - Google Patents

一种网络拥塞控制方法 Download PDF

Info

Publication number
CN110868359B
CN110868359B CN201911125459.3A CN201911125459A CN110868359B CN 110868359 B CN110868359 B CN 110868359B CN 201911125459 A CN201911125459 A CN 201911125459A CN 110868359 B CN110868359 B CN 110868359B
Authority
CN
China
Prior art keywords
credit
packet
packets
data
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
Application number
CN201911125459.3A
Other languages
English (en)
Other versions
CN110868359A (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.)
National University of Defense Technology
Original Assignee
National University of Defense Technology
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 National University of Defense Technology filed Critical National University of Defense Technology
Priority to CN201911125459.3A priority Critical patent/CN110868359B/zh
Publication of CN110868359A publication Critical patent/CN110868359A/zh
Application granted granted Critical
Publication of CN110868359B publication Critical patent/CN110868359B/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
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/215Flow control; Congestion control using token-bucket

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

发明提提供了一种网络拥塞控制方法,在发送端发送流数据前在缓冲区设置令牌桶,向接收端发送信用请求,接收所述接收端发来的信用包,根据所述信用包增加所述缓冲区中所述令牌桶容量,当待发送数据包大小小于所述令牌桶容量大小,则发送数据;接收端接收发送端发送的信用请求,向发送端发送信用包;接收发送端发送的数据流;交换机端按照链路容量限制,选择性丢弃信用包,根据所述丢弃信用包的比例,对未被丢弃的信用包进行ECN标记。本发明提供的技术方案与现有技术相比信用数据包调度1538个令牌而不是一个数据包,可以避免调度数据包时的信用浪费,并基于ECN的信用率控制机制,与ExpressPass基于信用的反馈控制相比,该机制可以有效地计算信用损失率。

Description

一种网络拥塞控制方法
技术领域
本发明涉及网络通信领域,特别涉及基于数据中心信用的网络拥塞控制方法。
背景技术
数据中心网络(DCN)的基础结构正在迅速发展,包括链接速度,网络接口卡(NIC)的性能以及交换机的功能。但是,网络用户和流量也在增长,这不可避免地导致网络拥塞。严重的拥塞可能会导致网络性能急剧下降,因此需要有效的拥塞控制方案。
目前许多用于控制网络拥塞的拥塞控制策略已经被提出来,它们可以分为反应型拥塞控制和主动型拥塞控制。反应型拥塞控制旨在控制拥塞发生后的情况。反应型拥塞控制通常需要至少一个往返时间(RTT)来应对拥塞,并需要许多RTT才能收敛到公平。随着链路容量的快速增加,越来越多的流传输将在少数RTT中完成。因此反应型拥塞控制方案难以满足高速DCN的要求。
为了跟上加速网络的步伐,主动性拥塞控制方案正变得越来越热门。诸如ExpressPass之类的主动型拥塞控制方案可以避免拥塞,并实现接近零的排队,非常快的收敛性等。因此,近年来,主动型拥塞控制机制引起了广泛的关注。但是,当前的主动型拥塞控制方案很少考虑具有大量非常短的流的工作负载,这会增加短流的流完成时间(FCT),因为传输协议为短流提供的延迟远高于硬件潜力,特别是在网络负载较高的情况下,对于各种拥塞控制方案,它们基于重尾的工作负载,其中100KB的消息被认为很短,例如用于评估DCTCP和pFabric的Web Search工作负载。不幸的是,在当前的商业数据中心中,有一些应用程序的消息大小比Web Server小得多。因此,现有的数据中心传输设计很少会在高网络负载下实现微小流量的低延迟。
另外,ExpressPass中也存在此问题。ExpressPass根据信用数据包(84字节)和数据数据包(1538字节)的大小比例,分别根据最小和最大以太网帧大小,对信用使用5%的速率限制。但是,由于短流(小于或等于几百个字节)比正常数据包小得多,因此速率限制机制会降低效率,然后显着提高FCT,尤其是在工作负载中绝大多数是小流情况下。而且,对于长流量的尾包,也存在这样的问题。由于尾部等待时间(第99个百分位数)是数据中心应用程序最重要的指标,因此现有设计对于高网络负载下的尾部等待时间不是最理想的。因此,无论流量是非常短还是很大,都需要一种适用于各种工作负载的适当主动方案。
发明内容
为了解决上述问题,本文提出了一种网络拥塞控制方法,这是一种主动传输控制协议,旨在用于短流程以在数据中心网络中实现低延迟。
首先,本发明提供了一种网络拥塞控制方法,应用于发送端,具体为:
在发送流数据前在缓冲区设置令牌桶;向接收端发送信用请求;接收所述接收端发来的信用包;根据所述信用包增加所述缓冲区中所述令牌桶容量;当待发送数据包大小小于所述令牌桶容量大小,则发送数据。
进一步,在接收所述接收端发来的信用包后,根据所述信用包中带有ECN标记的比例,等比例对待发送数据包进行ECN标记。
进一步,所述信用包到达后,所述令牌桶容量增加1538B大小。
优选的,接收所述1个信用包,至少发送1个数据包。
其次,本发明还提供一种网络拥塞控制方法,应用于接收端,具体为:接收发送端发送的信用请求;向发送端发送信用包;接收发送端发送的数据流。
进一步,在向发送端发送信用包前,将所述信用包地ECT字段设置为1。
优选的,根据所述发送端发来的数据包内带有ECN标记的数据包比例,控制信用包的发送速率。
最后,本发明提供了应用于交换机的一种网络拥塞控制方法具体为:按照链路容量限制,选择性丢弃信用包;根据所述丢弃信用包的比例,对未被丢弃的信用包进行ECN标记。
进一步,在所述交换机每个端口设置数据队列和信用队列;将ECN标记阈值K设置为队列的尾部;根据所述信用包被丢弃的个数计算丢包率loss_rate;所述根据所述丢弃信用包的比例,对未被丢弃的信用包进行ECN标记具体为:所述信用队列中,对所述信用包进行ECN标记的概率
PECN=σ/loss_rate
其中,σ为控制因子。
优选的,所述控制因子σ值为1。
本发明提供的技术方案与现有技术相比具有以下优点:
1、信用数据包调度1538个令牌而不是一个数据包,因为一个令牌允许1字节的传输,这可以避免调度数据包时的信用浪费。
2、本发明开发了基于ECN的信用率控制机制,与ExpressPass基于信用的反馈控制相比,该机制可以有效地计算信用损失率。
附图说明
图1为本发明第一实施例方法示意图;
图2为本发明第二实施例方法示意图;
图3为本发明第三实施例方法示意图。
具体实施方式
下面将详细描述本说明书的各个方面的特征和示例性实施例,为了使本说明书的目的、技术方案及优点更加清楚明白,以下结合附图及具体实施例,对本说明书进行进一步详细描述。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
第一实施例:
结合图1,是本发明第一实施例提供的一种网络拥塞控制方法,应用于数据发送端,所述方法具体包括:
S11、在发送流数据前在缓冲区设置令牌桶;
其中,在发送端的缓冲区设置令牌桶,用于接收接收端发来的信用包。
S12、向接收端发送信用请求;
当发送端做好数据发送准备时,向结收端发送信用请求;对于ExpressPass,信用额度被限制为链路容量的5%,其余的95%用于传输数据包。此机制可以有效地充分利用带宽。
S13、接收所述接收端发来的信用包;
在接收所述接收端发来的信用包后,根据所述信用包中带有ECN标记的比例,等比例对待发送数据包进行ECN标记。在发送端,与带有ECN标签的信用数据包相对应的数据数据包也带有ECN标记。在一个RTT周期内,接收到带有ECN标记的数据包的比例等于了该RTT中信用包的平均丢失率。
S14、根据所述信用包增加所述缓冲区中所述令牌桶容量;
当信用包到达后,增加缓冲区中令牌桶容量大小。ExpressPass根据信用数据包(84字节)和数据数据包(1538字节)的大小比例,分别根据最小和最大以太网帧大小,对信用使用5%的速率限制。
本实施例中,一个信用包调度1538B的数据,而不是一个数据包。在发送缓冲区设置了令牌桶。一旦信用包到达,令牌桶的容量将增加1538B。只要待发送的数据包的大小不大于令牌桶的容量,就可以发送数据包。
S15、当待发送数据包大小小于所述令牌桶容量大小,则发送数据。
本实施例目标是降低小于1MTU大小的数据包(几乎全是是短流和长流的尾包)的延迟。主要的改动是在数据发送方中。首先,在总大小不超过1538B的情况下,发送尽可能多的短流。一旦这些数据包的累积大小超过1MTU,便将其一起发送出去。对于长流尾分组,如果剩余分组大小小于2MTU但大于1MTU,则最后两个尾分组将一起发送出去。但是,这带来了一个挑战,即在数据缓冲区中,短流不一定会集中在一起。无论是短流量还是长流量,都根据概率发送。长流量可能会延迟短流量。否则,为了发送尽可能短的流,需要重新安排数据包才能以这种方式传输,例如“最短流优先”。这使调度过程复杂化。因此,我们使用令牌而不是信用数据包来调度数据。信用包不再是调度数据包的数量,而是1538B大小的数据。对于要发送的流,发送方在出口上设置令牌桶。令牌桶的容量与接收到的信用数据包的数量有关。它的对应关系是,1538B的容量对应于一个信用包。每次接收到信用数据包时,令牌桶的容量都会增加1538B。对于超过一个MTU大小的数据包,仍按照最大以太网帧的大小(即1538B)发送数据包。对于不是完整MTU大小的数据包,只要令牌桶具有足够的容量,就可以发送该数据包。
第二实施例:
结合图2,是本发明第二实施例提供的一种网络拥塞控制方法,应用于数据接收端,所述方法具体包括:
S21、接收发送端发送的信用请求;
一旦信用请求信号到达,数据接收方就开始给数据的发送方投递信用包。
S22、向发送端发送信用包;
在向发送端发送信用包前,将所述信用包地ECT字段设置为1。
对于信用包,ExpressPass使用最小大小的84B以太网帧。并且每个信用包能够调度数据发送方发送最大尺寸的以太网帧(例如1538B)。因此,信用额度被限制为链路容量的5%,而其余的95%用于传输数据包。接收端还标记信用数据包,以便交换机可以对信用包进行分类,并将速率限制应用于单独的队列。
S23、接收发送端发送的数据流。
根据所述发送端发来的数据包内带有ECN标记的数据包比例,控制信用包的发送速率。在每个RTT中,接收方都会根据信用反馈控制来调整信用数据包的发送速率。
第三实施例:
结合图3,是本发明第三实施例提供的一种网络拥塞控制方法,应用于交换机端,所述方法具体包括:
S31、按照链路容量限制,选择性丢弃信用包;
S32、根据所述丢弃信用包的比例,对未被丢弃的信用包进行ECN标记。
在所述交换机每个端口设置数据队列和信用队列;将ECN标记阈值K设置为队列的尾部;根据所述信用包被丢弃的个数计算丢包率loss_rate;所述根据所述丢弃信用包的比例,对未被丢弃的信用包进行ECN标记具体为:所述信用队列中,对所述信用包进行ECN标记的概率
PECN=σ·loss_rate
其中,σ为控制因子。优选的,所述控制因子σ值为1。
为了权衡快速收敛,利用率和公平性这三个性能,ExpressPass引入了一个循环性的信用反馈,该反馈可动态调整信用包的发送速率。这能实现高利用率,公平性和快速收敛。ExpressPass使用信用包丢失率作为拥塞指标。在这种测量中,每个信用包都带有一个序号,数据包携带并返回该序号。序列号的缺失表示信用包已在网络中丢弃。当检测到拥塞时,ExpressPass会将信用发送速率降低为上一个RTT期间通过瓶颈的信用速率。
本发明中,信用数据包不再调度一个数据包,而是调度一到几个数据包。因此,信用包的序号不能与数据包的序号一一对应。因此,数据包返回的序号大于信用包的序号。如果使用ExpressPass的方法计算信用丢失率,则数据包和信用包将使用两种计数方法。这使反馈过程复杂化。因此采用ECN标记机制。
本发明采用的数据中心交换机已经能够很好地支持ECN标记功能。ECN机制使用IPv4或IPv6标头中的ECT字段来编码数据包是否支持ECN。如果发送方具有ECN功能,则该包装将被标记为ECT(1),否则将被标记为ECT(0)。在每个交换队列中设置单个标记阈值K。当具有ECN功能的数据包到达时,如果队列长度大于K,它将被标记为ECN。
因此,我们可以使用ECN标记作为参数来传递信用数据包的拥塞信息。在接收方,我们将所有信用数据包的ECT字段设置为ECT(1)。在每个RTT中,接收方都会根据信用反馈控制来调整信用数据包的速率。
交换机的每个端口都使用一个数据队列和一个信用队列,并且它们在物理上是隔离的。在交换机处,我们将ECN标记阈值K设置为队列的尾部。交换机每收到十个信用包,就根据十个信用包被丢弃的个数计算丢包率loss_rate。交换机将信用队列中最后信用分组标记为ECN的概率为PECN=σ·loss_rate。σ是默认值为1的控制因子。在发送方,与带有ECN标签的信用数据包相对应的数据数据包也带有ECN标记。在一个RTT周期内,接收到带有ECN标记的数据包的比例等于了该RTT中信用包的平均丢失率。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (1)

1.一种网络拥塞控制方法,应用于交换机,其特征在于:
按照链路容量限制,选择性丢弃信用包;
根据所述丢弃信用包的比例,对未被丢弃的信用包进行ECN标记;
其中,所述根据所述丢弃信用包的比例,对未被丢弃的信用包进行ECN标记,包括:
在所述交换机每个端口设置数据队列和信用队列;
将ECN标记阈值K设置为队列的尾部;
根据所述信用包被丢弃的个数计算丢包率loss_rate;
所述根据所述丢弃信用包的比例,对未被丢弃的信用包进行ECN标记具体为:所述信用队列中,对所述信用包进行ECN标记的概率PECN=σ/loss_rate
其中,σ为控制因子;所述控制因子σ值为1。
CN201911125459.3A 2019-11-15 2019-11-15 一种网络拥塞控制方法 Active CN110868359B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911125459.3A CN110868359B (zh) 2019-11-15 2019-11-15 一种网络拥塞控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911125459.3A CN110868359B (zh) 2019-11-15 2019-11-15 一种网络拥塞控制方法

Publications (2)

Publication Number Publication Date
CN110868359A CN110868359A (zh) 2020-03-06
CN110868359B true CN110868359B (zh) 2023-03-24

Family

ID=69654898

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911125459.3A Active CN110868359B (zh) 2019-11-15 2019-11-15 一种网络拥塞控制方法

Country Status (1)

Country Link
CN (1) CN110868359B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112437019B (zh) * 2020-11-30 2022-01-25 中国人民解放军国防科技大学 用于数据中心的基于信用包的主动型传输方法
CN113543209B (zh) * 2021-06-24 2022-05-06 北京邮电大学 一种基于令牌调度的拥塞控制方法及装置
CN115378873B (zh) * 2022-08-23 2024-08-13 山东云海国创云计算装备产业创新中心有限公司 一种提高以太网数据传输效率的流量控制方法和系统
CN118368249B (zh) * 2024-06-18 2024-10-08 中国电信股份有限公司 拥塞控制方法、装置、设备、介质和产品

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101789895A (zh) * 2009-01-24 2010-07-28 华为技术有限公司 一种发送/接收数据报文的方法及装置
CN102055652A (zh) * 2009-11-03 2011-05-11 中兴通讯股份有限公司 动态带宽分配方法及装置
CN103051554A (zh) * 2013-01-05 2013-04-17 北京航空航天大学 基于吞吐量变化率和ecn机制的tcp拥塞控制方法
CN103051555A (zh) * 2013-01-05 2013-04-17 北京航空航天大学 基于网络有效带宽和ecn机制的tcp拥塞控制方法
CN104734985A (zh) * 2013-12-23 2015-06-24 腾讯数码(天津)有限公司 数据接收流量控制方法及其系统
CN106062726A (zh) * 2014-03-21 2016-10-26 思科技术公司 用于数据中心交换机的流感知缓冲区管理
CN106533970A (zh) * 2016-11-02 2017-03-22 重庆大学 面向云计算数据中心网络的差分流传输控制方法及装置
CN110166366A (zh) * 2018-02-14 2019-08-23 华为技术有限公司 网络拥塞控制方法、装置和系统

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9025451B2 (en) * 2013-01-22 2015-05-05 Emulex Corporation Positive feedback ethernet link flow control for promoting lossless ethernet
US9571402B2 (en) * 2013-05-03 2017-02-14 Netspeed Systems Congestion control and QoS in NoC by regulating the injection traffic
US10922673B2 (en) * 2018-02-09 2021-02-16 The Toronto-Dominion Bank Real-time authorization of initiated data exchanges based on tokenized data having limited temporal or geographic validity

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101789895A (zh) * 2009-01-24 2010-07-28 华为技术有限公司 一种发送/接收数据报文的方法及装置
CN102055652A (zh) * 2009-11-03 2011-05-11 中兴通讯股份有限公司 动态带宽分配方法及装置
CN103051554A (zh) * 2013-01-05 2013-04-17 北京航空航天大学 基于吞吐量变化率和ecn机制的tcp拥塞控制方法
CN103051555A (zh) * 2013-01-05 2013-04-17 北京航空航天大学 基于网络有效带宽和ecn机制的tcp拥塞控制方法
CN104734985A (zh) * 2013-12-23 2015-06-24 腾讯数码(天津)有限公司 数据接收流量控制方法及其系统
CN106062726A (zh) * 2014-03-21 2016-10-26 思科技术公司 用于数据中心交换机的流感知缓冲区管理
CN106533970A (zh) * 2016-11-02 2017-03-22 重庆大学 面向云计算数据中心网络的差分流传输控制方法及装置
CN110166366A (zh) * 2018-02-14 2019-08-23 华为技术有限公司 网络拥塞控制方法、装置和系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
NVMeoF网络存储协议及硬件卸载技术研究;朱佳平,李琼,宋振龙,董德尊,欧洋,徐炜遐;《第二十二届计算机工程与工艺年会暨第八届微处理器技术论坛论文集》;20180816;全文 *

Also Published As

Publication number Publication date
CN110868359A (zh) 2020-03-06

Similar Documents

Publication Publication Date Title
CN110868359B (zh) 一种网络拥塞控制方法
CN109120544B (zh) 一种数据中心网络中基于主机端流量调度的传输控制方法
EP1457008B1 (en) Methods and apparatus for network congestion control
US7733781B2 (en) Distributed congestion avoidance in a network switching system
AU2002300594B2 (en) An active queue management process
CN110808884B (zh) 一种网络拥塞控制方法
CN115152193A (zh) 针对ip路由数据中心网络使用自适应路由和基于拥塞提示的节流改进端到端拥塞反应
WO2020063003A1 (zh) 拥塞控制方法和网络设备
US20090073882A1 (en) Directional and priority based flow control mechanism between nodes
US20060203730A1 (en) Method and system for reducing end station latency in response to network congestion
CN109714267B (zh) 管理反向队列的传输控制方法及系统
US9614777B2 (en) Flow control in a network
CN112437019B (zh) 用于数据中心的基于信用包的主动型传输方法
JP5347836B2 (ja) 通信装置および通信方法
WO2002098047A2 (en) System and method for providing optimum bandwidth utilization
US8908510B2 (en) Communication link with intra-packet flow control
CN112005528B (zh) 一种数据交换方法、数据交换节点及数据中心网络
CN112468405B (zh) 基于信用和反应型的数据中心网络拥塞控制方法
CN113438182A (zh) 一种基于信用的流量控制系统和流量控制方法
WO2023116611A1 (zh) 一种队列控制的方法及装置
Zhou et al. Expresspass++: Credit-effecient congestion control for data centers
US11622028B2 (en) Explicit notification of operative conditions along a network path
CN116708300A (zh) 一种拥塞控制方法、设备以及系统
WO2020108020A1 (zh) 拥塞控制的处理方法、报文转发装置及报文接收装置
KR101681613B1 (ko) 분산 병렬 데이터 전송 시스템에서 자원들을 스케줄링하기 위한 장치 및 그 방법

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