CN113115078A - Bandwidth adjusting method and device - Google Patents

Bandwidth adjusting method and device Download PDF

Info

Publication number
CN113115078A
CN113115078A CN202110383949.4A CN202110383949A CN113115078A CN 113115078 A CN113115078 A CN 113115078A CN 202110383949 A CN202110383949 A CN 202110383949A CN 113115078 A CN113115078 A CN 113115078A
Authority
CN
China
Prior art keywords
bandwidth
time
server
data
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.)
Granted
Application number
CN202110383949.4A
Other languages
Chinese (zh)
Other versions
CN113115078B (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.)
Zhejiang Dahua Technology Co Ltd
Original Assignee
Zhejiang Dahua 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 Zhejiang Dahua Technology Co Ltd filed Critical Zhejiang Dahua Technology Co Ltd
Priority to CN202110383949.4A priority Critical patent/CN113115078B/en
Publication of CN113115078A publication Critical patent/CN113115078A/en
Application granted granted Critical
Publication of CN113115078B publication Critical patent/CN113115078B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2385Channel allocation; Bandwidth allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26208Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
    • H04N21/26216Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving the channel capacity, e.g. network bandwidth

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

The invention provides a method and a device for adjusting bandwidth, which comprise the following steps: determining a first time difference according to the sending time and the receiving time of the media data, wherein the sending time is the time for sending the media data by the terminal, and the receiving time is the time for receiving the media data by the server; determining a first data difference according to the sending quantity and the receiving quantity of the media data, wherein the sending quantity is the data quantity of the media data sent by the terminal, and the receiving quantity is the data quantity of the media data received by the server; and adjusting the bandwidth of the terminal according to the first time difference and the first data difference. The invention solves the problem that the network fluctuation influences the media data transmission.

Description

