Selective Forwarding Unit Rate Control with Probing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current bandwidth estimation and rate control methods in audio and video conferencing systems are inadequate, particularly when multiple participants with different internet connections join a communication session, leading to unstable rate control and poor user experience.
Innovation Solution
The implementation of multiple, combined probing techniques, including both paced and non-paced probing, to accurately determine available bandwidth and adjust data stream quality accordingly, ensuring stable rate control across diverse network conditions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a publisher sends multiple streams with different qualities for SFU to forward, then the system can adapt to varying bandwidth conditions, but the device complexity and processing overhead increase
Solution Approach 1:
The video stream is segmented into multiple quality levels (e.g., high quality, medium quality, low quality) that can be independently selected and forwarded. The SFU receives a single multi-quality stream and segments it into different bitrate versions, allowing adaptive selection without requiring the publisher to send multiple separate streams.
Solution Approach 2:
The SFU dynamically adjusts the quality level of forwarded streams based on real-time bandwidth conditions. The system continuously monitors network capacity and adapts the stream quality accordingly, transitioning between different quality levels as bandwidth availability changes.
2Reliability
If the SFU forwards streams with high bitrate, then the user experience quality improves, but network congestion and packet loss increase
Solution Approach 1:
The system implements feedback mechanisms where the SFU monitors network conditions (bandwidth availability, packet loss, latency) and uses this information to adjust the stream quality. Bandwidth estimation techniques provide continuous feedback about network capacity, allowing the SFU to optimize the bitrate to match actual network conditions.
Solution Approach 2:
The SFU changes key parameters of the data stream, particularly the bitrate and quality level, based on network conditions. By adjusting these parameters dynamically, the system maintains high user experience quality when bandwidth is available while preventing congestion when bandwidth is limited.
3Ease of operation
If the publisher is notified of maximum allowed bitrate, then rate control is simplified, but the system cannot adapt to different subscriber bandwidth conditions
Solution Approach 1:
The SFU acts as an intermediary between the publisher and subscribers. Instead of the publisher directly negotiating with each subscriber, the SFU receives the stream, estimates bandwidth to each subscriber individually, and forwards appropriate quality levels. This mediator approach maintains simplicity at the publisher end while enabling subscriber-specific adaptation.
Solution Approach 2:
The publisher sends a stream with higher quality than any single subscriber may need (excessive action), and the SFU performs partial processing by selecting and forwarding only the appropriate quality level for each subscriber. This approach simplifies publisher operations while enabling fine-grained adaptation at the SFU.
Data Source
AI summary
A method and apparatuses for rate control of a multi-quality data stream using multiple, combined probing techniques includes receiving a multi-quality data stream, adding padding packets to the multi-quality data stream to determine which data stream of the multi-quality data stream to select to communicate data packets of the multi-quality data stream, adding probing packets to the selected data stream of the multi-quality data stream to determine a bandwidth at which to communicate the selected data stream, and communicating the selected data stream to receivers using the determined bandwidth. In some embodiments, the method and apparatus can further include determining whether or not a different quality data stream of the multi-quality data stream should be selected before adding padding packets to the multi-quality data stream and/or determining if a bandwidth estimation process should be performed before adding probing packets to the selected data stream of the multi-quality data.


