CN113328973B - 一种检测访问控制列表acl规则无效的方法和装置 - Google Patents
一种检测访问控制列表acl规则无效的方法和装置 Download PDFInfo
- Publication number
- CN113328973B CN113328973B CN202010129353.7A CN202010129353A CN113328973B CN 113328973 B CN113328973 B CN 113328973B CN 202010129353 A CN202010129353 A CN 202010129353A CN 113328973 B CN113328973 B CN 113328973B
- Authority
- CN
- China
- Prior art keywords
- rule
- network entity
- information
- acl rule
- acl
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/101—Access control lists [ACL]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
- H04L61/2521—Translation architectures other than single NAT servers
- H04L61/2535—Multiple local networks, e.g. resolving potential IP address conflicts
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5046—Resolving address allocation conflicts; Testing of addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/104—Grouping of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/108—Network architectures or network communication protocols for network security for controlling access to devices or network resources when the policy decisions are valid for a limited amount of time
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种检测ACL规则无效的方法和装置,该方法包括:第一网络实体获取第二ACL规则,第一网络实体的包括第一表项,第一表项包括第一规则索引和第一信息;第一网络实体根据第二ACL规则生成第二表项,第二表项包括第二规则索引和第二信息;第一网络实体确定第二信息是否为第一信息的子集;若第一网络实体确定第二信息是第一信息的子集,第一网络实体将第二ACL规则确定为无效的ACL规则,第一网络实体不向第二网络实体发送第二ACL规则。这样,该第一网络实体可以检测出无效的ACL规则,从而不会将无效的规则发送至第二网络实体,可以节省第二网络实体的硬件资源,不需要人工识别无效的ACL规则,可以节约人工维护成本。
Description
技术领域
本申请涉及网络通信领域,尤其涉及一种检测ACL规则无效的方法和装置。
背景技术
当前,业内多采用访问控制列表(access control lists,ACL)规则文件的方法来保证网络资源的安全,其过程具体包括:针对网络资源配置一系列ACL规则文件,用以标识需要过滤的数据包特征,从而明确用户对网络资源的操作权限;将ACL规则文件应用于通信设备端口,实现仅有授权的用户才能操作网络资源;区分流量类型或者用户,对不同流量类型或者用户做不同的服务质量(quality of service,QOS)行为;可以过滤流量,对病毒或者攻击做防护。
当前网络设备中部署的ACL规则数量越来越多,越来越复杂。在ACL规则部署过程中,很容易将无效的ACL规则部署到网络设备上去,这样会造成资源浪费。而且,将ACL规则部署到网络设备之后,随着网络拓扑的变化和业务需求的变更,ACL规则列表中可能会不断增加新的ACL规则,这样,ACL规则列表中会产生较多无效的ACL规则。
所以,目前在ACL规则部署到网络设备上之前,需要通过人工识别无效的ACL规则。但是当前网络设备中部署的ACL规则数量较多,人工识别无效ACL规则耗费时间较长而且容易出现错误。每次部署之前都需要人工重新识别无效的ACL规则,这样耗费的人工与时间代价都很大。
发明内容
本申请第一方面提供了一种检测ACL规则无效的方法,该方法包括:第一网络实体获取第二ACL规则,第一网络实体包括第一表项,第一表项包括第一规则索引和第一信息,该第一规则索引用于指示第一ACL规则,第一信息是第一网络实体从第一ACL规则中提取的信息,该第一ACL规则为有效的ACL规则;第一网络实体根据第二ACL规则生成第二表项,该第二表项包括第二规则索引和第二信息,第二规则索引用于指示第二ACL规则,第二信息是第一网络实体从第二ACL规则中提取的信息,第二信息与第一信息属性相同;第一网络实体确定第二信息是否为第一信息的子集;若第一网络实体确定第二信息是第一信息的子集,第一网络实体将第二ACL规则确定为无效的ACL规则,第一网络实体不向第二网络实体发送第二ACL规则。这样,ACL规则在部署到第二网络实体上之前,该第一网络实体可以检测出无效的ACL规则,从而不会将无效的规则发送至第二网络实体,这样可以节省第二网络实体的硬件资源,而不需要人工识别无效的ACL规则,可以节约人工维护成本。
可选地,结合第一方面,在第一方面的第一种可能的实现方式中,该方法还包括:若第一网络实体确定第二信息不是第一信息的子集,第一网络实体将第二ACL规则确定为有效的ACL规则,该第一网络实体向第二网络实体发送第二ACL规则。当确认ACL规则为有效的ACL规则之后,该第一网络实体可以将有效的ACL规则发送至第二网络实体,从而可以保证第二网络实体部署有效的ACL规则。
可选地,结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,第一网络实体包括ACL规则元素表,该ACL规则元素表中包含第一表项和第二表项,第一网络实体将第二ACL规则确定为无效的ACL规则之后,该方法还包括:第一网络实体根据ACL规则元素表生成用户报告,该用户报告包括第一ACL规则、第二ACL规则以及第一ACL规则与第二ACL规则的父子关系,第一ACL规则为第二ACL规则的父规则。该用户报告可以向操作人员展示无效的ACL规则,从而可以避免部署无效的ACL规则。
可选地,结合第一方面的第一种或第二种可能的实现方式,在第一方面的第三种可能的实现方式中,第一网络实体确定第三ACL规则为待删除的ACL规则,第三表项包含第三规则索引和第三信息,第三信息为第一网络实体从第三ACL规则中提取的,第三规则索引用于指示该第三ACL规则,第三ACL规则为有效的ACL规则;第一网络实体确定ACL规则元素表中第三表项之后是否包含第四表项,该第四表项包含第四规则索引和第四信息,第四规则索引指示第四ACL规则,第四信息为第三信息的子集;若第一网络实体确定ACL规则元素表中第三表项之后不包含第四表项,第一网络实体指示第二网络实体删除第三ACL规则。当有删除需求时,如果第三表项之后不包含第四表项,该第一网络实体可以直接删除第三ACL规则,而不需要再检测其他ACL规则是否有效。
可选地,结合第一方面的第三种可能的实现方式,在第一方面的第四种可能的实现方式中,若第一网络实体确定ACL规则元素表中第三表项之后包含第四表项,第一网络实体确定ACL规则元素表中第三表项与第四表项之间是否存在第五表项,该第五表项包含第五规则索引和第五信息,该第五规则索引指示第五ACL规则,第四信息为第五信息的子集;当第一网络实体确定ACL规则元素表中第三表项与第四表项之间不存在第五表项时,第一网络实体向第二网络实体发送第四ACL规则;第一网络实体指示第二网络实体删除第三ACL规则。
可选地,结合第一方面的第四种可能的实现方式,在第一方面的第五种可能的实现方式中,当第一网络实体确定ACL规则元素表中第三表项与第四表项之间存在第五表项时,第一网络实体指示第二网络实体删除第三ACL规则。
本申请第二方面提供了一种第一网络实体,该第一网络实体包括:获取模块,用于获取第二ACL规则,第一网络实体包括第一表项,第一表项包括第一规则索引和第一信息,该第一规则索引用于指示第一ACL规则,第一信息是获取模块从第一ACL规则中提取的信息,第一ACL规则为有效的ACL规则;生成模块,用于根据第二ACL规则生成第二表项,该第二表项包括第二规则索引和第二信息,该第二规则索引用于指示第二ACL规则,第二信息是获取模块从第二ACL规则中提取的信息,第二信息与第一信息属性相同;处理模块,用于确定第二信息是否为第一信息的子集;处理模块,还用于当处理模块确定第二信息是第一信息的子集时,将第二ACL规则确定为无效的ACL规则,并指示发送模块不向第二网络实体发送第二ACL规则。这样,ACL规则在部署到第二网络实体上之前,该第一网络实体可以检测出无效的ACL规则,从而不会将无效的规则发送至第二网络实体,可以节省第二网络实体的硬件资源,而不需要人工识别无效的ACL规则,可以节约人工维护成本。
可选地,结合第二方面,在第二方面的第一种可能的实现方式中,处理模块,还用于当第一网络实体确定第二信息不是第一信息的子集时,将第二ACL规则确定为有效的ACL规则;发送模块,用于向第二网络实体发送第二ACL规则。
可选地,结合第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,第一网络实体包括ACL规则元素表,该ACL规则元素表中包含第一表项和第二表项,该处理模块,还用于根据ACL规则元素表生成用户报告,用户报告包括第一ACL规则、第二ACL规则以及第一ACL规则与第二ACL规则的父子关系,第一ACL规则为第二ACL规则的父规则。该用户报告可以向操作人员展示无效的ACL规则,从而可以避免部署无效的ACL规则。
可选地,结合第二方面的第一种或第二种可能的实现方式,在第二方面的第三种可能的实现方式中,处理模块,还用于确定ACL规则元素表中第三ACL规则为待删除的ACL规则,第三表项包含第三规则索引和第三信息,该第三信息为第一网络实体从第三ACL规则中提取的,第三规则索引用于指示第三ACL规则,第三ACL规则为有效的ACL规则;处理模块,还用于确定ACL规则元素表中第三表项之后是否包含第四表项,该第四表项包含第四规则索引和第四信息,该第四规则索引指示第四ACL规则,第四信息为第三信息的子集;处理模块,还用于当第一网络实体确定ACL规则元素表中第三表项之后不包含第四表项时,指示第二网络实体删除第三ACL规则。
可选地,结合第二方面的第三种可能的实现方式,在第二方面的第四种可能的实现方式中,处理模块,还用于当第三表项之后包含第四表项时,确定ACL规则元素表中第三表项与第四表项之间是否存在第五表项,该第五表项包含第五规则索引和第五信息,第五规则索引指示第五ACL规则,第四信息为第五信息的子集;处理模块,还用于当处理模块确定ACL规则元素表中第三表项与第四表项之间不存在第五表项时,第一网络实体向第二网络实体发送第四ACL规则;处理模块指示第二网络实体删除第三ACL规则。
可选地,结合第二方面的第四种可能的实现方式,在第二方面的第五种可能的实现方式中,该处理模块,还用于当第一网络实体确定ACL规则元素表中第三表项与第四表项之间存在第五表项时,指示第二网络实体删除第三ACL规则。
本申请第三方面提供了一种第一网络实体,该第一网络实体包括控制板卡和转发板卡,该控制板卡用于获取第二ACL规则,第一网络实体包括第一表项,第一表项包括第一规则索引和第一信息,第一规则索引用于指示第一ACL规则,第一信息是控制板卡从第一ACL规则中提取的信息,第一ACL规则为有效的ACL规则;该控制板卡,还用于根据第二ACL规则生成第二表项,第二表项包括第二规则索引和第二信息,第二规则索引用于指示第二ACL规则,第二信息是控制板卡从第二ACL规则中提取的信息,第二信息与第一信息属性相同;该控制板卡还用于确定第二信息是否为第一信息的子集;该控制板卡,还用于当确定第二信息是第一信息的子集时,将第二ACL规则确定为无效的ACL规则,并指示转发板卡不向第二网络实体发送第二ACL规则。
本申请第四方面提供了一种第一网络实体,该第一网络实体包括处理器和接口,该处理器,用于获取第二ACL规则,该第一网络实体的包括第一表项,第一表项包括第一规则索引和第一信息,第一规则索引用于指示第一ACL规则,第一信息是控制板卡从第一ACL规则中提取的信息,第一ACL规则为有效的ACL规则;该处理器,还用于根据第二ACL规则生成第二表项,第二表项包括第二规则索引和第二信息,第二规则索引用于指示第二ACL规则,第二信息是控制板卡从第二ACL规则中提取的信息,第二信息与第一信息属性相同;处理器,还用于确定第二信息是否为第一信息的子集;该处理器,还用于当确定第二信息是第一信息的子集时,将第二ACL规则确定为无效的ACL规则,并指示接口不向第二网络实体发送第二ACL规则。
本申请第五方面提供了一种计算机存储介质,用于存储上述第一网络实体所用的程序、代码或指令,当处理器或硬件设备执行这些程序、代码或指令时可以完成上述第一方面至第四方面中第一网络实体的功能或步骤。
本申请提供了一种检测ACL规则无效的方法,该方法包括:第一网络实体获取第二ACL规则,第一网络实体的包括第一表项,第一表项包括第一规则索引和第一信息,第一规则索引用于指示第一ACL规则,第一信息是第一网络实体从第一ACL规则中提取的信息,第一ACL规则为有效的ACL规则;第一网络实体根据第二ACL规则生成第二表项,第二表项包括第二规则索引和第二信息,第二规则索引用于指示第二ACL规则,第二信息是第一网络实体从第二ACL规则中提取的信息,第二信息与第一信息属性相同;第一网络实体确定第二信息是否为第一信息的子集;若第一网络实体确定第二信息是第一信息的子集,第一网络实体将第二ACL规则确定为无效的ACL规则,第一网络实体不向第二网络实体发送第二ACL规则。这样,ACL规则在部署到第二网络实体上之前,该第一网络实体可以检测出无效的ACL规则,从而不会将无效的规则发送至第二网络实体,这样可以节省第二网络实体的硬件资源,而不需要人工识别无效的ACL规则,可以节约人工维护成本。
附图说明
图1为本申请提供的一种检测ACL规则无效的方法示意图;
图2为本申请提供的一种删除ACL规则的方法示意图;
图3为本申请提供的一种检测ACL规则的第一网络实体的示意图;
图4为本申请提供的一种检测ACL规则的第一网络实体的示意图;
图5为本申请提供的一种检测ACL规则的第一网络实体的示意图;
图6为本申请提供的一种检测ACL规则的第一网络实体的示意图;
图7为本申请提供的一种检测ACL规则的第一网络实体的示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或模块的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或模块,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或模块。
随着网络通信技术的快速发展,如何保证网络资源不被非法操作也越发受到业内重视。业内多采用配置ACL规则文件的方法来保证网络资源的安全。但是,若在一段ACL规则列表中,配置了ACL规则a与ACL规则b,而且ACL规则a排列在ACL规则b之前。如果ACL规则b包含的信息是ACL规则a包含的信息的子集,可以认为ACL规则b是无效的。ACL规则a为ACL规则b的父规则,ACL规则b为ACL规则a的子规则。由于ACL规则b的内容已经被ACL规则a的内容覆盖了,部署ACL规则a之后再部署ACL规则b也没有意义,反而会占用网络实体的硬件资源,从而造成资源浪费。
所以,在部署ACL规则之前,可以先对即将部署的ACL规则进行过滤,避免部署无效的ACL规则。需说明的是,可以由网络设备A过滤ACL规则并将有效的ACL规则下发至网络设备B,网络设备A与网络设备B为不同的网络设备;也可以由网络设备的A模块过滤ACL规则,该网络设备的A模块再将有效的ACL规则发送至同一网络设备的B模块。
具体的,可以由网管设备对ACL规则进行有效性检测,该网管设备区分出有效的ACL规则与无效的ACL规则,网管设备再将有效的ACL规则发送给被管理的设备,该被管理的设备再部署有效的ACL规则;也可以为在网络设备的控制板卡上进行无效性检测,该控制板卡过滤出无效的ACL规则,再将有效的ACL规则发送给该网络设备的转发板卡,该网络设备可以为路由器;或者由网络设备中的处理器,如中央处理器(central processing unit,CPU)进行有效性检测,该CPU再将检测有效的ACL规则发送给同一网络设备的接口。
本申请实施例一提供了一种检测ACL规则无效的方法,请参见图1,该方法具体包括:
101、第一网络实体获取第二ACL规则。
第一网络实体获取第二ACL规则。需说明的是,该第一网络实体可以为独立的设备,也可以为独立设备中的一个模块。步骤101可以为ACL整体下发的场景,也可以为新增ACL规则的场景。具体的,若是在ACL整体下发场景,该第一网络实体可以从ACL中获取第二ACL规则;若为新增ACL规则的场景,该第一网络实体可以直接接收用户输入的第二ACL规则。
当在ACL整体下发的场景下,第一网络实体逐一检测ACL中每一条ACL规则是否有效。示例性的,若ACL 1中包括如下三条ACL规则:
Rule 1 source-ip 1.1.1.1 mask 24 destination-ip 10.10.10.10 mask 24.
Rule 2 source-ip 2.2.2.2 mask 24 destination-ip 10.10.10.10 mask 24.
Rule 3 source-ip 1.1.1.1 mask 32 destination-ip 10.10.10.10 mask 24.
其中,source-ip为源ip地址,mask为掩码,destination-ip为目的ip地址。
需说明的是,Rule 1的源ip地址的mask为24,则表示该源ip地址的前三位为网络位。其中该源ip地址的第四位为X,代表该源ip地址的第四位可以为任意值。与该源ip地址的前三位相同,第四位不同的ip地址也为该源ip地址的子集。同样,该Rule 1的目的ip地址的mask也为24,目的ip地址的第四位也为X,代表该目的ip地址的第四位可以为任意值。若源ip地址的mask为32,则表示源ip地址的前四位都为网络位,与该源ip地址四位都相同的ip地址为该源ip地址的子集。同样,若目的ip地址的mask为32,则表示目的ip地址的前四位都为网络位,与该目的ip地址四位都相同的ip地址为该目的ip地址的子集。
当ACL整体下发之前,由于该第一网络实体中没有记录ACL规则,该第一网络实体从该ACL 1中获取到Rule 1之后直接将该Rule 1存储在第一网络实体中,该Rule 1为有效的ACL规则。该第一网络实体从Rule 1中提取出与Rule 1对应的信息。
该Rule 1对应的信息中可以包含该Rule 1所有可包含的网络信息中的一项或多项,该Rule 1所有可包含的网络信息具体可以包括源ip地址、目的ip地址、源端口号、目的端口号、协议号等。本申请中以该Rule 1对应的信息包括源ip地址和目的ip地址为例,但不能作为本申请的限制。
该第一网络实体从该Rule 1中提取出的与Rule 1对应的信息可以包括:源ip地址为1.1.1.X,目的ip地址为10.10.10.X。该第一网络实体将该提取出的信息存储在该第一网络实体中。
需说明的是,该第一网络实体可以将该从ACL规则中提取的信息存储在ACL规则元素表中,该ACL规则元素表中可以通过一个字段记录ACL规则是否有效;或者该第一网络实体也可以将有效ACL规则存储在一个存储区中,将无效的ACL规则存储在另一个存储区中,此处不做限制。本申请以第一网络实体将该从Rule 1中提取出来的信息记录在ACL规则元素表的一条表项中为例,如下表所示,该ACL规则元素表可以包含规则索引、是否有效、源ip地址、目的ip地址、父规则字段。
规则索引 | 是否有效 | 源ip地址 | 目的ip地址 | 父规则 |
ACL 1/Rule 1 | 1 | 1.1.1.X | 10.10.10.X |
该条表项中,“规则索引”字段为“ACL 1/Rule 1”表示该条表项指示ACL 1中的Rule 1。“是否有效”字段可以为“1”可以指示该条表项对应的Rule 1是有效的ACL规则。该“源ip地址”字段为从该Rule 1中提取出来的源ip地址,该“目的ip地址”字段为从该Rule 1中提取出来的目的ip地址。若该“是否有效”字段为“0”则表示该表项对应的ACL规则是无效的ACL规则。可以在“父规则”字段记录该表项对应的ACL规则的父规则。
该第一网络实体将该Rule 1对应的表项记录在ACL规则元素表之后,可以将该Rule 1发送给第二网络实体。
当检测ACL 1中Rule 2的是否有效时,由于该ACL规则元素表中已经存在与该Rule1对应的表项。该第一网络实体检测Rule 2是否为Rule 1的子规则。
具体的,在检测Rule 2是否有效时,可以将Rule 1作为第一ACL规则。该ACL规则元素表中Rule 1对应的表项为第一表项,该第一表项中“ACL 1/Rule 1”为第一规则索引,该第一规则索引用于指示第一ACL规则,第一信息包括Rule 1的源ip地址和目的ip地址,该第一信息是第一网络实体从该Rule 1中提取出来的信息,该Rule 1为有效的ACL规则。
该第一网络实体从该ACL 1中获取Rule 2作为第二ACL规则。
该第一网络实体从该Rule 2中提取第二信息,该第二信息包括该Rule 2中包含的源ip地址:2.2.2.X,目的ip地址:10.10.10.X。如前述Rule 1对应的信息,该第二信息可以包含该Rule 2所有可包含的网络信息中的一项或多项,该Rule 2所有可包含的网络信息可以包括源ip地址、目的ip地址、源端口号、目的端口号、协议号等。本申请中以该第二信息包括Rule 2的源ip地址和目的ip地址为例,但不能作为本申请的限制。
102、第一网络实体根据第二ACL规则生成第二表项。
第一网络实体根据Rule 2生成第二表项,该第二表项包括第二规则索引和第二信息,该第二索引为ACL 1/Rule 2,该第二规则索引用于指示Rule 2。该第二信息包括Rule 2的源ip地址:2.2.2.X,目的ip地址:10.10.10.X。
该第二信息与第一信息属性相同。具体的,该第一信息包含哪几个项目第二信息就包含哪几个项目。需要说明的是,若第一信息包含的项目数量与第二信息包含的项目数量不一致,则认为缺少的项目为空。任意对应的项目可以认为是空项目的子集。示例性的,若第二信息包含源ip地址,目的ip地址两个项目。第一信息只包含源ip地址一个项目,则认为第一信息包含目的ip地址为空。无论该第二信息包含的目的ip地址是什么都为该第一信息中目的ip地址的子集。若该第二信息的源ip地址为第一信息中源ip地址的子集,则该第二信息为第一信息的子集。
103、第一网络实体确定第二信息是否为第一信息的子集。
第一网络实体确定第二信息是否为第一信息的子集。具体的,第一网络实体将第二信息中每一个项目都与第一信息中对应的项目比较。若第二信息中每个项目都为第一信息中对应项目的子集,则该第一网络实体确定该第二信息为第一信息的子集;若第二信息中有一个项目不为第一信息中对应项目的子集,则该第一网络实体确定该第二信息不为第一信息的子集。
该第一网络实体将第二信息中包含的源ip地址(2.2.2.X)与第一信息中包含的源ip地址(1.1.1.X)比较,则该第一网络实体可以确定该第二信息中源ip地址不为第一信息中源ip地址的子集。该第一网络实体将第二信息中包含的目的ip地址(10.10.10.X)与第一信息中包含的目的ip地址(10.10.10.X)比较。该第二信息中的目的ip地址与第一信息中的目标ip地址相同,该第二信息中的目的ip地址为第一信息中目标ip地址的子集。
由于该第二信息中源ip地址不是第一信息中源ip地址的子集,则该第一网络实体确定第二信息不是第一信息的子集。
104、若第一网络实体确定第二信息不是第一信息的子集,第一网络实体将第二ACL规则确定为有效的ACL规则。
由于第一网络实体确定第二信息不是第一信息的子集,该第一网络实体将第二ACL规则确定为有效的ACL规则。
该第一网络实体确定第二ACL规则(Rule 2)为有效的ACL规则之后,将该第二规则索引与第二信息记录在ACL规则元素表中。具体请参见下表:
该Rule 2对应的表项包含的“第二索引”为:ACL 1/Rule 2,可以指示ACL 1中的Rule2。第二表项中“是否有效”为1。该第二表项中的“源ip地址”为:2.2.2.2,“目的ip地址”为10.10.10.X。
该第一网络实体可以将该Rule 2发送给第二网络实体,该第二网络实体部署Rule2。
105、若第一网络实体确定第二信息是第一信息的子集,第一网络实体将第二ACL规则确定为无效的ACL规则。
若ACL规则元素表中有n条有效表项,每一条有效表项指示一条有效的ACL规则,n为正整数。第一网络实体在检测第m ACL规则是否有效时,该第一网络实体先从第m ACL规则中提取出第m信息,再遍历该n条有效表项,将该第m信息与n条有效表项每一条表项包含的信息依次相比。若在该n条有效表项中存在第k表项,该第k表项包括第k信息,使得该第m信息为该第k信息的子集,则该第一网络实体确定第m ACL规则为无效的ACL规则,该第一网络实体遍历至第k表项就可以停止,k为正整数。若该n条有效表项中不存在第k表项,则该第m ACL规则为有效的ACL规则。
示例性的,当检测Rule 3的是否有效时,由于该ACL规则元素表中已经存在有效表项。该第一网络实体检测Rule 3是否为Rule 1的子规则。若Rule 3为Rule 1的子规则,可以确定Rule 3无效,且不用检测Rule 3是否为Rule 2的子规则。若Rule 3不是Rule 1的子规则,则继续检测Rule 3是否为Rule 2的子规则。若Rule 3是Rule 2的子规则,则确定Rule 3无效;若Rule 3不是Rule 2的子规则,则确定Rule 3有效。
具体的,将Rule 3作为第二ACL规则,根据该Rule 3生成第二表项,该第二表项包括第二规则索引(ACL 1/Rule3)和第二信息,该第二信息包括Rule3的源ip地址(1.1.1.1)和目的ip地址(10.10.10.X)。
确定Rule 1为第一ACL规则,Rule 1包含第一信息,该第一信息包括Rule 1的源ip地址(1.1.1.X)和目的ip地址(10.10.10.X),该第一网络实体将第二信息中的源ip地址(1.1.1.1)与第一信息中的源ip地址(1.1.1.X)比较,确定该第二信息的源ip地址为第一信息的源ip地址的子集。该第一网络实体将第二信息中的目的ip地址(10.10.10.X)与第一信息中的目的ip地址(10.10.10.X)比较,确定第二信息的目的ip地址与第一信息的目的ip地址相同,该第二信息的目的ip地址为第一信息的目的ip地址的子集。所以,第二信息中的每个项目都为第一信息中对应项目的子集,该第二信息为第一信息子集。所以,该Rule 1为Rule 3的父规则。该第一网络实体确定Rule 3为无效的ACL规则。该第一网络实体不向第二网络实体发送Rule 3。
该第一网络实体在ACL规则元素表中记录该第二表项(即Rule 3对应的表项),则该ACL规则元素表为:
规则索引 | 是否有效 | 源ip地址 | 目的ip地址 | 父规则 |
ACL 1/Rule 1 | 1 | 1.1.1.X | 10.10.10.X | |
ACL 1/Rule 2 | 1 | 2.2.2.X | 10.10.10.X | |
ACL 1/Rule 3 | 0 | 1.1.1.1 | 10.10.10.X | ACL 1/Rule1 |
该Rule 3对应的表项包含的“第二索引”为:ACL 1/Rule 3,可以指示ACL 1中的Rule3。由于Rule 3是Rule 1的子规则,所以Rule 3无效,第二表项中“是否有效”为0。第二表项中的“父规则”为:ACL 1/Rule1,可以指示该ACL 1中Rule 3的父规则为ACL 1中的Rule1。该第二表项中的“源ip地址”为:1.1.1.1,“目的ip地址”为10.10.10.X。
106、第一网络实体根据ACL规则元素表生成用户报告。
第一网络实体根据该ACL规则元素表生成用户报告,该用户报告包括无效的ACL规则以及无效的ACL规则的父规则。示例性的,该用户报告可以包括Rule 3的内容、Rule 1的内容以及Rule 1与Rule 3的父子关系。
上述实施例以ACL整体下发的场景为例,在ACL整体下发之后,还有可能新增ACL规则。在ACL整体下发之后,该第一网络实体检测新增ACL规则的是否有效。具体的,第一网络实体遍历ACL规则元素表中的表项,检测是否存在新增ACL规则的父规则。若存在,则该新增ACL规则为无效的ACL规则;若不存在,则新增ACL规则为有效的ACL规则。
示例性的,在上述ACL 1整体下发之后,在ACL 1中新增Rule 4。Rule 4为:
Rule 4source-ip 2.2.2.2mask 24destination-ip 10.10.10.10mask 24.
第一网络实体可以将Rule 4作为第二ACL规则,根据Rule 4生成第二表项,该第二表项包括第二索引信息(ACL 1/Rule 4),第二信息包括Rule 4的源ip地址(2.2.2.X),目的ip地址(10.10.10.X)。
确定Rule 1为第一ACL规则,Rule 1包含第一信息,该第一信息包括Rule 1的源ip地址(1.1.1.X)和目的ip地址(10.10.10.X)。该第一网络实体将第二信息中的源ip地址(2.2.2.X)与第二信息中的源ip地址(1.1.1.1)比较,确定第二信息的源ip地址不为第一信息的源ip地址的子集。将第二信息中的目的ip地址(10.10.10.X)与第一信息中的目的ip地址(10.10.10.X)比较,确定第二信息的目的ip地址与第一信息的目的ip地址相同,第二信息的目的ip地址是第一信息的目的ip地址的子集。由于第二信息中源ip地址不是第一信息的源ip地址的子集,该第一网络实体可以确定第二ACL规则不为第一ACL规则的子规则,即Rule 4不是Rule 1的子规则。
需要说明的是,该第一ACL规则可以为该第一网络实体的ACL规则元素表中存储的任意一条表项对应的ACL规则。若Rule 4不是Rule 1的子规则,该第一网络实体可以继续将Rule 2作为第一ACL规则,Rule 2包含第一信息,该第一信息包括Rule 2的源ip地址(2.2.2.X)和目的ip地址(10.10.10.X)。该第一网络实体将第二信息中的源ip地址(2.2.2.X)与第二信息中的源ip地址(2.2.2.X)比较,确定第二信息中的源ip地址与第一信息中的源ip地址相同,该第二信息中源ip地址是第一信息中源ip地址的子集。将第二信息的目的ip地址(10.10.10.X)与第一信息的目的ip地址(10.10.10.X)比较,确定第二信息中的目的ip地址与第一信息中的目的ip地址相同,该第二信息中目的ip地址是第一信息中目的ip地址的子集。该第二信息中源ip地址为第一信息中源ip地址的子集,第二信息中目的ip地址为第一信息中目的ip地址的子集,所以该第二信息为第一信息的子集,该第二ACL规则为第一ACL规则的子规则,即Rule 4为Rule 2的子规则。该Rule 4为无效的ACL规则。该第一网络实体不向第二网络实体发送该Rule 4。
该第一网络实体在ACL规则元素表中记录该Rule 4对应的表项,该ACL规则元素表为:
规则索引 | 是否有效 | 源ip地址 | 目的ip地址 | 父规则 |
ACL 1/Rule 1 | 1 | 1.1.1.X | 10.10.10.X | |
ACL 1/Rule 2 | 1 | 2.2.2.X | 10.10.10.X | |
ACL 1/Rule 3 | 0 | 1.1.1.1 | 10.10.10.X | ACL 1/Rule1 |
ACL 1/Rule 4 | 0 | 2.2.2.X | 10.10.10.X | ACL 1/Rule2 |
该Rule 4对应的表项包含的“第二索引”为:ACL 1/Rule 4,可以指示ACL 1中的Rule4。由于Rule 4是Rule 2的子规则,所以Rule4无效,第二表项中“是否有效”为0。第二表项中的“父规则”为:ACL1/Rule 2,可以指示该ACL1中Rule 4的父规则为Rule 2。该第二表项中的“源ip地址”为:2.2.2.X,“目的ip地址”为10.10.10.X。
该第一网络实体可以根据该ACL规则元素表中Rule4对应的表项生成一条用户报告。该条用户报告可以包括Rule 4的内容、Rule 2的内容,以及Rule2与Rule4的父子关系。
需要说明的是,上述根据ACL规则提取的信息仅以包括源ip地址、目的ip地址为例。在实际实施中,根据该ACL规则提取的信息可以包括:源ip地址、目的ip地址、源端口号、目的端口号、协议号等网络信息中的一项或多项,此处不做限制。在检测ACL规则是否有效时,该第一网络实体将从第二ACL规则中提取的第二信息与第一网络实体包含的第一信息中包含的信息一项一项对比,若第二信息中有一项不为该第一信息中对应项的子集,则该第二信息不为第一信息的子集。只有第二信息中每一项都为第一信息中对应项的子集时,该第二信息为第一信息的子集。
本申请实施例一提供了一种检测ACL规则无效的方法,通过该方法,该第一网络实体可以检测出无效的ACL规则,从而不会将无效的规则发送至第二网络实体,这样可以节省第二网络实体的硬件资源,而不需要人工识别无效的ACL规则,可以节约人工维护成本。
在实际业务中,除了上述实施例提及的ACL规则整体下发和新增ACL规则,还存在删除ACL规则的业务。当ACL规则整体下发之后,若有删除某一条ACL规则的业务需求,该第一网络实体检测是否存在该条规则的子规则。若存在该条ACL规则的子规则,该第一网络实体可以重新检测该子规则是否有效。具体的请参见图2,实施例二包括:
201、第一网络实体确定第三ACL规则为待删除的ACL规则。
第一网络实体确定ACL规则元素表中第三ACL规则为待删除的ACL规则。请参见下表,ACL规则元素表中包括4条表项,该4条表项分别指示ACL2中的4条ACL规则。
规则索引 | 是否有效 | 源ip地址 | 目的ip地址 | 父规则 |
ACL 2/Rule 1 | 1 | 1.1.1.X | 10.10.10.X | |
ACL 2/Rule 2 | 1 | 2.2.2.X | 10.10.10.X | |
ACL 2/Rule 3 | 0 | 1.1.1.1 | 10.10.10.X | ACL 2/Rule1 |
ACL 2/Rule 4 | 0 | 1.1.1.1 | 10.10.10.1 | ACL 2/Rule1 |
示例性的,若第一网络实体确定该ACL规则表中的第二条表项指示的ACL规则为第三ACL规则,即Rule 2为待删除的ACL规则。该第三ACL规则包含第三规则索引(ACL 2/Rule2)和第三信息,该第三信息包括Rule 2中包含的源ip地址(2.2.2.X),目的ip地址(10.10.10.X)该第三ACL规则为有效的ACL规则。
202、第一网络实体确定ACL规则元素表中第三表项之后是否包含第四表项。
在确定待删除的第三ACL规则之后,该第一网络实体检测在删除第三ACL规则之后,原先第三ACL规则的子规则是否有效。
具体的,第一网络实体确定该ACL规则元素表中第三表项之后是否存在第四表项,该第四表项包含第四规则索引和第四信息,该第四规则索引指示第四ACL规则,第四信息为第三信息的子集。
203、若第一网络实体确定ACL规则元素表中第三表项之后不包含第四表项,第一网络实体指示第二网络实体删除第三表项。
该第一网络实体确定该ACL规则元素表中第三表项之后不包括第四表项,结合步骤201的例子,该第一网络实体确定Rule 3与Rule 4都不是Rule 2的子规则。则该第一网络实体可以直接指示第二网络实体删除该该第二条表项。具体的,该第一网络实体可以向第二网络实体发送一条指示信息,该指示信息包含第二表项,该指示信息可以指示该第二网络实体删除该第二表项。
204、若第一网络实体确定ACL规则元素表中第三表项之后包含第四表项,该第一网络实体确定ACL规则元素表中第三表项和第四表项之间是否存在第五表项。
若该第一网络实体确定ACL规则元素表中第三表项之后包含第四表项,该第一网络实体确定ACL规则元素表中第三表项和第四表项之间是否存在第五表项,该第五表项包含第五规则索引和第五信息,该第五规则索引指示第五ACL规则,该第四信息为第五信息的子集。
示例性的,若在步骤201,第一网络实体确定Rule 1为待删除的ACL规则,即第一条表项为第三表项。则在步骤202中,第一网络实体可以确定在该ACL规则元素表中的第三条表项为第四表项,该第四表项对应Rule 3,该第四表项包含的第四信息为第三表项中包含的第三信息的子集。该第一网络实体确定第一条表项和第三条表项之间是否存在第五表项。
205、若第一网络实体确定ACL规则元素表中第三表项和第四表项之间不存在第五表项时,第一网络实体向第二网络实体发送第四ACL规则。
若第一网络实体确定ACL规则元素表中第三表项和第四表项之间不存在第五表项时,第一网络实体向第二网络实体发送第四ACL规则,并指示该第二网络实体重新部署该第四ACL规则。需说明的是,该第四ACL规则原先被确定为无效的ACL规则,但是将第三ACL规则删除之后,该ACL规则不存在父规则,该第一网络实体可以确定该第四ACL规则为有效的ACL规则。
具体的,结合步骤204的例子,该第一网络实体确定该第三表项与第四表项之间不存在第五表项,使得该第四表项包含的第四信息为第五表项包含的第五信息的子集。在第一条表项和第三条表项之间不存在任何一条表项对应的ACL规则是Rule 3的父规则。该第一网络实体可以确定Rule 3为有效的ACL规则,该第一网络实体将Rule 3发送给第二网络实体。该第二网络实体可以部署Rule 3。
206、第一网络实体指示第二网络实体删除第三ACL规则。
该第一网络实体检测完所有该第三ACL规则的子规则有效性之后,该第一网络实体可以在ACL规则元素表中删除该第三ACL规则对应的表项,并指示第二网络实体删除该第三ACL规则。
207、若第一网络实体确定ACL规则元素表中第三表项和第四表项之间存在第五表项时,第一网络实体指示第二网络实体删除第三ACL规则。
若该第一网络实体确定第三表项之后,确定第三表项与第四表项之间存在第五表项,该第五表项包含第五规则索引和第五信息,该第五规则索引指示第五ACL规则,该第四信息为第五信息的子集。
若将第三表项删除之后,第四表项对应的ACL规则依然为无效的ACL规则。该第一网络实体只将该第三表项删除,并指示第二网络实体删除第三ACL规则。
具体的,若第一网络实体确定Rule 1为待删除的ACL规则,即第一条表项为第三表项。在前面检测了Rule 3的有效性之后,继续检测Rule4的有效性。该第一网络实体确定该ACL规则元素表中第四条表项为第四表项,该第四表项对应Rule 4,该第四表项包含的第四信息为第三表项中包含的第三信息的子集。
该第一网络实体可以确定在该第一条表项和第四条表项之间存在第三条表项,该第三条表项对应的Rule 3为Rule 4的父规则。即该第一网络实体确定ACL规则元素表中第三表项和第四表项之间存在第五表项。此时,若将第一条表项删除,该第四条表项对应的Rule4仍然为无效的ACL规则。所以该第一网络实体不向第二网络实体发送Rule4。该第二网络实体不会重新部署Rule 4。
当第一网络实体检测完所有第三ACL规则子规则的有效性之后,该第一网络实体可以指示第二网络实体删除第三ACL规则。
本申请实施例二提供的了一种检测ACL规则无效的方法,当ACL规则整体下发之后,若有删除某一条ACL规则的业务需求,该第一网络实体检测是否存在该条规则的子规则。若存在该条ACL规则的子规则,该第一网络实体可以检测该子规则是否有效。若该子规则为有效的ACL规则,该第一网络设备可以向第二网络设备发送该子规则。
图3为本申请实施例提供的第一网络实体30的结构示意图。图3所示的第一网络实体可以执行上述方法实施例中第一网络实体执行的相应步骤。如图3所示,该第一网络实体包括获取模块301、生成模块302、处理模块303和发送模块304。
该获取模块301,用于获取第二ACL规则,该第一网络实体30包括第一表项,该第一表项包括第一规则索引和第一信息,该第一规则索引用于指示第一ACL规则,第一信息是该获取模块301从第一ACL规则中提取的信息,该第一ACL规则为有效的ACL规则;
该生成模块302,用于根据第二ACL规则生成第二表项,第二表项包括第二规则索引和第二信息,该第二规则索引用于指示第二ACL规则,第二信息是获取模块301从第二ACL规则中提取的信息,第二信息与第一信息属性相同;
该处理模块303,用于确定第二信息是否为第一信息的子集;
该处理模块303,还用于当第二信息是第一信息的子集时,将第二ACL规则确定为无效的ACL规则,并指示发送模块304不向第二网络实体发送第二ACL规则。
该处理模块303,还用于当第二信息不是第一信息的子集时,将第二ACL规则确定为有效的ACL规则;
发送模块304,还用于向第二网络实体发送第二ACL规则。
该处理模块303,还用于根据ACL规则元素表生成用户报告,用户报告包括第一ACL规则、第二ACL规则以及第一ACL规则与第二ACL规则的父子关系,第一ACL规则为第二ACL规则的父规则。
该处理模块303,还用于确定第三ACL规则为待删除的ACL规则,第三表项包含第三规则索引和第三信息,第三信息为第一网络实体从第三ACL规则中提取的,第三规则索引用于指示第三ACL规则,第三ACL规则为有效的ACL规则;
该处理模块303,还用于确定ACL规则元素表中第三表项之后是否包含第四表项,第四表项包含第四规则索引和第四信息,第四规则索引指示第四ACL规则,第四信息为第三信息的子集;
该处理模块303,还用于当第一网络实体确定ACL规则元素表中第三表项之后不包含第四表项时,指示第二网络实体删除第三ACL规则。
该处理模块303,还用于当第三表项之后包含第四表项时,确定ACL规则元素表中第三表项与第四表项之间是否存在第五表项,第五表项包含第五规则索引和第五信息,第五规则索引指示第五ACL规则,第四信息为第五信息的子集;
该处理模块303,还用于当处理模块确定ACL规则元素表中第三表项与第四表项之间不存在第五表项时,第一网络实体向第二网络实体发送第四ACL规则;
该处理模块303,还用于指示第二网络实体删除第三ACL规则。
该处理模块303,还用于当第一网络实体确定ACL规则元素表中第三表项与第四表项之间存在第五表项时,指示第二网络实体删除第三ACL规则。
图4为本申请实施例的第一网络实体40的硬件结构示意图。图4所示的第一网络实体40可以执行上述方法实施例中第一网络实体执行的相应步骤。
如图4所示,所述第一网络实体40包括处理器401、存储器402、接口403和总线404。其中,接口403可以通过有线或无线的方式实现,具体来讲可以是网卡。上述处理器401、存储器402和接口403通过总线404连接。
该接口403具体可以包括发送器和接收器,用于第一网络实体与上述第二网络实体之间收发信息。例如,接口403用于向第二网络实体发送第二ACL规则。所述存储器402包括操作系统4021和应用程序4022,用于存储程序、代码或指令,当处理器401或硬件设备执行这些程序时可以完成方法实施例中涉及的第一网络实体的处理过程。例如该处理器401可以调用存储器402中的程序,获取第二ACL规则,可以根据ACL规则生成第二表项等。该存储器402可以包括只读存储器(read-only memory,ROM)和随机存取存储器(random accessmemory,RAM)。其中,所述ROM包括基本输入/输出系统(basic input/output system,BIOS)或嵌入式系统;所述RAM包括应用程序和操作系统。当需要运行第一网络实体40时,通过固化在ROM中的BIOS或者嵌入式系统中的bootloader引导系统进行启动,引导第一网络实体40进入正常运行状态。在第一网络实体40进入正常运行状态后,运行在RAM中的应用程序和操作系统,从而,完成方法实施例中涉及第一网络实体的处理过程。
可以理解的是,图4仅仅示出了第一网络实体40的简化设计。在实际应用中,第一网络实体可以包含任意数量的接口,处理器或者存储器。
图5为本申请实施例提供的另一种第一网络实体50的硬件结构示意图。图5所示的第一网络实体50可以执行上述方法实施例中第一网络实体执行的相应步骤。
如图5所示,第一网络实体50包括:主控板510、接口板530、交换网板520和接口板540。主控板510、接口板530和540,以及交换网板520之间通过系统总线和系统背板相连实现互通。其中,主控板520用于完成系统管理、设备维护、协议处理等功能。交换网板520用于完成各接口板(接口板也称为线卡或业务板)之间的数据交换。接口板530和540用于提供各种业务接口(例如,POS接口、GE接口、ATM接口等),并实现数据包的转发。
接口板530可以包括中央处理器531、转发表项存储器534、物理接口卡533和网络处理器532。其中中央处理器531用于对接口板进行控制管理并与主控板上的中央处理器511进行通信。转发表项存储器534用于保存转发表项。物理接口卡533用于完成流量的接收和发送。网络存储器532用于根据所述转发表项控制物理接口卡533收发流量。
具体的,该接口板530可以通过物理接口卡533获取第二ACL规则,该接口板530可以通过中央处理器531根据该第二ACL规则生成第二表项。该接口板的中央处理器531将第二表项发送至主控板510的中央处理器511,该主控板510的中央处理器511确定第二信息是否为所述第一信息的子集。
若中央处理器511确定所述第二信息是所述第一信息的子集,该中央处理器511将所述第二ACL规则确定为无效的ACL规则,该中央处理器511通过接口板530的中央处理器531指示转发表项存储器534不向第二网络实体发送所述第二ACL规则。
应理解,本申请实施例中接口板540上的操作与接口板530的操作一致,为了简洁,不在赘述。应理解,本申请实施例中的第一网络实体50可对应于上述方法实施例所具有的功能和/或所实施的各种步骤,在此不再赘述。
此外,需要说明的是,主控板可能有一块或多块,有多块的时候可以包括主用主控板和备用主控板。接口板可能有一块或多块,第一网络实体的数据处理能力越强,提供的接口板越多。接口板上的物理接口卡也可以有一块或多块。交换网板可能没有,也可能有一块或多块,有多块的时候可以共同实现复核分担冗余备份。在集中式转发架构下,第一网络实体可以不需要交换网板,接口板承担整个系统的业务数据的处理功能。在分布式转发架构下,第一网络实体可以有至少一块交换网板,通过交换网板实现多块接口板之间的数据交换,提供大容量的数据交换和处理能力。所以,分布式架构的第一网络实体的数据接入和处理能力要大于集中式架构的设备。具体采用哪种架构,取决于具体的组网部署场景,此处不做任何限定。
图6为本申请实施例提供的另一种第一网络实体60的硬件结构示意图。图6所示的第一网络实体60可以执行上述方法实施例中第一网络实体执行的相应步骤。
具体的,该第一网络实体可以包括控制板卡601和转发板卡602,该控制板卡601可以用于获取第二访问控制列表ACL规则,第一网络实体包括第一表项,第一表项包括第一规则索引和第一信息,第一规则索引用于指示第一ACL规则,第一信息是控制板卡从第一ACL规则中提取的信息,第一ACL规则为有效的ACL规则;
该控制板卡601还可用于根据第二ACL规则生成第二表项,第二表项包括第二规则索引和第二信息,第二规则索引用于指示第二ACL规则,第二信息是控制板卡从第二ACL规则中提取的信息,第二信息与第一信息属性相同;该控制板卡还用于确定第二信息是否为第一信息的子集;
该控制板卡601,还用于当确定第二信息是第一信息的子集时,将第二ACL规则确定为无效的ACL规则,并指示转发板卡602不向第二网络实体发送第二ACL规则。
图7为本申请实施例提供的另一种第一网络实体70的硬件结构示意图。图7所示的第一网络实体70可以执行上述方法实施例中第一网络实体执行的相应步骤。
具体的,该第一网络实体可以包括处理器701和接口702,该处理器701,用于获取第二访问控制列表ACL规则,该第一网络实体的包括第一表项,第一表项包括第一规则索引和第一信息,第一规则索引用于指示第一ACL规则,第一信息是控制板卡从第一ACL规则中提取的信息,第一ACL规则为有效的ACL规则;
该处理器701,还用于根据第二ACL规则生成第二表项,第二表项包括第二规则索引和第二信息,第二规则索引用于指示第二ACL规则,第二信息是控制板卡从第二ACL规则中提取的信息,第二信息与第一信息属性相同;
处理器701,还用于确定第二信息是否为第一信息的子集;该处理器,还用于当确定第二信息是第一信息的子集时,将第二ACL规则确定为无效的ACL规则,并指示接口702不向第二网络实体发送第二ACL规则。
另外,本申请实施例提供了一种存储介质,用于存储上述第一网络实体所用的计算机软件指令,起包含用于执行上述方法实施例所设计的程序。
结合本申请公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、移动硬盘、CD-ROM或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于用户设备中。当然,处理器和存储介质也可以作为分立组件存在于用户设备中。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本申请所描述的功能可以用硬件或者用硬件和软件的组合来实现。当使用硬件和软件的组合实现时,可以将这些软件存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
以上所述的具体实施方式,对本申请的目的、技术方案和有益效果进行了进一步详细说明。所应理解的是,以上所述仅为本申请的具体实施方式而已。
Claims (12)
1.一种检测访问控制列表ACL规则的方法,其特征在于,所述方法包括:
第一网络实体获取第二访问控制列表ACL规则,所述第一网络实体包括多个第一表项,每个所述第一表项包括对应的第一规则索引和对应的第一信息,所述第一规则索引用于指示对应的第一ACL规则,所述第一信息是所述第一网络实体从所述对应的第一ACL规则中提取的信息,所述第一ACL规则为有效的ACL规则;
所述第一网络实体根据所述第二ACL规则生成第二表项,所述第二表项包括第二规则索引和第二信息,所述第二规则索引用于指示所述第二ACL规则,所述第二信息是所述第一网络实体从所述第二ACL规则中提取的信息,所述第二信息与所述第一信息属性相同;
所述第一网络实体依次选择一个所述第一表项并确定所述第二信息是否为对应的所述第一信息的子集;
若所述第一网络实体确定所述第二信息是所述选择的第一表项所对应的第一信息的子集,所述第一网络实体将所述第二ACL规则确定为无效的ACL规则,所述第一网络实体不向第二网络实体发送所述第二ACL规则。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若所述第一网络实体确定所述第二信息不是任一所述第一表项对应的所述第一信息的子集,所述第一网络实体将所述第二ACL规则确定为有效的ACL规则,所述第一网络实体向所述第二网络实体发送所述第二ACL规则。
3.根据权利要求1所述的方法,其特征在于,所述第一网络实体包括ACL规则元素表,所述ACL规则元素表包含多个所述第一表项和所述第二表项,所述第一网络实体将所述第二ACL规则确定为无效的ACL规则之后,所述方法还包括:
所述第一网络实体根据所述ACL规则元素表生成用户报告,所述用户报告包括所述第一ACL规则、所述第二ACL规则以及所述第一ACL规则与所述第二ACL规则的父子关系,所述第一ACL规则为所述第二ACL规则的父规则。
4.根据权利要求2或3所述的方法,其特征在于,所述方法还包括:
所述第一网络实体确定第三ACL规则为待删除的ACL规则,第三表项包含第三规则索引和第三信息,所述第三信息为所述第一网络实体从所述第三ACL规则中提取的,所述第三规则索引用于指示所述第三ACL规则,所述第三ACL规则为有效的ACL规则;
所述第一网络实体确定所述ACL规则元素表中所述第三表项之后是否包含第四表项,所述第四表项包含第四规则索引和第四信息,所述第四规则索引指示第四ACL规则,所述第四信息为所述第三信息的子集;
若所述第一网络实体确定所述ACL规则元素表中所述第三表项之后不包含所述第四表项,所述第一网络实体指示所述第二网络实体删除所述第三ACL规则。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
若所述第一网络实体确定所述ACL规则元素表中所述第三表项之后包含所述第四表项,所述第一网络实体确定所述ACL规则元素表中所述第三表项与所述第四表项之间是否存在第五表项,所述第五表项包含第五规则索引和第五信息,所述第五规则索引指示第五ACL规则,所述第四信息为所述第五信息的子集;
当所述第一网络实体确定所述ACL规则元素表中所述第三表项与所述第四表项之间不存在所述第五表项时,所述第一网络实体向所述第二网络实体发送所述第四ACL规则;
所述第一网络实体指示所述第二网络实体删除所述第三ACL规则。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
当所述第一网络实体确定所述ACL规则元素表中所述第三表项与所述第四表项之间存在所述第五表项时,所述第一网络实体指示所述第二网络实体删除所述第三ACL规则。
7.一种检测访问控制列表ACL规则的第一网络实体,其特征在于,所述第一网络实体包括:
获取模块,用于获取第二访问控制列表ACL规则,所述第一网络实体包括多个第一表项,每个所述第一表项包括对应的第一规则索引和对应的第一信息,所述第一规则索引用于指示对应的第一ACL规则,所述第一信息是所述获取模块从所述对应的第一ACL规则中提取的信息,所述第一ACL规则为有效的ACL规则;
生成模块,用于根据所述第二ACL规则生成第二表项,所述第二表项包括第二规则索引和第二信息,所述第二规则索引用于指示所述第二ACL规则,所述第二信息是所述获取模块从所述第二ACL规则中提取的信息,所述第二信息与所述第一信息属性相同;
处理模块,用于依次选择一个所述第一表项并确定所述第二信息是否为对应的所述第一信息的子集;
所述处理模块,还用于当所述第二信息是所述选择的第一表项所对应的第一信息的子集时,将所述第二ACL规则确定为无效的ACL规则,并指示发送模块不向第二网络实体发送所述第二ACL规则。
8.根据权利要求7所述的第一网络实体,其特征在于,
所述处理模块,还用于当所述第二信息不是任一所述第一表项对应的所述第一信息的子集时,将所述第二ACL规则确定为有效的ACL规则;
所述发送模块,用于向所述第二网络实体发送所述第二ACL规则。
9.根据权利要求7所述的第一网络实体,其特征在于,所述第一网络实体包括ACL规则元素表,所述ACL规则元素表包含多个所述第一表项和所述第二表项,
所述处理模块,还用于根据所述ACL规则元素表生成用户报告,所述用户报告包括所述第一ACL规则、所述第二ACL规则以及所述第一ACL规则与所述第二ACL规则的父子关系,所述第一ACL规则为所述第二ACL规则的父规则。
10.根据权利要求8或9所述的第一网络实体,其特征在于,
所述处理模块,还用于确定第三ACL规则为待删除的ACL规则,第三表项包含第三规则索引和第三信息,所述第三信息为所述第一网络实体从所述第三ACL规则中提取的,所述第三规则索引用于指示所述第三ACL规则,所述第三ACL规则为有效的ACL规则;
所述处理模块,还用于确定所述ACL规则元素表中所述第三表项之后是否包含第四表项,所述第四表项包含第四规则索引和第四信息,所述第四规则索引指示第四ACL规则,所述第四信息为所述第三信息的子集;
所述处理模块,还用于当所述第一网络实体确定所述ACL规则元素表中所述第三表项之后不包含所述第四表项时,指示所述第二网络实体删除所述第三ACL规则。
11.根据权利要求10所述的第一网络实体,其特征在于,
所述处理模块,还用于当所述第三表项之后包含所述第四表项时,确定所述ACL规则元素表中所述第三表项与所述第四表项之间是否存在第五表项,所述第五表项包含第五规则索引和第五信息,所述第五规则索引指示所述第五ACL规则,所述第四信息为所述第五信息的子集;
所述处理模块,还用于当所述处理模块确定所述ACL规则元素表中所述第三表项与所述第四表项之间不存在第五表项时,所述第一网络实体向所述第二网络实体发送所述第四ACL规则;
所述处理模块,用于指示所述第二网络实体删除所述第三ACL规则。
12.根据权利要求11所述的第一网络实体,其特征在于,
所述处理模块,还用于当所述第一网络实体确定所述ACL规则元素表中所述第三表项与所述第四表项之间存在所述第五表项时,指示所述第二网络实体删除所述第三ACL规则。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010129353.7A CN113328973B (zh) | 2020-02-28 | 2020-02-28 | 一种检测访问控制列表acl规则无效的方法和装置 |
EP21157959.4A EP3873057B1 (en) | 2020-02-28 | 2021-02-18 | Method and apparatus for detecting invalidity of access control list acl rule |
US17/186,209 US11503032B2 (en) | 2020-02-28 | 2021-02-26 | Method and apparatus for detecting invalidity of access control list ACL rule |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010129353.7A CN113328973B (zh) | 2020-02-28 | 2020-02-28 | 一种检测访问控制列表acl规则无效的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113328973A CN113328973A (zh) | 2021-08-31 |
CN113328973B true CN113328973B (zh) | 2022-09-23 |
Family
ID=74668762
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010129353.7A Active CN113328973B (zh) | 2020-02-28 | 2020-02-28 | 一种检测访问控制列表acl规则无效的方法和装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11503032B2 (zh) |
EP (1) | EP3873057B1 (zh) |
CN (1) | CN113328973B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113328973B (zh) * | 2020-02-28 | 2022-09-23 | 华为技术有限公司 | 一种检测访问控制列表acl规则无效的方法和装置 |
CN114362991B (zh) * | 2021-11-22 | 2024-04-16 | 北京威努特技术有限公司 | 一种acl访问控制列表规则过滤去重的方法及装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8478707B1 (en) * | 2010-11-01 | 2013-07-02 | Google Inc. | System and method for reducing flow rules in forwarding tables |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070201458A1 (en) * | 2006-02-28 | 2007-08-30 | Thron Chris P | System and method for implementing ACLs using multiple hash-trie-key tables |
EP2241082B1 (en) * | 2008-01-26 | 2019-05-29 | Citrix Systems, Inc. | Systems and methods for configuration and fine grain policy driven web content detection and rewrite |
CN101662425B (zh) * | 2009-09-17 | 2012-07-04 | 中兴通讯股份有限公司 | 一种检测访问控制列表生效的方法和装置 |
US8345688B2 (en) * | 2010-02-23 | 2013-01-01 | Google Inc. | System and method for managing flow of packets |
US9002890B2 (en) * | 2012-03-14 | 2015-04-07 | International Business Machines Corporation | Rule-based access control list management |
US9485257B2 (en) * | 2014-05-22 | 2016-11-01 | International Business Machines Corporation | Atomically updating ternary content addressable memory-based access control lists |
CN105335307B (zh) * | 2014-08-13 | 2018-10-02 | 华为技术有限公司 | 一种acl规则的加载方法及装置 |
CN106034054B (zh) * | 2015-03-17 | 2019-07-05 | 阿里巴巴集团控股有限公司 | 冗余访问控制列表acl规则文件检测方法和装置 |
CN104901958B (zh) * | 2015-05-21 | 2017-11-07 | 大连理工大学 | 一种用户驱动的sdn网络集中式访问控制方法 |
CN106549793B (zh) * | 2015-09-23 | 2020-08-07 | 华为技术有限公司 | 流量控制方法及设备 |
CN110768934A (zh) * | 2018-07-27 | 2020-02-07 | 阿里巴巴集团控股有限公司 | 网络访问规则的检查方法和装置 |
CN109302409A (zh) * | 2018-10-31 | 2019-02-01 | 锐捷网络股份有限公司 | Acl访问控制策略的分析方法、装置、设备及存储介质 |
CN113328973B (zh) * | 2020-02-28 | 2022-09-23 | 华为技术有限公司 | 一种检测访问控制列表acl规则无效的方法和装置 |
-
2020
- 2020-02-28 CN CN202010129353.7A patent/CN113328973B/zh active Active
-
2021
- 2021-02-18 EP EP21157959.4A patent/EP3873057B1/en active Active
- 2021-02-26 US US17/186,209 patent/US11503032B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8478707B1 (en) * | 2010-11-01 | 2013-07-02 | Google Inc. | System and method for reducing flow rules in forwarding tables |
Also Published As
Publication number | Publication date |
---|---|
CN113328973A (zh) | 2021-08-31 |
US11503032B2 (en) | 2022-11-15 |
US20210273942A1 (en) | 2021-09-02 |
EP3873057A1 (en) | 2021-09-01 |
EP3873057B1 (en) | 2024-09-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101809540B (zh) | 用于激活虚拟化的计算机应用的网络背景触发 | |
EP2987090B1 (en) | Distributed event correlation system | |
KR101072964B1 (ko) | 정보 록킹을 실현하기 위한 방법, 시스템 및 장치 | |
US8255985B2 (en) | Methods, network services, and computer program products for recommending security policies to firewalls | |
CN112073438B (zh) | 一种访问控制规则配置方法、装置、交换机及存储介质 | |
CN1972205A (zh) | 检测不需要的网络流量内容的系统与方法 | |
CN104618147B (zh) | 一种纵向堆叠系统管理方法及系统 | |
CN113328973B (zh) | 一种检测访问控制列表acl规则无效的方法和装置 | |
US11689576B2 (en) | Cloud native discovery and protection | |
CN103413083A (zh) | 单机安全防护系统 | |
CN106878343B (zh) | 一种云计算环境下提供网络安全即服务的系统 | |
CN110602234B (zh) | 区块链网络节点管理方法、装置、设备以及存储介质 | |
CN102523209B (zh) | 安全检测虚拟机的动态调整方法及动态调整装置 | |
CN108733477B (zh) | 数据集群化处理的方法、装置及设备 | |
JP5012338B2 (ja) | ネットワーク装置、ネットワーク管理システム及びそれらに用いるmacアドレス重複検出方法 | |
CN114024759B (zh) | 安全策略管控方法、装置、计算机设备和介质 | |
CN102469098A (zh) | 信息安全防护主机 | |
CN110858846A (zh) | 资源配置方法、装置和存储介质 | |
CN106559439B (zh) | 一种业务处理方法及设备 | |
CN114826906B (zh) | 流量控制方法、装置、电子设备及存储介质 | |
CN114301680B (zh) | 一种安全策略的匹配方法及装置、存储介质 | |
JP2006332997A (ja) | 通信管理装置、ネットワークシステム、ネットワークシステムにおける通信遮断方法、およびプログラム | |
CN114124568A (zh) | 一种连接控制方法及系统 | |
CN106533882A (zh) | 报文的处理方法及装置 | |
US20250097098A1 (en) | Operation management system, operation management method, and operation management program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |