CN112953847B - Network congestion control method and device, electronic equipment and storage medium - Google Patents

Network congestion control method and device, electronic equipment and storage medium Download PDF

Info

Publication number
CN112953847B
CN112953847B CN202110113639.0A CN202110113639A CN112953847B CN 112953847 B CN112953847 B CN 112953847B CN 202110113639 A CN202110113639 A CN 202110113639A CN 112953847 B CN112953847 B CN 112953847B
Authority
CN
China
Prior art keywords
packet loss
network parameter
network
rate
determining
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
CN202110113639.0A
Other languages
Chinese (zh)
Other versions
CN112953847A (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.)
Beijing Zitiao Network Technology Co Ltd
Original Assignee
Beijing Zitiao Network Technology 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 Beijing Zitiao Network Technology Co Ltd filed Critical Beijing Zitiao Network Technology Co Ltd
Priority to CN202110113639.0A priority Critical patent/CN112953847B/en
Publication of CN112953847A publication Critical patent/CN112953847A/en
Application granted granted Critical
Publication of CN112953847B publication Critical patent/CN112953847B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/22Traffic shaping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0823Errors, e.g. transmission errors
    • H04L43/0829Packet loss

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The embodiment of the disclosure discloses a method, a device, an electronic device and a storage medium for controlling network congestion, wherein the method comprises the following steps: continuously monitoring a first network parameter corresponding to actual transmission data, and determining a packet loss type according to a trend characteristic of the first network parameter when the packet loss rate in the first network parameter meets a preset condition; and adjusting the bandwidth estimation value according to the packet loss type, and configuring the actual transmission data according to the adjusted bandwidth estimation value. By determining the packet loss type according to the trend characteristics of the network parameters and estimating the current available bandwidth according to the packet loss type, the congestion condition of the network can be accurately evaluated, the control effect of congestion control is improved, and the user experience is improved.

Description

