CN115277654B - Bandwidth resource allocation system of RTC system - Google Patents

Bandwidth resource allocation system of RTC system Download PDF

Info

Publication number
CN115277654B
CN115277654B CN202210855229.8A CN202210855229A CN115277654B CN 115277654 B CN115277654 B CN 115277654B CN 202210855229 A CN202210855229 A CN 202210855229A CN 115277654 B CN115277654 B CN 115277654B
Authority
CN
China
Prior art keywords
bandwidth
video
screen sharing
packet loss
allocation
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
CN202210855229.8A
Other languages
Chinese (zh)
Other versions
CN115277654A (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.)
Juphoon Corp
Original Assignee
Juphoon Corp
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 Juphoon Corp filed Critical Juphoon Corp
Priority to CN202210855229.8A priority Critical patent/CN115277654B/en
Publication of CN115277654A publication Critical patent/CN115277654A/en
Application granted granted Critical
Publication of CN115277654B publication Critical patent/CN115277654B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/52Queue scheduling by attributing bandwidth to queues
    • H04L47/522Dynamic queue service slot or variable 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/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/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • H04N21/6437Real-time Transport Protocol [RTP]

Landscapes

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

Abstract

The invention relates to a bandwidth resource allocation system of an RTC system, which comprises a network state monitor, a network state control module and a network state control module, wherein the network state monitor is used for receiving network state monitoring data in real time and analyzing the network state monitoring data to obtain the current network state and estimated bandwidth; the bandwidth allocation decision maker is used for requesting the network state monitor to query the current network state at regular time, acquiring the estimated bandwidth in the current network state, generating an initial bandwidth allocation decision according to the estimated bandwidth in the current network state and outputting the initial bandwidth allocation decision to the transmitting end, and generating a new bandwidth allocation decision by integrating the current network state and the feedback result of the decision result monitor after the transmitting end operates for a period of time according to the initial bandwidth allocation decision and outputting the new bandwidth allocation decision to the transmitting end so that the transmitting end operates according to the new bandwidth allocation strategy; and the decision result monitor feeds back the comparison result of the new call quality and the initial call quality to the bandwidth allocation decision device. The system improves definition and smoothness on the premise of guaranteeing real-time property of the RTC.

Description

