[发明专利]一种FPGA高效规则匹配方法及终端有效
申请号: | 201911249261.6 | 申请日: | 2019-12-09 |
公开(公告)号: | CN111107068B | 公开(公告)日: | 2021-03-09 |
发明(设计)人: | 肖相生;高渊;李占才;刘杨;赵丰 | 申请(专利权)人: | 江苏云涌电子科技股份有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 225300 江*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 fpga 高效 规则 匹配 方法 终端 | ||
1.一种FPGA高效规则匹配方法,其特征在于,包括以下步骤:
步骤1、解析报文
报文解析器解析来自以太网的报文,提取所述报文中的源MAC地址、目的MAC地址、源IP地址、目的IP地址、源端口号、目的端口号作为待匹配项信息,并把所述待匹配项信息输出给待匹配项缓存队列,把所述报文输出给报文缓存队列;
步骤2、输出用于哈希运算的关键字串和匹配项:
所述待匹配项缓存队列将关键字串输出给第一哈希运算器,用于哈希运算,并把所述待匹配项信息输出给匹配对比器;所述关键字串是所述待匹配项信息的一项匹配信息或多项匹配项信息的组合;
步骤3、第一次哈希运算:
所述第一哈希运算器对所述关键字串进行哈希运算,哈希结果作为地址输出给匹配项索引读取器;
步骤4、第一次读取匹配项索引RAM
所述匹配项索引读取器用所述步骤3的地址读取匹配项索引RAM,如果读出的数值ID为1,
则:关键字串′= 关键字串 +非0字符串;
否则:关键字串′= 关键字串 + 0;
并将所述关键字串′输出给第二哈希运算器;
步骤5、第二次哈希运算
所述第二哈希运算器对所述关键字串′进行哈希运算,哈希结果作为地址输出给所述匹配项索引读取器;
步骤6、第二次读取匹配项索引RAM
所述匹配项索引读取器用所述步骤5的地址读取匹配项索引RAM,获得匹配规则的读取地址,并输出给匹配项RAM;
步骤7、获取匹配项并发送给匹配项对比器
所述匹配项RAM通过所述步骤6的读取地址作为索引值读取所述匹配项RAM并获得匹配项,并将所述匹配项发送给所述匹配项对比器;
步骤8、对匹配项数据进行比较判断
所述匹配项对比器将所述步骤7发来的匹配项与所述步骤2待匹配项缓存队列发来的匹配项进行比较判断,并输出结果给所述报文缓存队列,所述结果为输出报文或丢弃报文;
步骤9、过滤输出
所述报文缓存队列根据所述步骤8的输出结果对报文进行操作,如果所述结果为丢弃报文,则所述报文缓存队列将所述报文丢弃;如果所述结果为输出报文,则所述报文缓存队列将所述报文输出。
2.根据权利要求1所述的FPGA高效规则匹配方法,其特征在于:所述匹配项索引RAM和匹配项RAM的数据是通过配置生成软件进行配置。
3.根据权利要求1所述的FPGA高效规则匹配方法,其特征在于,还包括步骤81:统计匹配对比器数据信息,具体方法是:统计器对所述匹配对比器的数据信息进行统计,以备上位机读取。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于江苏云涌电子科技股份有限公司,未经江苏云涌电子科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911249261.6/1.html,转载请声明来源钻瓜专利网。