Network congestion control method, device and equipment

Through the interference filtering algorithm and model statistical algorithm, the data transmission mode and rate of the BBR algorithm are adjusted, and the problems of BBR algorithm in network congestion control are solved, thereby achieving more efficient and flexible network congestion control.

CN120075882APending Publication Date: 2025-05-30BEIJING UNIV OF POSTS & TELECOMM
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510181170.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-02-19
Publication Date
2025-05-30

AI Technical Summary

Technical Problem

The existing BBR algorithms have problems such as bandwidth preemption, high retransmission rate, and slow network speed in Wi-Fi environments in network congestion control. In addition, BBRv2 and BBRv3 perform poorly in high packet loss scenarios and deep buffer scenarios, resulting in insufficient link utilization and unfairness issues.

Method used

The current BBR transmission scenario is determined through the interference filtering algorithm, and the data transmission mode is adjusted according to the preset transmission strategy; the model statistical algorithm distinguishes the reasons for network fluctuations and adjusts the data transmission rate according to different reasons to improve the reliability and flexibility of network congestion control.

Benefits of technology

It effectively improves the performance of BBR algorithm in network congestion control, avoids the problem of low bandwidth utilization, enhances the ability to distinguish the causes of network fluctuations, and realizes a more flexible and intelligent data transmission strategy.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120075882A_ABST
    Figure CN120075882A_ABST
Patent Text Reader

Abstract

The invention provides a network congestion control method, device and equipment, and the method comprises the steps: determining a current BBR transmission scene of a target network through employing an interference filtering algorithm according to the current network index data of the target network, and adjusting a data transmission mode of the target network based on a transmission strategy corresponding to a preset BBR transmission scene; and determining a current network fluctuation reason of the target network by adopting a model statistical algorithm based on the current network index data of the target network, and adjusting the data transmission rate of the target network based on a rate strategy corresponding to a preset network fluctuation reason. According to the method and the device, the problem of low bandwidth utilization rate caused by the fact that the target network executes the BBR algorithm to continuously give the bandwidth can be effectively avoided, the data transmission rate of the target network can be flexibly adjusted, and the reliability, the flexibility and the intelligent degree of the network congestion control process are further effectively improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the technical field of network data processing, and in particular, to a network congestion control method, apparatus, and device. Background Art

[0002] The BBR (Bottleneck Bandwidth and Round-trip propagation time) algorithm is a network congestion algorithm that has been widely studied and evaluated since its inception. Many researchers have discovered problems with BBR when running in different scenarios. First, because it tends to preempt the bandwidth of algorithms such as Cubic used for TCP congestion control, there are obvious deficiencies in network fairness. Second, the mechanism of BBR leads to a high retransmission rate. Third, the user's network speed significantly slows down in a Wi-Fi environment.

[0003] Currently, for these problems existing in BBR, the BBRv2 algorithm proposes solutions to the main defects in BBRv1. Its improvements include introducing more control parameters to enhance network modeling, increasing support for explicit congestion notification (ECN), and refining the state transition scenarios in the bandwidth probing phase, etc.; the BBRv3 algorithm is a revised version of BBRv2, which solves two key performance problems of BBRv2, can significantly reduce the oscillation of throughput, and can converge to a stable bandwidth faster than the previous two versions.

[0004] However, compared with BBRv1, the packet retransmission rate of BBRv2 is reduced by 12%, and the latency is also slightly improved. However, due to the overly conservative in-flight control of BBRv2, in a high packet loss scenario (2%), its in-flight upper bound (inflight_hi) severely limits the sending rate, while BBR is significantly superior to BBRv2 in terms of throughput. At the same time, the problem of prematurely exiting the bandwidth probing phase will lead to serious underutilization of the link utilization rate of BBRv2, and it is difficult to recover even if the subsequent link is no longer congested. In addition, BBRv2 still has unfairness problems in deep buffer scenarios.

[0005] Although BBRv3 has made great performance improvements compared to earlier versions, as a trade-off for high fairness, the number of retransmissions of BBRv3 in shallow buffer scenarios is significantly higher than that of BBRv2. At the same time, since BBRv3 does not set the probing parameter size so aggressively, in deep buffer scenarios, the reaction speed to dynamic changes in traffic conditions is the worst among BBRv3, Cubic, and earlier versions of BBR. Even when competing with other BBRv3 flows, a small difference in the flow start time will cause a large delay in bandwidth convergence for BBRv3. At the same time, in the case of shallow buffers, BBRv3 will still preempt the bandwidth of the Cubic algorithm. Summary of the Invention

[0006] In view of this, embodiments of the present application provide a network congestion control method, device, and equipment to eliminate or improve one or more defects existing in the prior art.

[0007] One aspect of the present application provides a network congestion control method, including:

[0008] According to the current network metric data of the target network, use an interference filtering algorithm to determine the current BBR transmission scenario of the target network, and adjust the data transmission mode of the target network based on the transmission strategy corresponding to the preset BBR transmission scenario;

[0009] Based on the current network metric data of the target network, use a model statistical algorithm to determine the current network fluctuation cause of the target network, and adjust the data transmission rate of the target network based on the rate strategy corresponding to the preset network fluctuation cause.

[0010] In some embodiments of the present application, before using the interference filtering algorithm to determine the current BBR transmission scenario of the target network according to the current network metric data of the target network, it further includes:

[0011] Collect the current network metric data from the network layer of the target network, where the network metric data includes: round-trip time (RTT) sampling data corresponding to the current congestion control round, the estimated value of the bandwidth occupied by BBR, the amount of data in transit, the congestion window size, and the variance of the packet loss time interval, where the RTT sampling data includes: the variance of RTT change and the change amount of RTT.

[0012] In some embodiments of the present application, using the interference filtering algorithm to determine the current BBR transmission scenario of the target network according to the current network metric data of the target network includes:

[0013] According to the estimated value of the bandwidth occupied by BBR corresponding to the current congestion control round and the pre-stored estimated value of the bandwidth occupied by BBR corresponding to the previous congestion control round, determine the corresponding link bandwidth change amount;

[0014] Further, determine the corresponding change amount of the in - transit data according to the in - transit data amount corresponding to the current congestion control round and the pre - stored in - transit data amount corresponding to the previous congestion control round.

[0015] According to the ratio between the link bandwidth change amount and the in - transit data change amount;

