[发明专利]基于TCAM的查表处理方法及装置有效
申请号: | 201310244525.5 | 申请日: | 2013-06-19 |
公开(公告)号: | CN104239337B | 公开(公告)日: | 2019-03-26 |
发明(设计)人: | 顾霞;张启申 | 申请(专利权)人: | 中兴通讯股份有限公司 |
主分类号: | G06F16/903 | 分类号: | G06F16/903 |
代理公司: | 北京康信知识产权代理有限责任公司 11240 | 代理人: | 余刚;梁丽超 |
地址: | 518057 广*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 tcam 处理 方法 装置 | ||
本发明提供了一种基于TCAM的查表处理方法及装置,其中,上述方法包括:执行用于查询TCAM表项的第一查询过程;在执行所述第一查询过程中,执行用于查询除所述TCAM表项之外的其它表项的第二查询过程,其中,所述第一查询过程和所述第二查询过程是独立运行的;通过所述第一查询过程和所述第二查询过程分别获取第一查询结果和第二查询结果。采用本发明提供的上述技术方案,解决了相关技术中,基于TCAM的查表方式导致的报文处理时间较长,进而影响到报文的转发性能等技术问题,进而减少了报文处理的时间,从而提高了报文的转发性能。
技术领域
本发明涉及通信领域,尤其是涉及一种基于TCAM的查表处理方法及装置。
背景技术
基于三态内容寻址存储器(Ternary Content Addressable Memory,简称为TCAM)的查表方式,方便快捷,支持长键值和掩码的查表类型。在需要支持大量访问控制列表(Access Control List,简称为ACL)或者大量路由的时候,一般交换机的设备商都会选择TCAM来实现ACL或者路由的查表。
目前TCAM芯片的查表架构是确定的,TCAM查表返回的结果只能是条目索引号,而不能得到最终的结果。一个表项如果要通过TCAM来实现,需要设计成:组装好的键值去查TCAM,TCAM返回条目索引号,然后再使用这个条目索引号查一张直接表,得到最终查表结果。也就是表项设计成TCAM查表类型,就必须要查一张TCAM表和一张直接表。
开发者使用TCAM查表,都是先将控制字和键值发送给TCAM,然后等待TCAM查表结束将结果(result)返回。最后再用返回的result中的索引(index)查直接表,得到想要的结果。TCAM查表的过程中,因为芯片中查表结果存放的寄存器是唯一的,因此不能再去查其他的表项,只能空等待。如图1所示,相关技术中的TCAM查表方案包括如下步骤:
步骤S102:准备TCAM的查表键值,准备完之后执行步骤S104;
步骤S104:使用准备好的查表键值查TCAM表,然后执行步骤S106;
步骤S106:判断TCAM查表是否已经返回结果(result),如果已经返回,执行步骤S108;如果没有返回,继续执行步骤S106,也就是一个等待的过程;
步骤S108:使用返回的result中的index查直接表;
步骤S110:得到想要的查表结果,结束。
从上面的查表步骤中可以看到:步骤S106花费的时间就是一次TCAM查表的时间,在这段时间内,因为交换机中查表结果存放的寄存器是固定的,因此不能再去查其他的表项,只能空等待。
因此,TCAM查表会消耗大量的查表性能,在业务转发流程复杂的情况下,会导致业务达不到转发要求。使用TCAM作为表项存储的业务,虽然TCAM查表简单快捷,但是转发性能是一大难点。
针对相关技术中的上述问题,目前尚未提出有效的解决方案。
发明内容
针对相关技术中,基于TCAM的查表方式导致的报文处理时间较长,进而影响到报文的转发性能等技术问题,本发明提供了一种基于TCAM的查表处理及装置,以至少解决上述问题。
根据本发明的一个方面,提供了一种基于TCAM的查表处理方法,包括:执行用于查询TCAM表项的第一查询过程;在执行所述第一查询过程中,执行用于查询除所述TCAM表项之外的其它表项的第二查询过程,其中,所述第一查询过程和所述第二查询过程是独立运行的;通过所述第一查询过程和所述第二查询过程分别获取第一查询结果和第二查询结果。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中兴通讯股份有限公司,未经中兴通讯股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310244525.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种公路汽油动力钻孔机
- 下一篇:一种井下微波辅助破岩的钻具