CN102572936B - 一种无线聚合帧的发送处理方法及发送装置 - Google Patents

一种无线聚合帧的发送处理方法及发送装置 Download PDF

Info

Publication number
CN102572936B
CN102572936B CN201010612131.7A CN201010612131A CN102572936B CN 102572936 B CN102572936 B CN 102572936B CN 201010612131 A CN201010612131 A CN 201010612131A CN 102572936 B CN102572936 B CN 102572936B
Authority
CN
China
Prior art keywords
frame
msdu
polymerization
mpdu
current
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201010612131.7A
Other languages
English (en)
Other versions
CN102572936A (zh
Inventor
曹淋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Maipu Communication Technology Co Ltd
Original Assignee
Maipu Communication Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Maipu Communication Technology Co Ltd filed Critical Maipu Communication Technology Co Ltd
Priority to CN201010612131.7A priority Critical patent/CN102572936B/zh
Publication of CN102572936A publication Critical patent/CN102572936A/zh
Application granted granted Critical
Publication of CN102572936B publication Critical patent/CN102572936B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Mobile Radio Communication Systems (AREA)

Abstract

本发明提出一种无线聚合帧的发送处理方法,包括以下步骤:协议发送处理单元将发送装置当前所有待发送的MSDU帧依次进行协议上的处理;然后对所有处理后的待发送的MSDU帧进行判断,根据判断结果不同执行不同的操作,如果判断当前所有待发送的MSDU帧为多个,则根据标准聚合帧中可包括的MSDU帧数目,分离出多条MSDU子链,并在每条子链头部添加一个用于负载聚合帧的MPDU帧,然后把每条子链分别存入当前可用的空闲缓冲区中;通过建立并启动DMA传输事务,把当前缓冲区中的每一条MSDU子链中的多个MSDU帧拷贝到子链头部的MPDU帧中;在收到聚合完成消息后,协议发送处理单元依次将缓冲区中完成聚合的MPDU帧交给MAC发送单元进行发送。本发明在MAC硬件不支持聚合的情况下,通过硬件DMA控制器完成对多个MSDU帧聚合的拷贝,提高MPDU帧的发送处理效率,并且保证了发送数据帧的顺序。

Description

一种无线聚合帧的发送处理方法及发送装置
技术领域
本发明涉及无线局域网通信领域,尤其涉及一种无线聚合帧的发送处理方法和相应装置。
背景技术
为了增加无线局域网(WLAN)的传输速率,IEEE802.11工作组成立了802.11n任务组以致力于此。802.11n标准在物理层和MAC层都采用了很多措施。802.11n标准在物理层引入了正交频分复用(OFDM)与多入多出(MIMO)相结合的技术,该技术的使用为实现高速传输打下了基础,成为了高性能物理层(Physics,简称PHY)的标准。在802.11n的基本MAC层协议中,为了确保各个站点都能公平地取得媒质使用机会并尽量避免冲突,使用了一系列控制机制;这些机制在提高系统性能的同时也带来了固定开销,而这些开销则限制了系统吞吐量的提高,MAC层通过采用帧聚合技术有效提高了系统吞吐量。
帧聚合机制的本质为多个数据帧共用一个MAC头部,简化了帧的结构,去除了以往协议帧之间的帧间间隔和竞争时间,从而提高了MAC层的吞吐量。802.11n协议给出的A-MSDU技术,要求MAC层把用户要求其传输的多个负载帧MSDU(MAC协议数据单元)组成一个负载聚合帧A-MSDU来传送,以提高传输效率。按照标准,一个用户负载帧MSDU对应一个MPDU帧(MPDU,MAC业务数据单元),而MPDU帧在传输时,要求接收方发送一个对应的应答帧(ACK)以确认传输成功。当多个用户负载帧MSDU被重构为一个A-MSDU负载聚合帧后,由于A-MSDU只对应一个MPDU,于是减少了应答帧的数目,从而减小了开销,达到提高传输效率的目的。
通常,MAC层的硬件部分仅负责对MPDU报文的发送收,而无需关心MPDU报文承载的是普通的MSDU帧还是A-MSDU聚合帧。但是,对于MAC层软件部分,则必须关心MPDU报文承载的内容格式。因为,在发送并构造MPDU报文之前,MAC层软件必须负责将确定数量的MSDU帧聚合在一起形成A-MSDU聚合帧。所以在A-MSDU聚合技术的实施中,会涉及MSDU帧的拷贝,即在发送时把多个MSDU帧通过拷贝合并为一个聚合帧。很明显,如果这些拷贝操作由软件来完成,那么开销相当大,从而抵消了A-MSDU希望带来的传输效率,而同时,目前的大多数MAC硬件并不支持对MSDU帧的聚合
发明内容
本发明的目的是,提供一种无线聚合帧的发送处理方法及对应装置,在MAC硬件不支持聚合的情况下,高效地完成聚合帧的发送。
为了实现上述目的,本发明提供一种无线聚合帧的发送处理方法,包括:
A、协议发送处理单元将发送装置当前所有待发送的MAC协议数据单元MSDU帧依次进行协议上的处理;
B、然后协议发送处理单元对所有处理后的待发送的MSDU帧进行判断,如果判断当前所有待发送的MSDU帧为多个,则根据标准聚合帧中可包括的MSDU帧数目,分离出多条MSDU子链,并在每条子链头部添加一个用于负载聚合帧的MAC业务数据单元MPDU帧,然后把每条子链分别存入当前可用的空闲缓冲区中;如果在本次添加子链之前缓冲区为空,则建立并启动DMA传输事务,以把当前缓冲区中的第一条MSDU子链中的多个MSDU帧拷贝到子链头部的MPDU帧中;
C、在收到聚合完成消息后,协议发送处理单元依次将缓冲区中完成聚合的MPDU帧交给MAC发送单元进行发送,同时为缓冲区中需要聚合的子链建立并启动DMA传输事务。
具体的,所述步骤B中,协议发送处理单元对所有处理后的待发送的MSDU帧进行判断,
如果判断当前所有待发送的仅为单个MSDU帧,且当前缓冲区为空,则将该MSDU帧封装为单个MPDU帧后,交给MAC发送单元进行发送;
如果判断当前所有待发送的仅为单个MSDU帧,且当前缓冲区不为空,则将该MSDU帧封装为单个MPDU帧,并将该单个MPDU帧存入当前可用的空闲缓冲区中。
具体的,所述缓冲区在初始化时申请,可分为多个子区域,每个子区域对应一个数据帧队列和一个聚合标志。
所述步骤B中,将该单个MPDU帧存入当前可用的空闲缓冲区是指,协议发送处理单元在缓冲区中进行查找,当缓冲区中最后一个不为空的子区域中的数据帧队列为存放单个MPDU帧的队列,则将该MPDU帧存入该MPDU帧队列;否则直接将该MPDU帧存入到当前空的子区域中的数据帧队列中,并设置该队列的聚合标志为完成。
所述步骤C中,在收到聚合完成消息后,协议发送处理单元依次将聚合标志为完成的子区域的数据帧队列中的MPDU帧交给MAC发送单元进行发送,并为聚合标志为未完成的数据帧队列建立并启动DMA传输事务。
本发明的另一个目的提供一种聚合帧的发送装置,包括:
缓冲区,用于存储待交给MAC发送单元发送的MPDU帧;
协议发送处理单元,用于对发送装置当前待发送的所有MSDU帧依次进行协议上的处理,然后再用于判断当前所有待发送的MSDU帧为多个时,根据标准聚合帧中可包括的MSDU帧数目,分离出多条MSDU子链,并在每条子链头部添加一个用于负载聚合帧的MPDU帧,然后把每条子链分别存入当前可用的空闲缓冲区中;如果在本次添加子链之前缓冲区为空,则建立并启动DMA传输事务,以把当前缓冲区中的第一条MSDU子链中的多个MSDU帧拷贝到子链头部的MPDU帧中;
聚合DMA控制处理单元,用于完成协议发送处理单元建立的DMA传输事务,并在传输事务完成聚合后通知协议发送处理单元;
所述协议发送处理单元还用于,收到聚合DMA控制处理单元的解聚合完成消息时,依次将缓冲区中完成聚合的MPDU帧交给MAC发送单元进行发送,同时为缓冲区中需要聚合的子链建立并启动DMA传输事务,从而将缓冲区中需要聚合的子链中的多个MSDU帧拷贝到子链头部的MPDU帧中。
具体的,所述协议发送处理单元还用于进行如下判断和执行相应操作,
如果判断当前所有待发送的仅为单个MSDU帧,且当前缓冲区为空,则将该MSDU帧封装为单个MPDU帧后,交给MAC发送单元进行发送;
如果判断当前所有待发送的仅为单个MSDU帧,且当前缓冲区不为空,则将该MSDU帧封装为单个MPDU帧,并将该单个MPDU帧存入当前可用的空闲缓冲区中。
具体的,所述缓冲区在初始化时申请,可分为多个子区域,每个子区域对应一个数据帧队列和一个聚合标志。
具体的,所述聚合DMA控制处理单元包括聚合DMA控制器子单元和聚合DMA完成处理程序子单元,
所述聚合DMA控制器子单元,用于完成协议发送处理单元建立的DMA传输事务;并用于在所有的DMA传输事务完成后,通过中断触发聚合DMA完成处理程序子单元执行相应程序;
所述聚合DMA完成处理程序子单元,用于设置缓冲区中对应子区域的数据帧队列的聚合标志为完成,然后发送聚合完成消息给协议发送处理单元。
具体的,本发明中的所述协议发送处理单元还用于,在收到聚合完成消息后,释放聚合标志为完成的子区域的数据帧队列中的单个MSDU帧,并在将该子区域的数据帧队列中的MPDU帧交给MAC发送单元进行发送后,清空该子区域。
综上,本发明在MAC硬件不支持聚合的情况下,通过硬件DMA控制器完成对多个MSDU帧聚合的拷贝,提高MPDU帧的发送处理效率,并且保证了发送数据帧的顺序。
附图说明
图1是本发明无线聚合帧的发送处理方法实施例的流程图。
图2是本发明无线聚合帧的发送装置结构示意图。
图3是本发明无线聚合帧的发送装置实施例的结构示意图。
图4是本发明无线聚合帧的发送装置的缓冲区的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明作进一步详细说明。
参见图1,为本发明提供的无线聚合帧的发送处理方法实施例的流程图,其具体步骤为:
步骤101、协议发送处理单元将发送装置当前所有待发送的MSDU帧依次进行协议上的处理;
在本步骤中,发送装置一般把需要发送的MSDU存放到MSDU发送队列,然后发送入队消息通知协议发送处理单元;协议发送处理单元接收到MSDU帧的入队消息后,从MSDU发送队列中取出所有的MSDU帧,进行MSDU协议上的相关处理。
步骤102、协议发送处理单元对所有处理后的待发送的MSDU帧进行判断,并根据判断结果不同执行不同的操作:
判断子步骤1021、如果判断当前所有待发送的MSDU帧为多个,则根据标准聚合帧中可包括的MSDU帧数目,分离出多条MSDU子链,并在每条子链头部添加一个用于负载聚合帧的MPDU帧,然后把每条子链分别存入当前可用的空闲缓冲区中;如果在本次添加子链之前缓冲区为空,则建立并启动DMA传输事务,以把当前缓冲区中的第一条MSDU子链中的多个MSDU帧拷贝到子链头部的MPDU帧中。
判断子步骤1022、如果判断当前所有待发送的仅为单个MSDU帧,且当前缓冲区为空,则将该MSDU帧封装为单个MPDU帧后,交给MAC发送单元进行发送;本子步骤中,由于当前缓冲区为空,则说明当前没有需要等待聚合的MSDU帧,即不存在拥塞,同时不存在发送帧的保序问题,可以直接将当前的单个MPDU帧交给MAC发送单元进行发送。
判断子步骤1023、如果判断当前所有待发送的仅为单个MSDU帧,且当前缓冲区不为空,则将该MSDU帧封装为单个MPDU帧,并将该单个MPDU帧存入当前可用的空闲缓冲区中;本子步骤中,由于当前缓冲区不为空,说明有需要聚合的MSDU帧在排队,说明可能存在网络拥塞,所以为了保证数据帧的序列,需要将当前的单个MPDU帧顺序放入缓冲区中用于存放单个的MPDU帧的队列中或者空闲缓冲区中排队。
步骤103、在收到聚合完成消息后,协议发送处理单元依次将缓冲区中完成聚合的MPDU帧交给MAC发送单元进行发送,同时为缓冲区中需要聚合的子链建立并启动DMA传输事务。
在本发明的另一个实施例中,将用于临时存放MPDU帧的缓冲区分为多个子区域,每个子区域对应一个数据帧队列以及一个聚合标志。数据帧队列用来存储单个MPDU帧或者等待聚合的MPDU帧,聚合标志可分为完成和未完成两种类型。当数据帧队列存储的是连续MPDU单帧时,该队列的聚合标志为完成,并称该数据帧队列为MPDU帧队列;当数据帧队列存入的是等待聚合的MPDU帧时,该队列的聚合标志为未完成,该数据帧队列称为聚合帧队列,同时一旦聚合帧队列中的MSDU帧已经全部拷贝到队列首部的MPDU帧后,则该队列的聚合标志变为完成且该队列中的单个的MSDU帧会被删除。
在发送装置的协议发送处理单元对发送装置当前需要发送的所有MSDU帧进行协议上的处理后,开始对所有处理后的待发送的MSDU帧进行判断,根据判断结果不同执行不同的操作,具体为:
如果判断当前所有待发送的MSDU帧为多个,则根据标准聚合帧中可包括的MSDU帧数目,分离出多条MSDU子链,并在每条子链头部添加一个用于负载聚合帧的MPDU帧,然后在缓冲区中查找空闲的子区域,并将当前的MSDU子链分别依次加入到不同空闲子区域的数据帧队列中,并设置该数据帧队列的聚合标志为未完成;如果在本次添加子链之前缓冲区为空,则建立并启动DMA传输事务,以把当前缓冲区中的第一个子区域中数据帧队列的MSDU子链中的多个MSDU帧拷贝到子链头部的MPDU帧中;
如果判断当前所有待发送的仅为单个MSDU帧,且当前缓冲区为空,则将该MSDU帧封装为单个MPDU帧后,交给MAC发送单元进行发送;
如果判断当前所有待发送的仅为单个MSDU帧,且当前缓冲区不为空,则则在缓冲区中进行查找,当缓冲区中最后一个不为空的子区域中的数据帧队列为MPDU帧队列,则将该MPDU帧存入该MPDU帧队列;否则直接将该MPDU帧存入到当前空的子区域中的数据帧队列中,并设置该队列的聚合标志为完成。
在DMA传输事务完成后,一般会发聚合完成消息给协议发送处理单元,协议发送处理单元;在收到聚合完成消息后,协议发送处理单元释放聚合标志为完成的子区域的数据帧队列中的MSDU帧,并在将该子区域的数据帧队列中的MPDU帧交给MAC发送单元后,清空该子区域。如果查找到有聚合标志为未完成的子区域,则停止将MPDU帧交给MAC发送单元,建立并启动多个DMA传输事务,从而将当前子区域对应的数据帧队列中的MSDU帧依次拷贝到数据帧队列头部中的MPDU帧中。
本发明还提供了一种实施上述无线聚合帧发送处理方法的装置实施例,如图2所示,本发送装置包括:
缓冲区,用于存储待交给MAC发送单元发送的MPDU帧;
协议发送处理单元,用于对发送装置当前待发送的所有MPDU帧依次进行协议上的处理,然后再对当前处理后的所有待发送的MPDU帧进行判断,根据判断结果不同执行不同的操作:
判断当前所有待发送的MSDU帧为多个时,根据标准聚合帧中可包括的MSDU帧数目,分离出多条MSDU子链,并在每条子链头部添加一个用于负载聚合帧的MPDU帧,然后把每条子链分别存入当前可用的空闲缓冲区中;如果在本次添加子链之前缓冲区为空,则建立并启动DMA传输事务,以把当前缓冲区中的第一条MSDU子链中的多个MSDU帧拷贝到子链头部的MPDU帧中;
判断当前所有待发送的仅为单个MSDU帧,且当前缓冲区为空,则将该MSDU帧封装为单个MPDU帧后,交给MAC发送单元进行发送;
判断当前所有待发送的仅为单个MSDU帧,且当前缓冲区不为空,则将该MSDU帧封装为单个MPDU帧,并将该单个MPDU帧存入当前可用的空闲缓冲区中;
聚合DMA控制处理单元,用于完成协议发送处理单元建立的DMA传输事务,并在传输事务完成聚合后通知协议发送处理单元;
所述协议发送处理单元还用于,收到聚合DMA控制处理单元的聚合完成消息时,依次将缓冲区中完成聚合的MPDU帧交给MAC发送单元进行发送,同时为缓冲区中需要聚合的子链建立并启动DMA传输事务,从而将缓冲区中需要聚合的子链中的多个MSDU帧拷贝到子链头部的MPDU帧中。
参见图3,是本发明提供的无线聚合帧的发送装置的实施例,包括用于存储待交给MAC发送单元发送的MPDU帧的缓冲区,图4是本发明实施例的缓冲区的结构示意图;本发明的接收装置还包括用于对当前待发送的MSDU帧进行协议上处理,然后再对处理后的所有MSDU帧进行判断,根据判断结果的不同执行不同操作的协议接收处理单元。还包括用于完成协议发送处理单元建立的DMA传输事务,并在传输事务完成聚合后通知协议发送处理单元的聚合DMA控制处理单元。
在本实施例中,聚合DMA控制处理单元包括聚合DMA控制器子单元,用于完成协议发送处理单元建立的DMA传输事务;并用于在所有的DMA传输事务完成后,通过中断触发聚合DMA完成处理程序子单元执行相应程序;还包括聚合DMA完成处理程序子单元,用于设置缓冲区中对应子区域的数据帧队列的聚合标志为完成,然后发送聚合完成消息给协议发送处理单元。
为了更深入的理解本发明,现就本发发明实施例的发送装置实施本发明发送处理方法的具体过程进行详细说明,在本实施例中,定义如下参数:
MPDU-SUB-SIZE表示缓冲区中子区域的个数,
MPDU-AMSDU-IDEX表示正在进行聚合的子区域在缓冲区中的位置,
MPDU-MPDU-IDEX表示可存放MPDU帧的子区域在缓冲区中的位置,
MPDU-EMPTY-IDEX表示空闲的子区域在缓冲区中的位置,
缓冲区各个子区域中数据帧队列的聚合标志具有两个值:Done和Undone,其中Done表示聚合操作完成,而Undone表示聚合操作未完成。
发送装置首先把需要发送的MSDU存放到MSDU发送队列,然后发送入队消息通知协议发送处理单元;协议发送处理单元完成对当前所有待发送的MSDU帧的协议处理后,检测是否需要进行聚合操作,以及在需要聚合操作时执行聚合操作后将聚合帧交给MAC发送单元发送,所以协议发送处理单元执行的具体操作参见如下步骤A01-A03:
步骤A01:协议发送处理单元查询是否有聚合完成消息,如果否,则进行步骤A02的查询及操作,否则进一步判断正在进行聚合的子区域在缓冲区中的位置MPDU-AMSDU-IDEX是否等于空闲的子区域在缓冲区中的位置MPDU-EMPTY-IDEX,如果是,则返回继续进行本步骤A01的查询及操作,否则进一步判断MPDU-AMSDU-IDEX对应子区域的聚合标志是否为Done,如果是,则取出子区域中数据帧队列中的MPDU帧,依次交给MAC发送处理单元,清空该子区域,并设置MPDU-AMSDU-IDEX=(MPDU-AMSDU-IDEX+1)modMSDU-SUB-SIZE,并返回本A01步骤;否则进入步骤A03的操作;
步骤A02:协议发送处理单元查询是否有MSDU入队消息,如果否,则执行步骤A01的查询及操作,否则从MSDU发送队列中取出所有待发送的MSDU帧,并依次对其中的MSDU帧进行协议上的处理,完成对所有待发送的MSDU帧的处理后,开始对处理后的MSDU帧进行如下判断并执行对应的操作,直至对所有的MSDU帧完成判断及对应操作,然后进入步骤A01的查询及操作:
如果当前待发送的所有MSDU帧仅为一个MSDU,且MPDU-AMSDU-IDEX等于MSDU-EMPTY-IDEX,则将该MSDU帧封装为单个MPDU帧后,交给MAC发送单元进行发送;返回本判断步骤;
如果当前待发送的所有MSDU帧仅为一个MSDU,且MPDU-AMSDU-IDEX不等于MSDU-EMPTY-IDEX,则将该MSDU帧封装为单个MPDU帧;然后,如果MPDU-MPDU-IDEX不等于MPDU-EMPTY-IDEX,则把MPDU报文放入MPDU-MPDU-IDEX对应子区域的数据帧队列的尾部,返回本判断步骤;否则,如果(MPDU-EMPTY-IDEX+1)mod MPDU-SUB-SIZE等于MPDU-AMSDU-IDEX,则丢弃该MPDU帧,否则设置MPDU-EMPTY-IDEX=(MPDU-EMPTY-IDEX+1)mod MPDU-SUB-SIZE,把MPDU报文放入MPDU-MPDU-IDEX对应空的子区域的数据帧队列中,设置子区域的聚合标志为Done,返回本判断步骤;
如果当前待发送的所有MSDU帧为多个,则根据标准聚合帧中可包括的MSDU帧数目,分离出一条MSDU子链,并在本MSDU子链头部添加一个负载聚合帧的MPDU帧,然后判断(MPDU-EMPTY-IDEX+1)mod MPDU-SUB-SIZE是否等于MPDU-AMSDU-IDEX,如果是则丢弃当前的MPDU子链,返回本判断步骤,否则把当前MSDU子链存放到MPDU-EMPTY-IDEX对应的空闲子区域的数据帧队列中,并设置子区域数据帧队列的聚合标志为Undone,MPDU-EMPTY-IDEX=(MPDU-EMPTY-IDEX+1)mod MPDU-SUB-SIZE,MPDU-MPDU-IDEX=MPDU-EMPTY-IDEX;如果添加MSDU子链之前,MPDU-AMSDU-IDEX等于MPDU-EMPTY-IDEX,则建立并启动多个DMA传输事务,以把对应MSDU子链表中多个MSDU帧的内容拷贝到MSDU子链头部的MPDU帧处;返回本判断步骤。
步骤A03,协议发送处理单元建立并启动多个DMA传输事务后,协议发送处理单元进入步骤A02的查询及操作;聚合DMA控制器单元执行协议发送处理单元建立的DMA传输事务,以将对应子区域的数据帧队列中的MSDU帧拷贝到头部的MPDU帧中;当所有的DMA传输事务完成后,聚合DMA控制器单元通过中断触发聚合DMA完成处理程序单元执行;聚合DMA完成处理程序单元得到聚合DMA控制器单元的触发通知后,首先设置缓冲区中MPDU-AMSDU-IDEX对应的子区域的聚合标志为Done,然后发送聚合完成消息给协议发送处理单元。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (10)

1.一种无线聚合帧的发送处理方法,其特征在于,包括如下步骤:
A、协议发送处理单元将发送装置当前所有待发送的MAC协议数据单元MSDU帧依次进行协议上的处理;
B、然后协议发送处理单元对所有处理后的待发送的MSDU帧进行判断,如果判断当前所有待发送的MSDU帧为多个,则根据标准聚合帧中可包括的MSDU帧数目,分离出多条MSDU子链,并在每条子链头部添加一个用于负载聚合帧的MAC业务数据单元MPDU帧,然后把每条子链分别存入当前可用的空闲缓冲区中;如果在本次添加子链之前缓冲区为空,则建立并启动DMA传输事务,以把当前缓冲区中的第一条MSDU子链中的多个MSDU帧拷贝到子链头部的MPDU帧中;
C、在收到聚合完成消息后,协议发送处理单元依次将缓冲区中完成聚合的MPDU帧交给MAC发送单元进行发送,同时为缓冲区中需要聚合的子链建立并启动DMA传输事务。
2.如权利要求1所述无线聚合帧的发送处理方法,其特征在于,所述步骤B中,协议发送处理单元对所有处理后的待发送的MSDU帧进行判断,
如果判断当前所有待发送的仅为单个MSDU帧,且当前缓冲区为空,则将该MSDU帧封装为单个MPDU帧后,交给MAC发送单元进行发送;
如果判断当前所有待发送的仅为单个MSDU帧,且当前缓冲区不为空,则将该MSDU帧封装为单个MPDU帧,并将该单个MPDU帧存入当前可用的空闲缓冲区中。
3.如权利要求2所述无线聚合帧的发送处理方法,其特征在于,所述缓冲区在初始化时申请,可分为多个子区域,每个子区域对应一个数据帧队列和一个聚合标志。
4.如权利要求3所述无线聚合帧的发送处理方法,其特征在于,所述步骤B中,将该单个MPDU帧存入当前可用的空闲缓冲区是指,协议发送处理单元在缓冲区中进行查找,当缓冲区中最后一个不为空的子区域中的数据帧队列为为存放单个MPDU帧的队列,则将该MPDU帧存入该MPDU帧队列;否则直接将该MPDU帧存入到当前空的子区域中的数据帧队列中,并设置该队列的聚合标志为完成。
5.如权利要求3所述无线聚合帧的发送处理方法,其特征在于,所述步骤C中,在收到聚合完成消息后,协议发送处理单元依次将聚合标志为完成的子区域的数据帧队列中的MPDU帧交给MAC发送单元进行发送,并为聚合标志为未完成的数据帧队列建立并启动DMA传输事务。
6.一种无线聚合帧的发送装置,其特征在于,包括:
缓冲区,用于存储待交给MAC发送单元发送的MPDU帧;
协议发送处理单元,用于对发送装置当前待发送的所有MSDU帧依次进行协议上的处理,然后再用于判断当前所有待发送的MSDU帧为多个时,根据标准聚合帧中可包括的MSDU帧数目,分离出多条MSDU子链,并在每条子链头部添加一个用于负载聚合帧的MPDU帧,然后把每条子链分别存入当前可用的空闲缓冲区中;如果在本次添加子链之前缓冲区为空,则建立并启动DMA传输事务,以把当前缓冲区中的第一条MSDU子链中的多个MSDU帧拷贝到子链头部的MPDU帧中;
聚合DMA控制处理单元,用于完成协议发送处理单元建立的DMA传输事务,并在传输事务完成聚合后通知协议发送处理单元;
所述协议发送处理单元还用于,收到聚合DMA控制处理单元的聚合完成消息时,依次将缓冲区中完成聚合的MPDU帧交给MAC发送单元进行发送,同时为缓冲区中需要聚合的子链建立并启动DMA传输事务,从而将缓冲区中需要聚合的子链中的多个MSDU帧拷贝到子链头部的MPDU帧中。
7.如权利要求6所述无线聚合帧的发送装置,其特征在于,所述协议发送处理单元还用于进行如下判断和执行相应操作,
如果判断当前所有待发送的仅为单个MSDU帧,且当前缓冲区为空,则将该MSDU帧封装为单个MPDU帧后,交给MAC发送单元进行发送;
如果判断当前所有待发送的仅为单个MSDU帧,且当前缓冲区不为空,则将该MSDU帧封装为单个MPDU帧,并将该单个MPDU帧存入当前可用的空闲缓冲区中。
8.如权利要求6或7所述无线聚合帧的发送装置,其特征在于,所述缓冲区在初始化时申请,可分为多个子区域,每个子区域对应一个数据帧队列和一个聚合标志。
9.如权利要求8所述无线聚合帧的发送装置,其特征在于,所述聚合DMA控制处理单元包括聚合DMA控制器子单元和聚合DMA完成处理程序子单元,
所述聚合DMA控制器子单元,用于完成协议发送处理单元建立的DMA传输事务;并用于在所有的DMA传输事务完成后,通过中断触发聚合DMA完成处理程序子单元执行相应程序;
所述聚合DMA完成处理程序子单元,用于设置缓冲区中对应子区域的数据帧队列的聚合标志为完成,然后发送聚合完成消息给协议发送处理单元。
10.如权利要求8所述无线聚合帧的发送装置,其特征在于,所述协议发送处理单元还用于,在收到聚合完成消息后,释放聚合标志为完成的子区域的数据帧队列中的单个MSDU帧,并在将该子区域的数据帧队列中的MPDU帧交给MAC发送单元进行发送后,清空该子区域。
CN201010612131.7A 2010-12-29 2010-12-29 一种无线聚合帧的发送处理方法及发送装置 Active CN102572936B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201010612131.7A CN102572936B (zh) 2010-12-29 2010-12-29 一种无线聚合帧的发送处理方法及发送装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010612131.7A CN102572936B (zh) 2010-12-29 2010-12-29 一种无线聚合帧的发送处理方法及发送装置

Publications (2)

Publication Number Publication Date
CN102572936A CN102572936A (zh) 2012-07-11
CN102572936B true CN102572936B (zh) 2014-06-18

Family

ID=46417128

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010612131.7A Active CN102572936B (zh) 2010-12-29 2010-12-29 一种无线聚合帧的发送处理方法及发送装置

Country Status (1)

Country Link
CN (1) CN102572936B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104796490B (zh) * 2015-05-07 2018-10-12 浪潮电子信息产业股份有限公司 一种同步数据消息传输方法
CN109996343B (zh) * 2017-12-29 2022-04-29 华为技术有限公司 无线局域网中多信道混合传输方法和装置
CN115225711A (zh) * 2022-06-01 2022-10-21 裕太微(上海)电子有限公司 一种高效传输的以太网设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1898912A (zh) * 2004-09-10 2007-01-17 三菱电机株式会社 聚合将要在无线网络中的信道上发送的帧的方法和系统
CN101073243A (zh) * 2004-12-14 2007-11-14 松下电器产业株式会社 无线通信装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7760629B2 (en) * 2007-09-04 2010-07-20 Cisco Technology, Inc. Aggregate data frame generation

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1898912A (zh) * 2004-09-10 2007-01-17 三菱电机株式会社 聚合将要在无线网络中的信道上发送的帧的方法和系统
CN101073243A (zh) * 2004-12-14 2007-11-14 松下电器产业株式会社 无线通信装置

Also Published As

Publication number Publication date
CN102572936A (zh) 2012-07-11

Similar Documents

Publication Publication Date Title
JP5521257B2 (ja) 無線通信のためのグループリソース割り当て
CN104244324B (zh) 无线链路传输方法和系统
CN101411134B (zh) 用于高速媒体接入控制的存储器管理
CN1848719B (zh) 分配位图存储器、产生网络实体间应答的方法及其系统
CN102395156B (zh) 应用于pdcp实体和rlc实体间的数据传输方法及装置
EP2183890B1 (en) Aggregate data frame generation
CN104301066A (zh) 数据包传输方法及装置
US9148844B2 (en) Mobile internet access node, system and method for finding partners
CN102572936B (zh) 一种无线聚合帧的发送处理方法及发送装置
CN101657029A (zh) 发送聚合媒体访问控制协议数据单元帧的方法和发送端
CN101160928A (zh) 一种实现IuUP/NBUP协议过程控制功能的方法
CN104303563A (zh) 一种数据传输的方法、基站和无线通信设备
WO2014079308A1 (zh) 一种时隙资源占用处理方法及装置
CN106507493A (zh) 避免上行资源冲突的方法、装置、基站及终端
CN109803277A (zh) 数据包处理的方法和设备
CN109688606B (zh) 数据处理方法、装置、计算机设备及存储介质
CN109996261B (zh) 基于mac层数据包复制的数据传输方法及装置
CN102547847B (zh) 一种无线聚合帧的接收处理方法及接收装置
CN105871747B (zh) 通信系统下行数据传输方法和系统
CN104506279B (zh) 用于lte中rlc am模式下的上下行并行处理方法
CN110445580A (zh) 数据发送方法及装置、存储介质、电子装置
CN103067999B (zh) 包转发方法及装置
CN103814602B (zh) 用于支持基于多网络的数据的同时传输服务的装置和方法
CN109688085B (zh) 传输控制协议代理方法、存储介质及服务器
JP2023517081A (ja) 通信方法および装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP02 Change in the address of a patent holder
CP02 Change in the address of a patent holder

Address after: No. 1, No. 288 building, 610041 floor, Maipu Sichuan province Chengdu Tianfu Avenue, 17 floor

Patentee after: MAIPU COMMUNICATION TECHNOLOGY Co.,Ltd.

Address before: 610041 Sichuan city of Chengdu province high tech Zone nine Hing Road No. 16 building, Maipu

Patentee before: MAIPU COMMUNICATION TECHNOLOGY Co.,Ltd.

CP02 Change in the address of a patent holder
CP02 Change in the address of a patent holder

Address after: 610041 nine Xing Xing Road 16, hi tech Zone, Sichuan, Chengdu

Patentee after: MAIPU COMMUNICATION TECHNOLOGY Co.,Ltd.

Address before: 610041, 17 floor, maple building, 1 building, 288 Tianfu street, Chengdu, Sichuan.

Patentee before: MAIPU COMMUNICATION TECHNOLOGY Co.,Ltd.