Data transmission control method, device, equipment and computer storage medium

By obtaining the loss rate and transmission delay difference of data packets, combining preset jitter factor and rate control algorithm, the transmission rate of data packets is determined, which solves the problems of high packet loss rate and low network stability in data transmission, and achieves more stable network performance.

CN116170376BActive Publication Date: 2025-06-06CHINA MOBILE ONLINE SERVICES CO LTD +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202111413414.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-11-25
Publication Date
2025-06-06
Estimated Expiration
2041-11-25

AI Technical Summary

Technical Problem

In the prior art, there is a problem of high packet loss rate and low network performance stability during data transmission.

Method used

By obtaining the loss rate of the data packet and the transmission delay difference between the data packets, the transmission rate of the data packet is determined according to the preset jitter factor and rate control algorithm to reduce the packet loss rate and improve network stability.

Benefits of technology

Under the limitation of the jitter factor, avoid sudden changes in the transmission rate, reduce data packet loss rate, and improve network performance stability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116170376B_ABST
    Figure CN116170376B_ABST
Patent Text Reader

Abstract

The embodiment of the present application provides a data transmission control method, device, equipment and computer storage medium, the method includes obtaining the loss rate of data packets and the transmission delay difference between data packets, the transmission delay difference between data packets includes the round-trip time of data packet transmission; determining the first transmission rate of the data packet according to the transmission delay difference between data packets and a preset jitter factor, the preset jitter factor characterizing the degree of network congestion; when the round-trip time of the data packet transmitted at the first transmission rate is greater than the first preset threshold, based on the loss rate of the data packet and the round-trip time of the data packet transmission, according to a preset rate control algorithm, determining the second transmission rate of the data packet; transmitting the data packet at the second transmission rate. According to the embodiment of the present application, the transmission rate can be limited by the jitter factor without sudden changes, thereby reducing the data packet loss rate and improving the stability of network performance.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application belongs to the field of transmission technology, and in particular, relates to a data transmission control method, device, equipment and computer storage medium. Background Art

[0002] With the development of Internet technology, multimedia services are growing day by day, and users are paying more and more attention to the rate and quality of business data transmission in the network. Therefore, how to effectively control congestion when network congestion occurs has become an urgent problem to be solved in the data transmission process.

[0003] In the prior art, the transmission interval of the key frames of the video stream is mainly set, the timed I frame data packets are discarded, and then the code stream is adjusted by counting the number of sent packets and received packets at both ends of the transmission, thereby adjusting the transmission rate. However, the above method has the problem of causing end-side data packet loss when the transmission rate is adjusted by a large amplitude, resulting in a high data packet loss rate and low network performance stability. Summary of the invention

[0004] The embodiments of the present application provide a data transmission control method, device, equipment and computer storage medium, which can solve the problems of high data packet loss rate and low network performance stability during data transmission in the prior art.

[0005] In a first aspect, an embodiment of the present application provides a data transmission control method, the method comprising:

[0006] Obtaining a data packet loss rate and a transmission delay difference between data packets, wherein the transmission delay difference between the data packets includes a round-trip time for data packet transmission;

[0007] Determining a first transmission rate of the data packet according to the transmission delay difference between the data packets and a preset jitter factor, wherein the preset jitter factor represents a degree of network congestion;

[0008] When the round-trip time of the data packet transmitted at the first transmission rate is greater than a first preset threshold, determining a second transmission rate of the data packet according to a preset rate control algorithm based on the loss rate of the data packet and the round-trip time of the data packet transmission;

[0009] The data packet is transmitted at the second transmission rate.

[0010] In an optional implementation, when the round-trip time of the data packet transmitted at the first transmission rate is greater than a first preset threshold, determining the second transmission rate of the data packet according to a preset rate control algorithm based on the loss rate of the data packet and the round-trip time of the data packet transmission includes:

[0011] When the round-trip time of a data packet transmitted at the first transmission rate is greater than a first preset threshold, calculating the delay jitter amplitude change rate of adjacent data packets according to the transmission delay difference between the data packets;

[0012] Performing weighted processing on the preset rate control algorithm according to the delay jitter amplitude change rate to obtain a rate constraint algorithm;

[0013] Based on the loss rate of the data packet and the round trip time of the data packet transmission, a second transmission rate of the data packet is determined according to the rate constraint algorithm.

[0014] In an optional implementation, before determining the first transmission rate of the data packet according to the transmission delay difference between the data packets and the preset jitter factor, the method further includes:

[0015] The preset jitter factor is determined according to the transmission delay difference between the data packets using a weighted average algorithm.

[0016] In an optional implementation, when the round-trip time of the data packet transmitted at the first transmission rate is greater than a first preset threshold, determining the second transmission rate of the data packet according to a preset rate control algorithm based on the loss rate of the data packet and the round-trip time of the data packet transmission includes:

