[发明专利]一种基于NetFPGA可编程虚拟路由器的数据包加速转发方法及装置有效

专利信息
申请号: 201410113046.4 申请日: 2014-03-25
公开(公告)号: CN103856407A 公开(公告)日: 2014-06-11
发明(设计)人: 张毅;侯海兵;赵国锋;胡书敏;胡健 申请(专利权)人: 重庆邮电大学
主分类号: H04L12/741 分类号: H04L12/741;H04L12/771
代理公司: 重庆华科专利事务所 50123 代理人: 康海燕
地址: 400065 *** 国省代码: 重庆;85
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 netfpga 可编程 虚拟 路由器 数据包 加速 转发 方法 装置
【说明书】:

技术领域

发明涉及可编程路由器技术,具体是数据包加速转发方法即装置。

背景技术

可编程虚拟路由器是下一代网络研究试验床的核心设备,具有可编程,虚拟化特性。其可编程性可以使研究人员很方便的在可编程虚拟路由器上部署新协议、验证新算法、扩展新功能等。在对可编程虚拟路由器的研究中,数据包转发速率的研究是当前研究的一个重点。有专门针对路由查找算法的研究,通过提高查找算法来提升查找速率,加速数据包的处理,如基于Hash的算法、基于Trie的算法、基于比特查找树的算法等,也有针对路由器硬件查找方法的的研究来提高转发速率,如TCAM查找方法,CACHE+SRAM查找方法等。

基于NetFPGA的可编程虚拟路由器采用的是控制和转发相分离的架构:控制平面采用OpenVZ+Quagga技术。其中OpenVZ是一种虚拟化技术,Quagga是一种协议部署软件。整个控制平面是基于linux系统,具体是Centos系统。转发平面采用一块NetFPGA板卡实现数据的转发,该板卡支持可编程功能。

目前,与本发明比较接近的一种数据包快速转发方法是利用缓存机制(CACHE+SRAM)实现,其不足之处在于高速缓存容量有限,且高速缓存中的数据无法急时更新。当高速缓存中的条目达到一定程度后,无法继续向高速缓存中添加条目。当数据包进入数据转发层面需要进行全局路由查时,必须先经过高速缓存查找才能再次进入全局路由查找。当流数据过大时,路由查找延迟增大,且对于同一路由条目的多次重复性查找加重了路由器的负担,使得路由器数据包转发性能下降。

发明内容

针对数据转发过程中的查找延迟及同一路由条目的多次重复性查找而加重路由负担的问题,本发明在原有架构的基础上,提出一种加速数据包转发的路由查找架构,解决数据包查找过程中同一路由条目的多次查找,缩短查找流程,提高系统的转发性能。

本发明的技术方案如下:

    一种基于NetFPGA可编程虚拟路由器的数据包加速转发装置,所述装置在数据转发层面包括常规转发模块和加速转发模块,构成一种并行架构,实现双引擎查找,常规转发模块对应于常规查找线路,加速转发模块对应于加速查找线路,所述装置包含:数据包头部解析模块、索引查找模块、优先权判定模块、IP查找模块、ARP查找模块、加速查找模块、输出选择模块、数据包缓冲队列模块和数据包重新封装模块;其中索引查找模块、优先权判定模块、加速查找模块和输出选择模块构成加速转发模块;索引查找模块、优先权判定模块、IP查找模块、ARP查找模块和输出选择模块构成常规转发模块。

所述数据包头部解析模块,用于提取数据包包头的相关信息,通过该模块为数据包的后续查找提供相应信息;

所述索引查找模块,用于关键字的查找,根据头部解析模块给出的关键字信息进行关键字的查找,为查找关键字匹配一个地址信息,该地址信息为路由表中路由条目的存储地址;索引查找模块由两个TCAM(一种三态内容寻址存储器,采用硬件并行查找结构,查找速度快)构成,其中一个用于加速路由表索引查找(命名为TCAM_A),另一个用于常规路由表索引查找(命名为TCAM_B),两个TCAM并行运行。TCAM中存放的着查找路由条目所需的关键字信息和对应路由条目的地址信息,格式如图3所示。

所述优先权判定模块,用于选择优先权最高的的查找线路进行路由查找,当前一模块有数据输出时,该模块通过判决规则,选择一条优先权最高的线路作为输出,并启动对应的查找线路。对于TCAM_A启动加速查找线路(如图2中下支路),对于TCAM_B启动常规查找线路(如图2中上支路),默认TCAM_A返回值优先权高于TCAM_B返回值优先权。

所述加速查找模块,存储数据转发所需的路由信息;该模块根据接收到的地址信息返回加速路由表中对应地址的路由信息,并对路由条目生存期进行修改。即该模块根据优先权判定模块提供的地址信息,通过内部加速路由表,返回相应地址的路由条目。加速路由表的存储格式如图4中所示,包括下一跳MAC值,输出端口号,生存期。该模块采用定时刷新机制,根据查找频率和刷新频率,对加速路由表中条目的生存期进行修改。该模块还能通过反馈线路添加新的条目信息,且支持用户操作。

所述输出选择模块,该模块配合优先权判定模块,用于选择合适的查找线路上的输出数据作为查找结果的输出,并与加速查找模块逆向通信。如果选择的是常规查找线路作为输出,除了将数据输出到数据包重新封装模块,还要将查找结果通过反馈线路(如图2中虚线箭头所示)发送到加速表查找模块及TCAM_A模块。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于重庆邮电大学,未经重庆邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201410113046.4/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top