Nothing Special   »   [go: up one dir, main page]

CN109951398B - Data sending method and device and computer equipment - Google Patents

Data sending method and device and computer equipment Download PDF

Info

Publication number
CN109951398B
CN109951398B CN201910224187.6A CN201910224187A CN109951398B CN 109951398 B CN109951398 B CN 109951398B CN 201910224187 A CN201910224187 A CN 201910224187A CN 109951398 B CN109951398 B CN 109951398B
Authority
CN
China
Prior art keywords
data
speed reduction
rate
duration
sending
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910224187.6A
Other languages
Chinese (zh)
Other versions
CN109951398A (en
Inventor
韩庆瑞
朱文涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201910224187.6A priority Critical patent/CN109951398B/en
Publication of CN109951398A publication Critical patent/CN109951398A/en
Application granted granted Critical
Publication of CN109951398B publication Critical patent/CN109951398B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The invention discloses a data sending method, a data sending device and computer equipment, and belongs to the technical field of network communication. The embodiment of the invention detects the network transmission condition in the process of sending data at the first data sending rate, and when the change of at least one first network parameter is detected to meet the target condition, the first data sending rate can be reduced, so that at least one second network parameter which is more accurate can be obtained within the speed reduction duration in the process of sending data at the speed reduction rate, and even under the condition that the network is unstable, a more accurate third data sending rate can be obtained according to the at least one second network parameter.

Description

Data sending method and device and computer equipment
Technical Field
The present invention relates to the field of network communication technologies, and in particular, to a data transmission method, an apparatus, and a computer device.
Background
In the process of sending data through a network, because the amount of data to be transmitted in the network is too much and the network is not in time to process, the transmission performance of the network is reduced, and the phenomenon of network congestion is easy to occur.
Currently, the commonly used data transmission method is as follows: the method comprises the steps that a sending end sends data to a receiving end at a certain data sending rate, in the data sending process, the sending end calculates the packet loss rate of data sending in real time, when the packet loss rate is increased, the sending end reduces the data sending rate, when the packet loss rate is decreased, the sending end properly increases the data sending rate, and data sending continues according to the adjusted data sending rate.
Based on the data transmission method, under the condition that the network is unstable, the adjusted data transmission rate is not accurate enough, and the quality of data such as audio and video received by a receiving end is poor easily.
Disclosure of Invention
The embodiment of the invention provides a data sending method, a data sending device and computer equipment, which can solve the problem that the regulated data sending rate is not accurate enough. The technical scheme is as follows:
in one aspect, a data transmission method is provided, and the method includes:
in a first sending period, sending data according to a first data sending rate;
when detecting that the change of at least one first network parameter meets a target condition, determining a speed reduction duration according to the first data sending rate and a first data volume, wherein the at least one first network parameter is used for representing the network transmission condition when data is sent at the first data sending rate, and the first data volume is the data volume which is sent before the first sending period but does not reach the equipment where a receiving end is located;
continuing data transmission at a second data transmission rate lower than the first data transmission rate in the speed reduction duration;
acquiring at least one second network parameter within the speed reduction duration, wherein the at least one second network parameter is used for indicating a network transmission condition when data is transmitted at the second data transmission rate;
and acquiring a third data sending rate based on the at least one second network parameter, and continuing to send data at the third data sending rate in a second sending period.
In one aspect, an apparatus for transmitting data is provided, the apparatus comprising:
a first sending module, configured to send data according to a first data sending rate in a first sending period;
a determining module, configured to determine a speed reduction duration according to the first data sending rate and a first data volume when detecting that a change of at least one first network parameter meets a target condition, where the at least one first network parameter is used to indicate a network transmission condition when data is sent at the first data sending rate, and the first data volume is a data volume that has been sent before the first sending period but has not yet reached a device where a receiving end is located;
a second sending module, configured to continue to send data at a second data sending rate that is lower than the first data sending rate in the speed reduction duration;
a first obtaining module, configured to obtain at least one second network parameter in the speed reduction duration, where the at least one second network parameter is used to indicate a network transmission condition when data is sent at the second data sending rate;
and a second obtaining module, configured to obtain a third data sending rate based on the at least one second network parameter, and continue to send data at the third data sending rate in a second sending period.
In one aspect, a computer device is provided, and the computer device includes a processor and a memory, where at least one instruction is stored in the memory, and the instruction is loaded and executed by the processor to implement the operation performed by the data transmission method.
In one aspect, a computer-readable storage medium is provided, in which at least one instruction is stored, and the instruction is loaded and executed by a processor to implement the operations performed by the data transmission method.
The embodiment of the invention detects the network transmission condition in the process of sending data at the first data sending rate, and when the change of at least one first network parameter is detected to meet the target condition, the first data sending rate can be reduced, so that at least one second network parameter which is more accurate can be obtained within the speed reduction duration in the process of sending data at the speed reduction rate, and even under the condition that the network is unstable, a more accurate third data sending rate can be obtained according to the at least one second network parameter.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings needed to be used in the description of the embodiments will be briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without creative efforts.
Fig. 1 is a schematic diagram of an implementation environment of a data transmission method according to an embodiment of the present invention;
fig. 2 is a flowchart of a data transmission method according to an embodiment of the present invention;
fig. 3 is a schematic network state diagram of a data transmission method according to an embodiment of the present invention;
fig. 4 is a schematic structural diagram of a data transmission apparatus according to an embodiment of the present invention;
fig. 5 is a block diagram of a terminal 500 according to an embodiment of the present invention;
fig. 6 is a schematic structural diagram of a server 600 according to an embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
Fig. 1 is a schematic diagram of an implementation environment of a data transmission method according to an embodiment of the present invention. Referring to fig. 1, the implementation environment includes a plurality of first devices 101 and a plurality of second devices 102, where the plurality of first devices 101 are devices on the transmitting side and are configured to transmit data to the plurality of second devices 102, and the plurality of second devices 102 are devices on the receiving side and are configured to receive data transmitted by the plurality of first devices 101. The multiple 101 devices may be terminals or servers, and the multiple 102 devices may also be terminals or servers, for example, in an on-demand scenario, the multiple first devices 101 may be servers, and the multiple second devices may be terminals; in a live scene, the multiple first devices 101 may be terminals and the multiple second devices may be servers, or the multiple first devices 101 may be servers and the multiple second devices may be other terminals; in a video call scenario, the plurality of first devices may be terminals, and the plurality of second devices may be other terminals. The terminal can be an electronic device capable of accessing the server, the electronic device can be a computer, a smart phone, a tablet computer or other electronic devices, and the server can provide multimedia functions such as live broadcast or audio and video play for users.
Fig. 2 is a flowchart of a data transmission method according to an embodiment of the present invention. Referring to fig. 2, the embodiment includes:
201. and in the first sending period, the first equipment sends data according to the first data sending rate.
In the embodiment of the present invention, the first sending period may be any duration, for example, the first sending period may be 5 seconds. The first data sending rate is an initial rate at which the first device sends data to the second device in the first sending period, and the first data sending rate may be any rate preset by the first device.
It should be noted that, the first device sends data to the second device in the form of data packets, each data packet may contain any data amount, and the embodiment of the present invention does not limit the data amount of each data packet here.
202. When the first device detects that the change of at least one first network parameter meets the target condition, the first device determines a speed reduction coefficient according to the first data sending rate and the first data volume.
In this embodiment of the present invention, the at least one first network parameter is used to indicate a network transmission condition when data is transmitted at a first data transmission rate, for example, the at least one first network parameter may be a packet loss rate in each first time period in a first transmission period, and the at least one first network parameter may also be an acknowledgement response delay of each data packet transmitted by the first device in the first transmission period, where the acknowledgement response delay is a time period from a time point when the first device transmits one data packet to a time point when the first device receives an acknowledgement response returned from the second device. The at least one network parameter may also be a real-time bandwidth during data transmission at the first data transmission rate, and the at least one network parameter is not limited in this embodiment of the present invention. The target condition is used to measure the at least one first network parameter to trigger the first device to determine a slowdown factor, the first data amount being a data amount that has been sent before the first sending period but has not yet arrived at the second device, the slowdown factor being used to slow down the first data sending rate.
Taking the at least one network parameter as the packet loss rate in each first time duration in the first transmission period as an example, the process of determining the speed reduction coefficient by the first device may include the following steps 202A to 202C:
202A: and the first equipment detects the packet loss rate in each first time length in real time in the first sending period.
In some embodiments, the first device may detect, in real time, a total data packet amount sent in each first time period from data transmission at the first data transmission rate, the first device may detect, in real time, a number of received acknowledgement responses returned by the second device, the first device may calculate a numerical difference between the total data packet amount in each first time period and the number of the acknowledgement responses, and further, the first device may use a ratio of the numerical difference to the total data packet amount as a packet loss rate in each first time period.
202B: when the packet loss rate detected last time is different from the packet loss rate detected last time, the first device enters a network checking state, and determines the first data volume.
The network check state is an unstable network transmission state, the first device may perform speed reduction processing on the first data sending rate based on the network check state to alleviate the unstable network transmission state, and then the first device may obtain corresponding network parameters in the network check state to further process the data sending rate.
In some embodiments, taking the first duration as 1 second as an example, if the first device detects that the packet loss rate is 1% at 1 st second in the first sending period, if the first device detects that the packet loss rate is 1% at 2 nd second in the first sending period, and if the first device detects that the packet loss rate is 2% at 3 rd second in the first sending period, the first device immediately enters the network checking state at 4 th second in the first sending period. In the network check state, the first device may determine a first total data amount that has been sent to the second device before the first sending period, a first number of acknowledgement responses that have been received back by the second device before the first sending period, and a first packet loss data amount that has been determined by the first device before the first sending period, and the first device may use a difference between the first total data amount and the first number of acknowledgement responses and the first packet loss data amount as the first data amount.
In some embodiments, according to Google BBR algorithm (Google congestion control algorithm), during the data transmission process of the first device at the first data transmission rate, the first device may switch between four states, i.e., a STARTUP state (dynamic state), a DRAIN state (drainage state), a PROBE _ BW state (stable state), and a PROBE _ RTT state (probing state), according to the bandwidth value obtained in real time and the acknowledgement response delay of each data packet, as shown in fig. 3, after the first device enters the PROBE _ BW state, if the first device determines that the packet loss rate detected last time is different from the packet loss rate detected last time, the first device may switch from the PROBE _ BW state to a CHECK _ BW state, and further, in the network CHECK state, according to the first total packet loss amount, the first number of acknowledgement responses, and the first number of packet loss amounts determined before the first transmission period, the first amount of data is determined.
202C: and the first equipment calculates the speed reduction coefficient based on the first data sending rate and the first data quantity in the network checking state.
In some embodiments, the first device may calculate the deceleration factor according to the following equation:
k=flight1/(a×BDP1)
where k is the deceleration coefficient, flight1For the first data volume, BDP1For the first data transmission rate, a is any positive integer, for example, a may be 2, and of course, the first device may also calculate the speed reduction coefficient by other manners, which is not limited herein.
The above steps 202A to 202C are a process in which the first device determines the speed reduction coefficient when the first device detects that the packet loss rate changes in each first duration in the first transmission period, based on the process, the first device may determine that the network transmission is unstable according to the change of the packet loss rate, and further, the first device may switch to the network check state to determine the speed reduction coefficient, so that the subsequent first device reduces the data transmission rate, thereby alleviating instability of network transmission, and facilitating solution of the network congestion phenomenon.
In other embodiments, the first device may further determine whether the three first network parameters change according to any combination of the three first network parameters, i.e., the packet loss rate, the acknowledgement response delay, and the bandwidth, so as to determine the speed reduction coefficient. As an example, when the first device detects a change in any of the three first network parameters, the first device determines a slowdown factor. As an example, when the first device detects a change in any two of the three first network parameters, the first device determines a slowdown factor. As an example, the first device determines the slowdown factor when a change in all three first network parameters is first detected. The embodiment of the present invention does not limit the combination manner of the three first network parameters.
It should be noted that, in step 202, the first device determines the speed reduction factor according to the first data transmission rate and the first data amount when the first device detects that the change of the at least one first network parameter meets the target condition. In other embodiments, if the first device does not detect that the change of the at least one first network parameter meets the target condition within the target duration, the first device may determine the speed reduction factor according to the first data sending rate and the first data amount at intervals of the detection interval duration, that is, the first device may enter the network checking state at intervals of the detection interval duration to continue to perform the following steps 203 to 211.
203. And the first equipment acquires the speed reduction duration according to the speed reduction coefficient and the first packet loss rate.
In this embodiment of the present invention, the first packet loss rate is based on the packet loss rate within the first time period detected in the last time in step 202A, and the speed reduction duration is a time period for the first device to perform data transmission at the data transmission rate reduced according to the speed reduction coefficient.
In some embodiments, the first device may calculate the duration of the deceleration according to the following equation:
T=b+c/k+d*(e-f)
wherein T is the duration of the speed reduction, k is the speed reduction coefficient, e is the first packet loss rate, b, c, and d are any positive integers, and f is a positive number smaller than 1. As an example, b may take 200, c may take 100, d may take 10000, and f may take 0.15. In other embodiments, the first device may also calculate the speed reduction duration in other manners, which is not limited herein.
The above steps 202 to 203 are processes of obtaining the speed reduction duration by the first device, and through the processes, the first device may predict a process that the first device needs to perform speed reduction transmission on data according to the first packet loss rate, so that the purpose of relieving network congestion may be achieved within a proper time. In other embodiments, the first device may further obtain the speed reduction duration in other manners, for example, the first device may further obtain a current average packet loss rate, and the first device may obtain the speed reduction duration according to the current average packet loss rate and the speed reduction coefficient.
204. The first device takes the ratio of the first data sending rate to the speed reduction coefficient as the second data sending rate.
In some embodiments, the first device may be according to the formula BDP2=BDP1K, calculating the second data transmission rate, wherein BDP2For the second data transmission rate, BDP1K is the rate reduction factor for the first data transmission rate.
It should be noted that, in the above steps 202 to 204, the first device determines the speed reduction coefficient, and then obtains the speed reduction duration, and then obtains the second data transmission rate, in other embodiments, after determining the speed reduction coefficient, the first device may also obtain the second data transmission rate, and then obtain the speed reduction duration. In some embodiments, the first device may further obtain the speed reduction duration and the second data sending rate at the same time, and the order of obtaining the speed reduction duration and the second data sending rate by the first device is not limited in this embodiment of the present invention.
205. And the first equipment continues to transmit data according to the second data transmission rate within the speed reduction duration.
It should be noted that before the first device obtains the second data sending rate, the first device always sends data at the first data sending rate, that is, after the first device detects that the change of the at least one first network parameter meets the target condition and enters the network check state, in the process that the first device determines the speed reduction coefficient, the speed reduction duration and the second data sending rate based on steps 202 to 204, the first device still sends data at the first data sending rate, and after the first device obtains the second data sending rate, the first device always sends data to the second device at the second data sending rate within the speed reduction duration.
Based on the above step 202 and step 205, the first device may determine the speed reduction duration and the second data transmission rate, so as to perform data transmission within the speed reduction duration according to the second data transmission rate, and based on this process, the first device may perform data transmission to the second device at a lower data transmission rate within the speed reduction duration, so that the first device may obtain a more accurate network parameter during the data transmission process at a low speed, so that the first device may readjust the data transmission rate of the first device according to the more accurate network parameter, thereby achieving the purpose of relieving network congestion.
206. And the first equipment acquires the average packet loss rate in the speed reduction duration according to the second packet loss rate of each target number of data packets in the speed reduction duration.
In this embodiment of the present invention, the second packet loss rate is a packet loss rate of the first device for performing data transmission at the second data transmission rate, the average packet loss rate is a second network parameter within the speed reduction duration, and the second network parameter is used to indicate a network transmission condition when performing data transmission at the second data transmission rate.
In some embodiments, the process of the first device obtaining the average packet loss rate in the speed reduction duration may include the following steps 206A to 206B:
206A: and in the process that the first equipment transmits data at a second data transmission rate, the first equipment detects a second packet loss rate of each target number of data packets in the speed reduction duration in real time.
The target number may be any number preset by the first device, and for example, the target number may be 10.
In some embodiments, the first device may determine a first time point at which the first data packet is sent at the second data sending rate, and from the first time point, the first device determines, for each target number of data packets sent by the first device, a packet loss number in the target number of data packets, the first device may obtain a second packet loss rate of the target number of data packets according to the packet loss number and the target number, when the first device detects that a duration between the second time point and the first time point is the reduced speed duration, the first device may end a process of obtaining the second packet loss rate, and the first device may determine each second packet loss rate that has been obtained between the first time point and the second time point.
In this step 206A, the first device may detect the second packet loss rate of the data packets of each target number in the speed reduction duration in real time, in other embodiments, the first device may also detect the second packet loss rate of the data packets of each second duration in the speed reduction duration in real time, which is not limited in this embodiment of the present invention.
206B: and the first device takes the average value of the plurality of second packet loss rates detected in the speed reduction duration as the average packet loss rate in the speed reduction duration.
The above-mentioned steps 206A to 206B are a process of obtaining, by the first device, the average packet loss rate within the speed reduction duration, based on which the first device can more accurately obtain the network transmission condition within the speed reduction duration, and the first device can adjust the subsequent data sending rate in time according to the average packet loss rate, so that the first device can adjust the data sending rate to a more accurate value according to the network transmission condition, thereby improving the data receiving quality of the second device.
The step 206 is a process of acquiring, by the first device, the second network parameter, which is the average packet loss rate in the speed reduction duration, according to the second packet loss rate of each target number of data packets in the speed reduction duration. In other embodiments, the first device may further obtain the average packet loss rate in the speed reduction duration in other manners, for example, the first device may determine the number of all data packets sent in the speed reduction duration, the first device may determine the number of all packet losses in the speed reduction duration, and the first device may obtain the average packet loss rate in the speed reduction duration according to a ratio of the number of all packet losses in the speed reduction duration to the number of all data packets sent in the speed reduction duration. In other embodiments, the first device may further obtain other second network parameters within the speed reduction duration, which is not limited herein.
207. And the first equipment acquires the acknowledgement response time delay of each data packet sent within the speed reduction duration.
In some embodiments, taking the example that the first device sends any one of the data packets within the speed reduction duration as an example, the process of the first device obtaining the acknowledgement response delay of the any one of the data packets within the speed reduction duration may be as follows: the first device may determine a third time point at which the transmission of the any one packet is started within the speed reduction duration, and if the first device receives an acknowledgement response sent by the second device that the any one packet has been received, the first device may determine a fourth time point at which the acknowledgement response is received, and the first device may use a time period between the third time point and the fourth time point as an acknowledgement response delay for the transmission of the any one packet within the speed reduction duration. Similarly, the first device may obtain the acknowledgement response delay of each data packet sent within the speed reduction duration, which is not described in detail herein.
208. And the first equipment acquires the jitter value in the speed reduction duration based on the minimum acknowledgement response time delay and the average acknowledgement response time delay in the speed reduction duration.
In this embodiment of the present invention, the jitter value in the speed-down duration is another second network parameter in the speed-down duration, and the jitter value in the speed-down duration is used to indicate a variation degree of the acknowledgment response delay of each data packet sent by the first device in the speed-down duration.
In some embodiments, the process of the first device obtaining the jitter value within the speed-down duration may include the following steps 208A to 208C:
208A: and the first equipment determines the minimum acknowledgement response time delay in the speed reduction duration from the acquired acknowledgement response time delays of all the data packets sent in the speed reduction duration.
208B: and the first equipment calculates the average value of the acknowledgement response time delay of each data packet sent in the speed reduction duration to obtain the average acknowledgement response time delay in the speed reduction duration.
208C, the ratio of (2): the first device calculates a jitter value for the speed-down duration based on a ratio of the average acknowledgment response delay to the minimum acknowledgment response delay.
In some embodiments, the formula for the first device to calculate the jitter value for the duration of the deceleration may be as follows:
Jitter=pow(mea_avg_rtt/mea_min_rtt,n)
where Jitter is the Jitter value in the deceleration duration, mea _ avg _ rtt is the average ack response delay in the deceleration duration, mea _ min _ rtt is the minimum ack response delay in the deceleration duration, n is an index, and n may be 1.3 as an example. In other embodiments, the first device may also calculate the jitter value in the speed reduction duration in other manners, which is not limited herein.
In the process of obtaining the jitter value in the speed reduction duration for the first device in steps 207 to 208, based on the jitter value, the first device may obtain the variation degree of the acknowledgement response delay in the speed reduction duration, so that the first device may more accurately obtain the network transmission condition in the speed reduction duration, and the first device may adjust the subsequent data sending rate in time according to the jitter value, so that when the network has jitter, the first device may also adjust the data sending rate to a more accurate value, thereby improving the data receiving quality of the second device.
209. The first device obtains a maximum bandwidth value and a second data amount within the speed reduction duration.
In this embodiment of the present invention, the maximum bandwidth value is a maximum bandwidth value of the first device during data transmission in the speed reduction duration, and the second data amount is a data amount that has been transmitted by the first device but has not yet reached the second device before the speed reduction duration.
In some embodiments, the process of the first device obtaining the maximum bandwidth value within the speed reduction duration may be as follows: the first device may calculate, from the average bandwidth values in the third time periods calculated in the reduced speed duration, a maximum value of the average bandwidth values in the third time periods as a maximum bandwidth value in the reduced speed duration. The third duration may be a fixed duration preset by the first device, and the third duration may also be a duration calculated by the first device in real time, for example, the third duration may be calculated by the following formula:
t=m×rtt0
wherein t is the third duration, rtt0The average value of the acknowledgement response delay of sending every q packets in the slowdown duration is q, which is any positive integer, and m is any positive integer, for example, m may be 10. In other embodiments, the third duration may also be obtained in other manners, and the maximum bandwidth value in the speed reduction duration may also be obtained in other manners.
In some embodiments, the process of the first device obtaining the second amount of data may be as follows: the first device may determine a second total data amount that has been sent to the second device before the speed reduction duration, a second amount of acknowledgement responses that have been received back from the second device before the speed reduction duration, and a second packet loss data amount that has been determined by the first device before the speed reduction duration, and the first device may determine, as the second data amount, a difference between the second total data amount and the second amount of acknowledgement responses and the second packet loss data amount. In other embodiments, the first device may also obtain the second data size in other manners, which is not limited herein in the embodiments of the present invention.
This step 209 is a process of obtaining, for the first device, the maximum bandwidth value and the second data size within the speed reduction duration, by which the first device may determine the maximum bandwidth value that can be reached by network transmission in the process of sending data at the second data sending rate, and may also determine the data size that has been sent but does not reach the second device, so that the first device may adjust the data sending rate in time, and based on the maximum bandwidth value and the second data size within the speed reduction duration, the first device may adjust the data sending rate to a more accurate value, so that the network congestion phenomenon may be better alleviated.
It should be noted that, in the foregoing steps 206 to 209, the first device first obtains the average packet loss rate in the speed reduction duration, then obtains the jitter value in the speed reduction duration, and then obtains the maximum bandwidth value and the second data amount in the speed reduction duration as an example, in other embodiments, the first device may also first perform steps 207 to 208, then perform step 206, and then perform step 209, or the first device may also perform steps 207 to 209 synchronously when performing step 206.
It should be noted that, when the first device performs the processes in step 202 to step 209, the first device may be in a network check state, and after the first device obtains the minimum acknowledgement response delay, the maximum bandwidth value, the average packet loss rate, the jitter value, and the second data amount, the first device may exit the network check state and continue to transmit data.
The above steps 206 to 209 are processes of acquiring, by the first device, the plurality of second network parameters within the speed reduction duration, and through the process of sending data at a reduced speed, the acquired at least one second network parameter is more accurate, and further, the first device adjusts the data sending rate based on the plurality of second network parameters, so that the data sending rate can be adjusted to a more accurate value.
210. The first device obtains the third data sending rate based on the minimum acknowledgement response delay, the maximum bandwidth value, the second data amount, the average packet loss rate, and the jitter value.
In this embodiment of the present invention, the third data transmission rate is a data transmission rate when the first device performs data transmission in the next transmission period.
In some embodiments, the first device may calculate the third data transmission rate according to the following formula:
BDP3=mea_min_rtt×max_bw(1+mea_avg_loss)-flight2/Jitter
wherein, BDP3For the third data transmission rate, mea _ min _ rtt is the minimum acknowledgement response delay in the speed reduction duration, max _ bw is the maximum bandwidth value in the speed reduction duration, mea _ avg _ loss is the average packet loss rate, flight, in the speed reduction duration2For the second data amount, Jitter is the Jitter value within the duration of the speed reduction.
Through step 210, the first device may calculate a more accurate third data sending rate by integrating parameters, such as the minimum acknowledgement response delay, the maximum bandwidth value, the average packet loss rate, the jitter value, and the second data amount before the speed reduction duration, obtained within the speed reduction duration, and as can be seen from the above formula, in the process of calculating the third data sending rate, the first device appropriately increases the data sending rate according to the average packet loss rate, and appropriately decreases the data sending rate according to the jitter value and the second data amount, so that data sending may be performed more smoothly according to the third data sending rate, and thus the network congestion phenomenon may be better solved.
It should be noted that before the first device acquires the third data transmission rate, the first device may still transmit data at the second data transmission rate until the first device acquires the third data transmission rate.
211. And the first equipment continues data transmission at the third data transmission rate in the second transmission period.
All the above-mentioned optional technical solutions can be combined arbitrarily to form the optional embodiments of the present invention, and are not described herein again.
The embodiment of the invention detects the network transmission condition in the process of sending data at the first data sending rate, and when the change of at least one first network parameter is detected to meet the target condition, the first data sending rate can be reduced, so that at least one second network parameter which is more accurate can be obtained within the speed reduction duration in the process of sending data at the speed reduction rate, and even under the condition that the network is unstable, a more accurate third data sending rate can be obtained according to the at least one second network parameter.
Fig. 4 is a schematic structural diagram of a data transmission apparatus according to an embodiment of the present invention. Referring to fig. 4, the apparatus includes: a first sending module 401, a determining module 402, a second sending module 403, a first obtaining module 404 and a second obtaining module 405.
A first sending module 401, configured to send data according to a first data sending rate in a first sending period;
a determining module 402, configured to determine a speed reduction duration according to the first data sending rate and a first data volume when detecting that a change of at least one first network parameter meets a target condition, where the at least one first network parameter is used to indicate a network transmission condition when data is sent at the first data sending rate, and the first data volume is a data volume that has been sent before the first sending period but has not yet reached a device where a receiving end is located;
a second sending module 403, configured to continue data sending at a second data sending rate that is lower than the first data sending rate in the speed reduction duration;
a first obtaining module 404, configured to obtain at least one second network parameter in the speed reduction duration, where the at least one second network parameter is used to indicate a network transmission condition when data is sent at the second data sending rate;
a second obtaining module 405, configured to obtain a third data sending rate based on the at least one second network parameter, and continue to send data at the third data sending rate in a second sending period.
In some embodiments, the determining module 402 is configured to:
determining a speed reduction coefficient according to the first data sending rate and the first data volume;
and obtaining the speed reduction duration according to the speed reduction coefficient and a first packet loss rate, wherein the first packet loss rate is the packet loss rate obtained by the last detection.
In some embodiments, the second sending module 403 is configured to:
taking the ratio of the first data sending rate to the speed reduction coefficient as the second data sending rate;
and continuing to transmit data according to the second data transmission rate within the speed reduction duration.
In some embodiments, the first obtaining module 404 includes:
a first obtaining unit, configured to obtain an average packet loss rate within the speed reduction duration according to a second packet loss rate of each target number of data packets within the speed reduction duration;
and the determining unit is used for determining the jitter value in the speed reduction duration according to the acknowledgement response time delay of each data packet sent in the speed reduction duration.
In some embodiments, the determining unit is to:
obtaining the acknowledgement response time delay of each data packet sent within the speed reduction duration;
and acquiring the jitter value in the speed reduction duration based on the minimum acknowledgement response time delay and the average acknowledgement response time delay in the speed reduction duration.
In some embodiments, the second obtaining module 405 includes:
a second obtaining unit, configured to obtain the minimum acknowledgement response delay, a maximum bandwidth value, and a second data size, where the second data size is a data size that has been sent before the speed reduction duration but has not yet reached the receiving end;
a third obtaining unit, configured to obtain the third data sending rate based on the minimum acknowledgement response delay, the maximum bandwidth value, the second data amount, the average packet loss rate, and the jitter value.
In some embodiments, the third obtaining unit is configured to:
multiplying the minimum acknowledgement response delay, the maximum bandwidth value and the sum of 1 and the average packet loss rate to obtain a first product;
and subtracting the ratio of the second data quantity to the jitter value from the first product to obtain the third data sending rate.
In some embodiments, the apparatus further comprises:
and the third acquisition module executes the processes of speed reduction and network parameter acquisition based on the sending rate in the period every detection interval duration.
It should be noted that: the data transmitting apparatus provided in the foregoing embodiment only exemplifies the division of the above functional modules when transmitting data, and in practical applications, the above function allocation may be completed by different functional modules according to needs, that is, the internal structure of the terminal is divided into different functional modules to complete all or part of the above described functions. In addition, the data sending apparatus provided in the foregoing embodiment and the data sending method embodiment belong to the same concept, and specific implementation processes thereof are described in the method embodiment and are not described herein again.
Fig. 5 is a block diagram of a terminal 500 according to an embodiment of the present invention. The terminal 500 may be: a smart phone, a tablet computer, an MP3 player (Moving Picture Experts Group Audio Layer III, motion video Experts compression standard Audio Layer 3), an MP4 player (Moving Picture Experts Group Audio Layer IV, motion video Experts compression standard Audio Layer 4), a notebook computer, or a desktop computer. Terminal 500 may also be referred to by other names such as user equipment, portable terminal, laptop terminal, desktop terminal, and the like.
In general, the terminal 500 includes: a processor 501 and a memory 502.
The processor 501 may include one or more processing cores, such as a 4-core processor, an 8-core processor, and so on. The processor 501 may be implemented in at least one hardware form of a DSP (Digital Signal Processing), an FPGA (Field-Programmable Gate Array), and a PLA (Programmable Logic Array). The processor 501 may also include a main processor and a coprocessor, where the main processor is a processor for Processing data in an awake state, and is also called a Central Processing Unit (CPU); a coprocessor is a low power processor for processing data in a standby state. In some embodiments, the processor 501 may be integrated with a GPU (Graphics Processing Unit), which is responsible for rendering and drawing the content required to be displayed on the display screen. In some embodiments, processor 501 may also include an AI (Artificial Intelligence) processor for processing computational operations related to machine learning.
Memory 502 may include one or more computer-readable storage media, which may be non-transitory. Memory 502 may also include high-speed random access memory, as well as non-volatile memory, such as one or more magnetic disk storage devices, flash memory storage devices. In some embodiments, a non-transitory computer readable storage medium in memory 502 is used to store at least one instruction for execution by processor 501 to implement the data transmission method provided by the method embodiments of the present invention.
In some embodiments, the terminal 500 may further optionally include: a peripheral interface 503 and at least one peripheral. The processor 501, memory 502 and peripheral interface 503 may be connected by a bus or signal lines. Each peripheral may be connected to the peripheral interface 503 by a bus, signal line, or circuit board. Specifically, the peripheral device includes: at least one of radio frequency circuitry 504, display screen 505, camera assembly 506, audio circuitry 507, positioning assembly 508, and power supply 509.
The peripheral interface 503 may be used to connect at least one peripheral related to I/O (Input/Output) to the processor 501 and the memory 502. In some embodiments, the processor 501, memory 502, and peripheral interface 503 are integrated on the same chip or circuit board; in some other embodiments, any one or two of the processor 501, the memory 502, and the peripheral interface 503 may be implemented on a separate chip or circuit board, which is not limited in this embodiment.
The Radio Frequency circuit 504 is used for receiving and transmitting RF (Radio Frequency) signals, also called electromagnetic signals. The radio frequency circuitry 504 communicates with communication networks and other communication devices via electromagnetic signals. The rf circuit 504 converts an electrical signal into an electromagnetic signal to transmit, or converts a received electromagnetic signal into an electrical signal. Optionally, the radio frequency circuit 504 includes: an antenna system, an RF transceiver, one or more amplifiers, a tuner, an oscillator, a digital signal processor, a codec chipset, a subscriber identity module card, and so forth. The radio frequency circuitry 504 may communicate with other terminals via at least one wireless communication protocol. The wireless communication protocols include, but are not limited to: metropolitan area networks, various generation mobile communication networks (2G, 3G, 4G, and 5G), Wireless local area networks, and/or WiFi (Wireless Fidelity) networks. In some embodiments, the rf circuit 504 may further include NFC (Near Field Communication) related circuits, which are not limited in the present disclosure.
The display screen 505 is used to display a UI (User Interface). The UI may include graphics, text, icons, video, and any combination thereof. When the display screen 505 is a touch display screen, the display screen 505 also has the ability to capture touch signals on or over the surface of the display screen 505. The touch signal may be input to the processor 501 as a control signal for processing. At this point, the display screen 505 may also be used to provide virtual buttons and/or a virtual keyboard, also referred to as soft buttons and/or a soft keyboard. In some embodiments, the display screen 505 may be one, providing the front panel of the terminal 500; in other embodiments, the display screens 505 may be at least two, respectively disposed on different surfaces of the terminal 500 or in a folded design; in still other embodiments, the display 505 may be a flexible display disposed on a curved surface or on a folded surface of the terminal 500. Even more, the display screen 505 can be arranged in a non-rectangular irregular figure, i.e. a shaped screen. The Display screen 505 may be made of LCD (Liquid Crystal Display), OLED (Organic Light-Emitting Diode), and other materials.
The camera assembly 506 is used to capture images or video. Optionally, camera assembly 506 includes a front camera and a rear camera. Generally, a front camera is disposed at a front panel of the terminal, and a rear camera is disposed at a rear surface of the terminal. In some embodiments, the number of the rear cameras is at least two, and each rear camera is any one of a main camera, a depth-of-field camera, a wide-angle camera and a telephoto camera, so that the main camera and the depth-of-field camera are fused to realize a background blurring function, and the main camera and the wide-angle camera are fused to realize panoramic shooting and VR (Virtual Reality) shooting functions or other fusion shooting functions. In some embodiments, camera assembly 506 may also include a flash. The flash lamp can be a monochrome temperature flash lamp or a bicolor temperature flash lamp. The double-color-temperature flash lamp is a combination of a warm-light flash lamp and a cold-light flash lamp, and can be used for light compensation at different color temperatures.
Audio circuitry 507 may include a microphone and a speaker. The microphone is used for collecting sound waves of a user and the environment, converting the sound waves into electric signals, and inputting the electric signals to the processor 501 for processing, or inputting the electric signals to the radio frequency circuit 504 to realize voice communication. For the purpose of stereo sound collection or noise reduction, a plurality of microphones may be provided at different portions of the terminal 500. The microphone may also be an array microphone or an omni-directional pick-up microphone. The speaker is used to convert electrical signals from the processor 501 or the radio frequency circuit 504 into sound waves. The loudspeaker can be a traditional film loudspeaker or a piezoelectric ceramic loudspeaker. When the speaker is a piezoelectric ceramic speaker, the speaker can be used for purposes such as converting an electric signal into a sound wave audible to a human being, or converting an electric signal into a sound wave inaudible to a human being to measure a distance. In some embodiments, audio circuitry 507 may also include a headphone jack.
The positioning component 508 is used for positioning the current geographic Location of the terminal 500 for navigation or LBS (Location Based Service). The Positioning component 508 may be a Positioning component based on the united states GPS (Global Positioning System), the chinese beidou System, the russian graves System, or the european union's galileo System.
Power supply 509 is used to power the various components in terminal 500. The power source 509 may be alternating current, direct current, disposable or rechargeable. When power supply 509 includes a rechargeable battery, the rechargeable battery may support wired or wireless charging. The rechargeable battery may also be used to support fast charge technology.
In some embodiments, terminal 500 also includes one or more sensors 510. The one or more sensors 510 include, but are not limited to: acceleration sensor 511, gyro sensor 512, pressure sensor 513, fingerprint sensor 514, optical sensor 515, and proximity sensor 516.
The acceleration sensor 511 may detect the magnitude of acceleration on three coordinate axes of the coordinate system established with the terminal 500. For example, the acceleration sensor 511 may be used to detect components of the gravitational acceleration in three coordinate axes. The processor 501 may control the display screen 505 to display the user interface in a landscape view or a portrait view according to the gravitational acceleration signal collected by the acceleration sensor 511. The acceleration sensor 511 may also be used for acquisition of motion data of a game or a user.
The gyro sensor 512 may detect a body direction and a rotation angle of the terminal 500, and the gyro sensor 512 may cooperate with the acceleration sensor 511 to acquire a 3D motion of the user on the terminal 500. The processor 501 may implement the following functions according to the data collected by the gyro sensor 512: motion sensing (such as changing the UI according to a user's tilting operation), image stabilization at the time of photographing, game control, and inertial navigation.
The pressure sensor 513 may be disposed on a side frame of the terminal 500 and/or underneath the display screen 505. When the pressure sensor 513 is disposed on the side frame of the terminal 500, a user's holding signal of the terminal 500 may be detected, and the processor 501 performs left-right hand recognition or shortcut operation according to the holding signal collected by the pressure sensor 513. When the pressure sensor 513 is disposed at the lower layer of the display screen 505, the processor 501 controls the operability control on the UI interface according to the pressure operation of the user on the display screen 505. The operability control comprises at least one of a button control, a scroll bar control, an icon control and a menu control.
The fingerprint sensor 514 is used for collecting a fingerprint of the user, and the processor 501 identifies the identity of the user according to the fingerprint collected by the fingerprint sensor 514, or the fingerprint sensor 514 identifies the identity of the user according to the collected fingerprint. Upon recognizing that the user's identity is a trusted identity, the processor 501 authorizes the user to perform relevant sensitive operations including unlocking the screen, viewing encrypted information, downloading software, paying, and changing settings, etc. The fingerprint sensor 514 may be provided on the front, back, or side of the terminal 500. When a physical button or a vendor Logo is provided on the terminal 500, the fingerprint sensor 514 may be integrated with the physical button or the vendor Logo.
The optical sensor 515 is used to collect the ambient light intensity. In one embodiment, the processor 501 may control the display brightness of the display screen 505 based on the ambient light intensity collected by the optical sensor 515. Specifically, when the ambient light intensity is high, the display brightness of the display screen 505 is increased; when the ambient light intensity is low, the display brightness of the display screen 505 is reduced. In another embodiment, processor 501 may also dynamically adjust the shooting parameters of camera head assembly 506 based on the ambient light intensity collected by optical sensor 515.
A proximity sensor 516, also referred to as a distance sensor, is typically disposed on the front panel of the terminal 500. The proximity sensor 516 is used to collect the distance between the user and the front surface of the terminal 500. In one embodiment, when the proximity sensor 516 detects that the distance between the user and the front surface of the terminal 500 gradually decreases, the processor 501 controls the display screen 505 to switch from the bright screen state to the dark screen state; when the proximity sensor 516 detects that the distance between the user and the front surface of the terminal 500 becomes gradually larger, the display screen 505 is controlled by the processor 501 to switch from the breath screen state to the bright screen state.
Those skilled in the art will appreciate that the configuration shown in fig. 5 is not intended to be limiting of terminal 500 and may include more or fewer components than those shown, or some components may be combined, or a different arrangement of components may be used.
Fig. 6 is a schematic structural diagram of a server 600 according to an embodiment of the present invention, where the server 600 may generate relatively large differences due to different configurations or performances, and may include one or more CPUs (central processing units) 601 and one or more memories 602, where at least one instruction is stored in the memory 602, and the at least one instruction is loaded and executed by the processor 601 to implement the data transmission method provided by each method embodiment. Of course, the server may also have components such as a wired or wireless network interface, a keyboard, and an input/output interface, so as to perform input/output, and the server may also include other components for implementing the functions of the device, which are not described herein again.
In an exemplary embodiment, a computer-readable storage medium, such as a memory, including instructions executable by a processor in a terminal to perform the data transmission method in the above-described embodiments is also provided. For example, the computer-readable storage medium may be a ROM (Read-Only Memory), a RAM (Random Access Memory), a CD-ROM (Compact Disc Read-Only Memory), a Read-Only optical Disc, a magnetic tape, a floppy Disc, an optical data storage device, and the like.
It will be understood by those skilled in the art that all or part of the steps for implementing the above embodiments may be implemented by hardware, or may be implemented by a program instructing relevant hardware, where the program may be stored in a computer-readable storage medium, and the above-mentioned storage medium may be a read-only memory, a magnetic disk or an optical disk, etc.
The above description is only exemplary of the present invention and should not be taken as limiting the invention, as any modification, equivalent replacement, or improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

Claims (10)

1. A method for transmitting data, the method comprising:
in a first sending period, sending data according to a first data sending rate;
when detecting that the change of at least one first network parameter meets a target condition, determining a speed reduction duration according to the first data sending rate and a first data volume, wherein the at least one first network parameter is used for representing the network transmission condition when data is sent at the first data sending rate, and the first data volume is the data volume which is sent before the first sending period but does not reach the equipment where a receiving end is located;
continuing data transmission at a second data transmission rate lower than the first data transmission rate in the speed reduction duration;
acquiring at least one second network parameter within the speed reduction duration, wherein the at least one second network parameter is used for indicating a network transmission condition when data is transmitted at the second data transmission rate;
and acquiring a third data sending rate based on the at least one second network parameter, and continuing to send data at the third data sending rate in a second sending period.
2. The method of claim 1, wherein determining the duration of the slowdown according to the first data transmission rate and the first amount of data comprises:
determining a speed reduction coefficient according to the first data sending rate and the first data volume;
and obtaining the speed reduction duration according to the speed reduction coefficient and a first packet loss rate, wherein the first packet loss rate is the packet loss rate obtained by the last detection.
3. The method of claim 2, wherein the continuing data transmission at a second data transmission rate that is lower than the first data transmission rate for the duration of the reduced speed comprises:
taking the ratio of the first data sending rate to the speed reduction coefficient as the second data sending rate;
and continuing to transmit data according to the second data transmission rate within the speed reduction duration.
4. The method of claim 1, wherein obtaining at least one second network parameter within the speed reduction duration comprises:
acquiring the average packet loss rate in the speed reduction duration according to the second packet loss rate of each target number of data packets in the speed reduction duration;
and determining the jitter value in the speed reduction duration according to the acknowledgement response time delay of each data packet sent in the speed reduction duration.
5. The method of claim 4, wherein determining the jitter value for the duration of the slowdown based on the ACK response delays of the packets sent for the duration of the slowdown comprises:
obtaining the acknowledgement response time delay of each data packet sent within the speed reduction duration;
and acquiring the jitter value in the speed reduction duration based on the minimum acknowledgement response time delay and the average acknowledgement response time delay in the speed reduction duration.
6. The method of claim 4, wherein obtaining a third data transmission rate based on the at least one second network parameter comprises:
acquiring a minimum acknowledgement response delay, a maximum bandwidth value and a second data volume, wherein the second data volume is a data volume which has been sent before the speed reduction duration but has not yet reached the device where the receiving end is located;
and acquiring the third data sending rate based on the minimum acknowledgement response time delay, the maximum bandwidth value, the second data amount, the average packet loss rate and the jitter value.
7. The method of claim 6, wherein the obtaining the third data transmission rate based on the minimum acknowledgement response delay, the maximum bandwidth value, the second data amount, the average packet loss rate, and the jitter value comprises:
multiplying the minimum acknowledgement response time delay, the maximum bandwidth value and the sum of 1 and the average packet loss rate to obtain a first product;
and subtracting the ratio of the second data quantity to the jitter value from the first product to obtain the third data sending rate.
8. The method of claim 1, further comprising:
and executing the processes of reducing the speed and acquiring the network parameters based on the sending rate in the period every detection interval duration.
9. A data transmission apparatus, characterized in that the apparatus comprises:
a first sending module, configured to send data according to a first data sending rate in a first sending period;
a determining module, configured to determine a speed reduction duration according to the first data sending rate and a first data volume when detecting that a change of at least one first network parameter meets a target condition, where the at least one first network parameter is used to indicate a network transmission condition when data is sent at the first data sending rate, and the first data volume is a data volume that has been sent before the first sending period but has not yet reached a device where a receiving end is located;
a second sending module, configured to continue to send data at a second data sending rate that is lower than the first data sending rate in the speed reduction duration;
a first obtaining module, configured to obtain at least one second network parameter in the speed reduction duration, where the at least one second network parameter is used to indicate a network transmission condition when data is sent at the second data sending rate;
and a second obtaining module, configured to obtain a third data sending rate based on the at least one second network parameter, and continue to send data at the third data sending rate in a second sending period.
10. A computer device, comprising one or more processors and one or more memories having stored therein at least one instruction, the instruction being loaded and executed by the one or more processors to implement operations performed by the data transmission method of any one of claims 1 to 8.
CN201910224187.6A 2019-03-22 2019-03-22 Data sending method and device and computer equipment Active CN109951398B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910224187.6A CN109951398B (en) 2019-03-22 2019-03-22 Data sending method and device and computer equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910224187.6A CN109951398B (en) 2019-03-22 2019-03-22 Data sending method and device and computer equipment

Publications (2)

Publication Number Publication Date
CN109951398A CN109951398A (en) 2019-06-28
CN109951398B true CN109951398B (en) 2021-09-17

Family

ID=67011334

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910224187.6A Active CN109951398B (en) 2019-03-22 2019-03-22 Data sending method and device and computer equipment

Country Status (1)

Country Link
CN (1) CN109951398B (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110401511B (en) * 2019-07-25 2021-11-12 广州市百果园信息技术有限公司 Method, device, equipment and storage medium for determining transmission rate
CN110365600B (en) * 2019-07-30 2023-02-17 广州市百果园信息技术有限公司 BBR-based congestion control method, device, equipment and storage medium
CN110620738B (en) * 2019-10-15 2022-06-24 腾讯科技(深圳)有限公司 Bandwidth allocation method, device, equipment and storage medium
CN110572333B (en) * 2019-10-25 2021-04-13 中南大学 Method for adjusting sending rate in bandwidth detection stage and method for realizing congestion control algorithm
CN111641704B (en) * 2020-05-28 2021-08-03 深圳华锐金融技术股份有限公司 Resource-related data transmission method, device, computer equipment and storage medium
CN112929704B (en) * 2021-01-26 2023-06-30 游密科技(深圳)有限公司 Data transmission method, device, electronic equipment and storage medium

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101282173A (en) * 2008-05-21 2008-10-08 华为技术有限公司 Method, system and apparatus for adjusting data package transmission velocity
CN102056242A (en) * 2009-10-28 2011-05-11 大唐移动通信设备有限公司 Method, system and equipment for controlling flow of backhaul link
CN103067432A (en) * 2011-10-21 2013-04-24 中国移动通信集团设计院有限公司 Sending method of data, sending end and communication system
US9088510B2 (en) * 2010-12-17 2015-07-21 Microsoft Technology Licensing, Llc Universal rate control mechanism with parameter adaptation for real-time communication applications
CN105450321A (en) * 2015-11-06 2016-03-30 瑞斯康达科技发展股份有限公司 Network data transmission method and device
CN106301684A (en) * 2016-08-12 2017-01-04 广州市百果园网络科技有限公司 A kind of media data transmission method and device

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101282173A (en) * 2008-05-21 2008-10-08 华为技术有限公司 Method, system and apparatus for adjusting data package transmission velocity
CN102056242A (en) * 2009-10-28 2011-05-11 大唐移动通信设备有限公司 Method, system and equipment for controlling flow of backhaul link
US9088510B2 (en) * 2010-12-17 2015-07-21 Microsoft Technology Licensing, Llc Universal rate control mechanism with parameter adaptation for real-time communication applications
CN103067432A (en) * 2011-10-21 2013-04-24 中国移动通信集团设计院有限公司 Sending method of data, sending end and communication system
CN105450321A (en) * 2015-11-06 2016-03-30 瑞斯康达科技发展股份有限公司 Network data transmission method and device
CN106301684A (en) * 2016-08-12 2017-01-04 广州市百果园网络科技有限公司 A kind of media data transmission method and device

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于Java Swing的拥塞控制算法性能研究;王国栋 等;《工业控制计算机》;20180825;第31卷(第8期);第83-85页 *
基于动态调整节点包发送速率的基站保护策略;李福龙 等;《智能计算机与应用》;20120630;第2卷(第3期);第79-83页 *

Also Published As

Publication number Publication date
CN109951398A (en) 2019-06-28

Similar Documents

Publication Publication Date Title
CN109951398B (en) Data sending method and device and computer equipment
CN111372126B (en) Video playing method, device and storage medium
CN110795236B (en) Method, device, electronic equipment and medium for adjusting capacity of server
CN110740340B (en) Video live broadcast method and device and storage medium
CN111586431B (en) Method, device and equipment for live broadcast processing and storage medium
CN111417006A (en) Video screen projection method, device, terminal and storage medium
CN110380904B (en) Bandwidth allocation method and device, electronic equipment and storage medium
CN111107389B (en) Method, device and system for determining live broadcast watching time length
CN108427630B (en) Performance information acquisition method, device, terminal and computer readable storage medium
CN111246095B (en) Method, device and equipment for controlling lens movement and storage medium
CN111083526B (en) Video transition method and device, computer equipment and storage medium
CN109635133B (en) Visual audio playing method and device, electronic equipment and storage medium
CN109451248B (en) Video data processing method and device, terminal and storage medium
CN109089137B (en) Stuck detection method and device
CN108845777B (en) Method and device for playing frame animation
CN114095437A (en) Method and device for sending data packet, electronic equipment and storage medium
CN111092991B (en) Lyric display method and device and computer storage medium
CN111106902A (en) Data message transmission method, device, equipment and computer readable storage medium
CN108401194B (en) Time stamp determination method, apparatus and computer-readable storage medium
CN110473562B (en) Audio data processing method, device and system
CN110912830A (en) Method and device for transmitting data
CN109688064B (en) Data transmission method and device, electronic equipment and storage medium
CN110113669B (en) Method and device for acquiring video data, electronic equipment and storage medium
CN110543403A (en) power consumption evaluation method and device
CN115883807A (en) Method, device, terminal, medium and product for adjusting working mode

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant