一种802.11n块传输机制的实现方法

文档序号:7928661阅读:198来源:国知局
专利名称:一种802.11n块传输机制的实现方法
技术领域
本发明涉及无线局域网领域,作为一种高效快速的块应答机制的实现方法,特别
适用于采用块传输机制的高吞吐率高带宽的无线局域网网卡和接入点芯片的实现中。
背景技术
在带宽不变的前提下提高信道利用率是提高效率的最简洁和最廉价的途径。 802. 11国际标准采用了块传输机制提高信道的利用率。802. 11中普通的帧序列为[数据 帧,应答帧,数据帧,应答帧……],应答帧只应答其前面传输的数据帧。采用块传输机制
的帧序列为[数据帧l,数据帧2......数据帧n,(块应答请求帧),块应答帧],块应答帧
应答其前面序列中的所有数据帧。采用块应答机制的帧序列比普通帧序列发送的应答帧
少,也可以不发块应答请求帧,在传输大量数据时可以大大提高信道的利用率。 采用块传输机制可以提高信道利用率,但是会提高实现的复杂度。接收数据时每
收到一帧数据帧需要记录数据帧的序列号,收完帧序列后在发送的块应答帧中告知对方收
到数据帧的序列号。采用块传输机制发送数据帧时,需要记录发送序列中数据帧的序列号,
与接收的块应答帧中应答的序列号进行对比,从而确定发送成功的帧和未成功的帧。发送
的数据帧都是由驱动下发到硬件的,用驱动维护发送记录是最直接的实现方式,但是驱动
维护发送记录并和接收的块应答帧的应答记录对比,将增加驱动的处理时间,降低发送效
率。接收数据帧也是由硬件接收,再上传给驱动,所以用驱动维护接收记录和组建块应答帧
是最直接的实现方式,但是驱动维护发送记录和组建块应答帧也将增加驱动的处理时间,
降低接收效率。本发明提出了一种支持802. lln块应答机制的高效快速的实现方法,该方
法采用硬件实现对块传输机制的支持,通过快速更新tj3itm即、t—SSN、rj3itm即和r_SSN,
接收帧序列时能快速高效地组BA帧并发送,发送帧序列时能快速地从返回的BA中得到发
送成功的数据帧序号。

发明内容
802. lln国际标准中规定采用块传输机制传输的数据帧都带有TID(传输标识符, 表明帧传输的业务类型和优先级),BAR帧和BA帧也都带有TID。块传输机制中带有相同 TID的数据帧、BAR和BA帧是同一个业务类型,否则属于不同的业务类型。
802. lln国际标准采用块传输机制的目的是提高信道利用率。利用硬件实现块传 输机制,接收端可以快速组建并发送BA,发送端收到BA后可以快速解析出帧序列的发送情 况,从而可以快速重组发送序列。本发明提供了一种快速高效的块传输机制的硬件实现方 法,支持802. lln的块传输。本发明包含两个部分发送帧序列时的块传输机制的实现方法 和接收帧序列时的块传输机制的实现方法。 采用块传输机制发送数据帧时需要维护一套发送帧的记录。该记录维护发送序列 中数据帧的序号SN,硬件实现的方法是维护一个发送位图t_bitmap和位图的起始序号t_ SSN,收到BA后与BA的bitmap和SSN进行对比,得到发送序列的发送情况,具体实现的步骤如下 (1)开始发送聚合帧时复位t_bitmap和t_SSN ; (2)发送队列中第一帧数据帧时,t—SSN赋值为第一帧的SN ;t_bitmap的最低比特置1 ;
(3)每发送聚合帧中的一帧数据帧,对应的t_bitmap比特位赋值为1直到整个聚 合帧发送完毕。 (4)收到BA后从BA的bitm即中截取以t_SSN为起点的bitm即中的高比特,得到 back_bitmap, backJ3itm即与t_bitmap进行对比,得到发送成功的数据帧的序列号。
采用块传输机制接收数据帧时需要维护一套接收帧的记录。该记录维护接收到 的数据帧的序号SN,硬件实现的方法是维护一个接收位图r_bitmap和位图的起始序号r_ SSN,每收到一帧数据帧或BAR后对r—bitm即和r_SSN进行更新,并组BA帧发出。具体实 现的方法如下 (1)收到BAR帧后r_SSN赋值为BAR帧的SSN ;若r_bitmap中有BAR的SSN对应 的比特,则r—bitm即左移(SSN-r_SSN)位,移进的比特全是0,否则复位r—bitm即当BAR的 TID变化时,复位rJ3itm即。 (2)每收到一帧数据帧时,若数据帧的SN小于维护的r—SSN,不更新记录;若r— bitm即中有SN对应的比特,置位r—bitm即中的该比特,r—SSN不更新;否则更新r—bitm即 和r_SSN,使得SN对应r_bitmap的最高位;当数据帧的变化时,r_bitmap全置1, r_SSN赋 值为rJ3itm即的最高位。
(3)组BA帧并发送。


