IP Library Granted Patent US 10,454,626
Granted Patent B2
US 10,454,626 · App. 15/669,884 · Granted Oct 22, 2019

Transmitter defragmentation for data unit fragments

Inventors: Liwen Chu (San Ramon, CA); Lei Wang (San Diego, CA); Jinjing Jiang (San Jose, CA); Hongyuan Zhang (Fremont, CA); Hui-Ling Lou (Sunnyvale, CA)
Assignee: Marvell World Trade Ltd.
H04L1/1825H04L1/08H04L1/1614H04L1/1621H04L1/1635H04L5/0007H04L5/0044H04L27/26H04L27/2608H04W28/06H04W28/08H04W72/04H04L2001/0092H04W28/065H04W84/12
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 10,454,626
App. No.
15/669,884
Granted
Oct 22, 2019
Kind
B2
Abstract

A first medium access control (MAC) service data unit (MSDU), intended for a communication device of multiple communication devices, is divided into a plurality of fragments. First and second groups of MAC protocol data units (MPDUs) intended for the multiple communication devices are generated and one or more transceivers are controlled to transmit first and second orthogonal frequency division multiple access data units that include the first and second groups, respectively, to the multiple communication devices. The first group includes a first MPDU that includes a first fragment of the plurality of fragments and is an only MPDU of the first group intended for the communication device. The second group includes a second MPDU that includes the first MSDU in its entirety and is included in the second group in response to determining that the first fragment was not properly received and/or decoded by the communication device.

Claims (62)

1. A method for simultaneously communicating with multiple communication devices in a wireless local area network, the method comprising:

dividing, at a first communication device, a first medium access control (MAC) service data unit (MSDU) into a plurality of fragments, wherein the first MSDU is intended for a second communication device of the multiple communication devices;

generating, at the first communication device, a first group of MAC protocol data units (MPDUs) intended for the multiple communication devices, wherein the first group of MPDUs includes a first MPDU that i) includes a first fragment of the plurality of fragments, ii) is an only MPDU of the first group of MPDUs intended for the second communication device, and iii) is intended only for the second communication device;

generating, at the first communication device, a first orthogonal frequency division multiple access (OFDMA) data unit that includes the first group of MPDUs intended for the multiple communication devices;

transmitting, with one or more transceivers of the first communication device, the first OFDMA data unit to the multiple communication devices;

generating, at the first communication device, a second group of MPDUs intended for the multiple communication devices, wherein the second group of MPDUs includes a second MPDU that includes the first MSDU in its entirety, wherein the second MPDU is included in the second group of MPDUs in response to determining, at the first communication device, that the first fragment was not properly received and/or decoded by the second communication device;

generating, at the first communication device, a second OFDMA data unit that includes the second group of MPDUs intended for the multiple communication devices;

transmitting, with the one or more transceivers of the first communication device, the second OFDMA data unit to the multiple communication devices.

2. The method of claim 1 , wherein generating the second group of MPDUs comprises defragmenting the plurality of fragments to generate the second MPDU in response to determining, at the first communication device, that the first fragment was not properly received and/or decoded by the second communication device.

3. The method of claim 2 , wherein the method further comprises storing the plurality of fragments in a memory of the first communication device until a positive acknowledgment that the first MSDU has been decoded by the second communication device.

4. The method of claim 1 , wherein:

the first MPDU is a single, non-aggregate MPDU having a data portion that includes data from only the first fragment;

the method further comprises receiving, before generating the second group of MPDUs, a third OFDMA data unit that includes an acknowledgment data unit transmitted by the second communication device that indicates that the second communication device has not properly received and/or decoded the first MPDU, wherein the acknowledgment data unit is a single, non-aggregate MPDU; and

determining that the first fragment was not properly received and/or decoded by the second communication device is based on the indication, in the acknowledgment data unit, that the second communication device has not properly received and/or decoded the first MPDU.

5. The method of claim 1 , wherein:

the first MPDU is an aggregate MPDU (A-MPDU) that includes the first fragment;

the method further comprises receiving a third OFDMA data unit that includes an acknowledgment data unit transmitted by the second communication device that indicates that the second communication device has not properly received and/or decoded the first MPDU, wherein the acknowledgment data unit is a compressed block acknowledgment; and