Network congestion control method and device, electronic equipment and storage medium
Technical Field
The present disclosure relates to the field of communications technologies, and in particular, to a method and an apparatus for controlling network congestion, an electronic device, and a storage medium.
Background
In the network communication process, when the load of the network is small, the throughput of the network can linearly increase along with the increase of the load. When the network load reaches a certain level, the network throughput may be reduced, which may be referred to as a congestion phenomenon. When network congestion is severe, traffic may be trapped.
Network congestion control may be generally performed using delay-based (delay-based) congestion control algorithms and packet loss-based (loss-based) congestion control algorithms. The congestion control algorithm based on delay may be that a certain buffer area is allocated on a network route, so that a data receiver receives each data packet through the buffer area; and the data receiver judges the network congestion condition according to the time delay change of each data packet so as to control according to the congestion condition. However, for a network type with a very small buffer area on the network route, a congestion algorithm based on packet loss is usually adopted for congestion control.
In the prior art, a congestion algorithm based on packet loss may be that a data sender performs congestion control according to a network packet loss rate or a residual packet loss rate. The network packet loss rate can be understood as a packet loss rate corresponding to an original packet loss; the residual packet loss rate can be understood as a packet loss rate corresponding to the case where the packet loss is not recovered after the recovery algorithm recovers part of the packet loss.
These congestion control methods based on packet loss at least include the following technical problems: when congestion control is performed according to the network packet loss rate, if packet loss is inherent packet loss across networks between operators, and is not packet loss caused by congestion, the determined congestion situation is more serious than a real congestion situation; when congestion control is performed according to the residual packet loss rate, if packet loss caused by congestion is recovered through a recovery algorithm, the determined congestion situation is more slight than the real congestion situation. Whether the determined congestion condition is more serious or slight, the control effect of congestion control will be affected, which will greatly reduce the user experience.
Disclosure of Invention
The embodiment of the disclosure provides a method and a device for controlling network congestion, an electronic device and a storage medium, which can accurately evaluate the network congestion, improve the control effect of congestion control, and improve user experience.
In a first aspect, an embodiment of the present disclosure provides a congestion control method for a network, including:
continuously monitoring a first network parameter corresponding to actual transmission data, and determining a packet loss type according to a trend characteristic of the first network parameter when a packet loss rate in the first network parameter meets a preset condition;
and adjusting the bandwidth estimation value according to the packet loss type, and configuring the actual transmission data according to the adjusted bandwidth estimation value.
In a second aspect, an embodiment of the present disclosure further provides a congestion control apparatus for a network, including:
the type determining module is used for continuously monitoring a first network parameter corresponding to actual transmission data, and determining a packet loss type according to the trend characteristic of the first network parameter when the packet loss rate in the first network parameter meets a preset condition;
and the congestion control module is used for adjusting the bandwidth estimation value according to the packet loss type and configuring the actual transmission data according to the adjusted bandwidth estimation value.
In a third aspect, an embodiment of the present disclosure further provides an electronic device, where the electronic device includes:
one or more processors;
a storage device for storing one or more programs,
when executed by the one or more processors, cause the one or more processors to implement a method of congestion control for a network according to any one of the embodiments of the present disclosure.
In a fourth aspect, the embodiments of the present disclosure also provide a storage medium containing computer-executable instructions, which when executed by a computer processor, are used to perform the method for congestion control of a network according to any of the embodiments of the present disclosure.
According to the technical scheme of the embodiment of the disclosure, a first network parameter corresponding to actual transmission data is continuously monitored, and when the packet loss rate in the first network parameter meets a preset condition, the packet loss type is determined according to the trend characteristic of the first network parameter; and adjusting the bandwidth estimation value according to the packet loss type, and configuring the actual transmission data according to the adjusted bandwidth estimation value. By determining the packet loss type according to the trend characteristics of the network parameters and estimating the current available bandwidth according to the packet loss type, the congestion condition of the network can be accurately evaluated, the control effect of congestion control is improved, and the user experience is improved.
Drawings
The above and other features, advantages, and aspects of embodiments of the present disclosure will become more apparent by referring to the following detailed description when taken in conjunction with the accompanying drawings. Throughout the drawings, the same or similar reference numbers refer to the same or similar elements. It should be understood that the drawings are schematic and that elements and features are not necessarily drawn to scale.
Fig. 1 is a flowchart illustrating a congestion control method for a network according to an embodiment of the present disclosure;
fig. 2 is a flowchart illustrating a congestion control method for a network according to a second embodiment of the present disclosure;
fig. 3 is a schematic diagram illustrating a flow of adjusting a bandwidth estimation value in a congestion control method of a network according to a third embodiment of the present disclosure;
fig. 4a is a schematic diagram of a bandwidth evaluation value when congestion control is performed by using a congestion control method based on a residual packet loss rate when network congestion is simulated in a congestion control method of a network according to a third embodiment of the present disclosure;
fig. 4b is a schematic diagram of a transceiving rate when congestion control is performed by using a congestion control method based on a residual packet loss rate when network congestion is simulated in a congestion control method for a network according to a third embodiment of the present disclosure;
fig. 4c is a schematic diagram of round-trip delay when congestion control is performed by using a congestion control method based on a residual packet loss rate when network congestion is simulated in a congestion control method for a network according to a third embodiment of the present disclosure;
fig. 4d is a schematic diagram of a packet loss rate when congestion control is performed by using a congestion control method based on a residual packet loss rate when network congestion is simulated in a congestion control method for a network according to a third embodiment of the present disclosure;
fig. 5a is a schematic diagram of a bandwidth evaluation value for performing congestion control by using the congestion control method provided in the third embodiment of the present disclosure when network congestion is simulated in the congestion control method of a network provided in the third embodiment of the present disclosure;
fig. 5b is a schematic diagram of a transceiving rate for performing congestion control by using the congestion control method provided in the third embodiment of the present disclosure when network congestion is simulated in the congestion control method of a network provided in the third embodiment of the present disclosure;
fig. 5c is a schematic diagram of round-trip delay for performing congestion control by using the congestion control method provided in the third embodiment of the present disclosure when network congestion is simulated in the congestion control method of a network provided in the third embodiment of the present disclosure;
fig. 5d is a schematic diagram of a packet loss rate for performing congestion control by using the congestion control method provided in the third embodiment of the present disclosure when network congestion is simulated in the congestion control method of a network provided in the third embodiment of the present disclosure;
fig. 6 is a schematic structural diagram of a congestion control apparatus of a network according to a fourth embodiment of the present disclosure;
fig. 7 is a schematic structural diagram of an electronic device according to a fifth embodiment of the disclosure.
Detailed Description
Embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. While certain embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure may be embodied in various forms and should not be construed as limited to the embodiments set forth herein, but rather are provided for a more complete and thorough understanding of the present disclosure. It should be understood that the drawings and embodiments of the disclosure are for illustration purposes only and are not intended to limit the scope of the disclosure.
It should be understood that the various steps recited in method embodiments of the present disclosure may be performed in a different order, and/or performed in parallel. Moreover, method embodiments may include additional steps and/or omit performing the illustrated steps. The scope of the present disclosure is not limited in this respect.
The term "include" and variations thereof as used herein are open-ended, i.e., "including but not limited to". The term "based on" is "based, at least in part, on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". Relevant definitions for other terms will be given in the following description.
It should be noted that the terms "first", "second", and the like in the present disclosure are only used for distinguishing different devices, modules or units, and are not used for limiting the order or interdependence relationship of the functions performed by the devices, modules or units.
It is noted that references to "a" or "an" in this disclosure are intended to be illustrative rather than limiting, and that those skilled in the art will appreciate that references to "one or more" are intended to be exemplary and not limiting unless the context clearly indicates otherwise.
Example one
Fig. 1 is a flowchart illustrating a method for controlling congestion of a network according to an embodiment of the present disclosure, where the embodiment of the present disclosure is applicable to congestion control, and is particularly applicable to congestion control based on packet loss when performing real-time communication in a network with a very small buffer area on a network route. The method may be performed by a congestion control apparatus of a network, which may be implemented in the form of software and/or hardware, which may be configured in an electronic device, such as a computer.
As shown in fig. 1, the method for controlling congestion of a network according to this embodiment includes:
s110, continuously monitoring a first network parameter corresponding to actual transmission data, and determining a packet loss type according to a trend characteristic of the first network parameter when a packet loss rate in the first network parameter meets a preset condition.
In the embodiment of the disclosure, the congestion control method of the network is generally applied to a data sender; accordingly, the actual transmission data may be regarded as transmission data and reception data of the data transmitting side in the actual communication service. The receiving of the data may include data fed back by the data receiving side after receiving the data sent by the data sending side.
The first network parameter corresponding to the actual transmission data may be used to characterize a Quality of Service (QoS) of the actual transmission data during the transmission process. Also, the first network parameter may include, but is not limited to, a sending rate (send rate), a receiving rate (ACK rate), a Round-Trip Time (RTT), a packet loss rate (loss rate), and the like of actual data transmission.
The continuous monitoring of the first network parameter corresponding to the actual transmission data may be considered to measure the first network parameter at intervals in the transmission process of the actual transmission data, where the short period of time is, for example, 1s or 2 s. The first network parameter may be measured by a general measurement method, for example, the number of bits of the transmission/reception data per unit time is recorded, and the transmission/reception rate is determined; the RTT is determined, for example, using the classical algorithm RFC793 (Request For Comments, a series of files scheduled by number, belonging to the transmission control protocol); such as receiving a Receiver Report (RR) fed back by the data receiving segment, determining a packet loss rate, etc., which are not exhaustive herein.
The preset condition may be a condition set according to an empirical value or an experimental value and used for determining whether an obvious packet loss occurs. When the packet loss rate in the first network parameter meets the preset condition, it can be considered that an obvious packet loss occurs, otherwise, it can be considered that the network is good. Moreover, when the packet loss rate in the first network parameter is close to but does not reach the preset condition, the current bandwidth estimation value can be continuously maintained; when the packet loss rate in the first network parameter is very small, the current bandwidth estimation value can be adjusted up appropriately.
In some optional implementation manners, the packet loss ratio in the first network parameter satisfies a preset condition, which may include: the packet loss rate in the first network parameter is greater than the duration of the preset packet loss rate, and the preset duration is reached. It can be understood that the preset packet loss ratio and the preset time duration value may be adjusted according to the actual service requirement. For example, in some application scenarios, the preset packet loss rate is, for example, 10%, and the preset duration is, for example, 30s, and if the duration in which the packet loss rate exceeds 10% reaches 30s, it may be considered that the duration in which the packet loss rate is greater than the preset packet loss rate (10%) reaches the preset duration (30 s). In these optional implementations, when the packet loss rate in the first network parameter is greater than the preset packet loss rate for a long time, it may be considered that an obvious packet loss occurs.
After the obvious packet loss occurs, the packet loss type can be judged according to the trend characteristics of the first network parameters recorded in the continuous monitoring process. For example, the packet loss type is determined according to the trend characteristic of the first network parameter within the preset time length. The trend characteristic of the first network parameter may include, but is not limited to, a slope of at least one of the first network parameters, and/or a correlation between two or more of the first network parameters. In general, a certain threshold value may be set for the trend characteristic based on an empirical value or an experimental value. And then, the packet loss type can be judged according to the comparison result of the trend characteristic of the first network parameter and the set threshold value.
In some optional implementations, determining the packet loss type according to a trend characteristic of the first network parameter includes: and determining a first slope according to the first network parameter, and determining the packet loss type according to the first slope.
In these alternative implementations, the first slope may be obtained based on a change rate of the first network parameter, for example, the first network parameter may be measured and calculated at intervals in a transmission process of actual transmission data; if the packet loss rate in the first network parameter is greater than the duration of the preset packet loss rate and reaches the preset duration, simulating or calculating the slopes of the network parameters according to the first network parameter obtained within the preset duration to obtain a first slope.
The data volume of the actual transmission data is usually random, and the correlation between the corresponding first network parameters is difficult to judge, so that the packet loss type which can be accurately distinguished based on the slope can be quickly judged according to the first slope of the first network parameters. The packet loss types that can be accurately distinguished based on the slope may include, for example, congestion loss (congestion loss) and congestion alleviation loss (congestion allowed loss).
Illustratively, when the RTT slope in the first network parameter is greater than 0.05, or when the packet loss slope is greater than 0.005, or when the RTT slope is less than or equal to 0.05, the packet loss slope is less than or equal to 0.005, the sending rate slope is greater than 0.5, and the receiving rate slope is less than 0.1, the packet loss type may be determined as a congestion packet loss; when the RTT slope is less than or equal to-0.05 or when the packet loss rate slope is less than or equal to 0.005, the packet loss type may be determined as the congestion relief packet loss.
And S120, adjusting the bandwidth estimation value according to the packet loss type, and configuring actual transmission data according to the adjusted bandwidth estimation value.
According to different packet loss types, adjustment strategies of different bandwidth estimation values can be executed, so that the current available bandwidth can be more accurately estimated. The actual transmission data may be configured, for example, a sending rate of the actual transmission data, and/or a data quality of the actual transmission data. The configuration of actual transmission data is carried out according to the adjusted bandwidth estimation value, so that the congestion control effect can be improved, and the user experience is improved.
In addition, after the bandwidth estimation value is adjusted according to the packet loss type, the method may further jump to step S110 again, and start to repeatedly and continuously monitor the first network parameter corresponding to the actual transmission data, so as to continuously perform congestion control.
In some optional implementation manners, the packet loss types may include, in addition to the congestion packet loss and the congestion relief packet loss, packet loss types that cannot be accurately distinguished based on the first slope, and these packet loss types may be preliminarily classified as stable packet loss types (correlation stable losses).
Exemplarily, when the RTT slope is less than or equal to 0.05, the packet loss rate slope is less than or equal to 0.005, and the sending rate slope and the receiving rate slope are not obviously different from each other in the first network parameter, the packet loss type may be congestion packet loss or intrinsic packet loss (intrinsic loss), but is limited by the randomness of the data amount of the actually transmitted data, and the packet loss type cannot be further accurately determined. Therefore, the packet loss type in which the RTT slope and the packet loss rate slope in the first network parameter satisfy the preset threshold and the difference between the sending rate slope and the receiving rate slope is smaller than the preset value can be preliminarily classified as the stable packet loss type.
If the packet loss type is a stable packet loss, before adjusting the bandwidth estimation value according to the packet loss type, the method further includes: continuously triggering the probe data of the first preset numerical value, and collecting a second network parameter corresponding to the triggered probe data of each time; re-determining the packet loss type according to the trend characteristic of the second network parameter; correspondingly, adjusting the bandwidth estimation value according to the packet loss type includes: and adjusting the bandwidth estimation value according to the redetermined packet loss type.
The first preset value may be a value set according to an empirical value or an experimental value, for example, 10. And the setting standard of the first preset numerical value is a numerical value which can be used for determining the trend characteristic of the network parameter. The probe data can be regarded as marked sending data, and the relevance between two or more items in the network parameters can be accurately probed through the probe data, so that the packet loss type can be distinguished. The probe data is continuously triggered for the first preset number of times, and the probe data may be considered to be sent once every certain period of time, where the certain period of time is, for example, 1s or 2 s.
In these optional embodiments, when the packet loss type cannot be accurately determined based on the first network parameter corresponding to the actual transmission data, the packet loss type may be further determined based on the second network parameter corresponding to the probe data, so that the accuracy of identifying the packet loss type may be achieved.
In some optional implementation manners, if the packet loss type or the newly determined packet loss type is a congestion packet loss, adjusting the bandwidth estimation value according to the packet loss type or the newly determined packet loss type includes: and adjusting the bandwidth estimation value downwards according to the packet loss rate corresponding to the congestion packet loss.
In these alternative embodiments, the adjustment of the bandwidth estimation value may be performed based on an Additive and Multiplicative incremental subtraction (AIMD) method. For example, when the packet loss type is congestion packet loss, the bandwidth estimation value may be adjusted downward based on the following formula:
As_hat(i)=As_hat(i-1)×(1-p);
wherein, as _ hat (i) is a bandwidth estimation value after being adjusted downwards, as _ hat (i-1) is a bandwidth estimation value before being adjusted downwards, and p is a packet loss rate corresponding to congestion packet loss. The bandwidth estimation value is adjusted through the packet loss rate, so that the packet loss condition is relieved.
In some optional implementation manners, if the packet loss type is congestion mitigation packet loss, adjusting the bandwidth estimation value according to the packet loss type includes: and according to congestion relieving packet loss, keeping a bandwidth estimation value. In these alternative embodiments, if the packet loss type is congestion relief packet loss, it may be considered that the network congestion is currently being relieved, so the original bandwidth estimation value may be temporarily maintained.
In some optional implementations, the congestion control method may be applied to Web Real-Time Communication (Web RTC); correspondingly, the actual transmission data is configured, including: and carrying out media parameter configuration on the real-time audio and video data.
In these alternative embodiments, real-time audio-video communication over a network can be implemented by the Web RTC. In the process of audio and video communication, the congestion control method can help the server to correctly evaluate the current available network, so that the server can perform media parameter configuration (such as video resolution, frame rate and the like) on audio and video data according to the adjusted bandwidth evaluation value. The media parameters are configured through the bandwidth evaluation value, so that the media parameters can be properly reduced when the network is congested, and smooth communication is ensured; and when the network is good, the media parameters can be kept or properly adjusted upwards to ensure clear communication, and the optimal communication experience can be provided for users.
According to the technical scheme of the embodiment of the disclosure, a first network parameter corresponding to actual transmission data is continuously monitored, and when the packet loss rate in the first network parameter meets a preset condition, the packet loss type is determined according to the trend characteristic of the first network parameter; and adjusting the bandwidth estimation value according to the packet loss type, and configuring the actual transmission data according to the adjusted bandwidth estimation value. By determining the packet loss type according to the trend characteristics of the network parameters and estimating the current available bandwidth according to the packet loss type, the congestion condition of the network can be accurately evaluated, the control effect of congestion control is improved, and the user experience is improved.
Example two
The embodiments of the present disclosure and various alternatives in the congestion control method of a network provided in the embodiments described above may be combined. According to the congestion control method for the network provided by the embodiment, when the packet loss type is a stable packet loss, the step of re-determining the packet loss type is optimized, so that the packet loss types can be distinguished more accurately according to the slope and the correlation of the parameters in the second network parameter, the accuracy of evaluating the congestion condition is further improved, the control effect of congestion control is improved, and the user experience is improved.
Fig. 2 is a schematic flowchart of a method for controlling network congestion according to a second embodiment of the present disclosure. Referring to fig. 2, the method for controlling congestion of a network according to this embodiment includes:
s210, continuously monitoring a first network parameter corresponding to actual transmission data, and determining a packet loss type according to a trend characteristic of the first network parameter when a packet loss rate in the first network parameter meets a preset condition.
And S220, if the packet loss type is stable packet loss, continuously triggering the probe data of the first preset number, and collecting a second network parameter corresponding to the probe data triggered each time.
The probe data can be marked data in sending data of actual transmission data, and the continuously triggered first preset numerical value secondary probe data has a preset trend characteristic. The preset trend characteristic may be considered as a slope of a transmission rate of probe data required by a user.
By marking part of data from transmission data of actual transmission data as probe data, congestion aggravation due to addition of data in the network can be avoided. By marking the sending data based on the preset trend characteristics, the slope of the sending rate based on the user requirements can be realized, and the data volume of the probe data can be specified. By enabling the probe data to have a preset trend, the method is more beneficial to determining the packet loss type based on the slope of the designated sending rate and the trend characteristics of other second network parameters.
And S230, determining a second slope according to the second network parameter, and determining the correlation between the sending rate and the receiving rate in the second network parameter.
The slope determination of each parameter in the second network parameters and the correlation calculation of the sending rate and the receiving rate can be performed according to the second network parameters of the first preset value group obtained by measurement and calculation. For example, when the first preset value is 10, 10 probe data are triggered continuously, and 10 sets of second network parameters can be obtained. Further, according to 10 sets of second network parameters, the slope of each parameter in the second network parameters and the correlation between the transmission rate and the reception rate can be performed.
The second slope is obtained based on a change rate of the second network parameter, and for example, the second slope may be obtained by performing simulation or calculation on slopes of various network parameters according to the second network parameter of the first preset value group. The technique for performing Correlation between two sets of sending rates and receiving rates based on a general Correlation algorithm may be, for example, a typical Correlation Analysis (CCA).
And S240, re-determining the packet loss type according to the second slope and the correlation.
Wherein a certain threshold value may be set for the second slope and the correlation based on empirical or experimental values. And then, the packet loss type can be judged according to the comparison result of the second slope and the correlation and the set threshold.
Illustratively, when the RTT slope in the second network parameter is greater than 0.05, or when the packet loss slope is greater than 0.005, or when the RTT slope is less than or equal to 0.05, the packet loss slope is less than or equal to 0.005, the sending rate slope is greater than 0.5, and the receiving rate slope is less than 0.1, the packet loss type may be determined as a congestion packet loss; when the correlation between the sending rate and the receiving rate is greater than 0.8, the slope of the sending rate is greater than 0.1, the slope of the RTT is less than or equal to 0.05, and the slope of the packet loss rate is less than or equal to 0.005, the packet loss type can be determined as the inherent packet loss.
In some optional implementations, before determining the second slope according to the second network parameter, the method may further include: correcting the second network parameter according to the packet loss rate in the second network parameter; correspondingly, determining a second slope according to the second network parameter, and determining a correlation between the sending rate and the receiving rate in the second network parameter, includes: and determining a second slope according to the modified second network parameter, and determining the correlation between the sending rate and the receiving rate in the modified second network parameter.
In these optional implementation manners, by modifying each second network parameter by using the packet loss rate in the second network parameter, the accuracy of the second network parameter can be improved, and thus the accuracy of identifying the packet loss type can be improved. Illustratively, the second network parameter may be modified based on the following equation:
probe′=probe/(1-p);
wherein probe' is the modified second network parameter, such as the modified sending rate, receiving rate, RTT, packet loss rate, etc.; probe is a second network parameter before modification, such as a sending rate, a receiving rate, RTT, a packet loss rate, etc. before modification; and p is the packet loss rate in the second network parameter.
And S250, if the packet loss type determined again is the inherent packet loss, keeping the bandwidth estimation value according to the inherent packet loss.
Because the inherent packet loss is not caused by congestion but caused by the network factors, the original bandwidth evaluation value can be kept when the packet loss type is determined to be the inherent packet loss, so that the conditions that the transmission data quality is too low and the like due to the excessively reduced bandwidth evaluation value can be avoided.
And S260, monitoring the average packet loss rate corresponding to the actual transmission data, and repeatedly and continuously monitoring the first network parameter corresponding to the actual transmission data when the variation rate of the average packet loss rate is greater than a second preset value.
The method for determining the average packet loss rate may be, for example, determining the packet loss rate corresponding to actual transmission data in real time within each preset monitoring time period, averaging the determined packet loss rates, and taking the obtained average value as the average packet loss rate. The variation rate of the average packet loss rate may be considered as a ratio of a difference between the currently determined average packet loss rate and the previously determined average packet loss rate to the previously determined average packet loss rate.
When the packet loss type is the inherent packet loss, the average packet loss rate is usually maintained in a relatively stable state. When the average packet loss rate changes dramatically, it may be considered that a congestion packet loss may occur in the current packet loss type except for the inherent packet loss, and in this case, the congestion control method provided by the present disclosure may be executed again to implement congestion control.
The second preset value may be a threshold value set according to an empirical value or an experimental value and used for determining whether the average packet loss rate changes dramatically. When the variation rate of the average packet loss rate corresponding to the actual transmission data is greater than a second preset value, it can be determined whether the packet loss rate varies violently.
In addition, when the average packet loss rate does not change dramatically, the average packet loss rate corresponding to the actual transmission data can be continuously monitored without collecting various network parameters, so that the resource occupation of the congestion control method is reduced to a certain extent.
According to the technical scheme of the embodiment of the disclosure, when the packet loss type is the stable packet loss, the step of re-determining the packet loss type is optimized, so that the packet loss type can be more accurately distinguished according to the second network parameter of the probe data, the evaluation accuracy of the congestion condition is further improved, the control effect of congestion control is improved, and the user experience is improved. In addition, the congestion control method of the network provided by the embodiment of the present disclosure and the congestion control method of the network provided by the above embodiment belong to the same technical concept, and technical details that are not described in detail in the embodiment can be referred to the above embodiment, and the same technical features have the same beneficial effects in the embodiment and the above embodiment.
EXAMPLE III
The embodiment of the present disclosure may be combined with each alternative in the network congestion control method provided in the above embodiment, and exemplarily provide a more specific bandwidth estimation value adjustment method, so as to more accurately evaluate the congestion condition of the network according to the adjusted bandwidth estimation value, improve the control effect of congestion control, and improve the user experience.
Fig. 3 is a schematic diagram illustrating a flow of adjusting a bandwidth estimation value in a network congestion control method according to a third embodiment of the present disclosure. Referring to fig. 3, the step of adjusting the bandwidth estimation value in the congestion control method for a network provided in this embodiment includes:
and S301, updating the network parameter matrix.
The network parameters may be updated in an initial state (NORMAL state), where the network parameter matrix may include a first network parameter corresponding to the actual transmission data. And, the first network parameter may include, but is not limited to, a sending rate, a receiving rate, a round trip delay, a packet loss rate, and the like of actually transmitted data.
S302, storing the network parameter matrix sample.
The network parameter matrix samples can be stored once every other short period of time, so that the first network parameters corresponding to actual transmission data can be continuously monitored.
S303, judging whether the latest 14 packet loss rates are more than 10%.
The packet loss rate in the newly stored 14 network parameter matrix samples is greater than 10%, and the packet loss rate can be used as a preset condition to determine whether an obvious packet loss occurs.
S3041, if not, the method retains the bandwidth estimation value and jumps to S301.
When no obvious packet loss occurs, the NORMAL state can be maintained, and the execution is started again from S301.
S3042, if yes, calculating the slopes of the round trip time, the packet loss rate, the sending rate and the receiving rate.
When obvious packet loss occurs, the packet loss type can be determined according to the trend characteristics of the first network parameter in the stored network parameter matrix sample. The trend characteristic of the first network parameter is, for example, a first slope corresponding to a round trip time, a packet loss rate, a sending rate and a receiving rate.
S305, determining the packet loss type according to the slope.
According to the first slope of the first network parameter, the packet loss type which can be accurately distinguished based on the slope is quickly judged.
S306, checking the packet loss type.
The packet loss type is checked, which can be understood as determining the packet loss type.
S3071, if the packet loss type is congestion packet loss, adjusting the bandwidth estimation value downwards, and skipping to S301.
S3072, if the packet loss type is congestion relieving packet loss, keeping the bandwidth estimation value, and jumping to S301.
In S3071 and S3072, after the bandwidth estimation value adjustment is performed, the state may be maintained in the NORMAL state, and the execution may be resumed from S301.
S3073, if the packet loss type is stable packet loss, triggering probe data, and collecting a corresponding network parameter matrix.
If the packet loss types which cannot be accurately distinguished based on the first slope are determined, the packet loss types can be preliminarily classified into stable packet loss types. When the packet loss type is stable packet loss, the NORMAL state can be switched to the detection state (detection state). In the DETECTING state, probe data can be triggered and a corresponding network parameter matrix can be collected.
And S308, judging whether the triggering times reach 10 times, and otherwise, jumping to S3073.
Through the step of S308, the probe data of the first preset value can be triggered continuously.
And S309, if so, recalculating the slopes of the round trip time, the packet loss rate, the sending rate and the receiving rate.
The second network parameters corresponding to the probe data triggered each time may be collected, and the second network parameters may include a round trip time, a packet loss rate, a sending rate, and a slope of a receiving rate. The packet loss type can be determined again by the trend characteristic according to the second network parameter.
S310, calculating the correlation between the sending rate and the receiving rate.
And S311, determining the packet loss type according to the slope and the correlation.
The trend characteristics of the second network may include a correlation between the sending rate and the receiving rate, and a slope of each of the second network parameters.
And S312, checking the packet loss type.
S3131, if the packet loss type is congestion packet loss, adjusting the bandwidth estimation value downwards, and jumping to S301.
If the packet loss type determined again is congestion packet loss, the bandwidth estimation value may be adjusted and then maintained in the NORMAL state, and the operation is performed from S301 again.
And S3132, if the packet loss type is the inherent packet loss, keeping the bandwidth estimation value.
S314, monitoring the average packet loss rate corresponding to the actual transmission data, and judging that the variation rate of the average packet loss rate is larger than a second preset value, if so, jumping to S301, otherwise, jumping to S3132.
When the packet LOSS type is the INHERENT packet LOSS, the DETECTING state may be switched to the state of maintaining the INHERENT packet LOSS (the INHERENT LOSS state). In the ingress LOSS state, the average packet LOSS rate corresponding to actual transmission data can be monitored, the variation rate of the average packet LOSS rate is judged to be larger than a second preset value, the state is switched to a NORMAL state, and the execution is started from the S301 again; if the variation rate of the average packet LOSS rate is not greater than the second predetermined value, the state of the incorporate LOSS can be maintained.
By determining the packet loss type according to the trend characteristics of the network parameters and estimating the current available bandwidth according to the packet loss type, the congestion condition of the network can be accurately evaluated, the control effect of congestion control is improved, and the user experience is improved.
For example, fig. 4a to 4d are schematic diagrams illustrating a congestion control effect of performing congestion control by using a congestion control method based on a residual packet loss rate when network congestion is simulated in a network congestion control method provided in a third embodiment of the present disclosure; fig. 5a to 5d are schematic diagrams of congestion control effects of performing congestion control by using the congestion control method provided in the third embodiment of the present disclosure when network congestion is simulated in the congestion control method of a network provided in the third embodiment of the present disclosure. In fig. 4 a-4 d, and fig. 5 a-5 d, the simulated network congestion is the congestion of a Policy-Link network type network with very small buffer (50 ms), limited to 1500kbps.
Fig. 4a is a schematic diagram of a bandwidth evaluation value when congestion control is performed by using a congestion control method based on a residual packet loss rate when network congestion is simulated in a congestion control method of a network according to a third embodiment of the present disclosure. The bandwidth estimate shown in fig. 4a is higher than 2500kbps and much higher than the analog bandwidth limit of 1500kbps.
Fig. 4b is a schematic diagram of a transceiving rate when congestion control is performed by using a congestion control method based on a residual packet loss rate when network congestion is simulated in a network congestion control method according to a third embodiment of the present disclosure. In fig. 4b, the line diagram of the overall upper point is a sending rate diagram, and the line diagram of the overall lower point is a receiving rate diagram; in the figure, the transmission rate is much higher than the reception rate as a whole, and it can be considered that a congestion phenomenon exists.
Fig. 4c is a schematic diagram of round-trip delay when congestion control is performed by using a congestion control method based on a residual packet loss rate when network congestion is simulated in a network congestion control method according to a third embodiment of the present disclosure. In fig. 4c, the line graph of the point on the upper side of the whole is an RTT graph, the line graph of the point on the lower side of the whole is a delay graph, and the vertical line on the left side is the start position mark for starting congestion control when the RTT graph and the delay graph obviously rise; in the figure, after congestion control is performed, RTT and delay are continuously high, and it can be considered that the control effect is poor.
Fig. 4d is a schematic diagram of a packet loss rate when congestion control is performed by using a congestion control method based on a residual packet loss rate when network congestion is simulated in a network congestion control method according to a third embodiment of the present disclosure. In fig. 4d, the overall upper point line graph is an actual packet loss rate graph, and the overall lower point line graph is an estimated packet loss rate graph; in the graph, the actual packet loss rate is far greater than the estimated packet loss rate, and the actual packet loss rate continues to be as high as 40%, which may be considered that the control effect of performing congestion control based on the residual packet loss rate is poor.
Fig. 5a is a schematic diagram of a bandwidth evaluation value for performing congestion control by using the congestion control method provided in the third embodiment of the present disclosure when network congestion is simulated in the congestion control method of a network provided in the third embodiment of the present disclosure. The bandwidth estimate shown in FIG. 5a is around 1400kbps, close to the analog bandwidth limit of 1500kbps.
Fig. 5b is a schematic diagram of a transceiving rate for performing congestion control by using the congestion control method provided in the third embodiment of the present disclosure when network congestion is simulated in the congestion control method of a network according to the third embodiment of the present disclosure. In fig. 5b, the dot line graph of the transmission rate map is approximately overlapped with the dot line graph of the reception rate map, and it can be considered that the network state is still good after the width limitation.
Fig. 5c is a schematic diagram of round-trip delay for performing congestion control by using the congestion control method provided in the third embodiment of the present disclosure when network congestion is simulated in the congestion control method of a network provided in the third embodiment of the present disclosure. In fig. 5c, the line diagram of the integral upper point is an RTT diagram, and the line diagram of the integral lower point is a time delay diagram; in the figure, except that the points in the broken line of a few RTT points are higher, the whole RTT and the time delay are maintained in a lower state, and the control effect is considered to be better.
Fig. 5d is a schematic diagram of a packet loss rate for performing congestion control by using the congestion control method provided in the third embodiment of the present disclosure when network congestion is simulated in the congestion control method of a network provided in the third embodiment of the present disclosure. In fig. 5d, the point line graph of the actual packet loss rate graph and the point line graph of the estimated packet loss rate graph are approximately overlapped and both approximately coincide with each other and are 0%, which may be considered that the congestion control method according to the present disclosure has a better control effect for performing congestion control.
The technical scheme of the embodiment of the disclosure exemplarily provides a more specific bandwidth estimation value adjustment method in the congestion control methods, so as to more accurately evaluate the congestion condition of the network according to the adjusted bandwidth estimation value, improve the control effect of congestion control, and improve the user experience. In addition, the congestion control method of the network provided by the embodiment of the present disclosure and the congestion control method of the network provided by the above embodiment belong to the same technical concept, and technical details that are not described in detail in the embodiment can be referred to the above embodiment, and the same technical features have the same beneficial effects in the embodiment and the above embodiment.
Example four
Fig. 6 is a schematic structural diagram of a congestion control device of a network according to a fourth embodiment of the present disclosure. The congestion control apparatus for a network according to this embodiment is suitable for congestion control, and is particularly suitable for congestion control based on packet loss when real-time communication is performed in a network with a very small buffer area on a network route.
As shown in fig. 6, the congestion control apparatus of the network includes:
the type determining module 610 is configured to continuously monitor a first network parameter corresponding to actual transmission data, and determine a packet loss type according to a trend characteristic of the first network parameter when a packet loss rate in the first network parameter meets a preset condition;
and the congestion control module 620 is configured to adjust the bandwidth estimation value according to the packet loss type, and configure actual transmission data according to the adjusted bandwidth estimation value.
In some optional implementation manners of the embodiment of the present disclosure, the packet loss ratio in the first network parameter meets a preset condition, including:
the packet loss rate in the first network parameter is greater than the duration of the preset packet loss rate, and the preset duration is reached.
In some optional implementations of the embodiments of the present disclosure, the type determining module is specifically configured to:
and determining a first slope according to the first network parameter, and determining the packet loss type according to the first slope, wherein the first slope is obtained based on the change rate of the first network parameter.
In some optional implementation manners of the embodiment of the present disclosure, if the packet loss type is a stable packet loss, the type determining module is further configured to:
before adjusting the bandwidth estimation value according to the packet loss type, continuously triggering probe data of a first preset value, and collecting a second network parameter corresponding to the triggered probe data of each time;
re-determining the packet loss type according to the trend characteristic of the second network parameter;
correspondingly, the congestion control module is further configured to: and adjusting the bandwidth estimation value according to the determined packet loss type.
In some optional implementation manners of the embodiment of the present disclosure, the probe data is data marked from transmission data of actually transmitted data, and the continuously triggered first preset numerical value of the probe data has a preset trend characteristic.
In some optional implementations of the embodiments of the present disclosure, the type determining module is specifically configured to:
determining a second slope according to the second network parameter, and determining the correlation between the sending rate and the receiving rate in the second network parameter, wherein the second slope is obtained based on the change rate of the second network parameter;
and re-determining the packet loss type according to the second slope and the correlation.
In some optional implementations of the embodiments of the present disclosure, the type determining module is further configured to:
before determining a second slope according to a second network parameter, correcting the second network parameter according to the packet loss rate in the second network parameter;
correspondingly, determining a second slope according to the second network parameter, and determining a correlation between the sending rate and the receiving rate in the second network parameter, includes:
and determining a second slope according to the modified second network parameter, and determining the correlation between the sending rate and the receiving rate in the modified second network parameter.
In some optional implementation manners of the embodiment of the present disclosure, if the packet loss type determined anew is an inherent packet loss, the congestion control module is specifically configured to:
according to the inherent packet loss, keeping the bandwidth estimation value;
correspondingly, the congestion control device of the network further comprises:
the monitoring module is used for monitoring the average packet loss rate corresponding to actual transmission data after the bandwidth estimation value is adjusted according to the newly determined packet loss type;
correspondingly, the type determining module is further configured to repeatedly and continuously monitor the first network parameter corresponding to the actually transmitted data when the variation rate of the average packet loss rate is greater than a second preset value.
In some optional implementation manners of the embodiment of the present disclosure, if the packet loss type or the newly determined packet loss type is a congestion packet loss, the congestion control module is specifically configured to:
and adjusting the bandwidth estimation value downwards according to the packet loss rate corresponding to the congestion packet loss.
In some optional implementation manners of the embodiment of the present disclosure, if the packet loss type is congestion relief packet loss, the congestion control module is specifically configured to:
and according to congestion relieving packet loss, keeping a bandwidth estimation value.
In some optional implementation manners of the embodiment of the disclosure, the method is applied to real-time communication of the webpage; correspondingly, the actual transmission data is configured, including: and carrying out media parameter configuration on the real-time audio and video data.
The congestion control device of the network provided by the embodiment of the disclosure can execute the congestion control method of the network provided by any embodiment of the disclosure, and has corresponding functional modules and beneficial effects of the execution method.
It should be noted that, the units and modules included in the apparatus are merely divided according to functional logic, but are not limited to the above division as long as the corresponding functions can be implemented; in addition, specific names of the functional units are only used for distinguishing one functional unit from another, and are not used for limiting the protection scope of the embodiments of the present disclosure.
EXAMPLE five
Referring now to fig. 7, a schematic diagram of an electronic device (e.g., a terminal device or a server in fig. 7) 700 suitable for implementing the congestion control method of the network of the embodiment of the present disclosure is shown. The terminal device in the embodiments of the present disclosure may include, but is not limited to, a mobile terminal such as a mobile phone, a notebook computer, a digital broadcast receiver, a PDA (personal digital assistant), a PAD (tablet computer), a PMP (portable multimedia player), a vehicle terminal (e.g., a car navigation terminal), and the like, and a stationary terminal such as a digital TV, a desktop computer, and the like. The electronic device shown in fig. 7 is only an example, and should not bring any limitation to the functions and the scope of use of the embodiments of the present disclosure.
As shown in fig. 7, electronic device 700 may include a processing means (e.g., central processing unit, graphics processor, etc.) 701, which may perform various appropriate actions and processes according to programs stored in a Read-Only Memory (ROM) 702 or loaded from a storage means 708 into a Random Access Memory (RAM) 703. In the RAM 703, various programs and data necessary for the operation of the electronic apparatus 700 are also stored. The processing device 701, the ROM702, and the RAM 703 are connected to each other by a bus 704. An input/output (I/O) interface 705 is also connected to bus 704.
Generally, the following devices may be connected to the I/O interface 705: input devices 706 including, for example, a touch screen, touch pad, keyboard, mouse, camera, microphone, accelerometer, gyroscope, etc.; an output device 707 including, for example, a Liquid Crystal Display (LCD), a speaker, a vibrator, and the like; storage 708, including, for example, magnetic tape, hard disk, etc.; and a communication device 709. The communication means 709 may allow the electronic device 700 to communicate with other devices, wireless or wired, to exchange data. While fig. 7 illustrates an electronic device 700 having various means, it is to be understood that not all illustrated means are required to be implemented or provided. More or fewer devices may be alternatively implemented or provided.
In particular, the processes described above with reference to the flow diagrams may be implemented as computer software programs, according to embodiments of the present disclosure. For example, embodiments of the present disclosure include a computer program product comprising a computer program carried on a non-transitory computer readable medium, the computer program containing program code for performing the method illustrated by the flow chart. In such an embodiment, the computer program may be downloaded and installed from a network via the communication means 709, or may be installed from the storage means 708, or may be installed from the ROM 702. The computer program, when executed by the processing device 701, performs the above-described functions defined in the congestion control method of the network of the embodiment of the present disclosure.
The electronic device provided by the embodiment of the present disclosure and the method for controlling network congestion provided by the embodiment of the present disclosure belong to the same public concept, and technical details that are not described in detail in the embodiment of the present disclosure may refer to the embodiment of the present disclosure, and the embodiment of the present disclosure has the same beneficial effects as the embodiment of the present disclosure.
Example six
The disclosed embodiments provide a computer storage medium having stored thereon a computer program that, when executed by a processor, implements the congestion control method of a network provided by the above-described embodiments.
It should be noted that the computer readable medium of the present disclosure may be a computer readable signal medium or a computer readable storage medium or any combination of the two. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples of the computer readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a Read-Only Memory (ROM), an Erasable Programmable Read-Only Memory (EPROM) or FLASH Memory (FLASH), an optical fiber, a portable compact disc Read-Only Memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the present disclosure, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In contrast, in the present disclosure, a computer readable signal medium may comprise a propagated data signal with computer readable program code embodied therein, either in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: electrical wires, optical cables, RF (radio frequency), etc., or any suitable combination of the foregoing.
In some embodiments, the clients, servers may communicate using any currently known or future developed network Protocol, such as HTTP (Hyper Text Transfer Protocol), and may interconnect with any form or medium of digital data communication (e.g., a communications network). Examples of communication networks include a local area network ("LAN"), a wide area network ("WAN"), the Internet (e.g., the Internet), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks), as well as any currently known or future developed network.
The computer readable medium may be embodied in the electronic device; or may exist separately without being assembled into the electronic device.
The computer readable medium carries one or more programs which, when executed by the electronic device, cause the electronic device to:
continuously monitoring a first network parameter corresponding to actual transmission data, and determining a packet loss type according to a trend characteristic of the first network parameter when the packet loss rate in the first network parameter meets a preset condition; and adjusting the bandwidth estimation value according to the packet loss type, and configuring the actual transmission data according to the adjusted bandwidth estimation value.
Computer program code for carrying out operations for aspects of the present disclosure may be written in any combination of one or more programming languages, including but not limited to an object oriented programming language such as Java, smalltalk, C + +, including conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet service provider).
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The units described in the embodiments of the present disclosure may be implemented by software or hardware. The names of the units and the modules do not form a limitation on the units and the modules in some cases, for example, "type determination module" may also be described as "packet loss type determination module".
The functions described herein above may be performed, at least in part, by one or more hardware logic components. For example, without limitation, exemplary types of hardware logic components that may be used include: a Field Programmable Gate Array (FPGA), an Application Specific Integrated Circuit (ASIC), an Application Specific Standard Part (ASSP), a System On Chip (SOC), a Complex Programmable Logic Device (CPLD), and the like.
In the context of this disclosure, a machine-readable medium may be a tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
According to one or more embodiments of the present disclosure, [ example one ] there is provided a congestion control method of a network, the method comprising:
continuously monitoring a first network parameter corresponding to actual transmission data, and determining a packet loss type according to a trend characteristic of the first network parameter when a packet loss rate in the first network parameter meets a preset condition;
and adjusting the bandwidth estimation value according to the packet loss type, and configuring the actual transmission data according to the adjusted bandwidth estimation value.
According to one or more embodiments of the present disclosure, [ example two ] there is provided a congestion control method of a network, further comprising:
in some optional implementation manners of the embodiment of the present disclosure, the packet loss ratio in the first network parameter meets a preset condition, including:
and the packet loss rate in the first network parameter is greater than the duration of a preset packet loss rate, and the preset duration is reached.
According to one or more embodiments of the present disclosure, [ example three ] there is provided a congestion control method of a network, further comprising:
in some optional implementation manners of the embodiment of the present disclosure, the determining, according to the trend characteristic of the first network parameter, a packet loss type includes:
and determining a first slope according to the first network parameter, and determining a packet loss type according to the first slope, wherein the first slope is obtained based on the change rate of the first network parameter.
According to one or more embodiments of the present disclosure, [ example four ] there is provided a congestion control method of a network, further comprising:
in some optional implementation manners of the embodiment of the present disclosure, if the packet loss type is a stable packet loss, before the adjusting the bandwidth estimation value according to the packet loss type, the method further includes:
continuously triggering the probe data of the first preset numerical value, and collecting a second network parameter corresponding to the triggered probe data of each time;
re-determining the packet loss type according to the trend characteristic of the second network parameter;
correspondingly, the adjusting the bandwidth estimation value according to the packet loss type includes: and adjusting the bandwidth estimation value according to the determined packet loss type.
According to one or more embodiments of the present disclosure, [ example five ] there is provided a congestion control method of a network, further comprising:
in some optional implementation manners of the embodiment of the present disclosure, the probe data is data marked in the sending data of the actual transmission data, and the continuously triggered first preset numerical value secondary probe data has a preset trend characteristic.
According to one or more embodiments of the present disclosure, [ example six ] there is provided a congestion control method of a network, further comprising:
in some optional implementation manners of the embodiment of the present disclosure, the re-determining the packet loss type according to the trend characteristic of the second network parameter includes:
determining a second slope according to the second network parameter, and determining the correlation between the sending rate and the receiving rate in the second network parameter, wherein the second slope is obtained based on the change rate of the second network parameter;
and re-determining the packet loss type according to the second slope and the correlation.
According to one or more embodiments of the present disclosure, [ example seven ] there is provided a congestion control method of a network, further comprising:
in some optional implementation manners of the embodiments of the present disclosure, before determining the second slope according to the second network parameter, the method further includes:
correcting the second network parameter according to the packet loss rate in the second network parameter;
correspondingly, the determining a second slope according to the second network parameter and determining a correlation between a sending rate and a receiving rate in the second network parameter includes:
and determining a second slope according to the modified second network parameter, and determining the correlation between the sending rate and the receiving rate in the modified second network parameter.
According to one or more embodiments of the present disclosure, [ example eight ] there is provided a congestion control method of a network, further comprising:
in some optional implementation manners of the embodiment of the present disclosure, if the redetermined packet loss type is an inherent packet loss, the adjusting the bandwidth estimation value according to the redetermined packet loss type includes:
according to the inherent packet loss, keeping a bandwidth estimation value;
correspondingly, after the adjusting the bandwidth estimation value according to the re-determined packet loss type, the method further includes:
and monitoring the average packet loss rate corresponding to the actual transmission data, and repeatedly and continuously monitoring the first network parameter corresponding to the actual transmission data when the variation rate of the average packet loss rate is greater than a second preset value.
According to one or more embodiments of the present disclosure [ example nine ] there is provided a congestion control method of a network, further comprising:
in some optional implementation manners of the embodiment of the present disclosure, if the packet loss type or the newly determined packet loss type is a congestion packet loss, adjusting the bandwidth estimation value according to the packet loss type or the newly determined packet loss type includes:
and adjusting the bandwidth estimation value downwards according to the packet loss rate corresponding to the congestion packet loss.
According to one or more embodiments of the present disclosure, [ example ten ] there is provided a congestion control method of a network, further comprising:
in some optional implementation manners of the embodiment of the present disclosure, if the packet loss type is a congestion relief packet loss, the adjusting the bandwidth estimation value according to the packet loss type includes:
and according to the congestion relieving packet loss, keeping a bandwidth estimation value.
According to one or more embodiments of the present disclosure, [ example eleven ] there is provided a congestion control method of a network, further comprising:
in some optional implementation manners of the embodiment of the disclosure, the method is applied to webpage real-time communication; correspondingly, configuring the actual transmission data includes: and carrying out media parameter configuration on the real-time audio and video data.
The foregoing description is only exemplary of the preferred embodiments of the disclosure and is illustrative of the principles of the technology employed. It will be appreciated by those skilled in the art that the scope of the disclosure herein is not limited to the particular combination of features described above, but also encompasses other combinations of features described above or equivalents thereof without departing from the spirit of the disclosure. For example, the above features and the technical features disclosed in the present disclosure (but not limited to) having similar functions are replaced with each other to form the technical solution.
Further, while operations are depicted in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order. Under certain circumstances, multitasking and parallel processing may be advantageous. Likewise, while several specific implementation details are included in the above discussion, these should not be construed as limitations on the scope of the disclosure. Certain features that are described in the context of separate embodiments can also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment can also be implemented in multiple embodiments separately or in any suitable subcombination.
Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims.

