访问控制列表构建和数据报文处理方法、装置、系统制造方法及图纸

技术编号:36555210 阅读:15 留言:0更新日期:2023-02-04 17:09
本公开提供了访问控制列表构建和数据报文处理方法、装置、系统、电子设备、存储介质、计算机程序产品、网络设备,涉及互联网技术领域,尤其涉及访问控制列表技术领域。访问控制列表构建包括:根据匹配项掩码对访问控制列表ACL集合包含的ACL规则进行分组,得到至少两个规则组;生成对应于各个规则组的访问控制列表;对应于各个规则组的访问控制列表用于并行匹配数据报文的ACL规则。本公开通过匹配项掩码对ACL规则进行分组,生成对应于各个规则组的访问控制列表,能够实现并行匹配数据报文的ACL规则,提高ACL规则匹配的准确度和匹配效率,能够满足计算机网络带宽的不断提高和接入网络设备数量的爆炸式增长。数量的爆炸式增长。数量的爆炸式增长。

【技术实现步骤摘要】
访问控制列表构建和数据报文处理方法、装置、系统


[0001]本公开涉及互联网
,尤其涉及访问控制列表


技术介绍

[0002]访问控制列表(Access Control List,ACL)是路由器和交换机接口的指令列表,包括一条或多条访问控制列表ACL规则,每条ACL规则是描述数据报文匹配条件的判断语句,用于进行数据报文的规则匹配并对数据报文执行与相匹配的ACL规则对应的执行动作,以防止网络遭到恶意攻击,实现对网络访问行为的控制、限制网络流量、提高网络性能等。
[0003]现有技术中,ACL规则的匹配方式需要多次串行查找,这会带来多次存储器的访问,加大了处理的延时,效率较低。

技术实现思路