[0016] Judge whether the ratio is within a preset data interval. If so, determine that the current BBR transmission scenario of the target network is a single - flow transmission scenario where only the BBR algorithm participates in data transmission; if not, determine that the current BBR transmission scenario of the target network is a multi - flow transmission scenario where both BBR and AIMD algorithms participate in data transmission.

[0017] In some embodiments of the present application, adjusting the data transmission mode of the target network based on the transmission strategy corresponding to the preset BBR transmission scenario includes:

[0018] If the current BBR transmission scenario of the target network is the single - flow transmission scenario, adjust the data transmission mode of the target network to the single - flow transmission mode according to the first transmission strategy corresponding to the single - flow transmission scenario; wherein, the first transmission strategy includes: triggering the RTT detection stage and canceling the header space reserved for in - transit data in the BBR algorithm, and adjusting the current in - transit data amount of the target network according to the ratio.

[0019] In some embodiments of the present application, adjusting the data transmission mode of the target network based on the transmission strategy corresponding to the preset BBR transmission scenario includes:

[0020] If the current BBR transmission scenario of the target network is the multi - flow transmission scenario, adjust the data transmission mode of the target network to the multi - flow transmission mode according to the second transmission strategy corresponding to the multi - flow transmission scenario; wherein, the second transmission strategy includes: updating the value of the minimum RTT and the time stamp, and adjusting the current in - transit data amount of the target network according to the ratio.

[0021] In some embodiments of the present application, determining the current network fluctuation reason of the target network by using a model statistical algorithm based on the current network metric data of the target network includes:

[0022] Determine the packet loss parameter corresponding to the current congestion control round according to the congestion window size corresponding to the current congestion control round, the pre - stored congestion window size corresponding to the previous congestion control round, and the variance of the packet loss time interval corresponding to the current congestion control round.

[0023] Determine the corresponding random packet loss probability according to the packet loss parameter corresponding to the previous congestion control round;

[0024] Judge whether the random packet loss probability is less than a preset packet loss probability threshold;

[0025] If so, determine that the current network fluctuation reason of the target network is network congestion;

[0026] If not, determine that the current network fluctuation reason of the target network is random packet loss.

[0027] In some embodiments of the present application, adjusting the data transmission rate of the target network based on the rate policy corresponding to the preset network fluctuation reason includes:

[0028] If the network fluctuation reason is the random packet loss, and / or if it is determined through judgment that both the RTT change variance and the RTT change amount are greater than the change threshold, adjust the data transmission rate of the target network based on a preset stable rate policy, where the stable rate policy includes: adjusting the current in-transit data volume of the target network according to the ratio and the in-transit data volume corresponding to the previous congestion control round, and setting the value of the gain coefficient to a first coefficient threshold for representing the stable transmission rate, and the change threshold is approximately equal to 0.

[0029] In some embodiments of the present application, adjusting the data transmission rate of the target network based on the rate policy corresponding to the preset network fluctuation reason includes:

[0030] If the network fluctuation reason is the network congestion, and / or if it is determined through judgment that at least one of the RTT change variance and the RTT change amount is less than or equal to the change threshold, reduce the data transmission rate of the target network based on a preset rate reduction policy, where the rate reduction policy includes: reducing the current in-transit data volume of the target network according to the ratio and half of the in-transit data volume corresponding to the previous congestion control round, and setting the value of the gain coefficient to a second coefficient threshold for representing the reduced transmission rate, where the second coefficient threshold is less than the first coefficient threshold.

[0031] Another aspect of the present application provides a network congestion control device, including:

[0032] An interference filtering module, configured to determine the current BBR transmission scenario of the target network according to the current network metric data of the target network, and adjust the data transmission mode of the target network based on a preset transmission policy corresponding to the BBR transmission scenario;

[0033] A model statistics module, configured to determine the current network fluctuation reason of the target network based on the current network metric data of the target network by using a model statistics algorithm, and adjust the data transmission rate of the target network based on a rate policy corresponding to the preset network fluctuation reason.

[0034] The third aspect of the present application provides an electronic device, including a memory, a processor, and a computer program stored on the memory and executable on the processor. When the processor executes the computer program, the network congestion control method described above is implemented.

[0035] The fourth aspect of the present application provides a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the network congestion control method described above is implemented.

[0036] The fifth aspect of the present application provides a computer program product, including a computer program. When the computer program is executed by a processor, the network congestion control method described above is implemented.

[0037] The network congestion control method provided by the present application determines the current BBR transmission scenario of the target network according to the current network metric data of the target network by using an interference filtering algorithm, and adjusts the data transmission mode of the target network based on a transmission policy corresponding to the preset BBR transmission scenario; determines the current network fluctuation reason of the target network based on the current network metric data of the target network by using a model statistics algorithm, and adjusts the data transmission rate of the target network based on a rate policy corresponding to the preset network fluctuation reason. Through the interference filtering algorithm, the current BBR transmission scenario can be effectively obtained, that is, the algorithm for the traffic participating in network data transmission can be obtained, and further, it can be ensured that the BBR algorithm can more finely distinguish the reasons for congestion when facing network congestion, and can guide the next data transmission mode according to the measured parameters, avoiding the problem of low bandwidth utilization caused by continuously ceding bandwidth; through the model statistics algorithm, the reasons for packet loss and congestion can be finely distinguished, and further, the data transmission rate of the target network can be flexibly adjusted according to the corresponding reasons, which can effectively improve the reliability, flexibility, and intelligence of the network congestion control process.

[0038] The additional advantages, objectives, and features of the present application will be partially described below, and will become partially apparent to those of ordinary skill in the art after studying the following parts, or can be learned from the practice of the present application. The objectives and other advantages of the present application can be achieved and obtained through the structures specifically pointed out in the specification and the drawings.

[0039] Those skilled in the art will understand that the objectives and advantages achievable with the present application are not limited to those specifically described above, and the above and other objectives achievable with the present application will be more clearly understood from the following detailed description. Description of the Drawings

[0040] The drawings described herein are used to provide a further understanding of the present application, form a part of the present application, and do not limit the present application. The components in the drawings are not drawn to scale, but are only for showing the principles of the present application. To facilitate showing and describing some parts of the present application, the corresponding parts in the drawings may be enlarged, that is, may become larger relative to other components in the exemplary device actually manufactured according to the present application. In the drawings:

[0041] Figure 1 It is a schematic diagram of the first process of the network congestion control method in an embodiment of the present application.

[0042] Figure 2 It is a schematic diagram of the second process of the network congestion control method in an embodiment of the present application.