[0017] When the round-trip time of the data packet transmitted at the first transmission rate is greater than a first preset threshold, determining a third transmission rate of the data packet according to a preset rate control algorithm based on the loss rate of the data packet and the round-trip time of the data packet transmission;

[0018] In a case where the third transmission adjustment rate is greater than the first transmission rate, adjusting the third transmission rate to a target transmission rate, wherein the target transmission rate is less than the first transmission rate;

[0019] The target transmission rate is determined to be the second transmission rate.

[0020] In an optional embodiment, the method further includes:

[0021] When the round-trip time of a data packet transmitted at the first transmission rate is less than the first preset threshold, the data packet is transmitted at the first transmission rate.

[0022] In a second aspect, an embodiment of the present application provides a data transmission control device, the data transmission control device comprising:

[0023] An acquisition module, used to acquire a data packet loss rate and a transmission delay difference between data packets, wherein the transmission delay difference between the data packets includes a round-trip time of data packet transmission;

[0024] A determination module, configured to determine a first transmission rate of the data packet according to a transmission delay difference between the data packets and a preset jitter factor, wherein the preset jitter factor represents a degree of network congestion;

[0025] The determining module is further configured to determine a second transmission rate of the data packet according to a preset rate control algorithm based on a loss rate of the data packet and the round-trip time of the data packet transmission when the round-trip time of the data packet transmission at the first transmission rate is greater than a first preset threshold;

[0026] A transmission module is used to transmit the data packet at the second transmission rate.

[0027] In an optional embodiment, the device further includes a computing module and a processing module;

[0028] The calculation module is used to calculate the delay jitter amplitude change rate of adjacent data packets according to the transmission delay difference between the data packets when the round-trip time of the data packet transmitted at the first transmission rate is greater than a first preset threshold;

[0029] The processing module is used to perform weighted processing on the preset rate control algorithm according to the delay jitter amplitude change rate to obtain a rate constraint algorithm;

[0030] The determination module is further configured to determine a second transmission rate of the data packet based on the loss rate of the data packet and the round trip time of the data packet transmission according to the rate constraint algorithm.

[0031] In an optional embodiment, the determination module is further used to determine the preset jitter factor based on the transmission delay difference between the data packets by using a weighted average algorithm before determining the first transmission rate of the data packets based on the transmission delay difference between the data packets and the preset jitter factor.

[0032] In an optional embodiment, the device further includes an adjustment module;

[0033] The determining module is further configured to determine a third transmission rate of the data packet according to a preset rate control algorithm based on a loss rate of the data packet and the round-trip time of the data packet transmission when the round-trip time of the data packet transmission at the first transmission rate is greater than a first preset threshold;

[0034] The adjustment module is further configured to adjust the third transmission rate to a target transmission rate when the third transmission adjustment rate is greater than the first transmission rate, and the target transmission rate is less than the first transmission rate;

[0035] The determination module is further configured to determine that the target transmission rate is the second transmission rate.

[0036] In an optional implementation, the transmission module is further configured to transmit the data packet at the first transmission rate when a round-trip time of the data packet transmitted at the first transmission rate is less than the first preset threshold.

[0037] In a third aspect, an embodiment of the present application provides an electronic device, the electronic device comprising: a processor and a memory storing computer program instructions;

[0038] When the processor executes the computer program instructions, the data transmission control method as described in any one of the embodiments of the first aspect is implemented.

[0039] In a fourth aspect, an embodiment of the present application provides a computer storage medium having computer program instructions stored thereon, and when the computer program instructions are executed by a processor, a data transmission control method as described in any one of the embodiments of the first aspect is implemented.

[0040] The data transmission control method, device, equipment and computer storage medium of the embodiment of the present application obtain the data packet loss rate and the transmission delay difference between the data packets, and determine the first transmission rate of the data packet according to the transmission delay difference between the data packets and the preset jitter factor, and then determine the second transmission rate of the data packet according to the preset rate control algorithm when the round-trip time of the data packet transmitted at the first transmission rate is greater than the first preset threshold, so as to transmit the data packet at the second transmission rate. In this way, the transmission rate will not change suddenly under the limitation of the jitter factor, thereby reducing the data packet loss rate and improving the stability of network performance. BRIEF DESCRIPTION OF THE DRAWINGS

[0041] In order to more clearly illustrate the technical solution of the embodiments of the present application, the following is a brief introduction to the drawings required for use in the embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.

[0042] Figure 1 It is a flowchart of a data transmission control method provided by an embodiment of the present application;

[0043] Figure 2 This is a schematic diagram of the TFRC protocol process framework provided by an embodiment of the present application;

[0044] Figure 3 This is a schematic diagram of the TFRC protocol operation process provided by an embodiment of the present application;

[0045] Figure 4is a structural schematic diagram of a data transmission control device provided by an embodiment of the present application;

[0046] Figure 5 It is a schematic diagram of the structure of an electronic device provided by an embodiment of the present application. DETAILED DESCRIPTION

[0047] The features and exemplary embodiments of various aspects of the present application will be described in detail below. In order to make the purpose, technical solutions and advantages of the present application clearer, the present application will be further described in detail below in conjunction with the accompanying drawings and specific embodiments. It should be understood that the specific embodiments described herein are only intended to explain the present application, rather than to limit the present application. For those skilled in the art, the present application can be implemented without the need for some of these specific details. The following description of the embodiments is only to provide a better understanding of the present application by illustrating the examples of the present application.

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

[0049] As described in the background technology, the prior art has the problems of high packet loss rate and low network performance stability during data transmission. In order to solve the above problems, the embodiments of the present application provide a data transmission control method, device, equipment and computer storage medium. The data transmission control method obtains the loss rate of the data packet and the transmission delay difference between the data packets, and determines the first transmission rate of the data packet according to the transmission delay difference between the data packets and the preset jitter factor, and then determines the second transmission rate of the data packet according to the preset rate control algorithm when the round-trip time of the data packet transmitted at the first transmission rate is greater than the first preset threshold, so as to transmit the data packet at the second transmission rate, thereby avoiding sudden changes in the transmission rate, causing the data packet loss rate to increase and reduce the problem of improving the stability of network performance. The following first introduces the station data transmission control method provided in the embodiment of the present application.

[0050] Figure 1A flow chart of a data transmission control method provided by an embodiment of the present application is shown.

[0051] like Figure 1 As shown, the data transmission control method may specifically include the following steps:

[0052] S110, obtaining a data packet loss rate and a transmission delay difference between data packets, where the transmission delay difference between data packets includes a round-trip time for data packet transmission.

[0053] The data packets may be audio or video data streams. Congestion or poor link quality may lead to data packet loss. The transmission delay difference between data packets may be obtained by detecting the transmission delay between the terminal and the network device.

[0054] S120, determining a first transmission rate of the data packets according to a transmission delay difference between the data packets and a preset jitter factor, wherein the preset jitter factor represents a degree of network congestion.

[0055] The transmission delay difference between data packets can be the difference between the round-trip transmission time of the previous moment and the next moment, and the difference between the transmission delay difference between the previous moment and the next moment of the data packet can be used to characterize the real-time delay jitter of the data packet transmission. The preset jitter factor can be obtained by setting the jitter factor according to the real-time delay jitter of the data packet transmission. The first transmission rate can be the transmission rate of the data packet in the slow start phase, wherein the slow start phase can be the data transmission control phase when no congestion occurs in the link. By increasing the preset jitter factor, the network transmission environment can be monitored in real time, and the changes in bandwidth resources will be reflected through the preset jitter factor, and the rate increase can be limited in advance in the slow start phase.

[0056] In a specific example, based on the TFRC protocol process framework, the transmission control process is divided into two stages: slow start and congestion control. The slow start stage is the data transmission control stage when there is no congestion in the link, and the congestion control stage is the control stage after packet loss occurs in the transmission. In the slow start stage, the rate adjustment amplitude is large, and the bandwidth resources are reduced due to other factors in the middle. When it is close to the receiving end, it is difficult for the TFRC protocol to adjust the transmission rate again significantly, which causes data packet loss on the end side. By increasing the jitter factor, the network transmission environment can be monitored in real time. Changes in bandwidth resources will be reflected through the jitter factor, and the rate increase amplitude can be limited in the slow start area in advance.

[0057] In an optional implementation, before the above S120, the data transmission control method may further include:

[0058] According to the transmission delay difference between data packets, a weighted average algorithm is used to determine the preset jitter factor.

[0059] For example, during the slow start phase of an audio or video data stream, the delay difference is not equal at all times. In most cases, there is a difference. Especially when the network is about to be congested, the amount of queued data increases sharply, resulting in a significant increase in the delay difference, resulting in more serious jitter. In order to monitor the jitter before congestion, a jitter delay factor ε is designed. Let the time when the i-th data packet is sent be t si , the receiving time is t ri , then the transmission delay of the i-th data packet is:

[0060] Δt i =t ri -t si

[0061] Similarly, the transmission delay of the i-1th data packet is calculated as:

[0062] Δt i-1 =t r(i-1) -t s(i-1)

[0063] The delay difference between adjacent data packets is expressed as follows:

[0064] Δt di =Δt i -Δt i-1

[0065] Generally, the greater the network congestion reflection characteristics, the greater the delay difference will be, which is used to measure the network jitter. The delay jitter calculation formula is as follows:

[0066] ΔT i =ε×Δt di +ΔT i-1 ×(1-ε)

[0067] When a large number of data streams waiting to be accessed suddenly flood into the network, the delay difference between data packets will suddenly change, and the delay jitter will suddenly increase. From the delay jitter calculation formula, we can see that the delay jitter is the weighted average of the delay difference between data packets. The jitter factor ε can be set according to the actual wireless network situation. Generally, a value of 0.2 or 0.3 is better.

