IP Library Granted Patent US 9,467,537
Granted Patent B2
US 9,467,537 · App. 14/376,785 · Granted Oct 11, 2016

Method and apparatus for transmitting and receiving data

Inventors: Dongshan Bao (Beijing, CN); Desheng Yan (Beijing, CN); Shenfa Liu (Beijing, CN); Xiaoqiang Xie (Beijing, CN); Yubao Zhou (Beijing, CN); Huijuan Yao (Beijing, CN); Zhizuo Yang (Beijing, CN); Chaonan Peng (Beijing, CN); Min Ren (Beijing, CN); Jing Wang (Beijing, CN); Junhua Qin (Beijing, CN)
Assignee: GUANGDONG NUFRONT COMPUTER SYSTEM CHIP CO., LTD.
H04L69/22H04L69/166H04L69/30H04L69/324H04L2212/00
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 9,467,537
App. No.
14/376,785
Granted
Oct 11, 2016
Kind
B2
Abstract

A method and apparatus for transmitting and receiving data are disclosed. The method for transmitting data, comprising encapsulating one or multiple media access control protocol data units (MPDU) as a group media access control protocol data unit (G-MPDU) based on a length of the group media access control protocol data unit G-MPDU; fragmenting a current MPDU according to a residual length to obtain a fragmented MPDU when the residual length is insufficient to encapsulate the current MPDU; encapsulating the fragmented MPDU to the G-MPDU; and transmitting the encapsulated G-MPDU. The method ensures a high data transmission rate and does not wasting excess time to execute the fragmentation processing. The method also ensures a high resource utilization rate, utilizing fully the remaining length of the data unit.

Claims (82)

1. A method for transmitting data, comprising:

encapsulating one or multiple media access control protocol data units (MPDU) as a group media access control protocol data unit (G-MPDU) based on a length of the group media access control protocol data unit G-MPDU;

when a residual length of the G-MPDU is insufficient to encapsulate a current MPDU, the residual length being the length of the G-MPDU subtracting a length of the one or multiple MPDUs encapsulated in the G-MPDU,

determining whether the residual length is longer than a preset minimum fragmentation length;

when the residual length equals to or is shorter than the preset minimum fragmentation length, completing encapsulation of the G-MPDU, leaving the residual length of the G-MPDU empty;

when the residual length is longer than the preset minimum fragmentation length, fragmenting the current MPDU according to the residual length to obtain a fragmented MPDU;

encapsulating the fragmented MPDU to the G-MPDU; and

transmitting the encapsulated G-MPDU.

2. The method of claim 1 , further comprising:

encapsulating a MPDU to a sub-frame of G-MPDU;

placing a delimiter before the MPDU; and

placing a padding bit after the MPDU to make a length of the sub-frame a multiple of 2 bytes,

wherein the sub-frame of G-MPDU is formed, in sequence, by the delimiter, the MPDU, and the padding bit.

3. The method of claim 2 , wherein the delimiter includes a delimiter identification and length check information.

4. The method of claim 2 , wherein:

each MPDU is sequentially formed of: a frame header, a frame body, and a frame check sequence;

the frame header is sequentially formed of: a frame control information, a fragmentation sequence number identifying a number of a fragmentation in a same sequence, a sequence number identifying a number of a MPDU, a reserved field, and a one-bit fragmentation indication information identifying whether a fragmentation of the current MPDU is expected afterwards, and a length information indicating a length between the frame header and the frame check sequence; and

the frame control information is sequentially formed of: a protocol version, a frame type indicating a management control data, a sub-type explaining the frame type in detail, a flow identification, a one-bit re-transmission instruction identifying whether the current MPDU is a re-transmission of a previous frame, and a reserved field.

5. The method of claim 1 , further comprising:

encapsulating the fragmented MPDU before other MPDUs when encapsulating the G-MPDU.

6. The method of claim 1 , further comprising:

determining a fragmentation number for said fragmented MPDU.

7. The method of claim 6 , further comprising:

setting fragmentation indication information for said fragmented MPDU.

8. The method of claim 7 , wherein the fragmentation indication information indicates whether there is more fragmentation of the current MPDU after itself.

9. The method of claim 1 , wherein the length of said G-MPDU is determined based on currently assigned transmission resources.

10. A method for receiving data, comprising:

receiving and analyzing a plurality of group media access control protocol data units G-MPDUs, wherein:

each G-MPDU includes one or multiple sub-frames;

one MPDU is encapsulated in each sub-frame of the G-MPDU;

the MPDU could be either a fragmented MPDU or a non-fragmented MPDU;

when a last component of a G-MPDU is a sub-frame encapsulating a fragmented MPDU, a length of the fragmented MPDU is longer than a preset minimum fragmentation length; and

when a last component of a G-MPDU is a residual, a length of the residual is the same or shorter than the preset minimum fragmentation length; and

