首页 / 专利库 / 电脑零配件 / 微码 / 一种基于ZCAM芯片添加多种掩码规则的方法

一种基于ZCAM芯片添加多种掩码规则的方法

阅读:764发布:2020-05-11

专利汇可以提供一种基于ZCAM芯片添加多种掩码规则的方法专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种基于ZCAM芯片添加多种掩码规则的方法,包括:为待加入底层 硬件 的规则一一对应地分配索引;接收外部发送的掩码规则数据包,包括五元组、规则相关数据、索引、业务组号、输入端口组的组号;选择底层硬件中包含的其中一个业务组号,判断其是否与规则相适配,如果适配,生成关联表和对应的返回值;重复前述步骤,直至循环遍历底层硬件中所有的业务组号,返回所有生成的返回值。本发明能够针对多个业务和/或多个优先级的情况,实现同一条规则在不同业务下对应多个不同的返回值的目的,同时,通过生成第一类表和第二类表的方式,提高查询效率,减轻ZCAM芯片负担;另外,对首次添加的规则生成寄存器,加快规则查找速度,提高运行效率。,下面是一种基于ZCAM芯片添加多种掩码规则的方法专利的具体信息内容。

1.一种基于ZCAM芯片添加多种掩码规则的方法,其特征在于,所述方法包括:
S1:结合ZCAM芯片容量,为待加入底层硬件的规则一一对应地分配索引;
S2:接收外部发送的掩码规则数据包,所述掩码规则数据包至少包括五元组、规则相关数据、规则对应的索引、规则适用的业务组号、和业务组号唯一对应的输入端口组的组号;
S3:选择底层硬件中包含的其中一个业务组号,判断其是否与规则相适配,如果适配,生成由五元组、索引、业务组号、输入端口组的组号、规则类型组成的第一类表,和由五元组、业务号、输入端口组号形成的第二类表,并针对第一类表生成对应的返回值;
S4:重复步骤S3,直至循环遍历个底层硬件中所有的业务组号,返回所有生成的返回值。
2.根据权利要求1所述的基于ZCAM芯片添加多种掩码规则的方法,其特征在于,所述方法还包括:
S5:将五元组、规则适用的业务组号、业务组号唯一对应的输入端口组的组号,以及规则对应的索引写入ZCAM芯片,生成ZCAM表。
3.根据权利要求1所述的基于ZCAM芯片添加多种掩码规则的方法,其特征在于,所述第一类表包括第一键值表、第二键值表、第三键值表;
所述第一键值表包括五元组、业务组号、输入端口组的组号;
所述第二键值表包括规则对应的索引;
所述第三键值表由规则对应的索引、规则所属类型经设定算法计算后得到。
4.根据权利要求1所述的基于ZCAM芯片添加多种掩码规则的方法,其特征在于,步骤S3中,所述根据第一类表和第二类表生成关联表是指,根据第三键值表和第二类表生成关联表。
5.根据权利要求3所述的基于ZCAM芯片添加多种掩码规则的方法,其特征在于,所述方法还包括:
判断当前添加的规则是否为首次添加,如果是,生成与该规则对应的寄存器,将第一键值表和第二键值表写入所述寄存器,将寄存器标志更新为1,否则,将第一键值表和第二键值表写入ZCAM芯片,生成ZCAM表。
6.根据权利要求5所述的基于ZCAM芯片添加多种掩码规则的方法,其特征在于,所述方法还包括:
如果接收到查询任意一条规则的微码,读取对应的寄存器标志,如果为1,继续查询ZCAM表,根据ZCAM表中所包含的与该规则对应的索引,调取相应的关联表,否则,结束本次规则查询指令。
7.根据权利要求1所述的基于ZCAM芯片添加多种掩码规则的方法,其特征在于,所述规则类型包括V4、V6两种。
8.根据权利要求1所述的基于ZCAM芯片添加多种掩码规则的方法,其特征在于,所述规则相关数据包括不同业务下对应的规则号、输入端口组的组号、优先级、对应的动作。

说明书全文

一种基于ZCAM芯片添加多种掩码规则的方法

技术领域

[0001] 本发明涉及掩码规则处理技术领域,具体而言涉及一种基于ZCAM芯片添加多种掩码规则的方法。

背景技术

[0002] 目前,很多网络产品系列中经常使用ZCAM芯片来添加处理掩码五元组规则,正常情况下ZCAM添加一条规则产生一个返回值(status)(这个返回值是用来查另外的一个表)。
[0003] 但在某些情形下,当报文涉及到一种规则对应多个业务和/或多个优先级的情况时,添加一条规则产生一个返回值(status)的方式则无法满足对应的需求,例如,在多优先级的情况下,采用这一方式会导致NP匹配规则不能按照预先设想的最高优先级的数据流匹配。为了解决这个问题,亟需引入添加一条规则产生多返回值的机制。

发明内容

[0004] 本发明目的在于提供一种基于ZCAM芯片添加多种掩码规则的方法,针对多个业务和/或多优先级的情况,在正常的五元组机制上添加输入端口组和业务号形成七元组,实现同一条规则在不同业务下对应多个不同的返回值的目的,同时,通过生成第一类表和第二类表的方式,提高查询效率,减轻ZCAM芯片负担;另外,对首次添加的规则生成寄存器,加快规则查找速度,提高运行效率。
[0005] 为达成上述目的,结合图1,本发明提出一种基于ZCAM芯片添加多种掩码规则的方法,所述方法包括:
[0006] S1:结合ZCAM芯片容量,为待加入底层硬件的规则一一对应地分配索引;
[0007] S2:接收外部发送的掩码规则数据包,所述掩码规则数据包至少包括五元组、规则相关数据、规则对应的索引、规则适用的业务组号、和业务组号唯一对应的输入端口组的组号;
[0008] S3:选择底层硬件中包含的其中一个业务组号,判断其是否与规则相适配,如果适配,生成由五元组、索引、业务组号、输入端口组的组号、规则类型组成的第一类表,和由五元组、业务号、输入端口组号形成的第二类表,并针对第一类表生成对应的返回值;
[0009] S4:重复步骤S3,直至循环遍历个底层硬件中所有的业务组号,返回所有生成的返回值。
[0010] 进一步的实施例中,所述方法还包括:
[0011] S5:将五元组、规则适用的业务组号、业务组号唯一对应的输入端口组的组号,以及规则对应的索引写入ZCAM芯片,生成ZCAM表。
[0012] 进一步的实施例中,所述第一类表包括第一键值表、第二键值表、第三键值表;
[0013] 所述第一键值表包括五元组、业务组号、输入端口组的组号;
[0014] 所述第二键值表包括规则对应的索引;
[0015] 所述第三键值表由规则对应的索引、规则所属类型经设定算法计算后得到。
[0016] 进一步的实施例中,步骤S3中,所述根据第一类表和第二类表生成关联表是指,根据第三键值表和第二类表生成关联表。
[0017] 进一步的实施例中,所述方法还包括:
[0018] 判断当前添加的规则是否为首次添加,如果是,生成与该规则对应的寄存器,将第一键值表和第二键值表写入所述寄存器,将寄存器标志更新为1,否则,将第一键值表和第二键值表写入ZCAM芯片,生成ZCAM表。
[0019] 进一步的实施例中,所述方法还包括:
[0020] 如果接收到查询任意一条规则的微码,读取对应的寄存器标志,如果为1,继续查询ZCAM表,根据ZCAM表中所包含的与该规则对应的索引,调取相应的关联表,否则,结束本次规则查询指令。
[0021] 进一步的实施例中,所述规则类型包括V4、V6两种。
[0022] 进一步的实施例中,所述规则相关数据包括不同业务下对应的规则号、输入端口组的组号、优先级、对应的动作。
[0023] 在正常的五元组机制上添加输入端口组和业务号形成七元组,这样组成的七元组会有更多种变化,也就会形成更多种的key值,意味着更多种的返回值。假设原先一条五元组规则对应一个key值,加上一个输入端口组号i(i=1,2,3...m)和一个业务号j(j=1,2,3...n),理论上会组成m*n种变化继而产生最多m*n种返回值。这样就巧妙的解决了多业务,多优先级情况下一条规则只会被命中一次的情况。
[0024] 以上本发明的技术方案,与现有相比,其显著的有益效果在于:
[0025] (1)针对多个业务和/或多优先级的情况,在正常的五元组机制上添加输入端口组和业务号形成七元组,实现同一条规则在不同业务下对应多个不同的返回值的目的。
[0026] (2)通过生成第一类表和第二类表的方式,提高查询效率,减轻ZCAM芯片负担。
[0027] (3)另外,对首次添加的规则生成寄存器,加快规则查找速度,提高运行效率。
[0028] 应当理解,前述构思以及在下面更加详细地描述的额外构思的所有组合只要在这样的构思不相互矛盾的情况下都可以被视为本公开的发明主题的一部分。另外,所要求保护的主题的所有组合都被视为本公开的发明主题的一部分。
[0029] 结合附图从下面的描述中可以更加全面地理解本发明教导的前述和其他方面、实施例和特征。本发明的其他附加方面例如示例性实施方式的特征和/或有益效果将在下面的描述中显见,或通过根据本发明教导的具体实施方式的实践中得知。

附图说明

[0030] 附图不意在按比例绘制。在附图中,在各个图中示出的每个相同或近似相同的组成部分可以用相同的标号表示。为了清晰起见,在每个图中,并非每个组成部分均被标记。现在,将通过例子并参考附图来描述本发明的各个方面的实施例,其中:
[0031] 图1是本发明的基于ZCAM芯片添加多种掩码规则的方法的流程图
[0032] 图2是本发明的其中一种例子的方法流程图。

具体实施方式

