CN112491736B - Congestion control method and device, electronic equipment and storage medium - Google Patents

Congestion control method and device, electronic equipment and storage medium Download PDF

Info

Publication number
CN112491736B
CN112491736B CN202011267449.6A CN202011267449A CN112491736B CN 112491736 B CN112491736 B CN 112491736B CN 202011267449 A CN202011267449 A CN 202011267449A CN 112491736 B CN112491736 B CN 112491736B
Authority
CN
China
Prior art keywords
controlled
queue
ecn
egress queue
pfc
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
CN202011267449.6A
Other languages
Chinese (zh)
Other versions
CN112491736A (en
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.)
Ruijie Networks Co Ltd
Original Assignee
Ruijie Networks 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
Application filed by Ruijie Networks Co Ltd filed Critical Ruijie Networks Co Ltd
Priority to CN202011267449.6A priority Critical patent/CN112491736B/en
Publication of CN112491736A publication Critical patent/CN112491736A/en
Application granted granted Critical
Publication of CN112491736B publication Critical patent/CN112491736B/en
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
    • 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/56Queue scheduling implementing delay-aware 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

Landscapes

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

Abstract

The invention discloses a congestion control method and device, electronic equipment and a storage medium. The method and the device are used for solving the problem of low congestion control efficiency caused by unreasonable ECN threshold setting in the prior art. The congestion control method comprises the following steps: acquiring configuration information and network state information of an exit queue to be controlled of a current switch in a current turn; if the network state information is determined not to meet the preset condition, determining an ECN threshold adjustment factor of the to-be-controlled exit queue according to the configuration information and the network state information; determining the ECN threshold of the exit queue to be controlled in the next round according to the ECN threshold of the exit queue to be controlled in the current round included in the ECN threshold adjustment factor and the configuration information; and issuing the ECN threshold of the next round to the current switch so that the current switch performs congestion control on the exit queue to be controlled in the next round according to the ECN threshold of the next round.

Description

