[发明专利]一种用于防火墙的基于FPGA的数据转发方法有效
申请号: | 202010269948.2 | 申请日: | 2020-04-08 |
公开(公告)号: | CN113497798B | 公开(公告)日: | 2023-01-06 |
发明(设计)人: | 高福亮 | 申请(专利权)人: | 北京中科网威信息技术有限公司 |
主分类号: | H04L9/40 | 分类号: | H04L9/40;H04L67/01 |
代理公司: | 北京路浩知识产权代理有限公司 11002 | 代理人: | 白淑君 |
地址: | 100094 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 用于 防火墙 基于 fpga 数据 转发 方法 | ||
1.一种用于防火墙的基于FPGA的数据转发方法,其特征在于,包括:
FPGA通过外部接口接收待转发数据包,并根据所述待转发数据包中包含的传输特征信息得到流量地址;
将所述流量地址在预存的流量地址表中进行查询,并根据查询结果决定是否将所述待转发数据包经网卡的内部接口上送给内部接口软件;其中,所述流量地址表包括:各流量地址和分别对应的转发地址信息;所述网卡与所述FPGA通过对应的内部接口连接,且各外部接口与各内部接口一一对应;
若根据查询结果决定不将所述待转发数据包经所述网卡的内部接口上送给所述内部接口软件,则所述FPGA根据与所述流量地址对应的转发地址信息,将所述待转发数据包由与所述转发地址信息对应的外部接口直接转发。
2.根据权利要求1所述的用于防火墙的基于FPGA的数据转发方法,其特征在于,所述根据查询结果决定是否将所述待转发数据包经网卡的内部接口上送给内部接口软件,具体包括:
若在所述流量地址表中未查询到所述流量地址,则所述FPGA将所述待转发数据包由所述外部接口上送到所述网卡的内部接口发送给所述内部接口软件的流表配置模块,由所述流表配置模块执行预设的转发流程;
所述流表配置模块将新建与所述待转发数据包对应的会话,并向所述FPGA发送流表添加报文;其中,所述流表添加报文包括:所述待转发数据包的流量地址和对应的转发地址信息;
所述FPGA根据接收到的所述流表添加报文,更新所述流量地址表。
3.根据权利要求2所述的用于防火墙的基于FPGA的数据转发方法,其特征在于,所述用于防火墙的基于FPGA的数据转发方法,还包括:
根据预设的保活门限值,对于所述流量地址表中的每条流量地址,若所述FPGA在当前的保活门限值的时间范围内接收到的与所述流量地址对应的待转发数据包,则定期向所述内部接口软件的应答解析模块发送与所述流量地址对应的保活应答报文;
所述应答解析模块根据所述保活应答报文中的流量地址找到对应的会话,重置与所述流量地址对应的会话的保活计时器;
若所述会话的保活计时器超时,则清除所述会话,同时向所述FPGA发送流表删除报文,用于将与所述会话对应的流表地址从所述流量地址表中删除。
4.根据权利要求3所述的用于防火墙的基于FPGA的数据转发方法,其特征在于,所述用于防火墙的基于FPGA的数据转发方法,还包括:
若开启所述FPGA的转发功能,则由所述内部接口软件的开关模块创建与所述FPGA所在槽位对应的FPGA标志位文件,同时设置所述槽位各内部接口的FPGA开关标志位开启;其中,所述FPGA标志位文件包括:与所述FPGA所在槽位对应的用于表征开启的FPGA开关标志位;
若关闭所述FPGA的转发功能,则由所述开关模块删除所述FPGA对应的FPGA标志位文件,并设置所述槽位各内部接口的FPGA开关标志位关闭。
5.根据权利要求4所述的用于防火墙的基于FPGA的数据转发方法,其特征在于,所述用于防火墙的基于FPGA的数据转发方法,还包括:
在开启系统过程中由接口注册模块根据保存的所述FPGA标志位文件为所述FPGA连接的各网卡执行预设的接口注册流程并设置各内部接口对应的用于表征开启的FPGA开关标志位。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京中科网威信息技术有限公司,未经北京中科网威信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010269948.2/1.html,转载请声明来源钻瓜专利网。
- 上一篇:工单搜索方法、装置及计算设备
- 下一篇:测试连接器组件及与之对接的电连接器