Device, system and method of communicating aggregate data units
AssigneeIntel Corporation
InventorsSolomon B. Trainin, Carlos Cordeiro, Ran Mor, Michael Glik
Life of this patent
Estimating the term…
Abstract
Some demonstrative embodiments include devices, systems and/or methods of communicating aggregate data units. For example, a device may include a wireless communication unit to communicate an aggregate data unit including a plurality of data units in an increasing order of sequence numbers assigned to the data units, such that a first data unit having a first sequence number always precedes a second data unit having a second sequence number, greater than the first sequence number.
Claims26
A device comprising:
- a wireless communication unit to communicate an aggregate data unit including a plurality of data units in an increasing order of sequence numbers assigned to said data units, such that a first data unit having a first sequence number always precedes a second data unit having a second sequence number greater than said first sequence number,
- wherein, at a start of a Transmit Opportunity (TxOP) or a Service Period (SP), said wireless communication unit is to communicate the aggregate data unit having only a normal acknowledge (ACK) policy, if at least one frame, communicated by the wireless communication unit in a last Physical Layer Protocol Data Unit (PPDU), did not require an immediate response,
- said wireless communication unit is to maintain a block acknowledgement record including a bitmap of buffered data units of one or more previously received aggregate data units, indexed according to sequence numbers of the buffered data units, and a sequence number indicator representing a lowest sequence number in the bitmap, said wireless communication unit is to process one or more buffered data units in order of increasing value of sequence numbers of the one or more buffered data units starting with a buffered data unit having a sequence number equal to the sequence number indicator.
A system comprising:
- at least a first wireless communication device comprising:
- one or more antennas;
- and
- a wireless communication unit to receive an aggregate Medium Access Control (MAC) Protocol Data Unit (A-MPDU) including a plurality of MAC Protocol Data Units (MPDUs) in an increasing order of sequence numbers assigned to said MPDUs, wherein a first MPDU having a first sequence number always precedes a second MPDU having a second sequence number greater than said first sequence number,
- said wireless communication unit is to maintain a Block Acknowledgement (BA) record including a bitmap of buffered MAC Service Data Units (MSDUs), indexed by sequence number, said wireless communication unit to process one or more of said MSDUs if:
- a received MPDU is received as a non-first frame of said A-MPDU;
- a bit at a position SN=WINStartR−1 of said bitmap is set to 1, wherein WINStartR represents a lowest sequence number position in the bitmap;
- and
- all delimiters between the received MPDU and a preceding MPDU are valid,
- wherein said wireless communication unit is to process the one or more of said MSDUs if:
- the received MPDU is received as a first frame in said A-MPDU;
- the A-MPDU is received in a Short-InterFrame-Space (SIFS) time or a Reduced-InterFrame-Space (RIFS) time after the preceding MPDU, or in SIFS time after transmission of an Acknowledge (ACK) frame;
- and
- the bit at the position SN=WINStartR−1 of said bitmap is set to 1.
A method comprising:
- communicating an aggregate data unit including a plurality of data units in an increasing order of sequence numbers assigned to said data units, such that a first data unit having a first sequence number always precedes a second data unit having a second sequence number greater than said first sequence number;
- communicating a block acknowledgement comprising an acknowledgement of a particular data unit of said aggregate data unit, only if all other data units of said aggregate data unit, which have sequence numbers lesser than a sequence number of said particular data unit, were successfully received;
- maintaining a block acknowledgement record including a bitmap of buffered data units of one or more previously received aggregate data units, indexed according to sequence numbers of the buffered data units, and a sequence number indicator representing a lowest sequence number in the bitmap;
- and
- processing one or more buffered data units in order of increasing value of sequence numbers of the one or more buffered data units starting with a buffered data unit having a sequence number equal to the sequence number indicator.
A product including a non-transitory storage medium having stored thereon instructions that, when executed by a machine, result in:
- communicating an aggregate data unit including a plurality of data units in an increasing order of sequence numbers assigned to said data units, such that a first data unit having a first sequence number always precedes a second data unit having a second sequence number greater than said first sequence number;
- communicating a block acknowledgement comprising an acknowledgement of a particular data unit of said aggregate data unit, only if all other data units of said aggregate data unit, which have sequence numbers lesser than a sequence number of said particular data unit, were successfully received;
- maintaining a block acknowledgement record including a bitmap of buffered data units of one or more previously received aggregate data units, indexed according to sequence numbers of the buffered data units, and a sequence number indicator representing a lowest sequence number in the bitmap;
- and
- processing one or more buffered data units in order of increasing value of sequence numbers of the one or more buffered data units starting with a buffered data unit having a sequence number equal to the sequence number indicator.
Dependencies are inferred from the claim text.