图l是发送数据帧序列时的记录更新和记录比较的示意框图。其中"t—TID t_ SSNt_bitmap"是t_TID、 t_SSN和t_bitmap的存储和更新逻辑。t_TID是存储t_TID的寄 存器,t_SSN是存储t_SSN的寄存器,t—bitm即是存储t—bitm即的寄存器。图1中"BA SSN BAJ3itm即"是接收BA帧的BA_SSN和BA_bitmap的存储逻辑。BA_SSN是存储BA_SSN的寄 存器,BA—bitmap是存储BA_bitmap的寄存器。图1中的信号back_bitmap是以t_SSN为起 点截取BAJoitm即的高比特。图1中"compare logic"是记录比较逻辑,比较backJoitm即 与t_bitmap得到序列中发送成功的数据帧的位图。 图2是接收数据帧序列时的记录更新和发送BA帧的电路框图。其中"r—SSN r_ TID"是r_SSN和r_TID的更新和存储逻辑。"r_bitmap"是rJ3itm即的更新和存储逻辑。 r_SSN是存储r_SSN的寄存器,r_TID是存储r_TID的寄存器,r—bitm即是存储r—bitm即 的寄存器。图2中"compare logic"是比较逻辑,比较接收数据帧(或BAR帧)的MPDU_ SN(BAR为BAR_SSN) 、MPDU_TID (或BAR_TID)与记录的r_SSN和r_TID,从而判断r_bitmap 的更新方式。信号shift表示r_bitmap进行移位,信号reset表示复位r_bitmap,信号 bit_set表示要置位r_bitmap的一个比特。图2中的"generate BA frame"是组建BA帧 的逻辑,在发送起始信号到来时将组好的BA帧发出。
具体实施例方式
下面结合附图具体说明本发明的实施方式
4
采用块传输方式发送数据帧序列时,首先会有帧序列发送起始信号。当有帧序列 发送起始信号触发时t_bitmap复位为全0。当序列的第一帧开始发送时t_bitmap的最低 位置1, t_SSN赋值为该发送帧的SN。当序列中后续帧开始发送时把t_bitmap的对应的比 特置l, tJ!D赋值为发送数据帧的TID,重复该步骤直到整个帧序列发送完毕。若数据帧 不采用块传输方式发送,不更新t_TID、t_bitimp和t_SSN。实现t_TID、t_bitimp和t_SSN 更新和存储的逻辑是图1中的框图"tJ!D t—bitm即t—SSN"内的逻辑。为提高信道的利 用率,序列发送完毕后不发送帧BAR帧, 一直等待接收BA帧。收到BA帧后首先判断BA帧 的BAJ1D是否与维护发送记录的tJ!D相同,若相同说明BA帧是应答前面的帧序列的,则 接收并存储BA帧的BA_SSN和BA—bitm即,否则此处不存储BA帧信息。存储BA帧信息的逻 辑是图1中的框图"BAj3itmap BA—SSN"内的逻辑。以t_SSN为起点截取bitm即中的高比 特,得到发送帧序列的应答位图,即back_bitmap。 back—bitm即与t—bitm即进行对比,只 对比back_bitmap中与t_bitmap非零比特对应的值,即只对比在帧序列中发送的帧的接收 情况,不关心不在本序列发送的帧,这种对比方法能保证正确反映帧序列的接收情况,并且 开销最小,更不会产生误解。对比的方法是back—bitmap与t_bitmap进行按位与操作,按 位与得到的结果是success_bitmap。 back_bitmap与t_bimap的比较逻辑是图1中的框图 "compare logic"内的逻辑,successJ3itm即给出的是发送成功的数据帧的位图。
接收数据帧序列时,每接收一帧数据帧或每收到一帧BAR帧,都要对r_bitmap和 r—SSN进行更新。下面分别对收到一帧数据帧和收到一帧BAR的记录更新情况进行简介。
收到一帧BAR :若BAR的BAR_TID与维护记录的r_TID相同,则r_SSN赋值为BAR_ SSN,rJ3itm即左移(BAR_SSN_r_SSN)位,移进的比特全为0,移出的比特丢掉。若BAR_TID 与维护记录的r_TID不同,则r_SSN赋值为BAR_SSN, r—bitm即复位。
收到一帧数据帧并且数据帧的MPDU_TID与维护记录的r_TID相同若r_bitmap 中有MPDU_SN对应的比特,则置位该比特,不更新r_SSN ;若MPDU_SN < r_SSN,则不更新r_ bitm即和r_SSN ;否则r_bitm即进行左移,左移的结果是MPDU_SN对应r_bitm即的最高位, 移进的比特全为0,移出的比特丢掉,然后再置位rj3itm即的最高位,r—SSN做相应更新。
收到一帧数据帧并且MPDU_TID与维护记录的r_TID不同r_bitimp更新为全1, r_SSN做相应更新,使得接收数据帧的MPDU_SN对应r_bitmap的最高位。
当发送BA的启动信号有效时,开始组建并发送BA帧。 本发明提出了一种802. lln块传输机制的高效快速的实现方法。MAC通过用硬件 维护发送帧序列的发送记录,能及时得到发送成功帧的序号,提高了发送效率。MAC通过用 硬件维护接收帧序列的接收记录,能及时组建和发送块应答帧,提高了发送效率,从而提高 了信道利用率。
权利要求
一种支持802.11n块传输机制的实现方法,其特征在于为接收数据帧序列维护一个接收位图和位图的窗口起始值;也为发送数据帧序列维护一个发送位图和位图的窗口起始值,位图和窗口起始值的更新过程、对比过程和应答过程全部用硬件实现。
2. 如权力要求1所述的一种支持802. lln块传输机制的实现方法,其特征在于用硬件 实现发送帧序列的t—bitm即和t_SSN的维护、更新和对比,实现步骤如下(1) 开始发送聚合帧时复位t—bitm即和t_SSN ;(2) 发送帧序列中的第一帧数据帧时,t—SSN赋值为第一帧的序列号;t—bitm即的最低 比特置1 ;(3) 每发送帧序列中的一帧数据帧,SN对应的t—bitm即比特位置1, t—SSN不变;(4) 收到BA后从BA的bitm即中截取与t—bitm即对应的比特,只对比BA的bitm即中 与t_bitmap非零比特对应的值,对比后得到发送成功帧的位图。
3. 如权力要求1所述的一种支持802. lln块传输机制的实现方法,其特征在于用硬件 实现接收帧序列的r—bitm即和r_SSN的维护和更新、BA帧的组帧和发送,实现步骤如下(1) 收到BAR帧,r_SSN赋值为BAR帧的SSN, tj3itm即相应更新,若rj3itm即中有 BAR的SSN对应的比特,则r_bitmap左移(SSN_r_SSN)位,移进的比特全是0,否则复位r_ bitmap ;当BAR的TID变化时,复位r_bitmap ;(2) 每收到一帧数据帧时,都要对接收的rj3itm即和r—SSN更新,若数据帧的小于维护 的r_SSn,不更新记录;若r_bitmap中有SN对应的比特,置位r_bitmap中的该比特,r—SSN 不更新;否则更新r—bitm即和r_SSN,使得SN对应r—bitm即的最高位;当数据帧的TID变 化时,r_bitmap全置1, r_SSN赋值为r_bitmap的最高位;(3) 组BA帧并发送。
4. 如权力要求1或2所述的一种支持802. lln块传输机制的实现方法,其特征在于数 据帧序列发送完后不发送BAR帧。
5. 如权力要求1或3所述的一种支持802. lln块传输机制的实现方法,其特征在于无 论收到的数据帧是不是属于当前帧序列,都要更新接收的r_bitmap和r—SSN,提高了传输 效率。
6. 如权力要求1或3所述的一种支持802. lln块传输机制的实现方法,其特征在于若 收到的数据帧的传输标志符与维护记录的数据帧的传输标志符不同,则rj3itmap全置1, r—SSN对应r_bitmap的最高位。
全文摘要
本发明提出了一种支持802.11n块传输机制的高效快速的实现方法。支持块传输机制的802.11n MAC为接收数据帧序列维护一个接收位图和位图的窗口起始值;也为发送数据帧序列维护一个发送位图和位图的窗口起始值。位图和窗口起始值的更新过程、对比过程和应答过程全部用硬件实现,实现过程简单快捷,避免了驱动维护发送和接收记录,有效提高了效率,减少时间开销。
文档编号H04W84/12GK101754272SQ20081023949
公开日2010年6月23日 申请日期2008年12月12日 优先权日2008年12月12日
发明者李霞 申请人:北京中电华大电子设计有限责任公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1