CN104092678A - 一种访问控制列表的配置方法和装置 - Google Patents
一种访问控制列表的配置方法和装置 Download PDFInfo
- Publication number
- CN104092678A CN104092678A CN201410312937.2A CN201410312937A CN104092678A CN 104092678 A CN104092678 A CN 104092678A CN 201410312937 A CN201410312937 A CN 201410312937A CN 104092678 A CN104092678 A CN 104092678A
- Authority
- CN
- China
- Prior art keywords
- acl
- rule
- shared segment
- father
- lookup
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 23
- 230000009191 jumping Effects 0.000 claims description 19
- 238000010586 diagram Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 206010010774 Constipation Diseases 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000007306 turnover Effects 0.000 description 1
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提出一种访问控制列表的配置方法和装置,包括:将多个ACL中相同的ACL规则作为ACL共享段进行单独加载;在所述多个ACL中的所述ACL共享段的被引用位置分别预设用于跳转到所述ACL共享段的第一跳转规则;在所述ACL共享段的最末端预设用于跳转到本次ACL查找的父ACL的第二跳转规则;当业务在所述多个ACL中任一父ACL中进行ACL查找时,根据所述第一跳转规则跳转到所述ACL共享段中进行ACL查找,并在完成所述ACL共享段中的ACL查找后,根据所述第二跳转规则跳转到所述父ACL中,以继续完成针对所述父ACL的ACL查找;通过本发明能节约内存空间的占用,同时提高ACL的可阅读性。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种ACL配置方法和装置。
背景技术
ACL(Access Control List,访问控制列表)可以应用在诸多领域,目前最基本的应用就是利用ACL进行报文过滤;此外,ACL还可应用于诸如路由、安全、QoS(Quality of Service,服务质量)等业务中。
所谓ACL,是指一条或多条规则的集合,用于识别报文流。所述规则是指描述报文匹配条件的判断语句,所述匹配条件可以是报文的源地址、目的地址、端口号等,网络设备依照这些规则识别出特定的报文,并根据预先设定的策略对该报文进行处理。
ACL中的每条规则都有自己的编号,该编号在该ACL中是唯一的。在创建规则时,可以手工为其指定一个编号,如未手工指定编号,则由系统为其自动分配一个默认编号。当一个ACL中包含多条规则时,报文会按照一定的顺序与这些规则进行匹配,一旦匹配上某条规则便结束匹配过程。当前通用的匹配顺序多为按照配置顺序,即按照规则编号由小到大进行匹配。
ACL实际上是对数据流的一种分类方法,通过ACL的定义,把数据流分为不同的类型,对每种类型的数据流分别进行不同的业务处理。设备启动后,ACL规则会加载到内存中,调用ACL的业务模块可使用对应的内存地址来访问该ACL。
然而,由于设备启动后ACL是常驻内存的,并且随着ACL广泛的应用于安全、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的可阅读性。
附图说明
图1是本发明一种实施方式中一种ACL配置方法的流程图;
图2是现有技术中ACL占用设备内存的示意图;
图3是本发明一种实施方式中引入ACL共享段后父ACL中进行ACL查找的示意图;
图4是本发明一种实施方式中一种ACL配置装置的框图;
图5是本发明一种实施方式中一种承载所述ACL配置装置的网络设备的硬件结构图。
具体实施方式
本发明通过将多个ACL中相同的ACL规则作为ACL共享段在内存中单独加载,同时在引用该ACL共享段的父ACL以及ACL共享段中分别设置跳转规则,通过跳转规则的跳转完成针对父ACL的ACL顺序查找,从而使得引用所述ACL共享段的父ACL均不需要单独重复加载所述ACL共享段,减少了ACL对内存空间的占用。
下面结合附图并举实施例,对本发明进行详细描述。
请参见图1,本发明提出一种ACL配置方法,应用在网络设备上,所述方法执行如下步骤:
步骤S101、将多个ACL中相同的ACL规则作为ACL共享段进行单独加载;
步骤S102、在所述多个ACL中的所述ACL共享段的被引用位置分别预设用于跳转到所述ACL共享段的第一跳转规则;
步骤S103、在所述ACL共享段的最末端预设用于跳转到本次ACL查找的父ACL的第二跳转规则;
步骤S104、当业务在所述多个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中最后一条或者最后几条包含诸如Permit tcp,Deny udp或者Deny ip等语句的ACL规则,用于防止ACL的意外误配置。例如,所述隐式规则在具体应用中通常包括诸如Deny ip等语句的隐式拒绝规则,所述隐式拒绝规则表示当收到的报文与该列表中隐式拒绝规则之前的任何一条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规则rule0,在第二ACL中可以作为第二条ACL规则rule5(以规则编号的默认步长为5为例)。
另一方面,还可以在所述ACL共享段中设置一个第二跳转规则,用于在完成了ACL共享段的ACL查找后跳转到所述父ACL中继续进行ACL查找;当在ACL共享段中进行ACL查找时,如果查找到所述第二跳转规则,则立即调用所述第二跳转规则所指向的地址跳转到本次ACL查找的父ACL中继续进行ACL查找;其中,所述第二跳转规则指向的地址为所述父ACL中所述ACL共享段的被引用位置的下一条ACL规则起始位置的内存地址。例如,假设设备当前针对父ACL3001进行ACL查找,父ACL3001中在rule0中引用了ACL共享段,当根据所述引用位置加载的所述第一跳转规则跳转到ACL共享段后,继续在ACL共享段中进行ACL查找;如果在ACL共享段中查找到了所述第二跳转规则,则自动调用父ACL3001中rule0的下一条规则rule5起始位置的内存地址(仍以默认步长为5为例),跳转到本次ACL查找的父ACL3001中继续进行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中的rule15,rule20和rule25作为与其他ACL相同的ACL规则加载到ACL共享段中时,这三条ACL规则在ACL共享段中的序号可以重新命名为rule5,rule10和rule15,即父ACL中ACL规则的命名与ACL共享段中的命名可以互不影响。从而,在将ACL共享段中的可渗透规则拷贝到父ACL中时,所述可渗透规则需要按照父ACL中的默认步长根据其在父ACL中所处位置重新进行命名,因此在具体实现时所述可渗透规则在ACL共享段中以及父ACL中的编号可能不同。
当然,在具体实现时,如果希望所述可渗透规则在所述ACL共享段中以及所述父ACL中为统一的编号,可以在ACL的配置阶段就根据所述可渗透规则在所述ACL共享段和所述父ACL中的位置,以及所述ACL共享段以及所述父ACL中所支持的最大ACL规则数量,提前为所述可渗透规则规划一个比较大的编号。例如,如果所述ACL共享段和所述父ACL中ACL规则编号的默认步长均为5,所支持最大ACL规则为10的话,那么所述ACL共享段和所述父ACL中ACL规则编号的最大值可以达到45;那么可以将所述可渗透规则的编号在ACL的配置阶段就统一命名为rule50,从而保证了将所述可渗透规则从ACL共享段中拷贝并加载到父ACL中时,即不会跟已有ACL规则的编号冲突,同时遵从了ACL共享段以及所述父ACL对ACL规则进行独立编号的原则。
值得说明的是,在具体实现时,在将多个ACL中的相同的ACL规则加载到ACL共享段中时,也可以将所述多个ACL中的可渗透规则保留在父ACL中,只将除了可渗透规则之外的其他相同的ACL规则加载到ACL共享段中,其具体实施方式与上述实施方式相同,不再赘述。
以下通过一个具体的应用实例,来详细描述本发明;
以下所示为2个用于防火墙业务的ACL3001和3002;
ACL3001
ACL3002
上述ACL3001和3002均为一维的链表结构,是用于不同接口的防火墙过滤ACL。其中规则5到规则30是完全相同的,用于丢弃已知的一些攻击流量,而规则35、40则不同,与不同接口的流量相匹配。因此必须使用2个不同的ACL来配置,被不同的接口调用。
设备启动后,这两个ACL分别被加载到内存中,根据ACL规则的数量占据内存空间,内存占用情况如图2所示。当使用上述ACL3001和3002的业务需要进行ACL查找时,根据设备为ACL3001和3002分配的内存地址访问对应的ACL,查表后,或转发或丢弃报文。
在本实施例中,可以将所述ACL3001和3002改进为嵌套结构,改进后的ACL包括三个ACL,分别为被业务引用的两个ACL3001和3002(父ACL)以及ACL共享段3099,具体如下:
acl number3099name comm_1 |
rule0deny tcp destination-port eq finger |
rule5deny tcp destination-port eq gopher |
rule10deny tcp destination-port eq kshell |
rule15deny tcp destination-port eq klogin |
rule20deny udp destination-port eq snmptrap |
rule25permit tcp established destination-port eq5555 |
rule30deny tcp destination-port eq5555 |
rule35finger(第二跳转规则) |
rule distribute strict rule90deny ip |
ACL共享段3099
上表中,rule35finger为第二跳转规则,表示业务在进行ACL查找时查找到该规则后进入本次ACL查找的父ACL中(ACL3001或3002)继续进行ACL查找;rule90deny ip即为可渗透规则,对应于原ACL3001和3002中的隐式拒绝规则rule45。在本实施例中,可渗透规则的编号采用统一命名,即在ACL配置阶段就根据各ACL支持最大ACL规则数量以及默认步长为所述可渗透规则设置一个较大的编号。
acl number3001name line_1 |
rule0import acl num3099(第一跳转规则) |
rule5permit tcp source1.1.1.10destination2.1.1.10destination-port eq5556 |
rule10permit icmp source1.1.1.10destination2.1.1.10 |
rule distribute strict rule90deny ip |
父ACL3001
上表中,rule0为第一跳转规则,表示业务在进行ACL查找时查找到该规则后进入ACL3009(即ACL共享段)中继续进行ACL查找。
acl number3002name line_2 |
rule0import acl num3099(第一跳转规则) |
rule5permit tcp source3.1.1.10destination4.1.1.10destination-port eq5556 |
rule10permit icmp source3.1.1.10destination4.1.1.10 |
rule distribute strict rule90deny ip |
父ACL3002
上表中,rule0为第一跳转规则,表示业务在进行ACL查找时查找到该规则后则进入ACL3009(即ACL共享段)中继续进行ACL查找。
设备首先为ACL共享段3009分配一个固定的内存空间;设备启动后,将ACL共享段3009加载到预先分配的所述固定的内存空间中。同时,将ACL共享段中的隐式拒绝规则作为可渗透规则分别拷贝到所述父ACL3001和3002中的最末端,此时父ACL3001、3002以及ACL共享段在设备内存中的占用情况如图3所示。
请参见图3,在该实施例中,父ACL3001和3002中所述ACL共享段的被引用位置相同,均为列表中的第一条规则rule0,当然在具体实现时,所述被引用位置可以不同。所述ACL共享段3009中,预先设置了第二跳转规则rule35,用于在完成共享段的ACL查找后回跳到父ACL中。由于本实施例中ACL共享段中包括隐式拒绝规则,而所述隐式拒绝规则在共享段中不能参与ACL查找,因此所述第二跳转规则rule35需要加载所述隐式拒绝规则之前。
请继续参见图3,查找到所述第一跳转规则时,则调用所述第一跳转规则所指向的地址进行跳转;查找到所述第二跳转规则(finger)时,则调用所述第二跳转规则所指向的地址进行跳转;例如,如图3所示,所述第一跳转规则rule0所指向的地址为共享段3009起始位置的内存地地址;第二跳转规则rule35所指向的地址分别为ACL3001和3002中所述ACL3009的被引用位置rule0的下一条规则rule5的起始位置的内存地址。
在ACL3001中进行ACL顺序查找时,当查找到第一跳转规则rule0,则调用ACL3009起始位置的内存地址跳转到ACL共享段3009中继续进行ACL查找;如果在ACL共享段中未找到匹配规则,则在查找到第二跳转规则rule35时,调用父ACL3001和3002中rule5起始位置的内存地址回跳到父ACL中继续进行ACL查找。
综上所述,本发明通过将多个ACL中相同的ACL规则作为ACL共享段在内存中单独加载,父ACL中不需要单独加载所述ACL共享段,只需要加载一个指向ACL共享段的内存地址;可见,所述ACL共享段在内存中只需加载一次,大大节省了存储空间;同时,本发明将ACL从一维的链表结构扩展为嵌套的树型结构,大大简化了配置以及维护工作量,提高了ACL的可阅读性。
请参见图4,本发明还提出一种ACL配置装置40,应用在网络设备上,其中,请参见图5,作为承载所述ACL配置装置40的网络设备涉及的硬件架构中,通常包括CPU、内存、非易失性存储器、网络接口以及内部总线等。以软件实现为例,本发明装置40通常可以理解为加载在内存中的计算机程序,通过CPU运行之后形成的软硬件相结合的逻辑装置;所述装置40包括:
加载单元401,用于将多个ACL中相同的ACL规则作为ACL共享段进行单独加载;
第一预设单元402,用于在所述多个ACL中的所述ACL共享段的被引用位置分别预设用于跳转到所述ACL共享段的第一跳转规则;
第二预设单元403,用于在所述ACL共享段的最末端预设用于跳转到本次ACL查找的父ACL的第二跳转规则;
查找单元404,当业务在所述多个ACL中任一父ACL中进行ACL查找时,根据所述第一跳转规则跳转到所述ACL共享段中进行ACL查找,并在完成所述ACL共享段中的ACL查找后,根据所述第二跳转规则跳转到所述父ACL中,以继续完成针对所述父ACL的ACL查找。
在本实施例中,所述ACL共享段中还包括可渗透规则;所述可渗透规则为所述ACL共享段中的预留规则,在设备启动时需要加载到父ACL中的对应位置;
所述加载单元401进一步用于在所述多个ACL中相同的ACL规则中包括隐式规则时,将所述隐式规则作为所述可渗透规则加载到父ACL中的对应位置;
其中,所述可渗透规则作为所述ACL共享段中的最后一条规则加载在所述第二跳转规则之后。
在本实施例中,所述查找单元404进一步用于在根据所述第一跳转规则跳转到所述ACL共享段中时,调用所述ACL共享段起始位置的第一内存地址,根据所述第一内存地址跳转到所述ACL共享段中;
所述查找单元404还进一步用于在根据所述第二跳转规则跳转到所述父ACL中时,调用所述被引用位置的下一条ACL规则起始位置的第二内存地址,根据所述第二内存地址跳转到所述父ACL中。
在本实施例中,所述父ACL以及所述ACL共享段中的ACL规则均按照预设步长独立的进行编号。
在本实施例中,所述多个ACL中的所述ACL共享段的被引用位置可以不同。
本领域技术人员可以理解实施例中的装置中的单元可以按照实施例描述分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的单元可以合并为一个单元,也可进一步拆分成多个子模块。上述发明实施例编号仅仅为了描述,不代表实施例的优劣。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (10)
1.一种访问控制列表ACL的配置方法,应用在网络设备上,其特征在于,所述方法包括:
将多个访问控制列表ACL中相同的ACL规则作为ACL共享段进行单独加载;
在所述多个ACL中的所述ACL共享段的被引用位置分别预设用于跳转到所述ACL共享段的第一跳转规则;
在所述ACL共享段的最末端预设用于跳转到本次ACL查找的父ACL的第二跳转规则;
当业务在所述多个ACL中任一父ACL中进行ACL查找时,根据所述第一跳转规则跳转到所述ACL共享段中进行ACL查找,并在完成所述ACL共享段中的ACL查找后,根据所述第二跳转规则跳转到所述父ACL中,以继续完成针对所述父ACL的ACL查找。
2.如权利要求1所述的方法,其特征在于,所述ACL共享段中还包括可渗透规则;所述可渗透规则为所述ACL共享段中的预留规则,在设备启动时需要加载到父ACL中的对应位置;
所述方法还包括:
当所述多个ACL中相同的ACL规则中包括隐式规则时,将所述隐式规则作为所述可渗透规则加载到父ACL中的对应位置;
其中,所述可渗透规则作为所述ACL共享段中的最后一条规则加载在所述第二跳转规则之后。
3.如权利要求1所述的方法,其特征在于,
所述根据所述第一跳转规则跳转到所述ACL共享段中包括:
调用所述ACL共享段起始位置的第一内存地址,根据所述第一内存地址跳转到所述ACL共享段中;
所述根据所述第二跳转规则跳转到所述父ACL中包括:
调用所述被引用位置的下一条ACL规则起始位置的第二内存地址,根据所述第二内存地址跳转到所述父ACL中。
4.如权利要求1所述的方法,其特征在于,所述方法还包括:
所述父ACL以及所述ACL共享段中的ACL规则均按照预设步长独立的进行编号。
5.如权利要求1所述的方法,其特征在于,所述多个ACL中的所述ACL共享段的被引用位置可以不同。
6.一种访问控制列表ACL的配置装置,应用在网络设备上,其特征在于,所述装置包括:
加载单元,用于将多个ACL中相同的ACL规则作为ACL共享段进行单独加载;
第一预设单元,用于在所述多个ACL中的所述ACL共享段的被引用位置分别预设用于跳转到所述ACL共享段的第一跳转规则;
第二预设单元,用于在所述ACL共享段的最末端预设用于跳转到本次ACL查找的父ACL的第二跳转规则;
查找单元,当业务在所述多个ACL中任一父ACL中进行ACL查找时,根据所述第一跳转规则跳转到所述ACL共享段中进行ACL查找,并在完成所述ACL共享段中的ACL查找后,根据所述第二跳转规则跳转到所述父ACL中,以继续完成针对所述父ACL的ACL查找。
7.如权利要求6所述的装置,其特征在于,所述ACL共享段中还包括可渗透规则;所述可渗透规则为所述ACL共享段中的预留规则,在设备启动时需要加载到父ACL中的对应位置;
所述加载单元进一步用于在所述多个ACL中相同的ACL规则中包括隐式规则时,将所述隐式规则作为所述可渗透规则加载到父ACL中的对应位置;
其中,所述可渗透规则作为所述ACL共享段中的最后一条规则加载在所述第二跳转规则之后。
8.如权利要求7所述的装置,其特征在于,
所述查找单元进一步用于在根据所述第一跳转规则跳转到所述ACL共享段中时,调用所述ACL共享段起始位置的第一内存地址,根据所述第一内存地址跳转到所述ACL共享段中;
所述查找单元进一步用于在根据所述第二跳转规则跳转到所述父ACL中时,调用所述被引用位置的下一条ACL规则起始位置的第二内存地址,根据所述第二内存地址跳转到所述父ACL中。
9.如权利要求6所述的装置,其特征在于,所述父ACL以及所述ACL共享段中的ACL规则均按照预设步长独立的进行编号。
10.如权利要求6所述的装置,其特征在于,所述多个ACL中的所述ACL共享段的被引用位置可以不同。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410312937.2A CN104092678B (zh) | 2014-07-02 | 2014-07-02 | 一种访问控制列表的配置方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410312937.2A CN104092678B (zh) | 2014-07-02 | 2014-07-02 | 一种访问控制列表的配置方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104092678A true CN104092678A (zh) | 2014-10-08 |
CN104092678B CN104092678B (zh) | 2018-12-25 |
Family
ID=51640359
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410312937.2A Active CN104092678B (zh) | 2014-07-02 | 2014-07-02 | 一种访问控制列表的配置方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104092678B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104270394A (zh) * | 2014-10-24 | 2015-01-07 | 南京贝伦思网络科技有限公司 | 阻断设备的acl规则高速加载实现方法 |
CN111181870A (zh) * | 2019-12-31 | 2020-05-19 | 国家计算机网络与信息安全管理中心 | 一种基于网络处理器实现多业务规则共享的方法 |
CN111917743A (zh) * | 2020-07-15 | 2020-11-10 | 中国工商银行股份有限公司 | 节点间访问关系切换方法、系统、设备及介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6377577B1 (en) * | 1998-06-30 | 2002-04-23 | Cisco Technology, Inc. | Access control list processing in hardware |
CN1414757A (zh) * | 2002-05-08 | 2003-04-30 | 华为技术有限公司 | 自动按序配置访问控制列表规则的方法及其应用 |
CN1606294A (zh) * | 2003-10-07 | 2005-04-13 | 阿尔卡特公司 | 改进的用于路由器的访问控制列表机制 |
CN1794720A (zh) * | 2005-07-29 | 2006-06-28 | 华为技术有限公司 | 一种数据业务系统及接入控制方法 |
US20060236381A1 (en) * | 2005-04-19 | 2006-10-19 | Weeden Shane B | Assigning ACLs to a hierarchical namespace to optimize ACL inheritance |
CN1968179A (zh) * | 2005-11-16 | 2007-05-23 | 中兴通讯股份有限公司 | 一种基于acl的业务聚合方法 |
CN101557312A (zh) * | 2009-05-08 | 2009-10-14 | 中兴通讯股份有限公司 | 控制网络设备的访问控制列表的方法及装置 |
CN102487374A (zh) * | 2010-12-01 | 2012-06-06 | 中兴通讯股份有限公司 | 一种访问控制列表实现方法及装置 |
CN102811227A (zh) * | 2012-08-30 | 2012-12-05 | 重庆大学 | IPsec协议下标准方式ACL规则的一种管理机制 |
CN103078845A (zh) * | 2012-12-19 | 2013-05-01 | 华为技术有限公司 | 访问控制列表的校验方法和共享存储系统 |
-
2014
- 2014-07-02 CN CN201410312937.2A patent/CN104092678B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6377577B1 (en) * | 1998-06-30 | 2002-04-23 | Cisco Technology, Inc. | Access control list processing in hardware |
CN1414757A (zh) * | 2002-05-08 | 2003-04-30 | 华为技术有限公司 | 自动按序配置访问控制列表规则的方法及其应用 |
CN1606294A (zh) * | 2003-10-07 | 2005-04-13 | 阿尔卡特公司 | 改进的用于路由器的访问控制列表机制 |
US20060236381A1 (en) * | 2005-04-19 | 2006-10-19 | Weeden Shane B | Assigning ACLs to a hierarchical namespace to optimize ACL inheritance |
CN1794720A (zh) * | 2005-07-29 | 2006-06-28 | 华为技术有限公司 | 一种数据业务系统及接入控制方法 |
CN1968179A (zh) * | 2005-11-16 | 2007-05-23 | 中兴通讯股份有限公司 | 一种基于acl的业务聚合方法 |
CN101557312A (zh) * | 2009-05-08 | 2009-10-14 | 中兴通讯股份有限公司 | 控制网络设备的访问控制列表的方法及装置 |
CN102487374A (zh) * | 2010-12-01 | 2012-06-06 | 中兴通讯股份有限公司 | 一种访问控制列表实现方法及装置 |
CN102811227A (zh) * | 2012-08-30 | 2012-12-05 | 重庆大学 | IPsec协议下标准方式ACL规则的一种管理机制 |
CN103078845A (zh) * | 2012-12-19 | 2013-05-01 | 华为技术有限公司 | 访问控制列表的校验方法和共享存储系统 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104270394A (zh) * | 2014-10-24 | 2015-01-07 | 南京贝伦思网络科技有限公司 | 阻断设备的acl规则高速加载实现方法 |
CN104270394B (zh) * | 2014-10-24 | 2017-06-23 | 南京贝伦思网络科技股份有限公司 | 阻断设备的acl规则高速加载实现方法 |
CN111181870A (zh) * | 2019-12-31 | 2020-05-19 | 国家计算机网络与信息安全管理中心 | 一种基于网络处理器实现多业务规则共享的方法 |
CN111181870B (zh) * | 2019-12-31 | 2022-05-13 | 国家计算机网络与信息安全管理中心 | 一种基于网络处理器实现多业务规则共享的方法 |
CN111917743A (zh) * | 2020-07-15 | 2020-11-10 | 中国工商银行股份有限公司 | 节点间访问关系切换方法、系统、设备及介质 |
CN111917743B (zh) * | 2020-07-15 | 2022-07-19 | 中国工商银行股份有限公司 | 节点间访问关系切换方法、系统、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN104092678B (zh) | 2018-12-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103339887B (zh) | 用于优化网络前缀列表搜索的方法 | |
US9485183B2 (en) | System and method for efectuating packet distribution among servers in a network | |
US9979645B2 (en) | Hardware and software methodologies for creating and managing portable service function chains | |
US9577932B2 (en) | Techniques for managing ternary content-addressable memory (TCAM) resources in heterogeneous systems | |
US9692695B2 (en) | Techniques for aggregating hardware routing resources in a multi-packet processor networking system | |
US10459729B2 (en) | Map tables for hardware tables | |
US8800021B1 (en) | Hardware implementation of complex firewalls using chaining technique | |
US10541872B2 (en) | Network policy distribution | |
CN104092678A (zh) | 一种访问控制列表的配置方法和装置 | |
CN101710864B (zh) | 一种多网口Linux服务器的配置方法及装置 | |
CN114024886A (zh) | 跨资源池的网络互通方法、电子设备及可读存储介质 | |
CN104836738A (zh) | 路由硬件表项资源管理方法、装置及网络设备 | |
CN106453088A (zh) | 一种静态路由配置方法及终端 | |
CN104007997A (zh) | 虚拟机安全组的配置方法及装置 | |
US8316151B1 (en) | Maintaining spatial ordering in firewall filters | |
CN114025000B (zh) | 网络访问关系的建立方法、装置、设备及存储介质 | |
US11588739B2 (en) | Enhanced management of communication rules over multiple computing networks | |
CN105245428A (zh) | 一种报文处理规则的配置方法及装置 | |
CN105991428B (zh) | 交换机路由冲突的处理方法及装置 | |
CN109510766B (zh) | 一种智能终端多网络连接环境下的动态路由方法及系统 | |
CN116016448B (zh) | 一种服务网络访问方法、装置、设备及存储介质 | |
CN115484203B (zh) | 一种路由表项操作方法、装置、设备及存储介质 | |
CN103370910A (zh) | 利用链路聚合进行下一跳缩放的方法、系统和计算机可读介质 | |
KR20110037860A (ko) | 플로우 기반 네트워크 장치에서의 포워딩 정보 및 QoS 정보 제공 방법 | |
CN108462639B (zh) | 自治系统中的流量传输控制方法和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Applicant after: Xinhua three Technology Co., Ltd. Address before: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Applicant before: Huasan Communication Technology Co., Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |