Congestion control method, device, equipment and medium

By monitoring network characteristics and directly sending congestion notifications to the sender, the method addresses delays in existing congestion control systems, enhancing network efficiency and reducing data loss through timely congestion management.

CN119182718APending Publication Date: 2024-12-24VISIONVERA INFORMATION TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411213557.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-08-30
Publication Date
2024-12-24

AI Technical Summary

Technical Problem

Existing network congestion control mechanisms, such as ECN, suffer from delays in responding to congestion due to the need for the receiving end to send a congestion notification to the sending end, leading to untimely congestion control and increased packet loss.

Method used

A congestion control method that involves a network device monitoring characteristic information like packet loss rate, queue length, and traffic rate to directly send a congestion notification to the sending end when congestion occurs, reducing the delay in response time.

Benefits of technology

This method enables rapid and accurate congestion control by directly notifying the sender, improving network efficiency and reducing data loss by minimizing the time from congestion onset to notification receipt.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119182718A_ABST
    Figure CN119182718A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides a congestion control method and device, equipment and a medium, and the method is applied to network equipment, and can comprise the steps: obtaining the feature information of a received data flow; determining whether the data flow is congested according to the feature information; when it is determined that the data flow is congested, sending a congestion notification to a sending end of the data flow; according to the invention, the characteristic information of the data flow can be monitored through the network equipment, and the network equipment can sense the network congestion state and send the network congestion state to the sending end for processing, so that the quick response to network congestion is realized, the network efficiency is improved, and the data loss is reduced; according to the invention, the congestion notification is directly sent to the sending end when the congestion occurs, so that the processing time from the occurrence of the congestion to the receiving of the congestion notification by the sending end is shortened, the delay of congestion control is reduced, and the real-time performance and the accuracy of the congestion control are improved to a certain extent.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of computer technology, and in particular to a congestion control method, device, equipment and medium. Background Art

[0002] ECN (Explicit Congestion Notification) is a mechanism used for network communication, which aims to reduce packet loss rate and delay during network congestion. In the prior art, in order to solve the problem of network congestion, after the receiving end receives a message marked with congestion, it will send a message to notify the sending end that congestion has occurred. After the sending end receives the ECN mark in the message, it will reduce the data flow sending rate. However, there is a high delay from the occurrence of congestion to the speed reduction of the sending end, which will lead to the problem of untimely congestion control. Summary of the invention

[0003] In view of the above problems, embodiments of the present invention are proposed to provide a congestion control method, apparatus, device and medium that overcome the above problems or at least partially solve the above problems.

[0004] In order to solve the above problem, an embodiment of the present invention discloses a congestion control method, which includes:

[0005] Obtaining characteristic information of the received data stream;

[0006] Determine whether congestion occurs in the data flow according to the characteristic information;

[0007] When it is determined that congestion occurs in the data flow, a congestion notification is sent to a sending end of the data flow.

[0008] Optionally, the characteristic information includes source address information, and the sending of the congestion notification to the sender of the data flow includes:

[0009] The congestion notification is sent to a sending end corresponding to the source address information.

[0010] Optionally, the characteristic information includes a length of a data queue for transmitting the data flow; and determining whether congestion occurs in the data flow according to the characteristic information includes:

[0011] Determining whether the length of the data queue is greater than a preset length;

[0012] If the length of the data queue is greater than the preset length, it is determined that congestion occurs in the data flow.

[0013] Optionally, the characteristic information includes a flow rate of transmitting the data flow; and determining whether congestion occurs in the data flow according to the characteristic information includes:

[0014] Determining whether the flow rate of the data stream is greater than a preset rate;

[0015] If the flow rate of the data flow is greater than the preset rate, it is determined that congestion occurs in the data flow.

[0016] Optionally, the characteristic information includes a packet loss rate of transmitting the data stream; and determining whether congestion occurs in the data stream according to the characteristic information of the data stream includes:

[0017] Determining whether the packet loss rate is greater than a preset packet loss rate;

[0018] If the packet loss rate is greater than the preset packet loss rate, it is determined that congestion occurs in the data flow.

[0019] Optionally, before sending the congestion notification to the sending end of the data flow, the method further includes:

[0020] determining a congestion level of the data flow;

[0021] determining a sending frequency according to the congestion level;

[0022] The sending of the congestion notification to the sending end of the data flow includes:

[0023] The congestion notification is sent to the sending end according to the sending frequency.

[0024] Optionally, determining the congestion level of the data flow includes:

[0025] According to the characteristic information, the congestion level of the data flow is queried in a preset mapping relationship, in which the characteristic information and the congestion level are mapped one to one.

[0026] Optionally, it also includes:

[0027] When it is detected that the data flow is no longer congested, the congestion notification is stopped from being sent to the sending end.

[0028] The present invention also discloses a congestion control device, which comprises:

[0029] An acquisition module, used to acquire characteristic information of a received data stream;

[0030] A determination module, configured to determine whether congestion occurs in the data flow according to the characteristic information;

[0031] The sending module is used to send a congestion notification to the sending end of the data flow when it is determined that the data flow is congested.

[0032] Optionally, the characteristic information includes one of a data queue length for transmitting the data stream, a traffic rate of the data stream, and a packet loss rate of the data stream.

[0033] Optionally, the determining module includes:

[0034] A first judging submodule, used to judge whether the length of the data queue is greater than a preset length;

[0035] The first determining submodule is used to determine that congestion occurs in the data flow if the length of the data queue is greater than the preset length.

[0036] Optionally, the determining module includes:

[0037] A second judgment submodule is used to judge whether the flow rate of the data flow is greater than a preset rate;

[0038] The second determination submodule is used to determine that congestion occurs in the data flow if the flow rate of the data flow is greater than the preset rate.

[0039] Optionally, the determining module includes:

[0040] A third judgment submodule is used to judge whether the packet loss rate is greater than a preset packet loss rate;

[0041] The third determination submodule is used to determine that congestion occurs in the data flow if the packet loss rate is greater than the preset packet loss rate.

[0042] Optionally, the device further comprises:

[0043] A level determination module, used to determine the congestion level of the data flow;

[0044] A frequency determination module, used to determine a transmission frequency according to the congestion level;

[0045] The sending module comprises:

[0046] The first sending submodule is used to send the congestion notification to the sending end according to the sending frequency.

[0047] Optionally, the level determination module includes:

[0048] The level determination submodule is used to query the congestion level of the data flow in a preset mapping relationship according to the characteristic information, and the characteristic information and the congestion level are mapped one by one in the preset mapping relationship.

[0049] Optionally, it also includes:

[0050] The monitoring module is used to stop sending congestion notification to the sending end when it is detected that the data flow is no longer congested.

[0051] Optionally, the characteristic information includes source address information, and the sending module includes:

[0052] The second sending submodule is used to send the congestion notification to the sending end corresponding to the source address information.

[0053] The present invention also discloses an electronic device, comprising: a processor, a memory, and a computer program stored in the memory and capable of running on the processor, wherein the computer program implements the steps of the above-mentioned congestion control method when executed by the processor.

[0054] The present invention also discloses a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the steps of the congestion control method described above are implemented.

[0055] The embodiments of the present invention include the following advantages:

[0056] The present invention discloses a congestion control method. The present invention can obtain characteristic information of a received data stream through a network device. The network device can sense the network congestion state by itself and send it to a sending end for processing, thereby realizing a rapid response to network congestion, improving network efficiency, and reducing data loss. The present invention directly sends a congestion notification to the sending end when congestion occurs, thereby reducing the processing time from the occurrence of congestion to the receipt of the congestion notification by the sending end, reducing the delay of congestion control, and thus improving the real-time and accuracy of congestion control to a certain extent. BRIEF DESCRIPTION OF THE DRAWINGS