Bandwidth resource allocation system of RTC system
Technical Field
The invention relates to the field of communication, in particular to a bandwidth resource allocation system of an RTC system.
Background
RTC real-time communication is a short name of real-time audio and video. In recent years, with the continuous development of network and audio-video technologies, RTC has been widely used in scenes such as remote finance, remote education, remote medical treatment, internet social contact, and the like. When the advanced technology brings great growth to online scenes, the method also faces higher and higher experience requirements of users, has lower delay, higher image quality and smoothness, and is corresponding to three core indexes of RTC, namely real-time performance, definition and fluency.
Three core indexes of RTC: the real-time performance, the definition and the fluency are all three, so that fish and bear palms cannot be achieved, and a scene with high real-time performance requirement can sacrifice definition to ensure low delay; scenes with high definition requirements may be exchanged for high quality audio and video data with a certain delay. In real life, the environment in which a meeting is opened is very complex, including various complex network environments. To provide a good audio video conferencing experience, we often need to make decisions based on real-time network conditions to reach the best user experience.
The prior method generally obtains a table according to experience, and in practice, dynamically looks up a table in combination with network conditions, allocates coding rates of video and audio, and realizes bandwidth pre-allocation of forward error correction coding (Forward error correction, FEC for short) and packet loss retransmission (Negative ACKnowledge, NACK for short); the FEC recovers the lost part of information through the transmitted redundant information without requiring retransmission of an information source, so that the aim of low delay is fulfilled, and the NACK is realized by informing the transmitting end of which packets agreed by the protocol are not received by the transmitting end, thereby realizing retransmission of the undelivered data packets, belonging to the field of backward error correction, wherein the information utilization rate of the backward error correction is higher than that of the forward error correction, but extra delay is added, and the method is more suitable for the situation that bandwidth resources are limited but network delay is smaller. At the time of bandwidth allocation, some limiting measures are taken, such as that the code rate for FEC and NACK must not exceed a certain threshold of the coding rate, etc. However, the existing bandwidth allocation method has the following limitations: 1. the previous bandwidth state is not considered when the bandwidth is allocated, and global consideration is not needed. Switching encoders and sending key frames can introduce performance loss when resolution changes; 2. when NACK available bandwidth is allocated, based on statistics of past states, the actual coding rate is not considered, and the problems of bandwidth waste or insufficient flow occur in large probability in actual use; 3. the same strategy is used for different types of networks, the real-time performance of the RTC is important, and the influence of network delay should be fully considered when deciding to actively resend traffic. The high-delay network should focus the anti-lost packets on the active retransmission packets relative to the low-delay network; 4. absent processing of the decision feedback results, the entire decision system does not form a closed loop. Further improvements are needed for this purpose.
Disclosure of Invention
The technical problem to be solved by the invention is to provide a bandwidth resource allocation system of an RTC system, which can improve definition and smoothness on the premise of guaranteeing real-time performance of the RTC, aiming at the prior art.
The technical scheme adopted for solving the technical problems is as follows: a bandwidth resource allocation system for an RTC system, comprising: a network state monitor, a bandwidth allocation decision maker and a decision result monitor;
the network state monitor is used for receiving the network state monitoring data in real time, analyzing the network state monitoring data to obtain the current network state, and outputting the estimated bandwidth under the current network state;
the bandwidth allocation decision maker is used for requesting the network state monitor to query the current network state at regular time, acquiring the estimated bandwidth in the current network state, generating an initial bandwidth allocation decision according to the estimated bandwidth in the current network state and outputting the initial bandwidth allocation decision to the transmitting end, and generating a new bandwidth allocation decision by integrating the current network state and the feedback result of the decision result monitor after the transmitting end operates for a period of time according to the initial bandwidth allocation decision and outputting the new bandwidth allocation decision to the transmitting end so that the transmitting end operates according to the new bandwidth allocation strategy;
The decision result monitor acquires the initial call quality of the sending end after a period of time is operated according to the initial bandwidth allocation decision, acquires the new call quality of the sending end after a period of time is operated according to the new bandwidth allocation strategy, compares the new call quality with the initial call quality, and feeds back the comparison result of the new call quality and the initial call quality to the bandwidth allocation decision maker.
And according to different requirements of the conference, the bandwidth allocation decision-maker allocates the estimated bandwidth in the current network state to the audio, the screen sharing and the video in sequence.
Further, the specific steps of generating the new decision by the bandwidth allocation decision maker are as follows:
step 1-1, determining an audio transmission strategy according to current network state monitoring data to obtain a bandwidth required by audio;
step 1-2, combining the previous network state monitoring data and the round trip delay condition in the current network state to confirm whether to start the passive packet loss retransmission;
step 1-3, determining a screen sharing strategy according to current network state monitoring data and a starting state of passive packet loss retransmission to obtain a bandwidth required by screen sharing and a passive packet loss retransmission bandwidth required by screen sharing;
Step 1-4, determining a video sending strategy according to current network state monitoring data and a starting state of passive packet loss retransmission to obtain a bandwidth required by the video and a passive packet loss retransmission bandwidth required by the video;
step 1-5, confirming the available maximum bandwidth of the passive packet loss retransmission; the method comprises the following steps:
subtracting the bandwidth required by the audio, the bandwidth required by the screen sharing and the bandwidth required by the video according to the estimated bandwidth in the current network state to obtain the residual bandwidth;
judging whether the residual bandwidth is larger than the sum of the passive packet loss retransmission bandwidth required by screen sharing and the passive packet loss retransmission bandwidth required by video, if so, taking the residual bandwidth as the final maximum available bandwidth for passive packet loss retransmission; if not, taking the result of the residual bandwidth k as the final maximum bandwidth available for the passive packet loss retransmission;
step 1-6, taking the bandwidth required by the audio, the bandwidth required by the screen sharing, the passive packet loss retransmission bandwidth required by the screen sharing, the bandwidth required by the video, the passive packet loss retransmission bandwidth required by the video and the maximum available bandwidth for the passive packet loss retransmission as new bandwidth allocation decisions;
step 1-7, asking the opinion of the decision result monitor, if the decision result monitor feeds back that the call quality corresponding to the new bandwidth allocation strategy is better than the call quality corresponding to the last bandwidth allocation strategy, the bandwidth allocation decision maker executes according to the new bandwidth allocation decision in step 1-6 through the transmitting end; when the decision result monitor feeds back that the call quality corresponding to the new bandwidth allocation strategy is inferior to the call quality corresponding to the last bandwidth allocation strategy, the bandwidth allocation decision device informs the transmitting end to execute according to the last bandwidth allocation strategy.
Specifically, the specific steps of determining the audio transmission policy in the step 1-1 are as follows:
step 1-1a, determining the quantity of forward error correction coding redundancy and the quantity of active retransmission packets of pre-allocated audio according to the packet loss rate of the current network;
step 1-1b, calculating bandwidth Br required for pre-allocated Audio 1
Br 1 =codec 1 *(1+K 1 )*(1+RED 1 )
Wherein, codec 1 Representing the audio coding rate, K 1 Encoding redundancy for pre-allocating forward error correction of audio, K, depending on whether forward error correction encoding is on or not 1 =100% or 0; RED (RED) 1 Representing the number of active retransmission packets of the pre-allocated audio;
step 1-1c, judging whether the estimated bandwidth in the current network state is enough to pre-allocate the bandwidth Br required by the forward error correction coding redundancy amount of the audio and the number of active retransmission packets 1 If so, bandwidth Br required for pre-allocation of audio will be 1 As the current audio transmission strategy, and go to step 1-1d; if not, gradually reducing the number of active retransmission packets of the pre-allocated audio, and recalculating the bandwidth Br required by the pre-allocated audio according to the formula in the step 1-1b 1 Bandwidth Br required to enable newly calculated pre-allocated audio estimates 1 Less than the estimated bandwidth in the current network state, and then estimating the bandwidth Br required for the newly calculated pre-allocated audio 1 As the current audio transmission strategy, and go to step 1-1d;
Step 1-1d, bandwidth required for outputting audio.
Specifically, the specific method for determining the redundancy amount of the forward error correction coding of the pre-allocated audio and the number of the active retransmission packets in the step 1-1a is as follows:
judging whether the packet loss rate of the current network is greater than a first threshold value, if so, opening forward error correction coding of the pre-allocated audio, and setting the redundancy amount of the forward error correction coding of the pre-allocated audio to be 100%; if not, the forward error correction coding is not opened, and the redundancy of the forward error correction coding of the pre-allocated audio is set to be 0;
in addition, judging whether the packet loss rate of the current network is greater than a second threshold value, if so, opening active retransmission of the pre-allocated audio, and conforming to the rule that the packet loss rate is gradually increased and the number of active retransmission packets is also gradually increased, so that the number of active retransmission packets is determined according to the packet loss rate of the current network; if not, the active retransmission is not started, and the number of the active retransmission packets is 0.
Further, the method for confirming whether the passive packet loss retransmission in the step 1-2 is started is as follows:
judging whether the round trip delay time in the current network state is greater than a preset time threshold, if so, not starting the passive packet loss retransmission, and if not, starting the passive packet loss retransmission;
If the passive packet loss retransmission is not started, the passive packet loss retransmission coefficient in the current network state is set to be 1;
if the passive packet loss retransmission is started, the passive packet loss retransmission coefficient in the current network state is set as
NackCoefficient(sendTimes);
NackCoefficient (sendTimes) is calculated as:
NackCoefficient(sendTimes)=1+loss sendTimes
where loss represents the packet loss rate, sendtime represents the number of passive packet loss retransmissions.
Further, the specific steps of determining the screen sharing strategy in the step 1-3 are as follows:
step 1-3a, determining the quantity of redundancy of forward error correction codes and active retransmission packets shared by a pre-allocation screen according to the packet loss rate and the passive packet loss retransmission state in the current network state;
step 1-3b, calculating bandwidth Br required for preallocation screen sharing 2 The method comprises the steps of carrying out a first treatment on the surface of the The calculation formula is as follows:
Br 2 =codec 2 *NackCoefficient(1+RED 2 )*(1+K 2 )*(1+RED 2 )
wherein: codec (code c) 2 Representing a screen sharing coding rate, the screen sharing coding rate codec 2 With an initial preset value, RED 2 Indicating the number of active retransmission packets pre-allocated to screen sharing, nackCoefficient (1+RED) 2 ) For the passive packet loss retransmission coefficient, when the passive packet loss retransmission state is not started, then NackCoefficient (1+RED) 2 ) When the passive packet loss retransmission state is started, 1+red is given by =1 2 Substituting the number sendtime serving as the packet loss retransmission times into a calculation formula of a passive packet loss retransmission coefficient; k (K) 2 Representing the amount of forward error correction coding redundancy of the pre-allocated screen sharing;
step 1-3c, subtracting the bandwidth required by the audio from the estimated bandwidth in the current network state to obtain a first residual available bandwidth, and judging whether the first residual available bandwidth is enough to pre-allocate the bandwidth Br required by the screen sharing 2 If so, bandwidth Br required for preallocation screen sharing will be satisfied 2 As the current screen sharing sending strategy, and go to step 1-3e; if not, turning to the step 1-3d;
step 1-3d, sequentially adjusting the bandwidth required by pre-allocation screen sharing according to the following steps:
step 1-3d (1), reducing the screen sharing coding rate;
when the coding rate of the screen sharing is gradually reduced, recalculating the bandwidth Br required by the preassigned screen sharing according to the formula of step 1-3b 2 Sharing bandwidth Br required for preassigned screens 2 Less than the first remaining available bandwidth, the recalculated pre-allocated screen is shared with the required bandwidth Br 2 As the current screen sharing sending strategy, and go to step 1-3e; if the screens are commonWhen the code rate of the shared code is reduced to the minimum value, the bandwidth Br required by the pre-allocation screen sharing obtained through recalculation is reduced 2 Still greater than or equal to the first residual available bandwidth, then go to step 1-3d (2);
Step 1-3d (2), reducing the number of active retransmission packets of screen sharing, and resetting the coding code rate of the screen sharing back to an initial value;
after reducing the number of active retransmission packets of the screen sharing, gradually reducing the coding rate of the screen sharing, and then recalculating the bandwidth Br required by pre-allocation of the screen sharing according to the formula of step 1-3b 2 Until the recalculated pre-allocated screen shares the required bandwidth Br 2 Less than the first remaining available bandwidth, the recalculated pre-allocated screen is shared with the required bandwidth Br 2 As the current screen sharing sending strategy, and go to step 1-3e; if not, turning to the step 1-3d (3);
step 1-3d (3), reducing the redundancy of forward error correction coding of the pre-allocated screen sharing, and resetting the coding rate of the screen sharing back to an initial value;
after reducing the redundancy amount of forward error correction coding of the pre-allocation screen sharing, gradually reducing the coding rate of the screen sharing, enabling the number of active retransmission packets of the screen sharing to be the minimum value, and then recalculating the bandwidth Br required by the pre-allocation screen sharing according to the formula of step 1-3b 2 Until the recalculated pre-allocated screen shares the required bandwidth Br 2 Less than the first remaining available bandwidth, the recalculated pre-allocated screen is shared with the required bandwidth Br 2 As the current screen sharing sending strategy, and go to step 1-3e; if the forward error correction coding redundancy of the pre-allocation screen sharing is reduced to the minimum, and the coding rate of the screen sharing is reduced to the minimum, the bandwidth Br required by the pre-allocation screen sharing after recalculation 2 The bandwidth is still greater than or equal to the first residual available bandwidth, and the bandwidth Br required by the preassigned screen sharing which is finally and sequentially calculated is shared 2 As the current screen sharing sending strategy, and go to step 1-3e;
step 1-3e, outputting a bandwidth required by screen sharing and a passive packet loss retransmission bandwidth required by screen sharing;
the bandwidth required by the screen sharing is substituted into Br for the screen sharing coding code rate, the front and back error correction coding redundancy quantity of the preassigned screen sharing and the number of active retransmission packets in the current screen sharing sending strategy 2 Obtained in a calculation formula;
passive packet loss retransmission bandwidth Br required for screen sharing nack1 The calculation formula is as follows:
Br nack1 =codec 2 *(NackCoefficient(1+RED 2 )-1);
the passive packet loss retransmission bandwidth required by the screen sharing in the step is obtained by substituting the screen sharing coding code rate and the active retransmission packet number in the current screen sharing sending strategy into Br nack1 Obtained from the calculation formula.
Specifically, the specific method for determining the redundancy amount of the forward error correction coding and the number of the active retransmission packets of the pre-allocation screen sharing in the step 1-3a is as follows:
Setting the minimum value of the forward error correction coding redundancy quantity shared by the pre-allocation screens as Lmin, and setting the maximum value of the forward error correction coding redundancy quantity shared by the pre-allocation screens as 100%; and the redundancy amount of the forward error correction codes shared by the pre-allocation screens is determined according to the packet loss rate of the current network according to the rule that the redundancy amount of the forward error correction codes shared by the pre-allocation screens is gradually increased when the packet loss rate is gradually increased;
if the packet loss rate of the current network is greater than a third threshold value, opening active retransmission of the pre-allocation screen sharing, and following the rule that the packet loss rate is gradually increased, the number of active retransmission packets of the pre-allocation screen sharing is also gradually increased, so that the number of active retransmission packets of the pre-allocation screen sharing is determined according to the packet loss rate of the current network; if not, the active retransmission of the pre-allocation screen sharing is not started, and the number of active retransmission packets of the pre-allocation screen sharing is 0.
Further, the specific steps of determining the video transmission strategy in the steps 1-4 are as follows:
step 1-4a, determining the forward error correction coding redundancy amount of the pre-allocated video and the number of active retransmission packets according to the packet loss rate and the passive packet loss retransmission state of the current network;
step 1-4b, calculating bandwidth Br required by pre-allocated video 3 The method comprises the steps of carrying out a first treatment on the surface of the The calculation formula is as follows:
Br 3 =codec 3 *NackCoefficient(1+RED 3 )*(1+K 3 )*(1+RED 3 )
wherein: codec (code c) 3 Representing the coding rate of video, codec 3 Has an initial value; RED (RED) 3 Indicating the number of active retransmission packets of the pre-allocated video, wherein NackCoefficient (1+RED3) is a passive packet loss retransmission coefficient, and when the passive packet loss retransmission state is not started, nackCoefficient (1+RED3) =1; when the passive packet loss retransmission state is started, substituting 1+RED3 as the active packet loss retransmission times sendtime into a calculation formula of the passive packet loss retransmission coefficient; k (K) 3 Representing the amount of forward error correction coding redundancy of the pre-allocated video;
step 1-4c, subtracting the bandwidth required by screen sharing from the first residual available bandwidth to obtain a second residual available bandwidth; and determining whether the second remaining available bandwidth is sufficient to pre-allocate the bandwidth Br required for the video 3 If so, the bandwidth Br required for pre-distributing video will be satisfied 3 As the current video sending strategy, and go to step 1-4e; if not, turning to the step 1-4d;
step 1-4d, sequentially adjusting the bandwidth required by the pre-allocated video according to the following steps:
step 1-4d (1), reducing the coding rate of the video;
if the coding rate of the video is gradually reduced, recalculating the bandwidth Br required by the pre-allocated video according to the formula of step 1-4b 3 Enabling bandwidth Br required for pre-distributing video 3 Less than the second remaining available bandwidth, the bandwidth Br required by the pre-allocated video after recalculation will be 3 As the current video sending strategy, and go to step 1-4e; if the coding rate of the video is reduced to the minimum value, the bandwidth Br required by the pre-allocated video after recalculation is carried out 3 Still greater than or equal to the second remaining available bandwidth, then go to step 1-4d (2);
step 1-4d (2), reducing the number of active retransmission packets of the video, and resetting the coding code rate of the video to an initial value;
after the number of active retransmission packets of the video is reduced each time, the coding rate of the video is adjusted, and then the bandwidth Br required by the pre-allocated video is recalculated according to the formula of the step 1-4b 3 Up to the bandwidth Br required by the pre-allocated video after recalculation 3 Less than the second remaining available bandwidth, the bandwidth Br required by the pre-allocated video after recalculation will be 3 As the current video sending strategy, and go to step 1-4e; if the number of active retransmission packets of the video is reduced to the minimum value, and the coding rate of the video is reduced to the minimum value, the bandwidth Br required by the pre-allocated video after recalculation is carried out 3 Still greater than or equal to the second remaining available bandwidth, then go to step 1-4d (4);
Step 1-4d (4), reducing the redundancy of forward error correction coding of the pre-allocated video, and resetting the coding code rate of the video back to an initial value;
after reducing the redundancy amount of forward error correction coding of the pre-allocated video, adjusting the coding rate of the video each time, and then recalculating the bandwidth Br required by the pre-allocated video according to the formula of step 1-4b 3 Until the bandwidth Br required for pre-allocated video is recalculated 3 Less than the second remaining available bandwidth, the bandwidth Br required by the pre-allocated video after recalculation will be 3 As the current video sending strategy, and go to step 1-4e; if the forward error correction coding redundancy amount of the pre-allocated video is reduced to the minimum value, and the coding code rate of the video is reduced to the minimum value, the bandwidth Br required by the pre-allocated video after recalculation is carried out 3 If the bandwidth is still greater than or equal to the second residual available bandwidth, the bandwidth Br required by the preassigned video obtained by the last sequential calculation is calculated 3 As the current video sending strategy, and go to step 1-4e;
step 1-4e, outputting the bandwidth required by the video and the passive packet loss retransmission bandwidth required by the video;
the bandwidth required by the video is obtained by substituting the coding code rate in the current video sending strategy, the redundancy amount of the front and back error correction coding of the pre-allocated video and the number of the active retransmission packets into Br 3 Calculation ofObtained in the formula;
passive packet loss retransmission bandwidth Br required by video nack2 The calculation formula is as follows:
Br nack2 =codec 3 *(NackCoefficient(1+RED 3 )-1);
the passive packet loss retransmission bandwidth required by the video in the step is obtained by substituting the video coding code rate and the active retransmission packet number in the current video transmission strategy into Br nack2 Obtained from the calculation formula.
Further, the working process of the decision result monitor comprises the following specific steps:
step 2-1, recording a new bandwidth allocation strategy and call quality corresponding to the new bandwidth allocation strategy, and recording the last bandwidth allocation strategy of the new bandwidth allocation strategy and call quality corresponding to the last bandwidth allocation strategy;
step 2-2, comparing the call quality corresponding to the last bandwidth allocation strategy with the call quality corresponding to the new bandwidth allocation strategy, and judging whether the call quality corresponding to the new bandwidth allocation strategy is inferior to the call quality corresponding to the last bandwidth allocation strategy, if so, outputting the call quality corresponding to the new bandwidth allocation strategy is inferior to the call quality corresponding to the last bandwidth allocation strategy; if not, outputting the call quality corresponding to the new bandwidth allocation strategy to be better than the call quality corresponding to the last bandwidth allocation strategy.
Compared with the prior art, the invention has the advantages that: the bandwidth allocation process of the transmitting end is constructed into a complete closed-loop system, and a network state monitor, a bandwidth allocation decision maker and a decision result monitor are introduced, so that decision is more intelligent and stable; in addition, bandwidth allocation decisions are adaptively generated according to network state changes and effective strategies, and definition and smoothness are improved on the premise of guaranteeing real-time performance of the RTC.
Drawings
FIG. 1 is a schematic block diagram of a bandwidth resource allocation system of an RTC system in an embodiment of the present invention;
FIG. 2 is a flow chart illustrating operation of the network state monitor of FIG. 1;
fig. 3 is a flow chart illustrating the operation of the bandwidth allocation decider of fig. 1.
Detailed Description
The invention is described in further detail below with reference to the embodiments of the drawings.
As shown in fig. 1, the bandwidth resource allocation system of the RTC system in this embodiment includes a network status monitor, a bandwidth allocation decision maker, and a decision result monitor.
The network state monitor is used for receiving network state monitoring data in real time, analyzing the network state monitoring data to obtain a current network state, and outputting an estimated bandwidth under the current network state; the bandwidth allocation decision maker requests the network state monitor to inquire the current network state at regular time, acquires the estimated bandwidth under the current network state, generates an initial bandwidth allocation decision according to the estimated bandwidth under the current network state and outputs the initial bandwidth allocation decision to the transmitting end, and synthesizes the current network state and the result fed back by the decision result monitor to generate a new bandwidth allocation decision after the transmitting end operates for a period of time according to the initial bandwidth allocation decision and outputs the new bandwidth allocation decision to the transmitting end so that the transmitting end operates according to the new bandwidth allocation strategy; the decision result monitor obtains the initial call quality of the sending end after a period of time is operated according to the initial bandwidth allocation decision, obtains the new call quality of the sending end after a period of time is operated according to the new bandwidth allocation strategy, compares the new call quality with the initial call quality, and feeds back the comparison result of the new call quality and the initial call quality to the bandwidth allocation decision maker.
The network state monitor is in charge of receiving the network state monitoring data, preprocessing the network state monitoring data, evaluating the network state and feeding back to the bandwidth allocation decision-making device; the bandwidth allocation decision maker is a core module of the whole system, and combines the current network state and the currently effective and executing bandwidth allocation policy to generate a new bandwidth allocation policy. The decision result monitor is used for observing the call quality and judging the effect of the bandwidth allocation strategy, so that the whole decision process forms a closed loop to achieve the aim of optimal decision.
The network state monitor mainly has the effects of reducing errors in network state statistics, avoiding fluctuation of bandwidth allocation strategies caused by noise, reducing unnecessary change of the bandwidth allocation strategies, and enabling the change of the bandwidth allocation strategies of a transmitting end to be more accurate and stable; in addition, the network state monitoring data comprises available bandwidth, packet loss rate and round trip delay time, and a limited-length observation window is respectively distributed in the network state monitor for various different monitoring data and is used for recording real network state monitoring data. The running flow of the network state monitor is shown in fig. 2, the network state monitor firstly processes and analyzes data by using a statistical method to obtain a statistical value of the change of the network state monitoring data, when the statistical value of the change of the network state monitoring data exceeds a preset threshold value, a conclusion of the change of the network state is output, the current network state is updated at the moment, and an estimated bandwidth under the current network state is output; when the statistic value of the network state monitoring data is not more than a preset threshold value, outputting a conclusion that the network state is not changed, and then outputting the estimated bandwidth of the last network state; in particular, the network state monitor can forcedly refresh the network state at regular intervals, so that the network bandwidth allocation strategy provided by the invention can be more fully adapted to the truest network state.
The bandwidth allocation decision maker will query the network state monitor for the latest network state at regular time, and when the network state changes, start a new decision. According to the importance degree of different media sources in the conference, the bandwidth allocation decision-maker allocates the estimated bandwidth in the current network state to audio, screen sharing and video in turn.
As shown in fig. 3, the specific steps of generating a new decision by the bandwidth allocation decision maker in this embodiment are:
step 1-1, determining an audio transmission strategy according to current network state monitoring data to obtain a bandwidth required by audio;
the specific steps of the audio transmission strategy determination are as follows:
step 1-1a, determining the quantity of forward error correction coding redundancy (namely FEC redundancy) and active retransmission (namely RED) of pre-allocated audio according to the packet loss rate of the current network;
the specific method for determining the redundancy amount of the forward error correction coding of the pre-allocated audio and the number of the active retransmission packets comprises the following steps:
judging whether the packet loss rate of the current network is greater than a first threshold value, if so, opening forward error correction coding of the pre-allocated audio, and setting the redundancy amount of the forward error correction coding of the pre-allocated audio to be 100%; if not, the forward error correction coding is not opened, and the redundancy of the forward error correction coding of the pre-allocated audio is set to be 0; in the embodiment, the value of the first threshold is 3% -6%;
In addition, judging whether the packet loss rate of the current network is greater than a second threshold value, if so, opening active retransmission of the pre-allocated audio, and conforming to the rule that the packet loss rate is gradually increased and the number of active retransmission packets is also gradually increased, so that the number of active retransmission packets is determined according to the packet loss rate of the current network; if not, the active retransmission is not started, and the number of the active retransmission packets is 0; the value of the second threshold value in the embodiment is 10% -20%;
step 1-1b, calculating bandwidth Br required for pre-allocated Audio 1
Br 1 =codec 1 *(1+K 1 )*(1+RED 1 )
Wherein, codec 1 Representing the audio coding rate, K 1 Encoding redundancy for pre-allocating forward error correction of audio, K, depending on whether forward error correction encoding is on or not 1 =100% or 0; RED (RED) 1 Representing the number of active retransmission packets of the pre-allocated audio;
step 1-1c, judging whether the estimated bandwidth in the current network state is enough to pre-allocate the bandwidth Br required by the forward error correction coding redundancy amount of the audio and the number of active retransmission packets 1 If so, bandwidth Br required for pre-allocation of audio will be 1 As the current audio transmission strategy, and go to step 1-1d; if not, gradually reducing the number of active retransmission packets of the pre-allocated audio, and recalculating the bandwidth Br required by the pre-allocated audio according to the formula in the step 1-1b 1 Bandwidth Br required to enable newly calculated pre-allocated audio estimates 1 Less than the estimated bandwidth in the current network state, and then estimating the newly calculated pre-allocated audio as neededBandwidth Br of (2) 1 As the current audio transmission strategy, and go to step 1-1d;
step 1-1d, bandwidth required by output audio;
step 1-2, combining the previous network state monitoring data and the round trip delay condition in the current network state to confirm whether to start the passive packet loss retransmission;
the method for confirming whether the passive packet loss retransmission is started or not comprises the following steps: the previous network state monitoring data can influence the round trip delay time in the current network state, so that whether the round trip delay time in the current network state is larger than a preset time threshold value is judged, if yes, the passive packet loss retransmission is not started, and if not, the passive packet loss retransmission is started;
if the passive packet loss retransmission is not started, the passive packet loss retransmission coefficient in the current network state is set to be 1;
if the passive packet loss retransmission is started, the passive packet loss retransmission coefficient in the current network state is set as
NackCoefficient(sendTimes);
NackCoefficient (sendTimes) is calculated as:
NackCoefficient(sendTimes)=1+loss sendTimes
wherein loss represents a packet loss rate, and sendtime represents the number of passive packet loss retransmission times;
Step 1-3, determining a screen sharing strategy according to current network state monitoring data and a starting state of passive packet loss retransmission to obtain a bandwidth required by screen sharing and a passive packet loss retransmission bandwidth required by screen sharing;
the specific steps of the screen sharing strategy determination are as follows:
step 1-3a, determining the quantity of redundancy of forward error correction codes and active retransmission packets shared by a pre-allocation screen according to the packet loss rate and the passive packet loss retransmission state in the current network state;
the specific method for determining the redundancy amount of the forward error correction coding and the number of the active retransmission packets of the pre-allocation screen sharing comprises the following steps:
to prevent accidental network jitter, the minimum value of the redundancy amount of the forward error correction coding shared by the pre-allocation screens is set to Lmin; in this embodiment, lmin=10%; and follow the law that the forward error correction coding redundancy amount of the pre-allocation screen sharing is gradually increased when the packet loss rate is gradually increased (different packet loss rates and the corresponding forward error correction coding redundancy amounts of the pre-allocation screen sharing can be written into a table), the forward error correction coding redundancy amount of the pre-allocation screen sharing is determined according to the packet loss rate of the current network, and the highest forward error correction coding redundancy amount of the pre-allocation screen sharing is 100%;
If the packet loss rate of the current network is greater than a third threshold value, opening active retransmission of the pre-allocation screen sharing, and following the rule that the packet loss rate is gradually increased, the number of active retransmission packets of the pre-allocation screen sharing is also gradually increased, so that the number of active retransmission packets of the pre-allocation screen sharing is determined according to the packet loss rate of the current network; if not, the active retransmission of the pre-allocation screen sharing is not started, and the number of active retransmission packets of the pre-allocation screen sharing is 0; in this embodiment, the third threshold is 20%;
step 1-3b, calculating bandwidth Br required for preallocation screen sharing 2 The method comprises the steps of carrying out a first treatment on the surface of the The calculation formula is as follows:
Br 2 =codec 2 *NackCoefficient(1+RED 2 )*(1+K 2 )*(1+RED 2 )
wherein: codec (code c) 2 Representing screen sharing coding rate, codec 2 Transmission time hierarchy tLevel is positively correlated with screen sharing coding rate codec 2 The method has an initial preset value, namely, the transmission time level tLevel of the screen sharing has an initial value, and the value range of tLevel is generally 0-15, and the initial value is 15; RED (RED) 2 Indicating the number of active retransmission packets pre-allocated to screen sharing, nackCoefficient (1+RED) 2 ) For the passive packet loss retransmission coefficient, when the passive packet loss retransmission state is not started, then NackCoefficient (1+RED) 2 ) When the passive packet loss retransmission state is started, 1+red is given by =1 2 Substituting the number sendtime serving as the packet loss retransmission times into a calculation formula of a passive packet loss retransmission coefficient; k (K) 2 Forward error correction coding redundancy representing pre-allocation screen sharing;
Step 1-3c, subtracting the bandwidth required by the audio from the estimated bandwidth in the current network state to obtain a first residual available bandwidth, and judging whether the first residual available bandwidth is enough to pre-allocate the bandwidth Br required by the screen sharing 2 If so, bandwidth Br required for preallocation screen sharing will be satisfied 2 As the current screen sharing sending strategy, and go to step 1-3e; if not, turning to the step 1-3d;
step 1-3d, sequentially adjusting the bandwidth required by pre-allocation screen sharing according to the following steps:
step 1-3d (1), reducing the screen sharing coding rate;
when the coding rate of the screen sharing is gradually reduced, recalculating the bandwidth Br required by the preassigned screen sharing according to the formula of step 1-3b 2 Sharing bandwidth Br required for preassigned screens 2 Less than the first remaining available bandwidth, the recalculated pre-allocated screen is shared with the required bandwidth Br 2 As the current screen sharing sending strategy, and go to step 1-3e; if the coding rate of the screen sharing is reduced to the minimum value, the bandwidth Br required by the pre-allocation screen sharing obtained through recalculation is calculated 2 Still greater than or equal to the first residual available bandwidth, then go to step 1-3d (2);
step 1-3d (2), reducing the number of active retransmission packets of screen sharing, and resetting the coding code rate of the screen sharing back to an initial value;
after reducing the number of active retransmission packets of the screen sharing, gradually reducing the coding rate of the screen sharing, and then recalculating the bandwidth Br required by pre-allocation of the screen sharing according to the formula of step 1-3b 2 Until the recalculated pre-allocated screen shares the required bandwidth Br 2 Less than the first remaining available bandwidth, the recalculated pre-allocated screen is shared with the required bandwidth Br 2 As the current screen sharing sending strategy, and go to step 1-3e; if not, turning to the step 1-3d (3);
step 1-3d (3), reducing the redundancy of forward error correction coding of the pre-allocated screen sharing, and resetting the coding rate of the screen sharing back to an initial value;
after reducing the redundancy amount of forward error correction coding of the pre-allocation screen sharing, gradually reducing the coding rate of the screen sharing, enabling the number of active retransmission packets of the screen sharing to be the minimum value, and then recalculating the bandwidth Br required by the pre-allocation screen sharing according to the formula of step 1-3b 2 Until the recalculated pre-allocated screen shares the required bandwidth Br 2 Less than the first remaining available bandwidth, the recalculated pre-allocated screen is shared with the required bandwidth Br 2 As the current screen sharing sending strategy, and go to step 1-3e; if the forward error correction coding redundancy of the pre-allocation screen sharing is reduced to the minimum, and the coding rate of the screen sharing is reduced to the minimum, the bandwidth Br required by the pre-allocation screen sharing after recalculation 2 The bandwidth is still greater than or equal to the first residual available bandwidth, and the bandwidth Br required by the preassigned screen sharing which is finally and sequentially calculated is shared 2 As the current screen sharing sending strategy, and go to step 1-3e;
step 1-3e, outputting a bandwidth required by screen sharing and a passive packet loss retransmission bandwidth required by screen sharing;
the bandwidth required by the screen sharing is substituted into Br for the screen sharing coding code rate, the front and back error correction coding redundancy quantity of the preassigned screen sharing and the number of active retransmission packets in the current screen sharing sending strategy 2 Obtained in a calculation formula;
passive packet loss retransmission bandwidth Br required for screen sharing nack1 The calculation formula is as follows:
Br nack1 =codec 2 *(NackCoefficient(1+RED 2 )-1);
the passive packet loss retransmission bandwidth required by the screen sharing in the step is obtained by substituting the screen sharing coding code rate and the active retransmission packet number in the current screen sharing sending strategy into Br nack1 Obtained in a calculation formula;
step 1-4, determining a video sending strategy according to current network state monitoring data and a starting state of passive packet loss retransmission to obtain a bandwidth required by the video and a passive packet loss retransmission bandwidth required by the video;
the specific steps of the video sending strategy determination are as follows:
step 1-4a, determining the forward error correction coding redundancy amount of the pre-allocated video and the number of active retransmission packets according to the packet loss rate and the passive packet loss retransmission state of the current network;
the specific method for determining the forward error correction coding redundancy amount of the pre-allocated video and the number of the active retransmission packets comprises the following steps:
to prevent accidental network jitter, the minimum value of the forward error correction coding redundancy of the pre-allocated video is set to be L1; in this embodiment, l1=10%; and follow the law that the forward error correction coding redundancy amount of the pre-distributed video is gradually increased when the packet loss rate is gradually increased (different packet loss rates and the forward error correction coding redundancy amount of the corresponding pre-distributed video can be written into a table), the forward error correction coding redundancy amount of the pre-distributed video is determined according to the packet loss rate of the current network, and the maximum forward error correction coding redundancy amount of the pre-distributed video is 100%;
if the packet loss rate of the current network is greater than a fourth threshold value, opening active retransmission of the pre-allocated video, and conforming to the rule that the packet loss rate is gradually increased and the number of active retransmission packets of the pre-allocated video is also gradually increased, so that the number of active retransmission packets of the pre-allocated video is determined according to the packet loss rate of the current network; if not, the active retransmission of the pre-allocated video is not started, and the number of active retransmission packets is 0; in this embodiment, the fourth threshold is 20%;
Step 1-4b, calculating bandwidth Br required by pre-allocated video 3 The method comprises the steps of carrying out a first treatment on the surface of the The calculation formula is as follows:
Br 3 =codec 3 *NackCoefficient(1+RED 3 )*(1+K 3 )*(1+RED 3 )
wherein: codec (code c) 3 Representing the coding rate of video, codec 3 Related to a transmission spatial hierarchy of the video and a transmission temporal hierarchy of the video; codec (code c) 3 Has an initial value, codec 3 The specific value of (2) is related to the encoder configuration; RED (RED) 3 Indicating the number of active retransmission packets of the pre-allocated video, wherein NackCoefficient (1+RED3) is a passive packet loss retransmission coefficient, and when the passive packet loss retransmission state is not startedDynamically, then NackCoefficient (1+red3) =1; when the passive packet loss retransmission state is started, substituting 1+RED3 as the active packet loss retransmission times sendtime into a calculation formula of the passive packet loss retransmission coefficient; k (K) 3 Representing the amount of forward error correction coding redundancy of the pre-allocated video;
step 1-4c, subtracting the bandwidth required by screen sharing from the first residual available bandwidth to obtain a second residual available bandwidth; and determining whether the second remaining available bandwidth is sufficient to pre-allocate the bandwidth Br required for the video 3 If so, the bandwidth Br required for pre-distributing video will be satisfied 3 As the current video sending strategy, and go to step 1-4e; if not, turning to the step 1-4d;
step 1-4d, sequentially adjusting the bandwidth required by the pre-allocated video according to the following steps:
Step 1-4d (1), reducing the coding rate of the video;
if the coding rate of the video is gradually reduced, recalculating the bandwidth Br required by the pre-allocated video according to the formula of step 1-4b 3 Enabling bandwidth Br required for pre-distributing video 3 Less than the second remaining available bandwidth, the bandwidth Br required by the pre-allocated video after recalculation will be 3 As the current video sending strategy, and go to step 1-4e; if the coding rate of the video is reduced to the minimum value, the bandwidth Br required by the pre-allocated video after recalculation is carried out 3 Still greater than or equal to the second remaining available bandwidth, then go to step 1-4d (2);
step 1-4d (2), reducing the number of active retransmission packets of the video, and resetting the coding code rate of the video to an initial value;
after the number of active retransmission packets of the video is reduced each time, the coding rate of the video is adjusted, and then the bandwidth Br required by the pre-allocated video is recalculated according to the formula of the step 1-4b 3 Up to the bandwidth Br required by the pre-allocated video after recalculation 3 Less than the second remaining available bandwidth, the bandwidth Br required by the pre-allocated video after recalculation will be 3 As the current video sending strategy, and go to step 1-4e; if the number of active retransmission packets of the video is reduced to a minimum, the video is simultaneously watched When the coding rate of the frequency is reduced to the minimum value, the bandwidth Br required by the pre-allocated video after recalculation is carried out 3 Still greater than or equal to the second remaining available bandwidth, then go to step 1-4d (4);
step 1-4d (4), reducing the redundancy of forward error correction coding of the pre-allocated video, and resetting the coding code rate of the video back to an initial value;
after reducing the redundancy amount of forward error correction coding of the pre-allocated video, adjusting the coding rate of the video each time, and then recalculating the bandwidth Br required by the pre-allocated video according to the formula of step 1-4b 3 Until the bandwidth Br required for pre-allocated video is recalculated 3 Less than the second remaining available bandwidth, the bandwidth Br required by the pre-allocated video after recalculation will be 3 As the current video sending strategy, and go to step 1-4e; if the forward error correction coding redundancy amount of the pre-allocated video is reduced to the minimum value, and the coding code rate of the video is reduced to the minimum value, the bandwidth Br required by the pre-allocated video after recalculation is carried out 3 If the bandwidth is still greater than or equal to the second residual available bandwidth, the bandwidth Br required by the preassigned video obtained by the last sequential calculation is calculated 3 As the current video sending strategy, and go to step 1-4e;
step 1-4e, outputting the bandwidth required by the video and the passive packet loss retransmission bandwidth required by the video;
The bandwidth required by the video is obtained by substituting the coding code rate in the current video sending strategy, the redundancy amount of the front and back error correction coding of the pre-allocated video and the number of the active retransmission packets into Br 3 Obtained in a calculation formula;
passive packet loss retransmission bandwidth Br required by video nack2 The calculation formula is as follows:
Br nack2 =codec 3 *(NackCoefficient(1+RED 3 )-1);
the passive packet loss retransmission bandwidth required by the video in the step is obtained by substituting the video coding code rate and the active retransmission packet number in the current video transmission strategy into Br nack2 Obtained in a calculation formula;
step 1-5, confirming the available maximum bandwidth of the passive packet loss retransmission; the method comprises the following steps:
subtracting the bandwidth required by the audio, the bandwidth required by the screen sharing and the bandwidth required by the video according to the estimated bandwidth in the current network state to obtain the residual bandwidth;
judging whether the residual bandwidth is larger than the sum of the passive packet loss retransmission bandwidth required by screen sharing and the passive packet loss retransmission bandwidth required by video, if so, taking the residual bandwidth as the final maximum available bandwidth for passive packet loss retransmission; if not, taking the result of the residual bandwidth k as the final maximum bandwidth available for the passive packet loss retransmission, wherein k is a preset coefficient; the value range of k is as follows: k is more than 1.05 and less than 1.2; k=1.1, which is preferable in the present embodiment;
Step 1-6, taking the bandwidth required by the audio, the bandwidth required by the screen sharing, the passive packet loss retransmission bandwidth required by the screen sharing, the bandwidth required by the video, the passive packet loss retransmission bandwidth required by the video and the maximum available bandwidth for the passive packet loss retransmission as new bandwidth allocation decisions;
step 1-7, inquiring opinion of a decision result monitor, and if the decision result monitor feeds back that the call quality Q1 corresponding to the new bandwidth allocation strategy S1 is better than the call quality Q0 corresponding to the last bandwidth allocation strategy S0, executing the new decision of bandwidth allocation by the bandwidth allocation decision maker through the transmitting end according to the bandwidth allocation in the step 1-6; when the decision result monitor feeds back that the call quality Q1 corresponding to the new bandwidth allocation strategy S1 is inferior to the call quality Q0 corresponding to the last bandwidth allocation strategy S0, the bandwidth allocation decision device informs the transmitting end to execute according to the last bandwidth allocation strategy.
The decision result monitor is used for monitoring the call quality after the new bandwidth allocation strategy output by the wide allocation decision device takes effect and executes for a certain time, and then comparing the call quality with the call quality according to the last bandwidth allocation strategy, and feeding back the comparison result of the new call quality and the last call quality to the bandwidth allocation decision device.
The working process of the decision result monitor in this embodiment specifically includes the following steps:
step 2-1, recording a new bandwidth allocation strategy S1 and call quality Q1 corresponding to the new bandwidth allocation strategy S1, and recording a last bandwidth allocation strategy S0 of the new bandwidth allocation strategy S1 and call quality Q0 corresponding to the last bandwidth allocation strategy S0;
step 2-2, comparing the call quality Q0 corresponding to the last bandwidth allocation strategy S0 with the call quality Q1 corresponding to the new bandwidth allocation strategy S1, and judging whether Q1 is inferior to Q0, if so, outputting the call quality Q1 corresponding to the new bandwidth allocation strategy S1 inferior to the call quality Q0 corresponding to the last bandwidth allocation strategy S0; if not, the call quality Q1 corresponding to the new bandwidth allocation strategy S1 is output to be better than the call quality Q0 corresponding to the previous bandwidth allocation strategy S0.
Compared with the old technical scheme, after the new solution is applied, the definition and fluency of the video are improved.
1. When the network state is not changed, the selection of the sending resolution is stable than before, so that the picture fluctuation caused by the resolution change is reduced, and the user experience is better; tests show that the new decision scheme improves the stability of the resolution by 50% compared with the original resolution.
2. When the network state changes or the subscription state changes, the new decision system is more sensitive to react, and a new stable point can be reached more quickly. For example, in a scene that 80% of packets are lost suddenly in the network, after a new decision scheme is applied, the available bandwidth estimation of the conference can be recovered more quickly, so that the time length of a picture is reduced by more than 20%.