Claims (13)

1. A method for congestion control in a network, comprising:
continuously monitoring a first network parameter corresponding to actual transmission data, and determining a packet loss type according to a trend characteristic of the first network parameter when a packet loss rate in the first network parameter meets a preset condition;
adjusting a bandwidth estimation value according to the packet loss type, and configuring the actual transmission data according to the adjusted bandwidth estimation value;
if the packet loss type is a stable packet loss, before the adjusting the bandwidth estimation value according to the packet loss type, the method further includes:
continuously triggering the probe data of the first preset numerical value, and collecting a second network parameter corresponding to the triggered probe data of each time;
re-determining the packet loss type according to the trend characteristic of the second network parameter;
correspondingly, the adjusting the bandwidth estimation value according to the packet loss type includes: and adjusting the bandwidth estimation value according to the determined packet loss type.
2. The method according to claim 1, wherein the packet loss ratio in the first network parameter satisfies a preset condition, and the method comprises:
and the packet loss rate in the first network parameter is greater than the duration of a preset packet loss rate, and the preset duration is reached.
3. The method of claim 1, wherein determining the packet loss type according to the trend characteristic of the first network parameter comprises:
and determining a first slope according to the first network parameter, and determining a packet loss type according to the first slope, wherein the first slope is obtained based on the change rate of the first network parameter.
4. The method according to claim 1, wherein the probe data is marked from the transmission data of the actual transmission data, and the continuously triggered first preset number of times of the probe data has a preset trend characteristic.
5. The method according to claim 1, wherein the re-determining the packet loss type according to the trend characteristic of the second network parameter comprises:
determining a second slope according to the second network parameter, and determining the correlation between the sending rate and the receiving rate in the second network parameter, wherein the second slope is obtained based on the change rate of the second network parameter;
and re-determining the packet loss type according to the second slope and the correlation.
6. The method of claim 5, further comprising, prior to said determining a second slope based on said second network parameter:
correcting the second network parameter according to the packet loss rate in the second network parameter;
correspondingly, the determining a second slope according to the second network parameter and determining a correlation between a sending rate and a receiving rate in the second network parameter includes:
and determining a second slope according to the modified second network parameter, and determining the correlation between the sending rate and the receiving rate in the modified second network parameter.
7. The method according to claim 1, wherein if the re-determined packet loss type is an inherent packet loss, the adjusting the bandwidth estimation value according to the re-determined packet loss type includes:
according to the inherent packet loss, keeping a bandwidth estimation value;
correspondingly, after the adjusting the bandwidth estimation value according to the re-determined packet loss type, the method further includes:
and monitoring the average packet loss rate corresponding to the actual transmission data, and repeatedly and continuously monitoring the first network parameter corresponding to the actual transmission data when the variation rate of the average packet loss rate is greater than a second preset value.
8. The method of claim 1, wherein if the packet loss type or the newly determined packet loss type is a congestion packet loss, adjusting the bandwidth estimation value according to the packet loss type or the newly determined packet loss type comprises:
and adjusting the bandwidth estimation value downwards according to the packet loss rate corresponding to the congestion packet loss.
9. The method of claim 1, wherein if the packet loss type is a congestion mitigation packet loss, the adjusting the bandwidth estimation value according to the packet loss type comprises:
and according to the congestion relieving packet loss, keeping a bandwidth estimation value.
10. The method of claim 1, applied to web real-time communication; correspondingly, configuring the actual transmission data includes: and carrying out media parameter configuration on the real-time audio and video data.
11. A congestion control apparatus of a network, comprising:
the type determining module is used for continuously monitoring a first network parameter corresponding to actual transmission data, and determining a packet loss type according to a trend characteristic of the first network parameter when the packet loss rate in the first network parameter meets a preset condition;
the congestion control module is used for adjusting a bandwidth estimation value according to the packet loss type and configuring the actual transmission data according to the adjusted bandwidth estimation value;
if the packet loss type is a stable packet loss, the type determining module is further configured to: continuously triggering probe data of a first preset number of times before adjusting the bandwidth estimation value according to the packet loss type, and collecting a second network parameter corresponding to the probe data triggered each time; re-determining the packet loss type according to the trend characteristic of the second network parameter; correspondingly, the congestion control module is further configured to: and adjusting the bandwidth estimation value according to the redetermined packet loss type.
12. An electronic device, characterized in that the electronic device comprises:
one or more processors;
a storage device for storing one or more programs,
when executed by the one or more processors, cause the one or more processors to implement a method of congestion control for a network according to any one of claims 1-10.
13. A storage medium containing computer executable instructions for performing a method of congestion control of a network according to any one of claims 1-10 when executed by a computer processor.
CN202110113639.0A 2021-01-27 2021-01-27 Network congestion control method and device, electronic equipment and storage medium Active CN112953847B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110113639.0A CN112953847B (en) 2021-01-27 2021-01-27 Network congestion control method and device, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110113639.0A CN112953847B (en) 2021-01-27 2021-01-27 Network congestion control method and device, electronic equipment and storage medium

