查找键值生成装置及方法制造方法及图纸

技术编号:3484288 阅读:173 留言:0更新日期:2012-04-11 18:40
本发明专利技术实施例涉及一种查找键值生成装置及方法,采用多个可编程控制查找键值产生的查找键值产生单元并行处理的方法,同时产生多个查找键值,从而解决了高速的报文转发对报文分类查找键值生成装置的性能要求的问题比用软件来产生查找键值的装置性能要高;设计了比较专用的微码控制指令集,通过微码程序分3个粒度对输入的报文数据及前级电路的处理结果进行了处理,实现了对查找键值产生单元的灵活性的需求,满足了不同网络部署策略或者不同客户对报文分类的差异化需求。

【技术实现步骤摘要】

本专利技术涉及通信
,特别涉及一种。技术背景在通信网络设备中,特别是交换机和路由器中,为了实现对不同的流进 行不同的处理,需要对接收到的报文,进行报文分类处理,简称流分类。将报文进行分类之后,才能决定网络设备将要对其进行的具体操作,如决定 转发策略或者丟弃。具体的应用如访问控制列表,区别服务中需要的流分类, 都需要从报文和客户设置的网络参数中提取关键的域值来进行报文分类,从 而提供不同的转发策略和服务质量。但是,对于不同的客户、网络部署或者 网络介质,进行报文分类时,所关心的域值是不相同的,因此,进行报文分 类的灵活性和可扩展性是非常重要的。目前,在网络设备上进行报文分类的方法主要有两类 一类是,应用高 速的专用集成电路(Application Specific Integrated Circuits,以下简称ASIC ) 提取报文头或报文数据中的相关域值,例如,标准的IP报文分类用的报文五 元组,包括源IP、目的IP、源端口、目的端口、协议类型号,以及服务质 量的相关参数,作为查询内容寻址内存(Content Addressable Memory,以下 简称CAM)或三重内容寻址内存(Ternary Content Addressable Memory, 以下简称TCAM)用的查找键值;查询CAM或TCAM得到相应的索引值, 再去查找线性表得到相关的动作表项;网络设备再根据动作表项对报文进行 相关的操作,例如决定转发策略或丟弃。这种基于ASIC电路提取报文头或报文数据中的相关域值的报文分类方 法,能保证高速转发报文的要求,但是灵活性很差,对于不同用户或者不同网络部署的报文转发策略,这种固定的报文分类方法不能满足差异化的需求。 另一类是, 一般在低速网络设备上,有应用软件编程的方法来对报文进行分类的方法,可以根据需要,通过编写软件代码,确定提取报文头或报文数据中的哪些信息作为报文分类所需的关键域值,从而满足对不同协议或者不同网路部署引入的报文分类的不同的需求。软件编程对报文进行分类的优点是灵活性高,能够满足差异化的需求。然而,目前应用的软件编程方法的最大瓶颈是通用的CPU架构以及程序代码的运算效率,制约了软件编程进行报文分类的方法在高速网络设备上的应 用。
技术实现思路
本专利技术实施例提供一种,对于不同协议、不同 网络部署或不同用户的报文转发策略,能够实现报文的灵活分类,还能够满 足报文高速转发的要求。本专利技术实施例提供了一种查找键值生成装置,包括 提取单元,用于提取报文数据及前级电路的处理结果; 处理方式配置单元,用于存储查找键值处理方式;控制单元,用于根据所述提取单元提取的所述前级电路的处理结果,按 所述处理方式配置单元中存储的相应的查找键值处理方式控制查找键值的生 成;多个查找键值产生单元,用于在所述控制单元的控制下,并行处理多个 所述报文数据,生成多个查找键值。本专利技术实施例提供了一种查找键值生成方法,包括 提取报文数据及前级电路的处理结果;根据提取的前级电路的处理结果,确定相应的查找键值处理方式; 按照所述相应的查找键值处理方式,并行处理提取的多个所述报文数据和/或前级电路的处理结果,同时生成多个查找键值。由以上技术方案可知,本专利技术实施例的查找4t值生成装置及方法,通过 基于可编程的查找键值产生单元来生成查找键值,设计了比较专用的微码控 制指令集,比用软件来产生查找键值的装置性能要高,实现了对查找键值产 生单元的灵活性的需求,满足了不同网络部署策略或者不同客户对报文分类的差异化需求;采用并行处理的方法同时产生多个查找键值,从而解决了高速的报文转发对报文分类查找键值生成装置的性能要求的问题。 下面通过具体实施例并结合附图对本专利技术做进一步的详细描述。附图说明图1为本专利技术查找键值生成装置实施例一的结构示意图; 图2为本专利技术查找键值生成装置实施例二的结构示意图; 图3为包括本专利技术实施例查找键值生成装置的报文分类操作装置的结构 示意图;图4为本专利技术查找4定值生成方法实施例一的流程示意图; 图5为本专利技术查找键值生成方法实施例中使用的互联网协议第四版 (IPV4)报文内容的示意图。具体实施方式本专利技术实施例的方案是根据输入的报文数据及前级电路的处理结果,由 可编程的查找键值产生单元生成需要的查找键值;然后再利用该查找键值查 找CAM或TCAM,或其他相关算法查找引擎,匹配得到一个索引值,将输 入的报文进行分类;再用得到的索引值去查找相关的线性表,得到该分类后 的报文对应的动作表项,决定报文的转发策略或丟弃报文。如图l所示,为本专利技术查找键值生成装置实施例一的结构示意图,包括 提取单元1,用于提取报文数据及前级电路的处理结果;处理方式配置单元2,用于存储查找键值处理方式;控制单元3,用于根据提取单元l提取 的前级电路的处理结果,按处理方式配置单元2中存储的相应的查找键值处 理方式控制查找键值的生成;多个查找键值产生单元4,用于在控制单元3 的控制下,并行处理提取单元1提取的多个报文数据和/或前级电路的处理结 果,生成多个查找键值。进一步还可以包括存储单元5,用于存储多个查找键值产生单元4生成 的多个查找键值。提取单元1提取多个报文数据及前级电路的处理结果作为输入。其中, 报文数据主要是从报文头及报文内部提取的部分内容,例如,可为现有技术 中所述的报文五元组中的任意一个或多个数据;前级电路的处理结果主要包 括初始程序指针及一些人为定义的和报文内容无关的属性,前级电路的处理 结果中至少要包括初始程序指针,本专利技术实施例中的查找键值生成是靠可编 程的该查找键值生成装置产生的,该初始程序指针用于指示输入报文对应的 处理该报文的微码程序的初始位置,在该前级电路的处理结果中还可以包括 有其他和输入的报文内容无关的信息,例如报文进入路由器的端口号、用 户对这个端口设置的一些人为定义属性,例如这个端口报文的优先级,或 者对于这个端口的报文是要做2层流分类还是3层流分类等指示信息。处理 方式配置单元2存储了多种查找键值的处理方式,控制单元3根据提取单元 1提取的前级电路的处理结果,主要是前级电路处理结果中的初始程序指针, 找到处理方式配置单元2中存储的相应的查找键值的处理方式控制查找键值 的生成;即按照初始程序指针的指示,将各个提取出来的报文数据及前级电 路的处理结果分配给不同的查找一建值产生单元4,来生成不同的查找^:值。 然后再根据微码程序指示,存储单元5把各个查找键值产生单元4的处理结 果,收集在该存储单元5中;再从该存储单元5中取出查找键值,按照顺序 发送给CAM或TCAM,或者其他的算法查找引擎。其中多个查找键值产生单元4是一组功能相同的通过可编程的微码控制的查找键值产生单元4,根据输入的报文数据和/或前级电路的处理结果的不 同,其生成的查找键值的类型和长度也都可以不相同。在具体实现方案中, 需要根据报文转发的处理性能要求和报文转发电路的工作频率,以及微码的 处理效率来决定需要几个查找键值产生单元来同时生成查找键值。查找键值产生单元4的个数可以用下述基本公式推算得到假设该报文转发的处理性 能是xMPPS (每秒钟处理x兆个报文),报文转发电^各的时钟频率是cMHz, 即要求每c/x个周期处理一个报文,假设本文档来自技高网
...

【技术保护点】
一种查找键值生成装置,其特征在于,包括:提取单元,用于提取报文数据及前级电路的处理结果;处理方式配置单元,用于存储查找键值处理方式;控制单元,用于根据所述提取单元提取的所述前级电路的处理结果,按所述处理方式配置单元中存储的相应的查找键值处理方式控制查找键值的生成;多个查找键值产生单元,用于在所述控制单元的控制下,并行处理多个所述报文数据和/或前级电路的处理结果,生成多个查找键值。

【技术特征摘要】

【专利技术属性】
技术研发人员:梁军
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:94[中国|深圳]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1