CN115514708A - Congestion control method and device - Google Patents

Congestion control method and device Download PDF

Info

Publication number
CN115514708A
CN115514708A CN202211469745.3A CN202211469745A CN115514708A CN 115514708 A CN115514708 A CN 115514708A CN 202211469745 A CN202211469745 A CN 202211469745A CN 115514708 A CN115514708 A CN 115514708A
Authority
CN
China
Prior art keywords
bandwidth
network card
quota
active
sending
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202211469745.3A
Other languages
Chinese (zh)
Other versions
CN115514708B (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.)
Jiangsu Weishi Technology Co ltd
Original Assignee
Jiangsu Weishi Technology 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 Jiangsu Weishi Technology Co ltd filed Critical Jiangsu Weishi Technology Co ltd
Priority to CN202211469745.3A priority Critical patent/CN115514708B/en
Publication of CN115514708A publication Critical patent/CN115514708A/en
Application granted granted Critical
Publication of CN115514708B publication Critical patent/CN115514708B/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
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/76Admission control; Resource allocation using dynamic resource allocation, e.g. in-call renegotiation requested by the user or requested by the network in response to changing network conditions

Landscapes

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

Abstract

A congestion control method and device, when a receiving end network card monitors that the number of active QPs connected with the receiving end network card changes, the receiving end network card reallocates bandwidth quota for all the active QPs connected with the receiving end network card; and the network card at the receiving end sends the bandwidth quota allocated by each active QP to the network card at the sending end connected with the active QP. The embodiment of the invention can realize reasonable use of the bandwidth, and greatly reduces the occurrence of RDMA communication network congestion.

Description