[0004]本公开提供了一种的访问控制列表构建和数据报文处理方法、装置、系统、电子设备、存储介质、计算机程序产品、网络设备。
[0005]根据本公开的第一方面,提供了一种访问控制列表构建方法,包括:
[0006]根据匹配项掩码对访问控制列表ACL集合包含的ACL规则进行分组,得到至少两个规则组,每个规则组对应一个匹配项掩码且每个规则组中ACL规则包含的匹配项与所述匹配项掩码相匹配;
[0007]生成对应于各个规则组的访问控制列表;所述对应于各个规则组的访问控制列表用于并行匹配数据报文的ACL规则。
[0008]根据本公开的第二方面,提供了一种数据报文处理方法,包括:
[0009]确定数据报文的匹配项;
[0010]根据所述数据报文的匹配项,从至少两个访问控制列表中并行匹配出与所述数据报文相匹配的目标ACL规则;其中,所述至少两个访问控制列表根据至少两个规则组生成,所述至少两个规则组根据匹配项掩码对ACL集合包含的ACL规则进行分组得到,每个规则组对应一个匹配项掩码且每个规则组中ACL规则包含的匹配项与所述匹配项掩码相匹配;
[0011]对所述数据报文执行所述目标ACL规则对应的执行动作。
[0012]根据本公开的第三方面,提供了一种报文处理系统,包括:
[0013]处理器,用于确定数据报文的匹配项并将所述匹配项发送给存储有至少两个访问控制列表的存储器;其中,所述至少两个访问控制列表根据至少两个规则组生成,所述至少两个规则组根据匹配项掩码对ACL集合包含的ACL规则进行分组得到,每个规则组对应一个匹配项掩码且每个规则组中ACL规则包含的匹配项与所述匹配项掩码相匹配;
[0014]存储器,用于根据所述数据报文的匹配项从所述至少两个访问控制列表中并行匹配出与所述数据报文相匹配的目标ACL规则,并将所述目标ACL规则发送给所述处理器;
[0015]所述处理器,还用于对所述数据报文执行所述目标ACL规则对应的执行动作。
[0016]根据本公开的第四方面,提供了一种访问控制列表构建装置,包括:
[0017]分组模块,用于根据匹配项掩码对访问控制列表ACL集合包含的ACL规则进行分组,得到至少两个规则组,每个规则组对应一个匹配项掩码且每个规则组中ACL规则包含的匹配项与所述匹配项掩码相匹配;
[0018]生成模块,用于生成对应于各个规则组的访问控制列表;所述对应于各个规则组的访问控制列表用于并行匹配数据报文的ACL规则。
[0019]根据本公开的第五方面,提供了一种数据报文处理装置,包括:
[0020]确定模块,用于确定数据报文的匹配项;
[0021]匹配模块,用于根据所述数据报文的匹配项,从至少两个访问控制列表中并行匹配出与所述数据报文相匹配的目标ACL规则;其中,所述至少两个访问控制列表根据至少两个规则组生成,所述至少两个规则组根据匹配项掩码对ACL集合包含的ACL规则进行分组得到,每个规则组对应一个匹配项掩码且每个规则组中ACL规则包含的匹配项与所述匹配项掩码相匹配;
[0022]处理模块,用于对所述数据报文执行所述目标ACL规则对应的执行动作。
[0023]根据本公开的第六方面,提供了一种电子设备,包括:
[0024]至少一个处理器;以及
[0025]与所述至少一个处理器通信连接的存储器;其中,
[0026]所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述任一项所述的方法。
[0027]根据本公开的第七方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行上述任一项所述的方法。
[0028]根据本公开的第八方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现上述任一项所述的方法。
[0029]根据本公开的第九方面,提供了一种网络设备,包括:
[0030]至少一个处理器;以及
[0031]与所述至少一个处理器通信连接的存储器;其中,
[0032]所述存储器中存储有至少两个访问控制列表;其中,所述至少两个访问控制列表根据上述任一项所述的访问控制列表构建方法得到;
[0033]处理器,用于确定数据报文的匹配项并根据所述数据报文的匹配项从所述至少两个访问控制列表中并行匹配出与所述数据报文相匹配的目标ACL规则,以及对所述数据报文执行所述目标ACL规则对应的执行动作。
[0034]应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
[0035]附图用于更好地理解本方案,不构成对本公开的限定。其中:
[0036]图1为本公开一示例性实施例提供的一种访问控制列表构建方法的流程图;
[0037]图2为本公开一示例性实施例提供的一种访问控制列表构建方法中对ACL规则进行分组的流程图;
[0038]图3为本公开一示例性实施例提供的一种访问控制列表构建方法中更新访问控制
列表的流程图;
[0039]图4为本公开一示例性实施例提供的一种报文处理方法的流程图;
[0040]图5为本公开一示例性实施例提供的一种报文处理系统的结构示意图;
[0041]图6为本公开一示例性实施例提供的一种访问控制列表构建装置的模块示意图;
[0042]图7为本公开一示例性实施例提供的一种数据报文处理装置的模块示意图;
[0043]图8是本公开一示例性实施例提供的一种电子设备的框图。
具体实施方式
[0044]以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
[0045]ACL是一种网络数据报文过滤技术,包括一条或多条ACL规则,每条ACL规则是描述本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种访问控制列表构建方法,包括:根据匹配项掩码对访问控制列表ACL集合包含的ACL规则进行分组,得到至少两个规则组,每个规则组对应一个匹配项掩码且每个规则组中ACL规则包含的匹配项与对应的匹配项掩码相匹配;生成对应于各个规则组的访问控制列表;所述对应于各个规则组的访问控制列表用于并行匹配数据报文的ACL规则。2.根据权利要求1所述的访问控制列表构建方法,所述根据匹配项掩码对ACL集合包含的ACL规则进行分组之前还包括:根据各个ACL规则的通配符掩码和/或控制器的第一数量确定所述匹配项掩码;其中,每个控制器用于从一个访问控制列表中匹配所述数据报文的ACL规则。3.根据权利要求2所述的访问控制列表构建方法,其中,所述匹配项掩码与所述通配符掩码的差值小于差值阈值。4.根据权利要求2所述的访问控制列表构建方法,所述规则组的第二数量小于等于所述第一数量。5.根据权利要求1所述的访问控制列表构建方法,所述根据匹配项掩码对ACL集合包含的ACL规则进行分组包括:确定控制器的第一数量;每个控制器用于从一个访问控制列表中匹配所述数据报文的ACL规则;确定根据所述匹配项掩码对所述ACL规则进行分组,得到的规则组的第二数量;判断所述第二数量是否大于所述第一数量;若所述第二数量大于所述第一数量,则更新所述匹配项掩码,并根据更新后的匹配项掩码对所述ACL规则进行重新分组,以使重新分组得到的规则组的第二数量小于等于所述第一数量。6.根据权利要求1所述的访问控制列表构建方法,所述根据匹配项掩码对所述ACL规则进行分组包括:判断所述ACL规则是否包含通配符掩码;若所述ACL规则包含通配符掩码,则根据所述匹配项掩码对所述ACL规则的匹配项进行拆分,并将拆分后的匹配项对应的ACL规则划分入相匹配的匹配项掩码对应的规则组;若所述ACL规则不包含通配符掩码,则将所述ACL规则划分入相匹配的匹配项掩码对应的规则组。7.根据权利要求1所述的访问控制列表构建方法,其中,所述生成对应于各个规则组的访问控制列表包括:对各个规则组中的ACL规则的匹配项或者精确匹配项分别进行哈希运算,生成对应于各个规则组的访问控制列表;其中,所述精确匹配项为所述匹配项中排除了匹配项掩码对应的位数之外的部分。8.根据权利要求1所述的访问控制列表构建方法,还包括:响应于规则新增指令,获取待新增ACL规则,并根据所述待新增ACL规则的通配符掩码确定所述待新增ACL规则待分入的规则组;根据所述待分入的规则组的匹配项掩码,对所述待新增ACL规则进行拆分;
将拆分后的待新增ACL规则分入所述待分入的规则组以更新所述规则组,并根据更新后的规则组更新所述访问控制列表。9.根据权利要求8所述的访问控制列表构建方法,所述访问控制列表中的ACL规则按照优先级从高到低的顺序排列;所述根据更新后的规则组更新所述访问控制列表包括:判断所述访问控制列表中是否存在与所述拆分后的待新增ACL规则的匹配项相同的待替换规则:若不存在,则执行所述根据更新后的规则组更新所述访问控制列表的步骤;若存在,则判断所述拆分后的待新增ACL规则的优先级是否高于所述待替换规则的优先级;若是,则将所述待替换规则从所述访问控制列表中删除,并将所述拆分后的待新增ACL规则增加至所述访问控制列表中。10.根据权利要求1所述的访问控制列表构建方法,所述访问控制列表中的ACL规则按照优先级从高到低的顺序排列;所述访问控制列表构建方法还包括:响应于规则删除指令,确定待删除ACL规则是否为所述待删除ACL规则所在的访问控制列表中优先级最高的ACL规则;若所述待删除ACL规则是访问控制列表中优先级最高的ACL规则,则将所述访问控制列表中的待删除ACL规则删除,并重新确定删除了所述待删除ACL规则之后的访问控制列表中ACL规则的优先级;若所述待删除ACL规则不是访问控制列表中优先级最高的ACL规则,则将访问控制列表中的待删除ACL规则删除。11.根据权利要求1

