Network rate adjustment method and apparatus, electronic device and storage medium

By sending detection data packets to the receiving end for network measurement, combining round-trip delay and congestion notification messages, the network transmission rate is adjusted in real time, which solves the problems of complex and long-term regulation in the existing technology, and improves network efficiency and stability.

WO2025077170A1PCT designated stage expired Publication Date: 2025-04-17CHINA TELECOM CORP LTD TECHNOLOGY INNOVATION CENTER +1

Patent Information

Application Number
PCT/CN2024/091528
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-10-12
Filing Date
2024-05-07
Publication Date
2025-04-17

AI Technical Summary

Technical Problem

In the prior art, when congestion control algorithms regulate network rates, there are many parameters and complex parameters, resulting in complex deployment and low regulation efficiency; or they require a long time of monitoring before performing rate regulation, resulting in long adjustment time and low efficiency.

Method used

By sending detection data packets to the receiving end for network measurement, the current round trip delay is determined and whether the congestion notification message has been received, and real-time adjustments are made based on the last and current round trip delays, including slowdown and growth.

Benefits of technology

It realizes rapid and real-time adjustment of network transmission rates, avoids congestion and improves network throughput, and reduces latency and stability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024091528_17042025_PF_FP_ABST
    Figure CN2024091528_17042025_PF_FP_ABST
Patent Text Reader

Abstract

A network rate adjusting method and apparatus, an electronic device and a storage medium, relating to the technical field of computers. The method comprises: sending a probe packet to a receiving end on the basis of a current sending rate so as to perform this instance of network measurement; in response to an acknowledgment message returned by the receiving end for the probe packet, determining a current round-trip delay of this instance of network measurement, and determining whether a congestion notification packet is received during this instance of network measurement or not; and if the congestion notification message is received during this instance of network measurement, performing rate reduction adjustment on the current sending rate on the basis of the last round-trip delay and the current round-trip delay.
Need to check novelty before this filing date? Find Prior Art

Description

Network rate adjustment method and device, electronic device, and storage medium

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] This disclosure claims priority to Chinese patent application number 202311320380.2, filed on October 12, 2023, entitled “Network rate adjustment method and device, storage medium and electronic device”, the entire contents of which are incorporated by reference into this disclosure. Technical Field

[0003] The present disclosure relates to the field of computer technology, and in particular to a network rate adjustment method and device, a storage medium, and an electronic device. Background Art

[0004] With the advancement of computer and network technologies, data center network link speeds have rapidly increased from 10G to over 100G, and traffic patterns are changing rapidly, placing increasing demands on network performance. Congestion control technology is a key means of improving network throughput, reducing latency, and ensuring network stability.

[0005] The congestion control algorithms used in related technologies often use a large number of parameters to regulate the rate, which leads to complex algorithm deployment and low regulation efficiency; or the rate is regulated only after a long period of monitoring, which results in a long adjustment time and low regulation efficiency.

[0006] It should be noted that the information disclosed in the above background technology section is only used to enhance the understanding of the background of the present disclosure, and therefore may include information that does not constitute prior art known to ordinary technicians in the field.

[0007] Summary of the Invention

[0008] The present disclosure aims to provide a network rate adjustment method, device, electronic device and storage medium.

[0009] Other features and advantages of the present disclosure will become apparent from the following detailed description, or may be learned in part by practice of the present disclosure.

[0010] According to one aspect of the present disclosure, a network rate adjustment method is provided, comprising: sending a probe data packet to a receiving end based on a current sending rate to perform a current network measurement; determining a current round-trip delay for the current network measurement in response to a reply message to the probe data packet returned by the receiving end, and determining whether a congestion notification message has been received during the current network measurement; and if a congestion notification message has been received during the current network measurement, reducing the current sending rate based on a previous round-trip delay and the current round-trip delay.

[0011] In one embodiment of the present disclosure, the current sending rate is decelerated based on the last round-trip delay and the current round-trip delay, including: determining whether the current round-trip delay is less than or equal to the last round-trip delay; when the current round-trip delay is less than or equal to the last round-trip delay, obtaining the current deceleration factor and determining a first deceleration ratio based on the deceleration factor; and decelerating the current sending rate based on the first deceleration ratio.

[0012] In one embodiment of the present disclosure, the current sending rate is decelerated based on the last round-trip delay and the current round-trip delay, and the method further includes: when the current round-trip delay is greater than the last round-trip delay, obtaining a current deceleration factor, and determining a second deceleration ratio based on the deceleration factor; wherein the second deceleration ratio is greater than the first deceleration ratio; and decelerating the current sending rate based on the second deceleration ratio.

[0013] In one embodiment of the present disclosure, the network rate adjustment method further includes: when no congestion notification message is received during the current network measurement, adjusting the current sending rate to increase the speed according to the last round-trip delay and the current round-trip delay.

[0014] In one embodiment of the present disclosure, the current sending rate is increased according to the last round-trip delay and the current round-trip delay, including: determining whether the current round-trip delay is less than or equal to the last round-trip delay; when the current round-trip delay is less than or equal to the last round-trip delay, obtaining the current ideal sending rate and a first increase rate constant; wherein the current ideal sending rate is greater than or equal to the current sending rate; determining the sum of the current ideal sending rate and the first increase rate constant as the first updated ideal sending rate; and adjusting the current sending rate according to the first updated ideal sending rate.

[0015] In one embodiment of the present disclosure, the current sending rate is increased according to the last round-trip delay and the current round-trip delay to obtain the sending rate after the increase in speed adjustment, and the method also includes: when the current round-trip delay is greater than the last round-trip delay, obtaining the current ideal sending rate and the second increase in speed constant; wherein the current ideal sending rate is greater than or equal to the current sending rate, and the second increase in speed constant is less than the first increase in speed constant; determining the sum of the current ideal sending rate and the second increase in speed constant as the second updated ideal sending rate; and adjusting the current sending rate according to the second updated ideal sending rate.

[0016] In one embodiment of the present disclosure, when the current round-trip delay is less than or equal to the previous round-trip delay, the network rate adjustment method further includes: after the current sending rate is decelerated or increased, obtaining a preset factor adjustment constant and the current deceleration factor; and updating the deceleration factor with a decreasing value according to the factor adjustment constant; and, when the current round-trip delay is greater than the previous round-trip delay, the network rate adjustment method further includes: after the current sending rate is decelerated or increased, obtaining a preset factor adjustment constant and the current deceleration factor; and updating the deceleration factor with a increasing value according to the factor adjustment constant.