[0043] Figure 3 It is a schematic diagram of the execution process of the network congestion control method in a video in an application example of the present application.

[0044] Figure 4 It is a schematic diagram of the structure of the network congestion control device in an embodiment of the present application. Detailed Embodiments

[0045] To make the objectives, technical solutions, and advantages of the present application clearer and more understandable, the present application will be further described in detail below in combination with the embodiments and the drawings. Herein, the illustrative embodiments of the present application and their descriptions are used to explain the present application, but do not limit the present application.

[0046] Herein, it also needs to be noted that in order to avoid obscuring the present application with unnecessary details, only the structures and / or processing steps closely related to the solution of the present application are shown in the drawings, while other details less related to the present application are omitted.

[0047] It should be emphasized that the term "including / comprising" when used herein refers to the presence of features, elements, steps, or components, but does not exclude the presence or addition of one or more other features, elements, steps, or components.

[0048] Herein, it also needs to be noted that if not otherwise specified, the term "connection" in this document can not only refer to direct connection, but also represent indirect connection with an intermediate.

[0049] In the following, embodiments of the present application will be described with reference to the accompanying drawings. In the drawings, the same reference numerals represent the same or similar components, or the same or similar steps.

[0050] Today's Internet faces serious bandwidth and latency problems, which have a significant impact on network performance globally. Especially in the mobile network environment, most users worldwide experience delays of several seconds or even minutes, which greatly degrades the experience of applications such as streaming media, real-time communication, and online gaming. In high-density public places, such as airports and conference venues, Wi-Fi networks often become extremely slow due to the simultaneous access of too many users, further exacerbating latency and network instability.

[0051] Part of the root cause of this network performance bottleneck can be attributed to traditional AIMD (Additive Increase Multiplicative Decrease) algorithms, which fail to effectively adapt to the dynamic and complex conditions in the modern Internet. When packet loss events occur, the sender's rate reduction cannot quickly empty the buffer queue, and the round-trip delay of the link remains high, resulting in "buffer bloat". Nowadays, due to the growth of Internet bandwidth, the throughput provided by TCP protocols based on packet loss is usually large enough to meet most applications. However, applications that require low latency, such as real-time video streaming, will be greatly affected by the buffer bloat problem and are not suitable for this packet-loss-based congestion control algorithm.

[0052] The BBR congestion control algorithm is different from traditional packet-loss-based congestion control algorithms. This algorithm estimates the link delay-bandwidth product by periodically detecting the bottleneck bandwidth and the minimum round-trip propagation time, and then adjusts its sending rate to achieve data transmission at the maximum sending rate and the minimum delay. Different from packet-loss-based congestion control algorithms, the goal of BBR is at the optimal operating point of Kleinrock. Among them, Kleinrock's optimal operating point refers to finding a suitable point in network performance design so that the network achieves an optimal balance among load, latency, and throughput. At this point, the system can achieve the maximum throughput without causing excessive latency and network congestion. When transmitting data, at this point, the total transmitted data in the link is equal to the bandwidth-delay product. Relevant experimental results show that compared with traditional TCP congestion control algorithms, the BBR algorithm (i.e., BBRv1) can significantly improve the throughput of TCP connections.

[0053] Different from BBRv1, the core of BBRv2 lies in more precisely measuring the delivery rate and setting the inflight data according to packet loss and ECN signals, so as to ensure fairness among protocols while reducing the packet loss rate. To this end, BBRv2 introduces a sub-state machine during the ProbeBW phase. What drives the state transition of the BBRv2 bandwidth probing phase is no longer a fixed time interval, but completely based on packet loss and ECN markings. BBRv2 adjusts the upper and lower bounds of the inflight data (inflight_hi / lo) by tracking the packet loss rate and ECN markings in real time to limit the actual inflight data. At the same time, during the cruise phase, headroom is reserved in the calculated inflight to ensure fairness. In addition, since BBRv1 set the congestion window CWND (CongestionWindow) too small during the ProbeRTT phase, resulting in severe throughput fluctuations, BBRv2 modified the reduction amplitude of CWND during the ProbeRTT phase, increasing it from the original 4 packets to 1 / 2 of the current bandwidth-delay product BDP (Bandwidth-Delay Product) to alleviate throughput fluctuations.

[0054] According to the comparative evaluation, by introducing mechanisms such as packet loss rate and ECN signals to control the inflight data, BBRv2 significantly reduces the number of lost packets during the transmission process compared with BBRv1. And from the coexistence situation with CUBIC when the buffer size is less than 2BDP, BBRv2 also shows better fairness among protocols than BBRv1.

[0055] BBRv3 is a revised version of BBRv2, which addresses two key performance issues of BBRv2. First, it adjusts the premature exit from the ProbeBW phase in BBRv2, ensuring that BBRv3 can fairly share bandwidth with BBRv1 or packet-loss-based congestion control algorithms (CCAs) such as the Cubic algorithm. BBRv3 continuously probes the bandwidth until the packet loss rate or the ECN marking rate is lower than the set threshold (2%) or the bandwidth is saturated (even if the transmission rate is not limited by the inflight_hi threshold). Second, the parameter values used in the ProbeBW phase (such as cwnd_gain, which controls the sending rate of data packets, and the gain coefficient pacing_gain) made BBRv2 very unfair, especially in deep buffer scenarios. If the sender did not receive a loss or ECN signal, it would seize the bandwidth of competing flows. To mitigate these fairness issues, BBRv3 adjusted several parameters used in different congestion control phases, such as cwnd_gain, pacing_gain, and the upper bound of inflight data (inflight_hi), improving the performance of the CCA. Through these detailed adjustments, BBRv3 significantly reduces throughput oscillations and can converge to a stable bandwidth faster than the previous two versions.

[0056] Compared with BBRv1, BBRv2 has a 12% lower packet retransmission rate and slightly improved latency. However, due to the overly conservative control of inflight data in BBRv2, the upper bound of inflight data (inflight_hi) severely limits the sending rate in high packet loss scenarios (2%). BBR is significantly superior to BBRv2 in terms of throughput. At the same time, the problem of premature exit from the bandwidth probing phase leads to severely insufficient link utilization in BBRv2, and it is difficult to recover even if the subsequent link is no longer congested. In addition, BBRv2 still has unfairness issues in deep buffer scenarios.

