[发明专利]数据存储方法、查找方法及装置有效
| 申请号: | 201210048605.9 | 申请日: | 2012-02-28 |
| 公开(公告)号: | CN102622434A | 公开(公告)日: | 2012-08-01 |
| 发明(设计)人: | 刘恒;杨俊杰 | 申请(专利权)人: | 成都市华为赛门铁克科技有限公司 |
| 主分类号: | G06F17/30 | 分类号: | G06F17/30 |
| 代理公司: | 北京同立钧成知识产权代理有限公司 11205 | 代理人: | 刘芳 |
| 地址: | 611731 四川*** | 国省代码: | 四川;51 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 数据 存储 方法 查找 装置 | ||
本申请要求于2011年12月31日提交中国专利局、申请号201110459396.2、发明名称为“数据存储方法、查找方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本发明实施例涉及计算机技术,尤其涉及一种数据存储方法、数据查找方法及装置。
背景技术
三态内容可寻址存储器(Ternary Content Addressable Memory,TCAM)中每一个bit的状态可以是“0”或“1”,或者是第三种状态“don’t care”,所以称为“三态”。这个特点使TCAM具有对所查找数据的位域具有筛选功能,TCAM表内所有条目都可以并行访问,例如,如果TCAM有100条表项,能一次对这100条表项进行对比操作,相对与普通的轮询查找方法,提高了查找的速度。然而,TCAM成本比较高,存储空间的单位价格高于普通的SRAM,耗能也远远高于SRAM。
TCAM所使用的特定key长度主要有以下四种标准位宽:80bit,160bit,320bit和640bit。现有方法的TCAM表项下发过程是根据待存储的key值位宽选择需要用到的标准位宽,选择标准是选择大于待存储的key值位宽的最小标准位宽。例如,待存储的key值是170bit,则选择320bit的标准位宽进行下发。并将待存储的key值对应的关联数据下发到该key值的Index为偏移地址的DDR DRAM地址中。
然而,在实际应用中,TCAM的key值长度因业务的需要各有不同,很难达到以上标准位宽。例如:报文的key值长度为330bit,超过了320bit,需要使用标准位宽为640bit的表项来存储,多出的640bit-330bit=310bit用mask码表示,该表项浪费了310bit空间。因此,非标准位宽的key值存在浪费TCAM表项空间的问题。
发明内容
本发明实施例提供一种数据存储方法、数据查找方法及装置,用以解决TCAM中非标准位宽的关键字key值浪费空间的缺陷。
一方面,本发明实施例提供一种数据存储方法,包括:
获取待存储到TCAM的关键字,并获取所述关键字的位宽;
从TCAM的所有标准位宽中,选择与所述关键字的位宽的差值最小的标准位宽为第一标准位宽;
若所述第一标准位宽大于等于所述关键字的位宽,将所述关键字存储到TCAM中存储位宽等于所述第一标准位宽的空间中,获取所述关键字的存储地址,并将所述关键字的存储地址作为所述关键字在TCAM中的索引值;
若所述第一标准位宽小于所述关键字的位宽,将所述关键字切割成两个关键字,分别为第一关键字和第二关键字;将所述第一关键字存储到TCAM中存储位宽等于所述第一标准位宽的空间中,获取所述第一关键字的存储地址作为所述第一关键字在TCAM中的索引值,所述第一标准位宽等于所述第一关键字的位宽;将所述第二关键字存储到TCAM中存储位宽等于第二标准位宽的空间中,获取所述第一关键字的存储地址作为所述第二关键字在TCAM中的索引值,所述第二标准位宽大于等于所述第二关键字的位宽且与所述第二关键字的位宽的差值最小;通过将所述第一关键字在TCAM中的索引值和所述第二关键字在TCAM的中索引值进行组合变换获得所述关键字在TCAM中的索引值,其中,所述组合变换使得所述关键字在TCAM中的索引值与其它关键字在TCAM的索引值不产生冲突;
将所述关键字对应的关联数据存储于存储器中,所述关联数据在所述存储器中的存储地址与所述关键字在TCAM的索引值对应,所述关联数据中包含有所述关键字的报文的处理信息。
另一方面,本发明实施例提供一种数据查找方法,包括:
从报文中提取出待查找的关键字,并获取所述关键字的位宽;
从TCAM的所有标准位宽中选择与所述关键字的位宽的差值最小的标准位宽为第一标准位宽;
若所述第一标准位宽大于等于所述关键字的位宽,在TCAM中位宽等于第一标准位宽的空间中查找所述关键字,获取所述关键字的存储地址并将所述关键字的存储地址作为所述关键字在TCAM中的索引值;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于成都市华为赛门铁克科技有限公司,未经成都市华为赛门铁克科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210048605.9/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