Congestion control method and device
Technical Field
The disclosed embodiments relate to the field of network control, and in particular, to a congestion control method and apparatus.
Background
The network scale based on Remote Direct data Access (RDMA) is getting larger and larger, the RDMA communication network is getting more and more complex, and the network congestion problem becomes one of the most difficult problems in the RDMA network. Network congestion causes problems of reduced transmission throughput, increased transmission delay, serious network jitter and the like of the whole network, and the data transmission efficiency and the user experience are seriously influenced.
At present, through RDMA Congestion Control methods such as MEasurement Delay Timely transmission (Transport information by means of MEasurement of LatencY, time), low Delay Control Protocol (LDCP), high Precision Congestion Control (HPCC), and the like, existing Data Center Quantized Congestion Notification (Data Center Quantized Congestion Notification) can only be applied to small-scale networking scenes, and cannot effectively work in large-scale networking, large-scale (QP) connection and even long-distance transmission scenes, and performance sharply decreases along with the increase of networking scale, queue Pair connection number and transmission distance.
Disclosure of Invention
The embodiment of the disclosure provides a congestion control method and a congestion control device, which can greatly reduce RDMA communication network congestion.
In one aspect, an embodiment of the present disclosure provides a congestion control method, including:
when a receiving-end network card monitors that the number of active QPs connected with the receiving-end network card changes, the receiving-end network card reallocates bandwidth quota for all the active QPs connected with the receiving-end network card;
and the network card at the receiving end sends the bandwidth quota allocated by each active QP to the network card at the sending end connected with the active QP.
On the other hand, an embodiment of the present disclosure further provides a congestion control method, including:
a network card of a sending end receives bandwidth quota information from at least one network card of a receiving end; the bandwidth quota information comprises at least one piece of bandwidth quota information corresponding to an active QP connected with the network card of the sending end;
and the network card of the sending end configures the bandwidth of the corresponding active QP according to the obtained bandwidth quota information.
On the other hand, the embodiment of the present disclosure further provides a receiving-end network card, which includes a memory and a processor, where the memory is used to store an executable program;
the processor is used for reading and executing the executable program so as to realize the congestion control method taking the network card at the receiving end as an execution main body.
On the other hand, the embodiment of the disclosure further provides a sending-end network card, which includes a memory and a processor, where the memory is used for storing an executable program;
the processor is configured to read and execute the executable program to implement the congestion control method using the sending-end network card as an execution main body.
Compared with the prior art, according to the congestion control method provided by the embodiment of the disclosure, when the receiving-end network card monitors that the number of the active QPs connected to the receiving-end network card changes, the bandwidth quota is reallocated to all the active QPs connected to the receiving-end network card and the allocated bandwidth quota information is sent to the corresponding sending-end network card, so that the sending-end network card can configure the bandwidth of the corresponding QP according to the allocated bandwidth quota information, thereby realizing reasonable use of the bandwidth and greatly reducing occurrence of RDMA communication network congestion.
Additional features and advantages of the disclosure will be set forth in the description which follows, and in part will be obvious from the description, or may be learned by the practice of the disclosure. Other advantages of the disclosure may be realized and attained by the instrumentalities and combinations particularly pointed out in the specification and the drawings.
Drawings
The accompanying drawings are included to provide an understanding of the disclosed embodiments and are incorporated in and constitute a part of this specification, illustrate embodiments of the disclosure and together with the examples serve to explain the principles of the disclosure and not to limit the disclosure.
Fig. 1 is a schematic flow chart of a congestion control method according to an embodiment of the present disclosure;
fig. 2 is a schematic flow chart of another congestion control method according to an embodiment of the present disclosure;
fig. 3 is a flowchart illustrating another congestion control method according to an embodiment of the disclosure.
Detailed Description
The present disclosure describes embodiments, but the description is illustrative rather than limiting and it will be apparent to those of ordinary skill in the art that many more embodiments and implementations are possible within the scope of the embodiments described in the present disclosure. Although many possible combinations of features are shown in the drawings and discussed in the detailed description, many other combinations of the disclosed features are possible. Any feature or element of any embodiment may be used in combination with, or instead of, any other feature or element in any other embodiment, unless expressly limited otherwise.
The present disclosure includes and contemplates combinations of features and elements known to those of ordinary skill in the art. The embodiments, features and elements of the present disclosure that have been disclosed may also be combined with any conventional features or elements to form unique aspects as defined by the claims. Any feature or element of any embodiment may also be combined with features or elements from other aspects to form yet another unique aspect, as defined by the claims. Thus, it should be understood that any features shown and/or discussed in this disclosure may be implemented individually or in any suitable combination. Accordingly, the embodiments are not to be restricted except in light of the attached claims and their equivalents. Further, various modifications and changes may be made within the scope of the appended claims.
Further, in describing representative embodiments, the specification may have presented the method and/or process as a particular sequence of steps. However, to the extent that the method or process does not rely on the particular order of steps set forth herein, the method or process should not be limited to the particular sequence of steps described. Other sequences of steps are possible as will be appreciated by those of ordinary skill in the art. Therefore, the particular order of the steps set forth in the specification should not be construed as limitations on the claims. Further, the claims directed to the method and/or process should not be limited to the performance of their steps in the order written, and one skilled in the art can readily appreciate that the sequences may be varied and still remain within the spirit and scope of the embodiments of the present disclosure.
An embodiment of the present disclosure provides a congestion control method, as shown in fig. 1, the method includes:
step 101, when the receiving-end network card monitors that the number of the active QPs connected to the receiving-end network card changes, the receiving-end network card reallocates the bandwidth quota for all the active QPs connected to the receiving-end network card.
And 102, the receiving end network card sends the bandwidth quota distributed by each active QP to the sending end network card connected with the active QP.
Wherein the change of the active QP number comprises: the active QP number increases and the active QP number decreases, where the active QP number increases when other QPs are activated.
Specifically, QPs connected to the receiving-end network card may correspond to one or more sending-end network cards, it is assumed that QPs connected to the receiving-end network card 1 correspond to multiple sending-end network cards, the QP corresponds to a sending-end network card 1, a sending-end network card 2, and a sending-end network card 3, two QPs are established between the sending-end network card 1 and the receiving-end network card 1, the QP1 and the QP2 respectively, three QPs are established between the sending-end network card 2 and the receiving-end network card 1, the QP3, the QP4, and the QP5 are established between the sending-end network card 3 and the receiving-end network card 1, respectively, QP6 and QP7 are assumed to be active at the beginning, then when the receiving-end network card monitors that the active queue connected to itself changes the QP number (it is assumed that the QP4 is inactive), the receiving-end network card reallocates bandwidths for all active QPs connected to the sending-end network cards (that is QP1, QP2, quota 3, QP5, QP6, and QP7 are allocated to the network card, and the quota 3 is allocated to the sending the network card to the network card.
In the prior art, the network card at the receiving end cannot allocate bandwidth quota for the QP connected with the network card, once the new QP is activated, the new QP will compete for bandwidth with the existing QP, so that the flow imbalance of different QPs can be caused, and network congestion is caused; the embodiment of the disclosure provides that the network card at the receiving end allocates bandwidth quota for each active QP connected to the network card, so that each QP can reasonably use the bandwidth, and the occurrence of congestion is greatly reduced.
According to the congestion control method provided by the embodiment of the disclosure, when the network card at the receiving end monitors that the number of the active QPs connected to the network card per se changes, the network card at the sending end reallocates the bandwidth quota for all the active QPs connected to the network card per se, so that the network card at the sending end can configure the corresponding bandwidth according to the allocated bandwidth quota information, the bandwidth is reasonably used, and the occurrence of RDMA communication network congestion is greatly reduced.
The congestion control method provided by the embodiment of the disclosure supports RDMA out-of-order receiving, selective retransmission and erasure code mechanisms. Four load balancing strategies are supported for network configuration: load balancing based on packet granularity, multiple packet Flowlet granularity, work Queue Entry (WQE) granularity, and flow granularity
In an exemplary embodiment, the reallocating the bandwidth quota for all active QPs connected to the network card at the receiving end includes:
the network card of the receiving end reallocates the bandwidth quota for all the active QPs according to the allocable bandwidth quota and the active QP number;
alternatively, the first and second electrodes may be,
and the network card at the receiving end reallocates the bandwidth quota for all active QPs according to the allocable bandwidth quota and the preset bandwidth quota weight of each QP.
For example, the reallocation of the bandwidth quota for all active QPs according to the allocable bandwidth quota and the number of active QPs may be specifically calculated by the following calculation method: allocable bandwidth quota/active QP number in such a way that the bandwidth quota allocated for the active QP is the same.
For example, it is assumed that the allocable bandwidth quota is 50M, and it is assumed that the QP connected to the network card at the receiving end itself includes: QP 1 、QP 2 、QP 3 、QP 4 、QP 5 、QP 6 The bandwidth quota weights for these QPs are: 3. 2, 1, 4, 2, 1, active QP is QP 1 、QP 2 、QP 4 、QP 6 Then, according to the allocable bandwidth quota, the preset band of each QPThe bandwidth quota weight and the identification of the active QP can be calculated by the following calculation method for reallocating the bandwidth quota for all the active QPs: is QP 1 Reallocated bandwidth quota = 50M/(3 +2+4+ 1) × 3, i.e. 15M, as QP 2 Reallocated bandwidth quota = 50M/(3 +2+4+ 1) × 2, i.e. 10M, as QP 4 Reallocated bandwidth quota = 50M/(3 +2+4+ 1) × 4, i.e. 20M, being QP 6 Reallocated bandwidth quota = 50M/(3 +2+4+ 1) × 1, i.e. 5M.
In an exemplary embodiment, the network card at the receiving end manages all QPs connected to the network card by using a cache mechanism.
The cache mechanism is applied to the QP connected with the network card of the management receiving end, so that the inactive QP can be continuously eliminated.
Specifically, the method can be realized in the following specific modes: and adding a mark bit to each QP to mark whether the QP is active or not, and finding the mark bit of each QP according to the QPN.
In the prior art, the previously activated QPs still may occupy bandwidth resources under the condition that data transmission is no longer performed, so that the bandwidth resources cannot be reasonably utilized, but in the embodiment of the present disclosure, the network card at the receiving end manages all the QPs connected to the network card, and once the number of active QPs is reduced, a bandwidth quota is allocated to the active QPs again, which is equivalent to reclaiming the bandwidth resources originally occupied by the inactive QPs, so that the utilization rate of the bandwidth resources is improved.
In an exemplary embodiment, the allocatable quota of bandwidth is obtained from a total quota of bandwidth on the network and a proportion of reserved bandwidth.
A certain reserved bandwidth proportion is reserved in the network total bandwidth quota in advance for messages such as semaphores, remote Procedure Call (RPC) communication data, short messages and retransmission, and congestion control is only performed on long messages, so that a good congestion control effect is achieved.
The network has a plurality of receiving end network cards and sending end network cards, each receiving end network card monitors whether the number of the active QPs connected with the receiving end network card changes in real time, if so, the congestion control method provided by the embodiment of the disclosure allocates the active QPs connected with the receiving end network card to the receiving end network card, thereby realizing the reasonable utilization of the whole network bandwidth, and greatly reducing the occurrence of the RDMA communication network congestion
An embodiment of the present disclosure further provides a congestion control method, as shown in fig. 2, where the method includes:
step 201, a sending end network card receives bandwidth quota information from at least one receiving end network card; the bandwidth quota information comprises at least one piece of bandwidth quota information corresponding to an active QP connected with the network card of the sending end;
and 202, configuring the bandwidth of the corresponding active QP by the network card of the sending end according to the obtained bandwidth quota information.
According to the congestion control method provided by the embodiment of the disclosure, the network card at the sending end receives bandwidth quota information distributed by the network card at the receiving end for the active QP, and configures the bandwidth of the corresponding QP according to the bandwidth quota information, so that the reasonable use of the bandwidth is realized, and the occurrence of RDMA communication network congestion is greatly reduced.
In an exemplary embodiment, the configuring, by the network card at the sending end, the bandwidth of the corresponding active QP according to the obtained bandwidth quota information includes:
and configuring an active QP corresponding to each piece of the obtained bandwidth quota information, and if the current bandwidth is 0, the network card at the sending end accelerates the current bandwidth to a first preset proportion of the obtained bandwidth quota multiplicatively and accelerates the current bandwidth to the obtained bandwidth quota additively.
In the prior art, as a concept of bandwidth quota is not provided, the bandwidth is acquired by adopting a competition mode among QPs on different network cards, once available bandwidth is found, multiplicative acceleration in a preset time is adopted during acceleration and additive acceleration is adopted after the preset time is exceeded, but the concept of bandwidth quota is provided in the application, so that a network card at a sending end can be accelerated to a first preset proportion of the acquired bandwidth quota in a multiplicative way and then accelerated to the acquired bandwidth quota, and the acquired bandwidth quota is configured more quickly (because the starting bandwidth is 0, a large acceleration margin is provided, the multiplicative acceleration is adopted, and when the bandwidth is accelerated to a certain stage, namely the first preset proportion of the acquired bandwidth quota is reduced, and then the additive acceleration is adopted).
In an exemplary embodiment, the configuring, by the network card at the sending end, the bandwidth of the corresponding active QP according to the obtained bandwidth quota information further includes:
and configuring an active QP corresponding to each piece of the obtained bandwidth quota information, and if the obtained bandwidth quota is less than the current bandwidth, adjusting the current bandwidth to the obtained bandwidth quota by the network card of the sending end.
The sending end network card configures the bandwidth of the corresponding active QP according to the obtained bandwidth quota information, and the method further comprises the following steps:
configuring a corresponding active QP for each piece of the obtained bandwidth quota information, and if the current bandwidth is not 0 and is less than the obtained bandwidth quota, acquiring a multiplicative acceleration bandwidth threshold value by the sending-end network card according to the obtained bandwidth quota and a second preset proportion;
if the multiplicative acceleration bandwidth threshold is larger than the current bandwidth, the network card of the sending end multiplicatively accelerates the current bandwidth to the multiplicative acceleration bandwidth threshold, and then the multiplicative acceleration is performed to the obtained bandwidth quota;
and if the multiplicative acceleration bandwidth threshold is smaller than the current bandwidth, the network card of the sending end accelerates the current bandwidth to the acquired bandwidth quota in an additive manner.
For example, the multiplicative acceleration bandwidth threshold obtained according to the obtained bandwidth quota and the second preset ratio may be specifically calculated in the following manner: the obtained bandwidth quota by a second preset proportion.
Assuming that the obtained bandwidth quota is 50M, the current bandwidth is 20M, and the second preset proportion is 80%, then the multiplicative acceleration bandwidth threshold is 40M, and since the multiplicative acceleration bandwidth threshold is greater than the current bandwidth, the current bandwidth is multiplicatively accelerated from 20M to 40M, and multiplicatively accelerated to 50M.
Assuming that the obtained bandwidth quota is 50M, the current bandwidth is 45M, and the second preset proportion is 80%, the multiplicative acceleration bandwidth threshold is 40M, and since the multiplicative acceleration bandwidth threshold is smaller than the current bandwidth, multiplicative acceleration is not performed, and the multiplicative acceleration is performed directly to 50M.
In one illustrative example, the method further comprises:
and when the network card at the sending end receives the congestion signal, the network card at the sending end multiplicatively decelerates the current bandwidth.
If congestion signals do not represent that packet loss occurs, namely congestion occurs, measures can be taken to greatly avoid the congestion, so that the embodiment of the disclosure adopts multiplicative acceleration to realize rapid deceleration, continuously reduces the sending speed, and gradually moves bottleneck points in the network to the network card of the receiving end.
Specifically, the congestion control algorithm provided by the embodiment of the present disclosure supports a user to configure the total bandwidth of the receiving end, and the bottleneck point is moved to the receiving end by adjusting the total bandwidth of the receiving end, which has two implementation manners: one is configured by a Network administrator according to Network topology information, and the other is configured into a Network card after dynamically detecting the Network topology through SDN (Software-Defined Network) Software. After the total bandwidth value which can be distributed by the network card at the receiving end is adjusted, the congestion control effect can be further improved, and the fast convergence of a congestion control algorithm is facilitated.
An embodiment of the present disclosure further provides a congestion control method, as shown in fig. 3, where the method includes:
step 301, the sending end network card sends N messages to the receiving end network card to activate the receiving end QP of the newly added QP;
wherein, the new QP is established between the network card of the sending end and the network card of the receiving end.
Step 302, after the receiving end network card receives the message, activating the receiving end QP of the newly added QP, allocating bandwidth quota for the newly added QP, and then returning the allocated bandwidth quota information to the sending end network card;
step 303, the sending end network card starts to accelerate the newly added QP according to the bandwidth quota, the acceleration process is processed according to two stages of acceleration, the multiplicative acceleration is carried out to reach a first preset proportion of the bandwidth quota, and the rest additive acceleration is carried out;
step 304, when the network is congested, the network card of the sending end can receive the congestion signal, multiplicatively decelerate the current bandwidth;
four types of congestion signals are currently supported: packet loss detection, echo Explicit Congestion Notification (Echo Explicit Congestion Notification) Echo-ECN of the response protocol, explicit Congestion Notification Packet (CNP), and Round-Trip Time (RTT).
Step 305, the receiving-end network card manages all the QPs connected with the receiving-end network card by adopting a cache mechanism, and when the change of the number of the active QPs is monitored, the receiving-end network card recalculates the bandwidth quota of each QP and sends the updated bandwidth quota information to the sending-end network card;
step 306, the sending-end network card receives the updated bandwidth quota information.
307, if the current bandwidth is smaller than the updated bandwidth quota and the product of the updated bandwidth quota and the second preset proportion is larger than the current bandwidth, the network card at the sending end performs multiplicative acceleration to the second preset proportion of the updated bandwidth quota according to two-stage acceleration processing, and performs additive acceleration to the updated bandwidth quota;
step 308, if the current bandwidth is smaller than the updated bandwidth quota and the product of the updated bandwidth quota and the second preset proportion is larger than the current bandwidth, the network card of the sending end is accelerated additively to the updated bandwidth quota;
step 309, if the current bandwidth is not less than the updated bandwidth quota, the sending-end network card directly adjusts the current speed to the updated bandwidth quota.
Wherein steps 307, 308, 309 belong to selecting an execution relationship.
The embodiment of the disclosure also provides a receiving end network card, which comprises a memory and a processor, wherein the memory is used for storing executable programs;
the processor is configured to read and execute the executable program to implement the congestion control method using the network card at the receiving end as an execution main body according to any of the embodiments.
The embodiment of the disclosure also provides a sending end network card, which comprises a memory and a processor, wherein the memory is used for storing executable programs;
the processor is configured to read and execute the executable program to implement the congestion control method using the network card of the sending end as an execution main body in any of the embodiments.
It should be understood that the processor may be a Central Processing Unit (CPU), other general purpose processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), an off-the-shelf programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, etc. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
The memory may include both read-only memory and random access memory and provides instructions and data to the processor. The portion of memory may also include non-volatile random access memory. For example, the memory may also store device type information.
In implementation, the processing performed by the terminal device may be performed by instructions in the form of hardware integrated logic circuits or software in the processor. That is, the steps of the method disclosed in the embodiments of the present disclosure may be implemented by a hardware processor, or implemented by a combination of hardware and software modules in a processor. The software module may be located in a storage medium such as a random access memory, a flash memory, a read only memory, a programmable read only memory or an electrically erasable programmable memory, a register, etc. The storage medium is located in a memory, and a processor reads information in the memory and completes the steps of the method in combination with hardware of the processor. To avoid repetition, it is not described in detail here.
The present application describes embodiments, but the description is illustrative rather than limiting and it will be apparent to those of ordinary skill in the art that many more embodiments and implementations are possible within the scope of the embodiments described herein. Although many possible combinations of features are shown in the drawings and discussed in the detailed description, many other combinations of the disclosed features are possible. Any feature or element of any embodiment may be used in combination with or instead of any other feature or element in any other embodiment, unless expressly limited otherwise.
The present application includes and contemplates combinations of features and elements known to those of ordinary skill in the art. The embodiments, features and elements disclosed in this application may also be combined with any conventional features or elements to form a unique inventive concept as defined by the claims. Any feature or element of any embodiment may also be combined with features or elements from other inventive aspects to form yet another unique inventive aspect, as defined by the claims. Thus, it should be understood that any of the features shown and/or discussed in this application may be implemented individually or in any suitable combination. Accordingly, the embodiments are not limited except as by the appended claims and their equivalents. Furthermore, various modifications and changes may be made within the scope of the appended claims.
Further, in describing representative embodiments, the specification may have presented the method and/or process as a particular sequence of steps. However, to the extent that the method or process does not rely on the particular order of steps set forth herein, the method or process should not be limited to the particular sequence of steps described. Other orders of steps are possible as will be understood by those of ordinary skill in the art. Therefore, the particular order of the steps set forth in the specification should not be construed as limitations on the claims. Furthermore, the claims directed to the method and/or process should not be limited to the performance of their steps in the order written, and one skilled in the art can readily appreciate that the sequences may be varied and still remain within the spirit and scope of the embodiments of the present application.