[0057] Figure 1 is a flow chart of the steps of a congestion control method provided by an embodiment of the present invention;

[0058] Figure 2 is a flowchart of another congestion control method provided by an embodiment of the present invention;

[0059] Figure 3 It is a flowchart of a congestion control method provided by an embodiment of the present invention;

[0060] Figure 4 It is a structural block diagram of a congestion control device provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0061] In order to make the above-mentioned objects, features and advantages of the present invention more obvious and easy to understand, the present invention is further described in detail below with reference to the accompanying drawings and specific embodiments.

[0062] ECN (Explicit Congestion Notification) is a mechanism used for network communication, which aims to reduce packet loss and delay during network congestion. The working principle of ECN is based on setting specific flags in the IP packet header and TCP packet header. When the network device detects congestion, these flags will be set to notify the receiver and sender to perform corresponding processing.

[0063] In data center networks, especially in high-performance computing and large-scale data transmission scenarios, congestion problems seriously affect network performance. The traditional ECN mechanism or Fast ECN mechanism marks the corresponding messages after detecting congestion, and feeds back to the sender after these messages are transmitted to the receiver. However, this method has delays in actual applications. Both ECN and Fast ECN require the receiver to send a congestion notification packet (CNP) after receiving the message with the CE mark.

[0064] For ECN and Fast ECN (fast congestion marking), the ECN mark needs to be passed to the receiving end, and then the receiving end sends CNPCNP across the network to the sending end before the speed is reduced. There is a high delay from the occurrence of congestion to the speed reduction of the sending end, which may cause untimely congestion control and packet loss. In addition, since the receiving end can only perceive the congestion status of the network through the ECN mark, there is also a delay in the receiving end's perception of the congestion status of the network. When the network congestion has been resolved, the receiving end may still receive CE messages, which is prone to repeated sending of CNP, resulting in the problem of low network throughput.

[0065] One of the core concepts of an embodiment of the present invention is to disclose a congestion control method, which may include obtaining characteristic information of a received data stream; determining whether congestion occurs in the data stream based on the characteristic information; and sending a congestion notification to the sender of the data stream when it is determined that congestion occurs in the data stream. The present invention can monitor the characteristic information of the data stream through a network device, and the network device can sense the network congestion state by itself and send it to the sender for processing, thereby achieving a rapid response to network congestion, improving network efficiency, and reducing data loss. The present invention directly sends a congestion notification to the sender when congestion occurs, thereby reducing the processing time from the occurrence of congestion to the receipt of the congestion notification by the sender, reducing the delay of congestion control, and thus improving the real-time and accuracy of congestion control to a certain extent.

[0066] Reference Figure 1 , shows a flow chart of the steps of a congestion control method provided by an embodiment of the present invention, the method may specifically include the following steps:

[0067] Step 101: Acquire characteristic information of a received data stream.

[0068] In the embodiment of the present invention, the characteristic information is used to characterize the parameters of the data stream during the transmission process, and may include the packet loss rate of the data stream, the traffic rate of the data stream, and the data queue length of the transmission data stream. The specific one is not limited here.

[0069] It should be noted that a specific scenario of the present invention may be that a sender sends a data stream to a receiver, and there are multiple network devices between the sender and the receiver, and characteristic information of the received data stream can be obtained through the network devices.

[0070] 102. Determine whether congestion occurs in the data flow according to the characteristic information.

[0071] In the embodiment of the present invention, after acquiring the characteristic information of the data flow, the network device may use a specific algorithm or rule to determine whether the current data flow is in a congested state.

[0072] Step 103: When it is determined that the data flow is congested, a congestion notification is sent to the sender of the data flow.

[0073] In the embodiment of the present invention, when the network device determines that the data flow is congested, it can directly send a congestion notification to the sending end of the data flow, thereby reducing the delay time of the congestion notification and improving convenience for users.

