Airtime-based packet scheduling for wireless networks
AssigneeAerohive Networks, Inc.
InventorsPeter Wu, Sreekanth Reddy, Jianlin Zeng, Changming Liu
Life of this patent
Estimating the term…
Loading patent…
AssigneeAerohive Networks, Inc.
InventorsPeter Wu, Sreekanth Reddy, Jianlin Zeng, Changming Liu
Estimating the term…
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.
A method comprising:
A system comprising:
Dependencies are inferred from the claim text.
Drawings are temporarily unavailable. Open the PDF at USPTO
From the US filing history. Foreign family members aren’t listed.
Local resource management: control channels or signalling for resource management
Flow control; Congestion control: traffic characterised by specific attributes, e.g. priority or QoS
Flow control; Congestion control: by discarding or delaying data units, e.g. packets or frames
Supervisory, monitoring or testing arrangements: testing, supervising or monitoring using real traffic
About 2 years 3 months of term left · ends 21 Jan 2029 (estimated)
This application is related to the field of wireless networking devices, and in particular to systems and methods for controlling network traffic to and from clients. Networking devices enable data communications between two or more devices, referred to generally as clients. Data communications may be conducted over wired and/or wireless network interfaces. Typically, data is partitioned into packets, which are then communicated via one or more networking devices to one or more destination clients.
Networking devices may handle packets generated by and directed to large numbers of clients over the same interface. The bandwidth or data communications capacity of networking devices limits the amount of data or the rate of network packets passing through network devices. The limits on bandwidth are particularly acute in network devices including wireless network interfaces. If the bandwidth limit of a networking device is reached or exceeded by its client's network traffic, packets may be delayed or dropped. Depending on the type of data being communicated over the network, these traffic disruptions caused by reaching or exceeding bandwidth limit of a networking device may adversely affect the performance of applications on a client. For example, clients receiving voice or streaming video data may be adversely affected by even small delays or losses of packets.
Because of the limits on network device bandwidth, many network devices include quality of service (QoS) functionality. Quality of service functionality allows network administrators to provide different priority for packets or other network data based on factors such as the associated client, user, client application, or data flow. Typically, users, clients, or applications are assigned to different quality of service profiles. Each quality of service profile specifies a quality of service parameters to associated packets or other network data. Networking devices use the scheduling weights to prioritize packet traffic and potentially guarantee a minimum level of performance to some or all of the network data flows.
FIG. 1 illustrates a flowchart of an example of a method of scheduling downlink network traffic according to an embodiment of the invention.
FIG. 2 illustrates a diagram of an example computer system suitable for implementing an embodiment of the invention.
FIG. 1 illustrates a flowchart 100 of an example of a method of scheduling downlink network traffic according to an embodiment of the invention. In this application, downlink network traffic refers to network traffic received by a network device via a wired or wireless network connection and directed to a client device via a wireless network connection. In step 105, a packet or other type of network data is received by a network device. In an embodiment, the packet is directed to a client device in direct or indirect communication with the network device via a wireless network connection. For example, the network device may be adapted to communicate the packet directly to the client device via a wireless network connection or to one or more additional network devices via the wireless network connection, which in turn communicate the packet to the client device via a wired or wireless network connection.
Step 110 determines a quality of service profile to be associated with the received packet. Embodiments of step 110 may assign a quality of service profile to packets based on the packet source, the packet destination, a user identity or user class associated with the packet source and/or packet destination, the contents or control data associated with a packet, a source or client application associated with a packet, and/or a data flow associated with the packet. The set of quality of service profiles may be specified by network administrators. As described in detail below, each quality of service profile is assigned a scheduling weight and a scheduling mode used to prioritize packets. In further embodiments, a quality of service profile may include a per-user rate limit.
Step 115 determines a token cost for the received packet based on factors including an estimated airtime for the packet and the quality of service profile. In an embodiment, packets are assigned a cost value, referred to as a token cost. The token cost represents the relative amount of network performance consumed by communicating the associated packet towards the intended destination by the network device.