Publications (2)

Publication Number Publication Date
CN112953847A CN112953847A (en) 2021-06-11
CN112953847B true CN112953847B (en) 2022-11-11

Family

ID=76238138

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110113639.0A Active CN112953847B (en) 2021-01-27 2021-01-27 Network congestion control method and device, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN112953847B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115086200B (en) * 2022-05-06 2023-09-01 北京达佳互联信息技术有限公司 Packet loss type determining method and device, electronic equipment and storage medium
CN115174429B (en) * 2022-05-25 2024-04-09 深信服科技股份有限公司 Network bandwidth detection method, device, system, equipment and storage medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101222311A (en) * 2008-01-29 2008-07-16 杭州华三通信技术有限公司 Real-time packet loss recovery method, system and receiving terminal unit
CN109219078A (en) * 2017-07-04 2019-01-15 大唐移动通信设备有限公司 Voice loss treating method and device
CN109847342A (en) * 2019-03-19 2019-06-07 Oppo广东移动通信有限公司 Network detecting method and relevant apparatus

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101610199B (en) * 2008-06-17 2012-05-30 北京邮电大学 Heterogeneous network packet loss differentiating method based on fuzzy comprehensive judgment
CN104322017B (en) * 2012-12-27 2017-04-26 华为技术有限公司 Method, device, and system for identifying network packet loss type
CN103986548B (en) * 2013-02-07 2018-02-23 华为技术有限公司 A kind of method and terminal for determining packet loss reason
JP6146716B2 (en) * 2013-11-05 2017-06-14 パナソニックIpマネジメント株式会社 RADIO COMMUNICATION SYSTEM, RECEPTION DEVICE, TRANSMISSION DEVICE, AND TRANSMISSION RATE CONTROL METHOD
CN106170955B (en) * 2014-09-29 2019-10-25 华为技术有限公司 A kind of flow control methods and system
CN105357138B (en) * 2015-09-30 2018-06-05 四川大学 A kind of adaptive method for reliable transmission based on low priority
CN105306888B (en) * 2015-10-03 2018-07-10 上海大学 Mobile video monitor bandwidth self-adaption method based on packet loss differentiating
WO2017132987A1 (en) * 2016-02-05 2017-08-10 中国科学院计算技术研究所 Method and system for recognizing packet loss type in data transmission of reliable transmission protocol
JP2017152898A (en) * 2016-02-24 2017-08-31 富士通株式会社 Available band specification program, available band specification device, and available band specification method
CN106255149B (en) * 2016-08-10 2019-12-24 广州市百果园网络科技有限公司 Media data transmission method and device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101222311A (en) * 2008-01-29 2008-07-16 杭州华三通信技术有限公司 Real-time packet loss recovery method, system and receiving terminal unit
CN109219078A (en) * 2017-07-04 2019-01-15 大唐移动通信设备有限公司 Voice loss treating method and device
CN109847342A (en) * 2019-03-19 2019-06-07 Oppo广东移动通信有限公司 Network detecting method and relevant apparatus

