8509193

Packet Aggregation

PublishedAugust 13, 2013
Assigneenot available in USPTO data we have
Technical Abstract

Patent Claims
18 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. A computer-readable storage device comprising computer executable instructions that, when executed by a wireless device, perform a method comprising acts of: determining a channel condition of a wireless channel from the wireless device, the wireless device comprising a wireless network interface that provides the wireless channel and that measures a received signal strength corresponding to the wireless channel, wherein the channel condition is determined according to the received signal strength; determining packet characteristics of outbound packets generated by the wireless device for transmission, the packet characteristics comprising characteristics of the outbound packets and characteristics of network connections corresponding to the outbound packets; managing a plurality of queues in which the outbound packets are enqueued, the managing including determining, according to the packet characteristics, which queues will receive which outbound packets, wherein the outbound packets enqueued to any given queue have a same packet characteristic, and wherein there are aggregation parameters for the queues, respectively; aggregating the outbound packets in the queues according to the aggregation parameters; adapting communication based on the sensed received channel condition, the adapting comprising updating the aggregation parameters according to the channel condition, wherein when the channel condition has a first value the aggregation parameters are updated with first respective values, and when the signal strength has a second value the aggregation parameters are updated with second respective values, wherein the aggregating is adapted according to the changing channel condition.

2

2. The computer-readable storage device of claim 1 , wherein: wherein a network characteristic comprises an address of a common destination network address; and the method further comprises an act of transmitting to the common destination network address a frame into which outbound packets have been aggregated.

3

3. The computer-readable storage device of claim 1 , the method further comprising an act of measuring a transmission error rate, wherein the channel condition is determined according to the transmission error rate.

4

4. The computer-readable storage device of claim 1 , wherein: the act of updating for a given aggregation parameter comprises determining a maximum number of outbound packets to be aggregated based at least in part on the channel condition; the act of aggregating for a given queue corresponding to the given aggregation parameter comprises starting a delay timer when a first outbound packet is enqueued to the given queue; and enqueueing additional outbound packets to the given queue until the maximum number of packets to be aggregated is reached or the delay timer has expired.

5

5. The computer-readable storage device of claim 1 , wherein: the outbound packets include a first plurality of outbound packets, the first plurality a subset of a second plurality of outbound packets; the method further comprises receiving the second plurality of outbound packets from at least one application executing on the wireless device, each outbound packet among said second plurality of outbound packets having a quality of service requirement; and the act of updating a given aggregation parameter comprises determining a threshold aggregation time based at least in part on the quality of service requirement of at least one outbound packet among the first plurality of outbound packets.

6

6. The computer-readable storage device of claim 1 , wherein the computer executable instructions form at least a portion of an operating system for the wireless device.

7

7. The computer-readable storage device of claim 1 , wherein: the outbound packets include a first plurality of outbound packets, the first plurality of outbound packets containing only outbound packets having a packet type other than an acknowledgement packet type, wherein a packet characteristic comprises the packet type; and the method further comprising acts of: receiving a second plurality of outbound packets from at least one application, the first plurality of outbound packets being a subset of outbound packets within the second plurality of outbound packets; determining a packet type for each of the second plurality of outbound packets; and transmitting outbound packets having an acknowledgment packet type without aggregation thereof.

8