[0033] 为了更了解本发明的技术内容,特举具体实施例并配合所附图式说明如下。
[0034] 结合图1,本发明提出一种基于ZCAM芯片添加多种掩码规则的方法,所述方法包括:
[0035] S1:结合ZCAM芯片容量,为待加入底层硬件的规则一一对应地分配索引。
[0036] S2:接收外部发送的掩码规则数据包,所述掩码规则数据包至少包括五元组、规则相关数据、规则对应的索引、规则适用的业务组号、和业务组号唯一对应的输入端口组的组号。
[0037] S3:选择底层硬件中包含的其中一个业务组号,判断其是否与规则相适配,如果适配,生成由五元组、索引、业务组号、输入端口组的组号、规则类型组成的第一类表(关联表),和由五元组、业务号、输入端口组号形成的第二类表(ZCAM表),并针对第一类表生成对应的用于查表使用的返回值。
[0038] S4:重复步骤S3,直至循环遍历个底层硬件中所有的业务组号,返回所有生成的返回值。
[0039] 图2是其中一种添加掩码规则的例子,下面结合例子对本发明所提及的方法做详细阐述。
[0040] 所述例子中的添加掩码规则的方法包括以下步骤:
[0041] 第一步,为规则分配索引
[0042] 上层基于ZCAM芯片的容量,根据一定的算法,手动或者自动为每一条即将加入底层硬件的规则分配一个有效index。这个index相当于一个索引,唯一对应底层硬件上的规则。Index有固定的取值范围,取决于ZCAM容量大小。
[0043] 第二步,传输掩码规则数据包
[0044] 上层将五元组(源ip地址,目的IP地址,源端口,目的端口,协议)和规则相关的数据传至底层的同时把业务组号(业务id)和其唯一对应的输入端口组的组号(输入端口组id)及与五元组唯一对应的index同时传入底层,为规则的添加准备数据基础
[0045] 第三步,生成关联表和对应的返回值
[0046] 底层循环遍历所有的业务号,当这条规则在当前业务下的index值是有效值时,底层会形成两种类表结构分别是key表结构和result表结构。其中key表包含Treekey,tkey,skey。Treekey表是由上层传过来的五元组和输入端口组号及业务组号组成。Tkey是由index组成。Skey是由index和规则类型(v4/v6)通过一定算法形成。Result表是由规则相关的数据组成,其包含了不同业务下对应的规则号(规则id),组号,优先级,动作等数据。
[0047] 底层根据skey和result表形成一个关联表,并在当前业务下返回一个返回值,这个返回值一般在查询这个表的时候会用到。
[0048] 而结合七元组和index生成的第一类表和第二类表,则写入ZCAM芯片,便于微码通过生成的ZCAM表快速查询到相应的规则,提高查询效率,减轻ZCAM芯片负担[0049] 具体的,所述方法还包括:
[0050] S5:将五元组、规则适用的业务组号、业务组号唯一对应的输入端口组的组号,以及规则对应的索引写入ZCAM芯片,生成ZCAM表,便于用户通过ZCAM表查询规则。
[0051] 在一些例子中,所述方法还包括:
[0052] 判断当前添加的规则是否为首次添加,如果是,生成与该规则对应的寄存器,将第一键值表和第二键值表写入所述寄存器,将寄存器标志更新为1,否则,将第一键值表和第二键值表写入ZCAM芯片,生成ZCAM表。
[0053] 具体的,如果接收到查询任意一条规则的微码,读取对应的寄存器标志,如果为1,继续查询ZCAM表,根据ZCAM表中所包含的与该规则对应的索引,调取相应的关联表,否则,结束本次规则查询指令。
[0054] 例如,当第一次添加这种规则的时候,写一个寄存器。当微码查找这种规则的时候,先读取这个寄存器,如果寄存器标志为1,则去继续查找规则,否则不查找。这样大大的提高了运行效率。
[0055] 由于已经将七元组和index写入ZCAM芯片,当微码查询规则命中时,会先查询ZCAM表,查询的结果会返回一个index,再根据index查询关联表,找到则表示命中该规则。由于底层循环遍历所有的业务号,如果当前业务下存在有效的index,那么就会在底层生成一条规则,这样就抛开了简单五元组带来的局限性。因为无论规则是否相同,只要在对应业务下为其分配一个index,就能生成一条新规则。
[0056] 在本公开中参照附图来描述本发明的各方面,附图中示出了许多说明的实施例。本公开的实施例不必定义在包括本发明的所有方面。应当理解,上面介绍的多种构思和实施例,以及下面更加详细地描述的那些构思和实施方式可以以很多方式中任意一种来实施,这是因为本发明所公开的构思和实施例并不限于任何实施方式。另外,本发明公开的一些方面可以单独使用,或者与本发明公开的其他方面的任何适当组合来使用。
[0057] 虽然本发明已以较佳实施例揭露如上,然其并非用以限定本发明。本发明所属技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作各种的更动与润饰。因此,本发明的保护范围当视权利要求书所界定者为准。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