Congestion control method and device, electronic equipment and storage medium
Technical Field
The present invention relates to the field of computer networks and communication technologies, and in particular, to a congestion control method and apparatus, an electronic device, and a storage medium.
Background
In the current data center, in order to implement low latency and high throughput of data transmission, an RDMA (Remote Direct Memory Access) network is used in a large scale, and because the efficiency of the RDMA network is greatly reduced by a packet loss rate, the RDMA network with zero packet loss needs to be implemented. In the prior art, a DCQCN (Data Center quantitative Congestion notification) technology and a PFC (Priority-based Flow Control) technology are combined to solve the problem of Data packet loss. The DCQCN technology uses ECN (Explicit Congestion Notification, which displays Congestion Notification) to sense Congestion conditions at a switch, when the switch detects Congestion, ECN marking is performed on a data Packet, when a receiving end receives the data Packet, the ECN marking is checked, if the receiving end receives the data Packet with the ECN marking, a CNP (Congestion Notification Packet) is sent to a sending end to notify the sending end to control flow rate, and when the sending end receives the CNP, the flow rate is reduced, so that Congestion control is realized. The ECN technique specifically relies on an ECN threshold, which includes an upper threshold and a lower threshold, where two thresholds of the ECN threshold define a marking probability, and when the queue length of the switch is lower than the lower threshold, the ECN bit is not marked, when the queue length exceeds the upper threshold, all packets transmitted from the queue are ECN marked with a maximum marking probability, and when the queue length is between the upper threshold and the lower threshold, the packets are ECN marked with a probability that increases linearly with the queue length. The PFC technology specifically comprises the following steps: when the switch monitors that the queue length exceeds the PFC threshold, the PAUSE frame is sent to the upstream equipment, so that the upstream equipment stops sending the data packet, and therefore, the buffer overflow of a buffer area of the switch is avoided, and the data packet loss is avoided.
At present, static empirical values are generally used when setting the ECN threshold, and if the ECN threshold is not reasonably set, when the ECN threshold is matched with the PFC threshold, the PFC may be excessively triggered, so that the overall delay and throughput of the network are affected. In addition, since the flows of different services have different sizes, the transmission targets to be achieved are also different, generally, a small flow (a single byte is few) requires low latency, a large flow (a single byte is many) requires high throughput, and the ECN threshold uses a static empirical value, and cannot provide services with different requirements for different services. For a typical incust (many-to-one) scenario in a data center, a plurality of ingress queues correspond to one egress queue, and when the number of ingress queues is large, a low threshold is required to ensure low latency, otherwise, a high threshold is required to improve throughput.
Therefore, how to set the ECN threshold to improve the congestion control efficiency is one of the technical problems to be solved in the prior art.
Disclosure of Invention
In order to solve the problem of low congestion control efficiency caused by unreasonable ECN threshold setting in the prior art, embodiments of the present invention provide a congestion control method and apparatus, an electronic device, and a storage medium.
In a first aspect, an embodiment of the present invention provides a congestion control method, which is applied to a congestion control device corresponding to at least one switch, where each switch includes at least one egress queue, and each egress queue corresponds to at least two ingress queues, where the method includes:
acquiring configuration information and network state information of an exit queue to be controlled of a current switch in a current turn;
if the network state information is determined not to meet the preset condition, determining a display congestion notification ECN threshold adjustment factor of the to-be-controlled exit queue according to the configuration information and the network state information;
determining the ECN threshold of the egress queue to be controlled in the next round according to the ECN threshold of the egress queue to be controlled in the current round included in the configuration information and the ECN threshold adjustment factor;
and issuing the ECN threshold of the to-be-controlled egress queue in the next round to the current switch, so that the current switch performs congestion control on the to-be-controlled egress queue in the next round according to the ECN threshold of the to-be-controlled egress queue in the next round.
The congestion control method provided by the embodiment of the invention is applied to congestion control equipment corresponding to at least one switch, each switch comprises at least one egress queue, each egress queue corresponds to at least two ingress queues, the congestion control equipment acquires configuration information and network state information of an egress queue to be controlled of the current switch in the current round, if the network state information is determined not to meet the preset condition, an ECN threshold adjustment factor of the egress queue to be controlled is determined according to the configuration information and the network state information of the egress queue to be controlled in the current round, an ECN threshold of the egress queue to be controlled in the next round is determined according to the ECN threshold of the egress queue to be controlled in the current round contained in the configuration information and the ECN threshold of the egress queue to be controlled in the current round, the ECN threshold of the egress queue to be controlled in the next round is issued to the current switch, the current switch performs congestion control on the egress queue to be controlled according to the received ECN threshold of the egress queue to be controlled in the next round, compared with the prior art, the congestion control method provided by the embodiment of the invention realizes that the congestion control of the egress queue to be controlled is dynamically configured according to the ECN threshold of the egress queue to be controlled according to the ECN threshold of the ECN of the received ECN queue to be controlled, and the egress queue to be controlled, and the ECN threshold of the egress queue to be controlled is determined according to the ECN threshold of the ECN threshold to be controlled, and the egress queue to be controlled is dynamically adjusted, when the egress queue to be controlled is dynamically adjusted, and the ECN of the egress queue to be controlled, and the egress queue to be controlled is determined, and the ECN of the egress queue to be controlled is dynamically adjusted in the egress queue to be controlled, the congestion control efficiency is improved, and the invention only needs to collect the relevant data of the exit queue to be controlled of the switch on a single switch, and is irrelevant to other devices, thereby reducing the data collection difficulty and leading the ECN threshold dynamic regulation method provided by the invention to have stronger adaptability and expansion capability.
In one embodiment, if the network state information includes the number of triggering PFC, throughput and time delay for priority-based flow control of the egress queue to be controlled, where the throughput is an average rate of outputting packets of the egress queue to be controlled, and the time delay is an average forwarding time delay of the egress queue to be controlled, the preset condition is that an expected time delay is greater than or equal to the time delay, an expected throughput is less than or equal to the throughput, and an expected number of triggering PFC is greater than or equal to the number of triggering PFC of the egress queue to be controlled.
In the embodiment of the invention, whether the ECN threshold of the egress queue to be controlled needs to be adjusted is determined according to the time delay and the throughput of the current round, the PFC triggering times of the egress queue to be controlled, the expected time delay, the expected throughput and the expected PFC triggering times, so that the actual requirements are met.
In one embodiment, if the network state information further includes ECN triggering times of the egress queue to be controlled and a minimum forwarding delay of the egress queue to be controlled, and the configuration information further includes a PFC threshold of the egress queue to be controlled, a PFC threshold of each ingress queue of the egress queue to be controlled, and an ECN maximum flag probability of the egress queue to be controlled, determining an ECN threshold adjustment factor of the egress queue to be controlled according to the configuration information and the network state information, specifically including:
determining a delay error of the to-be-controlled outlet queue according to the delay, the expected delay, the lowest forwarding delay of the to-be-controlled outlet queue, the PFC threshold of each inlet queue of the to-be-controlled outlet queue, the ECN maximum marking probability of the to-be-controlled outlet queue and the ECN threshold of the to-be-controlled outlet queue;
determining a throughput error of the egress queue to be controlled according to the throughput, the expected throughput, the PFC threshold of each ingress queue of the egress queue to be controlled, the ECN maximum marking probability of the egress queue to be controlled, and the ECN threshold of the egress queue to be controlled;
determining a PFC triggering time error of the egress queue to be controlled according to the PFC triggering time of the egress queue to be controlled, the expected PFC triggering time and the ECN maximum marking probability of the egress queue to be controlled;
determining an ECN threshold adjustment error of the to-be-controlled outlet queue according to the delay error of the to-be-controlled outlet queue, the throughput error of the to-be-controlled outlet queue and the PFC triggering frequency error of the to-be-controlled outlet queue;
and determining the ECN threshold adjusting factor of the to-be-controlled outlet queue according to the ECN maximum marking probability of the to-be-controlled outlet queue and the ECN threshold adjusting error of the to-be-controlled outlet queue.
In the embodiment of the present invention, it is considered that the ECN maximum marking probability of the egress queue to be controlled affects the ECN threshold, therefore, when determining the ECN threshold adjustment factor (i.e., the ECN threshold adjustment degree) of the egress queue to be controlled, the ECN maximum marking probability is taken into account, in the actual operation process of the network, PFC triggering may cause data flow to pause, which may result in reduced queue throughput and increased delay, and should be avoided as much as possible, in order to avoid triggering PFC as much as possible, the ECN threshold of the egress queue to be controlled is further limited by the size of the PFC threshold of the ingress queue of the egress queue to be controlled, therefore, when determining the ECN threshold adjustment degree, the PFC threshold of the ingress queue of the egress queue to be controlled is also taken into account, and a delay error of the egress queue to be controlled is determined jointly according to the delay of the current round, the expected delay, the lowest forwarding delay of the egress queue to be controlled, the PFC thresholds of the egress queues to be controlled, the ECN maximum marking probability of the egress queue to be controlled, and the ECN of the egress queue to be controlled, determining a throughput error of the egress queue to be controlled according to the throughput and the expected throughput of the current round, the PFC threshold of each ingress queue of the egress queue to be controlled, the ECN maximum marking probability of the egress queue to be controlled and the ECN threshold of the egress queue to be controlled, determining a PFC triggering time error of the egress queue to be controlled according to the PFC triggering time of the egress queue to be controlled, the expected PFC triggering time and the ECN maximum marking probability of the egress queue to be controlled of the current round, and further determining an ECN threshold adjusting error of the egress queue to be controlled according to the delay error, the throughput error and the PFC triggering time error of the egress queue to be controlled, furthermore, the ECN threshold adjustment factor of the to-be-controlled egress queue is determined according to the ECN maximum marking probability of the to-be-controlled egress queue and the ECN threshold adjustment error of the to-be-controlled egress queue, the ECN threshold adjustment factor of the to-be-controlled egress queue is determined according to the above manner, the ECN threshold adjustment degree is determined by considering the time delay of the current round and the deviation of the expected time delay, the throughput of the current round and the deviation of the expected throughput, and the PFC trigger times of the to-be-controlled egress queue of the current round and the deviation of the expected PFC trigger times, so that the ECN threshold is adjusted more reasonably and pertinently, and the congestion control efficiency can be improved.
In one embodiment, determining the ECN threshold of the egress queue to be controlled in the next round according to the ECN threshold of the egress queue to be controlled in the current round included in the configuration information and the ECN threshold of the egress queue to be controlled in the current round specifically includes:
calculating the ECN threshold of the egress queue to be controlled in the next round by the following formula:
K i+1 =(1-f)K i
wherein, K i Representing the ECN threshold of the exit queue to be controlled in the ith round;
K i+1 representing the ECN threshold of the exit queue to be controlled in the (i + 1) th round;
f represents the ECN threshold adjusting factor of the exit queue to be controlled.
In one embodiment, the ECN threshold adjustment factor of the egress queue to be controlled is calculated by the following formula:
f=P max ·h
wherein f represents an ECN threshold adjustment factor of the egress queue to be controlled;
P max representing the ECN maximum marking probability of the egress queue to be controlled;
h represents the ECN threshold adjustment error of the egress queue to be controlled, and h = alpha.h 1 (timelog,timelog preset )+β·h 2 (throughtput,throughtput preset )+δ·h 3 (N PFC ,N PFCpreset ),h 1 (timelog,timelog preset ) Representing the delay error of the egress queue to be controlled, and representing the delay by a timelog preset Representing the expected time delay, alpha representing the weight of the time delay error of the to-be-controlled egress queue, h 2 (throughtput,throughtput preset ) Representing the throughput error of the exit queue to be controlled, and the throughput represents the throughput preset Represents the expected throughput, beta represents the weight of the throughput error of the egress queue to be controlled, h 3 (N PFC ,N PFCpreset ) Represents the error of PFC trigger times of the egress queue to be controlled, N PFC Represents the PFC trigger times, N, of the egress queue to be controlled PFCpreset Represents the expected number of PFC triggers, δ represents a weight of a PFC trigger error of the egress queue to be controlled, α + β + δ =1, wherein:
Figure BDA0002776510870000061
Figure BDA0002776510870000062
Figure BDA0002776510870000063
low represents the lower limit value of the ECN threshold adjustment error of the exit queue to be controlled, up represents the upper limit value of the ECN threshold adjustment error of the exit queue to be controlled,
Figure BDA0002776510870000064
Figure BDA0002776510870000065
a PFC threshold value representing the jth ingress queue of the egress queue to be controlled, n representing the number of ingress queues of the egress queue to be controlled, t 0 And representing the lowest forwarding time delay of the egress queue to be controlled.
In a second aspect, an embodiment of the present invention provides a congestion control apparatus, which is applied to congestion control devices corresponding to at least one switch, where each switch includes at least one egress queue, and each egress queue corresponds to at least two ingress queues, where the apparatus includes:
the system comprises an acquisition unit, a control unit and a control unit, wherein the acquisition unit is used for acquiring configuration information and network state information of an exit queue to be controlled of a current switch in a current round;
a first determining unit, configured to determine, according to the configuration information and the network status information, a congestion notification ECN threshold adjustment factor to be displayed for the to-be-controlled egress queue if it is determined that the network status information does not satisfy a preset condition;
a second determining unit, configured to determine, according to the ECN threshold adjustment factor and the ECN threshold of the to-be-controlled egress queue in the current round included in the configuration information, an ECN threshold of the to-be-controlled egress queue in a next round;
and the congestion control unit is used for sending the ECN threshold of the to-be-controlled outlet queue in the next round to the current switch so that the current switch carries out congestion control on the to-be-controlled outlet queue in the next round according to the ECN threshold of the to-be-controlled outlet queue in the next round.
In one embodiment, if the network state information includes the number of PFC triggers for flow control based on priority, throughput, and time delay of the egress queue to be controlled, where the throughput is an average rate of packet output of the egress queue to be controlled, and the time delay is an average forwarding time delay of the egress queue to be controlled, the preset condition is that an expected time delay is greater than or equal to the time delay, an expected throughput is less than or equal to the throughput, and an expected number of PFC triggers is greater than or equal to the number of PFC triggers of the egress queue to be controlled.
In one embodiment, if the network state information further includes ECN triggering times of the egress queue to be controlled and a lowest forwarding delay of the egress queue to be controlled, and the configuration information further includes a PFC threshold of the egress queue to be controlled, a PFC threshold of each ingress queue of the egress queue to be controlled, and an ECN maximum flag probability of the egress queue to be controlled, the first determining unit is specifically configured to determine a delay error of the egress queue to be controlled according to the delay, the expected delay, the lowest forwarding delay of the egress queue to be controlled, the PFC threshold of each ingress queue of the egress queue to be controlled, the ECN maximum flag probability of the egress queue to be controlled, and the ECN threshold of the egress queue to be controlled; determining a throughput error of the to-be-controlled outlet queue according to the throughput, the expected throughput, the PFC threshold of each inlet queue of the to-be-controlled outlet queue, the ECN maximum marking probability of the to-be-controlled outlet queue and the ECN threshold of the to-be-controlled outlet queue; determining PFC triggering time errors of the egress queue to be controlled according to the PFC triggering times of the egress queue to be controlled, the expected PFC triggering times and the ECN maximum marking probability of the egress queue to be controlled; determining an ECN threshold adjustment error of the egress queue to be controlled according to the time delay error of the egress queue to be controlled, the throughput error of the egress queue to be controlled and the PFC triggering frequency error of the egress queue to be controlled; and determining the ECN threshold adjusting factor of the to-be-controlled outlet queue according to the ECN maximum marking probability of the to-be-controlled outlet queue and the ECN threshold adjusting error of the to-be-controlled outlet queue.
In one embodiment, the second determining unit is specifically configured to calculate an ECN threshold of the egress queue to be controlled in the next round according to the following formula:
K i+1 =(1-f)K i
wherein, K i Representing the ECN threshold of the exit queue to be controlled in the ith round;
K i+1 representing the ECN threshold of the exit queue to be controlled in the (i + 1) th round;
f represents the ECN threshold adjusting factor of the exit queue to be controlled.
In one embodiment, the first determining unit is specifically configured to calculate an ECN threshold adjustment factor of the egress queue to be controlled according to the following formula:
f=P max ·h
wherein f represents an ECN threshold adjustment factor of the egress queue to be controlled;
P max representing the ECN maximum marking probability of the egress queue to be controlled;
h represents the ECN threshold adjustment error of the egress queue to be controlled, and h = alpha.h 1 (timelog,timelog preset )+β·h 2 (throughtput,throughtput preset )+δ·h 3 (N PFC ,N PFCpreset ),h 1 (timelog,timelog preset ) Representing the time delay error of the outlet queue to be controlled, representing the time delay by the time delay preset Representing the expected time delay, alpha representing the weight of the time delay error of the to-be-controlled egress queue, h 2 (throughtput,throughtput preset ) Representing the throughput error of the exit queue to be controlled, and the throughput represents the throughput preset Representing the expected throughput, beta representing a weight of the throughput error of the egress queue to be controlled, h 3 (N PFC ,N PFCpreset ) Represents the error of PFC trigger times of the egress queue to be controlled, N PFC Represents the PFC trigger times, N, of the egress queue to be controlled PFCpreset Represents the expected number of PFC triggers, δ represents a weight of a PFC trigger number error of the egress queue to be controlled, α + β + δ =1, wherein:
Figure BDA0002776510870000091
Figure BDA0002776510870000092
Figure BDA0002776510870000093
low represents the lower limit value of the ECN threshold adjustment error of the to-be-controlled exit queue, up represents the upper limit value of the ECN threshold adjustment error of the to-be-controlled exit queue,
Figure BDA0002776510870000094
Figure BDA0002776510870000095
indicating the PFC threshold value of the jth inlet queue of the outlet queue to be controlled, n indicating the number of the inlet queues of the outlet queue to be controlled, t 0 And representing the lowest forwarding time delay of the egress queue to be controlled.
The technical effects of the congestion control device provided by the present invention may refer to the technical effects of the first aspect or the implementation manners of the first aspect, which are not described herein again.
In a third aspect, an embodiment of the present invention provides an electronic device, which includes a memory, a processor, and a computer program stored in the memory and executable on the processor, where the processor implements the congestion control method according to the present invention when executing the computer program.
In a fourth aspect, an embodiment of the present invention provides a computer-readable storage medium, on which a computer program is stored, where the computer program, when executed by a processor, implements the steps in the congestion control method according to the present invention.
Additional features and advantages of the invention will be set forth in the description which follows, and in part will be obvious from the description, or may be learned by practice of the invention. The objectives and other advantages of the invention will be realized and attained by the structure particularly pointed out in the written description and claims hereof as well as the appended drawings.
Drawings
The accompanying drawings, which are included to provide a further understanding of the invention and are incorporated in and constitute a part of this specification, illustrate embodiments of the invention and together with the description serve to explain the invention and not to limit the invention. In the drawings:
fig. 1 is a schematic view of an application scenario of a congestion control method according to an embodiment of the present invention;
fig. 2 is a schematic flow chart of an implementation of a congestion control method according to an embodiment of the present invention;
fig. 3 is a schematic diagram illustrating an implementation flow of determining an ECN threshold adjustment factor of an egress queue to be controlled according to an embodiment of the present invention;
fig. 4 is a schematic structural diagram of a congestion control apparatus according to an embodiment of the present invention;
fig. 5 is a schematic structural diagram of an electronic device according to an embodiment of the present invention.
Detailed Description
In order to solve the problem of low congestion control efficiency caused by unreasonable setting of an ECN threshold in the prior art, embodiments of the present invention provide a congestion control method and apparatus, an electronic device, and a storage medium.
The preferred embodiments of the present invention will be described in conjunction with the accompanying drawings, it being understood that the preferred embodiments described herein are for purposes of illustration and explanation only and are not intended to be limiting of the present invention, and that the embodiments and features of the embodiments may be combined with each other without conflict.
Fig. 1 is a schematic view of an application scenario of the congestion control method according to the embodiment of the present invention, which is a typical many-to-one (Incast) scenario of a data center. In fig. 1, only the congestion control device and one of the switches controlled by the congestion control device are taken as an example to illustrate, each switch at least includes one Egress queue, each Egress queue corresponds to at least two Ingress queues, the congestion control device and the switch are connected through a network, it is assumed that a port a is an Egress (Egress) port on the switch, ports 1 to n are Ingress (Ingress) ports of the port a, data in an Egress queue to be controlled of the switch is output from the port a, and data in the Egress queue to be controlled is input into the switch through the ports 1 to n by the Ingress queues 1 to n of the Egress queue to be controlled, respectively. The congestion control device collects configuration information and Network state information of a queue to be controlled in the current round from a switch, when an ECN threshold adjustment condition is met, the adjustment degree of an ECN threshold of an exit queue to be controlled (namely, an ECN threshold adjustment factor) is determined according to the information of the two layers, the ECN threshold of the exit queue to be controlled in the next round is determined according to the ECN threshold of the exit queue to be controlled in the current round and the ECN threshold adjustment factor of the exit queue to be controlled, the ECN threshold of the exit queue to be controlled in the next round is issued to the switch, the switch performs congestion control on the exit queue to be controlled in the next round according to the received ECN threshold of the exit queue to be controlled in the next round, different ECN thresholds are dynamically configured for related information of exit queues to be controlled of different switches, the congestion control device can be a device, a server, a terminal and the like which run with an SDN (Software Defined Network) controller, and the control of the switch can be executed by the SDN controller.
In the following, in conjunction with the application scenario of fig. 1, a congestion control method according to an exemplary embodiment of the present invention is described with reference to fig. 2 to fig. 3. It should be noted that the above application scenarios are only illustrated for the convenience of understanding the spirit and principle of the present invention, and the embodiments of the present invention are not limited in any way herein. Rather, embodiments of the present invention may be applied to any scenario where applicable.
As shown in fig. 2, which is a schematic diagram illustrating an implementation flow of a congestion control method according to an embodiment of the present invention, where the congestion control method is applied to a congestion control device corresponding to at least one switch, each switch includes at least one egress queue, and each egress queue corresponds to at least two ingress queues, and the congestion control method may include the following steps:
s11, acquiring configuration information and network state information of the exit queue to be controlled of the current switch in the current turn.
In specific implementation, the congestion control device collects configuration information and network state information of the current round of the egress queue to be controlled of the current switch. The configuration information of the to-be-controlled egress queue at least includes an ECN threshold of the to-be-controlled egress queue, a PFC threshold of each ingress queue of the to-be-controlled egress queue, and an ECN maximum marking probability of the to-be-controlled egress queue. The network state information of the to-be-controlled outlet queue comprises throughput, time delay, PFC triggering times of the to-be-controlled outlet queue, ECN triggering times of the to-be-controlled outlet queue and the lowest forwarding time delay of the to-be-controlled outlet queue, wherein the throughput is the average message output rate of the to-be-controlled outlet queue, and the time delay is the average forwarding time delay of the to-be-controlled outlet queue. Each round is a preset time period, and may be set according to needs, for example, one round may be set to 20s, which is not limited in the embodiment of the present invention. The ECN threshold of the to-be-controlled exit queue can be the upper threshold limit of the ECN threshold, the ECN threshold comprises two thresholds, namely the upper threshold limit and the lower threshold limit, and the upper threshold limit has a large influence on the adjustment result, so that the upper threshold limit of the ECN threshold is adjusted by default in the embodiment of the invention, and the lower threshold limit of the ECN threshold can be obtained only by performing equal proportion adjustment after the upper threshold limit of the ECN threshold is determined. In the embodiment of the present invention, the switch is a network device managed by the congestion control device, and the switch is a switch at least having the following functions: the system comprises an ECN (DCQCN) function, a PFC function, a gPRC (Remote Procedure Call) function and an INT (IN-band Network Telemetry) function, wherein the gPRC is a high-precision Telemetry technology. During implementation, the switch acquires PFC triggering times of the to-be-controlled outlet queue, an ECN threshold of the to-be-controlled outlet queue, a PFC threshold of the to-be-controlled outlet queue, ECN triggering times of the to-be-controlled outlet queue and message output average rate (throughput) of the to-be-controlled outlet queue through a gPRC function, and acquires average forwarding delay (immediate delay) of the to-be-controlled outlet queue through an INT function.
The network device managed by the congestion control device may also be other network devices having the above functions, such as a router, and the like, which is not limited in this embodiment of the present invention.
And S12, if the network state information is determined not to meet the preset condition, determining an ECN threshold adjustment factor of the to-be-controlled egress queue according to the configuration information and the network state information.
In specific implementation, when the congestion control device determines that the network state information of the to-be-controlled egress queue does not meet the preset condition, the congestion control device determines an ECN threshold adjustment factor of the to-be-controlled egress queue according to the configuration information and the network state information of the to-be-controlled egress queue, where the ECN threshold adjustment factor represents an adjustment degree of an ECN threshold.
Specifically, the preset conditions include the following three conditions:
the first condition is as follows: the expected latency is greater than or equal to the latency.
And a second condition: the expected throughput is less than or equal to the throughput.
And (3) carrying out a third condition: and the expected PFC triggering times are more than or equal to the PFC triggering times of the to-be-controlled egress queue.
And when any one of the three conditions is not met, determining that the network state information of the to-be-controlled exit queue does not meet the preset condition.
Specifically, the congestion control apparatus determines that either of the following conditions is not satisfied: and if the expected time delay is greater than or equal to the time delay of the exit queue to be controlled in the current round, the expected throughput is less than or equal to the throughput of the exit queue to be controlled in the current round, and the expected PFC trigger times are greater than or equal to the PFC trigger times of the exit queue to be controlled in the current round, adjusting the ECN threshold of the exit queue to be controlled. And when the three conditions are met simultaneously, the ECN threshold of the exit queue to be controlled in the current round is considered to be reasonably set, and the ECN threshold is not adjusted. The expected time delay, the expected throughput and the expected PFC triggering times may be manually set by the client according to different services, or may be preset by the congestion control device according to different services, which is not limited in the embodiment of the present invention.
In specific implementation, based on the idea of iteration, the ECN threshold iteration formula of the egress queue to be controlled is designed as follows:
K i+1 =(1-f)K i (1)
wherein, K i Representing the ECN threshold of the exit queue to be controlled in the ith round;
K i+1 the ECN threshold of the exit queue to be controlled in the (i + 1) th round is represented;
f represents the ECN threshold adjustment factor of the egress queue to be controlled.
Wherein, the ith round is the current round, and the (i + 1) th round is the next round.
Determining the ECN threshold adjustment factor of the egress queue to be controlled according to the process shown in fig. 3 may include the following steps:
s21, determining the delay error of the exit queue to be controlled according to the delay, the expected delay, the lowest forwarding delay of the exit queue to be controlled, the PFC threshold of each entry queue of the exit queue to be controlled, the ECN maximum marking probability of the exit queue to be controlled and the ECN threshold of the exit queue to be controlled.
In specific implementation, the congestion control device determines the delay error of the egress queue to be controlled according to the delay of the egress queue to be controlled in the current round, the expected delay, the lowest forwarding delay of the egress queue to be controlled, the PFC threshold of each ingress queue of the egress queue to be controlled, the ECN maximum marking probability of the egress queue to be controlled, and the ECN threshold of the egress queue to be controlled.
Specifically, the delay error of the egress queue to be controlled can be calculated by the following formula:
Figure BDA0002776510870000131
wherein h is 1 (timelog,timelog preset ) Representing the delay error of the egress queue to be controlled, the delay representing the delay of the egress queue to be controlled, the delay preset Represents an expected time delay; low represents the lower limit value of the ECN threshold adjustment error of the egress queue to be controlled, up represents the upper limit value of the ECN threshold adjustment error of the egress queue to be controlled,
Figure BDA0002776510870000141
K i indicating the ECN threshold of the egress queue to be controlled in the current round,
Figure BDA0002776510870000142
well showing the PFC threshold value of the jth ingress queue of the egress queue to be controlled, wherein j = 1-n, and n represents the number of the ingress queues of the egress queue to be controlled.
Specifically, in a many-to-one Incast scenario (i.e., the scenario shown in fig. 1), PFC triggering may cause data flow to be suspended, which may result in reduced queue throughput and increased delay, and should be avoided as much as possible, in order to not trigger PFC as much as possible, the ECN threshold is further limited by the size of the PFC threshold, and therefore, the ECN threshold of the egress queue to be controlled should be made to be controlled
Figure BDA0002776510870000143
The formula shows that ECN can not be triggered after entry queue PFC of an exit queue to be controlled is triggered completely, the upper threshold limit of ECN threshold is given, and the ECN threshold is larger than 0 after adjustment according to actual physical significance, so that K i+1 The iteration range of (c) is:
Figure BDA0002776510870000144
then it can be obtained from the formula (1)
Figure BDA0002776510870000145
The range of f is then found to be:
Figure BDA0002776510870000146
logically, when the ECN max marking probability of the egress queue to be controlled is high, the ECN threshold can be appropriately lowered, so the ECN threshold is also related to the ECN max marking probability.
f is an ECN threshold adjusting function of parameters of time delay, expected time delay, throughput of the to-be-controlled outlet queue, expected throughput, lowest forwarding time delay of the to-be-controlled outlet queue, PFC threshold values of all inlet queues of the to-be-controlled outlet queue, ECN maximum marking probability of the to-be-controlled outlet queue, ECN threshold values of the to-be-controlled outlet queue, PFC triggering times of the to-be-controlled outlet queue and expected PFC triggering times of the to-be-controlled outlet queue. Wherein the ECN maximum marking probability P of the egress queue to be controlled max This parameter may appear as a constant, since it is constant for each adjustment. Considering P max ∈(0,1]And the range of equation (3), designed as follows:
f=P max ·h (4)
wherein h represents the ECN threshold adjustment error of the egress queue to be controlled.
Substituting the above equation (4) into equation (3) can obtain the range of h as:
Figure BDA0002776510870000147
Figure BDA0002776510870000151
the lower limit value of the ECN threshold adjustment error h of the exit queue to be controlled is recorded as low, namely
Figure BDA0002776510870000152
Figure BDA0002776510870000153
Recording the upper limit value of the ECN threshold adjusting error h of the exit queue to be controlled as up,
Figure BDA0002776510870000154
the design logic for function h is as follows:
aiming at different flow conditions, the sensitivity of the network to time delay, throughput and PFC triggering times is different, so that h is set to be in a form of weighted summation of time delay errors, throughput errors and PFC triggering time errors, and the method specifically comprises the following steps: h = α · h 1 (timelog,timelog preset )+β·h 2 (throughtput,throughtput preset )+δ·h 3 (N PFC ,N PFCpreset ) (6)
Wherein h is 1 (timelog,timelog preset ) Representing the delay error of the egress queue to be controlled, alpha representing the weight of the delay error of the egress queue to be controlled, h 2 (throughtput,throughtput preset ) Representing the throughput error of the to-be-controlled outlet queue, wherein the throughput represents the throughput of the to-be-controlled outlet queue, and the throughput represents the throughput of the to-be-controlled outlet queue preset Represents the expected throughput, beta represents the weight of the throughput error of the egress queue to be controlled, h 3 (N PFC ,N PFCpreset ) Represents the error of PFC trigger times of the egress queue to be controlled, N PFC Represents the PFC trigger times, N, of the egress queue to be controlled PFCpreset The expected PFC triggering times are represented, δ represents the weight of the error of the PFC triggering times of the egress queue to be controlled, and α + β + δ =1, where values of α, β, and δ may be set according to the time delay, throughput, and the importance degree of the PFC triggering times in different services, which is not limited in the embodiment of the present invention.
Logically, h should decrease (i.e., monotonically decrease) with increasing delay, and when the delay is greater than the expected delay, the shadow response to h is positive for the following reasons: as can be seen from equations (4) and (5), K is the time delay greater than the expected time delay i+1 <K i If the physical expectation is met (i.e., the larger the ECN threshold, the larger the delay), then from equation (5) one can deduce:
Figure BDA0002776510870000155
when the delay equals the expected delay, h 1 =0, i.e. without adjustment, i.e.:
h 1 (timelog,timelog preset )=0 (7)
when the time delay tends to infinity, the ECN threshold is adjusted to 0, that is:
Figure BDA0002776510870000161
when the time delay is the lowest forwarding time delay t of the egress queue to be controlled 0 Then, the lowest forwarding delay of the egress queue to be controlled represents the shortest time required for forwarding the message of the egress queue to be controlled, and the ECN threshold is adjusted to be equal to the PFC, that is:
Figure BDA0002776510870000162
consider logically a timelog e [ t ∈ ] 0 Infinity), function h 1 (timelog,timelog preset ) Can be designed as an exponential function form with a natural constant as a base number:
Figure BDA0002776510870000163
combining equations (6) - (9) with the lowest forwarding delay t of the egress queue to be controlled 0 Substituting the above equation (10) yields:
Figure BDA0002776510870000164
s22, determining the throughput error of the to-be-controlled outlet queue according to the throughput, the expected throughput, the PFC threshold of each inlet queue of the to-be-controlled outlet queue, the ECN maximum marking probability of the to-be-controlled outlet queue and the ECN threshold of the to-be-controlled outlet queue.
In specific implementation, the congestion control device determines the throughput error of the to-be-controlled egress queue according to the throughput and the expected throughput of the to-be-controlled egress queue in the current round, the PFC threshold of each ingress queue of the to-be-controlled egress queue, the ECN maximum marking probability of the to-be-controlled egress queue, and the ECN threshold of the to-be-controlled egress queue.
Specifically, the throughput error of the egress queue to be controlled can be calculated by the following formula:
Figure BDA0002776510870000171
default to threaded put in general preset =1, therefore, the above formula is expressed as:
Figure BDA0002776510870000172
in specific implementation, the logic design function h of step S21 can be referred to 2 (throughtput,throughtput preset ) At this time, the function h 2 (throughtput,throughtput preset ) Can be designed as an exponential function with a natural constant as a base number:
h 2 =ae bx +c
(wherein let x = through-through preset ,throughtput preset = 1), which will not be described herein.
And S23, determining PFC triggering time errors of the egress queue to be controlled according to the PFC triggering times of the egress queue to be controlled, the expected PFC triggering times and the ECN maximum marking probability of the egress queue to be controlled.
In specific implementation, the congestion control device determines a PFC trigger time error of the egress queue to be controlled according to the PFC trigger time of the egress queue to be controlled, an expected PFC trigger time, and an ECN maximum flag probability of the egress queue to be controlled.
Specifically, the error of the number of PFC triggers of the egress queue to be controlled may be calculated by the following formula:
Figure BDA0002776510870000173
default N in general PFCpreset =0, so the above formula is expressed as:
Figure BDA0002776510870000174
in particular implementations, PFCs are not triggered as much as possible, and therefore, the number of triggers is expected to be set to 0 by default. Function h 3 (N PFC ,N PFCpreset ) Can refer to the logic of step S21, in this case, the function h 3 (N PFC ,N PFCpreset ) Can be designed as an exponential function form with a natural constant as a base number:
h 3 =ae bx +c
(wherein let x = N) PFCpreset -N PFC ,N PFCpreset = 0), which is not described herein.
It should be noted that, in the embodiment of the present invention, the function h is designed 1 、h 2 And h 3 In this case, the formula form may be changed according to actual conditions, and only the function form corresponding to the logic (such as formulas (7) to (9)) needs to be ensured, for example, formula (10) (i.e., function h) may be used 1 ) Set to logarithmic form: h is 1 = a · logbx + c, wherein, can let
Figure BDA0002776510870000181
The function h can be expressed 2 Set to logarithmic form: h is 2 = a · logbx + c, where x = throughput-throughput may be assumed preset
throughtput preset =1, the function h can be expressed as 3 The setting is in logarithmic form: h is a total of 3 = a · logbx + c, wherein x = N may be assumed PFCpreset -N PFC ,N PFCpreset =0, which is not limited in the embodiment of the present invention. Furthermore, the collected parameters can alsoAccording to the increase of the actual situation, the function and the weight corresponding to the corresponding parameters are only needed to be added after the formula (6).
In the embodiment of the present invention, the execution order of steps S21 to S23 is not limited, and steps S21 to S23 may be executed simultaneously.
And S24, determining an ECN threshold adjustment error of the to-be-controlled outlet queue according to the time delay error of the to-be-controlled outlet queue, the throughput error of the to-be-controlled outlet queue and the PFC triggering frequency error of the to-be-controlled outlet queue.
In specific implementation, the ECN threshold adjustment error of the egress queue to be controlled may be calculated by the following formula (i.e., formula (6)):
h=α·h 1 (timelog,timelog preset )+β·h 2 (throughtput,throughtput preset )+δ·h 3 (N PFC ,N PFCpreset )
and S25, determining an ECN threshold adjusting factor of the to-be-controlled exit queue according to the ECN maximum marking probability of the to-be-controlled exit queue and the ECN threshold adjusting error of the to-be-controlled exit queue.
In specific implementation, the ECN threshold adjustment factor of the egress queue to be controlled may be calculated by the following formula:
f=P max ·h
wherein f represents an ECN threshold adjustment factor of the egress queue to be controlled;
P max representing the ECN maximum marking probability of the egress queue to be controlled;
h represents the ECN threshold adjustment error of the egress queue to be controlled, and h = alpha.h 1 (timelog,timelog preset )+β·h 2 (throughtput,throughtput preset )+δ·h 3 (N PFC ,N PFCpreset ),h 1 (timelog,timelog preset ) Representing the time delay error of the outlet queue to be controlled, representing the time delay by the time delay preset Representing the expected time delay, alpha representing the weight of the time delay error of the to-be-controlled egress queue, h 2 (throughtput,throughtput preset ) Represents the aboveThe throughput error of the exit queue to be controlled, through put represents the throughput, through put preset Represents the expected throughput, beta represents the weight of the throughput error of the egress queue to be controlled, h 3 (N PFC ,N PFCpreset ) Represents the error of PFC trigger times of the egress queue to be controlled, N PFC Represents the number of PFC triggers of the egress queue to be controlled, N PFCpreset Represents the expected number of PFC triggers, δ represents a weight of a PFC trigger error of the egress queue to be controlled, α + β + δ =1, wherein:
Figure BDA0002776510870000191
Figure BDA0002776510870000192
Figure BDA0002776510870000193
low represents the lower limit value of the ECN threshold adjustment error of the exit queue to be controlled, up represents the upper limit value of the ECN threshold adjustment error of the exit queue to be controlled,
Figure BDA0002776510870000194
K i the ECN threshold of the egress queue to be controlled in the ith round (i.e. the current round) is represented,
Figure BDA0002776510870000195
a PFC threshold value representing the jth ingress queue of the egress queue to be controlled, n representing the number of ingress queues of the egress queue to be controlled, t 0 And representing the lowest forwarding time delay of the egress queue to be controlled.
And S13, determining the ECN threshold of the exit queue to be controlled in the next round according to the ECN threshold of the exit queue to be controlled in the current round included in the ECN threshold adjustment factor and the configuration information.
In specific implementation, the congestion control device determines the ECN threshold of the egress queue to be controlled in the next round according to the ECN threshold adjustment factor of the egress queue to be controlled and the ECN threshold of the egress queue to be controlled in the current round.
Specifically, the ECN threshold of the next round of the egress queue to be controlled may be calculated by the following formula:
K i+1 =(1-f)K i
wherein, K i Representing the ECN threshold of the exit queue to be controlled in the ith round;
K i+1 representing the ECN threshold of the exit queue to be controlled in the (i + 1) th round;
f represents the ECN threshold adjustment factor of the exit queue to be controlled;
wherein, the ith round is the current round, and the (i + 1) th round is the next round.
And S14, issuing the ECN threshold of the to-be-controlled exit queue in the next round to the current switch, so that the current switch performs congestion control on the to-be-controlled exit queue in the next round according to the ECN threshold of the to-be-controlled exit queue in the next round.
In specific implementation, the congestion control device issues the ECN threshold of the to-be-controlled egress queue in the next round to the current switch, and the current switch performs congestion control on the to-be-controlled egress queue in the next round according to the ECN threshold of the to-be-controlled egress queue in the next round.
The congestion control method provided by the embodiment of the invention is applied to congestion control equipment corresponding to at least one switch, each switch comprises at least one egress queue, each egress queue corresponds to at least two ingress queues, the congestion control equipment acquires configuration information and network state information of an egress queue to be controlled of the current switch in the current round, if the network state information is determined not to meet the preset condition, an ECN threshold adjustment factor of the egress queue to be controlled is determined according to the configuration information and the network state information of the egress queue to be controlled in the current round, an ECN threshold of the egress queue to be controlled in the next round is determined according to the ECN threshold of the egress queue to be controlled in the current round contained in the configuration information and the ECN threshold of the egress queue to be controlled in the current round, the ECN threshold of the egress queue to be controlled in the next round is issued to the current switch, the current switch performs congestion control on the egress queue to be controlled according to the received ECN threshold of the egress queue to be controlled in the next round, compared with the prior art, the congestion control method provided by the embodiment of the invention realizes that the congestion control of the egress queue to be controlled is dynamically configured according to the ECN threshold of the egress queue to be controlled according to the ECN threshold of the ECN of the received ECN queue to be controlled, and the egress queue to be controlled, and the ECN threshold of the egress queue to be controlled is determined according to the ECN threshold of the ECN threshold to be controlled, and the egress queue to be controlled is dynamically adjusted, when the egress queue to be controlled is dynamically adjusted, and the ECN of the egress queue to be controlled, and the egress queue to be controlled is determined, and the ECN of the egress queue to be controlled is dynamically adjusted in the egress queue to be controlled, the congestion control efficiency is improved, and the invention only needs to collect the relevant data of the exit queue to be controlled of the switch on a single switch, and is irrelevant to other devices, thereby reducing the data collection difficulty and leading the ECN threshold dynamic regulation method provided by the invention to have stronger adaptability and expansion capability.
Based on the same inventive concept, embodiments of the present invention further provide a congestion control device, and since the principle of solving the problem of the congestion control device is similar to that of the congestion control method, the implementation of the device may refer to the implementation of the method, and repeated parts are not described again.
As shown in fig. 4, which is a schematic structural diagram of a congestion control apparatus according to an embodiment of the present invention, where the congestion control apparatus is applied to a congestion control device corresponding to at least one switch, each switch includes at least one egress queue, and each egress queue corresponds to at least two ingress queues, and the apparatus may include:
the acquisition unit 31 is configured to acquire configuration information and network state information of an egress queue to be controlled of a current switch in a current round;
a first determining unit 32, configured to determine, according to the configuration information and the network status information, a congestion notification ECN threshold adjustment factor to be displayed for the to-be-controlled egress queue if it is determined that the network status information does not meet a preset condition;
a second determining unit 33, configured to determine, according to the ECN threshold adjustment factor and the ECN threshold of the to-be-controlled egress queue in the current round included in the configuration information, an ECN threshold of the to-be-controlled egress queue in a next round;
and the congestion control unit 34 is configured to issue the ECN threshold of the to-be-controlled egress queue in the next round to the current switch, so that the current switch performs congestion control on the to-be-controlled egress queue in the next round according to the ECN threshold of the to-be-controlled egress queue in the next round.
Preferably, if the network status information includes the number of triggering PFC, throughput and time delay for priority-based flow control of the egress queue to be controlled, where the throughput is an average rate of outputting packets of the egress queue to be controlled, and the time delay is an average forwarding time delay of the egress queue to be controlled, the preset condition is that an expected time delay is greater than or equal to the time delay, an expected throughput is less than or equal to the throughput, and an expected number of triggering PFC is greater than or equal to the number of triggering PFC of the egress queue to be controlled.
Preferably, if the network state information further includes the ECN triggering times of the egress queue to be controlled and the lowest forwarding delay of the egress queue to be controlled, and the configuration information includes a PFC threshold of the egress queue to be controlled, a PFC threshold of each ingress queue of the egress queue to be controlled, and the ECN maximum marking probability of the egress queue to be controlled, the first determining unit 32 is specifically configured to determine the delay error of the egress queue to be controlled according to the delay, the expected delay, the lowest forwarding delay of the egress queue to be controlled, the PFC threshold of each ingress queue of the egress queue to be controlled, the ECN maximum marking probability of the egress queue to be controlled, and the ECN threshold of the egress queue to be controlled; determining a throughput error of the to-be-controlled outlet queue according to the throughput, the expected throughput, the PFC threshold of each inlet queue of the to-be-controlled outlet queue, the ECN maximum marking probability of the to-be-controlled outlet queue and the ECN threshold of the to-be-controlled outlet queue; determining a PFC triggering time error of the egress queue to be controlled according to the PFC triggering time of the egress queue to be controlled, the expected PFC triggering time and the ECN maximum marking probability of the egress queue to be controlled; determining an ECN threshold adjustment error of the to-be-controlled outlet queue according to the delay error of the to-be-controlled outlet queue, the throughput error of the to-be-controlled outlet queue and the PFC triggering frequency error of the to-be-controlled outlet queue; and determining the ECN threshold adjusting factor of the to-be-controlled outlet queue according to the ECN maximum marking probability of the to-be-controlled outlet queue and the ECN threshold adjusting error of the to-be-controlled outlet queue.
Preferably, the second determining unit 33 is specifically configured to calculate the ECN threshold of the egress queue to be controlled in the next round according to the following formula:
K i+1 =(1-f)K i
wherein, K i Representing the ECN threshold of the exit queue to be controlled in the ith round;
K i+1 representing the ECN threshold of the exit queue to be controlled in the (i + 1) th round;
f represents the ECN threshold adjusting factor of the exit queue to be controlled.
Preferably, the first determining unit 32 is specifically configured to calculate an ECN threshold adjustment factor of the egress queue to be controlled according to the following formula:
f=P max ·h
wherein f represents an ECN threshold adjustment factor of the egress queue to be controlled;
P max representing the ECN maximum marking probability of the egress queue to be controlled;
h represents the ECN threshold adjustment error of the exit queue to be controlled, and h = alpha.h 1 (timelog,timelog preset )+β·h 2 (throughtput,throughtput preset )+δ·h 3 (N PFC ,N PFCpreset ),h 1 (timelog,timelog preset ) Representing the time delay error of the outlet queue to be controlled, representing the time delay by the time delay preset Representing the expected time delay, alpha representing the weight of the time delay error of the to-be-controlled egress queue, h 2 (throughtput,throughtput preset ) Representing the throughput error of the exit queue to be controlled, and the throughput represents the throughput preset Representing the expected throughput, beta representing a weight of the throughput error of the egress queue to be controlled, h 3 (N PFC ,N PFCpreset ) Represents the error of PFC trigger times of the egress queue to be controlled, N PFC Represents the PFC trigger times, N, of the egress queue to be controlled PFCpreset Represents the expected number of PFC triggers, δ represents a weight of a PFC trigger error of the egress queue to be controlled, α + β + δ =1, wherein:
Figure BDA0002776510870000231
Figure BDA0002776510870000232
Figure BDA0002776510870000233
low represents the lower limit value of the ECN threshold adjustment error of the to-be-controlled exit queue, up represents the upper limit value of the ECN threshold adjustment error of the to-be-controlled exit queue,
Figure BDA0002776510870000234
Figure BDA0002776510870000235
a PFC threshold value representing the jth ingress queue of the egress queue to be controlled, n representing the number of ingress queues of the egress queue to be controlled, t 0 And representing the lowest forwarding time delay of the egress queue to be controlled.
Based on the same technical concept, an embodiment of the present invention further provides an electronic device 400, and referring to fig. 5, the electronic device 400 is configured to implement the congestion control method described in the foregoing method embodiment, where the electronic device 400 of this embodiment may include: a memory 401, a processor 402 and a computer program, such as a congestion control program, stored in the memory and executable on the processor. The processor, when executing the computer program, implements the steps in the above described various congestion control method embodiments, such as step S11 shown in fig. 2. Alternatively, the processor, when executing the computer program, implements the functions of the modules/units in the above-described device embodiments, for example, 31.
The embodiment of the present invention does not limit the specific connection medium between the memory 401 and the processor 402. In the embodiment of the present application, the memory 401 and the processor 402 are connected by the bus 403 in fig. 5, the bus 403 is represented by a thick line in fig. 5, and the connection manner between other components is merely illustrative and is not limited thereto. The bus 403 may be divided into an address bus, a data bus, a control bus, etc. For ease of illustration, only one thick line is shown in FIG. 5, but this is not intended to represent only one bus or type of bus.
The memory 401 may be a volatile memory (RAM), such as a random-access memory (RAM); the memory 401 may also be a non-volatile memory (non-volatile memory) such as, but not limited to, a read-only memory (rom), a flash memory (flash memory), a hard disk (HDD) or a solid-state drive (SSD), or the memory 401 may be any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer. The memory 401 may be a combination of the above memories.
Processor 402 configured to implement a congestion control method as shown in fig. 2, comprising:
the processor 402 is configured to invoke the computer program stored in the memory 401 to execute step S11 shown in fig. 4, acquire configuration information and network state information of an egress queue to be controlled of a current switch in a current round, step S12, if it is determined that the network state information does not meet a preset condition, determine an ECN threshold adjustment factor of the egress queue to be controlled according to the configuration information and the network state information, step S13, determine an ECN threshold of the egress queue to be controlled in a next round according to the ECN threshold adjustment factor and the ECN threshold of the egress queue to be controlled in the current round included in the configuration information, and step S14, issue the ECN threshold of the egress queue to be controlled in the next round to the current switch, so that the current switch performs congestion control on the egress queue to be controlled in the next round according to the ECN threshold of the egress queue to be controlled in the next round.
The embodiment of the present application further provides a computer-readable storage medium, which stores computer-executable instructions required to be executed by the processor, and includes a program required to be executed by the processor.
In some possible embodiments, various aspects of the congestion control method provided by the present invention may also be implemented as a program product, where the program product includes program code, and when the program product runs on an electronic device, the program code is configured to enable the electronic device to execute the steps in the congestion control method according to various exemplary embodiments of the present invention described above in this specification, for example, the electronic device may execute step S11 shown in fig. 2, collect configuration information and network status information of an egress queue to be controlled in a current round of a current switch, step S12, if it is determined that the network status information does not meet a preset condition, determine an ECN threshold adjustment factor of the egress queue to be controlled according to the configuration information and the network status information, step S13, determine an ECN of the egress queue to be controlled in a next round of the current switch according to the ECN threshold adjustment factor and the ECN of the egress queue to be controlled in the next round of the current switch, and issue the egress queue to be controlled according to the current round of the current switch to control the ECN congestion of the egress queue to be controlled in the next round of the current switch.
As will be appreciated by one skilled in the art, embodiments of the present invention may be provided as a method, apparatus, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present invention is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (devices), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flowchart illustrations and/or block diagrams, and combinations of flows and/or blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
While preferred embodiments of the present invention have been described, additional variations and modifications in those embodiments may occur to those skilled in the art once they learn of the basic inventive concepts. Therefore, it is intended that the appended claims be interpreted as including preferred embodiments and all such alterations and modifications as fall within the scope of the invention.
It will be apparent to those skilled in the art that various changes and modifications may be made in the present invention without departing from the spirit and scope of the invention. Thus, if such modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalents, the present invention is also intended to include such modifications and variations.

