[发明专利]一种基于TCAM实现多命中的方法在审
申请号: | 201911106419.4 | 申请日: | 2019-11-13 |
公开(公告)号: | CN110851672A | 公开(公告)日: | 2020-02-28 |
发明(设计)人: | 贾朋朋;刘凤新;陈伟峰;李灵侠 | 申请(专利权)人: | 天津光电通信技术有限公司 |
主分类号: | G06F16/903 | 分类号: | G06F16/903 |
代理公司: | 天津中环专利商标代理有限公司 12105 | 代理人: | 李美英 |
地址: | 300220*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 tcam 实现 命中 方法 | ||
本发明公开了一种基于TCAM实现多命中的方法。该方法控制TCAM的逻辑在基于FPGA的硬件平台上实现,通过利用TCAM中的uda字段,即在TCAM对当前key搜索命中后,会将该key对应规则rule的uda字段与命中结果一并返回,而FPGA内部逻辑在收到TCAM返回的响应结果后会对uda字段进行分析,以决定如何对当前命中的包进行复制。该方法通过利用TCAM中的uda字段,只需对当前包进行一次TCAM查询,无需将包缓存后查询多次,从而加快了搜索速度,提高了搜索性能。本发明提出的方法在数据匹配搜索技术领域有广泛的应用价值。
技术领域
本发明涉及数据包搜索匹配技术领域,尤其涉及一种基于TCAM实现多命中的方法,用于实现基于TCAM进行搜索匹配时数据包的多命中问题。
背景技术
在数据包搜索匹配技术领域,由于TCAM具有规则存储条数多、搜索匹配速度快的优点而被广泛采用。例如,博通公司生产的TCAM芯片NLA12000可存储按160b计算的规则达52万条,且搜索匹配速度达20亿次每秒。在利用TCAM实现数据搜索匹配的方案中,一个技术难点就是多命中问题,即当前的数据包可能命中TCAM数据库database中的多条规则。但由于TCAM的优先级匹配特性,即在数据包命中优先级最高亦即存储在数据库中地址低的规则后,后面的规则即便也会命中当前包,TCAM也不会再去进行搜索匹配。所以,在使用TCAM作为数据搜索匹配方案时,如何解决多命中问题便显得尤其重要。在论文“Algorithms forAdvanced Packet Classification with Ternary CAMs”中提到如何利用TCAM实现数据搜索的多命中,其思想是,将数据包进行缓存,然后从数据包中提取key后发送到TCAM进行搜索匹配,比如匹配到地址为m的规则,接下来将地址为m的规则禁掉,将先前的key再次发送到TCAM进行搜索匹配,由于地址为m的规则已经禁掉,所以TCAM不会再命中地址m的规则,而是继续向后查找,比如又匹配到地址为n的规则,这样的过程一直反复到在将key送到TCAM后,TCAM返回未命中的结果而结束。在多次查询结束后,最后的动作是要将TCAM中先前禁掉的规则重新使能,以便不对接下来的包搜索产生影响。上述论文通过反复查询多次并配合禁掉已经命中的规则的方法,从而实现了基于TCAM的多命中。但从该论文实现的方法中可以看到,此方法需要搜索匹配多次,从而降低了搜索性能,即单位时间搜索匹配包的数量变少。所以,一种好的基于TCAM实现多命中的方法在数据搜索匹配技术领域起到了至关重要的作用。
发明内容
本发明的目的就是要解决上述技术中存在的问题,提供一种基于TCAM实现的查找速度快、搜索性能高的多命中方案,即一种基于TCAM实现多命中的方法。
本发明采取的技术方案是:一种基于TCAM实现多命中的方法,该方法控制TCAM的逻辑在基于FPGA的硬件平台上实现,其特征在于,步骤如下:
1)、收到的数据包pkg分别送到key_extract模块与pkg_filter模块,其中,key_extract模块负责从数据包中提取待搜索的key,通常该key为数据包中的IP五元组;pkg_filter模块会将收到的数据包进行缓存,因为此时还未对当前包进行搜索,并不知道如何对当前包进行处理,即是否舍弃;
2)、key_extract模块将从数据包中提取的key送至TCAM,TCAM会将此key与在数据库database中事先存储的规则rule进行对比,如果key值与rule值相等,则表明当前待搜索的数据包中有关心的信息存在,从而TCAM返回命中的结果;
TCAM中的uda字段,是用户可自定义的字段,与每一条规则一一对应,即当TCAM返回命中结果的同时,会将事先定义好的uda字段一并返回,其核心就在于此,通过利用TCAM中用户可自定义的uda字段,来告知FPGA内部逻辑在当前包命中后该如何去做;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天津光电通信技术有限公司,未经天津光电通信技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911106419.4/2.html,转载请声明来源钻瓜专利网。