[0068] Therefore, the preset jitter factor can be determined by the transmission delay difference between data packets using a weighted average algorithm. Under the limit of the jitter factor, the transmission rate in the slow start phase will not change suddenly, thus maintaining the overall network performance stable and reducing the packet loss rate.

[0069] S130, when the round trip time of the data packet transmitted at the first transmission rate is greater than a first preset threshold, based on the data packet loss rate and the round trip time of the data packet transmission, a second transmission rate of the data packet is determined according to a preset rate control algorithm.

[0070] The first preset threshold may be a network status judgment threshold set according to actual network conditions. When the round-trip time of a data packet transmitted at the first transmission rate is greater than the first preset threshold, data transmission enters the congestion control stage. The preset rate control algorithm may be a TFRC rate control algorithm. The data transmission rate in the congestion control stage, i.e., the second transmission rate, may be controlled in the TFRC rate controller according to the throughput calculation formula.

[0071] In a specific example, the reasons for packet loss are different, and the network characteristics at the time of loss are also different. When the round-trip time of a packet transmitted at the first transmission rate is greater than the network status judgment threshold, the packet is lost due to congestion, and the data transmission enters the congestion control stage. Based on the packet loss rate and the round-trip time of the packet transmission, the transmission rate of the packet in the congestion control stage is determined according to the throughput calculation formula of the TFRC congestion control protocol. The throughput calculation formula of the TFRC congestion control protocol is as follows:

[0072]

[0073] Where R is the real-time network transmission rate, p is the data packet loss rate, t is the round-trip time for data transmission, and t R is the time for a data packet to be retransmitted after a timeout, b ACK The number of retransmitted packets.

[0074] The calculation process of the above formula is implemented in the TFRC rate controller. The throughput can be calculated by calculating the delay and detecting the packet loss data, thereby realizing the rate adjustment of the data packet.

[0075] In addition, the interaction of audio and video data based on the TFRC protocol is as follows Figure 2As shown in the figure, the audio and video stream transmission control process is designed in layers and partitions. It is divided into two layers, codeword control and message control, according to the data processing flow, and divided into sending area and receiving area according to the end-to-end data flow direction. All data transmission and exchange are realized through any UDP / IP bearer network. The two areas are implemented on different terminal sides. Due to the actual physical distance, the data control processing process is independent of each other. The encoding, decoding and control processes of different areas are completed by independent modules. The original audio and video stream enters the data processing flow and is first encoded by the audio and video encoder. The process is completed on the terminal side. The encoding speed limits the encoding efficiency according to the control instructions sent by the network and is consistent with the network idle bandwidth. The encoded data is uniformly encapsulated on the network core equipment side such as routing, and the stream format is converted into the message format. The wireless network detects the real-time network environment through the wireless link transmission management protocol, and feeds back the monitoring parameters such as the packet loss rate and retransmission time to the TFRC rate controller to complete the adaptive calculation of the above formula, obtain the real-time network data transmission rate, and send it to the end-side device in the corresponding direction by the router. The device will control the adjustment of the transmission rate to complete the congestion control limit. After being controlled and processed by the router, the audio and video data packets enter the UDP / IP bearer network for transmission. Under the framework of the specified routing direction, the data packets are sent to the target terminal. The target terminal processes the data in the same way as the opposite side, but in the opposite direction. The TFRC rate controller is also configured to accept the router's evaluation parameters for the target direction network quality to calculate the receiving rate. The data packet completes RTP decapsulation in the target router device, and transmits the original data to the target terminal to complete the codeword demodulation process. The target terminal finally recognizes and completes the interaction of audio and video data.

[0076] In an optional implementation manner, the above S130 may specifically include:

[0077] When the round-trip time of a data packet transmitted at a first transmission rate is greater than a first preset threshold, calculating a delay jitter amplitude change rate of adjacent data packets according to a transmission delay difference between the data packets;

[0078] The preset rate control algorithm is weighted according to the delay jitter amplitude change rate to obtain a rate constraint algorithm;

[0079] Based on the loss rate of the data packet and the round trip time of the data packet transmission, a second transmission rate of the data packet is determined according to a rate constraint algorithm.

[0080] Among them, the delay jitter amplitude change rate can be the ratio of the difference between the delay jitter of the previous data packet and the current data packet to the previous data packet, which can be used to characterize the change in the delay jitter amplitude. The rate constraint algorithm can be obtained by weighting the delay jitter situation on the preset rate control algorithm, which can be used as a constraint condition for rate calculation to limit the transmission rate in the congestion control stage in real time, that is, the second transmission rate.

[0081] In a specific example, when the round-trip time of a data packet in the slow start phase is greater than a preset threshold, the data transmission enters the congestion control phase, and the transmission rate of the data packet in the congestion control phase is determined according to the throughput calculation formula of the TFRC congestion control protocol. In order to illustrate that the stability of the delay difference between adjacent data will also affect the transmission rate, weighting can be performed based on the throughput calculation formula to limit the upper limit of the transmission rate. The round-trip time difference between adjacent data packets can be expressed as:

[0082] Δt Ri =Δt Ri -Δt R(i-1)

[0083] Combined with formula (6), the delay jitter calculation formula is as follows:

[0084] ΔT Ri =δ×Δt Ri +Δt R(i-1) ×(1-δ)

[0085] Among them, δ is the jitter factor in the congestion control stage. Generally, 0.8 or 0.9 is more appropriate, and a better weighted value can be calculated. In order to more accurately control the situation of large amplitude changes in the congestion stage, the jitter rate of adjacent data is calculated. The calculation formula is as follows:

[0086]

[0087] Since the jitter amplitude of congestion control varies greatly, an exponential function is used to represent it:

[0088]

[0089] The exponential function of the jitter amplitude change value is weighted in the throughput calculation formula, and the delay jitter is used as a constraint condition for rate calculation to limit the real-time throughput value.

[0090] Therefore, by weighting the preset rate control algorithm according to the delay jitter amplitude change rate, a rate constraint algorithm is obtained, and based on the packet loss rate and the round-trip time of the packet transmission, the second transmission rate of the packet is determined according to the rate constraint algorithm. This can ensure that the calculated throughput is the actual effective resource space, further reduce the packet loss rate during data transmission, and improve the channel quality.

[0091] In an optional implementation, the above S130: when the round-trip time of the data packet transmitted at the first transmission rate is greater than the first preset threshold, based on the data packet loss rate and the round-trip time of the data packet transmission, according to a preset rate control algorithm, determining the second transmission rate of the data packet may further include:

[0092] When the round-trip time of the data packet transmitted at the first transmission rate is greater than a first preset threshold, determining a third transmission rate of the data packet according to a preset rate control algorithm based on the loss rate of the data packet and the round-trip time of the data packet transmission;

[0093] When the third transmission adjustment rate is greater than the first transmission rate, adjusting the third transmission rate to a target transmission rate, the target transmission rate being less than the first transmission rate;

[0094] The target transmission rate is determined to be the second transmission rate.

[0095] Among them, the third transmission rate can be the real-time transmission rate of the data packet in the congestion control phase. When the real-time transmission adjustment rate is greater than the first transmission rate in the slow start phase, the real-time transmission rate is adjusted to a target transmission rate that is less than the first transmission rate.

[0096] In a specific example, Figure 3 As shown in the TFRC protocol operation flow, during the slow start phase, the sender sends data packets at the initial sending rate. After the control end confirms the Acknowledgement character (ACK), the sender estimates the real-time network bandwidth based on the first round-trip time of the data. The sender adjusts the sending rate based on the first round-trip time. During the slow start process, the control end will continuously monitor whether there is a packet loss event in the network. If a packet loss event is found, it will enter the congestion control phase. The transmission rate after the rate adjustment in the slow start phase is used as the upper limit of the transmission rate in the congestion control phase. The control end compares the real-time sending rate with this upper limit each time, and adjusts the sending rate in combination with the throughput calculation formula to ensure that all data streams are transmitted.

[0097] Therefore, by adjusting the third transmission rate to a target transmission rate lower than the first transmission rate when the third transmission adjustment rate is higher than the first transmission rate, and using the transmission rate after rate adjustment in the slow start phase as the upper limit of the transmission rate in the congestion control phase, the most efficient data transmission can be achieved in the case of congestion.

[0098] S140: Transmit the data packet at a second transmission rate.

[0099] In an optional implementation, the data transmission control method may further include:

[0100] When the round-trip time of a data packet transmitted at a first transmission rate is less than a first preset threshold, the data packet is transmitted at the first transmission rate.

[0101] In a specific example, since the slow start and congestion stages mainly rely on the packet loss to determine which stage the control process enters, congestion and link quality will cause packet loss. When congestion causes packet loss, the round-trip time of data transmission increases significantly, and there is a large delay. When the link quality decreases and the packet loss occurs due to bit errors, the channel resources are not temporarily used, so the transmission time remains unchanged, and sometimes it decreases. Therefore, the bit error situation can be confirmed by judging the change in data transmission time. In order to determine the packet loss state partition factor, two new network state judgment thresholds s are added. 1 (congestion minimum delay) and s 2 (Minimum delay for bit error), when the calculated transmission delay is greater than s 1 When s is less than s, it indicates that congestion causes packet loss, and the transmission delay is less than s 2 When it indicates the situation where the link quality causes packet loss, the calculation formula is designed as follows:

[0102] t max and t min Represent the maximum and minimum round-trip transmission delay respectively, α and β represent the actual impact factors of the two network states. Generally, the probability of congestion is high, α is set to 2 / 3, and β is set to 1 / 4, which can be reasonably set according to the actual network conditions. 1 The round trip time t i Compare, t i Greater than s 1 When the network enters the congestion control phase, the packet loss state partition factor is set to 1, otherwise it is set to 0. Only when the packet loss state partition factor is 1 does the TFRC protocol start the control process of the congestion control phase. 1 and 2 In between, the network control phase remains unchanged and the original state process is executed. Based on the original TFRC protocol, the packet loss status judgment process is added to prevent the network from entering an inappropriate control phase due to misjudgment, further affecting the data flow transmission efficiency and causing secondary congestion.