restructuring the fragmented MPDU with a same sequence number.

11. The method of claim 10 , further comprising:

placing the non-fragmented MPDUs into a buffer window corresponding to a flow identification;

placing the fragmented MPDU into a fragmentation buffer corresponding to a flow identification;

restructuring the fragmented MPDU with the same sequence number;

recovering a non-fragmented MPDU from the restructured MPDU;

placing the recovered MPDU into the buffer window; and

transmitting MPDUs cached within the buffer window to an upper layer.

12. The method of claim 10 , further comprising:

restructuring all fragmented MPDU with the same sequence number in turn of the fragmentation number; and

recovering a non-fragmented MPDU.

13. The method of claim 12 , further comprising:

confirming whether there is more fragmentation of the current MPDU based on fragmentation indication information.

14. The method of claim 10 , further comprising:

encapsulating a delimiter in each sub-frame, wherein the sub-frame is formed, in sequence, by the delimiter, the MPDU, and a padding bit to make a length of the sub-frame a multiple of 2 bytes;

locating a starting position of a MPDU in the sub-frame based on the delimiter; and

analyzing the MPDU in the located sub-frame.

15. The method of claim 14 , further comprising:

obtaining a length of the MPDU after locating the starting position of the MPDU in the sub-frame; and

locating the starting position of a MPDU in the next sub-frame.

16. An apparatus for transmitting data, comprising:

an encapsulating module configured to:

encapsulate one or multiple media access control protocol data units (MPDUs) to a group media access control protocol data unit (G-MPDU) according to the length of the G-MPDU;

when a residual length of the G-MPDU is insufficient to encapsulate a current MPDU,

determine whether the residual length is longer than a preset minimum fragmentation length;

when the residual length equals to or is shorter than the preset minimum fragmentation length, completing encapsulation of the G-MPDU, leaving the residual length of the G-MPDU empty; and

when the residual length is longer than the preset minimum fragmentation length, fragment the current MPDU on the basis of the residual length to obtain a fragmented MPDU; and

encapsulate the fragmented MPDU to the G-MPDU; and

a transmitting module configured to transmit the encapsulated G-MPDU.

17. The apparatus of claim 16 , wherein the encapsulating module is further configured to:

place a delimiter before the MPDU; and

place a padding bit after the MPDU to make a length of a sub-frame a multiple of 2 bytes;

wherein the sub-frame of G-MPDU is formed, in sequence, by the delimiter, the MPDU, and the padding bit.

18. The apparatus of claim 16 , wherein the encapsulating module is further configured to encapsulate the fragmented MPDU before other MPDUs when encapsulating the G-MPDU.

19. An apparatus for receiving data, comprising:

a receiving and analyzing module configured to receive and analyze a plurality of group media access control protocol data units (G-MPDUs); wherein:

each G-MPDU includes one or multiple sub-frames;

one MPDU is encapsulated in each sub-frame of the G-MPDU;

a MPDU is a fragmented MPDU or a non-fragmented MPDU;

when a last component of a G-MPDU is a sub-frame encapsulating a fragmented MPDU, a length of the fragmented MPDU is longer than a preset minimum fragmentation length; and

when a last component of a G-MPDU is a residual, a length of the residual is shorter than the preset minimum fragmentation length; and

a processing module configured to restructure a fragmented MPDU with a same sequence number.

20. The apparatus of claim 19 , wherein the processing module is further configured to:

place the non-fragmented MPDU into a buffer window corresponding to a flow identification;

place the fragmented MPDU into a fragmentation buffer corresponding to a flow identification;

restructure the fragmented MPDU with the same sequence number;

recover a non-fragmented MPDU from the restructured fragmented MPDU;

place the recovered MPDU into the buffer window; and

transmit MPDUs cached within the buffer window to an upper layer.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 8, 2016
From: BEIJING NUFRONT MOBILE MULTIMEDIA TECH. CO., LTD.
To: GUANGDONG NUFRONT COMPUTER SYSTEM CHIP CO., LTD.
Reel/Frame 037688/0465 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 5, 2014
From: BAO, DONGSHAN; YAN, DESHENG; LIU, SHENFA; XIE, XIAOQIANG; ZHOU, YUBAO; YAO, HUIJUAN; YANG, ZHIZUO; PENG, CHAONAN; REN, MIN; WANG, JING; QIN, JUNHUA
To: BEIJING NUFRONT MOBILE MULTIMEDIA TECH. CO., LTD.
Reel/Frame 033468/0496 →
Priority Claims (3)
CN 2012 1 0026596 · Feb 7, 2012 · national
CN 2012 1 0034331 · Feb 15, 2012 · national
CN 2012 1 0054116 · Mar 2, 2012 · national
Continuity (1)
Related Publication 20150010019A1 · Jan 8, 2015