[0074] The present invention discloses a congestion control method, which may include obtaining characteristic information of a received data stream; determining whether congestion occurs in the data stream according to the characteristic information; and sending a congestion notification to a sending end of the data stream when it is determined that congestion occurs in the data stream. The present invention can monitor the characteristic information of the data stream through a network device, and the network device can sense the network congestion state by itself and send it to the sending end for processing, thereby realizing a rapid response to network congestion, improving network efficiency, and reducing data loss. The present invention directly sends a congestion notification to the sending end when congestion occurs, thereby reducing the processing time from the occurrence of congestion to the sending end receiving the congestion notification, reducing the delay of congestion control, and thus improving the real-time and accuracy of congestion control to a certain extent.

[0075] Reference Figure 2 , shows a flowchart of another congestion control method provided by an embodiment of the present invention, which is applied to a network device. The method may specifically include the following steps:

[0076] Step 201: Acquire characteristic information of a received data stream.

[0077] In the embodiment of the present invention, the characteristic information is used to characterize the parameters of the data stream during the transmission process, and may include the packet loss rate of the data stream, the traffic rate of the data stream, and the data queue length of the transmission data stream. The specific one is not limited here.

[0078] Step 202: Determine whether the data flow is congested according to the characteristic information.

[0079] In one embodiment of the present invention, the characteristic information includes a packet loss rate for transmitting the data stream; determining whether the data stream is congested based on the data stream characteristic information includes: determining whether the packet loss rate is greater than a preset packet loss rate; if the packet loss rate is greater than the preset packet loss rate, determining that the data stream is congested.

[0080] In an embodiment of the present invention, the packet loss rate refers to the ratio of data packets lost during data transmission to the total number of data packets sent. When the characteristic information includes the packet loss rate, it can be determined whether the data flow is congested based on the size of the packet loss rate. For example, when the preset packet loss rate is 2%, when the packet loss rate of the data flow exceeds 2%, it is considered that congestion has occurred. The network device will periodically check whether the monitored packet loss rate is greater than the preset packet loss rate threshold. If the monitored packet loss rate is 3%, then it is greater than the preset 2% threshold, that is, it is determined that the data flow is congested; if the monitored packet loss rate is 1%, then it is less than the preset 2% threshold, that is, it is determined that the data flow is not congested.

[0081] In one embodiment of the present invention, the characteristic information includes the length of a data queue for transmitting the data stream; determining whether the data stream is congested based on the characteristic information includes: determining whether the length of the data queue is greater than a preset length; if the length of the data queue is greater than the preset length, determining that the data stream is congested.

[0082] In an embodiment of the present invention, the network device can set a preset data queue length threshold, which is usually based on the design capacity or historical performance data of the network device, and then monitor the length of its internal data queue in real time, that is, the number of data packets waiting to be processed. The network device determines whether the monitored queue length is greater than the preset length threshold. If the queue length is greater than the preset length threshold, the network device will determine that the data flow is congested. Once it is determined that the data flow is congested, the network device will take corresponding congestion control measures, such as sending a congestion notification to the sender, suggesting that it reduce the sending rate, or enabling flow control and congestion avoidance algorithms.

[0083] In one embodiment of the present invention, the characteristic information includes the traffic rate of transmitting the data flow, and determining whether the data flow is congested based on the characteristic information includes: judging whether the traffic rate of the data flow is greater than a preset rate; if the traffic rate of the data flow is greater than the preset rate, determining that the data flow is congested.

[0084] In an embodiment of the present invention, the network device will set a preset traffic rate threshold, which is usually based on the design capacity or historical performance data of the network. The network device will then monitor the traffic rate of the data flow in real time, that is, the amount of data passing through per unit time, usually in bits per second (bps) or bytes per second (Bps). The network device will periodically check whether the monitored traffic rate is greater than the preset rate threshold. If the traffic rate is greater than the preset rate threshold, the network device will determine that congestion has occurred in the data flow. Once it is determined that congestion has occurred in the data flow, the network device will take corresponding congestion control measures, such as sending a congestion notification to the sender, suggesting that it reduce the sending rate, or enabling traffic control and congestion avoidance algorithms.

[0085] In one example, the preset rate is 260 bits per second, and the traffic rate monitored by the network device is 270 bits per second, which is greater than the preset rate, indicating that the data flow is congested. If the traffic rate monitored by the network device is 250 bits per second, which is less than the preset rate, indicating that the data flow is not congested.

[0086] In one embodiment of the present invention, a method for determining that a data flow is congested may also be: the data queue length is greater than a preset length, and the flow rate of the data flow is greater than a preset rate; the data queue length is greater than a preset length, and the packet loss rate is greater than a preset packet loss rate; the flow rate of the data flow is greater than a preset rate, and the packet loss rate is greater than a preset packet loss rate; the data queue length is greater than a preset length, and the flow rate of the data flow is greater than a preset rate, and the packet rate is greater than a preset packet loss rate.

[0087] In the embodiment of the present invention, multiple methods may be used to determine whether congestion occurs, thereby further improving the accuracy of congestion judgment.

[0088] Step 203: When it is determined that the data flow is congested, the congestion level of the data flow is determined.

[0089] In an embodiment of the present invention, when data flow congestion occurs, the severity of the congestion, i.e., the congestion level, can be determined first, which helps the network device to take more accurate and appropriate congestion control measures. The congestion level is usually divided according to the severity of the congestion, and different levels correspond to different response strategies.

[0090] In an embodiment of the present invention, determining the congestion level of a data stream includes: querying the congestion level of the data stream in a preset mapping relationship according to characteristic information, wherein the characteristic information and the congestion level are mapped one-to-one in the preset mapping relationship.

[0091] In an embodiment of the present invention, the network device can determine the congestion level when congestion occurs based on the characteristic information of the data flow. For example, when the characteristic information includes the packet loss rate, the packet loss rate and the congestion level are mapped one to one in the preset mapping relationship. When 0<packet loss rate<1%, it is a low congestion level, when 1%<packet loss rate<3%, it is a medium congestion level, and when the packet loss rate is greater than 3%, it is a high congestion level.

[0092] Step 204: Determine the sending frequency according to the congestion level.

[0093] In the embodiment of the present invention, different congestion levels correspond to different sending frequencies. A high congestion level corresponds to a high sending frequency, and a low congestion level corresponds to a low sending frequency.

[0094] Specifically, a low congestion level corresponds to a first sending frequency, a medium congestion level corresponds to a second sending frequency, and a high congestion level corresponds to a third sending frequency, wherein the first sending frequency is less than the second sending frequency, and the second sending frequency is less than the third sending frequency.

[0095] In one example, a low congestion level: a congestion notification is sent once every 5 minutes, a medium congestion level: a congestion notification is sent once every 2 minutes, and a high congestion level: a congestion notification is sent once every 30 seconds.

[0096] When the network device determines that data flow is congested, the present invention can first determine the sending frequency according to the congestion level, and then send the congestion notification to the sending end according to the sending frequency, thereby improving the accuracy of congestion control and ensuring the rational use of network resources, thereby providing users with more stable and efficient network services.

[0097] Step 205: Send the congestion notification to the sending end according to the sending frequency.

[0098] In an embodiment of the present invention, the method further includes: when it is detected that the data flow is no longer congested, stopping sending the congestion notification to the sending end.

[0099] In an embodiment of the present invention, when the network device detects that the data flow is no longer congested, it can stop sending congestion notifications to the sender. The network device will determine whether the congestion has been alleviated based on the monitored characteristic information. For example, if the delay and packet loss rate drop to normal levels, the transmission rate is stable, and the queue length is reduced, then it can be considered that the congestion has been alleviated, so that the network can respond in time when congestion occurs and resume normal operation after the congestion is alleviated, thereby improving the overall efficiency of the network and user experience.

[0100] In one example, when the characteristic information includes packet loss rate, the network device initially detects that the packet loss rate of the data flow is greater than the preset packet loss rate, and then sends a congestion notification to the sender. The sender reduces the rate of sending the data flow based on the congestion notification. After a preset period of time, the network device detects that the packet loss rate of the data flow is less than the preset packet loss rate, that is, the data flow is no longer congested. At this time, the network device can stop sending congestion notifications to the sender, avoiding the network device from repeatedly sending congestion notifications to the sender, thereby saving network resources.

[0101] In one embodiment of the present invention, the characteristic information may also include a destination address, a port, a node device import, and a node device export. The source address, the destination address, the port, the node device import, and the node device export are used to identify different data streams. The present invention uses the source address, the destination address, the port, the node device import, and the node device export combination to identify different data streams, so that the network device can accurately communicate with the sender to jointly manage and alleviate network congestion. This mechanism not only improves the efficiency of the network, but also ensures the reasonable allocation of network resources, thereby providing users with more stable and efficient network services.

[0102] In an embodiment of the present invention, the characteristic information includes source address information, and sending a congestion notification to a sender of a data stream includes: sending the congestion notification to the sender corresponding to the source address information.

[0103] In the embodiment of the present invention, the characteristic information may further include source address information, and the network device may send the congestion notification to the sender corresponding to the source address according to the source address information, so that the network device can accurately communicate with the sender.

[0104] like Figure 3 , which shows a flow chart of a congestion control method provided by an embodiment of the present invention, Figure 3 In the process, the sender sends a data stream to the receiver, and the characteristic information of the data stream can be monitored by the network device. For example, network device 1 can monitor the characteristic information of the data stream, and then determine whether the data stream is congested based on the characteristic information. If congestion occurs, the congestion notification is directly sent to the sender, and the sender can directly reduce the data stream sending rate according to the congestion notification; network device 2 can monitor the characteristic information of the data stream, and then determine whether the data stream is congested based on the characteristic information. If congestion occurs, the congestion notification is directly sent to the sender, and the sender can directly reduce the data stream sending rate according to the congestion notification; network device 3 can monitor the characteristic information of the data stream, and then determine whether the data stream is congested based on the characteristic information. If congestion occurs, the congestion notification is directly sent to the sender, and the sender can directly reduce the data stream sending rate according to the congestion notification.

[0105] The present invention discloses a congestion control method, which may include monitoring characteristic information of a data stream; determining whether congestion occurs in the data stream according to the characteristic information; and sending a congestion notification to a sending end of the data stream when it is determined that congestion occurs in the data stream. The present invention can monitor the characteristic information of the data stream through a network device, and the network device can sense the network congestion state by itself and send it to the sending end for processing, thereby realizing a rapid response to network congestion, improving network efficiency, and reducing data loss. The present invention directly sends a congestion notification to the sending end when congestion occurs, thereby reducing the processing time from the occurrence of congestion to the sending end receiving the congestion notification, reducing the delay of congestion control, and thus improving the real-time and accuracy of congestion control to a certain extent.

[0106] It should be noted that, for the sake of simplicity, the method embodiments are described as a series of action combinations, but those skilled in the art should be aware that the embodiments of the present invention are not limited by the order of the actions described, because according to the embodiments of the present invention, certain steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in the specification are all preferred embodiments, and the actions involved are not necessarily required by the embodiments of the present invention.

[0107] Reference Figure 4 , shows a structural block diagram of a congestion control device provided by an embodiment of the present invention, which is applied to a network device. The device may include the following modules:

[0108] An acquisition module 301 is used to acquire characteristic information of a received data stream;

[0109] A determination module 302, configured to determine whether congestion occurs in the data flow according to the characteristic information;

[0110] The sending module 303 is used to send a congestion notification to the sending end of the data flow when it is determined that the data flow is congested.