[0057] Although BBRv3 has made significant performance improvements compared to earlier versions, as a trade-off for high fairness, BBRv3 has significantly higher retransmission counts in shallow buffer scenarios than BBRv2. At the same time, due to the less aggressive setting of the probing parameter sizes in BBRv3, in deep buffer scenarios, compared with Cubic and the earlier version of BBR, BBRv3 performs the worst in terms of reacting to dynamic changes in traffic conditions. Even when competing with other BBRv3 flows, a small difference in the flow start time can lead to a large delay in bandwidth convergence for BBRv3. Also, in shallow buffer cases, BBRv3 still seizes the bandwidth of the Cubic algorithm.

[0058] That is to say, in the actual Internet environment, different flows may use different protocols to compete for bandwidth resources. Since BBR does not rely on packet loss to control traffic, when competing with congestion control algorithms based on packet loss, BBR tends to continuously probe the bandwidth and squeeze the bandwidth resources of other non-BBR flows. To reduce this situation, BBR needs some specific mechanisms to maintain fair competition with traditional TCP algorithm flows. This mechanism was not implemented in BBRv1, and the subsequent improved versions BBRv2 and BBRv3 began to introduce the header space reservation mechanism. However, the overly conservative reservation mechanisms of these improved algorithms inevitably lead to a reduction in their bandwidth utilization.

[0059] In addition, the speed control of BBR does not inherit the traditional AIMD behavior, but adopts a multiplicative growth mechanism based on network measurement. However, congestion control algorithms based on packet loss tend to fill the buffer and guide the sender to send data through the periodic overflow (packet loss) of the buffer. Therefore, in the case of coexistence of multiple AIMD flows, BBR often misjudges the round-trip time (RTT) due to the interference of the AIMD algorithm queue in the buffer and then adopts incorrect transmission strategies.

[0060] To improve the reliability, flexibility, and intelligence of the network congestion control process using the BBR algorithm, the embodiments of the present application respectively provide a network congestion control method, a network congestion control device for executing the network congestion control method, an entity device, a computer-readable storage medium, and a computer program product. Based on the analysis of the BBR algorithm, an improved BBR algorithm is proposed, and the feasibility of the improved algorithm and the reliability of the improvement method are explained. The main work of this network congestion control method is summarized as follows:

[0061] (1) An algorithm for analyzing the currently participating traffic through network parameter measurement is designed, which ensures that BBR can more finely distinguish the causes of congestion when facing network congestion and guides the next sending strategy according to the measured parameters, avoiding the problem of low bandwidth utilization caused by continuously ceding bandwidth.

[0062] (2) A statistical algorithm for weighted analysis and normalization of network parameters is designed to eliminate the risk of false positive misjudgment brought by a single index, carefully distinguish the reasons for packet loss and congestion, and then prescribe the right medicine to avoid blind operations.

[0063] Specific details will be described in detail through the following embodiments.

[0064] Based on this, the embodiments of the present application provide a network congestion control method that can be implemented by a network congestion control device. Refer to Figure 1 , and the network congestion control method specifically includes the following content:

[0065] Step 100: According to the current network metric data of the target network, use an interference filtering algorithm to determine the current BBR transmission scenario of the target network, and adjust the data transmission mode of the target network based on the preset transmission strategy corresponding to the BBR transmission scenario.

[0066] The network metric data can also be referred to as network parameter data, etc., and can include basic network parameters such as the RTT (round-trip time delay) corresponding to the current congestion control round, bandwidth utilization rate, in-flight data volume, packet loss rate, etc.

[0067] In one or more embodiments of the present application, the types of the BBR transmission scenario include: a single-stream transmission scenario where only the BBR algorithm participates in data transmission and a multi-stream transmission scenario where both the BBR and AIMD algorithms participate in data transmission.

[0068] It can be understood that the transmission strategies corresponding to the single-stream transmission scenario and the multi-stream transmission scenario are different, which can ensure that the BBR algorithm can more finely distinguish the reasons for congestion when facing network congestion, and can guide the next data transmission mode according to the measured parameters, avoiding the problem of low bandwidth utilization caused by continuously ceding bandwidth.

[0069] In one or more embodiments of the present application, the transmission strategy at least includes a decision on whether to cancel the head space reserved for in-flight data in the BBR algorithm, that is: whether to cancel the head space reserved for in-flight data during the process of the BBR algorithm participating in the data transmission of the target network.

[0070] Step 200: Based on the current network metric data of the target network, use a model statistical algorithm to determine the current network fluctuation reason of the target network, and adjust the data transmission rate of the target network based on the preset rate strategy corresponding to the network fluctuation reason.

[0071] In step 200, the types of network fluctuation reasons can include network congestion and random packet loss. Network congestion corresponds to a congestion-dominated scenario. For this scenario, if the RTT continues to rise and the packet loss rate is normal, the rate strategy can be set to maintain bandwidth allocation and appropriately decelerate. Random packet loss corresponds to a packet-loss-dominated scenario. For this scenario, if the packet loss rate increases significantly, the rate strategy should focus on reducing the sending window to relieve network congestion.

[0072] As can be seen from the above description, the network congestion control method provided by the embodiments of the present application can effectively learn the current BBR transmission scenario through the interference filtering algorithm, that is, the algorithm for learning the traffic participating in network data transmission. Furthermore, it can ensure that the BBR algorithm can more finely distinguish the causes of congestion when facing network congestion, and can guide the next data transmission mode according to the measured parameters, avoiding the problem of low bandwidth utilization caused by continuously yielding bandwidth. Through the model statistical algorithm, it can finely distinguish the reasons for packet loss and the reasons for congestion, and then can flexibly adjust the data transmission rate of the target network according to the corresponding reasons, which can effectively improve the reliability, flexibility, and intelligence of the network congestion control process using the BBR algorithm.

[0073] To further improve the effectiveness and applicability of network congestion control, in a network congestion control method provided by the embodiments of the present application, refer to Figure 2 , before step 100 in the network congestion control method, it specifically includes the following content:

[0074] Step 010: Collect current network metric data from the network layer of the target network. Among them, the network metric data includes: round-trip time (RTT) sampling data corresponding to the current congestion control round, the estimated value of the bandwidth occupied by BBR, the amount of data in transit, the congestion window size, and the variance of the packet loss time interval. Among them, the RTT sampling data includes: the variance of RTT change and the change amount of RTT.

[0075] In one or more embodiments of the present application, the congestion control round can be set according to a preset time interval. For example, a congestion control for one congestion control round is performed every several seconds or minutes, and it can be specifically set according to actual application requirements.