Claims (9)

1. A bandwidth resource allocation system for an RTC system, comprising: a network state monitor, a bandwidth allocation decision maker and a decision result monitor;
the network state monitor is used for receiving the network state monitoring data in real time, analyzing the network state monitoring data to obtain the current network state, and outputting the estimated bandwidth under the current network state;
the bandwidth allocation decision maker is used for requesting the network state monitor to query the current network state at regular time, acquiring the estimated bandwidth in the current network state, generating an initial bandwidth allocation decision according to the estimated bandwidth in the current network state and outputting the initial bandwidth allocation decision to the transmitting end, and generating a new bandwidth allocation decision by integrating the current network state and the feedback result of the decision result monitor after the transmitting end operates for a period of time according to the initial bandwidth allocation decision and outputting the new bandwidth allocation decision to the transmitting end so that the transmitting end operates according to the new bandwidth allocation strategy;
The specific steps of generating a new decision by the bandwidth allocation decision maker are as follows:
step 1-1, determining an audio transmission strategy according to current network state monitoring data to obtain a bandwidth required by audio;
step 1-2, combining the previous network state monitoring data and the round trip delay condition in the current network state to confirm whether to start the passive packet loss retransmission;
step 1-3, determining a screen sharing strategy according to current network state monitoring data and a starting state of passive packet loss retransmission to obtain a bandwidth required by screen sharing and a passive packet loss retransmission bandwidth required by screen sharing;
step 1-4, determining a video sending strategy according to current network state monitoring data and a starting state of passive packet loss retransmission to obtain a bandwidth required by the video and a passive packet loss retransmission bandwidth required by the video;
step 1-5, confirming the available maximum bandwidth of the passive packet loss retransmission; the method comprises the following steps:
subtracting the bandwidth required by the audio, the bandwidth required by the screen sharing and the bandwidth required by the video according to the estimated bandwidth in the current network state to obtain the residual bandwidth;
judging whether the residual bandwidth is larger than the sum of the passive packet loss retransmission bandwidth required by screen sharing and the passive packet loss retransmission bandwidth required by video, if so, taking the residual bandwidth as the final maximum available bandwidth for passive packet loss retransmission; if not, taking the result of the residual bandwidth k as the final maximum bandwidth available for the passive packet loss retransmission; k is a preset coefficient, and the value range of k is as follows: k is more than 1.05 and less than 1.2;
Step 1-6, taking the bandwidth required by the audio, the bandwidth required by the screen sharing, the passive packet loss retransmission bandwidth required by the screen sharing, the bandwidth required by the video, the passive packet loss retransmission bandwidth required by the video and the maximum available bandwidth for the passive packet loss retransmission as new bandwidth allocation decisions;
step 1-7, asking the opinion of the decision result monitor, if the decision result monitor feeds back that the call quality corresponding to the new bandwidth allocation strategy is better than the call quality corresponding to the last bandwidth allocation strategy, the bandwidth allocation decision maker executes according to the new bandwidth allocation decision in step 1-6 through the transmitting end; when the decision result monitor feeds back that the call quality corresponding to the new bandwidth allocation strategy is inferior to the call quality corresponding to the last bandwidth allocation strategy, the bandwidth allocation decision device informs the transmitting end to execute according to the last bandwidth allocation strategy;
the decision result monitor acquires the initial call quality of the sending end after a period of time is operated according to the initial bandwidth allocation decision, acquires the new call quality of the sending end after a period of time is operated according to the new bandwidth allocation strategy, compares the new call quality with the initial call quality, and feeds back the comparison result of the new call quality and the initial call quality to the bandwidth allocation decision maker.
2. The bandwidth resource allocation system of the RTC system according to claim 1, characterized in that: and the bandwidth allocation decision device allocates the estimated bandwidth in the current network state to the audio, the screen sharing and the video in sequence.
3. The bandwidth resource allocation system of the RTC system according to claim 1, characterized in that: the specific steps of determining the audio transmission strategy in the step 1-1 are as follows:
step 1-1a, determining the quantity of forward error correction coding redundancy and the quantity of active retransmission packets of pre-allocated audio according to the packet loss rate of the current network;
step 1-1b, calculating bandwidth Br required for pre-allocated Audio 1
Br 1 =codec 1 *(1+K 1 )*(1+RED 1 )
Wherein, codec 1 Representing the audio coding rate, K 1 Encoding redundancy for pre-allocating forward error correction of audio, K, depending on whether forward error correction encoding is on or not 1 =100% or 0; RED (RED) 1 Representing the number of active retransmission packets of the pre-allocated audio;
step 1-1 c Bandwidth Br required for determining whether the estimated bandwidth in the current network state is sufficient to pre-allocate the forward error correction coding redundancy amount of the audio and the number of active retransmission packets 1 If so, bandwidth Br required for pre-allocation of audio will be 1 As the current audio transmission strategy, and go to step 1-1d; if not, gradually reducing the number of active retransmission packets of the pre-allocated audio, and recalculating the bandwidth Br required by the pre-allocated audio according to the formula in the step 1-1b 1 Bandwidth Br required to enable newly calculated pre-allocated audio estimates 1 Less than the estimated bandwidth in the current network state, and then estimating the bandwidth Br required for the newly calculated pre-allocated audio 1 As the current audio transmission strategy, and go to step 1-1d;
step 1-1d, bandwidth required for outputting audio.
4. A bandwidth resource allocation system for an RTC system according to claim 3, characterized in that: the specific method for determining the redundancy amount of the forward error correction coding of the pre-allocated audio and the number of the active retransmission packets in the step 1-1a is as follows:
judging whether the packet loss rate of the current network is greater than a first threshold value, if so, opening forward error correction coding of the pre-allocated audio, and setting the redundancy amount of the forward error correction coding of the pre-allocated audio to be 100%; if not, the forward error correction coding is not opened, and the redundancy of the forward error correction coding of the pre-allocated audio is set to be 0;
in addition, judging whether the packet loss rate of the current network is greater than a second threshold value, if so, opening active retransmission of the pre-allocated audio, and conforming to the rule that the packet loss rate is gradually increased and the number of active retransmission packets is also gradually increased, so that the number of active retransmission packets is determined according to the packet loss rate of the current network; if not, the active retransmission is not started, and the number of the active retransmission packets is 0.
5. The bandwidth resource allocation system of the RTC system according to claim 1, characterized in that: the method for confirming whether the passive packet loss retransmission is started in the step 1-2 comprises the following steps:
judging whether the round trip delay time in the current network state is greater than a preset time threshold, if so, not starting the passive packet loss retransmission, and if not, starting the passive packet loss retransmission;
if the passive packet loss retransmission is not started, the passive packet loss retransmission coefficient in the current network state is set to be 1;
if the passive packet loss retransmission is started, setting a passive packet loss retransmission coefficient in the current network state as NackCoefficient (sendTimes);
NackCoefficient (sendTimes) is calculated as:
NackCoefficient(sendTimes)=1+loss sendTimes
where loss represents the packet loss rate, sendtime represents the number of passive packet loss retransmissions.
6. The bandwidth resource allocation system of the RTC system according to claim 5, characterized in that: the specific steps of determining the screen sharing strategy in the step 1-3 are as follows:
step 1-3a, determining the quantity of redundancy of forward error correction codes and active retransmission packets shared by a pre-allocation screen according to the packet loss rate and the passive packet loss retransmission state in the current network state;
step 1-3b, calculating bandwidth Br required for preallocation screen sharing 2 The method comprises the steps of carrying out a first treatment on the surface of the The calculation formula is as follows:
Br 2 =codec 2 *NackCoefficient(1+RED 2 )*(1+K 2 )*(1+RED 2 )
wherein: codec (code c) 2 Representing a screen sharing coding rate, the screen sharing coding rate codec 2 With an initial preset value, RED 2 Indicating the number of active retransmission packets pre-allocated to screen sharing, nackCoefficient (1+RED) 2 ) For the passive packet loss retransmission coefficient, when the passive packet loss retransmission state is not started, then NackCoefficient (1+RED) 2 ) When the passive packet loss retransmission state is started, 1+red is given by =1 2 Calculation formula for substituting sendtime serving as packet loss retransmission times into passive packet loss retransmission coefficientIn (a) and (b); k (K) 2 Representing the amount of forward error correction coding redundancy of the pre-allocated screen sharing;
step 1-3c, subtracting the bandwidth required by the audio from the estimated bandwidth in the current network state to obtain a first residual available bandwidth, and judging whether the first residual available bandwidth is enough to pre-allocate the bandwidth Br required by the screen sharing 2 If so, bandwidth Br required for preallocation screen sharing will be satisfied 2 As the current screen sharing sending strategy, and go to step 1-3e; if not, turning to the step 1-3d;
step 1-3d, sequentially adjusting the bandwidth required by pre-allocation screen sharing according to the following steps:
step 1-3d (1), reducing the screen sharing coding rate;
when the coding rate of the screen sharing is gradually reduced, recalculating the bandwidth Br required by the preassigned screen sharing according to the formula of step 1-3b 2 Sharing bandwidth Br required for preassigned screens 2 Less than the first remaining available bandwidth, the recalculated pre-allocated screen is shared with the required bandwidth Br 2 As the current screen sharing sending strategy, and go to step 1-3e; if the coding rate of the screen sharing is reduced to the minimum value, the bandwidth Br required by the pre-allocation screen sharing obtained through recalculation is calculated 2 Still greater than or equal to the first residual available bandwidth, then go to step 1-3d (2);
step 1-3d (2), reducing the number of active retransmission packets of screen sharing, and resetting the coding code rate of the screen sharing back to an initial value;
after reducing the number of active retransmission packets of the screen sharing, gradually reducing the coding rate of the screen sharing, and then recalculating the bandwidth Br required by pre-allocation of the screen sharing according to the formula of step 1-3b 2 Until the recalculated pre-allocated screen shares the required bandwidth Br 2 Less than the first remaining available bandwidth, the recalculated pre-allocated screen is shared with the required bandwidth Br 2 As the current screen sharing sending strategy, and go to step 1-3e; if not, turning to the step 1-3d (3);
step 1-3d (3), reducing the redundancy of forward error correction coding of the pre-allocated screen sharing, and resetting the coding rate of the screen sharing back to an initial value;
After reducing the redundancy amount of forward error correction coding of the pre-allocation screen sharing, gradually reducing the coding rate of the screen sharing, enabling the number of active retransmission packets of the screen sharing to be the minimum value, and then recalculating the bandwidth Br required by the pre-allocation screen sharing according to the formula of step 1-3b 2 Until the recalculated pre-allocated screen shares the required bandwidth Br 2 Less than the first remaining available bandwidth, the recalculated pre-allocated screen is shared with the required bandwidth Br 2 As the current screen sharing sending strategy, and go to step 1-3e; if the forward error correction coding redundancy of the pre-allocation screen sharing is reduced to the minimum, and the coding rate of the screen sharing is reduced to the minimum, the bandwidth Br required by the pre-allocation screen sharing after recalculation 2 The bandwidth is still greater than or equal to the first residual available bandwidth, and the bandwidth Br required by the preassigned screen sharing which is finally and sequentially calculated is shared 2 As the current screen sharing sending strategy, and go to step 1-3e;
step 1-3e, outputting a bandwidth required by screen sharing and a passive packet loss retransmission bandwidth required by screen sharing;
the bandwidth required by the screen sharing is substituted into Br for the screen sharing coding code rate, the front and back error correction coding redundancy quantity of the preassigned screen sharing and the number of active retransmission packets in the current screen sharing sending strategy 2 Obtained in a calculation formula;
passive packet loss retransmission bandwidth Br required for screen sharing nack1 The calculation formula is as follows:
Br nack1 =codec 2 *(NackCoefficient(1+RED 2 )-1);
the passive packet loss retransmission bandwidth required by the screen sharing in the step is obtained by substituting the screen sharing coding code rate and the active retransmission packet number in the current screen sharing sending strategy into Br nack1 Obtained from the calculation formula.
7. The bandwidth resource allocation system of the RTC system according to claim 6, characterized in that: the specific method for determining the redundancy amount of the forward error correction coding and the number of the active retransmission packets of the pre-allocation screen sharing in the step 1-3a is as follows:
setting the minimum value of the forward error correction coding redundancy quantity shared by the pre-allocation screens as Lmin, and setting the maximum value of the forward error correction coding redundancy quantity shared by the pre-allocation screens as 100%; and the redundancy amount of the forward error correction codes shared by the pre-allocation screens is determined according to the packet loss rate of the current network according to the rule that the redundancy amount of the forward error correction codes shared by the pre-allocation screens is gradually increased when the packet loss rate is gradually increased;
if the packet loss rate of the current network is greater than a third threshold value, opening active retransmission of the pre-allocation screen sharing, and following the rule that the packet loss rate is gradually increased, the number of active retransmission packets of the pre-allocation screen sharing is also gradually increased, so that the number of active retransmission packets of the pre-allocation screen sharing is determined according to the packet loss rate of the current network; if not, the active retransmission of the pre-allocation screen sharing is not started, and the number of active retransmission packets of the pre-allocation screen sharing is 0.
8. The bandwidth resource allocation system of the RTC system according to claim 5, characterized in that: the specific steps of determining the video transmission strategy in the steps 1-4 are as follows:
step 1-4a, determining the forward error correction coding redundancy amount of the pre-allocated video and the number of active retransmission packets according to the packet loss rate and the passive packet loss retransmission state of the current network;
step 1-4b, calculating bandwidth Br required by pre-allocated video 3 The method comprises the steps of carrying out a first treatment on the surface of the The calculation formula is as follows:
Br 3 =codec 3 *NackCoefficient(1+RED 3 )*(1+K 3 )*(1+RED 3 )
wherein: codec (code c) 3 Representing the coding rate of video, codec 3 Has an initial value; RED (RED) 3 Indicating the number of active retransmission packets of the pre-allocated video, wherein NackCoefficient (1+RED3) is a passive packet loss retransmission coefficient, and when the passive packet loss retransmission state is not started, nackCoefficient (1+RED3) =1; when the passive packet loss retransmission state is started, substituting 1+RED3 as the active packet loss retransmission times sendtime to the passive packet lossThe calculation formula of the packet retransmission coefficient; k (K) 3 Representing the amount of forward error correction coding redundancy of the pre-allocated video;
step 1-4c, subtracting the bandwidth required by screen sharing from the first residual available bandwidth to obtain a second residual available bandwidth; and determining whether the second remaining available bandwidth is sufficient to pre-allocate the bandwidth Br required for the video 3 If so, the bandwidth Br required for pre-distributing video will be satisfied 3 As the current video sending strategy, and go to step 1-4e; if not, turning to the step 1-4d;
step 1-4d, sequentially adjusting the bandwidth required by the pre-allocated video according to the following steps:
step 1-4d (1), reducing the coding rate of the video;
if the coding rate of the video is gradually reduced, recalculating the bandwidth Br required by the pre-allocated video according to the formula of step 1-4b 3 Enabling bandwidth Br required for pre-distributing video 3 Less than the second remaining available bandwidth, the bandwidth Br required by the pre-allocated video after recalculation will be 3 As the current video sending strategy, and go to step 1-4e; if the coding rate of the video is reduced to the minimum value, the bandwidth Br required by the pre-allocated video after recalculation is carried out 3 Still greater than or equal to the second remaining available bandwidth, then go to step 1-4d (2);
step 1-4d (2), reducing the number of active retransmission packets of the video, and resetting the coding code rate of the video to an initial value;
after the number of active retransmission packets of the video is reduced each time, the coding rate of the video is adjusted, and then the bandwidth Br required by the pre-allocated video is recalculated according to the formula of the step 1-4b 3 Up to the bandwidth Br required by the pre-allocated video after recalculation 3 Less than the second remaining available bandwidth, the bandwidth Br required by the pre-allocated video after recalculation will be 3 As the current video sending strategy, and go to step 1-4e; if the number of active retransmission packets of the video is reduced to the minimum value, and the coding rate of the video is reduced to the minimum value, the bandwidth Br required by the pre-allocated video after recalculation is carried out 3 And if the remaining bandwidth is still greater than or equal to the second remaining available bandwidth, the step 1-4 is carried outd(4);
Step 1-4d (4), reducing the redundancy of forward error correction coding of the pre-allocated video, and resetting the coding code rate of the video back to an initial value;
after reducing the redundancy amount of forward error correction coding of the pre-allocated video, adjusting the coding rate of the video each time, and then recalculating the bandwidth Br required by the pre-allocated video according to the formula of step 1-4b 3 Until the bandwidth Br required for pre-allocated video is recalculated 3 Less than the second remaining available bandwidth, the bandwidth Br required by the pre-allocated video after recalculation will be 3 As the current video sending strategy, and go to step 1-4e; if the forward error correction coding redundancy amount of the pre-allocated video is reduced to the minimum value, and the coding code rate of the video is reduced to the minimum value, the bandwidth Br required by the pre-allocated video after recalculation is carried out 3 If the bandwidth is still greater than or equal to the second residual available bandwidth, the bandwidth Br required by the preassigned video obtained by the last sequential calculation is calculated 3 As the current video sending strategy, and go to step 1-4e;
step 1-4e, outputting the bandwidth required by the video and the passive packet loss retransmission bandwidth required by the video;
the bandwidth required by the video is obtained by substituting the coding code rate in the current video sending strategy, the redundancy amount of the front and back error correction coding of the pre-allocated video and the number of the active retransmission packets into Br 3 Obtained in a calculation formula;
passive packet loss retransmission bandwidth Br required by video nack2 The calculation formula is as follows:
Br nack2 =codec 3 *(NackCoefficient(1+RED 3 )-1);
the passive packet loss retransmission bandwidth required by the video in the step is obtained by substituting the video coding code rate and the active retransmission packet number in the current video transmission strategy into Br nack2 Obtained from the calculation formula.
9. The bandwidth resource allocation system of the RTC system according to any one of claims 1 to 8, characterized in that: the working process of the decision result monitor comprises the following specific steps:
step 2-1, recording a new bandwidth allocation strategy (S1) and call quality (Q1) corresponding to the new bandwidth allocation strategy (S1), and recording call quality (Q0) corresponding to a last bandwidth allocation strategy (S0) and a last bandwidth allocation strategy (S0) of the new bandwidth allocation strategy (S1);
Step 2-2, comparing the call quality (Q0) corresponding to the last bandwidth allocation policy (S0) with the call quality (Q1) corresponding to the new bandwidth allocation policy (S1), and judging whether (Q1) is inferior to (Q0), if so, outputting the call quality (Q1) corresponding to the new bandwidth allocation policy (S1) inferior to the call quality (Q0) corresponding to the last bandwidth allocation policy (S0); if not, outputting the call quality (Q1) corresponding to the new bandwidth allocation strategy (S1) is better than the call quality (Q0) corresponding to the last bandwidth allocation strategy (S0).
CN202210855229.8A 2022-07-19 2022-07-19 Bandwidth resource allocation system of RTC system Active CN115277654B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210855229.8A CN115277654B (en) 2022-07-19 2022-07-19 Bandwidth resource allocation system of RTC system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210855229.8A CN115277654B (en) 2022-07-19 2022-07-19 Bandwidth resource allocation system of RTC system