Claims (8)

1. A congestion control method applied to a congestion control device corresponding to at least one switch, each switch comprising at least one egress queue, each egress queue corresponding to at least two ingress queues, the method comprising:
acquiring configuration information and network state information of an exit queue to be controlled of a current switch in a current turn;
if the network state information is determined not to meet the preset condition, determining a display congestion notification ECN threshold adjustment factor of the to-be-controlled exit queue according to the configuration information and the network state information;
determining the ECN threshold of the egress queue to be controlled in the next round according to the ECN threshold of the egress queue to be controlled in the current round included in the configuration information and the ECN threshold adjustment factor;
issuing the ECN threshold of the egress queue to be controlled in the next round to the current switch, so that the current switch performs congestion control on the egress queue to be controlled in the next round according to the ECN threshold of the egress queue to be controlled in the next round;
if the network state information includes the number of triggering PFC (power factor correction) times, throughput and time delay of the flow control based on priority of the to-be-controlled outlet queue, the throughput is the average message output rate of the to-be-controlled outlet queue, and the time delay is the average forwarding time delay of the to-be-controlled outlet queue, the preset conditions are that the expected time delay is greater than or equal to the time delay, the expected throughput is less than or equal to the throughput, and the expected PFC triggering times are greater than or equal to the PFC triggering times of the to-be-controlled outlet queue;
if the network state information further includes the ECN triggering times of the egress queue to be controlled and the lowest forwarding delay of the egress queue to be controlled, and the configuration information includes the PFC threshold of the egress queue to be controlled, the PFC thresholds of the ingress queues of the egress queue to be controlled, and the ECN maximum flag probability of the egress queue to be controlled, determining the ECN threshold adjustment factor of the egress queue to be controlled according to the configuration information and the network state information, which specifically includes:
determining a time delay error of the egress queue to be controlled according to the time delay, the expected time delay, the lowest forwarding time delay of the egress queue to be controlled, the PFC threshold of each ingress queue of the egress queue to be controlled, the ECN maximum marking probability of the egress queue to be controlled and the ECN threshold of the egress queue to be controlled;
determining a throughput error of the to-be-controlled outlet queue according to the throughput, the expected throughput, the PFC threshold of each inlet queue of the to-be-controlled outlet queue, the ECN maximum marking probability of the to-be-controlled outlet queue and the ECN threshold of the to-be-controlled outlet queue;
determining a PFC triggering time error of the egress queue to be controlled according to the PFC triggering time of the egress queue to be controlled, the expected PFC triggering time and the ECN maximum marking probability of the egress queue to be controlled;
determining an ECN threshold adjustment error of the to-be-controlled outlet queue according to the delay error of the to-be-controlled outlet queue, the throughput error of the to-be-controlled outlet queue and the PFC triggering frequency error of the to-be-controlled outlet queue;
and determining the ECN threshold adjusting factor of the to-be-controlled outlet queue according to the ECN maximum marking probability of the to-be-controlled outlet queue and the ECN threshold adjusting error of the to-be-controlled outlet queue.
2. The method as claimed in claim 1, wherein determining the ECN threshold of the egress queue to be controlled in the next round according to the ECN threshold of the egress queue to be controlled in the current round included in the configuration information and the ECN threshold of the egress queue to be controlled in the current round specifically includes:
calculating the ECN threshold of the egress queue to be controlled in the next round by the following formula:
K i+1 =(1-f)K i
wherein, K i Representing the ECN threshold of the exit queue to be controlled in the ith round;
K i+1 representing the ECN threshold of the exit queue to be controlled in the (i + 1) th round;
f represents the ECN threshold adjustment factor of the egress queue to be controlled.
3. The method of claim 2, wherein the ECN threshold adjustment factor for the egress queue to be controlled is calculated by the following equation:
f=P max ·h
wherein f represents an ECN threshold adjustment factor of the egress queue to be controlled;
P max representing the ECN maximum marking probability of the egress queue to be controlled;
h represents the ECN threshold adjustment error of the exit queue to be controlled, and h = alpha.h 1 (timelog,timelog preset )+β·h 2 (throughtput,throughtput preset )+δ·h 3 (N PFC ,N PFCpreset ),h 1 (timelog,timelog preset ) Representing the time delay error of the outlet queue to be controlled, representing the time delay by the time delay preset Representing the expected time delay, alpha representing the weight of the time delay error of the to-be-controlled egress queue, h 2 (throughtput,throughtput preset ) Representing the egress team to be controlledThroughput error of the column, throughput representing the throughput, throughput preset Representing the expected throughput, beta representing a weight of the throughput error of the egress queue to be controlled, h 3 (N PFC ,N PFCpreset ) Represents the error of PFC trigger times of the egress queue to be controlled, N PFC Represents the PFC trigger times, N, of the egress queue to be controlled PFCpreset Represents the expected number of PFC triggers, δ represents a weight of a PFC trigger error of the egress queue to be controlled, α + β + δ =1, wherein:
Figure FDA0003783870530000031
Figure FDA0003783870530000032
Figure FDA0003783870530000033
low represents the lower limit value of the ECN threshold adjustment error of the exit queue to be controlled, up represents the upper limit value of the ECN threshold adjustment error of the exit queue to be controlled,
Figure FDA0003783870530000034
Figure FDA0003783870530000035
a PFC threshold value representing the jth ingress queue of the egress queue to be controlled, n representing the number of ingress queues of the egress queue to be controlled, t 0 And representing the lowest forwarding time delay of the egress queue to be controlled.
4. A congestion control apparatus, for use in a congestion control device corresponding to at least one switch, each switch including at least one egress queue, each egress queue corresponding to at least two ingress queues, the apparatus comprising:
the acquisition unit is used for acquiring the configuration information and the network state information of the exit queue to be controlled of the current switch in the current turn;
a first determining unit, configured to determine, according to the configuration information and the network state information, a congestion notification display ECN threshold adjustment factor of the to-be-controlled egress queue if it is determined that the network state information does not satisfy a preset condition;
a second determining unit, configured to determine, according to the ECN threshold adjustment factor and the ECN threshold of the to-be-controlled egress queue in the current round included in the configuration information, an ECN threshold of the to-be-controlled egress queue in a next round;
the congestion control unit is used for sending the ECN threshold of the to-be-controlled outlet queue in the next round to the current switch so that the current switch can carry out congestion control on the to-be-controlled outlet queue in the next round according to the ECN threshold of the to-be-controlled outlet queue in the next round;
if the network state information includes the number of triggering times, throughput and time delay of flow control PFC based on priority of the to-be-controlled egress queue, the throughput is the average message output rate of the to-be-controlled egress queue, and the time delay is the average forwarding time delay of the to-be-controlled egress queue, the preset condition is that the expected time delay is greater than or equal to the time delay, the expected throughput is less than or equal to the throughput, and the expected number of triggering times of PFC is greater than or equal to the number of triggering times of PFC of the to-be-controlled egress queue;
if the network state information further includes the ECN triggering times of the to-be-controlled egress queue and the lowest forwarding delay of the to-be-controlled egress queue, and the configuration information includes the PFC threshold of the to-be-controlled egress queue, the PFC thresholds of the ingress queues of the to-be-controlled egress queue, and the ECN maximum flag probability of the to-be-controlled egress queue, the first determining unit is specifically configured to determine the delay error of the to-be-controlled egress queue according to the delay, the expected delay, the lowest forwarding delay of the to-be-controlled egress queue, the PFC thresholds of the ingress queues of the to-be-controlled egress queue, the ECN maximum flag probability of the to-be-controlled egress queue, and the ECN threshold of the to-be-controlled egress queue; determining a throughput error of the to-be-controlled outlet queue according to the throughput, the expected throughput, the PFC threshold of each inlet queue of the to-be-controlled outlet queue, the ECN maximum marking probability of the to-be-controlled outlet queue and the ECN threshold of the to-be-controlled outlet queue; determining a PFC triggering time error of the egress queue to be controlled according to the PFC triggering time of the egress queue to be controlled, the expected PFC triggering time and the ECN maximum marking probability of the egress queue to be controlled; determining an ECN threshold adjustment error of the to-be-controlled outlet queue according to the delay error of the to-be-controlled outlet queue, the throughput error of the to-be-controlled outlet queue and the PFC triggering frequency error of the to-be-controlled outlet queue; and determining the ECN threshold adjusting factor of the to-be-controlled outlet queue according to the ECN maximum marking probability of the to-be-controlled outlet queue and the ECN threshold adjusting error of the to-be-controlled outlet queue.
5. The apparatus of claim 4,
the second determining unit is specifically configured to calculate an ECN threshold of the egress queue to be controlled in the next round according to the following formula:
K i+1 =(1-f)K i
wherein, K i Representing the ECN threshold of the exit queue to be controlled in the ith round;
K i+1 representing the ECN threshold of the exit queue to be controlled in the (i + 1) th round;
f represents the ECN threshold adjusting factor of the exit queue to be controlled.
6. The apparatus of claim 5,
the first determining unit is specifically configured to calculate an ECN threshold adjustment factor of the egress queue to be controlled according to the following formula:
f=P max ·h
wherein f represents an ECN threshold adjustment factor of the egress queue to be controlled;
P max representing the ECN maximum marking probability of the egress queue to be controlled;
h represents the ECN threshold adjustment error of the egress queue to be controlled, and h = alpha.h 1 (timelog,timelog preset )+β·h 2 (throughtput,throughtput preset )+δ·h 3 (N PFC ,N PFCpreset ),h 1 (timelog,timelog preset ) Representing the delay error of the egress queue to be controlled, and representing the delay by a timelog preset Representing the expected time delay, alpha representing the weight of the time delay error of the to-be-controlled egress queue, h 2 (throughtput,throughtput preset ) Representing the throughput error of the exit queue to be controlled, and the throughput represents the throughput preset Representing the expected throughput, beta representing a weight of the throughput error of the egress queue to be controlled, h 3 (N PFC ,N PFCpreset ) Represents the error of PFC trigger times of the egress queue to be controlled, N PFC Represents the number of PFC triggers of the egress queue to be controlled, N PFCpreset Represents the expected number of PFC triggers, δ represents a weight of a PFC trigger number error of the egress queue to be controlled, α + β + δ =1, wherein:
Figure FDA0003783870530000061
Figure FDA0003783870530000062
Figure FDA0003783870530000063
low represents the lower limit value of the ECN threshold adjustment error of the exit queue to be controlled, up represents the upper limit value of the ECN threshold adjustment error of the exit queue to be controlled,
Figure FDA0003783870530000064
Figure FDA0003783870530000065
a PFC threshold value representing the jth ingress queue of the egress queue to be controlled, n representing the number of ingress queues of the egress queue to be controlled, t 0 And representing the lowest forwarding time delay of the egress queue to be controlled.
7. An electronic device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, wherein the processor implements the congestion control method according to any one of claims 1 to 3 when executing the program.
8. A computer-readable storage medium, on which a computer program is stored, which program, when being executed by a processor, carries out the steps in the congestion control method according to any one of claims 1 to 3.
CN202011267449.6A 2020-11-13 2020-11-13 Congestion control method and device, electronic equipment and storage medium Active CN112491736B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011267449.6A CN112491736B (en) 2020-11-13 2020-11-13 Congestion control method and device, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011267449.6A CN112491736B (en) 2020-11-13 2020-11-13 Congestion control method and device, electronic equipment and storage medium

Publications (2)

Publication Number Publication Date
CN112491736A CN112491736A (en) 2021-03-12
CN112491736B true CN112491736B (en) 2022-11-11

Family

ID=74930127

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011267449.6A Active CN112491736B (en) 2020-11-13 2020-11-13 Congestion control method and device, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN112491736B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113872885B (en) * 2021-09-30 2024-02-09 新华三信息安全技术有限公司 Method and equipment for controlling message forwarding
CN114844837B (en) * 2022-04-25 2023-09-26 西安交通大学 Congestion control method and device based on time delay in multi-service queue environment

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105024946A (en) * 2015-06-16 2015-11-04 清华大学 Bandwidth allocation method based on sliding window, device and system
CN106789701A (en) * 2016-12-30 2017-05-31 北京邮电大学 Self adaptation ECN labeling methods and device in a kind of data center

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9356868B2 (en) * 2013-08-23 2016-05-31 Broadcom Corporation Congestion detection and management at congestion-tree roots
US10516620B2 (en) * 2016-05-18 2019-12-24 Marvell Israel (M.I.S.L) Ltd. Congestion avoidance in a network device
CN108965151B (en) * 2018-08-27 2020-08-28 华中科技大学 Explicit congestion control method based on queuing time delay
CN108989235B (en) * 2018-08-28 2022-11-01 新华三技术有限公司 Message forwarding control method and device
US20200280518A1 (en) * 2020-01-28 2020-09-03 Intel Corporation Congestion management techniques
CN111464452B (en) * 2020-03-30 2022-10-14 南京理工大学 Fast congestion feedback method based on DCTCP

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105024946A (en) * 2015-06-16 2015-11-04 清华大学 Bandwidth allocation method based on sliding window, device and system
CN106789701A (en) * 2016-12-30 2017-05-31 北京邮电大学 Self adaptation ECN labeling methods and device in a kind of data center

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
An Experimental Study of the Efficiency of Explicit Congestion Notification;S. Harhalakis 等;《2011 15th Panhellenic Conference on Informatics》;20110930;第 122-126 页 *