determining that the first fragment was not properly received and/or decoded by the second communication device is based on the indication, in the acknowledgment data unit, that the second communication device has not properly received and/or decoded the first MPDU.

6. The method of claim 5 , wherein generating the first group of MPDUs comprises generating the A-MPDU to include a single fragment per sequence number.

7. The method of claim 5 , wherein the compressed block acknowledgment includes a block acknowledgment bitmap having a single bit that indicates that the second communication device has not properly received and/or decoded the first MPDU.

8. The method of claim 1 , wherein:

the method further comprises receiving, before generating the second group of MPDUs, a third OFDMA data unit that includes an acknowledgment data unit transmitted by the second communication device that the second communication device has not properly received and/or decoded the first MPDU; and

determining that the first fragment was not properly received and/or decoded by the second communication device is based on the indication, in the acknowledgment data unit, that the second communication device has not properly received and/or decoded the first MPDU.

9. The method of claim 1 , wherein the method further comprises determining, before generating the second group of MPDUs, that the second communication device has not properly received and/or decoded the first MPDU.

10. The method of claim 1 , wherein the method further comprises:

generating, at the first communication device, a third group of MPDUs intended for the multiple communication devices, wherein the third group of MPDUs includes a third MPDU that includes an intermediate fragment of the plurality of fragments;

generating, at the first communication device, a third OFDMA data unit that includes the third group of MPDUs intended for the multiple communication devices;

causing, by the first communication device, the third OFDMA data unit to be transmitted to the multiple communication devices; and

receiving, before generating the second group of MPDUs, a fourth OFDMA data unit that includes an acknowledgment data unit transmitted by the second communication device that indicates that the second communication device has not properly received and/or decoded the first MPDU, wherein the first communication device generates the second MPDU in response to the indication that the second communication device has not properly received and/or decoded the first MPDU.

11. A first communication device for simultaneously communicating with multiple communication devices in a wireless local area network, the first communication device comprising:

a network interface device having one or more integrated circuits configured to:

divide a first medium access control (MAC) service data unit (MSDU) into a plurality of fragments, wherein the first MSDU is intended for a second communication device of the multiple communication devices,

generate a first group of MAC protocol data units (MPDUs) intended for the multiple communication devices, wherein the first group of MPDUs includes a first MPDU that i) includes a first fragment of the plurality of fragments, ii) is an only MPDU of the first group of MPDUs intended for the second communication device, and iii) is intended only for the second communication device,

generate a first orthogonal frequency division multiple access (OFDMA) data unit that includes the first group of MPDUs intended for the multiple communication devices,

generate a second group of MPDUs intended for the multiple communication devices, wherein the second group of MPDUs includes a second MPDU that includes the first MSDU in its entirety, wherein the second MPDU is included in the second group of MPDUs in response to determining, at the first communication device, that the first fragment was not properly received and/or decoded by the second communication device,

generate a second OFDMA data unit that includes the second group of MPDUs intended for the multiple communication devices;

wherein the network interface device comprises one or more transceivers configured to:

transmit the first OFDMA data unit to the multiple communication devices, and

transmit the second OFDMA data unit to the multiple communication devices.

12. The first communication device of claim 11 , wherein the one or more integrated circuits are configured to defragment the plurality of fragments to generate the second MPDU in response to determining, at the first communication device, that the first fragment was not properly received and/or decoded by the second communication device.

13. The first communication device of claim 12 , wherein the one or more integrated circuits are configured to store the plurality of fragments in a memory of the first communication device until a positive acknowledgment that the first MSDU has been decoded by the second communication device.

14. The first communication device of claim 11 , wherein:

the first MPDU is a single, non-aggregate MPDU having a data portion that includes data from only the first fragment,

the one or more integrated circuits are configured to process, before generating the second group of MPDUs, a third OFDMA data unit received by the one or more transceivers, the third OFDMA data unit including an acknowledgment data unit transmitted by the second communication device that indicates that the second communication device has not properly received and/or decoded the first MPDU,

the acknowledgment data unit is a single, non-aggregate MPDU, and