Bandwidth adjusting method and device
Technical Field
The present invention relates to the field of communications, and in particular, to a method and an apparatus for adjusting a bandwidth.
Background
At present, in the process of real-time transmission and communication of media data (for example, audio and video data), the transmission of the real-time media data is often interrupted or the transmission quality is poor due to the network bandwidth or network fluctuation of one party, and thus the communication quality is affected. Existing solutions are broadly divided into two categories: (1) using a fixed bandwidth value within a certain bandwidth range according to different device types; (2) the sender is given a very large bandwidth value and is given enough receivers to receive media data (mainly in the field of live video).
Two communication parties can not self-adaptively adjust in real time according to the mutual bandwidth, which can cause that if one party has insufficient bandwidth, if the other party does not correspondingly adjust the bandwidth, the media data transmission is forced to pause or be blocked. If the dual-transmission bandwidth resources are sufficient and can support the mutual transmission of the media data, the bandwidth resources are excessive, and the resource waste is caused. The specific disadvantages are as follows: 1. fixing different bandwidths according to the types of the devices, for example, taking 50% of the bandwidth value in the current network environment as the bandwidth of the receiving end, which results in that the bandwidth cannot be flexibly adjusted, and the environment with network fluctuation or bandwidth variation cannot be flexibly adapted and the corresponding bandwidth can be adjusted; 2. the communication dual-transmission can not adjust the corresponding bandwidth according to the network conditions of the respective and the opposite side to adapt to the network environment of the actual media data transmission, and can not relieve the transmission interruption or unsmooth condition caused by the fluctuation of the network condition.
Therefore, in the related art, an effective solution does not exist at present for the problem that network fluctuation affects media data transmission due to the fact that dual or multi-party media data transmission cannot achieve bandwidth adaptive adjustment.
Disclosure of Invention
The embodiment of the invention provides a method and a device for adjusting bandwidth, which are used for at least solving the problem that network fluctuation influences media data transmission due to the fact that double transmission or multi-party self-adaptive adjustment of the bandwidth cannot be realized in related technologies.
According to an embodiment of the present invention, there is provided a bandwidth adjusting method, including: determining a first time difference according to the sending time and the receiving time of the media data, wherein the sending time is the time when the terminal sends the media data, and the receiving time is the time when the server receives the media data; determining a first data difference according to a transmission amount and a receiving amount of the media data, wherein the transmission amount is the data amount of the media data transmitted by the terminal, and the receiving amount is the data amount of the media data received by the server; and adjusting the bandwidth of the terminal according to the first time difference and the first data difference.
Optionally, adjusting the bandwidth of the terminal according to the first time difference and the first data difference includes: inputting the first time difference and the first data difference into a first model to obtain a correction parameter; determining a bandwidth adjustment value according to the correction parameter; and determining the bandwidth of the terminal as the bandwidth adjustment value.
Optionally, inputting the first time difference and the first data difference into a first model comprises: inputting the first time difference and the first data difference into the following equation:
Figure BDA0003014084910000021
wherein u (i) is the correction parameter, Δ t is the first time difference, Δ d is the first data difference, and C is a network transmission capability value.
Optionally, determining a bandwidth adjustment value according to the correction parameter includes: determining the bandwidth adjustment value as
Figure BDA0003014084910000022
Determining the bandwidth adjustment value as D under the condition that the correction parameter is equal to the preset threshold value0(ii) a Wherein γ is the predetermined threshold, u (i) is the correction parameter, D0Is the initial bandwidth of the terminal.
Optionally, the method further comprises: and determining the bandwidth adjustment value of the terminal as a first upper limit value under the condition that the bandwidth adjustment value is greater than or equal to the first upper limit value.
Optionally, the method further comprises: determining bandwidths of n terminals connected with the server to obtain n bandwidth values, wherein n is an integer greater than 1, and the n terminals comprise the terminals; determining the middle value of the n bandwidth values as a reference value; and adjusting the bandwidth of the server according to the reference value.
Optionally, adjusting the bandwidth of the server according to the reference value includes: determining that the bandwidth of the server is DS under the condition that the packet loss rate of the server is within a first threshold rangebX n, wherein the average packet loss rate is an average packet loss rate of n links, each of the n linksThe path is a communication link between each terminal and the server; determining the bandwidth of the server to be aDS under the condition that the average packet loss rate is in a second threshold rangebX is x n; determining the bandwidth of the server to be (1-LR) DS under the condition that the average packet loss rate is within a third threshold rangebX is x n; wherein, DSbAnd the reference value is n, the number of terminals connected with the server is n, a is a constant greater than 1, and LR is the average packet loss rate.
Optionally, the method further comprises: and determining the bandwidth of the server to be a second upper limit value when the bandwidth of the server is greater than or equal to the second upper limit value.
According to another embodiment of the present invention, there is provided a bandwidth adjusting apparatus including: a first determining module, configured to determine a first time difference according to a sending time and a receiving time of media data, where the sending time is a time when a terminal sends the media data, and the receiving time is a time when a server receives the media data; a second determining module, configured to determine a first data difference according to a sending amount and a receiving amount of the media data, where the sending amount is a data amount of the media data sent by the terminal, and the receiving amount is a data amount of the media data received by the server; and the adjusting module is used for adjusting the bandwidth of the terminal according to the first time difference and the first data difference.
According to a further embodiment of the present invention, there is also provided a storage medium having a computer program stored therein, wherein the computer program is arranged to perform the steps of any of the above method embodiments when executed.
According to yet another embodiment of the present invention, there is also provided an electronic device, including a memory in which a computer program is stored and a processor configured to execute the computer program to perform the steps in any of the above method embodiments.
According to the invention, the first time difference is determined according to the sending time and the receiving time of the media data, wherein the sending time is the time for sending the media data by the terminal, and the receiving time is the time for receiving the media data by the server; determining a first data difference according to the sending quantity and the receiving quantity of the media data, wherein the sending quantity is the data quantity of the media data sent by the terminal, and the receiving quantity is the data quantity of the media data received by the server; and adjusting the bandwidth of the terminal according to the first time difference and the first data difference. Therefore, the problem that network fluctuation influences media data transmission due to the fact that double transmission or multiple transmission of the media data cannot achieve bandwidth self-adaptive adjustment can be solved, and the effects that the bandwidth can be adjusted in a self-adaptive mode in real time and the media data transmission efficiency is improved are achieved.
Drawings
The accompanying drawings, which are included to provide a further understanding of the invention and are incorporated in and constitute a part of this application, illustrate embodiment(s) of the invention and together with the description serve to explain the invention without limiting the invention. In the drawings:
fig. 1 is a block diagram of a hardware structure of a terminal of a bandwidth adjustment method according to an embodiment of the present invention;
fig. 2 is a flowchart of a bandwidth adjustment method according to an embodiment of the present invention;
FIG. 3 is a schematic view of a video conference model according to an alternative embodiment of the present invention;
FIG. 4 is a schematic overview flow chart diagram according to an alternative embodiment of the present invention;
fig. 5 is a block diagram of a bandwidth adjustment apparatus according to an embodiment of the present invention.
Detailed Description
The invention will be described in detail hereinafter with reference to the accompanying drawings in conjunction with embodiments. It should be noted that the embodiments and features of the embodiments in the present application may be combined with each other without conflict.
It should be noted that the terms "first," "second," and the like in the description and claims of the present invention and in the drawings described above are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order.
The method provided by the first embodiment of the present application may be executed in a terminal, a computer terminal, or a similar computing device. Taking an operation on a terminal as an example, fig. 1 is a hardware structure block diagram of a terminal of a bandwidth adjusting method according to an embodiment of the present invention. As shown in fig. 1, the terminal 10 may include one or more (only one shown in fig. 1) processors 102 (the processor 102 may include, but is not limited to, a processing device such as a microprocessor MCU or a programmable logic device FPGA) and a memory 104 for storing data, and optionally may also include a transmission device 106 for communication functions and an input-output device 108. It will be understood by those skilled in the art that the structure shown in fig. 1 is only an illustration and is not intended to limit the structure of the terminal. For example, the terminal 10 may also include more or fewer components than shown in FIG. 1, or have a different configuration than shown in FIG. 1.
The memory 104 may be used to store a computer program, for example, a software program and a module of an application software, such as a computer program corresponding to the bandwidth adjustment method in the embodiment of the present invention, and the processor 102 executes various functional applications and data processing by running the computer program stored in the memory 104, so as to implement the method described above. The memory 104 may include high speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some examples, the memory 104 may further include memory located remotely from the processor 102, which may be connected to the terminal 10 via a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
The transmission device 106 is used for receiving or transmitting data via a network. Specific examples of the network described above may include a wireless network provided by a communication provider of the terminal 10. In one example, the transmission device 106 includes a Network adapter (NIC), which can be connected to other Network devices through a base station so as to communicate with the internet. In one example, the transmission device 106 may be a Radio Frequency (RF) module, which is used for communicating with the internet in a wireless manner.
In this embodiment, a method for adjusting a bandwidth operating in the terminal is provided, and fig. 2 is a flowchart of a method for adjusting a bandwidth according to an embodiment of the present invention, as shown in fig. 2, where the flowchart includes the following steps:
step S202, determining a first time difference according to the sending time and the receiving time of the media data, wherein the sending time is the time for the terminal to send the media data, and the receiving time is the time for the server to receive the media data;
step S204, determining a first data difference according to the sending quantity and the receiving quantity of the media data, wherein the sending quantity is the data quantity of the media data sent by the terminal, and the receiving quantity is the data quantity of the media data received by the server;
step S206, adjusting the bandwidth of the terminal according to the first time difference and the first data difference.
Since the first time difference is determined by the transmission time and the reception time of the media data, the transmission time is a time when the terminal transmits the media data, and the reception time is a time when the server receives the media data; determining a first data difference according to the sending quantity and the receiving quantity of the media data, wherein the sending quantity is the data quantity of the media data sent by the terminal, and the receiving quantity is the data quantity of the media data received by the server; and adjusting the bandwidth of the terminal according to the first time difference and the first data difference. Therefore, the problem that network fluctuation influences media data transmission due to the fact that double transmission or multiple transmission of the media data cannot achieve bandwidth self-adaptive adjustment can be solved, and the effects that the bandwidth can be adjusted in a self-adaptive mode in real time and the media data transmission efficiency is improved are achieved.
Alternatively, the execution subject of the above steps may be a terminal or the like, but is not limited thereto.
As an alternative implementation, the present application may be applied in a video conference scenario, and fig. 3 is a schematic diagram of a video conference model according to an alternative embodiment of the present invention. The participants can use terminals (such as mobile phones, computers and tablet computers) to participate in the video conference, and the number of the terminals participating in the conference is assumed to be n, wherein n is an integer. In order to reduce the number of suggested connection nodes between participants, enlarge the participants and reduce the load, the present application constructs a "bridge-star model" as shown in fig. 3. The bridge-star video conference server model can be respectively allocated at a server side and a user side to carry out bandwidth constraint configuration in a C/S video conference mode. Namely, a total constrained bandwidth server is additionally configured at the server end to perform summary calculation and transmission of each branch bandwidth, so that the load balancing function and the total constrained bandwidth function are achieved. And configuring a bandwidth constrainer of each branch in video conference software of each user end, and adjusting and constraining the bandwidth of each branch link.
As an alternative embodiment, n participants establish connections with the server respectively. In reality, the bandwidth capacity of each branch user and the total server is limited and is a certain value. The total bandwidth of the server side can be set as BWSThe bandwidth upper limit of each terminal on each branch link is BWCi. In addition, in practical cases, in consideration of actual loss and other use cases, the effective utilization rate of the total bandwidth actually used in the video conference is assumed to be 85%, and this value is merely for illustrating the embodiment and is not limited herein, and may be determined according to practical cases. Therefore, the effective upper limit of the total bandwidth at the server side is 0.85BWSThe bandwidth effective upper limit of each branch is 0.85BWCi
As an optional implementation, the media data may be audio/video bitstream data, and fig. 4 is a general flowchart diagram according to an optional embodiment of the present invention. And acquiring the sending time of the audio and video code stream data uploaded by each single-channel stream of each of the n terminals participating in the conference and the receiving time of the data of the frame received by the server. n denotes the number of terminals participating in the conference and may also denote the identity of the respective terminal, e.g. t10Indicating the time, t, at which the 1 st terminal transmits the video stream datan0And the time of the nth terminal for transmitting the video code stream data is shown. In the same way, tn1And the time of the server receiving the video code stream data sent by the nth terminal is represented.
As an alternativeIn the implementation manner, taking the nth terminal as an example, the sending time t of uploading audio and video code stream data by the nth terminal is knownn0If the time is t, the video code stream data is sentn0The server receives the receiving time t of the audio and video code stream datan1If the received time of the audio/video code stream data is t, the receiving time is indicated to be tn1Their time difference is a first time difference Δ tn(i),Δtn(i)=tn1-tn0. Assuming that the audio and video data volume uploaded by the nth terminal is the sending volume dn0The receiving quantity of the audio and video data received by the server is dn1First data difference Δ dn(i) Is dn1-dn0. According to Δ tn(i) And Δ dn(i) The bandwidth correction parameter can be obtained, and the bandwidth of the nth terminal can be adjusted based on the bandwidth correction parameter.
Optionally, adjusting the bandwidth of the terminal according to the first time difference and the first data difference includes: inputting the first time difference and the first data difference into a first model to obtain a correction parameter; determining a bandwidth adjustment value according to the correction parameter; and determining the bandwidth of the terminal as the bandwidth adjustment value.
Optionally, inputting the first time difference and the first data difference into a first model comprises: inputting the first time difference and the first data difference into the following equation:
Figure BDA0003014084910000071
wherein u (i) is the correction parameter, Δ t is the first time difference, Δ d is the first data difference, and C is a network transmission capability value.
As an alternative, the bandwidth capacity on the path of the nth terminal is assumed to be C (which may also be referred to as a network transmission capacity value, and the fixed environment is a certain value). Since the transmission time of a frame with a data size d is: t is tdd/C. Based on this, taking the nth terminal as an example, a first model can be constructed:
Figure BDA0003014084910000081
Figure BDA0003014084910000082
a first model can thus be obtained:
Figure BDA0003014084910000083
the model may be applied to each leg on n terminals. u (i) is a correction parameter, Δ t is a first time difference, Δ d is a first data difference, and C is a network transmission capability value. The parameter u (i) can be regarded as a time correction parameter, which is mainly determined by the network transmission capability and the network routing capability.
Optionally, determining a bandwidth adjustment value according to the correction parameter includes: determining the bandwidth adjustment value as
Figure BDA0003014084910000084
Determining the bandwidth adjustment value as D under the condition that the correction parameter is equal to the preset threshold value0(ii) a Wherein γ is the predetermined threshold, u (i) is the correction parameter, D0Is the initial bandwidth of the terminal.
As an alternative, the preset threshold γ for introducing the time correction parameter may be derived from the values of the sample values u (i) of a plurality of random processes, that is, γ may be derived from the values of the sample values u (i) of a plurality of random processes
Figure BDA0003014084910000085
The most frequent value (theoretically, when the number of random samples is large enough, the value of u (i) follows a gaussian distribution). In this embodiment, when u (i)>Gamma, indicating that the excessive bandwidth is occupied, and correcting the current bandwidth to be
Figure BDA0003014084910000086
When u (i) is γ, the exact bandwidth is used, whenPrevious initial bandwidth invariant D0. When u (i)<Gamma, indicating less bandwidth is occupied, and correcting the current bandwidth to be
Figure BDA0003014084910000087
As an optional implementation manner, the initial stable network speed of each branch participating terminal is set as vn(KB/s), initially calculating the initial bandwidth of each branch mobile terminal as
Figure BDA0003014084910000088
Optionally, the method further comprises: and determining the bandwidth adjustment value of the terminal as a first upper limit value under the condition that the bandwidth adjustment value is greater than or equal to the first upper limit value.
As an optional embodiment, the first upper limit value may be a bandwidth effective upper limit of 0.85BWCi. The corrected bandwidth needs to meet a BW of 0.85 or lessCiIf the corrected BW is larger than 0.85BWCiThen, take 0.85BWCi. The above 0.85 is for explaining the present embodiment, and the specific value may be determined according to actual circumstances.
Optionally, the method further comprises: determining bandwidths of n terminals connected with the server to obtain n bandwidth values, wherein n is an integer greater than 1, and the n terminals comprise the terminals; determining the middle value of the n bandwidth values as a reference value; and adjusting the bandwidth of the server according to the reference value.
As an optional implementation manner, assume that n terminals are connected to a server, and bandwidth values of n branches of the n terminals are obtained and sent to the server side in parallel. At this time, the server side obtains the bandwidth value of each branch terminal, and further obtains the packet loss rate of the communication link on each branch. The server carries out descending order arrangement on the bandwidth of each branch, and takes the median value as the bandwidth sending reference value DS of the server endbThe total bandwidth value that the server needs to support can satisfy is the bandwidth transmission reference value DSb×n。
Optionally, according to the reference valueAdjusting the bandwidth of the server, including: determining that the bandwidth of the server is DS under the condition that the packet loss rate of the server is within a first threshold rangebXn, where the average packet loss rate is an average packet loss rate of n links, and each link in the n links is a communication link between each terminal and the server; determining the bandwidth of the server to be aDS under the condition that the average packet loss rate is in a second threshold rangebX is x n; determining the bandwidth of the server to be (1-LR) DS under the condition that the average packet loss rate is within a third threshold rangebX is x n; wherein, DSbAnd the reference value is n, the number of terminals connected with the server is n, a is a constant greater than 1, and LR is the average packet loss rate.
As an optional implementation manner, the average packet loss rate LR is obtained by obtaining the packet loss rate of each link on n branches according to the server, summing the packet loss rates, and dividing the sum by the number n of participants. And correcting the bandwidth of the server according to the average packet loss rate. If the average packet loss rate LR is within a first threshold range (e.g., between 1% and 10%, excluding the boundary), the bandwidth transmission reference value of the server is not changed and remains as the DSbThe corresponding total bandwidth of the server is DSbX n. If the average packet loss rate LR is within the second threshold range (e.g., less than or equal to 1%), the bandwidth transmission reference value of the server is aDSbThe corresponding total server bandwidth value is aDSbX n, a is a constant greater than 1, e.g., 1.1. If the average packet loss rate LR is within the third threshold range (e.g., 10% or more), the bandwidth transmission reference value of the server is (1-LR) according to (1-LR), and the corresponding total server bandwidth value is (1-LR) × DSb×n。
Optionally, the method further comprises: and determining the bandwidth of the server to be a second upper limit value when the bandwidth of the server is greater than or equal to the second upper limit value.
As an alternative embodiment, the second upper limit value may be 0.85BWSThe finally calculated total bandwidth of the server side needs to meet the BW less than or equal to 0.85SIf it is larger than 0.85BWSIf the total bandwidth is 0.85BWS
The server side adjusts the reference value sent by the bandwidth of the server side and the corresponding required total bandwidth according to the correction rule to serve as the reference standard of the issued bandwidth, and therefore the multi-party bandwidth self-adaptive adjustment effect is achieved. Considering that the computational load and adjustment brought by real-time adjustment may influence the fluency of the video conference, which may cause the video conference to be jammed midway, and influence the conference experience, the method can wait for a period of time, namely, can perform once more bandwidth self-adaptation of multiple parties of the video conference after stopping for x minutes (5-15 minutes is recommended).
According to the method and the device, the bandwidth utilization rate is obtained by constructing the branch bandwidth correction model, and the bandwidth value of the local participant is corrected so as to reduce the algorithm calculation error. And establishing a bandwidth correction rule of the server side, correcting the bandwidth value by combining each corrected branch, and adaptively adjusting the bandwidth sending reference value of the server side. According to a bridge-star video conference model, the bandwidth self-adaptive algorithm for the video conference is designed in a combined manner, so that the problem of multi-party bandwidth self-adaptive adjustment in the audio and video transmission process, particularly in the video conference scene, is solved. The method and the device can realize the self-adaptive adjustment of the bandwidth of multiple parties. The method is particularly applied to the scene of the multi-person video conference, the self-adaptive adjustment of the multi-party bandwidth of the conference participants is realized, the normal flow of the multi-person video conference is realized, and the influence of network fluctuation on the fluency of the video conference is avoided or relieved.
Through the above description of the embodiments, those skilled in the art can clearly understand that the method according to the above embodiments can be implemented by software plus a necessary general hardware platform, and certainly can also be implemented by hardware, but the former is a better implementation mode in many cases. Based on such understanding, the technical solutions of the present invention may be embodied in the form of a software product, which is stored in a storage medium (e.g., ROM/RAM, magnetic disk, optical disk) and includes instructions for enabling a terminal device (e.g., a mobile phone, a computer, a server, or a network device) to execute the method according to the embodiments of the present invention.
In this embodiment, a bandwidth adjusting device is further provided, and the bandwidth adjusting device is used to implement the foregoing embodiments and preferred embodiments, which have already been described and are not described again. As used below, the term "module" may be a combination of software and/or hardware that implements a predetermined function. Although the means described in the embodiments below are preferably implemented in software, an implementation in hardware, or a combination of software and hardware is also possible and contemplated.
Fig. 5 is a block diagram of a bandwidth adjusting apparatus according to an embodiment of the present invention, and as shown in fig. 5, the apparatus includes: a first determining module 52, configured to determine a first time difference according to a sending time and a receiving time of media data, where the sending time is a time when the terminal sends the media data, and the receiving time is a time when the server receives the media data; a second determining module 54, configured to determine a first data difference according to a sending amount and a receiving amount of the media data, where the sending amount is a data amount of the media data sent by the terminal, and the receiving amount is a data amount of the media data received by the server; and an adjusting module 56, configured to adjust a bandwidth of the terminal according to the first time difference and the first data difference.
Optionally, the device is configured to input the first time difference and the first data difference into a first model to obtain a correction parameter; determining a bandwidth adjustment value according to the correction parameter; and determining the bandwidth of the terminal as the bandwidth adjustment value.
Optionally, the above apparatus is configured to input the first time difference and the first data difference into the first model by: inputting the first time difference and the first data difference into the following equation:
Figure BDA0003014084910000111
wherein u (i) is the correction parameter, Δ t is the first time difference, Δ d is the first data difference, and C is a network transmission capability value.
Optionally, the device is used when the correction parameter is largeUnder the condition of or less than a preset threshold value, determining the bandwidth adjustment value as
Figure BDA0003014084910000112
Determining the bandwidth adjustment value as D under the condition that the correction parameter is equal to the preset threshold value0(ii) a Wherein γ is the predetermined threshold, u (i) is the correction parameter, D0Is the initial bandwidth of the terminal.
Optionally, the apparatus is configured to determine that the bandwidth adjustment value of the terminal is the first upper limit value when the bandwidth adjustment value is greater than or equal to the first upper limit value.
Optionally, the apparatus is configured to determine bandwidths of n terminals connected to the server, to obtain n bandwidth values, where n is an integer greater than 1, and the n terminals include the terminal; determining the middle value of the n bandwidth values as a reference value; and adjusting the bandwidth of the server according to the reference value.
Optionally, the apparatus is configured to determine that the bandwidth of the server is DS when the average packet loss rate is within a first threshold rangebXn, where the average packet loss rate is an average packet loss rate of n links, and each link in the n links is a communication link between each terminal and the server; determining the bandwidth of the server to be aDS under the condition that the average packet loss rate is in a second threshold rangebX is x n; determining the bandwidth of the server to be (1-LR) DS under the condition that the average packet loss rate is within a third threshold rangebX is x n; wherein, DSbAnd the reference value is n, the number of terminals connected with the server is n, a is a constant greater than 1, and LR is the average packet loss rate.
Optionally, the apparatus is configured to determine that the bandwidth of the server is a second upper limit value when the bandwidth of the server is greater than or equal to the second upper limit value.
It should be noted that, the above modules may be implemented by software or hardware, and for the latter, the following may be implemented, but not limited to: the modules are all positioned in the same processor; alternatively, the modules are respectively located in different processors in any combination.
Embodiments of the present invention also provide a storage medium having a computer program stored therein, wherein the computer program is arranged to perform the steps of any of the above method embodiments when executed.
Alternatively, in the present embodiment, the storage medium may be configured to store a computer program for executing the steps of:
s1, determining a first time difference according to the sending time and the receiving time of the media data, wherein the sending time is the time when the terminal sends the media data, and the receiving time is the time when the server receives the media data;
s2, determining a first data difference according to a transmission amount and a reception amount of the media data, wherein the transmission amount is a data amount of the media data transmitted by the terminal, and the reception amount is a data amount of the media data received by the server;
and S3, adjusting the bandwidth of the terminal according to the first time difference and the first data difference.
Optionally, in this embodiment, the storage medium may include, but is not limited to: various media capable of storing computer programs, such as a usb disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a removable hard disk, a magnetic disk, or an optical disk.
Embodiments of the present invention also provide an electronic device comprising a memory having a computer program stored therein and a processor arranged to run the computer program to perform the steps of any of the above method embodiments.
Optionally, the electronic apparatus may further include a transmission device and an input/output device, wherein the transmission device is connected to the processor, and the input/output device is connected to the processor.
Optionally, in this embodiment, the processor may be configured to execute the following steps by a computer program:
s1, determining a first time difference according to the sending time and the receiving time of the media data, wherein the sending time is the time when the terminal sends the media data, and the receiving time is the time when the server receives the media data;
s2, determining a first data difference according to a transmission amount and a reception amount of the media data, wherein the transmission amount is a data amount of the media data transmitted by the terminal, and the reception amount is a data amount of the media data received by the server;
and S3, adjusting the bandwidth of the terminal according to the first time difference and the first data difference.
Optionally, the specific examples in this embodiment may refer to the examples described in the above embodiments and optional implementation manners, and this embodiment is not described herein again.
It will be apparent to those skilled in the art that the modules or steps of the present invention described above may be implemented by a general purpose computing device, they may be centralized on a single computing device or distributed across a network of multiple computing devices, and alternatively, they may be implemented by program code executable by a computing device, such that they may be stored in a storage device and executed by a computing device, and in some cases, the steps shown or described may be performed in an order different than that described herein, or they may be separately fabricated into individual integrated circuit modules, or multiple ones of them may be fabricated into a single integrated circuit module. Thus, the present invention is not limited to any specific combination of hardware and software.
The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention, and various modifications and changes may be made by those skilled in the art. Any modification, equivalent replacement, or improvement made within the principle of the present invention should be included in the protection scope of the present invention.