[0017] According to another aspect of the present disclosure, a network rate adjustment device is provided, comprising: a sending module configured to send a probe data packet to a receiving end based on a current sending rate to perform a current network measurement; a determination module configured to determine the current round-trip delay of the current network measurement in response to a reply message to the probe data packet returned by the receiving end, and to determine whether a congestion notification message was received during the current network measurement; and an adjustment module configured to, if a congestion notification message is received during the current network measurement, reduce the current sending rate based on the previous round-trip delay and the current round-trip delay.

[0018] According to another aspect of the present disclosure, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the network rate adjustment method described above is implemented.

[0019] According to another aspect of the present disclosure, an electronic device is provided, comprising: a processor; and a memory for storing executable instructions of the processor; wherein the processor is configured to perform the above-mentioned network rate adjustment method by executing the executable instructions.

[0020] It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the disclosure. BRIEF DESCRIPTION OF THE DRAWINGS

[0021] The accompanying drawings are incorporated into and constitute a part of the specification, illustrate embodiments consistent with the present disclosure, and together with the specification, are used to explain the principles of the present disclosure. Obviously, the drawings described below are only some embodiments of the present disclosure, and those skilled in the art can derive other drawings based on these drawings without inventive effort.

[0022] FIG1 shows a schematic diagram of an exemplary system architecture to which the network rate adjustment method according to an embodiment of the present disclosure can be applied.

[0023] FIG2 shows a flow chart of a network rate adjustment method according to an embodiment of the present disclosure.

[0024] FIG3 is a schematic diagram showing a network topology to which the network rate adjustment method according to an embodiment of the present disclosure can be applied.

[0025] FIG4 shows a schematic diagram of a network rate adjustment method according to an embodiment of the present disclosure.

[0026] FIG5 shows a schematic diagram of adjusting the current sending rate in a network rate adjustment method according to an embodiment of the present disclosure.

[0027] FIG6 shows a schematic diagram of updating a speed reduction factor in a network rate adjustment method according to an embodiment of the present disclosure.

[0028] FIG7 shows a block diagram of a network rate adjustment device according to an embodiment of the present disclosure.

[0029] FIG8 shows a structural block diagram of a computer device for adjusting network rate according to an embodiment of the present disclosure. DETAILED DESCRIPTION

[0030] Example embodiments will now be described more fully with reference to the accompanying drawings. However, example embodiments can be embodied in many forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete and will fully convey the concepts of the example embodiments to those skilled in the art. The described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.

[0031] In addition, the accompanying drawings are merely schematic illustrations of the present disclosure and are not necessarily drawn to scale. Identical reference numerals in the figures denote identical or similar parts, and thus repetitive descriptions thereof will be omitted. Some of the block diagrams shown in the accompanying drawings are functional entities that do not necessarily correspond to physically or logically separate entities. These functional entities may be implemented in software, in one or more hardware modules or integrated circuits, or in different networks and / or processor devices and / or microcontroller devices.

[0032] Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of the technical features being referred to. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of the features. Throughout the present disclosure, "plurality" means at least two, such as two, three, etc., unless otherwise specifically defined.

[0033] FIG1 shows a schematic diagram of an exemplary system architecture to which the network rate adjustment method according to an embodiment of the present disclosure can be applied.

[0034] 1 , the system architecture may include a server 101, a network 102, and a client 103. The network 102 is used to provide a medium for a communication link between the client 103 and the server 101. The network 102 may include various connection types, such as wired or wireless communication links or fiber optic cables.

[0035] In an exemplary embodiment, the client 103 that performs data transmission with the server 101 may include, but is not limited to, electronic devices such as smartphones, desktop computers, tablet computers, laptop computers, smart speakers, digital assistants, AR (Augmented Reality) devices, VR (Virtual Reality) devices, and smart wearable devices. Optionally, the operating system running on the electronic device may include, but is not limited to, Android, iOS, Linux, and Windows.

[0036] Server 101 can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN (Content Delivery Network), and big data and artificial intelligence platforms. In some practical applications, server 101 can also be a server of a network platform, which can be, for example, a trading platform, a live broadcast platform, a social platform, or a music platform, etc., which is not limited in the embodiments of the present disclosure. Among them, the server can be a single server or a cluster formed by multiple servers, and the present disclosure does not limit the specific architecture of the server.

[0037] In an exemplary embodiment, multiple clients 101 may perform data transmission with the same server 101 through the same switch. When the client 101 acts as a data sender to send data to the server 101, each client may send data according to its own sending rate, and may regulate its own sending rate in real time through the network rate adjustment method provided in the present disclosure, so as to use a higher sending rate that can avoid congestion as much as possible for data transmission. This not only avoids triggering PFC (Priority-based Flow Control) to the greatest extent, but also achieves higher bandwidth, high fairness in multi-flow bandwidth allocation, and rapid response to microbursts.

[0038] In an exemplary embodiment, the process used by the client 103 to implement the network rate adjustment method may be: the client 103 sends a probe data packet to the receiving end according to the current sending rate to perform the current network measurement; the client 103 determines the current round-trip delay of the current network measurement in response to the response message for the probe data packet returned by the receiving end, and determines whether a congestion notification message is received during the current network measurement; if a congestion notification message is received during the current network measurement, the client 103 adjusts the current sending rate down according to the previous round-trip delay and the current round-trip delay.

[0039] In addition, it should be noted that Figure 1 shows only one application environment of the network rate adjustment method provided by the present disclosure. The number of servers 101, networks 102, and clients 103 in Figure 1 is only illustrative, and any number of clients, networks, and servers may be used according to actual needs.

[0040] In order to enable ordinary persons in the art to better understand the technical solution of the present disclosure, the various steps of the network rate adjustment method in the exemplary embodiment of the present disclosure will be described in more detail below with reference to the accompanying drawings and embodiments.

[0041] Figure 2 shows a flow chart of a network rate adjustment method according to an embodiment of the present disclosure. The method provided in the embodiment of the present disclosure may be executed by the server 101 or the client 103 as shown in Figure 1, but the present disclosure is not limited thereto.

[0042] In the following examples, the client 103 is used as the execution subject for example description.

[0043] As shown in FIG2 , the network rate adjustment method provided by the embodiment of the present disclosure may include the following steps.

[0044] Step S201: Send a probe data packet to a receiving end according to the current sending rate to perform current network measurement.

[0045] In this step, the detection data packet may be a preset RTT (Round-Trip Time) detection packet, and the detection packet may be a data packet used to determine the current round-trip time measurement of the current network in subsequent steps.

