CN112104562A - 拥塞控制方法及装置、通信网络、计算机存储介质 - Google Patents

拥塞控制方法及装置、通信网络、计算机存储介质 Download PDF

Info

Publication number
CN112104562A
CN112104562A CN201910523078.4A CN201910523078A CN112104562A CN 112104562 A CN112104562 A CN 112104562A CN 201910523078 A CN201910523078 A CN 201910523078A CN 112104562 A CN112104562 A CN 112104562A
Authority
CN
China
Prior art keywords
time period
port queue
output port
queue
target
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.)
Granted
Application number
CN201910523078.4A
Other languages
English (en)
Other versions
CN112104562B (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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
Priority to CN201910523078.4A priority Critical patent/CN112104562B/zh
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202310453637.5A priority patent/CN116527584B/zh
Priority to CN202310459240.7A priority patent/CN116886609A/zh
Priority to PCT/CN2020/092660 priority patent/WO2020253488A1/zh
Priority to BR112021023027A priority patent/BR112021023027A2/pt
Priority to EP20825902.8A priority patent/EP3961981A4/en
Priority to JP2021575029A priority patent/JP2022537187A/ja
Publication of CN112104562A publication Critical patent/CN112104562A/zh
Priority to US17/540,575 priority patent/US11870698B2/en
Application granted granted Critical
Publication of CN112104562B publication Critical patent/CN112104562B/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/12Avoiding congestion; Recovering from congestion
    • H04L47/122Avoiding congestion; Recovering from congestion by diverting traffic away from congested entities
    • 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/26Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
    • H04L47/263Rate modification at the source after receiving feedback
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • 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/11Identifying congestion
    • 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/22Traffic shaping
    • H04L47/225Determination of shaping rate, e.g. using a moving window
    • 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/25Flow control; Congestion control with rate being modified by the source upon detecting a change of network conditions
    • 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/28Flow control; Congestion control in relation to timing considerations
    • H04L47/283Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
    • 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/29Flow control; Congestion control using a combination of thresholds
    • 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/31Flow control; Congestion control by tagging of packets, e.g. using discard eligibility [DE] bits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/50Overload detection or protection within a single switching element
    • H04L49/505Corrective measures
    • H04L49/506Backpressure
    • 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/0852Delays
    • H04L43/0864Round trip delays
    • 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/0894Packet rate
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Abstract

本申请公开了一种拥塞控制方法及装置、通信网络、计算机存储介质,属于网络技术领域。网络设备先获取目标出端口队列在第一时间段内的统计信息,目标出端口队列为网络设备中的任一出端口队列;再基于目标出端口队列在第一时间段内的统计信息,确定目标出端口队列在第二时间段内的显示拥塞通知ECN水线,第二时间段在时序上位于第一时间段之后。在第二时间段内,当目标出端口队列的队列深度超出ECN水线时,网络设备为目标出端口队列中的数据包设置ECN标记。本申请通过网络设备实现了对出端口队列的ECN水线的动态调整,从而提高了网络拥塞控制的灵活性。

Description

拥塞控制方法及装置、通信网络、计算机存储介质
技术领域
本申请涉及网络技术领域,特别涉及一种拥塞控制方法及装置、通信网络、计算机存储介质。
背景技术
拥塞控制是提高网络资源利用率以及优化网络传输质量的重要方法。
目前的网络中通常基于显示拥塞通知(explicit congestion notification,ECN)机制进行拥塞控制。
当前,发送端和接收端之间通过网络设备转发数据包实现通信。网络基于ECN机制进行拥塞控制的过程包括:发送端发送支持ECN机制的数据包;网络设备检测出端口队列的队列深度是否超出预设的ECN水线(ECN threshold);当出端口队列的队列深度超出ECN水线时,网络设备为出端口队列中的数据包设置ECN标记;接收端接收到包括ECN标记的数据包后,向发送端发送拥塞通知报文;发送端接收到拥塞通知报文后,降低后续数据包的发送速率,以避免网络拥塞。其中,网络设备中的出端口队列也可称为转发队列,该出端口队列用于缓存发送端向接收端传输的数据包。
但是,当ECN水线设置过高时,会使得网络设备中的出端口队列深度较大,导致数据包的传输时延较长;当ECN水线设置过低时,会使得发送端发送数据包的速率较低,导致网络资源利用率较低。因此目前网络拥塞控制的灵活性较低。
发明内容
本申请提供了一种拥塞控制方法及装置、通信网络、计算机存储介质,可以解决目前网络拥塞控制的灵活性较低的问题。
第一方面,提供了一种拥塞控制方法。网络设备获取目标出端口队列在第一时间段内的统计信息,该目标出端口队列为网络设备中的任一出端口队列。网络设备基于目标出端口队列在第一时间段内的统计信息,确定目标出端口队列在第二时间段内的ECN水线;在第二时间段内,当目标出端口队列的队列深度超出ECN水线时,为目标出端口队列中的数据包设置ECN标记。
其中,第二时间段在时序上位于第一时间段之后。第一时间段为过去时间段,第二时间段可以是当前时间段。网络设备基于出端口队列在过去时段内的统计信息,确定该出端口队列在当前时段内的ECN水线,实现了对出端口队列中ECN水线的动态调整,使网络设备在各种不同的通信网络或者实时变化的通信网络中,均可以实现低传输时延以及高吞吐量,进而提高了网络拥塞控制的灵活性。
在第一方面的第一种实现方式中,统计信息包括发包速率。则网络设备基于目标出端口队列在第一时间段内的统计信息,确定目标出端口队列在第二时间段内的ECN水线的过程,包括:网络设备根据发包速率与目标时延确定ECN水线,该目标时延与网络设备所在的所有传输链路上的最大往返时延正相关。
可选地,目标时延可以等于网络设备所在的所有传输链路上的最大往返时延。根据目标出端口队列在第一时间段内的发包速率,确定该目标出端口队列在第二时间段内的ECN水线,使目标出端口队列的ECN水线与发包速率正相关,可以在保证数据包的低传输时延的同时,保证通信网络的高吞吐量,进而提高网络资源利用率。
结合第一方面的第一种实现方式,在第一方面的第二种实现方式中,统计信息还包括队列深度变化信息。则网络设备根据发包速率与目标时延确定ECN水线的过程,包括:当目标出端口队列在第一时间段的结束时刻的队列深度大于或等于目标出端口队列在第一时间段的开始时刻的队列深度时,网络设备根据目标出端口队列在第一时间段内的发包速率与目标时延确定ECN水线。
结合第一方面的第一种实现方式,在第一方面的第三种实现方式中,统计信息还包括PFC反压信息。则网络设备根据发包速率与目标时延确定ECN水线的过程,包括:当目标出端口队列在第一时间段内未接收到PFC帧,且目标出端口队列在第一时间段内的发包速率不为0时,网络设备根据目标出端口队列在第一时间段内的发包速率与目标时延确定ECN水线。
结合第一方面的第一种实现方式,在第一方面的第四种实现方式中,统计信息还包括队列深度变化信息和PFC反压信息。则网络设备根据发包速率与目标时延确定ECN水线的过程,包括:
网络设备根据目标出端口队列在第一时间段内的发包速率与目标时延确定第一ECN水线;网络设备根据目标出端口队列在第一时间段内的队列深度变化信息确定第二ECN水线;网络设备根据目标出端口队列在第一时间段内的PFC反压信息确定第三ECN水线;网络设备将第一ECN水线,第二ECN水线和第三ECN水线中的最大值确定为目标出端口队列在第二时间段内的ECN水线,目标出端口队列在第二时间段内的ECN水线是根据目标出端口队列在第一时间段内的发包速率与目标时延确定的,或目标出端口队列在第二时间段内的ECN水线为目标出端口队列所在的转发芯片支持的最大ECN水线。
在第一方面的第五种实现方式中,统计信息包括队列深度变化信息。则网络设备基于目标出端口队列在第一时间段内的统计信息,确定目标出端口队列在第二时间段内的ECN水线的过程,包括:当目标出端口队列在第一时间段的结束时刻的队列深度小于目标出端口队列在第一时间段的开始时刻的队列深度时,将目标出端口队列所在的转发芯片支持的最大ECN水线确定为目标出端口队列在第二时间段内的ECN水线,或者,取消对目标出端口队列在第二时间段内的ECN水线设置。
当目标出端口队列在第一时间段的结束时刻的队列深度小于目标出端口队列在第一时间段的开始时刻的队列深度时,表示目标出端口队列在第一时间段内的发包速率大于收包速率,即反映了发送端的发包速率未达到网络设备的最大吞吐量,因此无需降低发送端发送数据包的速率,此时可以将目标出端口队列所在的转发芯片支持的最大ECN水线作为目标出端口队列的ECN水线,或者,取消对目标出端口队列的ECN水线设置,以提高网络资源利用率。
在第一方面的第六种实现方式中,统计信息包括PFC反压信息。则网络设备基于目标出端口队列在第一时间段内的统计信息,确定目标出端口队列在第二时间段内的ECN水线的过程,包括:当目标出端口队列在第一时间段内接收到PFC帧,或者目标出端口队列在第一时间段内的发包速率为0时,将目标出端口队列所在的转发芯片支持的最大ECN水线确定为目标出端口队列在第二时间段内的ECN水线,或者,取消对目标出端口队列在第二时间段内的ECN水线设置。
当目标出端口队列在第一时间段内接收到PFC帧,或者目标出端口队列在第一时间段内的发包速率为0时,若网络设备中的目标出端口队列发生拥塞,则可以确定拥塞是由于下游设备发送的PFC帧导致的,因此无需为目标出端口队列中的数据包设置ECN标记,可以将网络设备中目标出端口队列所在的转发芯片支持的最大ECN水线作为目标出端口队列的ECN水线,或者,取消对目标出端口队列的ECN水线设置,避免接收端多次向发送端发送拥塞通知报文,导致发送端过度降低后续数据包的发送速率而影响通信网络的吞吐量。
第二方面,提供了一种拥塞控制装置,所述装置包括:
获取模块,用于获取目标出端口队列在第一时间段内的统计信息,所述目标出端口队列为网络设备中的任一出端口队列;
确定模块,用于基于所述目标出端口队列在所述第一时间段内的统计信息,确定所述目标出端口队列在第二时间段内的显示拥塞通知ECN水线;
标记模块,用于在所述第二时间段内,当所述目标出端口队列的队列深度超出所述ECN水线时,为所述目标出端口队列中的数据包设置ECN标记。
可选地,所述统计信息包括发包速率,所述确定模块,用于:
根据所述发包速率与目标时延确定所述ECN水线,所述目标时延与所述网络设备所在的所有传输链路上的最大往返时延正相关。
可选地,所述统计信息还包括队列深度变化信息,所述确定模块,还用于:
当所述目标出端口队列在所述第一时间段的结束时刻的队列深度大于或等于所述目标出端口队列在所述第一时间段的开始时刻的队列深度时,根据所述发包速率与所述目标时延确定所述ECN水线。
可选地,所述统计信息还包括优先级流量控制PFC反压信息,所述确定模块,还用于:
当所述目标出端口队列在所述第一时间段内未接收到PFC帧,且所述目标出端口队列在所述第一时间段内的发包速率不为0时,根据所述发包速率与所述目标时延确定所述ECN水线。
可选地,所述统计信息还包括队列深度变化信息和优先级流量控制PFC反压信息,所述确定模块,还用于:
根据所述发包速率与所述目标时延确定第一ECN水线;
根据所述队列深度变化信息确定第二ECN水线;
根据所述PFC反压信息确定第三ECN水线;
将所述第一ECN水线,所述第二ECN水线和所述第三ECN水线中的最大值确定为所述ECN水线,所述ECN水线是根据所述发包速率与所述目标时延确定的,或所述ECN水线为所述目标出端口队列所在的转发芯片支持的最大ECN水线。
可选地,所述统计信息包括队列深度变化信息,所述确定模块,用于:
当所述目标出端口队列在所述第一时间段的结束时刻的队列深度小于所述目标出端口队列在所述第一时间段的开始时刻的队列深度时,将所述目标出端口队列所在的转发芯片支持的最大ECN水线确定为所述目标出端口队列在所述第二时间段内的ECN水线,或者,取消对所述目标出端口队列在所述第二时间段内的ECN水线设置。
可选地,所述统计信息包括优先级流量控制PFC反压信息,所述确定模块,用于:
当所述目标出端口队列在所述第一时间段内接收到PFC帧,或者所述目标出端口队列在所述第一时间段内的发包速率为0时,将所述目标出端口队列所在的转发芯片支持的最大ECN水线确定为所述目标出端口队列在第二时间段内的ECN水线,或者,取消对所述目标出端口队列在所述第二时间段内的ECN水线设置。
第三方面,提供了一种通信网络,包括:发送端、网络设备以及接收端,所述网络设备包括如第二方面任一所述的拥塞控制装置。
第四方面,提供了一种网络设备,所述网络设备包括:处理器和存储器;
所述存储器,用于存储计算机程序,所述计算机程序包括程序指令;
所述处理器,用于调用所述计算机程序,实现如第一方面任一所述的拥塞控制方法。
第五方面,提供了一种计算机存储介质,所述计算机存储介质上存储有指令,当所述指令被处理器执行时,实现如第一方面任一所述的拥塞控制方法。
第六方面,提供了一种芯片,芯片包括可编程逻辑电路和/或程序指令,当芯片运行时,实现如第一方面任一所述的拥塞控制方法。
本申请提供的技术方案带来的有益效果至少包括:
通过网络设备基于出端口队列在过去时段内的统计信息,确定该出端口队列在当前时段内的ECN水线,实现了对出端口队列中ECN水线的动态调整,使网络设备在各种不同的通信网络或者实时变化的通信网络中,均可以实现低传输时延以及高吞吐量,提高了网络拥塞控制的灵活性。
附图说明
图1是本申请实施例提供的一种通信网络的结构示意图;
图2是本申请实施例提供的一种配置有ECN水线的出端口队列的示意图;
图3是本申请实施例提供的一种拥塞控制方法的流程图;
图4是本申请实施例提供的一种网络设备的结构示意图;
图5是本申请实施例提供的一种拥塞控制装置的结构示意图;
图6是本申请实施例提供的一种网络设备的框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
图1是本申请实施例提供的一种通信网络的结构示意图。如图1所示,该通信网络包括发送端101a-101b(统称为发送端101)、网络设备102a-102b(统称为网络设备102)和接收端103。图1中发送端、网络设备和接收端的数量仅用作示意,不作为对本申请实施例提供的通信网络的限制。
可选地,本申请实施例提供的通信网络可以是数据中心网络(data centernetwork,DCN)、城域网络、广域网络或园区网络等,本申请实施例对通信网络的类型不做限定。其中,发送端101可以是一台服务器,或者由若干台服务器组成的服务器集群,或者是一个云计算服务中心。接收端103可以是一台服务器,或者由若干台服务器组成的服务器集群,或者是一个云计算服务中心。网络设备102可以是交换机或路由器等。每个网络设备102中包括一个或多个出端口队列,出端口队列用于缓存发送端101向接收端103发送的数据包。发送端101和接收端103之间通过网络设备102转发数据包实现通信。
本申请实施例提供的通信网络基于ECN机制进行拥塞控制。可选地,该通信网络中的发送端与接收端之间的通信过程包括以下步骤a-e:
在步骤a中,发送端向网络设备发送数据包。
其中,发送端发送的数据包的互联网协议(Internet Protocol,IP)包头中的ECN字段的值置为10或01,以指示发送端发送的数据包支持ECN机制。
在步骤b中,网络设备将接收到的数据包缓存至第一出端口队列。
第一出端口队列为网络设备中的任一出端口队列。
在步骤c中,网络设备检测第一出端口队列的队列深度是否超出对应的ECN水线。
其中,出端口队列的队列深度用于表示出端口队列中缓存的数据包的总字节数。出端口队列的队列深度越大,表示出端口队列被占用的内存越大。数据包的传输时延与出端口队列的队列深度正相关,也即是,出端口队列的队列深度越大,数据包的传输时延越长。
可选地,网络设备中的每个出端口队列均配置有ECN水线。ECN水线即为设置ECN标记的门限值。当出端口队列的队列深度未超出ECN水线时,出端口队列中的数据包无需设置ECN标记,当出端口队列的队列深度超出ECN水线时,出端口队列中的数据包需要设置ECN标记。示例地,图2是本申请实施例提供的一种配置有ECN水线的出端口队列的示意图。如图2所示,该出端口队列中缓存有多个数据包,包括依次缓存在出端口队列中的数据包A、数据包B、数据包C和数据包D,数据包A位于出端口队列的前端(front),数据包D靠近出端口队列的后端(rear)。参见图2,数据包A、数据包B和数据包C位于ECN水线之前,数据包D中的一部分字节位于ECN水线之前,数据包D中的另一部分字节位于ECN水线之后,此时出端口队列的队列深度超出了ECN水线。也即是,在将数据包D缓存至出端口队列之前,该出端口队列的队列深度未超出ECN水线,在将数据包D缓存至出端口队列之后,该出端口队列的队列深度超出了ECN水线。
在步骤d中,当第一出端口队列的队列深度超出ECN水线时,网络设备为第一出端口队列中的数据包设置ECN标记。
可选地,网络设备每接收到数据包后,检测第一出端口队列的队列深度是否超出对应的ECN水线,当第一出端口队列的队列深度超出ECN水线时,网络设备为接收到的数据包设置ECN标记,并将设置有ECN标记的数据包缓存至第一出端口队列中。或者,网络设备在接收到数据包后,将数据包缓存至第一出端口队列中,在网络设备欲发送第一出端口队列中的某个数据包时,检测第一出端口队列的队列深度是否超出对应的ECN水线,当第一出端口队列的队列深度超出ECN水线时,网络设备为该待发送的数据包设置ECN标记。其中,网络设备为数据包设置ECN标记,也即是,网络设备将数据包的IP报头中的ECN字段的值置为11。
在步骤e中,网络设备向接收端发送第一出端口队列中的数据包。
可选地,当接收端接收到包括ECN标记的数据包时,生成拥塞通知报文,并向发送端发送该拥塞通知报文发送端接收到拥塞通知报文后,降低后续数据包的发送速率,以避免网络拥塞。其中,当通信网络采用传输控制协议(Transmission Control Protocol,TCP)时,可以将确认(acknowledgement,ACK)报文的TCP报头的ECN字段的值置为1,并采用该ACK报文作为拥塞通知报文;当通信网络采用允许通过以太网使用远程直接内存访问(RemoteDirect Memory Access over Converged Ethernet,RoCE)协议时,接收端可以向发送端发送拥塞通知包(congestion notification packet,CNP)。
基于上述通信网络中发送端与接收端之间的通信过程可知,通信网络基于ECN机制进行有效地拥塞控制的关键在于确定出端口队列的ECN水线。当ECN水线设置过高时,会使得网络设备中的出端口队列深度较大,导致数据包的传输时延较长;当ECN水线设置过低时,会使得发送端发送数据包的速率较低,导致网络资源利用率较低。本申请实施例提供的拥塞控制方法,通过网络设备实现对出端口队列的ECN水线的动态调整,从而提高了网络拥塞控制的灵活性。
图3是本申请实施例提供的一种拥塞控制方法的流程图。该方法可以应用于如图1所示的通信网络中的任一网络设备102。如图3所示,该方法包括:
步骤301、获取目标出端口队列在第一时间段内的统计信息。
可选地,目标出端口队列为网络设备中的任一出端口队列。网络设备可以周期性地获取目标出端口队列的统计信息,例如网络设备可以每隔若干微秒获取一次目标出端口队列的统计信息。第一时间段可以为过去的某个周期。
可选地,统计信息包括发包速率、队列深度变化信息或优先级流量控制(priorityflow control,PFC)反压信息中的一种或多种。其中,队列深度变化信息用于反映目标出端口队列在第一时间段内的队列深度变化,队列深度变化即出端口队列被占用的内存的变化。出端口队列的队列深度减小,表示出端口队列被占用的内存减少,即出端口队列的可用内存增加。可选地,队列深度变化信息包括目标出端口队列在第一时间段的开始时刻的队列深度以及目标出端口队列在第一时间段的结束时刻的队列深度;或者,队列深度变化信息包括目标出端口队列在第一时间段的开始时刻的队列深度与在第一时间段的结束时刻的队列深度的差值。PFC反压信息用于反映目标出端口队列在第一时间段内是否接收到PFC帧。可选地,PFC反压信息包括目标出端口队列在第一时间段内接收到的PFC帧的帧数。
可选地,图4是本申请实施例提供的一种网络设备的结构示意图。如图4所示,网络设备包括控制芯片401和转发芯片402。出端口队列位于转发芯片402上。控制芯片401与转发芯片402通过物理连线连接通信。其中,控制芯片可以是现场可编程门阵列(fieldprogrammable gate array,FPGA)芯片或中央处理器(central processing unit,CPU)。网络设备获取目标出端口队列在第一时间段内的统计信息,包括:网络设备中的控制芯片从目标出端口队列所在的转发芯片中读取目标出端口队列在第一时间段内的统计信息。可选地,网络设备中的控制芯片和转发芯片也可以集成,即控制功能和转发功能集成在一个芯片上。本申请实施例以网络设备包括控制芯片和转发芯片为例进行说明。
示例地,当统计信息包括发包速率时,控制芯片可以从转发芯片中读取目标出端口队列在第一时间段内的队列出字节数,并基于队列出字节数以及第一时间段的时长计算目标出端口队列在第一时间段内的发包速率(第一时间段内的发包速率等于第一时间段内的队列出字节数除以第一时间段的时长);或者,控制芯片也可以从转发芯片中直接读取目标出端口队列在第一时间段内的发包速率。
步骤302、基于目标出端口队列在第一时间段内的统计信息,确定目标出端口队列在第二时间段内的ECN水线。
其中,第二时间段在时序上位于第一时间段之后。第一时间段与第二时间段可以是相邻的时间段,也即是,第一时间段的结束时刻等于第二时间段的开始时刻;或者,第一时间段也可以与第二时间段不相邻,也即是,第一时间段的结束时刻在时序上位于第二时间段的开始时刻之前。第一时间段的时长与第二时间段的时长可以相同,也可以不同。示例地,当网络设备周期性地获取目标出端口队列的统计信息时,第一时间段与第二时间段可以是相邻的两个周期。网络设备基于目标出端口队列在第一时间段内的统计信息,确定目标出端口队列在第二时间段内的ECN水线,包括:网络设备中的控制芯片基于目标出端口队列在第一时间段内的统计信息,确定目标出端口队列在第二时间段内的ECN水线。
在本申请的第一个可选实施例中,目标出端口队列在第一时间段内的统计信息包括目标出端口队列在第一时间段内的发包速率。则上述步骤202的实现过程包括:根据发包速率与目标时延确定ECN水线,该目标时延与网络设备所在的所有传输链路上的最大往返时延(round trip time,RTT)正相关。
可选地,可以计算发包速率与目标时延的乘积,根据发包速率与目标时延的乘积确定ECN水线。目标时延可以等于网络设备所在的所有传输链路上的最大往返时延。示例地,假设该网络设备为如图1所示的通信网络中的网络设备102b,该网络设备102b位于发送端101a与接收端103之间的第一传输链路上,且该网络设备102b位于发送端101b与接收端103之间的第二传输链路上。假设第一传输链路的往返时延为RTT1,第二传输链路的往返时延为RTT2,则可以将RTT1和RTT2中的较大值作为目标时延。在本申请实施例中,目标时延还可以由用户配置,对此不做限定。
根据目标出端口队列在第一时间段内的发包速率,确定该目标出端口队列在第二时间段内的ECN水线,当目标出端口队列在第一时间段内的发包速率越大,使目标出端口队列在第二时间段内的ECN水线越大,例如将发包速率与目标时延的乘积作为ECN水线,以使目标出端口队列的ECN水线与发包速率正相关,可以在保证数据包的低传输时延的同时,保证通信网络的高吞吐量,进而提高网络资源利用率。
在本申请的第二个可选实施例中,目标出端口队列在第一时间段内的统计信息包括目标出端口队列在第一时间段内的队列深度变化信息。则上述步骤202的实现过程包括:当目标出端口队列在第一时间段的结束时刻的队列深度小于目标出端口队列在第一时间段的开始时刻的队列深度时,将目标出端口队列所在的转发芯片支持的最大ECN水线确定为目标出端口队列在第二时间段内的ECN水线,或者,取消对目标出端口队列在第二时间段内的ECN水线设置。
当目标出端口队列在第一时间段的结束时刻的队列深度小于目标出端口队列在第一时间段的开始时刻的队列深度时,表示目标出端口队列在第一时间段内的发包速率大于收包速率,即反映了发送端的发包速率未达到网络设备的最大吞吐量,因此无需降低发送端发送数据包的速率,此时可以将目标出端口队列所在的转发芯片支持的最大ECN水线作为目标出端口队列的ECN水线,或者,取消对目标出端口队列的ECN水线设置,以提高网络资源利用率。
在本申请的第三个可选实施例中,目标出端口队列在第一时间段内的统计信息包括目标出端口队列在第一时间段内的PFC反压信息。则上述步骤202的实现过程包括:当目标出端口队列在第一时间段内接收到PFC帧,或者目标出端口队列在第一时间段内的发包速率为0时,将目标出端口队列所在的转发芯片支持的最大ECN水线确定为目标出端口队列在第二时间段内的ECN水线,或者,取消对目标出端口队列在第二时间段内的ECN水线设置。
PFC机制是一种基于队列的反压机制,网络设备发生拥塞时,通过发送PFC帧,也可称为停止(pause)帧,通知上游设备暂停发包来防止网络设备中的队列缓存溢出丢包。示例地,假设目标出端口队列所在的网络设备为如图1所示的通信网络中的网络设备102a,网络设备102a为网络设备102b的上游设备。当网络设备102b中与网络设备102a的目标出端口队列对应的出端口队列发生拥塞时,会向网络设备102a的目标出端口队列发送PFC帧,网络设备102a的目标出端口队列接收到PFC帧后,暂停向网络设备102b发送数据包,当第一时间段处于上个PFC帧的生效周期内时,则第一时间段内目标出端口队列的发包速率为0。由于网络设备102b发生拥塞后,会为网络设备102b的出端口队列中超出ECN水线的数据包设置ECN标记,以通知发送端降低后续数据包的发送速率,而网络设备102a中的目标出端口队列发生拥塞是由于网络设备102b发送的PFC帧导致的,因此无需为目标出端口队列中的数据包设置ECN标记,可以将网络设备102a中目标出端口队列所在的转发芯片支持的最大ECN水线作为目标出端口队列的ECN水线,或者,取消对目标出端口队列的ECN水线设置,避免接收端多次向发送端发送拥塞通知报文,导致发送端过度降低后续数据包的发送速率而影响通信网络的吞吐量。
可选地,在上述第一个可选实施例的第一种可实现方式中,目标出端口队列在第一时间段内的统计信息还包括目标出端口队列在第一时间段内的队列深度变化信息,则根据发包速率与目标时延确定ECN水线,包括:当目标出端口队列在第一时间段的结束时刻的队列深度大于或等于目标出端口队列在第一时间段的开始时刻的队列深度时,根据发包速率与目标时延确定ECN水线。
当目标出端口队列在第一时间段的结束时刻的队列深度小于目标出端口队列在第一时间段的开始时刻的队列深度时,可以参考上述第二个可选实施例中描述的方案,本申请实施例在此不做赘述。
可选地,在上述第一个可选实施例的第二种可实现方式中,目标出端口队列在第一时间段内的统计信息还包括目标出端口队列在第一时间段内的PFC反压信息,则根据发包速率与目标时延确定ECN水线,包括:当目标出端口队列在第一时间段内未接收到PFC帧,且目标出端口队列在第一时间段内的发包速率不为0时,根据发包速率与目标时延确定ECN水线。
当目标出端口队列在第一时间段内接收到PFC帧,或者目标出端口队列在第一时间段内的发包速率为0时,可以参考上述第三个可选实施例中描述的方案,本申请实施例在此不做赘述。
可选地,在上述第一个可选实施例的第三种可实现方式中,目标出端口队列在第一时间段内的统计信息还包括目标出端口队列在第一时间段内的队列深度变化信息以及目标出端口队列在第一时间段内的PFC反压信息,则根据发包速率与目标时延确定ECN水线的过程,包括:
1、根据发包速率与目标时延确定第一ECN水线。
2、根据队列深度变化信息确定第二ECN水线。
可选地,当目标出端口队列在第一时间段的结束时刻的队列深度小于目标出端口队列在第一时间段的开始时刻的队列深度时,将目标出端口队列所在的转发芯片支持的最大ECN水线确定为第二ECN水线;当目标出端口队列在第一时间段的结束时刻的队列深度大于或等于目标出端口队列在第一时间段的开始时刻的队列深度时,将第一ECN水线作为第二ECN水线。
3、根据PFC反压信息确定第三ECN水线。
可选地,当目标出端口队列在第一时间段内接收到PFC帧,或者目标出端口队列在第一时间段内的发包速率为0时,将目标出端口队列所在的转发芯片支持的最大ECN水线确定为第三ECN水线;当目标出端口队列在第一时间段内未接收到PFC帧,且目标出端口队列在第一时间段内的发包速率不为0时,将第一ECN水线作为第三ECN水线。
4、将第一ECN水线,第二ECN水线和第三ECN水线中的最大值确定为ECN水线。
其中,ECN水线是根据发包速率与目标时延得到的,或ECN水线为目标出端口队列所在的转发芯片支持的最大ECN水线。
步骤303、在第二时间段内,当目标出端口队列的队列深度超出ECN水线时,为目标出端口队列中的数据包设置ECN标记。
可选地,网络设备中的控制芯片确定目标出端口队列在第二时间段内的ECN水线后,将该ECN水线配置到转发芯片中的目标出端口队列中。网络设备在第二时间段内接收到数据包后,检测目标出端口队列的队列深度是否超出ECN水线,当目标出端口队列的队列深度超出ECN水线时,网络设备为接收到的数据包设置ECN标记,并将设置有ECN标记的数据包缓存至目标出端口队列中。或者,网络设备在第二时间段内欲发送目标出端口队列中的数据包时,检测目标出端口队列的队列深度是否超出ECN水线,当目标出端口队列的队列深度超出ECN水线时,网络设备为该待发送的数据包设置ECN标记。
本申请实施例提供的拥塞控制方法的步骤先后顺序可以进行适当调整,步骤也可以根据情况进行相应增减。任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化的方法,都应涵盖在本申请的保护范围之内,因此不再赘述。
本申请实施例提供的拥塞控制方法,网络设备可以基于出端口队列在过去时段内的统计信息,确定该出端口队列在当前时段内的ECN水线,实现了对出端口队列中ECN水线的动态调整,使网络设备在各种不同的通信网络或者实时变化的通信网络中,均可以实现低传输时延以及高吞吐量,进而提高了网络拥塞控制的灵活性。
图5是本申请实施例提供的一种拥塞控制装置的结构示意图。可以应用于如图1所示的通信网络中的任一网络设备102中。如图5所示,该装置50包括:
获取模块501,用于获取目标出端口队列在第一时间段内的统计信息,目标出端口队列为网络设备中的任一出端口队列。
确定模块502,用于基于目标出端口队列在第一时间段内的统计信息,确定目标出端口队列在第二时间段内的显示拥塞通知ECN水线。
标记模块503,用于在第二时间段内,当目标出端口队列的队列深度超出ECN水线时,为目标出端口队列中的数据包设置ECN标记。
本申请实施例提供的拥塞控制装置,网络设备可以通过确定模块基于出端口队列在过去时段内的统计信息,确定该出端口队列在当前时段内的ECN水线,实现了对出端口队列中ECN水线的动态调整,使网络设备在各种不同的通信网络或者实时变化的通信网络中,均可以实现低传输时延以及高吞吐量,进而提高了网络拥塞控制的灵活性。
可选地,确定模块,用于:根据发包速率与目标时延确定ECN水线,目标时延与网络设备所在的所有传输链路上的最大往返时延正相关。
可选地,统计信息还包括队列深度变化信息,确定模块,还用于:当目标出端口队列在第一时间段的结束时刻的队列深度大于或等于目标出端口队列在第一时间段的开始时刻的队列深度时,根据发包速率与目标时延确定ECN水线。
可选地,统计信息还包括优先级流量控制PFC反压信息,确定模块,还用于:当目标出端口队列在第一时间段内未接收到PFC帧,且目标出端口队列在第一时间段内的发包速率不为0时,根据发包速率与目标时延确定ECN水线。
可选地,统计信息还包括队列深度变化信息和优先级流量控制PFC反压信息,确定模块,还用于:
根据发包速率与目标时延确定第一ECN水线;根据队列深度变化信息确定第二ECN水线;根据PFC反压信息确定第三ECN水线;将第一ECN水线,第二ECN水线和第三ECN水线中的最大值确定为ECN水线,ECN水线是根据发包速率与目标时延得到的,或ECN水线为目标出端口队列所在的转发芯片支持的最大ECN水线。
可选地,统计信息包括队列深度变化信息,确定模块,用于:
当目标出端口队列在第一时间段的结束时刻的队列深度小于目标出端口队列在第一时间段的开始时刻的队列深度时,将目标出端口队列所在的转发芯片支持的最大ECN水线确定为目标出端口队列在第二时间段内的ECN水线,或者,取消对目标出端口队列在第二时间段内的ECN水线设置。
可选地,统计信息包括优先级流量控制PFC反压信息,确定模块,用于:
当目标出端口队列在第一时间段内接收到PFC帧,或者目标出端口队列在第一时间段内的发包速率为0时,将目标出端口队列所在的转发芯片支持的最大ECN水线确定为目标出端口队列在第二时间段内的ECN水线,或者,取消对目标出端口队列在第二时间段内的ECN水线设置。
本申请实施例提供的拥塞控制装置,网络设备可以通过确定模块基于出端口队列在过去时段内的统计信息,确定该出端口队列在当前时段内的ECN水线,实现了对出端口队列中ECN水线的动态调整,使网络设备在各种不同的通信网络或者实时变化的通信网络中,均可以实现低传输时延以及高吞吐量,进而提高了网络拥塞控制的灵活性。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图6是本申请实施例提供的一种网络设备的框图。如图6所示,该网络设备60包括:处理器601和存储器602;
所述存储器602,用于存储计算机程序,所述计算机程序包括程序指令;
所述处理器601,用于调用所述计算机程序,实现如图3所示的拥塞控制方法。
可选地,该网络设备60还包括通信总线603和通信接口604。
其中,处理器601包括一个或者一个以上处理核心,处理器601通过运行计算机程序,从而执行各种功能应用以及数据处理。
存储器602可用于存储计算机程序。可选地,存储器可存储操作系统和至少一个功能所需的应用程序单元。操作系统可以是实时操作系统(Real Time eXecutive,RTX)、LINUX、UNIX、WINDOWS或OS X之类的操作系统。
通信接口604可以为多个,通信接口604用于与其它存储设备或网络设备进行通信。例如在本申请实施例中,通信接口604可以用于接收通讯网络中的网络设备发送的告警日志。
存储器602与通信接口604分别通过通信走线603与处理器601连接。
本申请实施例还提供了一种计算机存储介质,所述计算机存储介质上存储有指令,当所述指令被处理器执行时,实现如图3所示的拥塞控制方法。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本申请实施例中,术语“第一”、“第二”和“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。术语“至少一个”是指一个或多个,术语“多个”指两个或两个以上,除非另有明确的限定。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的构思和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (17)

1.一种拥塞控制方法,其特征在于,所述方法包括:
获取目标出端口队列在第一时间段内的统计信息,所述目标出端口队列为网络设备中的任一出端口队列;
基于所述目标出端口队列在所述第一时间段内的统计信息,确定所述目标出端口队列在第二时间段内的显示拥塞通知ECN水线;
在所述第二时间段内,当所述目标出端口队列的队列深度超出所述ECN水线时,为所述目标出端口队列中的数据包设置ECN标记。
2.根据权利要求1所述的方法,其特征在于,所述统计信息包括发包速率,所述基于所述目标出端口队列在所述第一时间段内的统计信息,确定所述目标出端口队列在第二时间段内的ECN水线,包括:
根据所述发包速率与目标时延确定所述ECN水线,所述目标时延与所述网络设备所在的所有传输链路上的最大往返时延正相关。
3.根据权利要求2所述的方法,其特征在于,所述统计信息还包括队列深度变化信息,所述根据所述发包速率与目标时延确定所述ECN水线,包括:
当所述目标出端口队列在所述第一时间段的结束时刻的队列深度大于或等于所述目标出端口队列在所述第一时间段的开始时刻的队列深度时,根据所述发包速率与所述目标时延确定所述ECN水线。
4.根据权利要求2所述的方法,其特征在于,所述统计信息还包括优先级流量控制PFC反压信息,所述根据所述发包速率与目标时延确定所述ECN水线,包括:
当所述目标出端口队列在所述第一时间段内未接收到PFC帧,且所述目标出端口队列在所述第一时间段内的发包速率不为0时,根据所述发包速率与所述目标时延确定所述ECN水线。
5.根据权利要求2所述的方法,其特征在于,所述统计信息还包括队列深度变化信息和优先级流量控制PFC反压信息,所述根据所述发包速率与目标时延确定所述ECN水线,包括:
根据所述发包速率与所述目标时延确定第一ECN水线;
根据所述队列深度变化信息确定第二ECN水线;
根据所述PFC反压信息确定第三ECN水线;
将所述第一ECN水线,所述第二ECN水线和所述第三ECN水线中的最大值确定为所述ECN水线,所述ECN水线是根据所述发包速率与所述目标时延确定的,或所述ECN水线为所述目标出端口队列所在的转发芯片支持的最大ECN水线。
6.根据权利要求1所述的方法,其特征在于,所述统计信息包括队列深度变化信息,所述基于所述目标出端口队列在所述第一时间段内的统计信息,确定所述目标出端口队列在第二时间段内的ECN水线,包括:
当所述目标出端口队列在所述第一时间段的结束时刻的队列深度小于所述目标出端口队列在所述第一时间段的开始时刻的队列深度时,将所述目标出端口队列所在的转发芯片支持的最大ECN水线确定为所述目标出端口队列在所述第二时间段内的ECN水线,或者,取消对所述目标出端口队列在所述第二时间段内的ECN水线设置。
7.根据权利要求1所述的方法,其特征在于,所述统计信息包括优先级流量控制PFC反压信息,所述基于所述目标出端口队列在所述第一时间段内的统计信息,确定所述目标出端口队列在第二时间段内的ECN水线,包括:
当所述目标出端口队列在所述第一时间段内接收到PFC帧,或者所述目标出端口队列在所述第一时间段内的发包速率为0时,将所述目标出端口队列所在的转发芯片支持的最大ECN水线确定为所述目标出端口队列在第二时间段内的ECN水线,或者,取消对所述目标出端口队列在所述第二时间段内的ECN水线设置。
8.一种拥塞控制装置,其特征在于,所述装置包括:
获取模块,用于获取目标出端口队列在第一时间段内的统计信息,所述目标出端口队列为网络设备中的任一出端口队列;
确定模块,用于基于所述目标出端口队列在所述第一时间段内的统计信息,确定所述目标出端口队列在第二时间段内的显示拥塞通知ECN水线;
标记模块,用于在所述第二时间段内,当所述目标出端口队列的队列深度超出所述ECN水线时,为所述目标出端口队列中的数据包设置ECN标记。
9.根据权利要求8所述的装置,其特征在于,所述统计信息包括发包速率,所述确定模块用于:
根据所述发包速率与目标时延确定所述ECN水线,所述目标时延与所述网络设备所在的所有传输链路上的最大往返时延正相关。
10.根据权利要求9所述的装置,其特征在于,所述统计信息还包括队列深度变化信息,所述确定模块用于:
当所述目标出端口队列在所述第一时间段的结束时刻的队列深度大于或等于所述目标出端口队列在所述第一时间段的开始时刻的队列深度时,根据所述发包速率与所述目标时延确定所述ECN水线。
11.根据权利要求9所述的装置,其特征在于,所述统计信息还包括优先级流量控制PFC反压信息,所述确定模块用于:
当所述目标出端口队列在所述第一时间段内未接收到PFC帧,且所述目标出端口队列在所述第一时间段内的发包速率不为0时,根据所述发包速率与所述目标时延确定所述ECN水线。
12.根据权利要求9所述的装置,其特征在于,所述统计信息还包括队列深度变化信息和优先级流量控制PFC反压信息,所述确定模块用于:
根据所述发包速率与所述目标时延确定第一ECN水线;
根据所述队列深度变化信息确定第二ECN水线;
根据所述PFC反压信息确定第三ECN水线;
将所述第一ECN水线,所述第二ECN水线和所述第三ECN水线中的最大值确定为所述ECN水线,所述ECN水线是根据所述发包速率与所述目标时延确定的,或所述ECN水线为所述目标出端口队列所在的转发芯片支持的最大ECN水线。
13.根据权利要求8所述的装置,其特征在于,所述统计信息包括队列深度变化信息,所述确定模块用于:
当所述目标出端口队列在所述第一时间段的结束时刻的队列深度小于所述目标出端口队列在所述第一时间段的开始时刻的队列深度时,将所述目标出端口队列所在的转发芯片支持的最大ECN水线确定为所述目标出端口队列在所述第二时间段内的ECN水线,或者,取消对所述目标出端口队列在所述第二时间段内的ECN水线设置。
14.根据权利要求8所述的装置,其特征在于,所述统计信息包括优先级流量控制PFC反压信息,所述确定模块用于:
当所述目标出端口队列在所述第一时间段内接收到PFC帧,或者所述目标出端口队列在所述第一时间段内的发包速率为0时,将所述目标出端口队列所在的转发芯片支持的最大ECN水线确定为所述目标出端口队列在第二时间段内的ECN水线,或者,取消对所述目标出端口队列在所述第二时间段内的ECN水线设置。
15.一种通信网络,其特征在于,包括:发送端、网络设备以及接收端,所述网络设备包括如权利要求8至14任一所述的拥塞控制装置。
16.一种网络设备,其特征在于,所述网络设备包括:处理器和存储器;
所述存储器,用于存储计算机程序,所述计算机程序包括程序指令;
所述处理器,用于调用所述计算机程序,实现如权利要求1至7任一所述的拥塞控制方法。
17.一种计算机存储介质,其特征在于,所述计算机存储介质上存储有指令,当所述指令被处理器执行时,实现如权利要求1至7任一所述的拥塞控制方法。
CN201910523078.4A 2019-06-17 2019-06-17 拥塞控制方法及装置、通信网络、计算机存储介质 Active CN112104562B (zh)

Priority Applications (8)

Application Number Priority Date Filing Date Title
CN202310453637.5A CN116527584B (zh) 2019-06-17 2019-06-17 拥塞控制方法及装置、通信网络、计算机存储介质
CN202310459240.7A CN116886609A (zh) 2019-06-17 2019-06-17 拥塞控制方法及装置、通信网络、计算机存储介质
CN201910523078.4A CN112104562B (zh) 2019-06-17 2019-06-17 拥塞控制方法及装置、通信网络、计算机存储介质
BR112021023027A BR112021023027A2 (pt) 2019-06-17 2020-05-27 Método e dispositivos para controle de congestionamento, rede de comunicações, e mídia de armazenamento em computador
PCT/CN2020/092660 WO2020253488A1 (zh) 2019-06-17 2020-05-27 拥塞控制方法及装置、通信网络、计算机存储介质
EP20825902.8A EP3961981A4 (en) 2019-06-17 2020-05-27 METHOD AND DEVICE FOR REGULATING SPACE, COMMUNICATION NETWORK AND COMPUTER MEMORY MEDIA
JP2021575029A JP2022537187A (ja) 2019-06-17 2020-05-27 輻輳制御方法および装置、通信ネットワーク、ならびにコンピュータ記憶媒体
US17/540,575 US11870698B2 (en) 2019-06-17 2021-12-02 Congestion control method and apparatus, communications network, and computer storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910523078.4A CN112104562B (zh) 2019-06-17 2019-06-17 拥塞控制方法及装置、通信网络、计算机存储介质

Related Child Applications (2)

Application Number Title Priority Date Filing Date
CN202310459240.7A Division CN116886609A (zh) 2019-06-17 2019-06-17 拥塞控制方法及装置、通信网络、计算机存储介质
CN202310453637.5A Division CN116527584B (zh) 2019-06-17 2019-06-17 拥塞控制方法及装置、通信网络、计算机存储介质

Publications (2)

Publication Number Publication Date
CN112104562A true CN112104562A (zh) 2020-12-18
CN112104562B CN112104562B (zh) 2023-04-18

Family

ID=73748760

Family Applications (3)

Application Number Title Priority Date Filing Date
CN202310459240.7A Pending CN116886609A (zh) 2019-06-17 2019-06-17 拥塞控制方法及装置、通信网络、计算机存储介质
CN202310453637.5A Active CN116527584B (zh) 2019-06-17 2019-06-17 拥塞控制方法及装置、通信网络、计算机存储介质
CN201910523078.4A Active CN112104562B (zh) 2019-06-17 2019-06-17 拥塞控制方法及装置、通信网络、计算机存储介质

Family Applications Before (2)

Application Number Title Priority Date Filing Date
CN202310459240.7A Pending CN116886609A (zh) 2019-06-17 2019-06-17 拥塞控制方法及装置、通信网络、计算机存储介质
CN202310453637.5A Active CN116527584B (zh) 2019-06-17 2019-06-17 拥塞控制方法及装置、通信网络、计算机存储介质

Country Status (6)

Country Link
US (1) US11870698B2 (zh)
EP (1) EP3961981A4 (zh)
JP (1) JP2022537187A (zh)
CN (3) CN116886609A (zh)
BR (1) BR112021023027A2 (zh)
WO (1) WO2020253488A1 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113411263A (zh) * 2021-06-18 2021-09-17 中国工商银行股份有限公司 一种数据传输方法、装置、设备及存储介质
CN113676419A (zh) * 2021-09-03 2021-11-19 中国人民银行清算总中心 一种消息传输方法及装置
CN113992588A (zh) * 2021-10-21 2022-01-28 浪潮电子信息产业股份有限公司 数据传输方法、装置、电子设备及可读存储介质
CN114051002A (zh) * 2021-11-30 2022-02-15 新华三大数据技术有限公司 Ecn水线确定方法、装置及电子设备
WO2022188440A1 (zh) * 2021-03-11 2022-09-15 中国电信股份有限公司 调整数据转发队列的方法、装置及计算机可读存储介质

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113938433B (zh) * 2021-12-02 2024-02-02 中国人民解放军国防科技大学 一种基于动态阈值的高速网络拥塞控制方法和装置
CN117544567B (zh) * 2024-01-09 2024-03-19 南京邮电大学 存传一体的rdma数据中心拥塞控制方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101964755A (zh) * 2010-11-03 2011-02-02 中南大学 高带宽延时网络中基于带宽估计的显式拥塞控制方法
CN101977151A (zh) * 2010-11-09 2011-02-16 中南大学 一种用于高丢包率广域网环境下的拥塞控制方法
US20140153387A1 (en) * 2012-11-30 2014-06-05 Microsoft Corporation Tuning Congestion Notification for Data Center Networks
CN106789701A (zh) * 2016-12-30 2017-05-31 北京邮电大学 一种数据中心中自适应ecn标记方法及装置
CN108989235A (zh) * 2018-08-28 2018-12-11 新华三技术有限公司 一种报文转发控制方法及装置

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1056457A (ja) * 1996-08-09 1998-02-24 Oki Electric Ind Co Ltd 輻輳検出方法及び交換装置
EP1249972A1 (en) * 2001-04-09 2002-10-16 Telefonaktiebolaget L M Ericsson (Publ) Method of controlling a queue buffer
US7603475B2 (en) * 2003-03-31 2009-10-13 Alcatel-Lucent Usa Inc. Method for flow control in a communication system
CN1327677C (zh) * 2003-11-21 2007-07-18 清华大学 基于ecn且带预测验证的拥塞控制方法
US9509805B2 (en) * 2011-12-01 2016-11-29 Telefonaktiebolaget Lm Ericsson (Publ) Reduction of packet header compression overhead due to high ECN rate
US20140164641A1 (en) * 2012-12-11 2014-06-12 The Hong Kong University Of Science And Technology Congestion control for data center traffic
FR3015834A1 (fr) 2013-12-20 2015-06-26 Orange Technique de signalisation d'une congestion dans un reseau de communication par paquets
US9762491B2 (en) * 2015-03-30 2017-09-12 Mellanox Technologies Tlv Ltd. Dynamic thresholds for congestion control
CN106330758A (zh) * 2015-06-19 2017-01-11 中兴通讯股份有限公司 一种基于多层队列流控反压的传送方法及装置
US10084716B2 (en) * 2016-03-20 2018-09-25 Mellanox Technologies Tlv Ltd. Flexible application of congestion control measures
WO2017199208A1 (en) * 2016-05-18 2017-11-23 Marvell Israel (M.I.S.L) Ltd. Congestion avoidance in a network device
CN108306827B (zh) * 2017-01-12 2021-06-01 华为技术有限公司 传输数据的方法和服务器
CN108667739B (zh) * 2017-03-27 2020-12-08 华为技术有限公司 拥塞控制方法、装置及系统
CN113709057B (zh) * 2017-08-11 2023-05-05 华为技术有限公司 网络拥塞的通告方法、代理节点、网络节点及计算机设备
US10965586B2 (en) * 2017-09-29 2021-03-30 Fungible, Inc. Resilient network communication using selective multipath packet flow spraying
CN109245959B (zh) * 2018-09-25 2021-09-03 华为技术有限公司 统计活跃流数目的方法、网络设备和系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101964755A (zh) * 2010-11-03 2011-02-02 中南大学 高带宽延时网络中基于带宽估计的显式拥塞控制方法
CN101977151A (zh) * 2010-11-09 2011-02-16 中南大学 一种用于高丢包率广域网环境下的拥塞控制方法
US20140153387A1 (en) * 2012-11-30 2014-06-05 Microsoft Corporation Tuning Congestion Notification for Data Center Networks
CN106789701A (zh) * 2016-12-30 2017-05-31 北京邮电大学 一种数据中心中自适应ecn标记方法及装置
CN108989235A (zh) * 2018-08-28 2018-12-11 新华三技术有限公司 一种报文转发控制方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
YIFEI LU 等: "Dynamic ECN marking threshold algorithm for TCP congestion control in data center networks", 《COMPUTER COMMUNICATIONS 129 (2018)》 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022188440A1 (zh) * 2021-03-11 2022-09-15 中国电信股份有限公司 调整数据转发队列的方法、装置及计算机可读存储介质
CN115086236A (zh) * 2021-03-11 2022-09-20 中国电信股份有限公司 调整数据转发队列的方法、装置及计算机可读存储介质
CN113411263A (zh) * 2021-06-18 2021-09-17 中国工商银行股份有限公司 一种数据传输方法、装置、设备及存储介质
CN113411263B (zh) * 2021-06-18 2023-03-14 中国工商银行股份有限公司 一种数据传输方法、装置、设备及存储介质
CN113676419A (zh) * 2021-09-03 2021-11-19 中国人民银行清算总中心 一种消息传输方法及装置
CN113992588A (zh) * 2021-10-21 2022-01-28 浪潮电子信息产业股份有限公司 数据传输方法、装置、电子设备及可读存储介质
CN113992588B (zh) * 2021-10-21 2024-02-09 浪潮电子信息产业股份有限公司 数据传输方法、装置、电子设备及可读存储介质
CN114051002A (zh) * 2021-11-30 2022-02-15 新华三大数据技术有限公司 Ecn水线确定方法、装置及电子设备
CN114051002B (zh) * 2021-11-30 2024-03-19 新华三大数据技术有限公司 Ecn水线确定方法、装置及电子设备

Also Published As

Publication number Publication date
EP3961981A1 (en) 2022-03-02
CN116886609A (zh) 2023-10-13
WO2020253488A1 (zh) 2020-12-24
US11870698B2 (en) 2024-01-09
US20220094640A1 (en) 2022-03-24
CN116527584A (zh) 2023-08-01
JP2022537187A (ja) 2022-08-24
CN112104562B (zh) 2023-04-18
BR112021023027A2 (pt) 2022-01-04
EP3961981A4 (en) 2022-07-06
CN116527584B (zh) 2024-04-12

Similar Documents

Publication Publication Date Title
CN112104562B (zh) 拥塞控制方法及装置、通信网络、计算机存储介质
CN109120544B (zh) 一种数据中心网络中基于主机端流量调度的传输控制方法
US20060203730A1 (en) Method and system for reducing end station latency in response to network congestion
CN108989235B (zh) 一种报文转发控制方法及装置
US8509074B1 (en) System, method, and computer program product for controlling the rate of a network flow and groups of network flows
CN108540395B (zh) 无丢失网络中的拥塞判断方法及交换机
CN107948103B (zh) 一种基于预测的交换机pfc控制方法及控制系统
JP2011151601A (ja) パケット中継装置及びパケットを中継する方法
CN110784415B (zh) 一种ecn快速响应的方法及装置
WO2017114231A1 (zh) 一种报文发送方法、tcp代理以及tcp客户端
JP4700290B2 (ja) 通信システム内のフロー制御のための方法
CN108494699B (zh) 一种具有中心控制节点的网络拥塞控制方法
CN112995048B (zh) 数据中心网络的阻塞控制与调度融合方法及终端设备
JP2020072336A (ja) パケット転送装置、方法、及びプログラム
CN112737940B (zh) 一种数据传输的方法和装置
CN107852372B (zh) 数据分组网络
JP2007013449A (ja) シェーパー制御方法、データ通信システム、ネットワークインタフェース装置及びネットワーク中継装置
CN110784417A (zh) 拥塞控制方法、设备及系统
CA2940077C (en) Buffer bloat control
JP4930275B2 (ja) 通信システム、通信方法、送信機、受信機、レート計算方法およびプログラム
JP4382830B2 (ja) パケット転送装置
US7855954B2 (en) Speculative credit data flow control
US7500012B2 (en) Method for controlling dataflow to a central system from distributed systems
CN117579556A (zh) 拥塞控制方法、设备、介质和程序产品
CN115834501A (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