Claims (11)

1. A method of congestion control, comprising:
when a receiving-end network card monitors that the number of QP changes in an active queue connected with the receiving-end network card, the receiving-end network card reallocates bandwidth quota for all active QP connected with the receiving-end network card;
and the network card at the receiving end sends the bandwidth quota allocated by each active QP to the network card at the sending end connected with the active QP.
2. The method of claim 1, wherein the receiving network card reallocates bandwidth quotas for all active QPs connected to itself, comprising:
the network card at the receiving end redistributes the bandwidth quota for all the active QPs according to the allocable bandwidth quota and the active QP number;
or
And the network card at the receiving end reallocates the bandwidth quota for all active QPs according to the allocable bandwidth quota and the preset bandwidth quota weight of each QP.
3. The method of claim 1, further comprising:
the network card of the receiving end adopts a cache mechanism to manage all QP connected with the network card of the receiving end.
4. The method of claim 2, wherein the allocable quota of bandwidth is derived from a network total quota of bandwidth and a proportion of reserved bandwidth.
5. A method of congestion control, comprising:
a network card of a sending end receives bandwidth quota information from at least one network card of a receiving end; the bandwidth quota information comprises at least one piece of bandwidth quota information corresponding to an active QP connected with the network card of the sending end;
and the network card of the sending end configures the bandwidth of the corresponding active QP according to the obtained bandwidth quota information.
6. The method of claim 5, wherein the configuring, by the sending-end network card, the bandwidth of the corresponding active QP according to the obtained bandwidth quota information includes:
and configuring an active QP corresponding to each piece of the obtained bandwidth quota information, and if the current bandwidth is 0, the network card at the sending end accelerates the current bandwidth to a first preset proportion of the obtained bandwidth quota multiplicatively and accelerates the current bandwidth to the obtained bandwidth quota additively.
7. The method of claim 5, wherein the configuring, by the sending-end network card, the bandwidth of the corresponding active QP according to the obtained bandwidth quota information includes:
and configuring an active QP corresponding to each piece of the obtained bandwidth quota information, and if the obtained bandwidth quota is smaller than the current bandwidth, adjusting the current bandwidth to the obtained bandwidth quota by the network card of the sending end.
8. The method of claim 5, wherein the configuring, by the sending-end network card, the bandwidth of the corresponding active QP according to the obtained bandwidth quota information includes:
configuring an active QP corresponding to each piece of obtained bandwidth quota information, and if the current bandwidth is not 0 and is less than the obtained bandwidth quota, acquiring a multiplicative acceleration bandwidth threshold value by the network card of the sending end according to the obtained bandwidth quota and a second preset proportion;
if the multiplicative acceleration bandwidth threshold is larger than the current bandwidth, the sending-end network card multiplicatively accelerates the current bandwidth to the multiplicative acceleration bandwidth threshold and then multiplicatively accelerates to the obtained bandwidth quota;
and if the multiplicative acceleration bandwidth threshold is smaller than the current bandwidth, the network card of the sending end accelerates the current bandwidth to the acquired bandwidth quota in an additive manner.
9. The method of claim 5, further comprising:
and when the network card at the sending end receives the congestion signal, the network card at the sending end multiplicatively decelerates the current bandwidth.
10. The receiving end network card is characterized by comprising a memory and a processor, wherein the memory is used for storing an executable program;
the processor is configured to read and execute the executable program to implement the congestion control method according to any one of claims 1 to 4.
11. A sending end network card is characterized by comprising a memory and a processor, wherein the memory is used for storing executable programs;
the processor is configured to read and execute the executable program to implement the congestion control method according to any one of claims 5 to 9.
CN202211469745.3A 2022-11-23 2022-11-23 Congestion control method and device Active CN115514708B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211469745.3A CN115514708B (en) 2022-11-23 2022-11-23 Congestion control method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211469745.3A CN115514708B (en) 2022-11-23 2022-11-23 Congestion control method and device