[0046] In some practical applications, the client 103 acts as a transmitter to send data, and can start sending at a low rate initially, wherein the start rate (initial rate) is a configurable hyperparameter that can be configured according to actual needs, for example, it can be configured to 1 / 256 of the maximum sending rate. The configuration goal of this parameter is to achieve a compromise between initial bandwidth utilization and avoiding triggering PFC. In the process of the client 103 sending data outward, multiple probe data packets can be continuously sent at a preset frequency to continuously update the sending rate in real time; wherein, the sending frequency can be a configurable hyperparameter, for example, it can be configured to 4KB or 8KB; the larger the interval between two adjacent sending of probe data packets, the smoother the control and the smaller the rate fluctuation, and the smaller the interval, the faster the control response, and the sending frequency can be regulated according to actual needs.

[0047] Step S203 : In response to the response message to the probe data packet returned by the receiving end, the current round trip delay of the current network measurement is determined, and it is determined whether a congestion notification message is received during the current network measurement.

[0048] When the receiving end receives the probe data packet, it can generate and return an ACT (acknowledgement message) indicating "received". The sender can trigger the RTT completion event based on the received acknowledgement message and record the current receiving time. Then, the current round-trip delay (RTT value) can be determined based on the time of sending the probe data packet and the receiving time.

[0049] Furthermore, the network measurement period can be from the time the transmitter sends a probe packet until the transmitter receives a response message for the probe packet. If an explicit congestion notification (ECN) is generated during the period from the time the transmitter sends the probe packet to the time the receiver receives the probe packet, a congestion notification packet (CNP) will be generated. Conversely, if no ECN is generated, no CNP will be generated. Therefore, it is possible to determine whether a congestion notification packet was received during this period after receiving the response message.

[0050] This step determines the current network measurement result, which includes RTT information (RTT value) and information on whether a CNP was received. This information is used to adjust the transmission rate in subsequent steps. The number of received CNPs can be one or more. That is, as long as a CNP is received, the result of "determining whether a congestion notification message was received during the current network measurement" is "yes."

[0051] Step S205: When a congestion notification message is received during the current network measurement, the current sending rate is adjusted downward according to the last round-trip delay and the current round-trip delay.

[0052] In this step, the last round-trip delay is determined by sending a probe packet at the last sending rate during the last network measurement. After adjusting the current sending rate, the updated sending rate after the reduction is obtained, and the data stream can be sent using the updated sending rate after the reduction. If a congestion notification message is received during the current network measurement, it means that congestion has occurred when using the current sending rate for data transmission. It can be inferred that the current sending rate is too high and needs to be adjusted downward to prevent congestion after the adjustment. In this step, the current sending rate can be reduced to achieve the speed reduction adjustment.

[0053] In some embodiments, a current deceleration factor may be obtained and used to decelerate the current transmission rate. The deceleration factor may be a value between 0 and 1, a preset fixed value, or a value that can be adjusted in real time according to the application environment.

[0054] Through the network rate adjustment method provided by the present disclosure, a probe data packet can be sent to the receiving end to perform network measurement, and then the round-trip delay in this measurement can be determined and whether a congestion notification message is received during this measurement. Then, when a congestion notification message is received, the current sending rate can be adjusted down based on the last round-trip delay and the current round-trip delay. On the one hand, it can be determined whether the sending rate needs to be adjusted down based on the information of "whether a congestion notification message is received" after the probe data packet is sent. It can be seen that the method of determining whether a speed reduction adjustment is needed is simple and effective. On the other hand, when it is determined that a speed reduction adjustment is needed, the current sending rate can be adjusted down based on the last round-trip delay and the current round-trip delay. It can be seen that the adjustment method is also simple and effective, can avoid occupying too many computing resources, and can provide an algorithmic basis for real-time and rapid regulation of the sending rate.

[0055] In some embodiments, the "deceleration adjustment of the current sending rate based on the last round-trip delay and the current round-trip delay" in step S205 may include: determining whether the current round-trip delay is less than or equal to the last round-trip delay; if the current round-trip delay is less than or equal to the last round-trip delay, obtaining the current deceleration factor and determining a first deceleration ratio based on the deceleration factor; and decelerating the current sending rate based on the first deceleration ratio.

[0056] In this embodiment, if the current round-trip delay is less than or equal to the previous round-trip delay, this means that, although CNPs were received in this measurement, the round-trip delay obtained using the current sending rate has shortened compared to the previous measurement. This means that congestion is easing, so the current sending rate can be appropriately reduced. In some practical applications, a normal reduction in the current sending rate can be performed with a smaller reduction when congestion is easing.

[0057] In some practical applications, the deceleration factor can be represented by α, which can be a value between 0 and 1. The first deceleration ratio can be, for example, the product of the first preset coefficient and α, wherein it is necessary to ensure that the product of the first preset coefficient and α is still between 0 and 1. For example, the first preset coefficient can be 1 / 4, so the first deceleration ratio can be α / 4. Assuming that the current sending rate is represented by rate_cur and the sending rate obtained after the deceleration adjustment is represented by rate_cur', then when the current round-trip delay is less than or equal to the previous round-trip delay, rate_cur' can be determined according to the following formula: rate_cur'=rate_cur*(1-α / 4).

[0058] In some embodiments, the "speed adjustment of the current sending rate based on the last round-trip delay and the current round-trip delay" in step S205 may also include: when the current round-trip delay is greater than the last round-trip delay, obtaining the current speed reduction factor, and determining a second speed reduction ratio based on the speed reduction factor; wherein the second speed reduction ratio is greater than the first speed reduction ratio; and speed adjustment of the current sending rate based on the second speed reduction ratio.

[0059] In this embodiment, if the current round-trip delay is greater than the previous round-trip delay, this means that the round-trip delay obtained using the current sending rate in this measurement is longer than that in the previous measurement, indicating that congestion is increasing. Therefore, the current sending rate can be reduced by an amount appropriate to the current situation. In some practical applications, the current sending rate can be significantly reduced when congestion is increasing.

[0060] Based on the above, in some practical applications, the second reduction ratio can be, for example, the product of a second preset coefficient and α, where the second preset coefficient must be greater than the first preset coefficient, and the product of the second preset coefficient and α must remain between 0 and 1. For example, the second preset coefficient can be 1 / 2, so the first reduction ratio can be α / 2. Assuming that the current sending rate is represented by rate_cur and the sending rate obtained after the speed reduction adjustment is represented by rate_cur", then when the current round-trip delay is greater than the previous round-trip delay, rate_cur" can be determined according to the following formula: rate_cur' = rate_cur*(1-α / 2).

[0061] In some embodiments, the network rate adjustment method provided by the present disclosure may further include: when no congestion notification message is received during the current network measurement, adjusting the current sending rate according to the last round-trip delay and the current round-trip delay.

[0062] In this embodiment, if no congestion notification message is received during the current network measurement, it means that the current sending rate has not yet reached the threshold that triggers ECN. Therefore, the current sending rate can be appropriately increased based on the previous round-trip delay and the current round-trip delay to achieve speed adjustment. After obtaining the updated sending rate with increased speed, the data stream can be sent using the updated sending rate. The ECN threshold can be pre-set, specifically configured through switch configuration commands, and the configuration method may vary between switches from different manufacturers.

[0063] In some embodiments, the current sending rate is increased based on the last round-trip delay and the current round-trip delay, including: determining whether the current round-trip delay is less than or equal to the last round-trip delay; when the current round-trip delay is less than or equal to the last round-trip delay, obtaining the current ideal sending rate and a first increase rate constant; wherein the current ideal sending rate is greater than or equal to the current sending rate; determining the sum of the current ideal sending rate and the first increase rate constant as the first updated ideal sending rate; and adjusting the current sending rate based on the first updated ideal sending rate.

[0064] In this embodiment, if the current round-trip delay is less than or equal to the previous round-trip delay, it means that no ECN is generated in this measurement and the round-trip delay obtained using the current sending rate is also getting shorter. Therefore, the situation in this embodiment can be regarded as a situation where the network is unobstructed. In this case, super-speed processing can be performed on the basis of the current sending rate at a larger extent.

[0065] The current ideal sending rate can be considered as the sending rate used when the CNP was most recently received in all previous measurements. The current ideal sending rate is generally a value greater than the current sending rate and can be considered as a target rate for adjusting the current sending rate. The first growth rate constant is a hyperparameter and can be represented by HAI. The HAI can be configured before the network rate adjustment method provided by the present disclosure is run. For example, the HAI can be set to 1 / 256 of the maximum rate. Once the network topology consisting of multiple transmitters and a small number of receivers and the switch hardware connecting the transmitters and receivers are determined, the maximum rate can be determined, and the HAI can be determined accordingly. After the determination, there is no need to dynamically adjust the HAI.

[0066] The current ideal sending rate and the first growth rate constant can be obtained first, and then the current ideal sending rate can be updated using the first growth rate constant. That is, the sum of the current ideal sending rate and the first growth rate constant can be determined as the first updated ideal sending rate; then the current sending rate can be increased according to the first updated ideal sending rate. In some practical applications, the average of the first updated ideal sending rate and the current sending rate can be used as the current sending rate after the growth rate adjustment when the network is unobstructed in this embodiment.

[0067] In some embodiments, the current sending rate is increased in speed according to the last round-trip delay and the current round-trip delay to obtain the sending rate after the increase in speed adjustment, and the method also includes: when the current round-trip delay is greater than the last round-trip delay, obtaining the current ideal sending rate and the second increase in speed constant; wherein the current ideal sending rate is greater than or equal to the current sending rate, and the second increase in speed constant is less than the first increase in speed constant; determining the sum of the current ideal sending rate and the second increase in speed constant as the second updated ideal sending rate; and adjusting the current sending rate according to the second updated ideal sending rate.

[0068] In this embodiment, if the current round-trip delay is greater than the previous round-trip delay, it means that although ECN is not generated in this measurement, the round-trip delay obtained using the current sending rate has become longer. Therefore, the situation in this embodiment can be regarded as a situation with congestion risk. In this case, additive speed-up processing can be performed on the basis of the current sending rate at a smaller amplitude.

[0069] Among them, similar to the first growth rate constant, the second growth rate constant is also a hyperparameter, which can be represented by AI; similar to HAI, AI can also be configured before the network rate adjustment method provided by the present disclosure is run. For example, AI can be set to 1 / 2 of the maximum rate. 15; Among them, when the network topology composed of multiple senders and a small number of receivers and the switch hardware connecting the senders and receivers are determined, the maximum rate can be determined, and then the AI can be determined, and the AI does not need to be dynamically adjusted after being determined.

[0070] The current ideal sending rate and the second growth constant can be obtained first, and then the current ideal sending rate can be updated using the second growth constant. That is, the sum of the current ideal sending rate and the first growth constant can be determined as the second updated ideal sending rate; then the current sending rate can be adjusted for growth according to the second updated ideal sending rate. In some practical applications, the average value of the second updated ideal sending rate and the current sending rate can be used as the current sending rate after growth adjustment in the case of congestion risk in this embodiment.

[0071] In some embodiments, when the current round-trip delay is less than or equal to the previous round-trip delay, the network rate adjustment method further includes: after adjusting the current sending rate for deceleration or growth, obtaining a preset factor adjustment constant and the current deceleration factor; updating the deceleration factor to a lower value according to the factor adjustment constant.

[0072] And, when the current round-trip delay is greater than the previous round-trip delay, the network rate adjustment method further includes: after adjusting the current sending rate for deceleration or growth, obtaining a preset factor adjustment constant and the current deceleration factor; updating the deceleration factor to a higher value according to the factor adjustment constant.

[0073] In this embodiment, the factor adjustment constant can be regarded as a hyperparameter, which can be represented by g. g can be used to control the amplitude of the update of the deceleration factor α. In some practical application works, g can be a pre-configured value that satisfies 0 < g < 1. For example, g can take the value of 1 / 256. After updating the deceleration factor to a lower value or a higher value, the updated deceleration factor can be applied to the calculation of deceleration adjustment when the current sending rate needs to be decelerated next time.

[0074] Among them, when the current round-trip delay is less than or equal to the previous round-trip delay, it can be considered that the congestion situation or congestion risk has been alleviated. Therefore, when deceleration is required, an attempt can be made to send the data stream with a slightly lower sending rate. Therefore, the deceleration factor α used can be smaller, so as to achieve the effect of decelerating the sending rate with a smaller reduction amplitude. In some practical applications, assuming that the current deceleration factor is represented by α and the deceleration factor obtained after updating to a lower value is represented by α', then when the current round-trip delay is less than or equal to the previous round-trip delay, α' can be determined according to the following formula: α' = α * (1 - g).

[0075] If the current round-trip delay is greater than the previous round-trip delay, it can be considered that congestion has intensified or there is a risk of congestion. Therefore, when speed reduction is necessary, one can try to reduce the data transmission rate slightly to alleviate congestion. Therefore, the speed reduction factor α used can be larger to achieve a larger reduction in the transmission rate. In some practical applications, assuming that the current speed reduction factor is represented by α and the speed reduction factor obtained after the incremental update is represented by α", then if the current round-trip delay is greater than the previous round-trip delay, α" can be determined according to the following formula: α" = α*(1-g) + g.

[0076] Figure 3 shows a schematic diagram of a network topology to which the network rate adjustment method of an embodiment of the present disclosure can be applied. As shown in Figure 3, it includes 100 sending ends, 1 switch 304 and 1 receiving end 305, where the 100 sending ends may include sending end 301, sending end 302 and sending end 303.

[0077] In the network topology of this embodiment, 100 senders can simultaneously send data streams, with each sender sending ten 1M streams. This constitutes a typical incast (also known as TCP incast, a many-to-one communication model) scenario. The bottleneck link is the link from switch 304 to receiver 305. Because the total ingress bandwidth of switch 304 is greater than the egress bandwidth, congestion will occur on the bottleneck link.

[0078] Congestion can be manifested by an increase in the queue length in switch 304. When the queue length exceeds the switch's ECN marking threshold, switch 304 adds an ECN mark to forwarded packets. Upon receiving the ECN-marked packet, receiver 305 immediately returns a CNP packet to notify the sender of link congestion.

[0079] Taking the transmitting end 301 as an example, in some practical applications, the transmitting end 301 may be provided with an RTT measurement module, a rate control module, and a speed reduction factor update module. These three modules may all be provided on the transmitting end network card of the transmitting end 301. These three modules may work together with the network card hardware in the transmitting end 301 to implement a network rate adjustment architecture. Specifically, the RTT measurement module may send an RTT measurement request to the network card hardware; upon receiving the measurement request, the rate control module may initiate the sending of an RTT probe packet at a low rate; the RTT measurement module may record the measurement results corresponding to the RTT probe packet; the rate control module may then read the RTT measurement results from the RTT measurement module and adjust the rate based on the number of CNPs (Congestion Notification Packets) received during the measurement period; the speed reduction factor update module may also update the speed reduction factor based on the RTT measurement results, thereby controlling the speed reduction magnitude of the rate control module.

[0080] The round-trip delay used in this embodiment is measured from the time when the sender submits the RTT measurement request to the time when the receiver 305 receives the ACK packet of the RTT measurement request returned. When the queue length in the switch 304 increases, the RTT will also increase accordingly.

[0081] The rate control module and the rate reduction factor update module running on the transmitting end 301 will adjust the rate and update the rate reduction factor according to the process in the above technical solution.

[0082] In some practical applications, during the initial phase, switch 304 does not send ECN packets, so the sender does not receive CNPs. The rate control module at each sender rapidly increases the sending rate to achieve maximum bandwidth utilization. Subsequently, the queue at switch 304 rapidly increases until the ECN marking threshold is reached and an ECN signal is sent. Upon receiving the ECN packet, the receiver 305 quickly returns the CNP to the sender. Upon receiving the CNP, the rate control module at the sender immediately reduces the rate. After the rate reduction continues for a period of time, the queue at switch 304 gradually depletes until it falls below the CNP threshold. If the rate control module at the sender does not receive CNPs during an RTT measurement, it will increase the rate again. Ultimately, the sending rate of each flow at each sender in the network topology shown in Figure 3 will stabilize. The stabilized sending rate at each sender will approach the triggering threshold of switch 304's ECN marking at a higher value. Therefore, this solution can automatically regulate the sending rate at the sender to maintain a high value and minimize congestion.

[0083] Figure 4 shows a schematic diagram of a network rate adjustment method according to an embodiment of the present disclosure. This embodiment can be applied to a transmitting end including an RTT measurement module, a rate control module, a rate reduction factor update module, and network card hardware. As shown in Figure 4, the network rate adjustment method may include the following steps.

[0084] Step S401: The RTT measurement module sends an RTT measurement request to the network card hardware.

[0085] Step S403: The RTT measurement module records the sending time t1.

[0086] Step S405: The network card hardware sends an RTT detection packet.

[0087] Step S407: The network card hardware receives the ACK of the RTT detection packet and triggers an RTT completion event.

[0088] Step S409: The RTT measurement module records the time t2 and calculates rtt=t2-t1.

[0089] Step S411: The rate control module adjusts the rate according to the RTT and whether a CNP is received.

[0090] Step S413: The speed reduction factor updating module updates the speed reduction factor according to the RTT.

[0091] Step S415: Inform the network card of the new sending rate.

[0092] The execution order of step S411 and step S413 may not be limited; for other contents of the embodiment of FIG. 4 , reference may be made to the other embodiments described above.

[0093] Figure 5 shows a schematic diagram of adjusting the current sending rate in a network rate adjustment method according to an embodiment of the present disclosure. This embodiment can be applied after receiving the RTT measurement result. As shown in Figure 5, the method for adjusting the current sending rate may include the following steps.

[0094] Step S501: Determine whether the RTT measurement event is completed. When the transmitting end receives a response message to the detection data packet returned by the receiving end, it can be determined that the RTT measurement event is completed.

[0095] Step S503: Obtain the result rtt of this RTT measurement, where rtt may be the time period between the time t1 when the RTT measurement request is sent and the time t2 when the response message is received.

[0096] Step S505: Determine whether a CNP packet is received during the current RTT measurement period. If yes, execute step S507; if not, execute step S515.

[0097] Step S507: Determine whether rtt is less than or equal to last_rtt, where last_rtt is the last round trip delay determined in the last network measurement. If yes, proceed to step S509; if not, proceed to step S511.

[0098] Step S509, determining that the congestion is relieved (normal deceleration) at this time, the rate_cur can be updated according to the right side of the equal sign in the following formula: rate_cur = rate_cur*(1-α / 4); where rate_cur represents the current sending rate and α represents the current deceleration factor.

[0099] Step S511: Determine that the congestion is aggravated (super deceleration) at this time, and update the rate_cur according to the right side of the equal sign in the following formula: rate_cur = rate_cur*(1-α / 2).

[0100] Step S513: Return the adjusted sending rate rate_cur to the network card hardware.

[0101] Step S515: Determine whether rtt is less than or equal to last_rtt. If yes, execute step S517; if not, execute step S519.