[0076] To further improve the effectiveness and reliability of the interference filtering algorithm to effectively learn the current BBR transmission scenario, that is, the algorithm for learning the traffic participating in network data transmission, in a network congestion control method provided by the embodiments of the present application, refer to Figure 2 , step 100 in the network congestion control method specifically includes the following content:

[0077] Step 110: Determine the corresponding link bandwidth change amount according to the estimated value of the bandwidth occupied by BBR corresponding to the current congestion control round and the estimated value of the bandwidth occupied by BBR corresponding to the previous congestion control round pre-stored;

[0078] And, step 120: Determine the corresponding change amount of the data in transit according to the amount of data in transit corresponding to the current congestion control round and the amount of data in transit corresponding to the previous congestion control round pre-stored;

[0079] Step 130: According to the ratio between the link bandwidth change amount and the in-flight data change amount;

[0080] Step 140: Determine whether the ratio is within a preset data range; if so, execute Step 141; if not, execute Step 142.

[0081] In an example of the present application, the preset data range can be set to a range close to 1, such as [1±0.1], etc., and can be specifically set according to actual application requirements.

[0082] Step 141: Determine that the current BBR transmission scenario of the target network is a single-stream transmission scenario where only the BBR algorithm participates in data transmission.

[0083] Step 142: Determine that the current BBR transmission scenario of the target network is a multi-stream transmission scenario where both BBR and AIMD algorithms participate in data transmission.

[0084] To further improve the effectiveness and reliability of adjusting the data transmission mode of the target network according to the first transmission strategy corresponding to the single-stream transmission scenario, in a network congestion control method provided in an embodiment of the present application, refer to Figure 2 , after Step 141 in Step 100 of the network congestion control method, the following specific content is further included:

[0085] Step 150: If the current BBR transmission scenario of the target network is the single-stream transmission scenario, adjust the data transmission mode of the target network to the single-stream transmission mode according to the first transmission strategy corresponding to the single-stream transmission scenario; wherein, the first transmission strategy includes: triggering the RTT detection stage and canceling the header space reserved for in-flight data in the BBR algorithm, and adjusting the current in-flight data volume of the target network according to the ratio.

[0086] To further improve the effectiveness and reliability of adjusting the data transmission mode of the target network according to the second transmission strategy corresponding to the multi-stream transmission scenario, in a network congestion control method provided in an embodiment of the present application, refer to Figure 2 , after Step 142 in Step 100 of the network congestion control method, the following specific content is further included:

[0087] Step 160: If the current BBR transmission scenario of the target network is the multi-stream transmission scenario, adjust the data transmission mode of the target network to the multi-stream transmission mode according to the second transmission strategy corresponding to the multi-stream transmission scenario; wherein, the second transmission strategy includes: updating the value of the minimum RTT and the timestamp, and adjusting the current in-flight data volume of the target network according to the ratio.

[0088] Specifically, in a specific example of step 100, a main reason why it is difficult to implement the fair competition mechanism between BBR and other CCAs is the unpredictability of the network. Although BBR has tried to predict the link state as much as possible through some strategies such as periodically detecting RTT and estimating the link BDP, it has not achieved the prediction and estimation of other flows participating in the transmission. Therefore, BBR cannot determine whether the minimum RTT obtained by current measurement is a valid value (the coexisting AIMD algorithm may introduce queuing delay). To address this issue, this application proposes to determine whether there are other AIMD algorithms participating in data transmission by continuously measuring the ratio of the change in the bandwidth occupied by BBR to the change in the in - transit data. If only BBR is transmitting in a single - flow manner, then this ratio will be approximately equal to 0. If there is multi - flow transmission, this ratio will be less than 1. When this ratio is less than 1, overly reducing the inflight value during the RTT probing stage of BBR will not improve the current congestion and will also damage its own throughput.

[0089] The above - mentioned ratio can be considered as a reduction factor for the in - transit data (inflight). The larger the ratio, the more the current congestion situation is related to BBR itself, and congestion can be alleviated by reducing the in - transit data (inflight). The smaller the ratio, the more the current congestion state is irrelevant to BBR, and there is no need to adopt a concession strategy. At the same time, if the calculated ratio is approximately equal to 0, there is no need to reserve header space when calculating the in - transit data (inflight), thus ensuring the full utilization of bandwidth by BBR.

[0090] In an example of an interference filtering algorithm, referring to Table 1, by monitoring the changes in bandwidth and in - transit data, the in - transit data volume in the network is dynamically adjusted, and the header space reservation mechanism is cancelled to optimize network performance. When the ratio of the bandwidth change to the in - transit data change is close to 1, the network is considered to be in a stable state, and the RTT probing stage (ProbeRTT) is triggered to further optimize network parameters. If the ratio is not close to 1, the minimum RTT and timestamp are updated, and the in - transit data volume is adjusted according to the ratio.

[0091] Table 1

[0092]

[0093] Among them, RTT_sample represents the RTT sampling value calculated according to the parameters of each data packet; bw represents the link bandwidth; delta_bw represents the change in the link bandwidth; bw_curr represents the current bandwidth estimate; bw_prev represents the bandwidth estimate of the previous round; inflight represents the data in transit; delta_inflight represents the change in the data in transit; inflight_curr represents the current value of the data in transit; inflight_prev represents the value of the data in transit of the previous round; k represents the ratio; ProbeRTT() represents the RTT probing stage function; minRTT represents the minimum RTT; minRTT_prev represents the minimum RTT of the previous stage; RTT_timestamp represents the RTT update timestamp; headroom represents the headroom reservation mechanism.

[0094] To further determine the effectiveness and reliability of the cause of the current network fluctuation of the target network by using the model statistical algorithm, in a network congestion control method provided in an embodiment of the present application, refer to Figure 2 In step 200 of the network congestion control method, the following specific contents are included:

[0095] Step 210: Determine the packet loss parameter corresponding to the current congestion control round according to the congestion window size corresponding to the current congestion control round, the pre-stored congestion window size corresponding to the previous congestion control round, and the variance of the packet loss time interval corresponding to the current congestion control round;

[0096] Step 220: Determine the corresponding random packet loss probability according to the packet loss parameter corresponding to the previous congestion control round;

[0097] Step 230: Determine whether the random packet loss probability is less than a preset packet loss probability threshold; if so, go to step 231; if not, go to step 232;

[0098] In an example, the packet loss probability threshold can be set to 0.05, etc., and can be specifically set according to actual application requirements.