[0103] Thus, by obtaining the data packet loss rate and the transmission delay difference between data packets, and determining the first transmission rate of the data packet according to the transmission delay difference between the data packets and the preset jitter factor, and then determining the second transmission rate of the data packet according to the preset rate control algorithm when the round trip time of the data packet transmitted at the first transmission rate is greater than the first preset threshold, so that the data packet is transmitted at the second transmission rate. In this way, the transmission rate will not change suddenly under the limitation of the jitter factor, thereby reducing the data packet loss rate and improving the stability of network performance.

[0104] Figure 4FIG. 4 is a schematic diagram showing the structure of a data transmission control device 400 according to an exemplary embodiment.

[0105] like Figure 4 As shown, the data transmission control device 400 may include:

[0106] An acquisition module 401 is used to acquire a data packet loss rate and a transmission delay difference between data packets, where the transmission delay difference between data packets includes a round trip time of data packet transmission;

[0107] A determination module 402, configured to determine a first transmission rate of a data packet according to a transmission delay difference between data packets and a preset jitter factor, wherein the preset jitter factor represents a degree of network congestion;

[0108] The determination module is further configured to determine a second transmission rate of the data packet according to a preset rate control algorithm based on a loss rate of the data packet and the round trip time of the data packet transmission when the round trip time of the data packet transmission at the first transmission rate is greater than a first preset threshold;

[0109] The transmission module 403 is configured to transmit the data packet at a second transmission rate.

[0110] In an optional implementation, the apparatus 400 may further include a computing module and a processing module;

[0111] A calculation module, configured to calculate a delay jitter amplitude change rate of adjacent data packets according to a transmission delay difference between the data packets when a round-trip time of the data packets transmitted at a first transmission rate is greater than a first preset threshold;

[0112] A processing module, used for performing weighted processing on a preset rate control algorithm according to a delay jitter amplitude change rate to obtain a rate constraint algorithm;

[0113] The determination module 402 is further configured to determine a second transmission rate of the data packet based on the loss rate of the data packet and the round trip time of the data packet transmission according to a rate constraint algorithm.

[0114] In an optional embodiment, the determination module 402 is further used to determine a preset jitter factor based on the transmission delay difference between the data packets using a weighted average algorithm before determining the first transmission rate of the data packets based on the transmission delay difference between the data packets and the preset jitter factor.

[0115] In an optional implementation, the apparatus 400 may further include an adjustment module;

[0116] The determination module 402 is further configured to determine a third transmission rate of the data packet according to a preset rate control algorithm based on a loss rate of the data packet and the round trip time of the data packet transmission when the round trip time of the data packet transmission at the first transmission rate is greater than a first preset threshold;

[0117] The adjustment module is further used to adjust the third transmission rate to a target transmission rate when the third transmission adjustment rate is greater than the first transmission rate, and the target transmission rate is less than the first transmission rate;

[0118] The determination module 402 is further configured to determine that the target transmission rate is a second transmission rate.

[0119] In an optional implementation, the transmission module 403 is further configured to transmit the data packet at the first transmission rate when a round trip time of the data packet transmitted at the first transmission rate is less than a first preset threshold.

[0120] Thus, by obtaining the data packet loss rate and the transmission delay difference between data packets, and determining the first transmission rate of the data packet according to the transmission delay difference between the data packets and the preset jitter factor, and then determining the second transmission rate of the data packet according to the preset rate control algorithm when the round trip time of the data packet transmitted at the first transmission rate is greater than the first preset threshold, so that the data packet is transmitted at the second transmission rate. In this way, the transmission rate will not change suddenly under the limitation of the jitter factor, thereby reducing the data packet loss rate and improving the stability of network performance.

[0121] Figure 5 A schematic diagram of the electronic hardware structure provided in an embodiment of the present application is shown.

[0122] The electronic device may include a processor 501 and a memory 502 storing computer program instructions.

[0123] Specifically, the processor 501 may include a central processing unit (CPU), or an application specific integrated circuit (ASIC), or may be configured to implement one or more integrated circuits of the embodiments of the present application.

[0124] The memory 502 may include a large capacity memory for data or instructions. By way of example and not limitation, the memory 502 may include a hard disk drive (HDD), a floppy disk drive, a flash memory, an optical disk, a magneto-optical disk, a magnetic tape, or a universal serial bus (USB) drive or a combination of two or more of these. In appropriate cases, the memory 502 may include a removable or non-removable (or fixed) medium. In appropriate cases, the memory 502 may be inside or outside the integrated gateway disaster recovery device. In a specific embodiment, the memory 502 is a non-volatile solid-state memory.