[0102] Step S517, determining that the network is unobstructed (super-speed increase), rate_tar can be updated according to the right side of the equal sign in the following formula: rate_tar = rate_tar + HAI; wherein rate_tar represents the ideal sending rate, and HAI represents the first speed increase constant.

[0103] Step S519, determine whether the situation is at risk of congestion (additive growth rate) at this time, and update rate_tar according to the right side of the equal sign in the following formula: rate_tar = rate_tar + AI; where AI represents the second growth rate constant, and the second growth rate constant AI is less than the first growth rate constant HAI.

[0104] Step S521: Update rate_cur according to the updated rate_tar. Specifically, rate_cur may be updated by adjusting the speed according to the right side of the equal sign in the following formula: rate_cur=(rate_tar+rate_cur) / 2.

[0105] For other contents of the embodiment of FIG. 5 , reference may be made to the other embodiments described above.

[0106] This embodiment designs a rate control algorithm based on round-trip delay and ECN. The rate control module can divide the RTT measurement into four categories based on whether CNP is received during the current RTT measurement and the relationship between the current RTT value and the previous RTT value.

[0107] The network is unobstructed (the situation in step S517): the network is not congested and the switch queue is reduced;

[0108] Congestion risk (the situation in step S519): the switch queue grows, but has not yet reached the threshold that triggers ECN;

[0109] Congestion relief (the situation in step S509): The last speed reduction has taken effect, and the switch queue has become shorter, but the queue length is still greater than the ECN threshold;

[0110] Congestion is increasing (the situation in step S511): network congestion tends to increase.

[0111] Furthermore, a corresponding speed adjustment algorithm is designed for each situation, and the adjusted sending rate is returned to the network card hardware. After receiving the adjusted sending rate, the network card hardware can send data at the new sending rate.

[0112] It can be seen that the algorithm designed in this scheme for speed regulation based on round-trip delay and ECN adds end-to-end round-trip delay (RTT) as input information for congestion control on the basis of the widely used ECN-based congestion control. This can effectively expand the amount of information representing the network congestion status and achieve more precise control.

[0113] Furthermore, the startup rate (initial rate) and acceleration mechanism used in this solution comprehensively consider the switch queue length and the end-to-end latency in the link, thereby minimizing PFC triggering and achieving higher bandwidth, high fairness in multi-flow bandwidth allocation, and rapid response to microbursts.

[0114] Figure 6 shows a schematic diagram of updating the speed reduction factor in the network rate adjustment method according to an embodiment of the present disclosure. As shown in Figure 6, updating the speed reduction factor may include the following steps.

[0115] Step S601: Determine whether the RTT measurement event is completed.

[0116] Step S603: Obtain the result rtt of this RTT measurement.

[0117] Step S605: Determine whether rtt is less than or equal to last_rtt. If yes, execute step S607; if not, execute step S609.

[0118] Step S607: Update the deceleration factor α according to the factor adjustment constant g. Specifically, α may be updated by decreasing the value according to the right side of the equal sign in the following formula: α=α(1-g).

[0119] Step S609: The deceleration factor α is updated by decreasing the value according to the factor adjustment constant g. Specifically, α can be updated according to the right side of the equal sign in the following formula: α=α(1-g)+g.

[0120] For other contents of the embodiment of FIG. 6 , reference may be made to the other embodiments described above.

[0121] This method uses a rate reduction factor α, which can be considered a hyperparameter controlling the magnitude of each rate reduction. This method directly updates the rate reduction factor based on network measurements taken by sending probe packets. This allows the rate reduction to be adjusted when the current sending rate needs to be updated, making the reduction more adaptable to the current situation (including both congestion relief and congestion exacerbation).

[0122] Specifically, the deceleration factor update module controls the update of the deceleration factor based on the relationship between the current RTT measurement and the previous RTT measurement. This allows the rate adjustment control module to use the updated deceleration factor to control the deceleration magnitude. This deceleration factor update module simplifies the configuration of timer and bit counter thresholds and related hyperparameters. These optimizations significantly reduce the difficulty of algorithm deployment, enabling a simple and effective method to control the deceleration adjustment of the current transmission rate.

[0123] It should be noted that the above figures are merely illustrative of the processes included in the method according to exemplary embodiments of the present invention and are not intended to be limiting. It is readily understood that the processes illustrated in the above figures do not indicate or limit the temporal order of these processes. Furthermore, it is readily understood that these processes may be executed synchronously or asynchronously, for example, in multiple modules.

[0124] Figure 7 shows a block diagram of a network rate adjustment device 700 according to an embodiment of the present disclosure. As shown in Figure 7, the device includes: a sending module 701, configured to send a probe data packet to a receiving end according to the current sending rate to perform the current network measurement; a determination module 702, configured to determine the current round-trip delay of the current network measurement in response to a response message to the probe data packet returned by the receiving end, and to determine whether a congestion notification message is received during the current network measurement; and an adjustment module 703, configured to reduce the current sending rate according to the previous round-trip delay and the current round-trip delay when a congestion notification message is received during the current network measurement.

[0125] Through the network rate adjustment device provided by the present disclosure, a probe data packet can be sent to the receiving end to perform network measurement, and then the round-trip delay in this measurement can be determined and whether a congestion notification message is received during this measurement. Then, when a congestion notification message is received, the current sending rate is adjusted to a lower speed according to the last round-trip delay and the current round-trip delay. On the one hand, it is possible to determine whether the sending rate needs to be adjusted to a lower speed based on the information "whether a congestion notification message is received" after the probe data packet is sent. It can be seen that the method for determining whether a speed adjustment is needed is simple and effective. On the other hand, when it is determined that a speed adjustment is needed, the current sending rate can be adjusted to a lower speed based on the last round-trip delay and the current round-trip delay. It can be seen that the adjustment method is also simple and effective, can avoid occupying too many computing resources, and can provide an algorithmic basis for real-time and rapid regulation of the sending rate.

[0126] In some embodiments, the adjustment module 703 reduces the speed of the current sending rate based on the last round-trip delay and the current round-trip delay, including: determining whether the current round-trip delay is less than or equal to the last round-trip delay; when the current round-trip delay is less than or equal to the last round-trip delay, obtaining the current reduction factor and determining a first reduction ratio based on the reduction factor; and reducing the current sending rate based on the first reduction ratio.

[0127] In some embodiments, the adjustment module 703 reduces the speed of the current sending rate based on the last round-trip delay and the current round-trip delay, and also includes: when the current round-trip delay is greater than the last round-trip delay, obtaining the current reduction factor, and determining a second reduction ratio based on the reduction factor; wherein the second reduction ratio is greater than the first reduction ratio; and reducing the speed of the current sending rate according to the second reduction ratio.

