Adaptive USB Traffic Prioritization for Bandwidth Bottlenecks
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing USB-C connection bandwidth management, particularly with USB4 and Thunderbolt 3 Alt modes, often results in insufficient bandwidth for non-isochronous traffic, leading to poor user experiences in scenarios like video conferencing and gaming due to the inability to differentiate and prioritize various types of non-isochronous traffic effectively.
Innovation Solution
A method and system that adaptively prioritizes USB traffic by using a filter driver and service to monitor bandwidth consumption and adjust device priorities and alternate modes for USB devices connected to a USB-C dock, allowing for dynamic allocation of bandwidth based on application workloads.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If isochronous traffic reserves bandwidth (e.g., 40%), then video traffic reliability is improved, but non-isochronous traffic bandwidth availability deteriorates
Solution Approach 1:
The system dynamically adjusts the bandwidth allocation ratio between isochronous and non-isochronous traffic based on real-time monitoring of bandwidth consumption. When non-isochronous traffic exceeds a threshold, the system modifies the allocation dynamically rather than using a fixed reservation, allowing flexible adaptation to different workload conditions while maintaining video reliability when needed.
Solution Approach 2:
The invention changes the bandwidth allocation parameter from a fixed reserved ratio to a dynamic ratio that can be adjusted based on traffic conditions. By modifying the allocation parameters adaptively, the system optimizes the balance between video traffic reliability and non-isochronous traffic bandwidth availability according to actual usage patterns.
2Device complexity
If multiple devices share unreserved bandwidth equally, then device complexity is reduced, but user experience for specific workloads deteriorates
Solution Approach 1:
The system segments non-isochronous traffic into different priority levels (high, medium, low) based on application requirements. This segmentation allows critical applications like video conferencing to receive preferential bandwidth treatment while less critical tasks receive standard sharing, improving user experience without requiring complex manual configuration.
Solution Approach 2:
The system implements feedback mechanisms by monitoring bandwidth consumption in real-time and adjusting priority allocations accordingly. When bandwidth thresholds are exceeded, the system responds by re prioritizing traffic dynamically, creating a closed-loop control system that adapts to changing conditions and maintains optimal user experience automatically.
3Productivity
If USB4 priority queues are used to prioritize traffic by priority group, then traffic prioritization capability is improved, but ability to differentiate non-isochronous traffic types deteriorates
Solution Approach 1:
The system applies different priority treatments to different types of non-isochronous traffic based on their specific requirements. Instead of uniform prioritization, critical applications like video conferencing receive high priority while less critical tasks receive lower priority, providing localized quality of service optimization for each traffic type.
Solution Approach 2:
The invention creates a multi-functional priority management system that can handle multiple types of non-isochronous traffic (storage, networking, graphics, audio) with different priority levels. This universal approach allows the same USB connection to support diverse applications with differentiated service quality, enhancing adaptability across various workload scenarios.
Data Source
AI summary
Traffic for USB devices that are connected to a USB-C dock can be adaptively prioritized. When the consumption of the bandwidth of a connection between a computing device and a USB-C dock exceeds a threshold, a filter driver can notify a service. The service can update device priority values for the devices that are connected to the USB-C dock based on applications that are accessing the devices. The service can relay the updated device priority values to the filter driver. The filter driver can then attempt to reduce bandwidth consumption by changing device settings of any device with a lower priority value, and then, if changing device settings is insufficient, may attempt to reduce bandwidth consumption by lowering the priority of the device's traffic.