Claims (10)

1. A method for adjusting bandwidth, comprising:
determining a first time difference according to the sending time and the receiving time of the media data, wherein the sending time is the time when the terminal sends the media data, and the receiving time is the time when the server receives the media data;
determining a first data difference according to a transmission amount and a receiving amount of the media data, wherein the transmission amount is the data amount of the media data transmitted by the terminal, and the receiving amount is the data amount of the media data received by the server;
and adjusting the bandwidth of the terminal according to the first time difference and the first data difference.
2. The method of claim 1, wherein adjusting the bandwidth of the terminal according to the first time difference and the first data difference comprises:
inputting the first time difference and the first data difference into a first model to obtain a correction parameter;
determining a bandwidth adjustment value according to the correction parameter;
and determining the bandwidth of the terminal as the bandwidth adjustment value.
3. The method of claim 2, wherein inputting the first time difference and the first data difference into a first model comprises:
inputting the first time difference and the first data difference into the following equation:
Figure FDA0003014084900000011
wherein u (i) is the correction parameter, Δ t is the first time difference, Δ d is the first data difference, and C is a network transmission capability value.
4. The method of claim 2, wherein determining a bandwidth adjustment value based on the modification parameter comprises:
in the above-mentionedWhen the correction parameter is larger than or smaller than a preset threshold value, determining the bandwidth adjustment value as
Figure FDA0003014084900000021
Determining the bandwidth adjustment value as D under the condition that the correction parameter is equal to the preset threshold value0
Wherein γ is the predetermined threshold, u (i) is the correction parameter, D0Is the initial bandwidth of the terminal.
5. The method of claim 4, further comprising:
and determining the bandwidth adjustment value of the terminal as a first upper limit value under the condition that the bandwidth adjustment value is greater than or equal to the first upper limit value.
6. The method according to any one of claims 1 to 5, further comprising:
determining bandwidths of n terminals connected with the server to obtain n bandwidth values, wherein n is an integer greater than 1, and the n terminals comprise the terminals;
determining the middle value of the n bandwidth values as a reference value;
and adjusting the bandwidth of the server according to the reference value.
7. The method of claim 6, wherein adjusting the bandwidth of the server according to the reference value comprises:
determining the bandwidth of the server as DS under the condition that the average packet loss rate is within a first threshold value rangebXn, where the average packet loss rate is an average packet loss rate of n links, and each link in the n links is a communication link between each terminal and the server;
determining the bandwidth of the server to be aDS under the condition that the average packet loss rate is in a second threshold rangeb×n;
Determining the bandwidth of the server to be (1-LR) DS under the condition that the average packet loss rate is within a third threshold rangeb×n;
Wherein, DSbAnd the reference value is n, the number of terminals connected with the server is n, a is a constant greater than 1, and LR is the average packet loss rate.
8. The method of claim 6, further comprising:
and determining the bandwidth of the server to be a second upper limit value when the bandwidth of the server is greater than or equal to the second upper limit value.
9. An apparatus for adjusting bandwidth, comprising:
a first determining module, configured to determine a first time difference according to a sending time and a receiving time of media data, where the sending time is a time when a terminal sends the media data, and the receiving time is a time when a server receives the media data;
a second determining module, configured to determine a first data difference according to a sending amount and a receiving amount of the media data, where the sending amount is a data amount of the media data sent by the terminal, and the receiving amount is a data amount of the media data received by the server;
and the adjusting module is used for adjusting the bandwidth of the terminal according to the first time difference and the first data difference.
10. A storage medium, in which a computer program is stored, wherein the program is executable by a terminal device or a computer to perform the method of any one of claims 1 to 8.
CN202110383949.4A 2021-04-09 2021-04-09 Bandwidth adjusting method and device Active CN113115078B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110383949.4A CN113115078B (en) 2021-04-09 2021-04-09 Bandwidth adjusting method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110383949.4A CN113115078B (en) 2021-04-09 2021-04-09 Bandwidth adjusting method and device