[0128] In some embodiments, the adjustment module 703 is further configured to: when no congestion notification message is received during the current network measurement, adjust the current sending rate according to the last round-trip delay and the current round-trip delay.

[0129] In some embodiments, the adjustment module 703 adjusts the growth rate of the current sending rate based on the last round-trip delay and the current round-trip delay, including: determining whether the current round-trip delay is less than or equal to the last round-trip delay; when the current round-trip delay is less than or equal to the last round-trip delay, obtaining the current ideal sending rate and a first growth rate constant; wherein the current ideal sending rate is greater than or equal to the current sending rate; determining the sum of the current ideal sending rate and the first growth rate constant as the first updated ideal sending rate; and adjusting the growth rate of the current sending rate based on the first updated ideal sending rate.

[0130] In some embodiments, the adjustment module 703 adjusts the growth rate of the current sending rate based on the last round-trip delay and the current round-trip delay to obtain the sending rate after the growth rate adjustment, and also includes: when the current round-trip delay is greater than the last round-trip delay, obtaining the current ideal sending rate and the second growth rate constant; wherein the current ideal sending rate is greater than or equal to the current sending rate, and the second growth rate constant is less than the first growth rate constant; determining the sum of the current ideal sending rate and the second growth rate constant as the second updated ideal sending rate; and adjusting the growth rate of the current sending rate according to the second updated ideal sending rate.

[0131] In some embodiments, the network rate adjustment device 700 also includes a factor update module 704. When the current round-trip delay is less than or equal to the previous round-trip delay, the factor update module 704 is configured to: after the current sending rate is decelerated or increased, obtain a preset factor adjustment constant and the current deceleration factor; update the deceleration factor with a decreasing value according to the factor adjustment constant; and, when the current round-trip delay is greater than the previous round-trip delay, the factor update module 704 is further configured to: after the current sending rate is decelerated or increased, obtain a preset factor adjustment constant and the current deceleration factor; and update the deceleration factor with an increasing value according to the factor adjustment constant.

[0132] For other contents of the embodiment of FIG. 7 , reference may be made to the other embodiments described above.

[0133] Those skilled in the art will appreciate that various aspects of the present invention may be implemented as systems, methods, or program products. Therefore, various aspects of the present invention may be implemented in the following forms: a complete hardware implementation, a complete software implementation (including firmware, microcode, etc.), or a combination of hardware and software implementations, which may be collectively referred to herein as "circuits," "modules," or "systems."

[0134] Figure 8 shows a block diagram of a network rate adjustment computer device according to an embodiment of the present disclosure. It should be noted that the electronic device shown in the figure is only an example and should not bring any limitation to the functions and scope of use of the embodiment of the present invention.

[0135] The electronic device 800 according to this embodiment of the present invention is described below with reference to Figure 8. The electronic device 800 shown in Figure 8 is only an example and should not limit the functions and scope of use of the embodiment of the present invention.

[0136] As shown in Figure 8, electronic device 800 is implemented as a general-purpose computing device. Components of electronic device 800 may include, but are not limited to, the aforementioned at least one processing unit 810, the aforementioned at least one storage unit 820, and a bus 830 connecting various system components (including storage unit 820 and processing unit 810).

[0137] The storage unit stores program code that can be executed by the processing unit 810, causing the processing unit 810 to perform the steps according to various exemplary embodiments of the present invention described in the "Exemplary Methods" section above. For example, the processing unit 810 can perform the method shown in Figure 2.

[0138] The storage unit 820 may include a readable medium in the form of a volatile storage unit, such as a random access memory unit (RAM) 8201 and / or a cache memory unit 8202 , and may further include a read-only memory unit (ROM) 8203 .

[0139] The storage unit 820 may also include a program / utility 8204 having a set (at least one) of program modules 8205, such program modules 8205 including but not limited to: an operating system, one or more application programs, other program modules, and program data, each of which or some combination may include an implementation of a network environment.

[0140] Bus 830 may represent one or more of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, a processing unit, or a local bus using any of a variety of bus architectures.

[0141] The electronic device 800 can also communicate with one or more external devices 900 (e.g., a keyboard, a pointing device, a Bluetooth device, etc.), one or more devices that enable a user to interact with the electronic device 800, and / or any device that enables the electronic device 800 to communicate with one or more other computing devices (e.g., a router, a modem, etc.). Such communication can occur via an input / output (I / O) interface 850. Furthermore, the electronic device 800 can also communicate with one or more networks (e.g., a local area network (LAN), a wide area network (WAN), and / or a public network such as the Internet) via a network adapter 860. As shown, the network adapter 860 communicates with other modules of the electronic device 800 via a bus 830. It should be understood that, although not shown in the figure, other hardware and / or software modules can be used in conjunction with the electronic device 800, including but not limited to microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.

[0142] In exemplary embodiments of the present disclosure, a computer-readable storage medium is also provided, on which is stored a program product capable of implementing the aforementioned methods of this specification. In some possible implementations, various aspects of the present invention may also be implemented in the form of a program product comprising program code. When the program product is executed on a terminal device, the program code is configured to cause the terminal device to execute the steps according to various exemplary embodiments of the present invention described in the "Exemplary Methods" section of this specification.

[0143] The program product for implementing the above-described method according to an embodiment of the present invention may be a portable compact disc read-only memory (CD-ROM) and include program code, and may be run on a terminal device, such as a personal computer. However, the program product of the present invention is not limited thereto. In this document, a readable storage medium may be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device.

[0144] The program product may be implemented in any combination of one or more readable media. The readable medium may be a readable signal medium or a readable storage medium. The readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or component, or any combination thereof. More specific examples (a non-exhaustive list) of readable storage media include: an electrical connection with one or more wires, a portable disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof.

[0145] A computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, which carries readable program code. Such propagated data signals may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A readable signal medium may also be any readable medium other than a readable storage medium that can transmit, propagate, or transfer a program for use by or in conjunction with an instruction execution system, apparatus, or device.

[0146] The program code embodied on the readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.

[0147] The program code for performing the operations of the present invention may be written in any combination of one or more programming languages, including object-oriented programming languages ​​such as Java, C++, and the like, as well as conventional procedural programming languages ​​such as "C" or similar programming languages. The program code may be executed entirely on the user computing device, partially on the user device, as a stand-alone software package, partially on the user computing device and partially on a remote computing device, or entirely on a remote computing device or server. In cases involving a remote computing device, the remote computing device may be connected to the user computing device via any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computing device (e.g., via the Internet using an Internet service provider).