8. A system for transmitting packets over a communications channel, the system comprising: a processor and storage coupled with the processor; a network interface, coupled with the processor, having a channel interface and a driver, the driver being adapted to measure one or more changing channel conditions of the communications channel using the channel interface, the one or more channel conditions comprising a packet error rate or a signal strength, wherein the driver is executed by the processor; and a plurality of queues managed by an aggregation unit according to aggregation parameters of the queues, respectively; an aggregation unit that updates the aggregation parameters based at least in part on the one or more changing channel conditions and store the aggregation parameters in the storage, the aggregation unit comprising a packet interface for receiving, from applications executing on the system, outbound packets to be sent via the network interface and a program interface that receives, from at least one of the applications, an indication quality of service requirements for transmission of outbound packets generated by the at least one application; the aggregation unit updating a first aggregation parameter of a first queue according to the quality of service requirements and updating a second aggregation parameter of a second queue according to the one or more channel conditions; the aggregation unit enqueueing a first subset of the outbound packets into the first queue until the first aggregation parameter is met, and then forming a first frame by aggregating the first subset into the first frame, the first frame stored in the storage, the packets in the first subset having been selected for the first queue based on information provided through the program interface; the aggregation unit enqueueing a second subset of the outbound packets into the second queue until the second aggregation parameter is met, and then forming a second frame by aggregating the second subset into the second frame; and the network interface transmitting the first frame and the second frame.

9

9. The system of claim 8 , wherein the communications channel is a wireless channel and the channel interface is a transmitter/receiver.

10

10. The system of claim 8 , wherein: the indication of the quality of service requirements is an application type, the application type being one of a voice, video, background or file transfer type; and the program interface determines the indication of the quality of service requirements based on the indicated application type.

11

11. The system of claim 8 , wherein the aggregation unit identifies outbound packets to be aggregated, and enqueues each of said identified outbound packets into the queues based at least in part on a flow corresponding to each the identified outbound packets.

12

12. The system of claim 11 , wherein the aggregation parameters for a given one of the queues comprise a threshold size for the outbound packets in the given queue and a threshold packet aggregation time.

13

13. The system of claim 9 , wherein the aggregation unit identifies some of the outbound packets as being acknowledgement packets and in response transmits the acknowledgement packets via the network interface without having added the acknowledgement packets to any of the queues.

14

14. The system of claim 9 , wherein the first or the second frame is represented by a plurality of ordered bits, and the aggregation unit interleaves bits in the first or second frame by changing an order of at least a subset of the bits.

15

15. A method performed at a single network device, the network device comprising a wireless network interface and an operating system, the operating system comprising an aggregation unit, the method comprising: receiving incoming packets through the wireless network interface; repeatedly updating a channel condition according to a fluctuating signal strength as measured by the wireless network interface, or according to a fluctuating error rate of the incoming packets, or according to both the fluctuating signal strength and the fluctuating error rate; generating outgoing packets by a plurality of applications executing on the network device, and determining packet characteristics of the outgoing packets, the packet characteristics comprising characteristics of the outgoing packets or characteristics of network connections through which the outgoing packets flow; executing the aggregation unit, the aggregation unit generating and managing outbound queues from which outbound packets are queued before being transmitted via the wireless network interface, the managing including maintaining different aggregation parameters for the outbound queues, respectively, the maintaining comprising repeatedly updating the aggregation parameters with values determined according to the changing channel condition, wherein at least two of the outbound queues have different aggregation parameter values; receiving the outgoing packets at the aggregation unit, and in response the aggregation unit distributing the outgoing packets to the outbound queues, the distributing comprising enqueueing the outbound packets to various of the outbound queues according to the packet characteristics of the outbound queues; aggregating, by the aggregation unit, the outbound packets in the queues into transmission units according to the aggregating parameters, wherein how the outbound packets are aggregated depends on the fluctuating error rate, or the fluctuating signal strength, or both; and transmitting the transmission units through the wireless NIC.

16

16. A method according to claim 15 , wherein the transmission units comprise frames.

17

17. A method according to claim 16 , further comprising interleaving a plurality of bits of a frame when the signal strength and the error rate are determined to both exceed respective thresholds.

18

18. A method according to claim 15 , further comprising increasing a transmission power level of the wireless NIC when the signal strength and the error rate are determined to both be below respective thresholds.

Patent Metadata

Filing Date

Unknown

Publication Date

August 13, 2013

Inventors

Amer A. Hassan
Thomas W. Kuehnel
Pan Chun Wen

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “PACKET AGGREGATION” (8509193). https://patentable.app/patents/8509193

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.