Also Published As

Publication number Publication date
CN112953847A (en) 2021-06-11

Similar Documents

Publication Publication Date Title
CN112953847B (en) Network congestion control method and device, electronic equipment and storage medium
US8976656B2 (en) Available bandwidth measurement system, transmission device, available bandwidth measurement method and recording medium
EP2757740B1 (en) Streaming media transmission quality evaluation and information acquisition method, relevant device and system
CN110290428B (en) Congestion control method, device, terminal and storage medium
CN111787069A (en) Method, device and equipment for processing service access request and computer storage medium
US20130142243A1 (en) Transmitting device, transmitting method, integrated circuit, and program
US20180376176A1 (en) Quality-of-experience optimization apparatus, network quality estimation apparatus, mobile terminal, quality-of-experience optimization method, network quality estimation method, and program
US9326161B2 (en) Application-driven control of wireless networking settings
CN113595830A (en) Method, device, equipment and storage medium for detecting network packet loss state
JP7099537B2 (en) Communication equipment, communication methods and programs
CN109981214B (en) Transmission control method and device
CN114039926B (en) Transmission control protocol determining method and device, readable medium and electronic equipment
US9380477B2 (en) Terminal, and system and method for monitoring wireless network
US11303552B2 (en) Receiver, communication system, available bandwidth estimation method, and storage medium in which program is stored
JP4681877B2 (en) Wireless terminal and wireless communication system
CN110290552B (en) Method and device for measuring cache depth, storage medium and electronic device
CN115801639B (en) Bandwidth detection method and device, electronic equipment and storage medium
CN113542215B (en) Method and related device for improving streaming media transmission performance
CN113315773A (en) Code rate adjusting method and device, electronic equipment and storage medium
EP2086259B1 (en) Radio base station and scheduling method
CN117459470A (en) Code rate adjusting method, device, electronic equipment, medium and product
CN111132323B (en) Pre-scheduling control method and device
JP2014036311A (en) Communication terminal, program and method for determining deterioration in communication quality by use of successively updated communication quality determination condition
CN111148227B (en) Method and device for requesting time-frequency resource in fleet, storage medium and UE
CN117478598A (en) Congestion control method, device, equipment and storage medium for transmission link

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