[0148] It should be noted that although several modules or units of the device for action execution are mentioned in the detailed description above, this division is not mandatory. In fact, according to the embodiments of the present disclosure, the features and functions of two or more modules or units described above can be concretized in one module or unit. Conversely, the features and functions of one module or unit described above can be further divided into multiple modules or units to be concretized.

[0149] Furthermore, although the steps of the method of the present disclosure are described in a particular order in the accompanying drawings, this does not require or imply that the steps must be performed in this particular order, or that all steps shown must be performed to achieve the desired results. Additionally or alternatively, some steps may be omitted, multiple steps may be combined into one step, and / or one step may be decomposed into multiple steps.

[0150] Through the description of the above embodiments, it is easy for those skilled in the art to understand that the example embodiments described herein can be implemented by software or by combining software with necessary hardware. Therefore, the technical solution according to the embodiments of the present disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, a USB flash drive, a mobile hard disk, etc.) or on a network, and includes several instructions to enable a computing device (which can be a personal computer, a server, a mobile terminal, or a network device, etc.) to execute the method according to the embodiments of the present disclosure.

[0151] According to one aspect of the present disclosure, a computer program product or computer program is provided, comprising computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the methods provided in various optional implementations of the above-described embodiments.

[0152] Other embodiments of the present disclosure will readily occur to those skilled in the art after considering the specification and practicing what is disclosed herein. This disclosure is intended to cover any variations, uses, or adaptations of the present disclosure that follow the general principles of the present disclosure and include common knowledge or customary techniques in the art not disclosed herein. The description and examples are to be considered as exemplary only, with the true scope and spirit of the present disclosure being indicated by the appended claims.

Claims

1. A network rate adjustment method, wherein: include: Send a probe data packet to the receiving end according to the current sending rate to perform current network measurement; In response to a response message to the detection data packet returned by the receiving end, determining a current round trip delay of the current network measurement, and determining whether a congestion notification message is received during the current network measurement; When the congestion notification message is received during the current network measurement, the current sending rate is adjusted down according to the last round-trip delay and the current round-trip delay.

2. The method according to claim 1, wherein: According to the last round-trip delay and the current round-trip delay, the current sending rate is adjusted down, including: Determining whether the current round-trip delay is less than or equal to the previous round-trip delay; When the current round-trip delay is less than or equal to the previous round-trip delay, obtaining a current speed reduction factor, and determining a first speed reduction ratio according to the speed reduction factor; The current sending rate is adjusted to be down-rated according to the first reduction ratio.

3. The method according to claim 2, wherein: According to the last round-trip delay and the current round-trip delay, the current sending rate is adjusted down, further comprising: When the current round-trip delay is greater than the previous round-trip delay, obtaining a current deceleration factor, and determining a second deceleration ratio according to the deceleration factor; wherein the second deceleration ratio is greater than the first deceleration ratio; The current sending rate is adjusted to be down-rated according to the second reduction ratio.

4. The method according to claim 1, wherein: The method further comprises: When the congestion notification message is not received during the current network measurement, the current sending rate is increased and adjusted according to the last round-trip delay and the current round-trip delay.

5. The method according to claim 4, wherein: According to the last round-trip delay and the current round-trip delay, the current sending rate is adjusted to increase the speed, including: Determining whether the current round-trip delay is less than or equal to the previous round-trip delay; When the current round-trip delay is less than or equal to the previous round-trip delay, obtaining a current ideal sending rate and a first speed-increasing constant; wherein the current ideal sending rate is greater than or equal to the current sending rate; Determine the sum of the current ideal sending rate and the first speed increasing constant as a first updated ideal sending rate; The current sending rate is increased and adjusted according to the first updated ideal sending rate.

6. The method according to claim 5, wherein: According to the last round-trip delay and the current round-trip delay, the current sending rate is increased to obtain a sending rate after the increase is adjusted, further comprising: When the current round-trip delay is greater than the previous round-trip delay, obtaining a current ideal sending rate and a second increasing speed constant; wherein the current ideal sending rate is greater than or equal to the current sending rate, and the second increasing speed constant is less than the first increasing speed constant; Determine the sum of the current ideal sending rate and the second increasing speed constant as a second updated ideal sending rate; The current sending rate is increased and adjusted according to the second updated ideal sending rate.

7. The method according to any one of claims 1 to 6, wherein: In the case where the current round-trip delay is less than or equal to the previous round-trip delay, the method further includes: after the current sending rate is adjusted down or increased, obtaining a preset factor adjustment constant and a current speed reduction factor; updating the speed reduction factor according to the factor adjustment constant; and, When the current round-trip delay is greater than the previous round-trip delay, the method further includes: after slowing down or speeding up the current sending rate, obtaining a preset factor adjustment constant and a current deceleration factor; and updating the deceleration factor according to the factor adjustment constant.

8. A network rate adjustment device, wherein: include: The sending module is used to send a detection data packet to the receiving end according to the current sending rate to perform the current network measurement; A determination module, configured to determine the current round trip delay of the current network measurement in response to a response message to the detection data packet returned by the receiving end, and to determine whether a congestion notification message is received during the current network measurement; The adjustment module is used to adjust the current sending rate down according to the last round-trip delay and the current round-trip delay when the congestion notification message is received during the current network measurement.

9. A computer-readable storage medium having a computer program stored thereon, wherein when the program is executed by a processor, the network rate adjustment method according to any one of claims 1 to 7 is implemented.

10. An electronic device, wherein: include: one or more processors; A storage device, used to store one or more programs, when the one or more programs are executed by the one or more processors, enables the one or more processors to implement the network rate adjustment method as described in any one of claims 1 to 7.

Citation Information

Patent Citations

  • TCP (Transmission Control Protocol) friendly rate control method based on ECN (Explicit Congestion Notification) mechanism

    CN103297346A

  • TCP-friendly and rapid-convergent window modulation method in data center network

    CN106357551A

  • Network optimization system and method for distributed machine learning, and electronic equipment

    CN116266826A

  • Network rate adjustment method and device, storage medium and electronic equipment

    CN117376212A

  • Kernel awareness of physical environment

    US20120155262A1

Cited By

  • Congestion control method and device for data center network, equipment and medium

    CN120378361A

  • Remote desktop bandwidth control method and device, storage medium and electronic equipment

    CN121664667A