IP Library Granted Patent US 8,982,901
Granted Patent B2
US 8,982,901 · App. 13/555,151 · Granted Mar 17, 2015

Counter based fairness scheduling for QoS queues to prevent starvation

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,982,901
App. No.
13/555,151
Granted
Mar 17, 2015
Kind
B2
Abstract

Systems and methods are disclosed to communicate data between wireless access point with one or more low priority queues; one or more high priority queues; a quality of service (QoS) queue coupled to the low and high priority queues; a fairness counter; and a buffer coupled to the fairness counter and the QoS queue to map buffer mapping to the QoS queue when the fairness counter expires, the method including performing an association request for fairness scheduling; and injecting a low priority packet in a transmit opportunity of the high priority queue.

Claims (31)

1. A method to communicate data between a wireless access point and a wireless station comprising:

maintaining one or more low priority Quality of Service (QoS) queues for tracking low-priority data to be transmitted between the wireless access point and the wireless station;

maintaining one or more high priority QoS queues, each of the high priority queues for tracking high-priority data to be transmitted between the wireless access point and the wireless station;

performing a fairness mechanism negotiation, during association and connection establishment or via pre-determined protocol, comprising requesting fairness treatment and providing, by the access point responsive to the requesting, a value for a fairness counter initialized based on an expected timeout period for a type of traffic tracked by the low priority queue associated with the fairness counter,

periodically updating the fairness counter;

determining when the fairness counter expires according to the periodic updating;

transmitting data tracked by the high priority queue according to a QoS scheme; and

injecting, responsive to the expiration of the fairness counter, a low priority packet, from a low priority queue associated with the fairness counter, in a transmit opportunity of the high priority queue in substitution for data tracked by the high priority queue that otherwise would have been transmitted according to the QoS scheme.

2. The method of claim 1 , further comprising associating at least one of the low priority queues with a Transport Control Protocol (TCP) or User Datagram Protocol (UDP) session.

3. The method of claim 1 , wherein the fairness counter is provided in the wireless access point.

4. The method of claim 1 , wherein the expected timeout period used to initialize the fairness counter is based on a timeout period for one of TCP and UDP traffic.

5. The method of claim 2 , further comprising performing the fairness mechanism negotiation, periodically updating the fairness counter, determining a time when the fairness counter expires according to the periodic updating, and transmitting data tracked by the high priority queue according to a QoS scheme for each of a plurality of communication sessions.

6. The method of claim 1 , wherein the injecting, responsive to the expiration of the fairness counter, a low priority packet, from a low priority queue associated with the fairness counter, in a transmit opportunity of the high priority queue in substitution for data tracked by the high priority queue that otherwise would have been transmitted according to the QoS scheme is performed by the wireless access point, and further comprising receiving the low priority packet at the wireless station and providing the low priority packet to a communication session associated with that low priority packet.

7. The method of claim 1 , further comprising configuring a respective separate fairness counter for each of a plurality of independent sessions, updating each respective fairness counter and responsive to expiration of any of the respective separate fairness counters, injecting a low priority packet, for the session corresponding to the fairness counter that expired in a transmit opportunity of the high priority queue in substitution for data tracked by the high priority queue that otherwise have been transmitted according to the QoS scheme.

8. The method of claim 1 , comprising configuring fairness counters for both a TCP session and a UDP session independently.

9. The method of claim 1 , comprising requesting usage of a fairness scheme by the wireless station of the wireless access point for each of a plurality of sessions.

10. The method of claim 1 , comprising allocating a specific fairness counter value based on predetermined needs of a particular station or session.

11. The method of claim 1 , comprising indicating by the wireless station to the wireless access point that the fairness mechanism is no longer required for a particular communication session and responsively ceasing to maintain a fairness counter for that communication session.

12. The method of claim 1 , wherein the wireless station belongs to multiple VLANs and further comprising negotiating per VLAN fairness counters for each of the multiple VLANs.

13. The method of claim 1 , further comprising registering for separately tracked fairness based scheduling for each of multiple TCP/IP sessions.

14. The method of claim 1 , wherein non-QoS stations can request a minimum time duration.

15. The method of claim 1 , further comprising requesting, from the wireless station to the wireless access point, fairness scheduling for a particular application operating in the station.

16. The method of claim 15 , further comprising disabling the fairness scheduling for the particular application.

17. The method of claim 1 , further comprising receiving, by a lightweight access point, a request for fairness scheduling, providing the received request, by the lightweight access point to a controller, and determining an initial fairness counter value by the controller.

18. The method of claim 1 , further comprising sharing fairness scheduling information negotiated by one wireless access point, with another wireless access point to which the wireless station is roaming.

19. The method of claim 1 , further comprising performing inter-access point negotiation for fairness scheduling.

20. A wireless access point system, comprising:

a memory configured to store one or more low quality of service (QoS) priority queues, one or more high QoS priority queues

a fairness counter configured to be initialized to a value, periodically updated and upon expiration, to trigger an indication, wherein the value to which the fairness counter is initialized is determined based on an expected timeout period for a type of data traffic to be transmitted in a communication session to which the fairness counter will be associated; and

a buffer coupled to the fairness counter to receive the indication, the one or more low priority queues, and the one or more high priority queues and configured to obtain a packet from a low priority queue to which the fairness counter is associated and to map a packet in that low priority queue to a QoS hardware queue associated with a high priority queue, in response to the indication and to reset the fairness counter to the initial value, wherein the wireless access point is configured to receive a request for fairness tracking from a wireless station, and to respond by determining the value to which the fairness counter will be initialized.

21. The system of claim 20 , comprising a wireless station wirelessly coupled to the wireless access point the wireless station comprising a wireless interface configured to request, on behalf of an application executing in the wireless station, a request for fairness tracking, and to then make the request received by the wireless access point.

Assignments (6)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 16, 2021
From: IMAGINATION TECHNOLOGIES LIMITED
To: NORDIC SEMICONDUCTOR ASA
Reel/Frame 055605/0038 →
CHANGE OF NAME Recorded Jan 24, 2018
From: IMAGINATION TECHNOLOGIES, LLC
To: MIPS TECH, LLC
Reel/Frame 045164/0219 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 11, 2017
From: IMAGINATION TECHNOLOGIES LLC
To: IMAGINATION TECHNOLOGIES LIMITED
Reel/Frame 043834/0650 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ADDRESS OF ASSIGNEE PREVIOUSLY RECORDED AT REEL: 032664 FRAME: 0066. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Mar 10, 2015
From: POSEDGE, INC.
To: IMAGINATION TECHNOLOGIES, LLC
Reel/Frame 035360/0509 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 14, 2014
From: POSEDGE, INC.
To: IMAGINATION TECHNOLOGIES, LLC
Reel/Frame 032664/0066 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 28, 2013
From: PARVATHANENI, CHAKRA; HOLLA, VIVEKANANDA U
To: POSEDGE, INC.
Reel/Frame 031487/0426 →