[0099] Step 231: Determine that the cause of the current network fluctuation of the target network is network congestion;

[0100] Step 232: Determine that the cause of the current network fluctuation of the target network is random packet loss.

[0101] To further improve the effectiveness and reliability of adjusting the data transmission rate of the target network by using the stable rate strategy corresponding to the network congestion as the cause of the network fluctuation, in a network congestion control method provided in an embodiment of the present application, refer to Figure 2, after step 232 in step 200 of the network congestion control method, the following specific content is further included:

[0102] Step 240: If the network fluctuation reason is the random packet loss, and / or, if it is determined that both the RTT change variance and the RTT change amount are greater than the change threshold, adjust the data transmission rate of the target network based on a preset stable rate policy, where the stable rate policy includes: adjusting the current in-transit data volume of the target network according to the ratio and the in-transit data volume corresponding to the previous congestion control round, and setting the value of the gain coefficient to a first coefficient threshold for representing the stable transmission rate, and the change threshold is approximately equal to 0.

[0103] It can be understood that those skilled in the art of this technology know how to determine the allowable deviation approximately equal to 0. For example, the change threshold being approximately equal to 0 can be considered that the change threshold is 0 ± 0.05.

[0104] In an example, the first coefficient threshold can be set to 0.9, and the second coefficient threshold can be set to 0.75.

[0105] To further improve the effectiveness and reliability of adjusting the data transmission rate of the target network by using the rate reduction policy corresponding to the random packet loss as the network fluctuation reason, in a network congestion control method provided in an embodiment of the present application, see Figure 2 , after step 231 in step 200 of the network congestion control method, the following specific content is further included:

[0106] Step 250: If the network fluctuation reason is the network congestion, and / or, if it is determined that at least one of the RTT change variance and the RTT change amount is less than or equal to the change threshold, reduce the data transmission rate of the target network based on a preset rate reduction policy, where the rate reduction policy includes: reducing the current in-transit data volume of the target network according to half of the ratio and the in-transit data volume corresponding to the previous congestion control round, and setting the value of the gain coefficient to a second coefficient threshold for representing the reduced transmission rate, where the second coefficient threshold is less than the first coefficient threshold.

[0107] Specifically, in a specific example of step 200, the model statistical algorithm forms the congestion judgment statistics and packet loss judgment statistics by introducing the RTT variance change, RTT change, the variance change of the two packet loss intervals, and the change ratio of the two packet loss windows. When both the RTT variance change and the RTT change increase simultaneously, we consider the current congestion to be burst congestion and adopt the congestion preprocessing stage. When the variance change is small but the RTT change is large, it is considered continuous congestion and an active congestion handling scheme is adopted. Similarly, this application comprehensively judges whether the current packet loss situation is due to congestion packet loss or random packet loss based on the size of the variance change of the two packet loss intervals and the change ratio of the two packet loss windows. The smaller the values of these two change amounts, the more it is considered random packet loss, and the larger the values, the more it is considered congestion packet loss.

[0108] In an example of the model statistical algorithm, referring to Table 2, by monitoring the RTT change and packet loss events, the amount of in - flight data and pacing gain in the network are dynamically adjusted to optimize network performance and cope with network congestion.

[0109] Table 2

[0110]

[0111]

[0112] Among them, RTT_sample represents the RTT sampling value calculated according to the parameters of each data packet; delta_RTT_variance represents the RTT change variance; delta_RTT represents the RTT change; k represents the ratio calculated by Algorithm 1; pacing_gain represents the pacing gain; inflight represents the in - flight data; inflight_prev represents the value of the in - flight data in the previous round; packloss represents the packet loss event; loss represents the packet loss parameter; W_curr represents the current congestion window size; W_prev represents the congestion window size in the previous round; packloss_slot_variance represents the variance of the packet loss time interval; Random_loss represents the random packet loss probability.

[0113] To further illustrate the above - mentioned embodiments, this application also provides a specific application example of the network congestion control method. Refer to Figure 3 , and the network congestion control method specifically includes the following content:

[0114] Step S1: Obtain network parameter data:

[0115] Obtain the current network metric data from the network layer, including basic network parameters such as RTT (round - trip time), bandwidth utilization rate, in - flight data volume, packet loss rate, etc.

[0116] Step S2: Calculate the change ratio:

[0117] The interference filtering algorithm (Algorithm 1) is called to calculate the ratio of the change in BBR occupied bandwidth to the change in in-transit data.

[0118] If the ratio fluctuates abnormally or does not appear to be consistent with expectations, there may be interference from other AIMD algorithms.

[0119] If the ratio is stable, it is inferred to be a BBR single-stream transmission scenario.

[0120] Step S3: Determine the transmission mode:

[0121] Different transmission modes are adopted according to the ratio calculation result of step S2:

[0122] Single-stream transmission (BBR single-stream scenario): adjust the transmission strategy and cancel the allocated header space to improve bandwidth utilization.

[0123] Multi-stream transmission (other AIMD algorithms exist): reserve the head space to ensure fair competition.

[0124] Step S4: Statistical parameter analysis:

[0125] Call the model statistical algorithm (Algorithm 2) to infer the main cause of network fluctuations based on the changes and distribution of network parameters (RTT change rate, packet loss interval variance, current bandwidth utilization, etc.):

[0126] Packet loss dominated scenario: If the packet loss rate increases significantly, the rate adjustment strategy should focus on maintaining the bandwidth allocation and slowing down appropriately.

[0127] Congestion-dominated scenario: If the RTT continues to rise and the packet loss rate is normal, the strategy focuses on reducing the sending rate to alleviate congestion.

[0128] Step S5: Adjust the rate:

[0129] According to the inference results of the model statistical algorithm, the data transmission rate of the sending end is dynamically adjusted:

[0130] Update the send window size;

[0131] Optimize data transfer rate;

[0132] Ensure efficient use of network resources and fair competition.

[0133] Step S6: loop execution:

[0134] Monitor the network status in real time, repeat steps S1 to S5, continuously adapt to network changes, and improve transmission efficiency.

[0135] That is to say, the algorithm design for traffic coexistence in the link and the refined algorithm design for packet loss and congestion proposed in the application example of the present application can provide reliable guarantee for the minimum RTT effective value detection of BBR; and can increase the refined mechanism for the causes of congestion and packet loss to ensure the correct response of BBR.