Publications (2)

Publication Number Publication Date
CN113115078A true CN113115078A (en) 2021-07-13
CN113115078B CN113115078B (en) 2022-08-16

Family

ID=76715317

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110383949.4A Active CN113115078B (en) 2021-04-09 2021-04-09 Bandwidth adjusting method and device

Country Status (1)

Country Link
CN (1) CN113115078B (en)

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101056418A (en) * 2007-06-12 2007-10-17 杭州华三通信技术有限公司 A bandwidth control method and terminal device
US20090122716A1 (en) * 2007-11-14 2009-05-14 Brother Kogyo Kabushiki Kaisha Communication bandwidth measurement apparatus, recording medium on which program is recorded, and method
CN103414956A (en) * 2013-08-13 2013-11-27 中安消技术有限公司 Real-time data transmission method and system based on transmission control protocol
WO2016149863A1 (en) * 2015-03-20 2016-09-29 华为技术有限公司 Streaming media resource downloading method and apparatus, and terminal device
US20160337223A1 (en) * 2014-02-04 2016-11-17 Distrix Networks Ltd. Bandwidth and latency estimation in a communication network
CN106982371A (en) * 2016-12-09 2017-07-25 上海谐桐信息技术有限公司 Code stream control method and system, code stream management method and system, and terminal device
CN107306361A (en) * 2016-04-22 2017-10-31 华为技术有限公司 Code stream transmission method, device and IP Camera
CN109743600A (en) * 2019-01-15 2019-05-10 国网河南省电力公司 Based on wearable live O&M adaptive video stream transmission rate control
CN110266551A (en) * 2019-07-29 2019-09-20 腾讯科技(深圳)有限公司 A kind of bandwidth prediction method, apparatus, equipment and storage medium
CN111225254A (en) * 2020-01-20 2020-06-02 视联动力信息技术股份有限公司 Video transmission method, device, terminal equipment and storage medium
CN112448893A (en) * 2019-08-29 2021-03-05 中兴通讯股份有限公司 Link bandwidth adjusting method, device and storage medium

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101056418A (en) * 2007-06-12 2007-10-17 杭州华三通信技术有限公司 A bandwidth control method and terminal device
US20090122716A1 (en) * 2007-11-14 2009-05-14 Brother Kogyo Kabushiki Kaisha Communication bandwidth measurement apparatus, recording medium on which program is recorded, and method
CN103414956A (en) * 2013-08-13 2013-11-27 中安消技术有限公司 Real-time data transmission method and system based on transmission control protocol
US20160337223A1 (en) * 2014-02-04 2016-11-17 Distrix Networks Ltd. Bandwidth and latency estimation in a communication network
WO2016149863A1 (en) * 2015-03-20 2016-09-29 华为技术有限公司 Streaming media resource downloading method and apparatus, and terminal device
CN107306361A (en) * 2016-04-22 2017-10-31 华为技术有限公司 Code stream transmission method, device and IP Camera
CN106982371A (en) * 2016-12-09 2017-07-25 上海谐桐信息技术有限公司 Code stream control method and system, code stream management method and system, and terminal device
CN109743600A (en) * 2019-01-15 2019-05-10 国网河南省电力公司 Based on wearable live O&M adaptive video stream transmission rate control
CN110266551A (en) * 2019-07-29 2019-09-20 腾讯科技(深圳)有限公司 A kind of bandwidth prediction method, apparatus, equipment and storage medium
CN112448893A (en) * 2019-08-29 2021-03-05 中兴通讯股份有限公司 Link bandwidth adjusting method, device and storage medium
CN111225254A (en) * 2020-01-20 2020-06-02 视联动力信息技术股份有限公司 Video transmission method, device, terminal equipment and storage medium

