Hierarchical Packet Scheduling for Bandwidth Fairness
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Communication networks face challenges in providing fair and efficient bandwidth allocation, leading to unequal service quality among end users due to prioritization based solely on Quality of Service (QoS) classes, which can result in bandwidth-intensive applications hogging resources and degrading service for others.
Innovation Solution
Implementing a hierarchy of packet queues associated with user devices, traffic classes, and applications, allowing for dynamic bandwidth allocation across these queues to ensure fair and efficient delivery of packets, thereby ensuring quality of service guarantees.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If packet prioritization is based solely on QoS classes, then service quality differentiation is achieved, but bandwidth fairness among end users deteriorates
Solution Approach 1:
The patent segments the packet scheduling system into multiple hierarchical levels: user设备层 (user device level), 应用层 (application level), and 流量类层 (traffic class level). Each level has its own queue structure, allowing bandwidth to be allocated and controlled at different granularities. This segmentation prevents any single application or user from monopolizing bandwidth by isolating resources at each hierarchical level.
Solution Approach 2:
The patent implements local quality control by assigning different bandwidth weights and priorities to different user devices, applications, and traffic classes independently. Each user device receives a portion of total bandwidth, which is then further distributed to applications based on their specific quality requirements. This localized control ensures that bandwidth-intensive applications cannot consume resources allocated to other users or applications.
2Productivity
If bandwidth is allocated to bandwidth-intensive applications, then application performance is improved, but service quality for other users deteriorates
Solution Approach 1:
The patent implements dynamic bandwidth allocation where bandwidth weights and queue priorities are not fixed but can be adjusted based on network conditions, user requirements, and application characteristics. The system can dynamically reassign bandwidth portions between users and applications, ensuring that bandwidth-intensive applications receive necessary resources while preventing them from consuming excessive bandwidth that would degrade service for other users.
3Device complexity
If a single queue structure is used, then system complexity is reduced, but bandwidth allocation fairness deteriorates
Solution Approach 1:
The patent employs a nested queue structure where user device queues contain application queues, which in turn contain traffic class queues. This nested hierarchy allows the system to maintain organized, manageable queue structures at each level while implementing multi-dimensional bandwidth control. The nesting approach prevents bandwidth unfairness by ensuring that each user's applications are isolated within their allocated bandwidth portion, and applications are further isolated within their specific queue structures.
Data Source
AI summary
A system may receive a bandwidth allocation policy, may allocate first bandwidth to a first set of queues based on the bandwidth allocation policy, and may allocate second bandwidth to a second set of queues based on the bandwidth allocation policy. The system may identify a first characteristic associated with packets, and may store information associated with the packets in first queues based on the first characteristic. The system may identify a second characteristic associated with the packets, and may store information associated with the packets, from the first queues, in second queues, based on the second characteristic, the allocated first bandwidth, and the bandwidth allocation policy. The system may store information associated with the packets, from the second queues, in an output queue based on the allocated second bandwidth and the bandwidth allocation policy, and may service the packets from the output queue for delivery to a device.