Also Published As

Publication number Publication date
CN112491736A (en) 2021-03-12

Similar Documents

Publication Publication Date Title
US6988156B2 (en) System and method for dynamically tuning interrupt coalescing parameters
US8761012B2 (en) Packet relay apparatus and method of relaying packet
CN112491736B (en) Congestion control method and device, electronic equipment and storage medium
EP2786544B1 (en) Flow-based compression management
US6889277B2 (en) System and method for dynamically tuning interrupt coalescing parameters
US20150281100A1 (en) Apparatus and method for selecting a flow to be changed upon congestion occurrence
CN104734985A (en) Data receiving flow control method and system
CN108768781B (en) Loss-free flow control method and device for avoiding deadlock
US20220377016A1 (en) Service Level Adjustment Method and Apparatus, Device, and Storage Medium
US11695629B2 (en) Method and apparatus for configuring a network parameter
US10467161B2 (en) Dynamically-tuned interrupt moderation
US20220248259A1 (en) Data processing method and apparatus
CN113746763B (en) Data processing method, device and equipment
JP7127743B2 (en) Communication device, communication method and program
CN117014379A (en) Code rate control method, device, electronic equipment and storage medium
CN109981487B (en) Data scheduling method and device, electronic equipment and readable storage medium
CN115514709B (en) Congestion control event queue scheduling method, device, equipment and storage medium
CN116170375A (en) Parameter adjustment method and device
JP5492052B2 (en) Dynamic storm control setting method by LAN switch
KR20220009064A (en) Method of controlling traffic in ethernet-based network
US20040228280A1 (en) Dynamic blocking in a shared host-network interface
Abdel-jaber et al. Modelling BLUE Active Queue Management using Discrete-time Queue.
US11349770B2 (en) Communication control apparatus, and communication control method
CN111030842A (en) Method, system, device and storage medium for adjusting acceleration strategy
CN115022227B (en) Data transmission method and system based on circulation or rerouting in data center network

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