[0111] The present invention discloses a congestion control device. The present invention can monitor characteristic information of data flow through network equipment. The network equipment can sense the network congestion state by itself and send it to the sending end for processing, thereby realizing a rapid response to network congestion, improving network efficiency and reducing data loss. The present invention directly sends a congestion notification to the sending end when congestion occurs, thereby reducing the processing time from the occurrence of congestion to the receipt of the congestion notification by the sending end, reducing the delay of congestion control, and thus improving the real-time and accuracy of congestion control to a certain extent.

[0112] In an embodiment of the present invention, the characteristic information includes source address information, and the sending module 203 includes:

[0113] The first sending submodule is used to send the congestion notification to the sending end corresponding to the source address information.

[0114] In an embodiment of the present invention, the characteristic information includes the data queue length of the transmission data stream; the determination module 302 includes:

[0115] The first judgment submodule is used to judge whether the length of the data queue is greater than a preset length;

[0116] The first determination submodule is used to determine that data flow congestion occurs if the length of the data queue is greater than a preset length.

[0117] In an embodiment of the present invention, the characteristic information includes a flow rate of a transmission data stream; the determination module 302 includes:

[0118] The second judgment submodule is used to judge whether the flow rate of the data flow is greater than a preset rate;

[0119] The second determination submodule is used to determine that congestion occurs in the data flow if the flow rate of the data flow is greater than a preset rate.

[0120] In an embodiment of the present invention, the characteristic information includes a packet loss rate of a transmission data stream; the determination module 302 includes:

[0121] The third judgment submodule is used to judge whether the packet loss rate is greater than a preset packet loss rate;

[0122] The third determination submodule is used to determine that data flow congestion occurs if the packet loss rate is greater than a preset packet loss rate.

[0123] In one embodiment of the present invention, the device further includes:

[0124] A level determination module, used to determine the congestion level of the data flow;

[0125] A frequency determination module, used to determine the transmission frequency according to the congestion level;

[0126] The sending module 303 includes:

[0127] The second sending submodule is used to send the congestion notification to the sending end according to the sending frequency.

[0128] In one embodiment of the present invention, the level determination module includes:

[0129] The level determination submodule is used to query the congestion level of the data flow in a preset mapping relationship according to the characteristic information, and the characteristic information and the congestion level are mapped one by one in the preset mapping relationship.

[0130] In one embodiment of the present invention, it also includes:

[0131] The monitoring module is used to stop sending congestion notification to the sending end when it is detected that the data flow is no longer congested.

[0132] The present invention discloses a congestion control device. The present invention can obtain characteristic information of a received data stream through a network device. The network device can sense the network congestion state by itself and send it to a sending end for processing, thereby realizing a rapid response to network congestion, improving network efficiency, and reducing data loss. The present invention directly sends a congestion notification to the sending end when congestion occurs, thereby reducing the processing time from the occurrence of congestion to the receipt of the congestion notification by the sending end, reducing the delay of congestion control, and thus improving the real-time and accuracy of congestion control to a certain extent.

[0133] As for the device embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.

[0134] An embodiment of the present invention further provides an electronic device, including:

[0135] It includes a processor, a memory, and a computer program stored in the memory and capable of running on the processor. When the computer program is executed by the processor, the various processes of the above-mentioned congestion control method embodiment are implemented, and the same technical effect can be achieved. To avoid repetition, it will not be repeated here.

[0136] An embodiment of the present invention further provides a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the various processes of the above-mentioned congestion control method embodiment are implemented, and the same technical effect can be achieved. To avoid repetition, it will not be repeated here.

[0137] The various embodiments in this specification are described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same or similar parts between the various embodiments can be referenced to each other.

[0138] It will be appreciated by those skilled in the art that the embodiments of the present invention may be provided as methods, devices, or computer program products. Therefore, the embodiments of the present invention may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the embodiments of the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program codes.

[0139] The embodiments of the present invention are described with reference to the flowcharts and / or block diagrams of the methods, terminal devices (systems), and computer program products according to the embodiments of the present invention. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of the processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing terminal device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing terminal device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0140] These computer program instructions may also be stored in a computer readable memory capable of directing a computer or other programmable data processing terminal device to operate in a specific manner, so that the instructions stored in the computer readable memory produce a manufactured product including an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.

