[发明专利]一种TCAM表项的更新方法、装置及TCAM在审
申请号: | 201610442869.0 | 申请日: | 2016-06-20 |
公开(公告)号: | CN107528782A | 公开(公告)日: | 2017-12-29 |
发明(设计)人: | 刘丛 | 申请(专利权)人: | 中兴通讯股份有限公司 |
主分类号: | H04L12/747 | 分类号: | H04L12/747;H04L12/743 |
代理公司: | 北京银龙知识产权代理有限公司11243 | 代理人: | 许静,安利霞 |
地址: | 518057 广东省深圳市*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 tcam 更新 方法 装置 | ||
技术领域
本发明涉及通信技术领域,尤其是涉及一种TCAM表项的更新方法、装置及TCAM。
背景技术
在分组传输时网(PTN)以及数据产品设备中,三态内容可寻址存储器(TCAM)作为目前主流的快速查找存储器件,主要用于快速查找访问控制列表(ACL)以及路由等表项。但是由于TCAM成本较高,存储容量通常较小。此外,在对TCAM进行配置时,通常需要和随机存取存储器(RAM)配合进行配置。其中,通常在TCAM中存储根据关键字(Key)和掩码(Mask)计算得到的数据,而在RAM中存储与根据Key和Mask计算得到的数据相关联的值(Value),然后中央处理器(CPU)根据具体需求,根据不同顺序规则配置TCAM和RAM。
而目前在配置TCAM时,通常是根据用户数据进行计算得到Key和Mask,然后再对Key和Mask进行计算,得到计算后的数据,最后存储计算后的数据。但是由于相应算法不能保证根据Key和Mask计算得到的数据的最少冗余,因此经常出现根据Key和Mask计算得到的数据重复配置的情况,这对TCAM资源占用产生了较大的浪费。例如:
根据用户数据1得到的Key1为0xf0f0,Mask1为0x00f0,根据Key1和Mask1计算得到的数据1为0x00f0;
根据用户数据2得到的Key2为0x00f0,Mask2为0x00ff,根据Key2和Mask2计算得到的数据2为0x00f0;
根据用户数据1和用户数据2可以看出,虽然根据用户数据得到的Key和Mask不同,但最后根据Key和Mask计算得到的数据是相同的,这就导致在TCAM中存储时,存在相同的数据重复存储的情况,这在TCAM的存储空间较小的情况下,极大的浪费了TCAM的存储空间。
由上可以看出,现有技术中的TCAM存在资源浪费的问题。
发明内容
为了解决现有技术中TCAM存在的资源浪费的问题,本发明提供一种TCAM表项的更新方法、装置及TCAM。
为了解决上述技术问题,第一方面,本发明提供了一种TCAM表项的更新方法,包括:
获取TCAM表项中存储的全部存储信息;
判断所述全部存储信息中是否存在与预处理信息相同的存储信息,得到判断结果;
根据所述判断结果,更新所述TCAM表项。
可选地,根据所述判断结果,更新所述TCAM表项的步骤包括:根据所述判断结果,在所述TCAM表项中添加所述预处理信息;或者,根据所述判断结果,删除所述TCAM表项中与所述预处理信息相同的存储信息。
可选地,所述根据所述判断结果,在所述TCAM表项中添加所述预处理信息的步骤包括:当所述判断结果为是时,获取与所述预处理信息相同的存储信息的第一条数,并根据所述第一条数,将所述预处理信息添加至所述TCAM表项中;当所述判断结果为否时,直接将所述预处理信息添加至所述TCAM表项中。
可选地,所述根据所述第一条数,将所述预处理信息添加至所述TCAM表项中的步骤包括:当所述第一条数大于1时,仅保留所述TCAM表项中与所述预处理信息相同的存储信息中的其中一条存储信息,并更新所述第一条数;当所述第一条数为1时,直接更新所述第一条数;其中,更新后的第一条数为更新前的第一条数与所述预处理信息的第二条数的和值。
可选地,所述根据所述判断结果,删除所述TCAM表项中与所述预处理信息相同的存储信息的步骤包括:当所述判断结果为是时,获取与所述预处理信息相同的存储信息的第一条数,并根据所述第一条数,删除所述TCAM表项中与所述预处理信息相同的存储信息。
可选地,所述根据所述第一条数,删除所述TCAM表项中与所述预处理信息相同的存储信息的步骤包括:当所述第一条数大于1时,仅保留所述TCAM表项中与所述预处理信息相同的存储信息中的其中一条存储信息,并更新所述第一条数,其中,更新后的第一条数为更新前的第一条数与所述预处理信息的第二条数的差值;当所述第一条数等于1时,直接删除所述TCAM表项中与所述预处理信息相同的存储信息。
第二方面,本发明还提供了一种三态内容可寻址存储器TCAM表项的更新装置,包括:
获取模块,用于获取TCAM表项中存储的全部存储信息;
判断模块,用于判断所述全部存储信息中是否存在与预处理信息相同的存储信息,得到判断结果;
更新模块,用于根据所述判断结果,更新所述TCAM表项。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中兴通讯股份有限公司,未经中兴通讯股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610442869.0/2.html,转载请声明来源钻瓜专利网。