[发明专利]一种基于SRAM的最长前缀匹配硬件系统查找的方法在审
申请号: | 202110423364.0 | 申请日: | 2021-04-20 |
公开(公告)号: | CN112818185A | 公开(公告)日: | 2021-05-18 |
发明(设计)人: | 项禹;卢笙;陈盈安;江悦 | 申请(专利权)人: | 芯启源(南京)半导体科技有限公司 |
主分类号: | G06F16/901 | 分类号: | G06F16/901;G06F16/903;G06F30/32 |
代理公司: | 南京新慧恒诚知识产权代理有限公司 32424 | 代理人: | 蒋玮 |
地址: | 210046 江苏省南京市南*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 sram 最长 前缀 匹配 硬件 系统 查找 方法 | ||
本发明公开了一种基于SRAM的最长前缀匹配硬件系统查找的方法,涉及网络通讯技术领域,所述硬件包括储存模块,所述系统包括基于HASH的搜索算法模块、支持不同长度的第一比较模块和输出比较模块,所述方法包括以下步骤:S100:搜索key经过搜索算法模块得到输出值;S200:输出值经过支持不同长度的第一比较模块输出优先级;S300:经过输出比较模块压缩处理输出最终信息结果,相对于现有技术,本发明中的在HASH模块中设计多种逻辑电路用以生成HASH值,减少HASH模块的计算量,提高运算速度,在比较模块设计了不同位宽的比较逻辑电路,节省了宝贵的存储单元,位宽选择更有灵活性。
技术领域
本发明涉及网络通讯技术领域,尤其涉及到一种基于SRAM的最长前缀匹配硬件系统查找的方法。
背景技术
路由器转发IP分组时,转发引擎需要在路由表中查找该IP报文中目的地址所对应的路由信息,从而决定IP报文的转发方式。在报文转发的这一系列工作过程中,以路由查找过程最为关键,因此设计快速的路由查找算法已经成为提高路由器整体性能的关键之一,随着路由器接口速率的提高,传统的基于软件的查找机制已经不能满足当下的需求,因此,基于硬件的三态内容寻址存储单元(TCAM)高速路由查找得到广泛的应用。TCAM 是一类特殊的存储单元,传统的存储单元都是根据地址读出内容,例如静态存储单元(SRAM)和动态存储单元(DRAM),但是TCAM是根据存储的内容得到对应的地址,输入一个数据(查找内容或者查找key),TCAM内部把这个key和它所存储的条目作并行比较,然后把匹配的地址输出,如果有多个条目都与这个查找key匹配,那么输出最小的地址。
基于互联网协议(Internet Protocol,IP)地址为例,需要存储和匹配的是同一概念可以适用于任何其他长度和类型的网络地址,如32比特长的第四版IP(InternetProtocol version4, IPv4)地址,64比特长的媒体接入层(Media Access Control,MAC)地址或128比特长的IPv6地址。
最长前缀匹配机制是目前行业内几乎所有路由器都会采用的一种路由查询机制,当路由器受到一个IP数据包时,它会将数据包的目的IP地址与自己本地路由表中的所有路由表项进行逐位(Bit-By-Bit)比对,因为路由表中的每个表项都指定了一个网络,所以一个目的地址可能与多个表项匹配。最明确的一个表项,即子网掩码最长的一个,就叫作最长前缀匹配,这个表项与目的地址的高位匹配最多。
TCAM是在CAM的基础上发展而来的。一般CAM存储单元中每个bit位的状态只有两个,“0”或“1”。而TCAM中每个bit位有三种状态,除了“0”和“1”,还有一种“don’t care”状态,所以称为三态。TCAM的三态是由一个数据位(data)和一个掩码位(mask)来实现的,正是由于这个第三种状态,使得TCAM既能进行精确匹配查找,又能进行模糊查找。这使得TCAM在快速查找ACL、路由查表的最长前缀匹配和模糊查找中发挥极大用处。
传统的基于SRAM的查找方法有线性查找、二叉树查找、HASH表查找等,这些查找方法的共同特点都是查找速度慢,线性查找法需要遍历表中的所有表项;二叉树查找法需要遍历树种中大多数节点,而且查找速度受树的深度影响较大;哈希表查找法是软件查找中较快的一种,它根据设定的哈希函数H(key)和处理冲突方法将一组关键字映像到一个有限的地址区间上,并以关键字在地址区间中的象作为记录在表中的存储位置,这种表称为哈希表或者哈希散列,所得存储位置称为哈希地址或者散列地址。虽然哈希表查法相对来说比较快,但还是满足不了高速实时通信系统的极速查找需求。
随着网络速率的不断提高,传统的基于软件的查找机制已经不能满足要求,目前工业界中使用最多的硬件查找方法是使用内容寻址存储单元(CAM),但是由于路由查找具有最长前缀匹配的特点,人们又提出了另一种CAM实现机制,基于硬件的TCAM查找应运而生。用TCAM方法进行查找时,整个表项空间的所有数据在同一时刻被查询,查找速度不受表项空间数据大小影响,每个时钟周期完成一次查找,平均查找速度是基于SRAM算法查找的6倍,最高甚至可以达到128倍。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于芯启源(南京)半导体科技有限公司,未经芯启源(南京)半导体科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110423364.0/2.html,转载请声明来源钻瓜专利网。