Publications (2)

Publication Number Publication Date
CN115277654A CN115277654A (en) 2022-11-01
CN115277654B true CN115277654B (en) 2024-02-27

Family

ID=83768328

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210855229.8A Active CN115277654B (en) 2022-07-19 2022-07-19 Bandwidth resource allocation system of RTC system

Country Status (1)

Country Link
CN (1) CN115277654B (en)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6208640B1 (en) * 1998-02-27 2001-03-27 David Spell Predictive bandwidth allocation method and apparatus
CN103560978A (en) * 2013-10-14 2014-02-05 北京邮电大学 Method and device for bandwidth dynamic allocation in optical access network
CN103957222A (en) * 2014-05-20 2014-07-30 艾诺通信系统(苏州)有限责任公司 Video transmission self-adaption method based on FEC algorithm
EP2852176A1 (en) * 2012-06-18 2015-03-25 ZTE Corporation Dynamic bandwidth allocation method, device and system
US9083770B1 (en) * 2013-11-26 2015-07-14 Snapchat, Inc. Method and system for integrating real time communication features in applications
CN105610635A (en) * 2016-02-29 2016-05-25 腾讯科技(深圳)有限公司 Voice code transmitting method and apparatus
CN112291498A (en) * 2020-10-30 2021-01-29 新东方教育科技集团有限公司 Audio and video data transmission method and device and storage medium
CN113573003A (en) * 2021-08-11 2021-10-29 睿云联(厦门)网络通讯技术有限公司 Weak network-based audio and video real-time communication method, device and equipment
CN114666225A (en) * 2022-03-10 2022-06-24 阿里巴巴(中国)有限公司 Bandwidth adjustment method, data transmission method, device and computer storage medium

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7225267B2 (en) * 2003-01-27 2007-05-29 Microsoft Corporation Reactive bandwidth control for streaming data
US8804758B2 (en) * 2004-03-11 2014-08-12 Hipcricket, Inc. System and method of media over an internet protocol communication
US20090164657A1 (en) * 2007-12-20 2009-06-25 Microsoft Corporation Application aware rate control
US8171157B2 (en) * 2009-12-21 2012-05-01 Microsoft Corporation Distributing bandwidth across communication modalities
IN2014DN09999A (en) * 2012-05-01 2015-08-14 Citrix Online Llc

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6208640B1 (en) * 1998-02-27 2001-03-27 David Spell Predictive bandwidth allocation method and apparatus
EP2852176A1 (en) * 2012-06-18 2015-03-25 ZTE Corporation Dynamic bandwidth allocation method, device and system
CN103560978A (en) * 2013-10-14 2014-02-05 北京邮电大学 Method and device for bandwidth dynamic allocation in optical access network
US9083770B1 (en) * 2013-11-26 2015-07-14 Snapchat, Inc. Method and system for integrating real time communication features in applications
CN103957222A (en) * 2014-05-20 2014-07-30 艾诺通信系统(苏州)有限责任公司 Video transmission self-adaption method based on FEC algorithm
CN105610635A (en) * 2016-02-29 2016-05-25 腾讯科技(深圳)有限公司 Voice code transmitting method and apparatus
CN112291498A (en) * 2020-10-30 2021-01-29 新东方教育科技集团有限公司 Audio and video data transmission method and device and storage medium
CN113573003A (en) * 2021-08-11 2021-10-29 睿云联(厦门)网络通讯技术有限公司 Weak network-based audio and video real-time communication method, device and equipment
CN114666225A (en) * 2022-03-10 2022-06-24 阿里巴巴(中国)有限公司 Bandwidth adjustment method, data transmission method, device and computer storage medium

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
视频传输自适应网络带宽控制策略的研究;丰洪才;向云柱;;计算机测量与控制(第03期);全文 *