[0141] These computer program instructions can also be loaded onto a computer or other programmable data processing terminal device so that a series of operating steps are executed on the computer or other programmable terminal device to produce a computer-implemented process, thereby providing instructions for executing on the computer or other programmable terminal device to implement the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.

[0142] Although the preferred embodiments of the present invention have been described, those skilled in the art may make other changes and modifications to these embodiments once they have learned the basic creative concept. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments and all changes and modifications that fall within the scope of the embodiments of the present invention.

[0143] Finally, it should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or terminal device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or terminal device. In the absence of further restrictions, the elements defined by the sentence "comprise a ..." do not exclude the existence of other identical elements in the process, method, article or terminal device including the elements.

[0144] The congestion control method, device, equipment and storage medium provided by the present invention are introduced in detail above. Specific examples are used in this article to illustrate the principles and implementation methods of the present invention. The description of the above embodiments is only used to help understand the method of the present invention and its core idea. At the same time, for those skilled in the art, according to the idea of ​​the present invention, there will be changes in the specific implementation method and application scope. In summary, the content of this specification should not be understood as limiting the present invention.

Claims

1. A congestion control method, characterized in that: The method comprises: Obtaining characteristic information of the received data stream; Determine whether congestion occurs in the data flow according to the characteristic information; When it is determined that congestion occurs in the data flow, a congestion notification is sent to a sending end of the data flow.

2. The method according to claim 1, characterized in that The characteristic information includes source address information, and the sending of the congestion notification to the sending end of the data flow includes: The congestion notification is sent to a sending end corresponding to the source address information.

3. The method according to claim 1, characterized in that The characteristic information includes the length of the data queue for transmitting the data stream; The determining, according to the characteristic information, whether congestion occurs in the data flow comprises: Determining whether the length of the data queue is greater than a preset length; If the data queue length is greater than the preset length, it is determined that congestion occurs in the data flow.

4. The method according to claim 1, characterized in that: The characteristic information includes a flow rate for transmitting the data stream; The determining, according to the characteristic information, whether congestion occurs in the data flow comprises: Determining whether the flow rate of the data stream is greater than a preset rate; If the flow rate of the data flow is greater than the preset rate, it is determined that congestion occurs in the data flow.

5. The method according to claim 2, characterized in that: The characteristic information includes a packet loss rate of transmitting the data stream; The determining, according to the data flow characteristic information, whether the data flow is congested includes: Determining whether the packet loss rate is greater than a preset packet loss rate; If the packet loss rate is greater than the preset packet loss rate, it is determined that congestion occurs in the data flow.

6. The method according to any one of claims 1 to 5, characterized in that: Before sending the congestion notification to the sending end of the data stream, the method further includes: determining a congestion level of the data flow; determining a sending frequency according to the congestion level; The sending of the congestion notification to the sending end of the data flow includes: The congestion notification is sent to the sending end according to the sending frequency.

7. The method according to claim 6, characterized in that The determining the congestion level of the data flow comprises: According to the characteristic information, the congestion level of the data flow is queried in a preset mapping relationship, in which the characteristic information and the congestion level are mapped one to one.

8. The method according to claim 1, characterized in that Also includes: When it is detected that the data flow is no longer congested, the congestion notification is stopped from being sent to the sending end.

9. A congestion control device, characterized in that: The device comprises: An acquisition module, used to acquire characteristic information of a received data stream; A determination module, configured to determine whether congestion occurs in the data flow according to the characteristic information; The sending module is used to send a congestion notification to the sending end of the data flow when it is determined that the data flow is congested.

10. An electronic device, characterized in that: include: A processor, a memory, and a computer program stored in the memory and capable of running on the processor, wherein when the computer program is executed by the processor, the steps of the congestion control method according to any one of claims 1 to 9 are implemented.

11. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the congestion control method according to any one of claims 1 to 9 are implemented.