Also Published As

Publication number Publication date
CN113115078B (en) 2022-08-16

Similar Documents

Publication Publication Date Title
CN105610635B (en) Voice coding sending method and device
US9860138B2 (en) Bandwidth on demand in SDN networks
Poularakis et al. Video delivery over heterogeneous cellular networks: Optimizing cost and performance
CN105765925B (en) In the progress run by the network equipment between service conversation the available bandwidth of distributed network method and relevant device
Dao et al. SGCO: Stabilized green crosshaul orchestration for dense IoT offloading services
US20220217089A1 (en) Path traffic allocation method, network device, and network system
US9699413B2 (en) Method for allocating a video conferencing task to a processing device
Mushtaq et al. QoE in 5G cloud networks using multimedia services
CN112585922A (en) Method and system for utilizing event specific priority in network controlled uplink media transmission for collaborative media production
CN109257282B (en) Data transmission method and device
CN108924609A (en) Method, electronic equipment, device and the storage medium of transmission of flow media data
CN112188144B (en) Audio transmission method and device, storage medium and electronic device
CN113115078B (en) Bandwidth adjusting method and device
CN105554006A (en) Method and device for processing data in a network component and system comprising such a device
CN116366141A (en) Method, device and storage medium for transmitting telemetry application data to information sink process
CN107172652B (en) Base station scheduling method and device based on high-level service information
US10455164B2 (en) Distributed audio control method, device system, and software product
CN112585921A (en) Method and system for improving quality of coordinated media works using network condition feedback
Arefin et al. Prioritized evolutionary optimization in open session management for 3D tele-immersion
CN112236986A (en) Network controlled upstream media delivery for collaborative media production in network capacity limited scenarios
CN106713180A (en) Hotspot equipment control method and device
CN105794159A (en) Resource allocation
Ho et al. Mobile data offloading system for video streaming services over SDN-enabled wireless networks
CN117014827A (en) Method, device and system for determining target user
Franco et al. Reliability, timeliness and load reduction at the edge for cloud gaming

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