一种表项管理方法及设备技术

技术编号:27139449 阅读:24 留言:0更新日期:2021-01-27 20:57
本申请提供了一种表项管理方法及设备。该表项管理方法包括:获取待动态配置的第一接入控制表项;识别第一接入控制表项关联的第一应用;确定各块block已分配给其他应用;识别三态内容寻址存储器中多个存储有非冲突接入控制表项的block;将识别的多个block中低优先级的block存储的接入控制表项移动至识别的多个block中最高优先级的block,释放一个以上block;将最高优先级block分配给被移动至最高优先级block的接入控制表项关联的应用;将其中一个释放的block分配给第一应用;将第一接入控制表项存储在分配给第一应用的block。入控制表项存储在分配给第一应用的block。入控制表项存储在分配给第一应用的block。

【技术实现步骤摘要】
一种表项管理方法及设备


[0001]本申请涉及通信技术,具体地讲是一种表项管理方法及设备。

技术介绍

[0002]TCAM(Triple Content Addressed Memory,三态内容寻址存储器)可以在硬件/逻辑上可被划分为多个block(块),在每个block存储ACL(Access Control List,访问控制列表)表项。通过掩码实现的模糊查找功能,在多个block之间并行查找各ACL的匹配项是否匹配报文。当一个block可以存放一种或者多种ACL应用时,在前面的规则优先生效。
[0003]当不同应用所需查找的ACL表项存储在同一block中,生效优先级高的ACL表项存储位置在前。当不同应用所需查找的ACL表项存放在不同的block时,每个block均可以有一个ACL表项生效,多个block的生效的ACL表项的动作项(action field)动作可叠加生效,其方式为动作优先级高的ACL表项的动作优先生效;如果不同block表项的ACL表项的动作项的动作优先级相同且无法叠加生效时,这些匹配项相同且动作优先级相同的ACL表项因为无法叠加生效而互为冲突ACL表项而无法存储在一个block。但是,TCMA的block是有限的,当待动态配置的ACL对应的应用没有可分配的Block而导致block资源不足时,需要动态配置到交换芯片的ACL表项则会发生配置失败。

技术实现思路