10中任一项所述的访问控制列表构建方法,还包括:将所述各个规则组的访问控制列表同步至高带宽内存的双倍速率同步动态随机存储器中,每个访问控制列表对应一个双倍速率同步动态随机存储器。12.一种数据报文处理方法,包括:确定数据报文的匹配项;根据所述数据报文的匹配项,从至少两个访问控制列表中并行匹配出与所述数据报文相匹配的目标ACL规则;其中,所述至少两个访问控制列表根据至少两个规则组生成,所述至少两个规则组根据匹配项掩码对ACL集合包含的ACL规则进行分组得到,每个规则组对应一个匹配项掩码且每个规则组中ACL规则包含的匹配项与所述匹配项掩码相匹配;对所述数据报文执行所述目标ACL规则对应的执行动作。13.根据权利要求12所述的数据报文处理方法,所述访问控制列表通过对各个规则组中的ACL规则的匹配项分别进行哈希运算生成;所述根据所述数据报文的匹配项,从至少两个访问控制列表中并行匹配出与所述数据报文相匹配的目标ACL规则,包括:对所述数据报文的匹配项进行哈希运算,根据所述哈希运算的运算结果从所述至少两个访问控制列表中并行匹配出与所述数据报文相匹配的目标ACL规则;或者,所述访问控制列表通过对各个规则组中的ACL规则的精确匹配项分别进行哈希运算生成;所述根据所述数据报文的匹配项,从至少两个访问控制列表中并行匹配出与所述数据
报文相匹配的目标ACL规则,包括:根据各规则组对应的匹配项掩码从所述数据报文的匹配项中确定出精确匹配项;所述精确匹配项为所述匹配项中排除了匹配项掩码对应的位数之外的部分;对所述数据报文的精确匹配项进行哈希运算,根据所述哈希运算的运算结果从所述至少两个访问控制列表中并行匹配出与所述数据报文相匹配的目标ACL规则。14.一种报文处理系统,包括:处理器,用于确定数据报文的匹配项并将所述匹配项发送给存储有至少两个访问控制列表的存储器;其中,所述至少两个访问控制列表根据至少两个规则组生成,所述至少两个规则组根据匹配项掩码对ACL集合包含的ACL规则进行分组得到,每个规则组对应一个匹配项掩码且每个规则组中ACL规则包含的匹配项与所述匹配项掩码相匹配;存储器,用于根据所述数据报文的匹配项从所述至少两个访问控制列表中并行匹配出与所述数据报文相匹配的目标ACL规则,并将所述目标ACL规则发送给所述处理器;所述处理器,还用于对所述数据报文执行所述目标ACL规则对应的执行动作。15.根据权利要求14所述的报文处理系统,其中,所述存储器为高带宽内存,所述高带宽内存包括至少两个双倍速率同步动态随机存储器,每个双倍速率同步动态随机存储器用于存储一个访问控制列表;每个双倍速率同步动态随机存储器的控制器用于从对应的双倍速率同步动态随机存储器中进行ACL规则匹配。16.根据权利要求15所述的报文处理系统,所述控制器还用于复制多份所述访问控制列表,并将多份访问控制列表在所述双倍速率同步动态随机存储器的多个行上进行存储。17.一种访问控制列...

【专利技术属性】
技术研发人员:李鸿明曹帮伟李兆耕
申请(专利权)人:北京百度网讯科技有限公司
类型:发明
国别省市:

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

1