CN112104562B - 拥塞控制方法及装置、通信网络、计算机存储介质 - Google Patents
拥塞控制方法及装置、通信网络、计算机存储介质 Download PDFInfo
- Publication number
- CN112104562B CN112104562B CN201910523078.4A CN201910523078A CN112104562B CN 112104562 B CN112104562 B CN 112104562B CN 201910523078 A CN201910523078 A CN 201910523078A CN 112104562 B CN112104562 B CN 112104562B
- Authority
- CN
- China
- Prior art keywords
- time period
- port queue
- output port
- target
- queue
- 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
- 230000006854 communication Effects 0.000 title claims abstract description 49
- 238000004891 communication Methods 0.000 title claims abstract description 47
- 238000000034 method Methods 0.000 title claims abstract description 41
- 230000005540 biological transmission Effects 0.000 claims description 26
- 230000008859 change Effects 0.000 claims description 25
- 238000004590 computer program Methods 0.000 claims description 11
- 230000002596 correlated effect Effects 0.000 claims description 11
- 238000010586 diagram Methods 0.000 description 10
- 230000007246 mechanism Effects 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 239000000872 buffer Substances 0.000 description 5
- 230000000875 corresponding effect Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 238000011144 upstream manufacturing Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
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/10—Flow control; Congestion control
- H04L47/26—Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
- H04L47/263—Rate modification at the source after receiving feedback
-
- 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/12—Avoiding congestion; Recovering from congestion
- H04L47/122—Avoiding congestion; Recovering from congestion by diverting traffic away from congested entities
-
- 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
-
- 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/11—Identifying congestion
-
- 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/22—Traffic shaping
- H04L47/225—Determination of shaping rate, e.g. using a moving window
-
- 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/25—Flow control; Congestion control with rate being modified by the source upon detecting a change of network conditions
-
- 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/28—Flow control; Congestion control in relation to timing considerations
- H04L47/283—Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
-
- 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/29—Flow control; Congestion control using a combination of thresholds
-
- 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/31—Flow control; Congestion control by tagging of packets, e.g. using discard eligibility [DE] bits
-
- 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
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/50—Overload detection or protection within a single switching element
- H04L49/505—Corrective measures
- H04L49/506—Backpressure
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
- H04L43/0864—Round trip delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0876—Network utilisation, e.g. volume of load or congestion level
- H04L43/0894—Packet rate
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
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 (15)
1.一种拥塞控制方法,其特征在于,应用于网络设备,所述方法包括:
获取目标出端口队列在第一时间段内的统计信息,所述目标出端口队列为网络设备中的任一出端口队列,所述统计信息包括发包速率;
根据所述目标出端口队列在所述第一时间段内的发包速率与目标时延,确定所述目标出端口队列在第二时间段内的显示拥塞通知ECN水线,所述ECN水线与所述发包速率正相关,所述目标时延与所述网络设备所在的所有传输链路上的最大往返时延正相关;
在所述第二时间段内,当所述目标出端口队列的队列深度超出所述ECN水线时,为所述目标出端口队列中的数据包设置ECN标记;
其中,所述网络设备用于周期性地获取所述目标出端口队列的统计信息,所述第一时间段和所述第二时间段是相邻的两个周期。
2.根据权利要求1所述的方法,其特征在于,所述统计信息还包括队列深度变化信息,所述根据所述目标出端口队列在所述第一时间段内的发包速率与目标时延,确定所述目标出端口队列在第二时间段内的显示拥塞通知ECN水线,包括:
当所述目标出端口队列在所述第一时间段的结束时刻的队列深度大于或等于所述目标出端口队列在所述第一时间段的开始时刻的队列深度时,根据所述发包速率与所述目标时延确定所述ECN水线。
3.根据权利要求1所述的方法,其特征在于,所述统计信息还包括PFC反压信息,所述根据所述目标出端口队列在所述第一时间段内的发包速率与目标时延,确定所述目标出端口队列在第二时间段内的显示拥塞通知ECN水线,包括:
当所述目标出端口队列在所述第一时间段内未接收到PFC帧,且所述目标出端口队列在所述第一时间段内的发包速率不为0时,根据所述发包速率与所述目标时延确定所述ECN水线。
4.根据权利要求1所述的方法,其特征在于,所述统计信息还包括队列深度变化信息和PFC反压信息,所述根据所述目标出端口队列在所述第一时间段内的发包速率与目标时延,确定所述目标出端口队列在第二时间段内的显示拥塞通知ECN水线,包括:
根据所述发包速率与所述目标时延确定第一ECN水线;
根据所述队列深度变化信息确定第二ECN水线;
根据所述PFC反压信息确定第三ECN水线;
将所述第一ECN水线,所述第二ECN水线和所述第三ECN水线中的最大值确定为所述ECN水线,所述ECN水线是根据所述发包速率与所述目标时延确定的,或所述ECN水线为所述目标出端口队列所在的转发芯片支持的最大ECN水线。
5.根据权利要求2所述的方法,其特征在于,所述方法还包括:
当所述目标出端口队列在所述第一时间段的结束时刻的队列深度小于所述目标出端口队列在所述第一时间段的开始时刻的队列深度时,将所述目标出端口队列所在的转发芯片支持的最大ECN水线确定为所述目标出端口队列在所述第二时间段内的ECN水线,或者,取消对所述目标出端口队列在所述第二时间段内的ECN水线设置。
6.根据权利要求3所述的方法,其特征在于,所述方法还包括:
当所述目标出端口队列在所述第一时间段内接收到PFC帧,或者所述目标出端口队列在所述第一时间段内的发包速率为0时,将所述目标出端口队列所在的转发芯片支持的最大ECN水线确定为所述目标出端口队列在第二时间段内的ECN水线,或者,取消对所述目标出端口队列在所述第二时间段内的ECN水线设置。
7.一种拥塞控制装置,其特征在于,应用于网络设备,所述装置包括:
获取模块,用于获取目标出端口队列在第一时间段内的统计信息,所述目标出端口队列为网络设备中的任一出端口队列,所述统计信息包括发包速率;
确定模块,用于根据所述目标出端口队列在所述第一时间段内的发包速率与目标时延,确定所述目标出端口队列在第二时间段内的显示拥塞通知ECN水线,所述ECN水线与所述发包速率正相关,所述目标时延与所述网络设备所在的所有传输链路上的最大往返时延正相关;
标记模块,用于在所述第二时间段内,当所述目标出端口队列的队列深度超出所述ECN水线时,为所述目标出端口队列中的数据包设置ECN标记;
其中,所述网络设备用于周期性地获取所述目标出端口队列的统计信息,所述第一时间段和所述第二时间段是相邻的两个周期。
8.根据权利要求7所述的装置,其特征在于,所述统计信息还包括队列深度变化信息,所述确定模块用于:
当所述目标出端口队列在所述第一时间段的结束时刻的队列深度大于或等于所述目标出端口队列在所述第一时间段的开始时刻的队列深度时,根据所述发包速率与所述目标时延确定所述ECN水线。
9.根据权利要求7所述的装置,其特征在于,所述统计信息还包括PFC反压信息,所述确定模块用于:
当所述目标出端口队列在所述第一时间段内未接收到PFC帧,且所述目标出端口队列在所述第一时间段内的发包速率不为0时,根据所述发包速率与所述目标时延确定所述ECN水线。
10.根据权利要求7所述的装置,其特征在于,所述统计信息还包括队列深度变化信息和PFC反压信息,所述确定模块用于:
根据所述发包速率与所述目标时延确定第一ECN水线;
根据所述队列深度变化信息确定第二ECN水线;
根据所述PFC反压信息确定第三ECN水线;
将所述第一ECN水线,所述第二ECN水线和所述第三ECN水线中的最大值确定为所述ECN水线,所述ECN水线是根据所述发包速率与所述目标时延确定的,或所述ECN水线为所述目标出端口队列所在的转发芯片支持的最大ECN水线。
11.根据权利要求8所述的装置,其特征在于,所述确定模块还用于:
当所述目标出端口队列在所述第一时间段的结束时刻的队列深度小于所述目标出端口队列在所述第一时间段的开始时刻的队列深度时,将所述目标出端口队列所在的转发芯片支持的最大ECN水线确定为所述目标出端口队列在所述第二时间段内的ECN水线,或者,取消对所述目标出端口队列在所述第二时间段内的ECN水线设置。
12.根据权利要求9所述的装置,其特征在于,所述确定模块还用于:
当所述目标出端口队列在所述第一时间段内接收到PFC帧,或者所述目标出端口队列在所述第一时间段内的发包速率为0时,将所述目标出端口队列所在的转发芯片支持的最大ECN水线确定为所述目标出端口队列在第二时间段内的ECN水线,或者,取消对所述目标出端口队列在所述第二时间段内的ECN水线设置。
13.一种通信网络,其特征在于,包括:发送端、网络设备以及接收端,所述网络设备包括如权利要求7至12任一所述的拥塞控制装置。
14.一种网络设备,其特征在于,所述网络设备包括:处理器和存储器;
所述存储器,用于存储计算机程序,所述计算机程序包括程序指令;
所述处理器,用于调用所述计算机程序,实现如权利要求1至6任一所述的拥塞控制方法。
15.一种计算机存储介质,其特征在于,所述计算机存储介质上存储有指令,当所述指令被处理器执行时,实现如权利要求1至6任一所述的拥塞控制方法。
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 |
JP2021575029A JP2022537187A (ja) | 2019-06-17 | 2020-05-27 | 輻輳制御方法および装置、通信ネットワーク、ならびにコンピュータ記憶媒体 |
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 |
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 CN112104562A (zh) | 2020-12-18 |
CN112104562B true CN112104562B (zh) | 2023-04-18 |
Family
ID=73748760
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910523078.4A Active CN112104562B (zh) | 2019-06-17 | 2019-06-17 | 拥塞控制方法及装置、通信网络、计算机存储介质 |
CN202310459240.7A Pending CN116886609A (zh) | 2019-06-17 | 2019-06-17 | 拥塞控制方法及装置、通信网络、计算机存储介质 |
CN202310453637.5A Active CN116527584B (zh) | 2019-06-17 | 2019-06-17 | 拥塞控制方法及装置、通信网络、计算机存储介质 |
Family Applications After (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) | CN112104562B (zh) |
BR (1) | BR112021023027A2 (zh) |
WO (1) | WO2020253488A1 (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115086236B (zh) * | 2021-03-11 | 2024-11-08 | 中国电信股份有限公司 | 调整数据转发队列的方法、装置及计算机可读存储介质 |
CN113411263B (zh) * | 2021-06-18 | 2023-03-14 | 中国工商银行股份有限公司 | 一种数据传输方法、装置、设备及存储介质 |
CN113676419B (zh) * | 2021-09-03 | 2024-08-27 | 中国人民银行清算总中心 | 一种消息传输方法及装置 |
CN113992588B (zh) * | 2021-10-21 | 2024-02-09 | 浪潮电子信息产业股份有限公司 | 数据传输方法、装置、电子设备及可读存储介质 |
CN114051002B (zh) * | 2021-11-30 | 2024-03-19 | 新华三大数据技术有限公司 | Ecn水线确定方法、装置及电子设备 |
CN113938433B (zh) * | 2021-12-02 | 2024-02-02 | 中国人民解放军国防科技大学 | 一种基于动态阈值的高速网络拥塞控制方法和装置 |
CN117544567B (zh) * | 2024-01-09 | 2024-03-19 | 南京邮电大学 | 存传一体的rdma数据中心拥塞控制方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101964755A (zh) * | 2010-11-03 | 2011-02-02 | 中南大学 | 高带宽延时网络中基于带宽估计的显式拥塞控制方法 |
CN101977151A (zh) * | 2010-11-09 | 2011-02-16 | 中南大学 | 一种用于高丢包率广域网环境下的拥塞控制方法 |
CN106789701A (zh) * | 2016-12-30 | 2017-05-31 | 北京邮电大学 | 一种数据中心中自适应ecn标记方法及装置 |
CN108989235A (zh) * | 2018-08-28 | 2018-12-11 | 新华三技术有限公司 | 一种报文转发控制方法及装置 |
Family Cites Families (19)
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 |
US9276866B2 (en) * | 2012-11-30 | 2016-03-01 | Microsoft Technology Licensing, Llc | Tuning congestion notification for data center networks |
US20140164641A1 (en) * | 2012-12-11 | 2014-06-12 | The Hong Kong University Of Science And Technology | Congestion control for data center traffic |
JP5992862B2 (ja) * | 2013-04-16 | 2016-09-14 | 日本電信電話株式会社 | フレームマーキング回路 |
FR3015834A1 (fr) | 2013-12-20 | 2015-06-26 | Orange | Technique de signalisation d'une congestion dans un reseau de communication par paquets |
JP6544353B2 (ja) * | 2014-06-06 | 2019-07-17 | 日本電気株式会社 | 送信データ量制御装置、制御システム、制御方法および制御プログラム |
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 |
US10516620B2 (en) * | 2016-05-18 | 2019-12-24 | 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 | 华为技术有限公司 | 网络拥塞的通告方法、代理节点、网络节点及计算机设备 |
CN111164938A (zh) * | 2017-09-29 | 2020-05-15 | 芬基波尔有限责任公司 | 使用选择性多路径分组流喷射的弹性网络通信 |
CN109245959B (zh) * | 2018-09-25 | 2021-09-03 | 华为技术有限公司 | 统计活跃流数目的方法、网络设备和系统 |
-
2019
- 2019-06-17 CN CN201910523078.4A patent/CN112104562B/zh active Active
- 2019-06-17 CN CN202310459240.7A patent/CN116886609A/zh active Pending
- 2019-06-17 CN CN202310453637.5A patent/CN116527584B/zh active Active
-
2020
- 2020-05-27 WO PCT/CN2020/092660 patent/WO2020253488A1/zh unknown
- 2020-05-27 BR BR112021023027A patent/BR112021023027A2/pt unknown
- 2020-05-27 EP EP20825902.8A patent/EP3961981A4/en active Pending
- 2020-05-27 JP JP2021575029A patent/JP2022537187A/ja active Pending
-
2021
- 2021-12-02 US US17/540,575 patent/US11870698B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101964755A (zh) * | 2010-11-03 | 2011-02-02 | 中南大学 | 高带宽延时网络中基于带宽估计的显式拥塞控制方法 |
CN101977151A (zh) * | 2010-11-09 | 2011-02-16 | 中南大学 | 一种用于高丢包率广域网环境下的拥塞控制方法 |
CN106789701A (zh) * | 2016-12-30 | 2017-05-31 | 北京邮电大学 | 一种数据中心中自适应ecn标记方法及装置 |
CN108989235A (zh) * | 2018-08-28 | 2018-12-11 | 新华三技术有限公司 | 一种报文转发控制方法及装置 |
Non-Patent Citations (1)
Title |
---|
Dynamic ECN marking threshold algorithm for TCP congestion control in data center networks;Yifei Lu 等;《Computer Communications 129 (2018)》;20180822;正文第2页左栏倒数第5段至第10页右栏最后一段 * |
Also Published As
Publication number | Publication date |
---|---|
US20220094640A1 (en) | 2022-03-24 |
WO2020253488A1 (zh) | 2020-12-24 |
CN116527584A (zh) | 2023-08-01 |
CN116886609A (zh) | 2023-10-13 |
EP3961981A4 (en) | 2022-07-06 |
CN112104562A (zh) | 2020-12-18 |
CN116527584B (zh) | 2024-04-12 |
EP3961981A1 (en) | 2022-03-02 |
JP2022537187A (ja) | 2022-08-24 |
BR112021023027A2 (pt) | 2022-01-04 |
US11870698B2 (en) | 2024-01-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112104562B (zh) | 拥塞控制方法及装置、通信网络、计算机存储介质 | |
CN109120544B (zh) | 一种数据中心网络中基于主机端流量调度的传输控制方法 | |
US7061866B2 (en) | Metered packet flow for packet switched networks | |
US20060203730A1 (en) | Method and system for reducing end station latency in response to network congestion | |
CN108989235B (zh) | 一种报文转发控制方法及装置 | |
CN108243116B (zh) | 一种流量控制方法及交换设备 | |
CN107948103B (zh) | 一种基于预测的交换机pfc控制方法及控制系统 | |
CN108540395B (zh) | 无丢失网络中的拥塞判断方法及交换机 | |
CN110784415B (zh) | 一种ecn快速响应的方法及装置 | |
WO2017114231A1 (zh) | 一种报文发送方法、tcp代理以及tcp客户端 | |
EP1344359A1 (en) | Method of enhancing the efficiency of data flow in communication systems | |
US9614777B2 (en) | Flow control in a network | |
CA2539080C (en) | Encapsulating packets into a frame for a network | |
JP2020072336A (ja) | パケット転送装置、方法、及びプログラム | |
CN107852372B (zh) | 数据分组网络 | |
CN113572655B (zh) | 无丢失网络的拥塞探测方法及系统 | |
WO2021083160A1 (zh) | 数据传输的方法和装置 | |
CN110784417A (zh) | 拥塞控制方法、设备及系统 | |
CA2940077C (en) | Buffer bloat control | |
JP4930275B2 (ja) | 通信システム、通信方法、送信機、受信機、レート計算方法およびプログラム | |
JP4382830B2 (ja) | パケット転送装置 | |
US7855954B2 (en) | Speculative credit data flow control | |
JP2007013449A (ja) | シェーパー制御方法、データ通信システム、ネットワークインタフェース装置及びネットワーク中継装置 | |
CN117411833A (zh) | 拥塞控制方法、设备及系统 | |
CN118631749A (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 |