[0125] The memory may include read-only memory (ROM), random access memory (RAM), magnetic disk storage media devices, optical storage media devices, flash memory devices, electrical, optical or other physical / tangible memory storage devices. Thus, typically, the memory includes one or more tangible (non-transitory) computer-readable storage media (e.g., memory devices) encoded with software including computer-executable instructions, and when the software is executed (e.g., by one or more processors), it is operable to perform the operations described with reference to the method according to an aspect of the present disclosure.

[0126] The processor 501 implements any one of the data transmission control methods in the above embodiments by reading and executing computer program instructions stored in the memory 502 .

[0127] In one example, the electronic device may further include a communication interface 503 and a bus 510. Figure 5 As shown, the processor 501, the memory 502, and the communication interface 503 are connected via a bus 510 and communicate with each other.

[0128] The communication interface 503 is mainly used to implement communication between various modules, devices, units and / or equipment in the embodiments of the present application.

[0129] Bus 510 includes hardware, software or both, and the parts of data transmission control device are coupled to each other. For example, but not limitation, bus may include accelerated graphics port (AGP) or other graphics bus, enhanced industrial standard architecture (EISA) bus, front side bus (FSB), hypertransport (HT) interconnection, industrial standard architecture (ISA) bus, infinite bandwidth interconnection, low pin count (LPC) bus, memory bus, micro channel architecture (MCA) bus, peripheral component interconnection (PCI) bus, PCI-Express (PCI-X) bus, serial advanced technology attachment (SATA) bus, video electronics standard association local (VLB) bus or other suitable bus or two or more of these combinations. In appropriate cases, bus 510 may include one or more buses. Although the present application embodiment describes and shows a specific bus, the application considers any suitable bus or interconnection.

[0130] The electronic device can execute the data transmission control method in the embodiment of the present application based on the data packet loss rate and the transmission delay difference between the data packets, thereby realizing the combination Figure 1 Described data transmission control method.

[0131] In addition, in combination with the data transmission control method in the above embodiment, the embodiment of the present application can provide a computer storage medium for implementation. The computer storage medium stores computer program instructions; when the computer program instructions are executed by a processor, any one of the data transmission control methods in the above embodiment is implemented.

[0132] It should be clear that the present application is not limited to the specific configuration and processing described above and shown in the figures. For the sake of simplicity, a detailed description of the known method 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, and those skilled in the art can make various changes, modifications and additions, or change the order between the steps after understanding the spirit of the present application.

[0133] The functional blocks shown in the above-described block diagram can be implemented as hardware, software, firmware or a combination thereof. When implemented in hardware, it can be, for example, an electronic circuit, an application specific integrated circuit (ASIC), appropriate firmware, a plug-in, a function card, etc. When implemented in software, the elements of the present application are programs or code segments that are used to perform the required tasks. The program or code segment can be stored in a machine-readable medium, or transmitted on a transmission medium or a communication link by a data signal carried in a carrier wave. "Machine-readable medium" can include any medium capable of storing or transmitting information. Examples of machine-readable media include electronic circuits, semiconductor memory devices, ROM, flash memory, erasable ROM (EROM), floppy disks, CD-ROMs, optical disks, hard disks, optical fiber media, radio frequency (RF) links, etc. The code segment can be downloaded via a computer network such as the Internet, an intranet, etc.

[0134] It should also be noted that the exemplary embodiments mentioned in this application describe some methods or systems based on a series of steps or devices. However, this application is not limited to the order of the above steps, that is, the steps can be performed in the order mentioned in the embodiment, or in a different order from the embodiment, or several steps can be performed simultaneously.

[0135] Aspects of the present disclosure are described above with reference to the flowchart and / or block diagram of the method, device (system) and computer program product according to the embodiment of the present disclosure. It should be understood that each box in the flowchart and / or block diagram and the combination of each box in the flowchart and / or block diagram can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device to produce a machine so that these instructions executed by the processor of the computer or other programmable data processing device enable the implementation of the function / action specified in one or more boxes of the flowchart and / or block diagram. Such a processor can be, but is not limited to, a general-purpose processor, a special-purpose processor, a special application processor, or a field programmable logic circuit. It can also be understood that each box in the block diagram and / or flowchart and the combination of boxes in the block diagram and / or flowchart can also be implemented by dedicated hardware that performs a specified function or action, or can be implemented by a combination of dedicated hardware and computer instructions.

[0136] The above is only a specific implementation of the present application. Those skilled in the art can clearly understand that for the convenience and simplicity of description, the specific working processes of the systems, modules and units described above can refer to the corresponding processes in the aforementioned method embodiments, and will not be repeated here. It should be understood that the protection scope of the present application is not limited to this. Any technician familiar with the technical field can easily think of various equivalent modifications or replacements within the technical scope disclosed in this application, and these modifications or replacements should be included in the protection scope of this application.

Claims