[0136] From the software level, the present application also provides a network congestion control device for executing all or part of the network congestion control method described above. Refer to Figure 4 The network congestion control device specifically includes the following contents:

[0137] An interference filtering module 10, configured to determine the current BBR transmission scenario of the target network according to the current network metric data of the target network, and adjust the data transmission mode of the target network based on the transmission policy corresponding to the preset BBR transmission scenario;

[0138] A model statistics module 20, configured to determine the current network fluctuation cause of the target network according to the current network metric data of the target network, and adjust the data transmission rate of the target network based on the rate policy corresponding to the preset network fluctuation cause.

[0139] The embodiment of the network congestion control device provided by the present application can specifically be used to execute the processing flow of the embodiment of the network congestion control method in the above embodiment, and its functions will not be elaborated here. Reference can be made to the detailed description of the embodiment of the network congestion control method above.

[0140] The part of the network congestion control device for network congestion control can be executed in the server or completed in the client device. Specifically, it can be selected according to the processing capacity of the client device and the limitations of the user usage scenario. The present application does not make any limitations in this regard. If all operations are completed in the client device, the client device may further include a processor for specific processing of network congestion control.

[0141] The above-mentioned client device may have a communication module (i.e., a communication unit), and can communicate with a remote server to realize data transmission with the server. The server may include a server on the task scheduling center side, and in other implementation scenarios, it may also include a server of an intermediate platform, such as a server of a third-party server platform having a communication link with the task scheduling center server. The server may include a single computer device, or may include a server cluster composed of multiple servers, or a server structure of a distributed device.

[0142] Any suitable network protocol can be used for communication between the above-mentioned server and the client device, including network protocols that have not been developed as of the filing date of this application. The network protocol can, for example, include TCP / IP protocol, UDP / IP protocol, HTTP protocol, HTTPS protocol, etc. Of course, the network protocol can also include, for example, the RPC protocol (Remote Procedure Call Protocol) and the REST protocol (Representational State Transfer) used on top of the above-mentioned protocols.

[0143] As can be seen from the above description, the network congestion control device provided by the embodiments of this application can effectively learn the current BBR transmission scenario through the interference filtering algorithm, that is, the algorithm for the traffic participating in network data transmission. Furthermore, it can ensure that the BBR algorithm can more precisely distinguish the causes of congestion when facing network congestion, and can guide the next data transmission mode according to the measured parameters, avoiding the problem of low bandwidth utilization caused by continuously ceding bandwidth; through the model statistical algorithm, it can carefully distinguish the reasons for packet loss and the causes of congestion, and then can flexibly adjust the data transmission rate of the target network according to the corresponding reasons, effectively improving the reliability, flexibility and intelligence of the network congestion control process using the BBR algorithm.

[0144] The embodiments of this application also provide an electronic device, which can include a processor, a memory, a receiver and a transmitter. The processor is used to execute the network congestion control method mentioned in the above embodiments. The processor and the memory can be connected through a bus or other means. Taking the connection through the bus as an example. The receiver can be connected to the processor and the memory in a wired or wireless manner.

[0145] The processor can be a Central Processing Unit (CPU). The processor can also be other general-purpose processors, Digital Signal Processors (DSPs), Application Specific Integrated Circuits (ASICs), Field-Programmable Gate Arrays (FPGAs) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. chips, or a combination of the above types of chips.

[0146] The memory, as a non-transitory computer-readable storage medium, can be used to store non-transitory software programs, non-transitory computer-executable programs, and modules, such as the program instructions / modules corresponding to the network congestion control method in the embodiments of the present application. The processor executes various functional applications and data processing of the processor by running the non-transitory software programs, instructions, and modules stored in the memory, that is, to implement the network congestion control method in the above method embodiments.

[0147] The memory may include a program storage area and a data storage area. Among them, the program storage area can store an operating system and application programs required for at least one function; the data storage area can store data created by the processor, etc. In addition, the memory may include high-speed random access memory, and may also include non-transitory memory, such as at least one magnetic disk storage device, a flash memory device, or other non-transitory solid-state storage devices. In some embodiments, the memory may optionally include a memory remotely provided with respect to the processor, and these remote memories can be connected to the processor through a network. Examples of the above networks include, but are not limited to, the Internet, an enterprise intranet, a local area network, a mobile communication network, and combinations thereof.

[0148] The one or more modules are stored in the memory and, when executed by the processor, execute the network congestion control method in the embodiments.

[0149] In some embodiments of the present application, the user equipment may include a processor, a memory, and a transceiver unit. The transceiver unit may include a receiver and a transmitter. The processor, the memory, the receiver, and the transmitter may be connected through a bus system. The memory is used to store computer instructions, and the processor is used to execute the computer instructions stored in the memory to control the transceiver unit to transmit and receive signals.

[0150] As an implementation manner, the functions of the receiver and the transmitter in the present application can be considered to be implemented through a transceiver circuit or a dedicated transceiver chip, and the processor can be considered to be implemented through a dedicated processing chip, a processing circuit, or a general-purpose chip.

[0151] As another implementation manner, it can be considered to use a general-purpose computer to implement the server provided in the embodiments of the present application. That is, the program codes for implementing the functions of the processor, the receiver, and the transmitter are stored in the memory, and the general-purpose processor implements the functions of the processor, the receiver, and the transmitter by executing the codes in the memory.

[0152] The embodiments of the present application also provide 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 foregoing network congestion control method are implemented. The computer-readable storage medium may be a tangible storage medium, such as a random access memory (RAM), internal memory, read-only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, register, floppy disk, hard disk, removable storage disk, CD-ROM, or any other form of storage medium known in the art.

[0153] The embodiments of the present application also provide a computer program product, including a computer program. When the computer program is executed by a processor, the steps of the foregoing network congestion control method are implemented.

[0154] Those of ordinary skill in the art should understand that the various exemplary components, systems, and methods described in connection with the embodiments disclosed herein can be implemented in hardware, software, or a combination of both. Specifically, whether to implement in hardware or software depends on the specific application and design constraints of the technical solution. A professional technician can use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of the present application. When implemented in hardware, it can be, for example, an electronic circuit, an application-specific integrated circuit (ASIC), appropriate firmware, a plug-in, a functional card, and so on. When implemented in software, the elements of the present application are programs or code segments used to perform the required tasks. The program or code segment can be stored in a machine-readable medium or transmitted through a data signal carried in a carrier wave on a transmission medium or a communication link.