Publications (2)

Publication Number Publication Date
CN115514708A true CN115514708A (en) 2022-12-23
CN115514708B CN115514708B (en) 2023-03-21

Family

ID=84513944

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211469745.3A Active CN115514708B (en) 2022-11-23 2022-11-23 Congestion control method and device

Country Status (1)

Country Link
CN (1) CN115514708B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115865822A (en) * 2023-02-07 2023-03-28 江苏为是科技有限公司 Traffic shaping method and device

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6657964B1 (en) * 1998-05-26 2003-12-02 Hitachi, Ltd. Terminal with bandwidth control function
CN104125159A (en) * 2014-07-29 2014-10-29 福建星网锐捷网络有限公司 Congestion bandwidth detection method, congestion control method, device and system
CN109067665A (en) * 2018-09-25 2018-12-21 华为技术有限公司 Jamming control method and the network equipment
WO2021083269A1 (en) * 2019-10-29 2021-05-06 北京金山云网络技术有限公司 Network traffic rate limiting method and device, central control equipment and gateways
CN113055301A (en) * 2019-12-27 2021-06-29 华为技术有限公司 Congestion control method and related equipment

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6657964B1 (en) * 1998-05-26 2003-12-02 Hitachi, Ltd. Terminal with bandwidth control function
CN104125159A (en) * 2014-07-29 2014-10-29 福建星网锐捷网络有限公司 Congestion bandwidth detection method, congestion control method, device and system
CN109067665A (en) * 2018-09-25 2018-12-21 华为技术有限公司 Jamming control method and the network equipment
WO2021083269A1 (en) * 2019-10-29 2021-05-06 北京金山云网络技术有限公司 Network traffic rate limiting method and device, central control equipment and gateways
CN113055301A (en) * 2019-12-27 2021-06-29 华为技术有限公司 Congestion control method and related equipment

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115865822A (en) * 2023-02-07 2023-03-28 江苏为是科技有限公司 Traffic shaping method and device