1. A data transmission control method, It is characterized in that include: Obtaining a data packet loss rate and a transmission delay difference between data packets, wherein the transmission delay difference between the data packets includes a round-trip time for data packet transmission; Determine a first transmission rate of the data packet according to the transmission delay difference between the data packets and a preset jitter factor, wherein the preset jitter factor represents the degree of network congestion, and the preset jitter factor is set according to a delay jitter state, and the delay jitter state is determined according to the transmission delay difference between the data packets; When the round-trip time of the data packet transmitted at the first transmission rate is greater than a first preset threshold, determining a second transmission rate of the data packet according to a preset rate control algorithm based on the loss rate of the data packet and the round-trip time of the data packet transmission; transmitting the data packet at the second transmission rate; When the round-trip time of the data packet transmitted at the first transmission rate is greater than a first preset threshold, determining the second transmission rate of the data packet according to a preset rate control algorithm based on the loss rate of the data packet and the round-trip time of the data packet transmission, comprises: When the round-trip time of a data packet transmitted at the first transmission rate is greater than a first preset threshold, calculating the delay jitter amplitude change rate of adjacent data packets according to the round-trip time difference of transmission between the data packets; The delay jitter amplitude change rate of adjacent data packets is determined by the delay jitter of adjacent data packets, and the delay jitter of adjacent data packets is calculated according to the importance of the round-trip time difference between adjacent data packets and the jitter factor in the congestion control stage. The greater the round-trip time difference between adjacent data packets, the greater the delay jitter of the adjacent data packets; Performing weighted processing on the preset rate control algorithm according to the delay jitter amplitude change rate to obtain a rate constraint algorithm; The preset rate control algorithm is calculated based on the packet loss rate and the round trip time of the packet transmission using the throughput calculation method of the TFRC congestion control protocol; Determining a third transmission rate of the data packet based on the loss rate of the data packet and the round trip time of the data packet transmission according to the rate constraint algorithm; When the third transmission rate is greater than the first transmission rate, adjusting the third transmission rate to a target transmission rate, wherein the target transmission rate is less than the first transmission rate; The target transmission rate is determined to be the second transmission rate.

2. The method according to claim 1, It is characterized in that The method further comprises: When the round-trip time of a data packet transmitted at the first transmission rate is less than the first preset threshold, the data packet is transmitted at the first transmission rate.

3. A data transmission control device, It is characterized in that The device comprises: An acquisition module, used to acquire a data packet loss rate and a transmission delay difference between data packets, wherein the transmission delay difference between the data packets includes a round-trip time of data packet transmission; A determination module, configured to determine a first transmission rate of a data packet according to a transmission delay difference between the data packets and a preset jitter factor, wherein the preset jitter factor represents a degree of network congestion, the preset jitter factor is set according to a delay jitter state, and the delay jitter state is determined according to the transmission delay difference between the data packets; The determining module is further configured to determine a second transmission rate of the data packet according to a preset rate control algorithm based on a loss rate of the data packet and the round-trip time of the data packet transmission when the round-trip time of the data packet transmission at the first transmission rate is greater than a first preset threshold; A transmission module, configured to transmit the data packet at the second transmission rate; The device also includes a calculation module, a processing module and an adjustment module; The calculation module is used to calculate the delay jitter amplitude change rate of adjacent data packets according to the round-trip time difference of transmission between the data packets when the round-trip time of the data packets transmitted at the first transmission rate is greater than a first preset threshold; The delay jitter amplitude change rate of adjacent data packets is determined by the delay jitter of adjacent data packets, and the delay jitter of adjacent data packets is calculated according to the importance of the round-trip time difference between adjacent data packets and the jitter factor in the congestion control stage. The greater the round-trip time difference between adjacent data packets, the greater the delay jitter of the adjacent data packets; The processing module is used to perform weighted processing on the preset rate control algorithm according to the delay jitter amplitude change rate to obtain a rate constraint algorithm, wherein the preset rate control algorithm is calculated based on the data packet loss rate and the round-trip time of the data packet transmission by using the throughput calculation method of the TFRC congestion control protocol; The determining module is further configured to determine a third transmission rate of the data packet based on the loss rate of the data packet and the round trip time of the data packet transmission according to the rate constraint algorithm; The adjustment module is further configured to adjust the third transmission rate to a target transmission rate when the third transmission rate is greater than the first transmission rate, and the target transmission rate is less than the first transmission rate; The determination module is further configured to determine that the target transmission rate is the second transmission rate.

4. An electronic device, It is characterized in that The device comprises: a processor, and a memory storing computer program instructions; the processor reads and executes the computer program instructions to implement the data transmission control method according to any one of claims 1-2.

5. A computer storage medium, It is characterized in that The computer storage medium stores computer program instructions, and when the computer program instructions are executed by the processor, the data transmission control method according to any one of claims 1 to 2 is implemented.

Citation Information

Patent Citations

  • Delay based congestion control protocol co-existing with TCP

    US20180145914A1

  • Congestion control method and device for data transmission

    WO2011150651A1