基于FPGA的高效无线转发装置及方法制造方法及图纸

技术编号:17307465 阅读:41 留言:0更新日期:2018-02-19 04:29
本发明专利技术涉及一种基于FPGA的高效无线转发装置及方法,转发装置包括:协议栈,用于实现IP分组的网络层以上的协议处理;路由模块,用于运行移动自组织网络路由协议,获取到移动自组织网络每个节点的目的地路由;FPGA转发及编解码模块,用于接收待转发的数据帧,进行编解码后,送调制解调模块、射频处理模块,最终通过无线信道转发给其他无线节点;FPGA转发及编解码模块内含FPGA转发表。本发明专利技术通过将路由和帧的转发关系直接写入FPGA转发表来实现FPGA层面的快速转发,而不再需要分组经过高层协议栈查表处理,大大提高了分组转发效率,从软件转发切换为硬件转发,降低了分组转发处理时延。

High efficiency wireless forwarding device and method based on FPGA

【技术实现步骤摘要】
基于FPGA的高效无线转发装置及方法
本专利技术涉及分组转发技术,具体涉及一种基于FPGA的高效无线转发装置及方法。
技术介绍
在移动自组织无线网络中,每个节点既是接收者又是转发者。当接收器收到一个分组时,它将经过接收信道解码,最后送入基带,在基带再进行解帧处理,以后送往协议栈的高层交给路由模块,路由模块进行路由表的查找以后再决定该分组的下一跳应该发送给谁,然后这个分组将会被附加上下一跳的链路层地址,再送给发送模块,发送模块进行编码进行调制,最后再发送出去。这个接收,解帧,查路由,再封帧,再转发的过程花费很多的时间,导致分组在每一跳处理的时间较长。现有的移动自组织网络节点一般都只有一个无线网络接口,它在收到一个分组以后,将进行解调进行解码,再重新组帧以后,根据帧的目的地址判断这个分组是否是送往本地的,如果是的,则送往高层。如果不是,则送给路由协议模块进行选路,以确定下一条的链路层地址。尽管现在大多数无线接收板卡,在内部基带处理模块都配有FPGA模块,但是其功能主要用于编解码,没有分组转发功能。这个过程涉及多次的分组拷贝以及查表然后转发等功能需要消耗较长时间。在有线网络中,高速的数据转发大多都已被硬件实现,可以采用网络处理器(NetworkControlProcessor)等高级处理芯片,分组转发所需的转发表都写入高速网络处理器中,网络处理器可以直接对数据进行解帧查路由转发的功能,速度很快,效率很高。传统的接收、解码、组帧、查表、再组帧、再编码、发送的流程需要处理的流程长,分组的拷贝次数多,整个分组从接收到发送的耗时长,一般需要近1ms的处理时间,具体时间取决于处理器速度及帧长度,编解码复杂度等。加上无线传输的时间和在空间传播信号的时间,从而导致端到端分组传输时延较长。专利技术专利CN201210282888.3公开了一种无线接入点的控制和配置报文快速转发系统,包括:以太网交换芯片;广域网(WAN)端口;现场可编程门阵列(FPGA)单元,用于从以太网交换芯片或WAN端口接收报文,并从哈希表中查找与报文的五元组相应的表项,如果未查找到相应的表项,则将报文发送到处理器单元,随后从处理器单元接收封装的报文并发送到以太网交换芯片单元或WAN端口,并在哈希表中建立与封装的报文的五元组相应的新的表项,如果查找到相应的表项,则根据查找到的表项对报文进行封装,并将封装的报文发送到以太网交换芯片单元或WAN端口;处理器单元,用于对FPGA单元发送的报文进行封装,并将封装的报文发送到FPGA单元。该专利申请查表放在哈希表中,并且进行的是常规分组转发交换,并不是用于移动无线自组织网的节点分组转发交换。专利技术专利CN201610255096.5公开了一种基于ARM+FPGA架构的列车以太网交换机,但是没有考虑无线相同端口快速接收,更换MAC头,快速转发的需求。
技术实现思路
本专利技术的目的在于提供一种基于FPGA的高效无线转发装置及方法。实现本专利技术目的的技术方案为:一种基于FPGA的高效无线转发装置,包括:协议栈,用于实现IP分组的网络层以上的协议处理;路由模块,用于运行移动自组织网络路由协议,获取到移动自组织网络每个节点的目的地路由;FPGA转发及编解码模块,用于接收待转发的数据帧,进行编解码后,送调制解调模块、射频处理模块,最终通过无线信道转发给其他无线节点;FPGA转发及编解码模块内含FPGA转发表。一种高效无线转发方法,包括以下步骤:步骤1,当FPGA转发及编解码模块收到一个目的地为本节点的链路层分组,首先检查FPGA转发表,FPGA转发表如表1所示;当转发表所有表项后5项内容均为空,或者在表项里找不到与第2-5项匹配的表项时,FPGA将分组解帧后,在转发表里记录本分组的输入链路层地址、输出链路层地址,并分配一个本地ID号,附加在解帧的分组头部,送交协议栈处理;表1FPGA转发表步骤2,路由模块采用第三层路由策略,路由模块确定到某个目的节点的下一跳转发节点,其地址均为第三层网络地址,分组转发时,需确定第三层网络地址所对应的第二层链路层地址;此时路由模块发出地址映射查询消息,以获得下一跳转发节点对应的链路层地址;步骤3,待转发分组源链路层地址为本节点地址,目的链路层地址为下一跳转发节点链路层地址,交给FPGA模块进行编解码发送;步骤4,路由模块通过与邻居节点交互路由信息获取到目的地路由,一个带本地ID的分组找到下一跳转发节点,并获得需要发送的下一跳节点的链路层地址;协议栈将该分组送往FPGA发送的同时,将该转发信息写入FPGA转发表;写入信息携带该分组ID号,根据ID号找到对应的表项,填写后5项如表2所示:表2填写后五项的FPGA转发表后续FPGA收到从无线信道发来的分组时,首先检查FPGA转发表后5项是否为空,如果为空则解帧后送往路由模块处理,如果不为空,则将入口分组的帧头部字节分别于转发表对应字段比对;如果链路层源地址、网络层源地址、目的地址和TOS完全匹配,且链路层目的地是本节点,则直接将链路层分组源地址替换为本节点地址,目的节点地址替换为表2中对应的出口链路层地址,直接送发送单元,不再送交协议层处理;每个转发表表项的后5项如果设定时间未被使用,或者新的分组来后没有空间了,则老的转发表项被新的分组转发表项覆盖;如果路由表发生变化,包括增加/删除/修改路由,则修改对应的FPGA转发表项。与现有技术相比,本专利技术具有如下有益效果:本专利技术提出了一种适用于无线网络的基于FPGA的快速转发装置及方法,通过将路由和帧的转发关系直接写入FPGA转发表来实现FPGA层面的快速转发,而不再需要分组经过高层协议栈查表处理,大大提高了分组转发效率,从软件转发切换为硬件转发,降低了分组转发处理时延。附图说明图1为本专利技术基于FPGA的高效无线转发装置示意图。图2为本专利技术实施例转发关系示意图。具体实施方式结合图1,一种基于FPGA的高效无线转发装置,如图1所示,包括:协议栈,用于实现IP分组的各层处理;路由模块,用于运行移动自组织网络路由协议,获取到移动自组织网络每个节点的目的地路由;FPGA转发及编解码模块,用于接收待转发的数据帧,进行编解码后,送其他调制解调模块,射频处理模块,最终通过无线信道转发给其他无线节点。该模块内含FPGA转发表。可选的,转发装置还包括地址解析模块,用于解析下一跳IP分组对应的链路层地址。如果是采用第二层路由协议(路由协议以链路层地址作为目的地),则该模块可省略。无线转发方法包括以下步骤:P100正常或初始分组送协议栈处理消息。当FPGA刚收到一个目的地为本节点的链路层分组时,它将首先检查FPGA转发表。当转发表所有表项后几项内容都为空,或者在表项里找不到与第2-5项匹配的表项时,FPGA将分组解帧后,在转发表里记录本分组的输入链路层地址、输出链路层地址,并分配一个本地ID号,附加在解帧的分组头部,送交协议栈处理。此时填写FPGA转发表如表1所示:表1FPGA转发表P101地址映射查询消息。当S102模块采用第三层路由策略时,S102确定到某个目的节点的下一跳转发节点,其地址都是第三层网络地址,分组转发时,需要确定第三层网络地址所对应的第二层链路层地址。此时需要S102发出地址映射查询消息(流程请参见地址解析协议ARP本文档来自技高网
...
基于FPGA的高效无线转发装置及方法

【技术保护点】
一种基于FPGA的高效无线转发装置,其特征在于,包括:协议栈,用于实现IP分组的网络层以上的协议处理;路由模块,用于运行移动自组织网络路由协议,获取到移动自组织网络每个节点的目的地路由;FPGA转发及编解码模块,用于接收待转发的数据帧,进行编解码后,送调制解调模块、射频处理模块,最终通过无线信道转发给其他无线节点;FPGA转发及编解码模块内含FPGA转发表。

【技术特征摘要】
1.一种基于FPGA的高效无线转发装置,其特征在于,包括:协议栈,用于实现IP分组的网络层以上的协议处理;路由模块,用于运行移动自组织网络路由协议,获取到移动自组织网络每个节点的目的地路由;FPGA转发及编解码模块,用于接收待转发的数据帧,进行编解码后,送调制解调模块、射频处理模块,最终通过无线信道转发给其他无线节点;FPGA转发及编解码模块内含FPGA转发表。2.根据权利要求1所述的基于FPGA的高效无线转发装置,其特征在于,无线转发装置还包括地址解析模块,用于解析下一跳IP分组对应的链路层地址。3.一种基于权利要求1所述高效无线转发装置的无线转发方法,其特征在于,包括以下步骤:步骤1,当FPGA转发及编解码模块收到一个目的地为本节点的链路层分组,首先检查FPGA转发表,FPGA转发表如表1所示;当转发表所有表项后5项内容均为空,或者在表项里找不到与第2-5项匹配的表项时,FPGA将分组解帧后,在转发表里记录本分组的输入链路层地址、输出链路层地址,并分配一个本地ID号,附加在解帧的分组头部,送交协议栈处理;表1FPGA转发表步骤2,路由模块采用第三层路由策略,路由模块确定到某个目的节点的下一跳转发节点,其地址均为第三层网络地址,分组转发时,确定第三层网络地址所对应的第...

【专利技术属性】
技术研发人员:王海牛大伟于卫波董超张进郭晓张杰李艾静米志超
申请(专利权)人:中国人民解放军理工大学
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1