System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及通信领域,特别涉及规则查找方法、装置、设备及计算机可读存储介质。
技术介绍
1、报文在从源端口传输到目的端口的过程中,会在多个网络设备之间进行转发。网络设备在转发报文时,需要提取报文头中的字段,基于提取的字段查找包括多个访问控制规则的访问控制列表(access control list,acl),从而确定需要对该报文执行的动作。因此,需要一种规则查找方法。
2、相关技术中,acl中的多个访问控制规则存储在一个分类引擎中,基于待查找的报文查找分类引擎中存储的所有访问控制规则,将报文与各条访问控制规则依次进行匹配,得到与报文匹配的访问控制规则,之后,对报文执行匹配的访问控制规则所对应的动作。
3、然而,上述规则查找方法,在查找与报文匹配的访问控制规则时,需要查找所有访问控制规则,导致内存资源消耗大,查找时间长,效率低。
技术实现思路
1、本申请提供了一种规则查找方法、装置、设备及计算机可读存储介质,以提高规则查找的效率,技术方案如下:
2、第一方面,提供了一种规则查找方法,所述方法包括:获取第一报文的第一特征;确定与所述第一特征匹配的第二特征,所述第二特征基于第一规则集合包括的第一访问控制规则得到,所述第二特征为第一类规则集合对应的特征中的一个或多个,所述第一类规则集合包括所述第一规则集合和第二规则集合,所述第一规则集合包括至少一条第一访问控制规则,所述第二规则集合包括至少一条第二访问控制规则,所述至少一条第一访问控制规则与所述至少一条第二
3、本申请提供的规则查找方法,通过对第一报文的第一特征与第一类规则集合对应的特征进行匹配,从第一类规则集合对应的特征中确定与第一特征匹配的第二特征,根据特征匹配结果快速选出第一类规则集合中包括第二特征对应的第一规则集合,仅在匹配的第一规则集合包括的第一访问控制规则中查找目标规则,减少了第一类规则集合中需要查找的规则的数量,因而能够降低内存资源消耗,缩短了查找时间,提高了查找效率。
4、在一种可能的实现方式中,所述确定与所述第一特征匹配的第二特征之前,还包括:获取所述第一规则集合包括的第一访问控制规则对应的通用特征,将所述通用特征作为所述第二特征;所述获取第一报文的第一特征,包括:提取所述第一报文中与所述通用特征对应的第一字段,将所述第一字段的信息作为所述第一报文的第一特征。第二特征是第一规则集合包括的各条第一访问控制规则的通用特征,而第一特征是基于通用特征对应的第一字段确定,与通用特征相关,进而保证第一特征与第二特征的匹配,从而根据特征匹配结果快速从第一类规则集合包括的规则集合中确定出第一规则集合。
5、在一种可能的实现方式中,所述获取所述第一规则集合包括的第一访问控制规则对应的通用特征,包括:提取所述第一规则集合包括的各条第一访问控制规则的相同字段,将所述相同字段的信息确定为所述第一规则集合包括的第一访问控制规则对应的通用特征。
6、在一种可能的实现方式中,所述获取所述第一规则集合包括的第一访问控制规则对应的通用特征,包括:如果第一规则集合包括的所有第一访问控制规则中有超过参考数量个第一访问控制规则的字符代码存在相同字段,则将该相同字段作为该第一规则集合包括的第一访问控制规则对应的通用特征。此种情况下,通用特征的数量为一个或多个。不仅可以将所有第一访问控制规则中的各条第一访问控制规则的相同字段作为通用特征,也可以将部分第一访问控制规则的相同字段作为通用特征,实施方式更加灵活。
7、在一种可能的实现方式中,所述确定与所述第一特征匹配的第二特征之前,还包括:获取所述第一规则集合包括的第一访问控制规则对应的目标内容,将所述目标内容进行映射,得到映射值,将所述映射值作为所述第二特征,所述目标内容为所述第一访问控制规则的全部内容或部分内容;所述获取第一报文的第一特征,包括:提取所述第一报文中与所述目标内容对应的第二字段,将所述第二字段的值进行映射,将得到的映射值作为所述第一报文的第一特征。在映射目标内容得到第二特征时,可以选择第一访问控制规则的全部内容作为目标内容,也可以选择第一访问控制规则的部分内容作为目标内容,灵活度高。此外,不限定第二特征的获取方式,且任一种第二特征的获取方式,均有与其对应的获取第一特征的方式,以保证方案的实现,通用性强。
8、在一种可能的实现方式中,所述在所述至少一条第一访问控制规则中查找与所述第一报文匹配的目标规则,包括:在所述第一规则集合包括的第一访问控制规则中,确定与所述第一报文匹配的参考规则;当与所述第一报文匹配的参考规则存在多个时,将所述多个参考规则中优先级最高的参考规则确定为所述目标规则。先在第一规则集合中查找参考规则,再根据多个参考规则的优先级选择目标规则,以保证查找得到的目标规则为优先级最高的访问控制规则。通过先查找第一规则集合内部的第一访问控制规则确定与第一报文匹配的参考规则,再查找第一规则集合之间的参考规则确定目标规则,这种分层查找的方式,提高了查找目标规则过程中的层次条理性,提高了查找效率。
9、在一种可能的实现方式中,所述方法还包括:获取第二报文的第三特征;在查找所述第一报文对应的目标规则的过程中,确定与所述第三特征匹配的第四特征,所述第四特征基于第三规则集合包括的第三访问控制规则得到,所述第四特征为第二类规则集合对应的特征中的一个或多个,所述第二类规则集合包括所述第三规则集合和第四规则集合,所述第三规则集合包括至少一条第三访问控制规则,所述第四规则集合包括至少一条第四访问控制规则,所述至少一条第三访问控制规则与所述至少一条第四访问控制规则不同;在所述至少一条第三访问控制规则中查找与所述第二报文匹配的目标规则。
10、本申请提供的规则查找方法,在查找第一报文对应的目标规则的基础上,还可以并行查找第二报文对应的目标规则。通过并行查找多个报文对应的目标规则,缩短了查找多个报文对应的目标规则的时间,提高了规则查找效率。
11、在一种可能的实现方式中,所述第二类规则集合与所述第一类规则集合为不同的规则集合。不同的报文可以查找对应的不同规则集合,进一步提高查找效率。
12、在一种可能的实现方式中,所述第二类规则集合与所述第一类规则集合为同一组规则集合;所述在所述至少一条第一访问控制规则中查找与所述第一报文匹配的目标规则,包括:基于所述第一规则集合的数量大于第一数量,从多个第一规则集合中选择所述第一数量个第一规则集合,所述第一数量基于所述第一类规则集合包括的规则集合的数量确定;按照所述第一数量依次在所述多个第一规则集合包括的第一访问控制规则中查找与所述第一报文匹配的目标规则。不限定第一类规则集合与第二类规则集合的关系,既可以为不同的规则集合,也可以为同一组规则集合,可基于应用场景设置,灵活度高。
13、第一类规则集合与第二类规则集合为同一组规则集合,无需增加第一类规则集合包括的第一访问控制规本文档来自技高网...
【技术保护点】
1.一种规则查找方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述确定与所述第一特征匹配的第二特征之前,还包括:
3.根据权利要求2所述的方法,其特征在于,所述获取所述第一规则集合包括的第一访问控制规则对应的通用特征,包括:
4.根据权利要求1所述的方法,其特征在于,所述确定与所述第一特征匹配的第二特征之前,还包括:
5.根据权利要求1-4任一所述的方法,其特征在于,所述在所述至少一条第一访问控制规则中查找与所述第一报文匹配的目标规则,包括:
6.根据权利要求1-5任一所述的方法,其特征在于,所述方法还包括:
7.根据权利要求6所述的方法,其特征在于,所述第二类规则集合与所述第一类规则集合为不同的规则集合。
8.根据权利要求6所述的方法,其特征在于,所述第二类规则集合与所述第一类规则集合为同一组规则集合;所述在所述至少一条第一访问控制规则中查找与所述第一报文匹配的目标规则,包括:
9.根据权利要求1-8任一所述的方法,其特征在于,所述确定与所述第一特征匹配的第二特
10.一种规则查找装置,其特征在于,所述装置包括:
11.根据权利要求10所述的装置,其特征在于,所述获取模块,还用于获取所述第一规则集合包括的第一访问控制规则对应的通用特征,将所述通用特征作为所述第二特征;所述获取模块,用于提取所述第一报文中与所述通用特征对应的第一字段,将所述第一字段的信息作为所述第一报文的第一特征。
12.根据权利要求11所述的装置,其特征在于,所述获取模块,用于提取所述第一规则集合包括的各条第一访问控制规则的相同字段,将所述相同字段的信息确定为所述第一规则集合包括的第一访问控制规则对应的通用特征。
13.根据权利要求10所述的装置,其特征在于,所述获取模块,还用于获取所述第一规则集合包括的第一访问控制规则对应的目标内容,将所述目标内容进行映射,得到映射值,将所述映射值作为所述第二特征,所述目标内容为所述第一访问控制规则的全部内容或部分内容;所述获取模块,用于提取所述第一报文中与所述目标内容对应的第二字段,将所述第二字段的值进行映射,将得到的映射值作为所述第一报文的第一特征。
14.根据权利要求10-13任一所述的装置,其特征在于,所述查找模块,用于在所述第一规则集合包括的第一访问控制规则中,确定与所述第一报文匹配的参考规则;当与所述第一报文匹配的参考规则存在多个时,将所述多个参考规则中优先级最高的参考规则确定为所述目标规则。
15.根据权利要求10-14任一所述的装置,其特征在于,所述获取模块,还用于获取第二报文的第三特征;所述确定模块,还用于在查找所述第一报文对应的目标规则的过程中,确定与所述第三特征匹配的第四特征,所述第四特征基于第三规则集合包括的第三访问控制规则得到,所述第四特征为第二类规则集合对应的特征中的一个或多个,所述第二类规则集合包括所述第三规则集合和第四规则集合,所述第三规则集合包括至少一条第三访问控制规则,所述第四规则集合包括至少一条第四访问控制规则,所述至少一条第三访问控制规则与所述至少一条第四访问控制规则不同;所述查找模块,还用于在所述至少一条第三访问控制规则中查找与所述第二报文匹配的目标规则。
16.根据权利要求15所述的装置,其特征在于,所述第二类规则集合与所述第一类规则集合为不同的规则集合。
17.根据权利要求15所述的装置,其特征在于,所述第二类规则集合与所述第一类规则集合为同一组规则集合;所述查找模块,用于基于所述第一规则集合的数量大于第一数量,从多个第一规则集合中选择所述第一数量个第一规则集合,所述第一数量基于所述第一类规则集合包括的规则集合的数量确定;按照所述第一数量依次在所述多个第一规则集合包括的第一访问控制规则中查找与所述第一报文匹配的目标规则。
18.根据权利要求10-17任一所述的装置,其特征在于,所述获取模块,还用于获取多个初始访问控制规则;所述装置还包括:划分模块,用于基于所述多个初始访问控制规则之间的相似度与规则集合的数量,将不同的初始访问控制规则划分到对应的规则集合中,得到所述第一类规则集合。
19.一种网络设备,其特征在于,所述网络设备包括处理器,所述处理器用于运行计算机程序或指令,以使所述网络设备实现权利要求1-9中任一所述的规则查找方法。
20.根据权利要求19所述的网络设备,其特征在于,所述网络设备还包括:输入接口、输出接口和存储器,所述输入接口、所述输出接口、所述处理器以及所述存储器之间通过内部连接通路相连。
...【技术特征摘要】
1.一种规则查找方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述确定与所述第一特征匹配的第二特征之前,还包括:
3.根据权利要求2所述的方法,其特征在于,所述获取所述第一规则集合包括的第一访问控制规则对应的通用特征,包括:
4.根据权利要求1所述的方法,其特征在于,所述确定与所述第一特征匹配的第二特征之前,还包括:
5.根据权利要求1-4任一所述的方法,其特征在于,所述在所述至少一条第一访问控制规则中查找与所述第一报文匹配的目标规则,包括:
6.根据权利要求1-5任一所述的方法,其特征在于,所述方法还包括:
7.根据权利要求6所述的方法,其特征在于,所述第二类规则集合与所述第一类规则集合为不同的规则集合。
8.根据权利要求6所述的方法,其特征在于,所述第二类规则集合与所述第一类规则集合为同一组规则集合;所述在所述至少一条第一访问控制规则中查找与所述第一报文匹配的目标规则,包括:
9.根据权利要求1-8任一所述的方法,其特征在于,所述确定与所述第一特征匹配的第二特征之前,还包括:
10.一种规则查找装置,其特征在于,所述装置包括:
11.根据权利要求10所述的装置,其特征在于,所述获取模块,还用于获取所述第一规则集合包括的第一访问控制规则对应的通用特征,将所述通用特征作为所述第二特征;所述获取模块,用于提取所述第一报文中与所述通用特征对应的第一字段,将所述第一字段的信息作为所述第一报文的第一特征。
12.根据权利要求11所述的装置,其特征在于,所述获取模块,用于提取所述第一规则集合包括的各条第一访问控制规则的相同字段,将所述相同字段的信息确定为所述第一规则集合包括的第一访问控制规则对应的通用特征。
13.根据权利要求10所述的装置,其特征在于,所述获取模块,还用于获取所述第一规则集合包括的第一访问控制规则对应的目标内容,将所述目标内容进行映射,得到映射值,将所述映射值作为所述第二特征,所述目标内容为所述第一访问控制规则的全部内容或部分内容;所述获取模块,用于提取所述第一报文中与所述目标内容对应的第二字段,将所述第二字段的值进行映射,将得到的映射值作为所述第一报文的第一特征。
14.根据权利要求10-13任一所述的装置,其特征在于,所述查找模块,用于在所述第一规则集合包括的第一访问控制规则中,确定与所述第一报文匹配的参考规则;当与所述第一报文匹配的参考规则存在多...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。