[0004]本申请的目的提供一种表项管理方法及设备,避免三态内容寻址存储器中块存储资源不足导致的动态接入控制表项配置失败。
[0005]为实现上述目的,本申请提供了一种表项管理方法,该方法还包括:获取待动态配置的第一接入控制表项;识别第一接入控制表项关联的第一应用;确定各块block已分配给其他应用;识别三态内容寻址存储器中多个存储有非冲突接入控制表项的block;将识别的多个block中低优先级的block存储的接入控制表项移动至识别的多个block中最高优先级的block,释放一个以上block;将最高优先级block分配给被移动至最高优先级block的接入控制表项关联的;将其中一个释放的block分配给第一应用;将第一接入控制表项存储在分配给第一应用的block。
[0006]为实现上述目的,本申请还提供了一种表项管理设备,该设备包括处理器以及存储器;存储器用于存储处理器可执行指令;其中,处理器通过运行存储器中的处理器可执行指令用以执行以下操作:获取待动态配置的第一接入控制表项;识别第一接入控制表项关联的第一应用;确定各块block已分配给其他应用;识别三态内容寻址存储器中多个存储有非冲突接入控制表项的block;将识别的多个block中低优先级的block存储的接入控制表项移动至识别的多个block中最高优先级的block,释放一个以上block;将最高优先级block分配给被移动至最高优先级block的接入控制表项关联的应用;将其中一个释放的block分配给第一应用;将第一接入控制表项存储在分配给第一应用的block。
[0007]本申请的有益效果在于,将不冲突的应用的ACL表项合并在一个block中,节约了
block资源,将释放的block存储需要动态配置的ACL表吸纳过,避免了block资源不足导致没有可以分配给新应用的block而产生配置失败。
附图说明
[0008]图1为本申请提供的一种表项管理方法的流程图;
[0009]图2为本申请提供的合并块存储资源第一实施例的示意图;
[0010]图3为本申请提供的合并块存储资源第二实施例的示意图;
[0011]图4为本申请提供的合并块存储资源第三实施例的示意图;
[0012]图5为本申请提供的合并块存储资源第二实施例的示意图;
[0013]图6为本申请提供的表项管理设备的示意图。
具体实施方式
[0014]将以多个附图所示的多个例子进行详细说明。在以下详细描述中,多个具体细节用于提供对本申请的全面理解。实例中没有详细地描述已知的方法、步骤、组件以及电路,以免使这些例子的难于理解。
[0015]使用的术语中,术语“包括”表示包括但不限于;术语“含有”表示包括但不限于;术语“以上”、“以内”以及“以下”包含本数;术语“大于”、“小于”表示不包含本数。术语“基于”表示至少基于其中一部分。
[0016]步骤101,获取待动态配置的第一接入控制表项。
[0017]步骤102,识别第一接入控制表项关联的第一应用。
[0018]步骤103,确定各块block已分配给其他应用。
[0019]步骤104,识别TCMA中多个存储有非冲突接入控制表项的block。
[0020]当多个接入控制表项的存储的是非叠加生效的ACL表项时,不同block内存储的ACL表项的匹配项的匹配字段不同,则识别这些block是存储了非冲突接入控制表项的block。当多个接入控制表项的存储的是叠加生效的ACL表项时,不同block内存储的ACL表项的匹配项的匹配字段相同但是动作项中动作字段对应的动作优先级不同,则识别这些block是存储了非冲突接入控制表项的block。
[0021]步骤105,将识别的多个block中低优先级的block存储的接入控制表项移动至识别的多个block中最高优先级的block,释放一个以上block。
[0022]步骤106,将最高优先级block分配给被移动至最高优先级block的接入控制表项关联的应用。
[0023]步骤107,将其中一个释放的block分配给第一应用。
[0024]步骤108,将第一接入控制表项存储在分配给第一应用的block。
[0025]图1所示实施例的有益效果在于,将不冲突的应用的ACL表项合并在一个block中,节约了block资源,将释放的block存储需要动态配置的ACL表吸纳过,避免了block资源不足导致没有可以分配给新应用的block而产生配置失败。
[0026]图2为本申请提供的合并块存储资源第一实施例的示意图。图2中,通信设备的TCAM包括四个block,分别是block1和block4。Block1存储了应用a的ACL表项ACL a1-an,block2存储了应用b的ACL表项b1-bm;block3存储了应用c的ACL表项c1-cx;block4存储了
应用d的ACL表项d1-dy。
[0027]当通信设备需要应用f的ACL表项f1,确定所有block已经分配了应用,已经没有可分配给应用f的block资源。基于图1所示的方法,先识别相邻的block1和block2存储了冲突的ACL表项(譬如,匹配项相同的不需要叠加生效的ACL;或匹配项相同且动作项的动作优先级相同的叠加生效ACL表项),则不将block1和block2的ACL表项合并。
[0028]本申请先识别相邻block是否有冲突ACL,能否合并。本申请中,相邻block是本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种表项管理方法,其特征在于,所述方法还包括:获取待动态配置的第一接入控制表项;识别所述第一接入控制表项关联的第一应用;确定各块block已分配给其他应用;识别三态内容寻址存储器中多个存储有非冲突接入控制表项的block;将识别的多个block中低优先级的block存储的接入控制表项移动至识别的多个block中最高优先级的block,释放一个以上block;将所述最高优先级block分配给被移动至所述最高优先级block的接入控制表项关联的应用;将其中一个释放的block分配给所述第一应用;将所述第一接入控制表项存储在分配给所述第一应用的block。2.根据权利要求1所述的方法,其特征在于,所述方法进一步包括:获取待配置的第二接入控制表项;识别所述第二接入控制表项关联的第二应用;确定所述第二应用已分配给所述最高优先级block;确定所述最高优先级block存储的所述第二接入控制表项的冲突接入控制表项;将释放的block的一个未分配的block分配给所述第二应用,将所述第二接入控制表项存储在分配给所述第二应用的block,将所述最高优先级block已存储的所述第二应用的接入控制表项移动到分配给所述第二应用的block。3.根据权利要求1所述的方法,其特征在于,所述方法进一步包括:获取待配置的第二接入控制表项;识别所述第二接入控制表项关联的第二应用;确定所述第二应用已分配给所述最高优先级block;确定所述最高优先级block存储的所述第二接入控制表项的冲突接入控制表项;确定分配给所述第一应用的block存储了所述第二接入控制表项的冲突表项;将所述第一应用的block分配给第二应用且将所述第二接入控制表项存储于所述分配给第一应用的block,将所述最高优先级block已存储的所述第二应用的接入控制表项移动到所述分配给第一应用的block。4.根据权利要求1所述的方法,其特征在于,所述方法进一步包括:获取待配置的第二接入控制表项;识别所述第二接入控制表项关联的第二应用;确定所述第二应用已分配给所述最高优先级block;确定所述最高优先级block存储的所述第二接入控制表项的冲突接入控制表项;确定所述最高优先级block存储的其他应用的接入控制表项是所述第一接入控制表项的非冲突表项,将所述第一应用的block分配给所述其他应用,将,将所述最高优先级block已存储的所述第二应用的接入控制表项移动所述分配给第一应用的block。5.根据权利要求1所述的方法,其特征在于,所述方法还进一步包括:获取携带了指示待配置block以及待修改优先级的块优先级配置命令;基于所述块优先级配置命令修改所述待配置block的优先级;获取静态表项配置命令;
其中,所述静态表项配置命令指示了移动前block,移动前存储位置,移动后block以及移动后存储位置;基于所述静态表项配置命令,将所述移动前block的所述移动前存储位置存储的待移动静态接入控制表项移动到所述移动后block的所述移动后存储位置。6.一种表项管理设备,其特征在于,所述设备包括处理器以及存储器;所述存储器用于存储处理器可执行指令;其中,所述处理器通过运行所述存储器中的处理器可执行...

【专利技术属性】
技术研发人员:田妍君
申请(专利权)人:新华三技术有限公司
类型:发明
国别省市:

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

1