the one or more integrated circuits are configured to determine that the first fragment was not properly received and/or decoded by the second communication device based on the indication, in the acknowledgment data unit, that the second communication device has not properly received and/or decoded the first MPDU.

15. The first communication device of claim 11 , wherein:

the first MPDU is an aggregate MPDU (A-MPDU) that includes the first fragment, and

the one or more integrated circuits are configured to process a third OFDMA data unit received by the one or more transceivers, the third OFDMA data unit including an acknowledgment data unit transmitted by the second communication device that indicates that the second communication device has not properly received and/or decoded the first MPDU,

the acknowledgment data unit is a compressed block acknowledgment, and

the one or more integrated circuits are configured to determine that the first fragment was not properly received and/or decoded by the second communication device based on the indication, in the acknowledgment data unit, that the second communication device has not properly received and/or decoded the first MPDU.

16. The first communication device of claim 15 , wherein the one or more integrated circuits are configured to generate the A-MPDU to include a single fragment per sequence number.

17. The first communication device of claim 15 , wherein the compressed block acknowledgment includes a block acknowledgment bitmap having a single bit that indicates that the second communication device has not properly received and/or decoded the first MPDU.

18. The first communication device of claim 11 , wherein:

the one or more integrated circuits are configured to process, before generating the second group of MPDUs, a third OFDMA data unit received by the one or more transceivers, the third OFDMA data unit including an acknowledgment data unit transmitted by the second communication device that the second communication device has not properly received and/or decoded the first MPDU; and

the one or more integrated circuits are configured to determine that the first fragment was not properly received and/or decoded by the second communication device based on the indication, in the acknowledgment data unit, that the second communication device has not properly received and/or decoded the first MPDU.

19. The first communication device of claim 11 , wherein the one or more integrated circuits are configured to determine, before generating the second group of MPDUs, that the second communication device has not properly received and/or decoded the first MPDU.

20. The first communication device of claim 11 , wherein the one or more integrated circuits are configured to:

generate a third group of MPDUs intended for the multiple communication devices, wherein the third group of MPDUs includes a third MPDU that includes an intermediate fragment of the plurality of fragments,

generate a third OFDMA data unit that includes the third group of MPDUs intended for the multiple communication devices,

process, before generating the second group of MPDUs, a fourth OFDMA data unit received by the one or more transceivers, the fourth OFDMA data unit including an acknowledgment data unit transmitted by the second communication device that indicates that the second communication device has not properly received and/or decoded the first MPDU, wherein the first communication device generates the second group of MPDUs in response to the indication that the second communication device has not properly received and/or decoded the first MPDU;

wherein the one or more transceivers configured to transmit the third OFDMA data unit to the multiple communication devices.

Assignments (7)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 17, 2026
From: NXP USA, INC.
To: MAX WIRELESS, LLC
Reel/Frame 073802/0070 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 18, 2019
From: MARVELL INTERNATIONAL LTD.
To: NXP USA, INC.
Reel/Frame 051536/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 27, 2019
From: MARVELL WORLD TRADE LTD.
To: MARVELL INTERNATIONAL LTD.
Reel/Frame 050553/0001 →
LICENSE Recorded Sep 9, 2019
From: MARVELL WORLD TRADE LTD.
To: MARVELL INTERNATIONAL LTD.
Reel/Frame 050320/0071 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 9, 2019
From: MARVELL INTERNATIONAL LTD.
To: MARVELL WORLD TRADE LTD.
Reel/Frame 050320/0065 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 9, 2019
From: MARVELL SEMICONDUCTOR, INC.
To: MARVELL INTERNATIONAL LTD.
Reel/Frame 050320/0050 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 9, 2019
From: CHU, LIWEN; WANG, LEI; JIANG, JINJING; ZHANG, HONGYUAN; LOU, HUI-LING
To: MARVELL SEMICONDUCTOR, INC.
Reel/Frame 050320/0053 →
Continuity (4)
Continuation In Part 15360538 · Nov 23, 2016
Provisional Application 62259220 · Nov 24, 2015
Provisional Application 62369567 · Aug 1, 2016
Related Publication 20170338914A1 · Nov 23, 2017