Also Published As

Publication number Publication date
CN115514708B (en) 2023-03-21

Similar Documents

Publication Publication Date Title
US11895536B2 (en) User plane function (UPF) load balancing based on special considerations for low latency traffic
US11782869B2 (en) Data transmission method and related device
CN109688063B (en) Method and device for setting large receiving and unloading function
US20120099431A1 (en) Method and device for controlling information channel flow
CN103812750B (en) System and method for protecting data communication equipment CPU receiving and transmitting message
CN109392013B (en) Method for adjusting quality of service (QoS) and communication device
CN110312283B (en) Information processing method and device
WO2023028116A1 (en) User plane function (upf) load balancing based on network data analytics to predict load of user equipment
CN115514708B (en) Congestion control method and device
CN110267276B (en) Network slice deployment method and device
US10467161B2 (en) Dynamically-tuned interrupt moderation
CN111835652B (en) Method and device for setting virtual channel of data stream
CN112005528B (en) Data exchange method, data exchange node and data center network
US11252043B2 (en) Link group configuration method and apparatus
CN108023938B (en) Message sending method and server
CN109905331B (en) Queue scheduling method and device, communication equipment and storage medium
US20230367735A1 (en) Data transmission method, module and apparatus, device, and storage medium
US20220295493A1 (en) Resource indication method and apparatus, and service node and storage medium
US11063883B2 (en) End point multiplexing for efficient layer 4 switching
CN105681112A (en) Method of realizing multi-level committed access rate control and related device
WO2021040581A1 (en) System and method to distribute traffic flows among a plurality of applications in a data center system
CN109729018B (en) Burst size determining method based on flow shaping and related equipment
WO2023193689A1 (en) Packet transmission method and apparatus, device, and computer-readable storage medium
CN113132262B (en) Data stream processing and classifying method, device and system
US11973696B2 (en) Allocation of shared reserve memory to queues in a network device

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