[发明专利]一种基于TCAM的包匹配方法在审

专利信息
申请号: 201410698719.7 申请日: 2014-11-26
公开(公告)号: CN104410573A 公开(公告)日: 2015-03-11
发明(设计)人: 王凯;吴恒奎 申请(专利权)人: 中国电子科技集团公司第四十一研究所
主分类号: H04L12/741 分类号: H04L12/741
代理公司: 北京众合诚成知识产权代理有限公司 11246 代理人: 龚燮英
地址: 266555 山东省*** 国省代码: 山东;37
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 tcam 匹配 方法
【说明书】:

技术领域

发明涉及互联网数据包分类技术领域,具体涉及一种基于TCAM的包匹配方法。

背景技术

随着互联网越来越深入人们的日常生活,网络流量不断增大,各种网络应用的数量也飞速增长,同时,随之而来的新型网络恶意攻击也不断出现,从而导致了越来越多的网络核心路由设备出现网络拥塞现象,严重降低了网络核心路由设备的转发性能。鉴于此,为识别网络中的流量类型以提供更优的服务质量和网络安全水平,数据包分类技术应运而生,且已成为现有互联网架构的核心组成部分。其中,基于三态内容寻址存储器(TCAM)的高速数据包分类机制因具有极高的包匹配速率,已成为了包分类技术的事实工业标准。

TCAM芯片规则库中的每条规则表达为严格的三态(0,1和*)格式,即TCAM中每一位比特只能取三种值:0,1和*(代表无关项)。如果一个字符串与某规则中所有的0和1位相同,则表明该字符串符合该规则。例如,字符串“110110”和“110010”都符合规则“11**10”。TCAM通过并行地将搜索关键词与规则库中的所有规则进行对比,并在固定时钟周期内返回位于TCAM较低地址位置的匹配结果,以实现高速的匹配操作。为降低能耗,现有TCAM芯片大多支持全局掩码寄存器(GMR)和局部掩码寄存器(BMR)。如图1所示,GMR决定了在包规则匹配中的参与匹配操作的纵向比特位置范围(如GMR 0和GMR 2),而BMR决定了在匹配操作中应被启用或禁用的TCAM内存块(例如Block0)。GMR和BMR协同操作可实现降低TCAM芯片能耗的功能。

TCAM芯片规则库三态表述的固有特征,决定了在范围字段的匹配过程中将不可避免产生范围扩张问题。在典型的IPv4规则判定中,协议号和源IP地址、目的IP地址均可表述为前缀格式,即所有的无关项*均分布于三态字符串的末尾位置(例如11010***),这使得数据包中上述三个字段信息均可直接存储于TCAM中作为一条表项。然而,数据包中的源端口号和目的端口号信息在规则判定中表征为实数范围,例如,[1,65535]的范围字段需要30个前缀格式的三态字符串来表征,而表征源端口号和目的端口号均属于[1,65535]的规则判定则需要多达30×30=900个TCAM表项,这显然导致了严重的范围扩张问题。同时,范围扩张引起的表项剧增也加大了TCAM芯片的功耗,影响TCAM芯片的实际应用效果。

因此,如何提高TCAM芯片的空间利用率,以减轻范围扩张带来的负面影响,对基于TCAM的数据包分类技术的发展具有至关重要的推动作用。

为解决上述问题,现有技术提出了一种C-TCAM(Compressed-TCAM:压缩的TCAM):采用二级压缩机制,将原先占据两条TCAM表项的每两个范围字段(如传输层端口号字段)压缩存储到一条TCAM表项中,以提高TCAM芯片的空间利用率。

但是,C-TCAM不具备TCAM芯片类型选择功能,不能根据网络设备转发速率的不同需求而动态适配TCAM芯片类型及空间压缩等级,导致芯片空间利用率不高,且能耗较高。例如,对于IPv4分组分类而言,若TCAM芯片位宽为144比特时,因为非范围字段包括源地址、目的地址和协议字段总长度共72比特,范围字段包括源端口和目的端口总长度共32比特,因此,采用C-TCAM后,每条TCAM表项的剩余比特宽度为8比特(144-72-32×2=8);然而,若采用576比特位宽的TCAM芯片时,C-TCAM方法导致每条TCAM表项的剩余比特宽度多达440比特,单条TCAM表项空间利用率仅为23.6%。产生这种想象的原因是:C-TCAM算法不具备动态TCAM芯片类型选择功能,只能固定地采用范围字段二级压缩机制,而不能根据网络设备转发速率需求自适应地调整范围字段压缩等级。

发明内容

本发明的目的是提出一种基于TCAM的包匹配方法,基于网络设备转发速率来完成TCAM芯片类型动态选择及范围字段压缩等级智能核定,在保证网络设备正常转发速率的基础上,提高TCAM芯片的空间利用率。

为达上述目的,本发明提供了一种基于TCAM的包匹配方法,包括:

根据包转发速率r和TCAM芯片的时钟周期t计算空间压缩等级n;该空间压缩等级n为原TCAM芯片中可被压缩为1条表项的原表项数量;

根据所述压缩等级n选择合适类型的TCAM芯片;

根据压缩等级n,对原TCAM芯片进行压缩;所述压缩包括:将原TCAM芯片中占据n条表项中的n对源端口号和目的端口号压缩为1条表项,按照表项位置自上而下的顺序依次执行;

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国电子科技集团公司第四十一研究所,未经中国电子科技集团公司第四十一研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201410698719.7/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top