Capwap分片重组的芯片实现方法

文档序号:9491769阅读:767来源:国知局
Capwap分片重组的芯片实现方法
【技术领域】
[0001]本发明涉及一种分片重组技术,尤其是涉及一种CAPWAP分片重组的芯片实现方法。
【背景技术】
[0002]在“AC(无线控制器)_瘦AP(无线接入点)”的无线架构下,AC和AP间通过 CAPWAP(Control And Provis1ning of Wireless Access Points ProtocolSpecificat1n,无线接入点的控制和配置协议)协议进行通信。无线数据帧,原样或经过格式转换后被封入CAPWAP隧道中送往AC,在此过程中很可能产生CAPWAP分片报文,AC端需要对这些CAPWAP分片报文进行重组。
[0003]现有AC端的协议栈一般使用软件方案进行CAPWAP分片的重组,即分片报文要上CPU处理,这种方案存在的问题为:CPU处理分片效率比较低下,无法适应线速环境。

【发明内容】

[0004]本发明的目的在于克服现有技术的缺陷,提供一种CAPWAP分片重组的芯片实现方法,以实现在交换路由芯片中实现CAPWAP分片的硬件重组。
[0005]为实现上述目的,本发明提出如下技术方案:一种CAPWAP分片重组的芯片实现方法,所述芯片内包括入方向处理引擎、存储转发模块、出方向处理引擎和无线引擎,所述存储转发模块内包括预重组处理单元,所述芯片实现方法包括:
[0006]所述入方向处理引擎将进入芯片的CAPWAP分片报文的首、尾分片进行CAPWAP隧道查找,得到两者各自对应的CAPWAP隧道属性,并标记是分片报文的首尾分片后送给存储转发模块;
[0007]所述存储转发模块的预重组处理单元按所述标记缓存首分片的净荷,并在其缓存表项的对应条目中记录CAPWAP分片号;
[0008]所述存储转发模块的预重组处理单元检查按尾分片的CAPWAP隧道属性是否能查找到对应的首分片,若查找到,且无异常发生,则弹出所述首分片,并将尾分片的净荷和首分片的净荷背靠背送给出方向处理引擎;
[0009]所述出方向处理引擎标记首、尾两片报文为需重组的报文,并直接将首、尾分片送给无线引擎;
[0010]所述无线引擎去掉首分片的CRC校验码,并将首、尾两片报文拼为一个报文环回送给入方向处理引擎进行查表转发。
[0011 ] 优选地,所述CAPWAP隧道属性包括二三层转发域和隧道ID。
[0012]优选地,在所述预重组处理单元中设置所述缓存表项,所述缓存表项以所述隧道ID为索引,且每个隧道ID下设置至少一个条目,每个条目具有对应的缓冲区。
[0013]优选地,所述预重组处理单元缓存首分片时,先检查当前缓存表项中是否有条目为空,若有,则按照首分片CAPWAP隧道属性中的隧道ID,将首分片存入条目对应的缓冲区。
[0014]优选地,所述芯片自动保存存包的时戳,在所述预重组处理单元检查到首分片隧道ID下的条目全满时,则自动清空缓存表项中时戳最老的条目,并将首分片缓存至对应条目。
[0015]优选地,所述预重组处理单元按尾分片的隧道ID查找首分片。
[0016]优选地,所述预重组处理单元按尾分片的隧道ID查找首分片的过程包括:所述预重组处理单元收到尾分片后,按尾分片的隧道ID在缓存表项中索引出对应的条目,对比条目中首分片的CAPWAP分片号和尾分片的CAPWAP分片号是否相等,若相等,则弹出所述首分片,并清空所述首分片对应的条目。
[0017]优选地,所述预重组处理单元若查找到首分片,但有异常发生时,则丢弃所述首、尾分片,同时将首、尾分片上送给CPU。
[0018]优选地,所述预重组处理单元未查找到首分片,则丢弃所述尾分片,同时将首、尾分片上送给CPU。
[0019]优选地,所述出方向处理引擎将需重组的两片报文通过重组通道送给无线引擎。
[0020]与现有技术相比,本发明的有益效果是:本发明使得AC设备可以基于硬件高速高效地重组CAPWAP分片报文,并直接使用硬件对重组后的CAPWAP报文进行CAPWAP解封装操作,无需CPU介入,提高了 CAPWAP分片报文重组效率,适应了线速要求,且降低了重组成本。
【附图说明】
[0021]图1是本发明交换路由芯片的内部原理示意图;
[0022]图2是本发明交换路由芯片重组CAPWAP分片的流程示意图;
[0023]图3是本发明CAPWAP分片重组的芯片实现方法的流程示意图。
【具体实施方式】
[0024]下面将结合本发明的附图,对本发明实施例的技术方案进行清楚、完整的描述。
[0025]本发明揭示了一种CAPWAP分片重组的芯片实现方法,在交换路由芯片中实现CAPWAP分片的硬件重组。其中,如图1所示,交换路由芯片内包括入方向处理引擎(IPE)、存储转发模块(BSR)、出方向处理引擎(EPE)和无线引擎(WLAN Engine),存储转发模块内具有预重组处理单元。
[0026]结合图1?图3所示,CAPWAP分片报文的首、尾分片进入芯片的入方向处理引擎,在入方向处理引擎内进行CAPWAP隧道查找,得到首、尾分片各自对应的CAPWAP隧道属性,并标记上是CAPWAP分片报文的首尾分片,然后送给存储转发模块的预重组处理单元。CAPWAP隧道属性为如二三层转发域、隧道ID等。
[0027]预重组处理单元中设置有用于存包的缓存表项,本实施例中,缓存表项以隧道ID为索引,每个隧道ID对应一个条目块(block),每个条目块具有一个或多个条目,即每个隧道ID下具有一个或多个条目(如4个条目),每个条目又具有对应的用于存包的缓冲区(buffer)。
[0028]预重组处理单元接收到从入方向处理引擎送过来的首分片后,首先检查缓存表项中的条目是否有空条目,若有,则优先占用空条目,按首分片的标记缓存首分片的净荷到空条目对应的缓冲区,并在缓存表项的对应条目中记录CAPWAP分片号(CAPWAP FragmentID)。本实施例中这里的缓
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1