[0155] It should be clear that the present application is not limited to the specific configurations and processes described above and shown in the figures. For the sake of brevity, the detailed description of known methods is omitted here. In the above embodiments, several specific steps are described and shown as examples. However, the method process of the present application is not limited to the specific steps described and shown. Those skilled in the art can make various changes, modifications, and additions, or change the order between steps after understanding the spirit of the present application.

[0156] In the present application, the features described and / or illustrated for one embodiment can be used in the same or similar manner in one or more other embodiments, and / or combined with the features of other embodiments or replace the features of other embodiments.

[0157] The foregoing are only the preferred embodiments of the present application and are not used to limit the present application. For those skilled in the art, the embodiments of the present application can have various changes and modifications. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application shall be included in the protection scope of the present application.

Claims

1. A network congestion control method, characterized in that: include: According to the current network indicator data of the target network, an interference filtering algorithm is used to determine the current BBR transmission scenario of the target network, and the data transmission mode of the target network is adjusted based on the preset transmission strategy corresponding to the BBR transmission scenario; Based on the current network indicator data of the target network, a model statistical algorithm is used to determine the current network fluctuation cause of the target network, and the data transmission rate of the target network is adjusted based on a preset rate strategy corresponding to the network fluctuation cause.

2. The network congestion control method according to claim 1, characterized in that: Before determining the current BBR transmission scenario of the target network by using an interference filtering algorithm according to the current network indicator data of the target network, the method further includes: The current network indicator data is collected from the network layer of the target network, wherein the network indicator data includes: round-trip delay RTT sampling data corresponding to the current congestion control round, the estimated value of the bandwidth occupied by BBR, the amount of data in transit, the congestion window size, and the variance of the packet loss time interval, wherein the RTT sampling data includes: RTT change variance and RTT change amount.

3. The network congestion control method according to claim 2, characterized in that: The method of determining the current BBR transmission scenario of the target network by using an interference filtering algorithm according to the current network indicator data of the target network includes: Determine the corresponding link bandwidth change according to the estimated bandwidth occupied by the BBR corresponding to the current congestion control round and the pre-stored estimated bandwidth occupied by the BBR corresponding to the previous congestion control round; and, determining a corresponding in-transit data change amount according to the in-transit data amount corresponding to the current congestion control round and the pre-stored in-transit data amount corresponding to the previous congestion control round; According to the ratio between the link bandwidth change and the in-transit data change; Determine whether the ratio is within a preset data interval. If so, determine that the current BBR transmission scenario of the target network is a single-stream transmission scenario in which only the BBR algorithm participates in data transmission; if not, determine that the current BBR transmission scenario of the target network is a multi-stream transmission scenario in which both the BBR and AIMD algorithms participate in data transmission.

4. The network congestion control method according to claim 3, characterized in that: The adjusting the data transmission mode of the target network based on the preset transmission strategy corresponding to the BBR transmission scenario includes: If the current BBR transmission scenario of the target network is the single-stream transmission scenario, the data transmission mode of the target network is adjusted to the single-stream transmission mode according to the first transmission strategy corresponding to the single-stream transmission scenario; wherein the first transmission strategy includes: triggering the RTT detection phase and canceling the header space reserved for in-transit data in the BBR algorithm, and adjusting the current in-transit data volume of the target network according to the ratio.

5. The network congestion control method according to claim 3, characterized in that: The adjusting the data transmission mode of the target network based on the preset transmission strategy corresponding to the BBR transmission scenario includes: If the current BBR transmission scenario of the target network is the multi-stream transmission scenario, the data transmission mode of the target network is adjusted to the multi-stream transmission mode according to the second transmission strategy corresponding to the multi-stream transmission scenario; wherein the second transmission strategy includes: updating the value and timestamp of the minimum RTT, and adjusting the current amount of in-transit data of the target network according to the ratio.

6. The network congestion control method according to claim 3, characterized in that: The method of using a model statistical algorithm to determine the current network fluctuation cause of the target network based on the current network indicator data of the target network includes: Determine the packet loss parameter corresponding to the current congestion control round according to the congestion window size corresponding to the current congestion control round, the pre-stored congestion window size corresponding to the previous congestion control round, and the variance of the packet loss time interval corresponding to the current congestion control round; Determine a corresponding random packet loss probability according to the packet loss parameter corresponding to the previous congestion control round; Determining whether the random packet loss probability is less than a preset packet loss probability threshold; If yes, determining that the current network fluctuation cause of the target network is network congestion; If not, it is determined that the current network fluctuation cause of the target network is random packet loss.

7. The network congestion control method according to claim 6, characterized in that: The adjusting the data transmission rate of the target network based on the preset rate strategy corresponding to the network fluctuation cause includes: If the cause of the network fluctuation is the random packet loss, and / or if it is determined that the RTT change variance and the RTT change amount are both greater than a change threshold, the data transmission rate of the target network is adjusted based on a preset stable rate strategy, wherein the stable rate strategy includes: adjusting the current in-transit data volume of the target network according to the ratio and the in-transit data volume corresponding to the previous congestion control round, and setting the value of the gain coefficient to a first coefficient threshold for representing a stable sending rate, and the change threshold is approximately equal to 0.

8. The network congestion control method according to claim 7, characterized in that: The adjusting the data transmission rate of the target network based on the preset rate strategy corresponding to the network fluctuation cause includes: If the cause of the network fluctuation is the network congestion, and / or if it is determined that at least one of the RTT change variance and the RTT change amount is less than or equal to the change threshold, the data transmission rate of the target network is reduced based on a preset rate reduction strategy, wherein the rate reduction strategy includes: reducing the current in-transit data volume of the target network according to the ratio and one-half of the in-transit data volume corresponding to the previous congestion control round, and setting the value of the gain coefficient to a second coefficient threshold for indicating a reduction in the sending rate, wherein the second coefficient threshold is less than the first coefficient threshold.

9. A network congestion control device, characterized in that: include: An interference filtering module, configured to determine the current BBR transmission scenario of the target network using an interference filtering algorithm according to the current network indicator data of the target network, and adjust the data transmission mode of the target network based on a preset transmission strategy corresponding to the BBR transmission scenario; The model statistics module is used to determine the current network fluctuation cause of the target network based on the current network indicator data of the target network by using a model statistics algorithm, and adjust the data transmission rate of the target network based on a preset rate strategy corresponding to the network fluctuation cause.

10. An electronic device comprises a memory, a processor and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the computer program, the network congestion control method according to any one of claims 1 to 8 is implemented.