Airtime-based packet scheduling for wireless networks
First Claim
1. A method comprising:
- receiving first and second data packets as part of network traffic of a network destined for one or more wireless devices accessing the network through a wireless connection;
determining a first quality of service profile associated with the first data packet and a second quality of service profile associated with the second data packet;
determining a first token cost of transmitting the first data packet and a second token cost of transmitting the second data packet based on estimated airtime for transmitting the first and second data packets, respectively;
determining a first token balance of the first quality of service profile and a second token balance of the second quality of service profile, the first and second token balances being an amount of network bandwidth of the network allocated to the first and second quality of service profiles, respectively;
determining whether the first and second token costs exceed the first and second token balances, respectively;
upon determining that the first token cost does not exceed the first token balance, deducting the first token cost from the first token balance and forwarding the first data packet to a wireless device;
upon determining that the second token cost does not exceed the second token balance, deducting the second token cost from the second token balance and forwarding the second data packet to a wireless device;
periodically performing increase of the first and second token balances, respectively, an increase rate of the first token balance being greater than an increase rate of the second token balance;
receiving a third data packet as part of network traffic of the network destined for a wireless device accessing the network through a wireless connection;
determining a third quality of service profile associated with the third data packet;
determining a third token cost of transmitting the third data packet based on estimated airtime for transmitting the third data packet;
deducting the third token cost from a third token balance of the third quality of service profile and forwarding the third data packet to a wireless device, irrespective of whether or not the third token cost exceeds the third token balance.
4 Assignments
0 Petitions
Accused Products
Abstract
Airtime usage may be used as a factor in controlling network traffic flow to and from client devices via a wireless network interface. Received packets or other data are assigned to a quality of service profile. Additionally, a cost value for communicating the received data is determined at least in part based on an actual or estimated airtime usage for the received packet. The cost value is used to allocate wireless network airtime to data. The allocation of wireless network airtime may be varied dynamically based on operating conditions. The cost value may be based on factors including the airtime used to communicate data; whether the data is a retransmission; and wireless network overhead. The cost value of data may also be different depending on whether the data is being sent from a client device or to a client device.
257 Citations
18 Claims
-
1. A method comprising:
-
receiving first and second data packets as part of network traffic of a network destined for one or more wireless devices accessing the network through a wireless connection; determining a first quality of service profile associated with the first data packet and a second quality of service profile associated with the second data packet; determining a first token cost of transmitting the first data packet and a second token cost of transmitting the second data packet based on estimated airtime for transmitting the first and second data packets, respectively; determining a first token balance of the first quality of service profile and a second token balance of the second quality of service profile, the first and second token balances being an amount of network bandwidth of the network allocated to the first and second quality of service profiles, respectively; determining whether the first and second token costs exceed the first and second token balances, respectively; upon determining that the first token cost does not exceed the first token balance, deducting the first token cost from the first token balance and forwarding the first data packet to a wireless device; upon determining that the second token cost does not exceed the second token balance, deducting the second token cost from the second token balance and forwarding the second data packet to a wireless device; periodically performing increase of the first and second token balances, respectively, an increase rate of the first token balance being greater than an increase rate of the second token balance; receiving a third data packet as part of network traffic of the network destined for a wireless device accessing the network through a wireless connection; determining a third quality of service profile associated with the third data packet; determining a third token cost of transmitting the third data packet based on estimated airtime for transmitting the third data packet; deducting the third token cost from a third token balance of the third quality of service profile and forwarding the third data packet to a wireless device, irrespective of whether or not the third token cost exceeds the third token balance. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system comprising:
-
a processor; memory storing instructions configured to instruct the processor to; receive first and second data packets as part of network traffic of a network destined for one or more wireless devices accessing the network through a wireless connection; determine a first quality of service profile associated with the first data packet and a second quality of service profile associated with the second data packet; determine a first token cost of transmitting the first data packet and a second token cost of transmitting the second data packet based on estimated airtime for transmitting the first and second data packets, respectively; determine a first token balance of the first quality of service profile and a second token balance of the second quality of service profile, the first and second token balances being an amount of network bandwidth of the network allocated to the first and second quality of service profiles, respectively; determine whether the first and second token costs exceed the first and second token balances, respectively; upon determining that the first token cost does not exceed the first token balance, deduct the first token cost from the first token balance and forward the first data packet to a wireless device; upon determining that the second token cost does not exceed the second token balance, deduct the second token cost from the second token balance and forward the second data packet to a wireless device; periodically perform increase of the first and second token balances, respectively, an increase rate of the first token balance being greater than an increase rate of the second token balance; receive a third data packet as part of network traffic of the network destined for a wireless device accessing the network through a wireless connection; determine a third quality of service profile associated with the third data packet; determine a third token cost of transmitting the third data packet based on estimated airtime for transmitting the third data packet; deduct the third token cost from a third token balance of the third quality of service profile and forward the third data packet to a wireless device, irrespective of whether or not the third token cost exceeds the third token balance. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
Specification