Also Published As

Publication number Publication date
CN115277654A (en) 2022-11-01

Similar Documents

Publication Publication Date Title
US11349900B2 (en) Voice encoding and sending method and apparatus
Bolot et al. Scalable feedback control for multicast video distribution in the internet
RU2497304C2 (en) Dynamic modification of video properties
US9819597B2 (en) Adaptive bit rate for data transmission
KR20040041170A (en) Data communications method and system using receiving buffer size to calculate transmission rate for congestion control
Santos et al. A novel QoE-aware multicast mechanism for video communications over IEEE 802.11 WLANs
Habachi et al. MOS-based congestion control for conversational services in wireless environments
KR100982630B1 (en) Device and process for adjusting the bit rate of a stream of contents and associated products
Zhang et al. Deadline-aware transmission control for real-time video streaming
CN107483990B (en) Dynamic code rate adjusting method and device for streaming media transmission and transmission system
CN115277654B (en) Bandwidth resource allocation system of RTC system
CN109587488A (en) A kind of choosing method for the long reference frame predicted based on rate-distortion optimization and frame losing
Bajic et al. Integrated end-to-end buffer management and congestion control for scalable video communications
CN113364814B (en) Anti-weak network transmission method based on RTP
CN115623155A (en) Video data processing method, video data processing apparatus, and storage medium
Viéron et al. Source and channel adaptive rate control for multicast layered video transmission based on a clustering algorithm
KR100494432B1 (en) Packet data processing method among video server and clients
Ko et al. Enhancing QoE of WebRTC-based Video Conferencing using Deep Reinforcement Learning
Bakhati et al. Modified quality video: transmission control protocol (TCP) friendly for controlling a congestion
CN117614590A (en) Method, device and equipment for determining redundancy code rate based on hybrid retransmission
KR100686395B1 (en) The multi-media streaming method and system of a network adaptation live broadcasting for packet filtering
US20230421626A1 (en) System and method for determining network transmissoin performance in real-time communcation over internet
Ji et al. Stochastic rate control for scalable VBR video streaming over wireless networks
Le Léannec et al. Hybrid sender and receiver driven rate control in multicast layered video transmission
Kist et al. Optimization of Quality of Experience for Video Traffic

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