流量控制方法及设备技术领域
本发明涉及网络技术领域,特别涉及一种流量控制方法及设备。
背景技术
随着网络技术的快速发展,基于网络的应用越来越多且越来越复杂,通过
这些应用进行网络通信时,不可避免地会出现一些安全问题,比如,当非授权
用户访问一些具有保密性的网络资源时,会造成网络资源的泄密,因此,为了
保障网络安全性,需要对网络中传输的数据报文进行流量控制。
目前,基本都是通过访问控制列表(英文:Access Control List;简称:ACL)
来进行流量控制。而通过ACL进行流量控制之前,管理员需要手动配置多条规
则和该多条规则在ACL中的存储顺序,每条规则均由匹配条件和动作指示符组
成。匹配条件可以包括源地址信息、目的地址信息和协议类型,源地址信息可
以包括源互联网协议(英文:Internet Protocol;简称:IP)地址、源端口号等,
目的地址信息可以包括目的IP地址、目的端口号等。之后,以交换机或路由器
等为例的报文交换设备可以基于管理员配置的多条规则进行流量控制,具体为:
报文交换设备接收数据报文;报文交换设备将该数据报文中携带的源地址信息、
目的地址信息和协议类型,依次与ACL中的规则进行比较,如果确认当前比较
的规则与数据报文中携带的源地址信息、目的地址信息和协议类型相同,则确
定匹配到目标规则,按照该目标规则中的动作指示符对该数据报文进行处理,
否则继续与ACL中的下一条规则进行比较,从而实现流量控制。
发明人发现现有技术至少存在以下问题:
由于该多条规则和该多条规则的存储顺序都是由管理员手动进行配置,而
随着管理员对规则的不断更新,在该多条规则中可能会出现冗余规则和无效规
则的现象,从而降低流量控制的准确性。冗余规则是指在该多条规则中会存在
至少两条规则所匹配的流量相同且动作指示符也相同的现象。无效规则是指该
多条规则中会存在至少两条规则所匹配的流量相同,但动作指示符不同,且流
量范围较大的规则的存储顺序在流量范围较小的规则之前,这样导致顺序在后
的规则不会被匹配到,其中,流量范围为匹配条件所覆盖的范围。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种流量控制方法及设备。
所述技术方案如下:
第一方面,提供了一种流量控制方法,所述方法包括:
基于存储的多个地址信息分别所属主机的属性信息,将所述多个地址信息
划分为至少两个安全组,所述属性信息包括业务类型或者安全等级;
对所述至少两个安全组进行校验处理,使校验处理后的安全组中级别高的
安全组可完全包含级别低的安全组且属于同一级别的安全组之间完全独立不重
叠,所述级别用于指示安全组为父组、子组还是独立的安全组;
接收策略配置指令,所述策略配置指令中携带指定源组、指定目的组和指
定动作指示符,所述指定源组和所述指定目的组为所述校验处理后的安全组中
的两个不同的安全组;
基于所述策略配置指令,配置指定规则,以及配置所述指定规则的存储顺
序,所述指定规则为待配置的至少两个规则中的任一规则;
在所述至少两个规则配置完成之后,接收数据报文,所述数据报文中携带
源地址信息和目的地址信息;
基于所述至少两个规则和所述至少两个规则的存储顺序,对所述数据报文
进行处理,以实现流量控制。
结合第一方面,在上述第一方面的第一种可能的实现方式中,所述对所述
至少两个安全组进行校验处理,包括:
判断第一安全组与多个第二安全组之间是存在包含关系还是重叠关系,所
述第一安全组为所述至少两个安全组中未进行校验处理的安全组,所述多个第
二安全组为所述至少两个安全组中已进行校验处理后的安全组,所述包含关系
是指所述第一安全组为所述第二安全组的子集,或者所述第二安全组为所述第
一安全组的子集,所述重叠关系是指所述第一安全组和所述第二安全组之间存
在交集且所述第一安全组和所述第二安全组不相等;
如果所述第一安全组与所述多个第二安全组中的至少两个第二安全组之间
存在包含关系,则从所述至少两个第二安全组中,确定一个安全组作为第三安
全组;
显示第一确认提示信息,所述第一确认提示信息用于提示管理员对所述第
一安全组与所述第三安全组之间的包含关系进行处理;
如果基于所述第一确认提示信息接收到第一处理指令,则基于所述第一处
理指令,对所述第一安全组和所述第三安全组进行包含关系处理。
结合第一方面的第一种可能的实现方式,在上述第一方面的第二种可能的
实现方式中,所述从所述至少两个第二安全组中,确定一个安全组作为第三安
全组,包括:
如果所述第一安全组被所述至少两个第二安全组中的所有安全组所包含,
则从所述至少两个第二安全组中,选择地址范围最小的安全组;
如果所述第一安全组包含所述至少两个第二安全组中的所有安全组,则从
所述至少两个第二安全组组中,选择地址范围最大的安全组;
如果所述第一安全组被所述至少两个第二安全组中的至少一个第二安全组
所包含且所述第一安全组还包含所述至少两个第二安全组中剩余的第二安全
组,则从所述至少一个第二安全组中选择地址范围最小的安全组,或者从所述
剩余的第二安全组中选择地址范围最大的安全组;
将选择的安全组确定为所述第三安全组。
结合第一方面的第一种可能的实现方式或者第一方面的第二种可能的实现
方式,在上述第一方面的第三种可能的实现方式中,所述基于所述第一处理指
令,对所述第一安全组和所述第三安全组进行包含关系处理,包括:
将所述第一安全组和所述第三安全组中地址范围大的安全组确定为第四安
全组,并将所述第一安全组和所述第三安全组中地址范围小的安全组确定为第
五安全组;
如果所述第一处理指令为第一分裂指令,则将所述第四安全组中与所述第
五安全组相同的地址信息去除,得到第一子安全组;
如果所述第一处理指令为继承指令,则设置所述第五安全组为次级安全组,
并设置所述第五安全组为所述第四安全组的子组,所述次级安全组为与所述校
验处理后的安全组中的其他安全组之间存在包含关系的安全组。
结合第一方面的第一种可能的实现方式,在上述第一方面的第四种可能的
实现方式中,所述判断第一安全组与多个第二安全组之间是存在包含关系还是
重叠关系之后,还包括:
如果所述第一安全组与所述多个第二安全组中的至少两个第二安全组之间
存在重叠关系,则从所述至少两个第二安全组中,选择一个安全组作为第六安
全组;
显示第二确认提示信息,所述第二确认提示信息用于提示所述管理员对所
述第一安全组与所述第六安全组之间的重叠关系进行处理;
如果基于所述第二确认提示信息接收到第二处理指令,则基于所述第二处
理指令,对所述第一安全组和所述第六安全组进行重叠关系处理。
结合第一方面的第四种可能的实现方式,在上述第一方面的第五种可能的
实现方式中,所述基于所述第二处理指令,对所述第一安全组和所述第六安全
组进行重叠关系处理,包括:
如果所述第二处理指令为保留旧组指令,则将所述第一安全组中与所述第
六安全组相同的地址信息划分为第二子安全组,将所述第一安全组中除所述第
二子安全组之外剩余的地址信息划分为第三子安全组;
将所述第二子安全组设置为次级安全组,并设置所述第二子安全组为所述
第六安全组的子组。
结合第一方面的第四种可能的实现方式,在上述第一方面的第六种可能的
实现方式中,所述基于所述第二处理指令,对所述第一安全组和所述第六安全
组进行重叠关系处理,包括:
如果所述第二处理指令为保留新组指令,则将所述第六安全组中与所述第
一安全组相同的地址信息划分为第四子安全组,将所述第六安全组中除所述第
四子安全组之外剩余的地址信息划分为第五子安全组;
将所述第四子安全组设置为次级安全组,并设置所述第四子安全组为所述
第一安全组的子组。
结合第一方面的第四种可能的实现方式,在上述第一方面的第七种可能的
实现方式中,所述基于所述第二处理指令,对所述第一安全组和所述第六安全
组进行重叠关系处理,包括:
如果所述第二处理指令为第二分裂指令,则将所述第一安全组和所述第六
安全组中相同的地址信息、所述第一安全组中除与所述第六安全组相同的地址
信息之外剩余的地址信息和所述第六安全组中除与所述第一安全组相同的地址
信息之外剩余的地址信息分别划分为三个安全组。
结合第一方面至第一方面的第七种可能的实现方式中的任一可能的实现方
式,在上述第一方面的第八种可能的实现方式中,所述基于所述策略配置指令,
配置指定规则,包括:
如果所述指定源组与所述指定目的组均为一级安全组,则基于所述指定源
组、所述指定目的组和所述指定动作指示符,配置所述指定规则,所述一级安
全组为与所述校验处理后的安全组中的其他安全组之间不存在包含关系且不存
在重叠关系的独立安全组。
结合第一方面至第一方面的第七种可能的实现方式中的任一可能的实现方
式,在上述第一方面的第九种可能的实现方式中,所述基于所述策略配置指令,
配置所述指定规则,以及配置所述指定规则的存储顺序,包括:
如果所述指定源组或者所述指定目的组为次级安全组,则判断是否已配置
第一规则,所述第一规则为所述指定源组的父组与所述指定目的组之间的规则、
所述指定源组与所述指定目的组的父组之间的规则、或者所述指定源组的父组
与所述指定目的组的父组之间的规则;
如果已配置所述第一规则,则判断所述指定动作指示符与所述第一规则包
括的动作指示符是否相同;
如果所述指定动作指示符与所述第一规则包括的动作指示符相同,则禁止
配置所述指定规则。
结合第一方面第九种可能的实现方式,在上述第一方面的第十种可能的实
现方式中,所述判断所述指定动作指示符与所述第一规则包括的动作指示符是
否相同之后,还包括:
如果所述指定动作指示符与所述第一规则包括的动作指示符冲突,则基于
所述指定源组、所述指定目的组和所述指定动作指示符,配置所述指定规则;
设置所述指定规则的存储顺序位于所述第一规则之前。
结合第一方面的第九种可能的实现方式或者第一方面的第十种可能的实现
方式,在上述第一方面的第十一种可能的实现方式中,所述禁止配置所述指定
规则之后,还包括:
显示禁止配置提示信息,以提示所述管理员禁止配置所述指定规则且所述
指定规则为冗余规则。
结合第一方面至第一方面的第七种可能的实现方式中的任一可能的实现方
式,在上述第一方面的第十二种可能的实现方式中,所述基于所述策略配置指
令,配置所述指定规则,以及配置所述指定规则的存储顺序,包括:
如果所述指定源组为次级安全组且所述指定目的组为第七安全组的父组,
或者所述指定源组为第八安全组的父组且所述指定目的组为次级安全组,则判
断是否已配置第二规则,当所述指定源组为次级安全组且所述指定目的组为第
七安全组的父组时,所述第二规则为所述指定源组的父组与所述指定目的组之
间的规则、或者所述指定源组与所述第七安全组之间的规则;当所述指定源组
为第八安全组的父组且所述指定目的组为次级安全组时,所述第二规则为所述
指定源组与所述指定目的组之间的规则、或者所述第八安全组与所述指定目的
组的父组之间的规则,所述第七安全组和所述第八安全组为所述校验处理后的
安全组中的任一安全组;
如果已配置所述第二规则,则判断所述指定动作指示符与所述第二规则包
括的动作指示符是否相同;
如果所述指定动作指示符与所述第二规则包括的动作指示符相同,则基于
所述指定源组、所述指定目的组和所述指定动作指示符,配置所述指定规则。
结合第一方面的第十二种可能的实现方式,在上述第一方面的第十三种可
能的实现方式中,所述判断所述指定动作指示符与所述第二规则包括的动作指
示符是否相同之后,还包括:
如果所述指定动作指示符与所述第二规则包括的动作指示符冲突,则显示
策略冲突提示信息,以提示所述管理员设置所述指定规则和所述第二规则的存
储顺序;
当接收到所述管理员的排序操作时,基于所述排序操作,设置所述指定规
则与所述第二规则的存储顺序。
第二方面,提供了一种流量控制装置,所述装置包括:
划分模块,用于基于存储的多个地址信息分别所属主机的属性信息,将所
述多个地址信息划分为至少两个安全组,所述属性信息包括业务类型或者安全
等级;
校验处理模块,用于对所述至少两个安全组进行校验处理,使校验处理后
的安全组中级别高的安全组可完全包含级别低的安全组且属于同一级别的安全
组之间完全独立不重叠,所述级别用于指示安全组为父组、子组还是独立的安
全组;
接收模块,用于接收策略配置指令,所述策略配置指令中携带指定源组、
指定目的组和指定动作指示符,所述指定源组和所述指定目的组为所述校验处
理后的安全组中的两个不同的安全组;
配置模块,用于基于所述策略配置指令,配置指定规则,以及配置所述指
定规则的存储顺序,所述指定规则为待配置的至少两个规则中的任一规则;
所述接收模块,还用于在所述至少两个规则配置完成之后,接收数据报文,
所述数据报文中携带源地址信息和目的地址信息;
报文处理模块,用于基于所述至少两个规则和所述至少两个规则的存储顺
序,对所述数据报文进行处理,以实现流量控制。
结合第二方面,在上述第二方面的第一种可能的实现方式中,所述校验处
理模块包括:
判断单元,用于判断第一安全组与多个第二安全组之间是存在包含关系还
是重叠关系,所述第一安全组为所述至少两个安全组中未进行校验处理的安全
组,所述多个第二安全组为所述至少两个安全组中已进行校验处理后的安全组,
所述包含关系是指所述第一安全组为所述第二安全组的子集,或者所述第二安
全组为所述第一安全组的子集,所述重叠关系是指所述第一安全组和所述第二
安全组之间存在交集且所述第一安全组和所述第二安全组不相等;
确定单元,用于如果所述第一安全组与所述多个第二安全组中的至少两个
第二安全组之间存在包含关系,则从所述至少两个第二安全组中,确定一个安
全组作为第三安全组;
显示单元,用于显示第一确认提示信息,所述第一确认提示信息用于提示
管理员对所述第一安全组与所述第三安全组之间的包含关系进行处理;
包含关系处理单元,用于如果基于所述第一确认提示信息接收到第一处理
指令,则基于所述第一处理指令,对所述第一安全组和所述第三安全组进行包
含关系处理。
结合第二方面的第一种可能的实现方式,在上述第二方面的第二种可能的
实现方式中,所述确定单元包括:
选择子单元,用于如果所述第一安全组被所述至少两个第二安全组中的所
有安全组所包含,则从所述至少两个第二安全组中,选择地址范围最小的安全
组;如果所述第一安全组包含所述至少两个第二安全组中的所有安全组,则从
所述至少两个第二安全组组中,选择地址范围最大的安全组;如果所述第一安
全组被所述至少两个第二安全组中的至少一个第二安全组所包含且所述第一安
全组还包含所述至少两个第二安全组中剩余的第二安全组,则从所述至少一个
第二安全组中选择地址范围最小的安全组,或者从所述剩余的第二安全组中选
择地址范围最大的安全组;
确定子单元,用于将选择的安全组确定为所述第三安全组。
结合第二方面的第一种可能的实现方式或者第二方面的第二种可能的实现
方式,在上述第二方面的第三种可能的实现方式中,所述包含关系处理单元包
括:
确定子单元,用于如果基于所述第一确认提示信息接收到第一处理指令,
则基于所述第一处理指令,将所述第一安全组和所述第三安全组中地址范围大
的安全组确定为第四安全组,并将所述第一安全组和所述第三安全组中地址范
围小的安全组确定为第五安全组;
去除子单元,用于如果所述第一处理指令为第一分裂指令,则将所述第四
安全组中与所述第五安全组相同的地址信息去除,得到第一子安全组;
设置子单元,用于如果所述第一处理指令为继承指令,则设置所述第五安
全组为次级安全组,并设置所述第五安全组为所述第四安全组的子组,所述次
级安全组为与所述校验处理后的安全组中的其他安全组之间存在包含关系的安
全组。
结合第二方面的第一种可能的实现方式,在上述第二方面的第四种可能的
实现方式中,所述校验处理模块还包括:
选择单元,用于如果所述第一安全组与所述多个第二安全组中的至少两个
第二安全组之间存在重叠关系,则从所述至少两个第二安全组中,选择一个安
全组作为第六安全组;
所述显示单元,还用于显示第二确认提示信息,所述第二确认提示信息用
于提示所述管理员对所述第一安全组与所述第六安全组之间的重叠关系进行处
理;
重叠关系处理单元,用于如果基于所述第二确认提示信息接收到第二处理
指令,则基于所述第二处理指令,对所述第一安全组和所述第六安全组进行重
叠关系处理。
结合第二方面的第四种可能的实现方式,在上述第二方面的第五种可能的
实现方式中,所述重叠关系处理单元包括:
划分子单元,用于如果基于所述第二确认提示信息接收到第二处理指令,
且所述第二处理指令为保留旧组指令,则将所述第一安全组中与所述第六安全
组相同的地址信息划分为第二子安全组,将所述第一安全组中除所述第二子安
全组之外剩余的地址信息划分为第三子安全组;
设置子单元,用于将所述第二子安全组设置为次级安全组,并设置所述第
二子安全组为所述第六安全组的子组。
结合第二方面的第四种可能的实现方式,在上述第二方面的第六种可能的
实现方式中,所述重叠关系处理单元包括:
划分子单元,用于如果基于所述第二确认提示信息接收到第二处理指令,
且所述第二处理指令为保留新组指令,则将所述第六安全组中与所述第一安全
组相同的地址信息划分为第四子安全组,将所述第六安全组中除所述第四子安
全组之外剩余的地址信息划分为第五子安全组;
设置子单元,用于将所述第四子安全组设置为次级安全组,并设置所述第
四子安全组为所述第一安全组的子组。
结合第二方面的第四种可能的实现方式,在上述第二方面的第七种可能的
实现方式中,所述重叠关系处理单元包括:
划分子单元,用于如果基于所述第二确认提示信息接收到第二处理指令,
且所述第二处理指令为第二分裂指令,则将所述第一安全组和所述第六安全组
中相同的地址信息、所述第一安全组中除与所述第六安全组相同的地址信息之
外剩余的地址信息和所述第六安全组中除与所述第一安全组相同的地址信息之
外剩余的地址信息分别划分为三个安全组。
结合第二方面至第二方面的第七种可能的实现方式中的任一可能的实现方
式,在上述第二方面的第八种可能的实现方式中,所述配置模块包括:
配置单元,用于如果所述指定源组与所述指定目的组均为一级安全组,则
基于所述指定源组、所述指定目的组和所述指定动作指示符,配置所述指定规
则,以及配置所述指定规则的存储顺序,所述一级安全组为与所述校验处理后
的安全组中的其他安全组之间不存在包含关系且不存在重叠关系的独立安全
组。
结合第二方面至第二方面的第七种可能的实现方式中的任一可能的实现方
式,在上述第二方面的第九种可能的实现方式中,所述配置模块包括:
判断单元,用于如果所述指定源组或者所述指定目的组为次级安全组,则
判断是否已配置第一规则,所述第一规则为所述指定源组的父组与所述指定目
的组之间的规则、所述指定源组与所述指定目的组的父组之间的规则、或者所
述指定源组的父组与所述指定目的组的父组之间的规则;
所述判断单元,还用于如果已配置所述第一规则,则判断所述指定动作指
示符与所述第一规则包括的动作指示符是否相同;
禁止配置单元,用于如果所述指定动作指示符与所述第一规则包括的动作
指示符相同,则禁止配置所述指定规则。
结合第二方面第九种可能的实现方式,在上述第二方面的第十种可能的实
现方式中,所述配置模块还包括:
配置单元,用于如果所述指定动作指示符与所述第一规则包括的动作指示
符冲突,则基于所述指定源组、所述指定目的组和所述指定动作指示符,配置
所述指定规则;
设置单元,用于设置所述指定规则的存储顺序位于所述第一规则之前。
结合第二方面的第九种可能的实现方式或者第二方面的第十种可能的实现
方式,在上述第二方面的第十一种可能的实现方式中,所述配置模块还包括:
显示单元,用于显示禁止配置提示信息,以提示所述管理员禁止配置所述
指定规则且所述指定规则为冗余规则。
结合第二方面至第二方面的第七种可能的实现方式中的任一可能的实现方
式,在上述第二方面的第十二种可能的实现方式中,所述配置模块包括:
判断单元,用于如果所述指定源组为次级安全组且所述指定目的组为第七
安全组的父组,或者所述指定源组为第八安全组的父组且所述指定目的组为次
级安全组,则判断是否已配置第二规则,当所述指定源组为次级安全组且所述
指定目的组为第七安全组的父组时,所述第二规则为所述指定源组的父组与所
述指定目的组之间的规则、或者所述指定源组与所述第七安全组之间的规则;
当所述指定源组为第八安全组的父组且所述指定目的组为次级安全组时,所述
第二规则为所述指定源组与所述指定目的组之间的规则、或者所述第八安全组
与所述指定目的组的父组之间的规则,所述第七安全组和所述第八安全组为所
述校验处理后的安全组中的任一安全组;
所述判断单元,还用于如果已配置所述第二规则,则判断所述指定动作指
示符与所述第二规则包括的动作指示符是否相同;
配置单元,用于如果所述指定动作指示符与所述第二规则包括的动作指示
符相同,则基于所述指定源组、所述指定目的组和所述指定动作指示符,配置
所述指定规则。
结合第二方面的第十二种可能的实现方式,在上述第二方面的第十三种可
能的实现方式中,所述配置模块还包括:
显示单元,用于如果所述指定动作指示符与所述第二规则包括的动作指示
符冲突,则显示策略冲突提示信息,以提示所述管理员设置所述指定规则和所
述第二规则的存储顺序;
设置单元,用于当接收到所述管理员的排序操作时,基于所述排序操作,
设置所述指定规则与所述第二规则的存储顺序。
在本发明实施例中,将存储的多个地址信息按照所属主机的属性信息划分
为至少两个安全组,并对该至少两个安全组进行校验处理,使校验处理后的安
全组中级别高的安全组可完全包含级别低的安全组且属于同一级别的安全组之
间完全独立不重叠,进而接收策略配置指令,该策略配置指令中携带指定源组、
指定目的组和指定动作指示符,并基于该策略配置指令,配置指定规则,以及
配置指定规则的存储顺序,从而可以避免冗余规则和无效规则的出现,提高流
量控制的准确性。另外,当接收到数据报文时,按照规则的存储顺序,对该数
据报文进行处理,减少了规则匹配时间,提高了流量控制的效率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,
并不能限制本发明。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所
需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明
的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,
还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种流量控制方法所涉及的实施环境的示意图;
图2是本发明实施例提供的一种流量控制方法流程图;
图3是本发明实施例提供的另一种流量控制方法流程图;
图4是本发明实施例提供的一种对至少两个安全组进行校验处理的流程图;
图5是本发明实施例提供的一种第一确认提示信息的示意图;
图6是本发明实施例提供的一种第一安全组与第三安全组之间的包含关系
的示意图;
图7(a)是本发明实施例提供的一种第一处理指令为第一分裂指令时第四
安全组与第五安全组的分裂示意图;
图7(b)是本发明实施例提供的一种第一处理指令为继承指令时第四安全
组与第五安全组的继承示意图;
图8(a)是本发明实施例提供的一种第二处理指令为保留旧组指令时第一
安全组和第六安全组的划分示意图;
图8(b)是本发明实施例提供的一种第二处理指令为保留新组指令时第一
安全组和第六安全组的划分示意图;
图8(c)是本发明实施例提供的一种第二处理指令为第二分裂指令时第一
安全组和第六安全组的划分示意图;
图9是本发明实施例提供的一种流量控制装置的结构示意图;
图10是本发明实施例提供的一种校验处理模块的结构示意图;
图11是本发明实施例提供的一种确定单元的结构示意图;
图12是本发明实施例提供的一种包含关系处理单元的结构示意图;
图13是本发明实施例提供的另一种校验处理模块的结构示意图;
图14是本发明实施例提供的一种重叠关系处理单元的结构示意图;
图15是本发明实施例提供的另一种重叠关系处理单元的结构示意图;
图16是本发明实施例提供的第一种配置模块的结构示意图;
图17是本发明实施例提供的第二种配置模块的结构示意图;
图18是本发明实施例提供的第三种配置模块的结构示意图;
图19是本发明实施例提供的第四种配置模块的结构示意图;
图20是本发明实施例提供的第五种配置模块的结构示意图;
图21是本发明实施例提供的另一种流量控制装置结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明
实施方式作进一步地详细描述。
图1是本发明实施例提供的一种流量控制方法所涉及的实施环境的示意图。
参见图1,该实施环境可以包括:主机101、主机102、交换机103和路由器104。
主机101和主机102可以为服务器、终端等进行网络通信的设备。主机101和
主机102用于传输数据报文,交换机103和路由器104用于对传输的数据报文
进行处理。而本发明实施例中进行流量控制的设备为报文交换设备,该报文交
换设备可以为交换机103和/或路由器104,当然,该报文交换设备也可以为防
火墙设备,且该防火墙设备可以设置在交换机103或路由器104上,本发明实
施例对此不做具体限定。
在对本发明实施例进行详细地解释说明之前,先对本发明实施例的应用场
景予以介绍。目前,如果两个主机之间需要进行通信,则这两个主机之间需要
通过报文交换设备进行数据报文的传输。而当具有保密性的网络资源禁止被一
些主机所访问时,该报文交换设备可以对传输的数据报文进行处理,从而实现
流量控制。由于通过ACL进行流量控制时,ACL中存储的多条规则和该多条规
则在ACL中的存储顺序都是由管理员手动进行配置,并且实际应用中,ACL中
存储的规则的数量非常大,而且管理员的数量可能也很多,以及规则的配置时
间周期可能也会很长,因此,随着管理员对规则的不断更新,管理员很难发现
冗余规则和无效规则的存在,从而导致报文交换设备实际控制流量的效果与管
理员的期望不同。所以,本发明实施例提供了一种流量控制方法,从而可以避
免冗余规则和无效规则,提高流量控制的准确性。
图2是本发明实施例提供的一种流量控制方法流程图。参见图2,该方法用
于报文交换设备中,包括:
步骤201:基于存储的多个地址信息分别所属主机的属性信息,将该多个地
址信息划分为至少两个安全组,该属性信息包括业务类型或者安全等级。
步骤202:对该至少两个安全组进行校验处理,使校验处理后的安全组中级
别高的安全组可完全包含级别低的安全组且属于同一级别的安全组之间完全独
立不重叠,该级别用于指示安全组为父组、子组还是独立的安全组。
步骤203:接收策略配置指令,该策略配置指令中携带指定源组、指定目的
组和指定动作指示符,指定源组和指定目的组为该校验处理后的安全组中的两
个不同的安全组。
步骤204:基于该策略配置指令,配置指定规则,以及配置指定规则的存储
顺序,指定规则为待配置的至少两个规则中的任一规则。
步骤205:在该至少两个规则配置完成之后,接收数据报文,该数据报文中
携带源地址信息和目的地址信息。
步骤206:基于该至少两个规则和该至少两个规则的存储顺序,对该数据报
文进行处理,以实现流量控制。
在本发明实施例中,将存储的多个地址信息按照所属主机的属性信息划分
为至少两个安全组,并对该至少两个安全组进行校验处理,使校验处理后的安
全组中级别高的安全组可完全包含级别低的安全组且属于同一级别的安全组之
间完全独立不重叠,进而接收策略配置指令,该策略配置指令中携带指定源组、
指定目的组和指定动作指示符,并基于该策略配置指令,配置指定规则,以及
配置指定规则的存储顺序,从而可以避免冗余规则和无效规则的出现,提高流
量控制的准确性。另外,当接收到数据报文时,按照规则的存储顺序,对该数
据报文进行处理,减少了规则匹配时间,提高了流量控制的效率。
可选地,该对该至少两个安全组进行校验处理,包括:
判断第一安全组与多个第二安全组之间是存在包含关系还是重叠关系,该
第一安全组为该至少两个安全组中未进行校验处理的安全组,该多个第二安全
组为该至少两个安全组中已进行校验处理后的安全组,该包含关系是指该第一
安全组为该第二安全组的子集,或者该第二安全组为该第一安全组的子集,该
重叠关系是指该第一安全组和该第二安全组之间存在交集且该第一安全组和该
第二安全组不相等;
如果该第一安全组与该多个第二安全组中的至少两个第二安全组之间存在
包含关系,则从该至少两个第二安全组中,确定一个安全组作为第三安全组;
显示第一确认提示信息,该第一确认提示信息用于提示管理员对该第一安
全组与该第三安全组之间的包含关系进行处理;
如果基于该第一确认提示信息接收到第一处理指令,则基于该第一处理指
令,对该第一安全组和该第三安全组进行包含关系处理。
可选地,该从该至少两个第二安全组中,确定一个安全组作为第三安全组,
包括:
如果该第一安全组被该至少两个第二安全组中的所有安全组所包含,则从
该至少两个第二安全组中,选择地址范围最小的安全组;
如果该第一安全组包含该至少两个第二安全组中的所有安全组,则从该至
少两个第二安全组组中,选择地址范围最大的安全组;
如果该第一安全组被该至少两个第二安全组中的至少一个第二安全组所包
含且该第一安全组还包含该至少两个第二安全组中剩余的第二安全组,则从该
至少一个第二安全组中选择地址范围最小的安全组,或者从该剩余的第二安全
组中选择地址范围最大的安全组;
将选择的安全组确定为该第三安全组。
可选地,该基于该第一处理指令,对该第一安全组和该第三安全组进行包
含关系处理,包括:
将该第一安全组和该第三安全组中地址范围大的安全组确定为第四安全
组,并将该第一安全组和该第三安全组中地址范围小的安全组确定为第五安全
组;
如果该第一处理指令为第一分裂指令,则将该第四安全组中与该第五安全
组相同的地址信息去除,得到第一子安全组;
如果该第一处理指令为继承指令,则设置该第五安全组为次级安全组,并
设置该第五安全组为该第四安全组的子组,该次级安全组为与该校验处理后的
安全组中的其他安全组之间存在包含关系的安全组。
可选地,该判断第一安全组与多个第二安全组之间是存在包含关系还是重
叠关系之后,还包括:
如果该第一安全组与该多个第二安全组中的至少两个第二安全组之间存在
重叠关系,则从该至少两个第二安全组中,选择一个安全组作为第六安全组;
显示第二确认提示信息,该第二确认提示信息用于提示该管理员对该第一
安全组与该第六安全组之间的重叠关系进行处理;
如果基于该第二确认提示信息接收到第二处理指令,则基于该第二处理指
令,对该第一安全组和该第六安全组进行重叠关系处理。
可选地,该基于该第二处理指令,对该第一安全组和该第六安全组进行重
叠关系处理,包括:
如果该第二处理指令为保留旧组指令,则将该第一安全组中与该第六安全
组相同的地址信息划分为第二子安全组,将该第一安全组中除该第二子安全组
之外剩余的地址信息划分为第三子安全组;
将该第二子安全组设置为次级安全组,并设置该第二子安全组为该第六安
全组的子组。
可选地,该基于该第二处理指令,对该第一安全组和该第六安全组进行重
叠关系处理,包括:
如果该第二处理指令为保留新组指令,则将该第六安全组中与该第一安全
组相同的地址信息划分为第四子安全组,将该第六安全组中除该第四子安全组
之外剩余的地址信息划分为第五子安全组;
将该第四子安全组设置为次级安全组,并设置该第四子安全组为该第一安
全组的子组。
可选地,该基于该第二处理指令,对该第一安全组和该第六安全组进行重
叠关系处理,包括:
如果该第二处理指令为第二分裂指令,则将该第一安全组和该第六安全组
中相同的地址信息、该第一安全组中除与该第六安全组相同的地址信息之外剩
余的地址信息和该第六安全组中除与该第一安全组相同的地址信息之外剩余的
地址信息分别划分为三个安全组。
可选地,其特征在于,该基于该策略配置指令,配置指定规则,包括:
如果指定源组与指定目的组均为一级安全组,则基于指定源组、指定目的
组和指定动作指示符,配置指定规则,该一级安全组为与该校验处理后的安全
组中的其他安全组之间不存在包含关系且不存在重叠关系的独立安全组。
可选地,该基于该策略配置指令,配置指定规则,以及配置指定规则的存
储顺序,包括:
如果指定源组或者指定目的组为次级安全组,则判断是否已配置第一规则,
该第一规则为指定源组的父组与指定目的组之间的规则、指定源组与指定目的
组的父组之间的规则、或者指定源组的父组与指定目的组的父组之间的规则;
如果已配置该第一规则,则判断指定动作指示符与该第一规则包括的动作
指示符是否相同;
如果指定动作指示符与该第一规则包括的动作指示符相同,则禁止配置指
定规则。
可选地,该判断指定动作指示符与该第一规则包括的动作指示符是否相同
之后,还包括:
如果指定动作指示符与该第一规则包括的动作指示符冲突,则基于指定源
组、指定目的组和指定动作指示符,配置指定规则;
设置指定规则的存储顺序位于该第一规则之前。
可选地,该禁止配置指定规则之后,还包括:
显示禁止配置提示信息,以提示该管理员禁止配置指定规则且指定规则为
冗余规则。
可选地,该基于该策略配置指令,配置指定规则,以及配置指定规则的存
储顺序,包括:
如果指定源组为次级安全组且指定目的组为第七安全组的父组,或者指定
源组为第八安全组的父组且指定目的组为次级安全组,则判断是否已配置第二
规则,当指定源组为次级安全组且指定目的组为第七安全组的父组时,该第二
规则为指定源组的父组与指定目的组之间的规则、或者指定源组与该第七安全
组之间的规则;当指定源组为第八安全组的父组且指定目的组为次级安全组时,
该第二规则为指定源组与指定目的组之间的规则、或者该第八安全组与指定目
的组的父组之间的规则,该第七安全组和该第八安全组为该校验处理后的安全
组中的任一安全组;
如果已配置该第二规则,则判断指定动作指示符与该第二规则包括的动作
指示符是否相同;
如果指定动作指示符与该第二规则包括的动作指示符相同,则基于指定源
组、指定目的组和指定动作指示符,配置指定规则。
可选地,该判断指定动作指示符与该第二规则包括的动作指示符是否相同
之后,还包括:
如果指定动作指示符与该第二规则包括的动作指示符冲突,则显示策略冲
突提示信息,以提示该管理员设置指定规则和该第二规则的存储顺序;
当接收到该管理员的排序操作时,基于该排序操作,设置指定规则与该第
二规则的存储顺序。
上述所有可选技术方案,均可按照任意结合形成本发明的可选实施例,本
发明实施例对此不再一一赘述。
图3是本发明实施例提供的一种流量控制方法流程图。参见图3,该方法包
括:
在报文交换设备进行流量控制之前,需要配置进行流量控制的至少两个规
则和该至少两个规则的存储顺序,而该至少两个规则和该至少两个规则的存储
顺序的配置方法可以包括如下步骤301至步骤303。
步骤301:基于存储的多个地址信息分别所属主机的属性信息,将该多个地
址信息划分为至少两个安全组,该属性信息包括业务类型或者安全等级。
其中,存储的多个地址信息可以为需要进行流量控制的地址信息,且该地
址信息不仅可以包括IP地址,当然,该地址信息还可以包括端口号,本发明实
施例对此不做具体限定。并且报文交换设备将该多个地址信息划分为多个安全
组时,可以获取每个地址信息所属主机的业务类型,基于获取的业务类型,将
该多个地址信息划分为至少两个安全组,使划分后的每个安全组包括同一业务
类型对应的地址信息。当然,实际应用中,报文交换设备还可以通过其他的方
式划分安全组,比如,还可以通过每个地址信息所属主机的安全等级进行划分,
本发明实施例对此不做具体限定。
需要说明的是,在本发明实施例中,主机可以为服务器、终端等进行网络
通信的设备,本发明实施例对此不做具体限定。
步骤302:对该至少两个安全组进行校验处理,使校验处理后的安全组中级
别高的安全组可完全包含级别低的安全组且属于同一级别的安全组之间完全独
立不重叠,该级别用于指示安全组为父组、子组还是独立的安全组。
在配置进行流量控制的规则时,由于冗余规则和无效规则在流量控制中没
有发挥任何作用,因此,为了避免冗余规则和无效规则的出现,可以对该至少
两个安全组进行校验处理,如图4所示,对该至少两个安全组进行校验处理可
以包括如下步骤3021至步骤3026:
步骤3021、判断第一安全组与多个第二安全组之间是存在包含关系还是重
叠关系,如果第一安全组与该多个第二安全组中的至少两个第二安全组之间存
在包含关系,则执行步骤3022,如果第一安全组与该多个第二安全组中的至少
两个第二安全组之间存在重叠关系,则执行步骤3025,第一安全组为该至少两
个安全组中未进行校验处理的安全组,该多个第二安全组为该至少两个安全组
中已进行校验处理后的安全组,该包含关系是指第一安全组为第二安全组的子
集,或者第二安全组为第一安全组的子集,该重叠关系是指第一安全组和第二
安全组之间存在交集且第一安全组和第二安全组不相等。
由于每个安全组中均包括至少一个地址信息,因此,如果判断第一安全组
与该多个第二安全组之间是否存在包含关系,则可以基于第一安全组包括的地
址信息,确定第一安全组的地址范围,以及基于该多个第二安全组包括的地址
信息,分别确定该多个第二安全组的地址范围,将第一安全组的地址范围分别
与该多个第二安全组的地址范围进行比较,如果第一安全组的地址范围包含该
多个第二安全组中的至少两个第二安全组的地址范围,或者该多个第二安全组
中的至少两个第二安全组的地址范围包含第一安全组的地址范围,又或者第一
安全组的地址范围被该至少两个第二安全组中的至少一个第二安全组的地址范
围所包含且第一安全组的地址范围还包含该至少两个第二安全组中剩余的第二
安全组的地址范围,则确定第一安全组与该多个第二安全组之间存在包含关系,
否则,确定第一安全组与该多个第二安全组之间不存在包含关系。而如果第一
安全组的地址范围与该多个第二安全组中的至少两个第二安全组的地址范围存
在交集且第一安全组的地址范围与该至少两个第二安全组不相等,则确定第一
安全组与该多个第二安全组之间存在重叠关系,否则,确定第一安全组与该多
个第二安全组之间不存在重叠关系。
比如,第一安全组的地址范围为10.1.1.0~10.1.1.255,该多个第二安全组分
别为安全组A和安全组B,且安全组A的地址范围为10.1.1.0~10.1.1.127,安全
组B的地址范围为10.1.1.0~10.1.1.32,由于第一安全组的地址范围
10.1.1.0~10.1.1.255包含安全组A的地址范围10.1.1.0~10.1.1.127,且第一安全组
的地址范围还包含安全组B的地址范围10.1.1.0~10.1.1.32,所以,第一安全组
与该多个第二安全组之间存在包含关系。
再比如,第一安全组的地址范围为10.1.1.3/32、10.1.1.4/32和10.1.1.5/32,
该多个第二安全组分别为安全组A和安全组B,且安全组A的地址范围为
10.1.1.5/32和10.1.1.6/32,安全组B的地址范围为10.1.1.3/32、10.1.1.5/32和
10.1.1.6/32,由于第一安全组与安全组A以及安全组B存在交集地址10.1.1.5/32,
且第一安全组的地址范围与安全组A的地址范围不相等,第一安全组的地址范
围与安全组B的地址范围也不相等,所以,第一安全组与该多个第二安全组之
间存在重叠关系。
需要说明的是,安全组的地址范围为该安全组包括的地址信息所覆盖的范
围,本发明实施例对此不做具体限定。
另外,配置进行流量控制的至少两个规则和该至少两个规则的存储顺序的
设备可以为报文交换设备,当然,还可以为除报文交换设备之外的设备,而在
本发明实施例中将配置该至少两个规则和该至少两个规则的存储顺序的设备为
报文交换设备进行说明,且报文交换设备可以为交换机、路由器等网络设备,
本发明实施例对此不做具体限定。
步骤3022、从该至少两个第二安全组中,确定一个安全组作为第三安全组,
并显示第一确认提示信息,第一确认提示信息用于提示管理员对第一安全组与
第三安全组之间的包含关系进行处理。
如果第一安全组与该多个第二安全组中的至少两个第二安全组之间存在包
含关系,由于对该包含关系进行处理的方式可以包括多种,且该至少两个第二
安全组之间可能也会存在包含关系,因此,为了达到管理员进行流量控制的要
求,报文交换设备可以从该至少两个第二安全组中,确定一个安全组作为第三
安全组,并显示第一确认提示信息,使管理员基于第一确认提示信息对该包含
关系进行处理。
比如,第一安全组为安全组C,第三安全组为安全组A,报文交换设备可
以显示如图5所示的第一确认提示信息,在该第一确认提示信息中可以包括分
裂按钮和继承按钮,当管理员点击分裂按钮时,可以触发第一分裂指令,第一
分裂指令用于将一个安全组分裂为两个子安全组,而当管理员点击继承按钮时,
可以触发继承指令,该继承指令用于将一个安全组设置为另一个安全组的子组。
其中,报文交换设备从该至少两个第二安全组中,确定一个安全组作为第
三安全组的操作可以为:如果第一安全组被该至少两个第二安全组中的所有安
全组所包含,则从该至少两个第二安全组中,选择地址范围最小的安全组;如
果第一安全组包含该至少两个第二安全组中的所有安全组,则从该至少两个第
二安全组中,选择地址范围最大的安全组;而如果第一安全组被该至少两个第
二安全组中的至少一个第二安全组所包含且第一安全组还包含该至少两个第二
安全组中剩余的第二安全组,则从该至少一个第二安全组中选择地址范围最小
的安全组,或者从该至少两个第二安全组中除该至少一个第二安全组之外剩余
的第二安全组中选择地址范围最大的安全组;将选择的安全组确定为第三安全
组。
比如,第一安全组包含该至少两个第二安全组中的所有安全组,且第一安
全组的地址范围为10.1.1.0~10.1.1.255,该至少两个第二安全组分别为安全组A
和安全组B,且安全组A的地址范围为10.1.1.0~10.1.1.127,安全组B的地址范
围为10.1.1.0~10.1.1.32。由于安全组A的地址范围大于安全组B的地址范围,
所以,从该至少两个第二安全组中,选择安全组A,并将安全组A确定为第三
安全组。
进一步地,当第一安全组与该多个第二安全组之间不存在包含关系且不存
在重叠关系时,则直接将第一安全组设置为一级安全组,一级安全组为与校验
处理后的安全组中的其他安全组之间不存在包含关系且不存在重叠关系的独立
安全组。
步骤3023、如果基于第一确认提示信息接收到第一处理指令,则将第一安
全组和第三安全组中地址范围大的安全组确定为第四安全组,并将第一安全组
和第三安全组中地址范围小的安全组确定为第五安全组。
由于第一安全组与第三安全组之间存在包含关系,为了对该包含关系进行
处理,报文交换设备需要从第一安全组和第三安全组中,确定一个安全组作为
第四安全组,将第一安全组和第三安全组中的另一个安全组作为第五安全组,
而确定第四安全组和第五安全组时,报文交换设备可以基于第一安全组的地址
范围和第三安全组的地址范围,选择地址范围较大的安全组,将选择的安全组
确定为第四安全组,将未选择的安全组确定为第五安全组。
比如,如图6所示,安全组C和安全组A之间存在包含关系,且安全组C
的地址范围为10.1.1.0~10.1.1.255,安全组A的地址范围为10.1.1.0~10.1.1.127,
则安全组C包含安全组A,所以可以选择地址范围较大的安全组C,并将选择
的安全组C确定为第四安全组,将未选择的安全组A确定为第五安全组。
需要说明的是,第一处理指令可以包括第一分裂指令和继承指令,且第一
处理指令可以由管理员触发,该管理员可以通过指定操作触发,指定操作可以
包括点击对应按钮的操作,还可以包括滑动操作、语音操作等等,本发明实施
例对此不做具体限定。
步骤3024、如果第一处理指令为第一分裂指令,则将第四安全组中与第五
安全组相同的地址信息去除,得到第一子安全组;如果第一处理指令为继承指
令,则设置第五安全组为次级安全组,并设置第五安全组为第四安全组的子组,
次级安全组为与校验处理后的安全组中的其他安全组之间存在包含关系的安全
组。
需要说明的是,当第一处理指令为分裂指令时,如果第四安全组为第三安
全组,由于第一子安全组为第四安全组中除与第五安全组相同的地址信息之外
剩余的地址信息,因此,可以设置第一子安全组的级别与第四安全组的级别相
同。
其中,设置第五安全组为第四安全组的子组,也即是,设置第四安全组为
第五安全组的父组,此时,第四安全组和第五安全组之间的关系为父组与子组
的关系,且子组可以继承父组所在的规则,减少了管理员的重复配置操作,提
高了规则和规则存储顺序配置的效率。
比如,如图7(a)所示,安全组C包含安全组A,且安全组C的地址范围
为10.1.1.0~10.1.1.255,安全组A的地址范围为10.1.1.0~10.1.1.127,如果第一处
理指令为第一分裂指令,则报文交换设备可以将安全组C中与安全组A相同的
地址信息去除,得到第一子安全组a1,该第一子安全组a1的地址范围为
10.1.1.128~10.1.1.255。
再比如,如图7(b)所示,如果第一处理指令为继承指令,则该报文交换
设备可以设置安全组A为次级安全组,并设置安全组A为安全组C的子组。
进一步地,在第一处理指令为第一分裂指令的情况下,如果第四安全组为
第一安全组,则报文交换设备将第四安全组中与第五安全组相同的地址信息去
除,得到第一子安全组之后,该报文交换设备还可以将第一子安全组存储到该
多个第二安全组中,以更新该多个第二安全组。而如果第四安全组为第三安全
组,则报文交换设备可以将该多个第二安全组中的第三安全证替换为第一子安
全组,以更新该多个第二安全组。而在第一处理指令为继承指令的情况下,如
果第四安全组为第一安全组,则报文交换设备可以直接将第四安全组存储到该
多个第二安全组中,以更新该多个第二安全组。如果第四安全组为第三安全组,
则报文交换设备可以将第五安全组储到该多个第二安全组中,以更新该多个第
二安全组。
需要说明的是,如果第一安全组被该至少两个第二安全组中的至少一个第
二安全组所包含且第一安全组还包含该至少两个第二安全组中的剩余的第二安
全组,当报文交换设备基于第一处理指令,对第一安全组和第三安全组进行包
含关系处理之后,该报文交换设备还可以将包含关系处理之后的安全组作为第
一安全组,重新返回执行上述步骤3021。
步骤3025、从该至少两个第二安全组中,选择一个安全组作为第六安全组,
并显示第二确认提示信息,第二确认提示信息用于提示管理员对第一安全组与
第六安全组之间的重叠关系进行处理。
具体地,判断该至少两个第二安全组之间是否存在包含关系,如果该至少
两个第二安全组之间存在包含关系,则可以从该至少两个第二安全组中,选择
地址范围最小的第二安全组,将选择的第二安全组确定为第六安全组。而如果
该至少两个第二安全组之间不存在包含关系,则该报文交换设备可以从该至少
两个第二安全组中,随机选择一个第二安全组,并将选择的第二安全组确定为
第六安全组。
比如,该至少两个第二安全组分别为安全组A和安全组B,安全组A的地
址范围为10.1.1.5/32和10.1.1.6/32,安全组B的地址范围为10.1.1.3/32、
10.1.1.5/32和10.1.1.6/32,则安全组B包含安全组A,因此,可以选择地址范围
最小的安全组A,并将安全组A确定为第六安全组。
步骤3026、如果基于第二确认提示信息接收到第二处理指令,则基于第二
处理指令,对第一安全组和第六安全组进行重叠关系处理。
需要说明的是,第二处理指令可以包括保留旧组指令、保留新组指令或者
第二分裂指令,且第二处理指令可以由管理员触发,该管理员可以通过指定操
作触发,本发明实施例对此不做具体限定。
其中,由于第二处理处理指令包括保留旧组指令、保留新组指令或者第二
分裂指令,因此,对该重叠关系进行处理的方式可以包括三种,进而基于第二
处理指令,对第一安全组和第六安全组进行重叠关系处理时可以包括如下三种
情况:
第一种情况、如果第二处理指令为保留旧组指令时,则将第一安全组中与
第六安全组相同的地址信息划分为第二子安全组,将第一安全组中除第二子安
全组之外剩余的地址信息划分为第三子安全组;将第二子安全组设置为次级安
全组,并设置第二子安全组为第六安全组的子组。
需要说明的是,保留旧组指令用于保留第六安全组的完整性,并将第一安
全组进行分裂。
比如,如图8(a)所示,第一安全组为安全组C,且安全组C的地址范围
为10.1.1.3/32、10.1.1.4/32和10.1.1.5/32,第六安全组为安全组A,且安全组A
的地址范围为10.1.1.5/32和10.1.1.6/32,当第二处理指令为保留旧组指令时,将
安全组C中与安全组A相同的地址信息划分为第二子安全组a2,第二子安全组
a2的地址范围为10.1.1.5/32,将安全组C中除第二子安全组a2之外剩余的地址
信息划分为第三子安全组a3,第三子安全组a3的地址范围为10.1.1.3/32和
10.1.1.4/32,将第二子安全组a2设置为次级安全组,并设置第二子安全组a2为
第六安全组A的子组。
进一步地,该报文交换设备还可以基于第二子安全组、第三子安全组和第
六安全组,更新该多个第二安全组,具体为:将第二子安全组和第三子安全组
进行存储在该多个第二安全组中,以更新该多个第二安全组。
第二种情况、如果第二处理指令为保留新组指令,则将第六安全组中与第
一安全组相同的地址信息划分为第四子安全组,将第六安全组中除第四子安全
组之外剩余的地址信息划分为第五子安全组;将第四子安全组设置为次级安全
组,并设置第四子安全组为第一安全组的子组。
其中,第五子安全组为第六安全组中除与第一安全组相同的地址信息之外
剩余的地址信息组成,因此,可以设置第五子安全组与第六安全组的级别相同。
需要说明的是,保留新组指令用于保留第一安全组的完整性,并将第六安
全组进行分裂。
比如,如图8(b)所示,第一安全组为安全组C,且安全组C的地址范围
为10.1.1.3/32、10.1.1.4/32和10.1.1.5/32,第六安全组为安全组A,且安全组A
的地址范围为10.1.1.5/32和10.1.1.6/32,如果第二处理指令为保留新组指令,则
将安全组A中与安全组C相同的地址信息划分为第四子安全组c1,第四子安全
组c1的地址范围为10.1.1.5/32,将安全组A中除第四子安全组c1之外剩余的地
址信息划分为第五子安全组,第五子安全组的地址范围为10.1.1.6/32,将第四子
安全组c1设置为次级安全组,并设置第四子安全组c1为安全组C的子组。
进一步地,该报文交换设备还可以基于第四子安全组、第五子安全组和第
一安全组,更新该多个第二安全组,具体为:将该多个第二安全组中的第六安
全组替换为第四子安全组和第五子安全组,且将第一安全组存储在该多个第二
安全组中,以更新该多个第二安全组。
第三种情况、如果第二处理指令为第二分裂指令,则将第一安全组和第六
安全组中相同的地址信息、第一安全组中除与第六安全组相同的地址信息之外
剩余的地址信息和第六安全组中除与第一安全组相同的地址信息之外剩余的地
址信息分别划分为三个安全组。
需要说明的是,第二分裂指令用于将第一安全组和第六安全组中相同的地
址信息、第一安全组中除与第六安全组相同的地址信息之外剩余的地址信息和
第六安全组中除与第一安全组相同的地址信息之外剩余的地址信息分别划分为
三个安全组。
比如,如图8(c)所示,第一安全组为安全组C,且安全组C的地址范围
为10.1.1.3/32、10.1.1.4/32和10.1.1.5/32,第六安全组为安全组A,且安全组A
的地址范围为10.1.1.5/32和10.1.1.6/32,如果第二处理指令为第二分裂指令,则
将安全组A和安全组C中相同的地址信息、第一安全组A中与第六安全组相同
的地址信息之外剩余的地址信息和第六安全组C中除与第一安全组相同的地址
信息之外剩余的地址信息分别划分为三个安全组,该三个安全组分别为安全组
D、E和F,且安全组D的地址范围为10.1.1.5/32,安全组E的地址范围为
10.1.1.3/32和10.1.1.4/32,安全组F的地址范围为10.1.1.6/32。
进一步地,该报文交换设备还可以基于划分的该三个安全组,更新该多个
第二安全组,具体为:将该多个第二安全组中的第六安全组替换为该三个安全
组,以更新该多个第二安全组。
进一步地,在本发明实施例中,报文交换设备不仅可以通过上述三种情况,
对第一安全组与第六安全组之间的重叠关系进行处理,当然,实际应用中,该
报文交换设备还可以通过其他方式进行处理,比如,该报文交换设备可以将第
一安全组中与第六安全组相同的地址信息删除,或者,该报文交换设备也可以
将第六安全组中与第一安全组相同的地址信息删除,本发明实施例对此不做具
体限定。
需要说明的是,当该至少两个第二安全组之间不存在包含关系时,该报文
交换设备从该至少两个第二安全组中,随机选择一个第二安全组作为第六安全
组之后,当报文交换设备基于第二处理指令,对第一安全组和第六安全组进行
重叠关系处理之后,该报文交换设备还可以将重叠关系处理之后的安全组作为
第一安全组,重新返回执行上述步骤3021。
步骤303:接收策略配置指令,该策略配置指令中携带指定源组、指定目的
组和指定动作指示符,基于该策略配置指令,配置指定规则,以及配置指定规
则的存储顺序,指定规则为待配置的至少两个规则中的任一规则。
当通过上述步骤301对划分的至少两个安全组进行校验处理之后,保证校
验处理后的安全组中级别高的安全组可完全包含级别低的安全组且属于同一级
别的安全组之间完全独立不重叠,因此,报文交换设备可以显示校验处理后的
安全组,当该报文交换设备基于显示的安全组接收到源组选择指令时,将该源
组选择指令携带的安全组确定为指定源组,当该报文交换设备基于显示的安全
组接收到目的组选择指令时,将该目的组选择指令携带的安全组确定为指定目
的组。
需要说明的是,源组选择指令用于从显示的安全组中选择指定源组,目的
组选择指令用于从显示的安全组中选择指定目的组,策略配置指令用于对指定
源组和指定目的组配置指定策略,从而生成指定规则,且源组选择指令、目的
组选择指令和策略配置指令均可由管理员触发,该管理员可以通过指定操作触
发,本发明实施例对此不做具体限定。
由于指定源组和指定目的组之间的关系不仅可以为相互独立的安全组,还
可以为子组与父组的关系,因此,基于指定源组、指定目的组和指定动作指示
符,配置指定规则,以及配置指定规则的存储顺序的方法可以包括如下三种情
况,包括:
第一种情况、当指定源组与指定目的组均为一级安全组时,基于指定源组、
指定目的组和指定动作指示符,配置指定规则,并配置指定规则的存储顺序。
其中,当指定源组与指定目的组均为一级安全组时,确定指定源组与指定
目的组为相互独立的安全组,不会存在冗余规则或者无效规则的现象,此时,
该报文交换设备可以直接基于指定源组、指定目的组和指定动作指示符,配置
指定规则,并配置指定规则的存储顺序。
比如,安全组E的地址范围为10.1.1.0/24,安全组F的地址范围为
10.1.2.0/24,安全组E和安全组F均为一级安全组,则管理员可以配置指定规则,
该指定规则中指定源组为安全组E,目的组为安全组F,动作指示符为禁止,表
明禁止安全组E内的地址访问安全组F内的地址。
需要说明的是,由于相互独立的安全组构成的规则之间也是独立的,而相
互独立的规则之间不存在顺序关系,也即是,相互独立的规则的存储顺序对流
量控制不会产生影响,因此,在本发明实施例中不仅可以基于指定规则的配置
时间,配置指定规则的存储顺序,当然,实际应用中还可以通过其他的方式来
配置指定规则的存储顺序,比如随机顺序等等,本发明实施例对此不做具体限
定。
第二种情况、如果指定源组或者指定目的组为次级安全组,则判断是否已
配置第一规则,第一规则为指定源组的父组与指定目的组之间的规则、指定源
组与指定目的组的父组之间的规则、或者指定源组的父组与指定目的组的父组
之间的规则;如果已配置第一规则,则判断指定动作指示符与第一规则包括的
动作指示符是否相同;如果指定动作指示符与第一规则包括的动作指示符相同,
则禁止配置指定规则。
例如,安全组E的地址范围为10.1.1.0/25,安全组E的父组安全组M的地
址范围为10.1.1.0/24,安全组F的地址范围为10.1.2.0/25,安全组F的父组安全
组N的地址范围为10.1.2.0/24。当管理员配置安全组E到安全组F的指定规则
时,判断是否已配置第一规则,该第一规则为安全组E与安全组N之间的规则、
安全组M与安全组F之间的规则、安全组M与安全组N之间的规则,如果已
配置第一规则,则判断指定动作指示符与第一规则包括的动作指示符是否相同,
如果指定动作指示符与第一规则包括的动作指示符相同,则禁止配置指定规则。
可选地,当报文交换设备确定指定动作指示符与第一规则包括的动作指示
符相同时,确定指定规则为冗余规则,进而可以显示禁止配置提示信息,以提
示管理员禁止配置指定规则且指定规则为冗余规则。
进一步地,如果指定动作指示符与第一规则包括的动作指示符冲突,则基
于指定源组、指定目的组和指定动作指示符,配置指定规则;设置指定规则的
存储顺序位于第一规则之前。在本申请实施例中,是以存储顺序在前的规则具
有高优先级为例进行说明的。这是为了与现有ACL中规则的匹配方式实现更佳
的兼容性。
其中,如果已配置第一规则且指定动作指示符与第一规则包括的动作指示
符相同,由于指定规则的地址范围小于第一规则的地址范围,且指定规则的地
址范围包含于第一规则的地址范围内,因此,确定指定动作指示符所在的指定
规则与第一规则的地址范围会存在重叠,进而可以确定指定规则为冗余规则。
而如果已配置第一规则且指定动作指示符与第一规则包括的动作指示符冲突,
由于指定规则的地址范围小于第一规则的地址范围,因此,需要设置指定规则
的存储顺序位于第一规则之前,否则,指定规则就是无效规则。
可选地,设置指定规则的存储顺序位于第一规则之前后,还可以显示顺序
提示信息,以提示管理员指定规则的存储顺序位于第一规则之前。
第三种情况、如果指定源组为次级安全组且指定目的组为第七安全组的父
组,或者指定源组为第八安全组的父组且指定目的组为次级安全组时,则判断
是否已配置第二规则,当指定源组为次级安全组且指定目的组为第七安全组的
父组时,第二规则为指定源组的父组与指定目的组之间的规则、或者指定源组
与第七安全组之间的规则;当指定源组为第八安全组的父组且指定目的组为次
级安全组时,第二规则为指定源组与指定目的组之间的规则、或者第八安全组
与指定目的组的父组之间的规则,第七安全组和第八安全组为校验处理后安全
组中的任一安全组;如果已配置第二规则,则判断指定动作指示符与第二规则
包括的动作指示符是否相同;如果指定动作指示符与第二规则包括的动作指示
符相同,则基于指定源组、指定目的组和指定动作指示符,配置指定规则,并
配置指定规则的存储顺序。
例如,安全组E的地址范围为10.1.1.0/25,安全组E的父组安全组M的地
址范围为10.1.1.0/24,安全组F的地址范围为10.1.2.0/25,安全组F的父组安全
组N的地址范围为10.1.2.0/24。当管理员配置安全组E到安全组N的指定规则
时,判断是否已配置第二规则,该第二规则为安全组M与安全组N之间的规则、
或者安全组E与安全组F之间的规则,如果已配置第二规则,则判断指定动作
指示符与第二规则包括的动作指示符是否相同,如果指定动作指示符与第二规
则包括的动作指示符相同,则基于安全组E、安全组N和指定动作指示符,配
置指定规则,并配置指定规则的存储顺序。
进一步地,如果指定动作指示符与第二规则包括的动作指示符冲突,则显
示策略冲突提示信息,以提示管理员设置指定规则和第二规则的存储顺序;当
接收到管理员的排序操作时,基于该排序操作,设置指定规则与第二规则的存
储顺序。
如果指定动作指示符与第二规则包括的动作指示符相同,则确定指定规则
与第二规则之间也是相互独立的规则,因此,在本发明实施例中不仅可以基于
指定规则的配置时间,配置指定规则的存储顺序,当然,实际应用中还可以通
过其他的方式来配置指定规则的存储顺序,比如随机顺序等等,本发明实施例
对此不做具体限定。
需要说明的是,通过上述步骤配置至少两个规则时,每个规则中的源组和
目的组不仅可以包括一些指定的地址信息,当然,还可以包括所有的地址信息,
也即是,每个规则中的源组和目的组不仅可以对地址信息进行限定,当然,也
可以不需要限定进行流量控制的地址信息,将任何地址信息都包括在内,本发
明实施例对此不做具体限定。
其中,基于上述步骤301至步骤303配置至少两个规则和该至少两个规则
的存储顺序之后,可以基于配置的至少两个规则和该至少两个规则的存储顺序,
通过如下步骤304至步骤305的方法进行流量控制。
步骤304:在该至少两个规则配置完成之后,接收数据报文,该数据报文中
携带源地址信息和目的地址信息。
当两个主机之间进行通信且通信的数据报文通过该报文交换设备进行传输
时,该报文交换设备可以接收该数据报文,并基于该数据报文进行流量控制。
需要说明的是,源地址信息为该数据报文的发送主机的地址信息,目的地
址信息为最终接收该数据报文的主机的地址信息,且源地址信息和目的地址信
息均可以包括IP地址,当然,该源地址信息和目的地址信息还可以包括IP地址
和端口号,本发明实施例对此不做具体限定。
步骤305:基于该至少两个规则和该至少两个规则的存储顺序,对该数据报
文进行处理,以实现流量控制。
按照该至少两个规则的存储顺序,将该数据报文携带的源地址信息和目的
地址信息,依次与该至少两个规则进行比较,如果当前比较的规则与该数据报
文中携带的源地址信息和目的地址信息相同,则将当前比较的规则确定为目标
规则,否则,按照该至少两个规则的存储顺序,将该至少两个规则中的下一个
规则与该数据报文携带的源地址信息和目的地址信息比较,直至确定目标规则
为止。之后,该报文交换设备可以基于目标规则包括的动作指示符,对该数据
报文进行处理,以实现流量控制。
其中,动作指示符一般包括阻断或者通过,因此,当目标规则包括的动作
指示符为阻断时,该报文交换设备可以丢弃该数据报文,不将该数据报文进行
发送;而当目标规则包括的动作指示符为通过时,该报文交换设备可以继续将
该数据报文进行发送。当然,实际应用中,动作指示符还可以包括其他的策略,
本发明实施例对此不再一一列出。
需要说明的是,当规则中包括的源组为指定的一些地址信息,而目的组包
括所有的地址信息时,例如规则中目的组字段的内容为“any”,确定在进行流
量控制时不对数据报文的目的地址信息进行限定,再同理,当规则中包括的源
组包括所有的地址信息,例如规则中源组字段的内容为“any”,而目的组包括
指定的一些地址信息时,确定在进行流量控制时不对数据报文的源地址信息进
行限定。而当规则中包括的源组和目的组均包括一些指定的地址信息时,确定
在进行流量控制时不仅要对数据报文的源地址信息进行限定,还要对数据报文
的目的地址信息进行限定。
在本发明实施例中,将存储的多个地址信息按照所属主机的属性信息划分
为至少两个安全组,并对该至少两个安全组进行校验处理,使校验处理后的安
全组中级别高的安全组可完全包含级别低的安全组且属于同一级别的安全组之
间完全独立不重叠,并且在配置规则的过程中,基于指定源地址信息和目的地
址信息的关系,确定指定规则的存储顺序,从而可以避免冗余规则和无效规则
的出现,提高了流量控制的准确性。另外,当接收到数据报文时,按照规则的
存储顺序,通过顺序匹配,确定与该数据报文携带的源地址信息和目的地址信
息匹配的目标规则,而无需将所有规则都匹配一遍,减少了规则匹配时间,进
而提高了流量控制的效率。
图9是本发明实施例提供的一种流量控制装置的结构示意图。参见图9,该
装置包括:
划分模块401,用于基于存储的多个地址信息分别所属主机的属性信息,将
该多个地址信息划分为至少两个安全组,该属性信息包括业务类型或者安全等
级;
校验处理模块402,用于对该至少两个安全组进行校验处理,使校验处理后
的安全组中级别高的安全组可完全包含级别低的安全组且属于同一级别的安全
组之间完全独立不重叠,该级别用于指示安全组为父组、子组还是独立的安全
组;
接收模块403,用于接收策略配置指令,该策略配置指令中携带指定源组、
指定目的组和指定动作指示符,指定源组和指定目的组为校验处理后的安全组
中的两个不同的安全组;
配置模块404,用于基于该策略配置指令,配置指定规则,以及配置指定规
则的存储顺序,指定规则为待配置的至少两个规则中的任一规则;
该接收模块403,还用于在该至少两个规则配置完成之后,接收数据报文,
该数据报文中携带源地址信息和目的地址信息;
报文处理模块405,用于基于该至少两个规则和该至少两个规则的存储顺
序,对该数据报文进行处理,以实现流量控制。
可选地,如图10所示,该校验处理模块402包括:
判断单元4021,用于判断第一安全组与多个第二安全组之间是存在包含关
系还是重叠关系,第一安全组为该至少两个安全组中未进行校验处理的安全组,
该多个第二安全组为该至少两个安全组中已进行校验处理后的安全组,该包含
关系是指第一安全组为该第二安全组的子集,或者该第二安全组为第一安全组
的子集,该重叠关系是指第一安全组和第二安全组之间存在交集且第一安全组
和第二安全组不相等;
确定单元4022,用于如果第一安全组与该多个第二安全组中的至少两个第
二安全组之间存在包含关系,则从该至少两个第二安全组中,确定一个安全组
作为第三安全组;
显示单元4023,用于显示第一确认提示信息,第一确认提示信息用于提示
管理员对第一安全组与第三安全组之间的包含关系进行处理;
包含关系处理单元4024,用于如果基于第一确认提示信息接收到第一处理
指令,则基于第一处理指令,对第一安全组和第三安全组进行包含关系处理。
可选地,如图11所示,该确定单元4022包括:
选择子单元40221,用于如果第一安全组被该至少两个第二安全组中的所有
安全组所包含,则从该至少两个第二安全组中,选择地址范围最小的安全组;
如果第一安全组包含该至少两个第二安全组中的所有安全组,则从该至少两个
第二安全组组中,选择地址范围最大的安全组;如果第一安全组被该至少两个
第二安全组中的至少一个第二安全组所包含且第一安全组还包含该至少两个第
二安全组中剩余的第二安全组,则从该至少一个第二安全组中选择地址范围最
小的安全组,或者从该剩余的第二安全组中选择地址范围最大的安全组;
确定子单元40222,用于将选择的安全组确定为第三安全组。
可选地,如图12所示,该包含关系处理单元4024包括:
确定子单元40241,用于如果基于第一确认提示信息接收到第一处理指令,
则基于第一处理指令,将第一安全组和第三安全组中地址范围大的安全组确定
为第四安全组,并将第一安全组和第三安全组中地址范围小的安全组确定为第
五安全组;
去除子单元40242,用于如果第一处理指令为第一分裂指令,则将第四安全
组中与第五安全组相同的地址信息去除,得到第一子安全组;
设置子单元40243,用于如果第一处理指令为继承指令,则设置第五安全组
为次级安全组,并设置第五安全组为第四安全组的子组,该次级安全组为与该
校验处理后的安全组中的其他安全组之间存在包含关系的安全组。
可选地,如图13所示,该校验处理模块402还包括:
选择单元4025,用于如果第一安全组与该多个第二安全组中的至少两个第
二安全组之间存在重叠关系,则从该至少两个第二安全组中,选择一个安全组
作为第六安全组;
该显示单元4023,还用于显示第二确认提示信息,第二确认提示信息用于
提示该管理员对第一安全组与第六安全组之间的重叠关系进行处理;
重叠关系处理单元4026,用于如果基于第二确认提示信息接收到第二处理
指令,则基于第二处理指令,对第一安全组和第六安全组进行重叠关系处理。
可选地,如图14所示,该重叠关系处理单元4026包括:
划分子单元40261,用于如果基于第二确认提示信息接收到第二处理指令,
且第二处理指令为保留旧组指令,则将第一安全组中与第六安全组相同的地址
信息划分为第二子安全组,将第一安全组中除第二子安全组之外剩余的地址信
息划分为第三子安全组;
设置子单元40262,用于将第二子安全组设置为次级安全组,并设置第二子
安全组为第六安全组的子组。
可选地,如图15所示,该重叠关系处理单元4026包括:
划分子单元40263,用于如果基于第二确认提示信息接收到第二处理指令,
且第二处理指令为保留新组指令,则将第六安全组中与第一安全组相同的地址
信息划分为第四子安全组,将第六安全组中除第四子安全组之外剩余的地址信
息划分为第五子安全组;
设置子单元40264,用于将第四子安全组设置为次级安全组,并设置第四子
安全组为第一安全组的子组。
可选地,该重叠关系处理单元4026包括:
划分子单元,用于如果基于第二确认提示信息接收到第二处理指令,且第
二处理指令为第二分裂指令,则将第一安全组和第六安全组中相同的地址信息、
第一安全组中除与第六安全组相同的地址信息之外剩余的地址信息和第六安全
组中除与第一安全组相同的地址信息之外剩余的地址信息分别划分为三个安全
组。
可选地,该配置模块404包括:
配置单元,用于如果指定源组与指定目的组均为一级安全组,则基于指定
源组、指定目的组和指定动作指示符,配置指定规则,以及配置指定规则的存
储顺序,该一级安全组为与该校验处理后的安全组中的其他安全组之间不存在
包含关系且不存在重叠关系的独立安全组。
可选地,如图16所示,该配置模块404包括:
判断单元4041,用于如果指定源组或者指定目的组为次级安全组,则判断
是否已配置第一规则,第一规则为指定源组的父组与指定目的组之间的规则、
指定源组与指定目的组的父组之间的规则、或者指定源组的父组与指定目的组
的父组之间的规则;
该判断单元4041,还用于如果已配置第一规则,则判断指定动作指示符与
第一规则包括的动作指示符是否相同;
禁止配置单元4042,用于如果指定动作指示符与第一规则包括的动作指示
符相同,则禁止配置指定规则。
可选地,如图17所示,该配置模块404还包括:
配置单元4043,用于如果指定动作指示符与第一规则包括的动作指示符冲
突,则基于指定源组、指定目的组和指定动作指示符,配置指定规则;
设置单元4044,用于设置指定规则的存储顺序位于第一规则之前。
可选地,如图18所示,该配置模块404还包括:
显示单元4045,用于显示禁止配置提示信息,以提示管理员禁止配置指定
规则且指定规则为冗余规则。
可选地,如图19所示,该配置模块404包括:
判断单元4046,用于如果指定源组为次级安全组且指定目的组为第七安全
组的父组,或者指定源组为第八安全组的父组且指定目的组为次级安全组,则
判断是否已配置第二规则,当指定源组为次级安全组且指定目的组为第七安全
组的父组时,第二规则为指定源组的父组与指定目的组之间的规则、或者指定
源组与第七安全组之间的规则;当指定源组为第八安全组的父组且指定目的组
为次级安全组时,第二规则为指定源组与指定目的组之间的规则、或者第八安
全组与指定目的组的父组之间的规则,第七安全组和第八安全组为该校验处理
后的安全组中的任一安全组;
该判断单元4046,还用于如果已配置第二规则,则判断指定动作指示符与
第二规则包括的动作指示符是否相同;
配置单元4047,用于如果指定动作指示符与第二规则包括的动作指示符相
同,则基于指定源组、指定目的组和指定动作指示符,配置指定规则。
可选地,如图20所示,该配置模块404还包括:
显示单元4048,用于如果指定动作指示符与第二规则包括的动作指示符冲
突,则显示策略冲突提示信息,以提示管理员设置指定规则和第二规则的存储
顺序;
设置单元4049,用于当接收到管理员的排序操作时,基于该排序操作,设
置指定规则与第二规则的存储顺序。
在本发明实施例中,将存储的多个地址信息按照所属主机的属性信息划分
为至少两个安全组,并对该至少两个安全组进行校验处理,使校验处理后的安
全组中级别高的安全组可完全包含级别低的安全组且属于同一级别的安全组之
间完全独立不重叠,进而接收策略配置指令,该策略配置指令中携带指定源组、
指定目的组和指定动作指示符,并基于该策略配置指令,配置指定规则,以及
配置指定规则的存储顺序,从而可以避免冗余规则和无效规则的出现,提高流
量控制的准确性。另外,当接收到数据报文时,按照规则的存储顺序,对该数
据报文进行处理,减少了规则匹配时间,提高了流量控制的效率。
需要说明的是:上述实施例提供的流量控制装置在流量控制时,仅以上述
各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分
配由不同的功能模块完成,即将流量控制装置的内部结构划分成不同的功能模
块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的流量控制
装置与流量控制方法实施例属于同一构思,其具体实现过程详见方法实施例,
这里不再赘述。
图21是本发明实施例提供的一种流量控制装置结构示意图,参见图21,该
装置包括存储器501、处理器502、接收机503和通信总线504,包括:
存储器501,用于存储消息和数据;
处理器502,用于基于存储的多个地址信息分别所属主机的属性信息,将该
多个地址信息划分为至少两个安全组,该属性信息包括业务类型或者安全等级;
以及对该至少两个安全组进行校验处理,使校验处理后的安全组中级别高的安
全组可完全包含级别低的安全组且属于同一级别的安全组之间完全独立不重
叠,该级别用于指示安全组为父组、子组还是独立的安全组;
接收机503,接收策略配置指令,该策略配置指令中携带指定源组、指定目
的组和指定动作指示符,指定源组和指定目的组为该校验处理后的安全组中的
两个不同的安全组;
处理器502,还用于基于该策略配置指令,配置指定规则,以及配置指定规
则的存储顺序,指定规则为待配置的至少两个规则中的任一规则;
接收机503,还用于在该至少两个规则配置完成之后,接收数据报文,该数
据报文中携带源地址信息和目的地址信息;
处理器502,还用于基于该至少两个规则和该至少两个规则的存储顺序,对
该数据报文进行处理,以实现流量控制。
可选地,处理器502还用于:
判断第一安全组与多个第二安全组之间是存在包含关系还是重叠关系,该
第一安全组为该至少两个安全组中未进行校验处理的安全组,该多个第二安全
组为该至少两个安全组中已进行校验处理后的安全组,该包含关系是指该第一
安全组为该第二安全组的子集,或者该第二安全组为该第一安全组的子集,该
重叠关系是指该第一安全组和该第二安全组之间存在交集且该第一安全组和该
第二安全组不相等;
如果该第一安全组与该多个第二安全组中的至少两个第二安全组之间存在
包含关系,则从该至少两个第二安全组中,确定一个安全组作为第三安全组;
显示第一确认提示信息,该第一确认提示信息用于提示管理员对该第一安
全组与该第三安全组之间的包含关系进行处理;
如果基于该第一确认提示信息接收到第一处理指令,则基于该第一处理指
令,对该第一安全组和该第三安全组进行包含关系处理。
可选地,处理器502还用于:
如果该第一安全组被该至少两个第二安全组中的所有安全组所包含,则从
该至少两个第二安全组中,选择地址范围最小的安全组;
如果该第一安全组包含该至少两个第二安全组中的所有安全组,则从该至
少两个第二安全组组中,选择地址范围最大的安全组;
如果该第一安全组被该至少两个第二安全组中的至少一个第二安全组所包
含且该第一安全组还包含该至少两个第二安全组中剩余的第二安全组,则从该
至少一个第二安全组中选择地址范围最小的安全组,或者从该剩余的第二安全
组中选择地址范围最大的安全组;
将选择的安全组确定为该第三安全组。
可选地,处理器502还用于:
将该第一安全组和该第三安全组中地址范围大的安全组确定为第四安全
组,并将该第一安全组和该第三安全组中地址范围小的安全组确定为第五安全
组;
如果该第一处理指令为第一分裂指令,则将该第四安全组中与该第五安全
组相同的地址信息去除,得到第一子安全组;
如果该第一处理指令为继承指令,则设置该第五安全组为次级安全组,并
设置该第五安全组为该第四安全组的子组,该次级安全组为与该校验处理后的
安全组中的其他安全组之间存在包含关系的安全组。
可选地,处理器502还用于:
如果该第一安全组与该多个第二安全组中的至少两个第二安全组之间存在
重叠关系,则从该至少两个第二安全组中,选择一个安全组作为第六安全组;
显示第二确认提示信息,该第二确认提示信息用于提示该管理员对该第一
安全组与该第六安全组之间的重叠关系进行处理;
如果基于该第二确认提示信息接收到第二处理指令,则基于该第二处理指
令,对该第一安全组和该第六安全组进行重叠关系处理。
可选地,处理器502还用于:
如果该第二处理指令为保留旧组指令,则将该第一安全组中与该第六安全
组相同的地址信息划分为第二子安全组,将该第一安全组中除该第二子安全组
之外剩余的地址信息划分为第三子安全组;
将该第二子安全组设置为次级安全组,并设置该第二子安全组为该第六安
全组的子组。
可选地,处理器502还用于:
如果该第二处理指令为保留新组指令,则将该第六安全组中与该第一安全
组相同的地址信息划分为第四子安全组,将该第六安全组中除该第四子安全组
之外剩余的地址信息划分为第五子安全组;
将该第四子安全组设置为次级安全组,并设置该第四子安全组为该第一安
全组的子组。
可选地,处理器502还用于:
如果该第二处理指令为第二分裂指令,则将该第一安全组和该第六安全组
中相同的地址信息、该第一安全组中除与该第六安全组相同的地址信息之外剩
余的地址信息和该第六安全组中除与该第一安全组相同的地址信息之外剩余的
地址信息分别划分为三个安全组。
可选地,处理器502还用于:
如果指定源组与指定目的组均为一级安全组,则基于指定源组、指定目的
组和指定动作指示符,配置指定规则,该一级安全组为与该校验处理后的安全
组中的其他安全组之间不存在包含关系且不存在重叠关系的独立安全组。
可选地,处理器502还用于:
如果指定源组或者指定目的组为次级安全组,则判断是否已配置第一规则,
该第一规则为指定源组的父组与指定目的组之间的规则、指定源组与指定目的
组的父组之间的规则、或者指定源组的父组与指定目的组的父组之间的规则;
如果已配置该第一规则,则判断指定动作指示符与该第一规则包括的动作
指示符是否相同;
如果指定动作指示符与该第一规则包括的动作指示符相同,则禁止配置指
定规则。
可选地,处理器502还用于:
如果指定动作指示符与该第一规则包括的动作指示符冲突,则基于指定源
组、指定目的组和指定动作指示符,配置指定规则;
设置指定规则的存储顺序位于该第一规则之前。
可选地,处理器502还用于:
显示禁止配置提示信息,以提示该管理员禁止配置指定规则且指定规则为
冗余规则。
可选地,处理器502还用于:
如果指定源组为次级安全组且指定目的组为第七安全组的父组,或者指定
源组为第八安全组的父组且指定目的组为次级安全组,则判断是否已配置第二
规则,当指定源组为次级安全组且指定目的组为第七安全组的父组时,该第二
规则为指定源组的父组与指定目的组之间的规则、或者指定源组与该第七安全
组之间的规则;当指定源组为第八安全组的父组且指定目的组为次级安全组时,
该第二规则为指定源组与指定目的组之间的规则、或者该第八安全组与指定目
的组的父组之间的规则,该第七安全组和该第八安全组为该校验处理后的安全
组中的任一安全组;
如果已配置该第二规则,则判断指定动作指示符与该第二规则包括的动作
指示符是否相同;
如果指定动作指示符与该第二规则包括的动作指示符相同,则基于指定源
组、指定目的组和指定动作指示符,配置指定规则。
可选地,处理器502还用于:
如果指定动作指示符与该第二规则包括的动作指示符冲突,则显示策略冲
突提示信息,以提示该管理员设置指定规则和该第二规则的存储顺序;
当接收到该管理员的排序操作时,基于该排序操作,设置指定规则与该第
二规则的存储顺序。
其中,处理器502可能是一种集成电路芯片,具有信号的处理能力。在实
现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软
件形式的指令完成。这些指令可以通过其中的处理器以配合实现及控制,用于
执行本发明实施例揭示的方法。上述处理器还可以是通用处理器、数字信号处
理器(Digital Signal Processing,DSP)、专用集成电路(application specific
integrated circuit)、现成可编程门阵列(Field Programmable Gate Array,FPGA)
或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
其中,上述通用处理器可以是微处理器或者该处理器也可以是任何常规的
处理器,解码器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬
件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模
块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写
可编程存储器、寄存器等本领域成熟的存储介质中。
另外,终端的业务接入装置的各个硬件组件通过通信总线504耦合在一起,
其中通信总线504除包括数据总线之外,还包括电源总线、控制总线和状态信
号总线。但是为了清楚说明,在图21中将各种总线都标为通信总线504。
在本发明实施例中,将存储的多个地址信息按照所属主机的属性信息划分
为至少两个安全组,并对该至少两个安全组进行校验处理,使校验处理后的安
全组中级别高的安全组可完全包含级别低的安全组且属于同一级别的安全组之
间完全独立不重叠,进而接收策略配置指令,该策略配置指令中携带指定源组、
指定目的组和指定动作指示符,并基于该策略配置指令,配置指定规则,以及
配置指定规则的存储顺序,从而可以避免冗余规则和无效规则的出现,提高流
量控制的准确性。另外,当接收到数据报文时,按照规则的存储顺序,对该数
据报文进行处理,减少了规则匹配时间,提高了流量控制的效率。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过
硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于
一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或
光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的
精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的
保护范围之内。