CN102571531B - 一种访问控制列表的分类匹配方法 - Google Patents
一种访问控制列表的分类匹配方法 Download PDFInfo
- Publication number
- CN102571531B CN102571531B CN201010591480.5A CN201010591480A CN102571531B CN 102571531 B CN102571531 B CN 102571531B CN 201010591480 A CN201010591480 A CN 201010591480A CN 102571531 B CN102571531 B CN 102571531B
- Authority
- CN
- China
- Prior art keywords
- bitmap
- list
- rule
- chunk
- territory
- 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
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种访问列表的分类匹配方法,该方法包括如下步骤:(1)将访问规则的每个域在访问控制列表里的每种值或范围都设定一个对应到规则列表的bitmap,其中每一个bit都代表以该bit在bitmap里的位置为索引,对应到访问控制列表里的相应访问规则在该域上设定的值是否在该bitmap所代表的范围内;(2)根据经过的报文需要被控制的信息,得到在访问规则的每个域中对应报文相关信息的bitmap,并将得到的所有bitmap进行与操作,得到表示报文与所有访问控制列表之间的匹配关系的bitmap。本发明能够加速大规模访问列表的查询速度,并使得查询时间不受规则数量的影响。
Description
技术领域
本发明涉及一种网络访问控制技术,具体涉及一种访问控制列表的分类匹配方法。
背景技术
自从因特网(Internet)面世以来,其迅猛增长的势头就从未停止,目前它已成为世界上规模最大、拥有用户和资源最多的一个重要的超大型计算机网络。因特网的商业化使得基于网络的应用越来越多,特别是由于宽带多媒体业务日益普及,用户对因特网的要求也不再仅仅满足于简单的文件传输,而是要去网络提供更加安全、快速和多样化的服务。
在现代网络设备中,报文过滤已经成为最常用的功能之一,如防火墙的安全控制策略,路由器的访问列表都是网络安全最基本的保障手段。
但是现代网络也同样对转发的性能有着越来越高的要求,尤其是核心网设备和汇聚接入设备。在硬件转发能力不断提升的情况下,报文过滤在时间上的消耗,开始成为影响整机转发能力的瓶颈。尤其当控制策略的数量巨大的时候,传统的查询方式,几乎带来灾难性的结果。
有些对规则过滤的实现使用了状态机制,并使用hash table 来进行查找。 虽然比简单的链表管理快了很多,但是在流量数目巨大的情况下,由于hash冲突的存在, 其下降的幅度也相当明显。即使增加表项容量,也并不能很好的改善冲突率,同时也增加了内存消耗。 其次,对于规则控制这样一种可以不断复杂化的过滤方式,如果要靠状态来完全区分不同的两条流,它所需要比对的域的数量在每次查询操作中都对查询速度有着举足轻重的作用,那么当访问列表要控制的区域不仅仅是地址,端口,协议时,消耗就变大了。
发明内容
本发明针对现有报文过滤在时间上的消耗大的问题,而提供一种访问列表的分类匹配方法,该方法加速大规模访问列表的查询速度,并使得查询时间不受规则数量的影响。
为了达到上述目的,本发明采用如下的技术方案:
一种访问列表的分类匹配方法,该方法包括如下步骤:
(1)将访问规则的每个域在访问控制列表里的每种值或范围都设定一个对应到规则列表的bitmap, 其中每一个bit都代表以该bit在bitmap里的位置为索引,对应到访问控制列表里的相应访问规则在该域上设定的值是否在该bitmap所代表的范围内;
(2)根据经过的报文需要被控制的信息,得到在访问规则的每个域中对应报文相关信息的bitmap,并将得到的所有bitmap进行与操作,得到表示报文与所有访问控制列表之间的匹配关系的bitmap。
在本发明的优选实例中,当访问规则数量很多时,将每个域的每种取值对应到访问控制列表的bitmap 进行排列组合,形成了多级索引表项。
进一步的,在已经配置的访问规则所设定的范围之外再增加一个单独索引表项。
根据上述技术方案形成的本发明针对静态配置好的安全策略,访问列表等具有很好效果。
相比之前以简单链表形式构造的访问列表,本发明在规则数量巨大的时候,有着转发性能方面本质上的提高。实验的数据表明,10条以内的规则数目,普通的链表存储查询会快些,但之后随着规则数的逐步增加,普通的链表管理将使整机性能急剧下降,达到500条以后,完全可以做为不宜于实际使用来定性。但使用本发明提供的分类匹配方法,下降幅度始终在10几条普通链表规则时的数值。
附图说明
以下结合附图和具体实施方式来进一步说明本发明。
图1为等价集合示意图。
图2为分类匹配示意图。
具体实施方式
为了使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合具体图示,进一步阐述本发明。
为加速大规模访问控制列表的查询速度,并使其不受规则数量的影响,本发明采用一种访问控制列表的分类匹配方法,该方法的实现机理如下:
(1)对于一条访问规则,不去具体的分类其域的含义,即不考虑域的类型是ip地址或是协议号,只是作为数据流中某个位置的期望值。由于所有访问规则所能设定的域的数量是相同的,所以本发明为每个域在访问控制列表里所有可能的不同值或范围都设定一个bitmap, 其中每一个bit都代表以这个bit在bitmap里的位置为索引,对应到规则列表里的那个规则在这个域上设定的值是否在这个bitmap 所代表的范围内。
(2)当一条流或是一个报文经过,根据报文里的需要被控制的信息,得到在每个域中对应报文相关信息的bitmap。
其中,有多少个域就能得到多少个bitmap, 将得到的所有bitmap进行与操作,得到新的bitmap 就是该报文与所有访问列表之间的匹配关系。
Bit 1就表示匹配这个规则,因为所有的域对应的报文信息都落在这个规则为每个域设定的范围内。Bit 0就是不匹配,原因可能是没有一个域匹配,也可能是不全部匹配。而最高位bit 1在查询结果bitmap 里的位置作为索引,所对应的控制列表规则的所指定的匹配后行为,就是这次查询所要执行的最后行为,最常见的就是允许报文通过或拒绝报文通过。
进一步的,当访问规则数量很多时,bitmap的长度会很长,这样增加了bitmap与操作的次数,无法实现恒定的查询速度。
为此,本发明又将每个域的每种取值对应到访问控制列表的bitmap 进行排列组合,组合出来的结果也是几种bitmap, 形成了多级索引表项。
这样两两组合,也可以三三组合,一次组合所使用的上级表项越多,那么生成最终表项时所经历的表的层次就越少。也就是最终的查询越快。但由于排列组合的基数更大,将导致空间的消耗更大。最终表项里为了查询的便利,在建立这个表时,不再记录与操作得到的bitmap, 而是直接将第一个为1的bit代表的规则所设定的操作类型直接记录下来。
基于上述表项进行查询的时候,根据报文里的信息,顺着表的层次,最终的结果必然是匹配到最终表项里的某一项,执行其规则。
再进一步的,由于访问规则的覆盖是有范围,所以每条流可能找不到匹配的表项。为此,本发明为所有在已经配置的规则所设定的范围之外再增加一个单独索引表项来记录(就是指所有规则都不匹配时,最后有个默认的deny all规则)。
所谓的独立表项是指在所有acl规则都不匹配时,默认再最后有一个deny all的动作,这个deny all 同样做为一条规则参与到表项的建立,当它之前的所有规则都无法匹配,那么最后必然匹配上这条。
所以当所有规则都不匹配时,就必然落到这个特殊表项,而这个表项的行为,可以根据实际情况来决定。
基于上述方案,其实施如下:
如表1所示,本实施例中涉及四元组匹配(含范围匹配),src_ip, dest_ip, L4_protocol, dest_port;规则数:5条。
表1
phrase0:
确立待匹配字段(即:src_ip, dest_ip, L4_protocol, dest_port)的等价集合。考虑到ip地址的长度为32bits,(太长了,占用的表空间很大)把它分成2个16bits进行匹配,则一共有6个匹配字段。其中Chunk4的长度为8bit,其他都是16bit。
Chunk0:Src_ip(HI);
Chunk1:Src_ip(LOW);
Chunk2:Dst_ip(HI);
Chunk3:Dst_ip(LOW);
Chunk4:L4protocol ;
Chunk5:dest_port。
确立等价集合:
例1.Chunk1
0.77/0.0 是一个点77;
1.0/0.255 是一个区间[256-511];
0.0/255.255 是一个区间[0-65535]。
参见图1,设定区间[0-65535]为等价集合0,不符合规则012,符合规则34,用bitmap表示为:00011。
点77为等价集合1,不符合规则1,符合规则0234,用bitmap表示为:10111。
区间[256-511]为等价集合2,不符合规则02,符合规则134,用bitmap表示为:01011。
phrase0阶段,每个Chunk都有自己的等价集合,每个等价集合有自己的规则bitmap。
使用本发明提供的分类匹配方法查ACL表,只要用ip报文中对应的bit位做索引。就可以得到该ip报文所落中的全部6个chunk的等价集合,由这些等价集合可以得到所对应的规则bitmap。把来自6个chunk的bitmap[0]-bitmap[5]做与操作。即bitmap[0]ANDbitmap[1] AND bitmap[2] AND bitmap[3] AND bitmap[4] AND bitmap[5]可得最终所落中的规则的bitmap。
考虑到bitmap的与操作工作量较大,(当规则数很大的时候,比如320条规则,那么每个bitmap需要10个32位的地址单元才能保存。那么就得与50次(以4字节做为与操作的最大基本单位),而不是上面的5次。)所以通常的操作是在生成ACL表的时候,把所有bitmap与结果事先算好,然后通过一层层的索引关系得到最后所落中规则的bitmap。
正是由于一层层的索引关系,将需建立多级的索引表项。该实例中采用了3级索引的方式(参见图2):
phrase1:
该阶段有2个索引表,
索引表1:chunk0的索引结果c00,chunk1的索引结果c01,chunk4的索引结果c04参与索引。
index = c00*6+c01*2+c04;
*6,因为c01的结果有三种[0,1,2],c04的结果有两种[0,1],他们有6种组合;
*2,因为c04的结果有两种[0,1];
索引表1的大小为12,12是c00、c01、c02的组合,一共有12种组合,索引范围[0-11];
但是该12种组合的运算结果(bitmap与操作)只有四种。
索引表2:原理同索引表1;
phrase2:
1个索引表,
利用phrase1的2个索引结果c10和c11,再进行一次索引得到最终结果。
index=c10*5+c11
*5,因为c11的结果有五种[0,1,2,3,4];
索引表的大小为20,20是c10和c11的组合,一共有20种组合,索引范围[0-19];
但是该20种组合的运算结果(bitmap与操作)只有五种。
根据index得到phrase2的索引表[0-19]位置中的某一位,该位所对应的bitmap就是该ip报文使用分类匹配方法所落中的最终结果。
其分类匹配过程如下:
某一ip报文,基本字段如下:
src_ip:0.83.1.32;
dst_ip:0.0.4.6;
udp:17;
dest_port:22。
phrase0采用分类匹配算法:
c00=1;
c01=2;
c02=0;
c03=1;
c04=1;
c05=1。
phrase1运算后:
index of 索引表1=11,c10=3;
index of 索引表2=4,c11=3。
phrase2运算后:
index of 索引表=18,c20=1;
bitmap[1]对应的是分类匹配算法所落中的最终匹配规则。
上述实例中涉及的表项建立和查询过程,具体如下:
该实例中涉及的规则设定是由4个域组成,源ip地址/掩码,目的ip地址/掩码,目的端口号(如果对应的协议不存在端口应用,则端口号为0),协议号。四个域的长度分别为4bytes, 4bytes, 2bytes, 1bytes。
每个域的取值范围根据其长度已经有了限制。比如2bytes的就是0-65535,
1bytes 的是0-256。由于ip地址是4bytes, 范围太大,如果参与到之后的排列组合对内存消耗太大,于是将它分割成两个2btyes, 当然这里说的ip地址是和掩码进行过与操作后的地址,很可能是一个网段地址。
这样就构成了该实例中算法表level 0层的6个chunk:
Chunk0:Src_ip(HI);
Chunk1:Src_ip(LOW);
Chunk2:Dst_ip(HI);
Chunk3:Dst_ip(LOW);
Chunk4:L4protocol ;
Chunk5:dest_port。
基础的level 0表项就是原始的6个chunk 构成
Chunk0 取值0-65535, 就是有65536个item,
其中,地址掩码是0bit表示确定,1bit表示任意。
比如rule 1 在6个初始chunk里,都会有对应的值或范围,也就是在数轴上有点或范围。
Src_ip(hi) 是83 这个点
Src_ip(low) 是[256-511]这个区间
Dst_ip(hi) 是0这个点
Dst_ip(low) 是1030 这个点(256*4+6)
Protocol 就是17 这个点
Dst_port 就是[20,30] 这个区间。
如此这样,其他4条规则也可以对应到6个chunk上的值。
而对于每个基础chunk, 有多少条rule,它所对应的bitmap就有多少个bit, 这里5条rule, 那就是5bits长度。
在实际应用中,rule 规则很多,一般都会折算成几个ulong, 32bits设备上,ulong可以直接与操作,加快速度。
该实施例中,level 0 的6个chunk 各自的bitmap 如下:
Chunk0,即Src_ip(Hi) 因为5个rule 一共就2种取值,所以只需要两个bitmap,
一个是对应83这个点的取值,bitmap为11111因为5条规则都能够匹配。另一个是除去83这个点以外的所有值,bitmap 为00011, 只有后两条rule匹配。 然后每个bitmap都会给一个eqID, 为了之后操作准备。
同理chunk1—chunk5, 各自组建起自己的bitmap表项。
然后把每个chunk的每种可能的取值和相应chunk里的bitmap表对应起来。比如chunk 0 有65536种不同的取值,bitmap表是两项。那么每种取值都对应一个bitmap项的eqID, 取值83的那个item对应eqID 1, 其余所有的取值对应eqID 0.
同理chunk1—chunk5 也这样把所有的取值项和对应的bitmap eqID关联起来。
其中,eqID 是每个chunk自己内部用于表示不同bitmap的,所以只在chunk内部编号唯一。
基于上述方案,完成level 0 这个基础chunk list 的建立。 接下去的level 1是在level 0基础上建立。该实例中level 0 的chunk 0, chunk 1, chunk 4 构成level 1的第一个chunk,可称之为chunk 6。然后level 0 的chunk 2, chunk 3, chunk 5构成 level1 的第二个chunk,可称之为chunk 7。构建的方法如下:
首先确认level 1里chunk的表项大小。对于level 0里的chunk, 大小就是根据域的长度决定的所有的可能取值。level 1不然,因为它的取值只可能是构成它的所有level0 的chunk 的bitmap值构成。
比如chunk 6 的大小就是chunk 0, chunk 1, chunk4 三个chunk的bitmap 值组合而成,即 2*3*2=12 。 那chunk 6就有12个表项,和level 0 的chunk一样,接下去就是构造这个chunk可能出现的bitmap, 并把每个表项对应到相应的bitmap 值。
至于bitmap的计算,就是几个相关chunk里的所有bitmap排列组合做与操作的结果。 对于chunk 6来说,12个表项对应的bitmap 就是
Item[0] = chunk 0 第一个bitmap & chunk 1 第一个bitmap & chunk 4第一个bitmap;
Item[1] = chunk 0 第一个bitmap & chunk 1 第一个bitmap & chunk 4第二个bitmap;
Item[2] = chunk 0 第一个bitmap & chunk 1 第二个bitmap & chunk 4第一个bitmap;
Item[3] = chunk 0 第一个bitmap & chunk 1 第二个bitmap & chunk 4第二个bitmap;
Item[4] = chunk 0 第二个bitmap & chunk 1 第一个bitmap & chunk 4第一个bitmap;
上述的排列方式并没有限制,可以先变化chunk 0的eqID, 也可以先变化chunk 4的。但是查询的时候必须也使用同样的排列方式。
依次排列组合得到12个表项的值,但是这12个bitmap 可能有重复,为了节省空间,采用level 0 chunk的做法,做成一个bitmap表,每个bitmap一个eqID表示,然后12个表项里记录其所对应的eqID。
Chunk 7 的做法一样。 注意,从level 0向level 1构造,并不强求是3个level 0chunk构成一个level 1 chunk,也可以两个level 0 chunk构成一个level 1 chunk. 这样6 个level 0 chunk就构成了3个level 1 chunk, 而不是上述中的两个。而这三个可以再一起构成level 2的最终chunk,或者取其中两个构成level 2的一个chunk,再由level 2的这个chunk和level 1剩下的那个chunk再一起构成level 3的最终chunk, 这样level就是4级。由于排列组合的存在,构成一个高级别level chunk所需的低级别level chunk数量越多,占用的空间越大,但是换来的是level 层数的减少,那查询的时间消耗就少,因为查询的过程就是从level 0查到最终level。在实际使用过程中,还是以速度为主。
除了最后一个level ,中间的level 都按照上述处理方式进行。最后一个level,表项的大小确定方式是相同的,也是根据组成最终chunk的低level里的几个chunk 的bitmap数量排列组合而成。该实例中就是4*5=20. 不同的是前几个level的chunk里每个表项对应的值是代表不同bitmap 的eqID, 而最后这个chunk里的每个表项里虽然也对应了低级别bitmap与操作后的结果,但之后对最高位出现bit 1的位置取对应的rule, 并把这个rule的行为即permit/deny记录到最终chunk的表项里。至此,表项建立完毕。
基于上述表项,其查询过程如下:
某一ip报文,基本字段如下:
src_ip:0.83.1.32
dst_ip:0.0.4.6
udp:17
dest_port:22
把流里对应的数据和level 0里的每个chunk做对应。
这个流拆分成6个域后的结果是
Field 0: 83
Field 1: 288
Field 2: 0
Field 3: 1030
Field 4: 17
Field 5: 22
根据这些值在level 0 里对应的chunk table 里取到对应的bitmap :
Chunk 0里83 item对应的eqID 是1,bitmap 就是11111;
Chunk 1 里288 item对应的eqID是2,bitmap就是01011;
依次类推完成level 0的查询工作。
然后根据建表时非level 0表项建立所依据的排列组合公式,将各个chunk 查询得到的eqID代入,即得出高一级表项里的某个项,再通过这个项对应的bitmap的eqID 依次计算并得出更高级别表对应的表项。当到达最终chunk时,就直接获取表项对应的行为permit/deny。
以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。
Claims (2)
1.一种访问控制列表的分类匹配方法,其特征在于,该方法包括如下步骤:
(1)将访问规则的每个域在访问控制列表里的每种值或范围都设定一个对应到访问规则的bitmap,其中每一个bit都代表以该bit在bitmap里的位置为索引,对应到访问控制列表里的相应访问规则在这个域上设定的值是否在该bitmap所代表的范围内;
(2)根据经过的报文需要被控制的信息,得到在访问规则的每个域中对应报文相关信息的bitmap,并将得到的所有bitmap进行与操作,得到表示报文与所有访问控制列表之间的匹配关系的bitmap;
当访问规则数量多于一条时,将每个域的每种取值对应到访问控制列表的bitmap进行排列组合,形成了多级索引表项;同时在建立索引表项时,不再记录与操作得到的bitmap,而是直接将第一个为1的bit代表的规则所设定的操作类型直接记录下来。
2.根据权利要求1所述的一种访问控制列表的分类匹配方法,其特征在于,在已经配置的访问规则所设定的范围之外再增加一个单独索引表项。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010591480.5A CN102571531B (zh) | 2010-12-16 | 2010-12-16 | 一种访问控制列表的分类匹配方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010591480.5A CN102571531B (zh) | 2010-12-16 | 2010-12-16 | 一种访问控制列表的分类匹配方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102571531A CN102571531A (zh) | 2012-07-11 |
CN102571531B true CN102571531B (zh) | 2016-08-24 |
Family
ID=46416047
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010591480.5A Active CN102571531B (zh) | 2010-12-16 | 2010-12-16 | 一种访问控制列表的分类匹配方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102571531B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109802872B (zh) * | 2019-03-19 | 2021-07-30 | 北京信而泰科技股份有限公司 | 一种报文捕获方法、装置及设备 |
CN113641672B (zh) * | 2021-07-30 | 2024-06-25 | 武汉思普崚技术有限公司 | 一种多维度快速匹配方法、装置及存储介质 |
CN113515527B (zh) * | 2021-09-13 | 2021-12-07 | 成都数默科技有限公司 | 一种聚合型ip索引的建立和应用方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1878123A (zh) * | 2005-06-06 | 2006-12-13 | 中兴通讯股份有限公司 | 一种位图聚合的递推流分类方法及其系统 |
CN1905523A (zh) * | 2006-08-02 | 2007-01-31 | 华为技术有限公司 | 一种多域流分类的实现方法 |
CN101146027A (zh) * | 2006-09-14 | 2008-03-19 | 中兴通讯股份有限公司 | 基于访问控制列表分类的方法 |
CN101459576A (zh) * | 2007-12-14 | 2009-06-17 | 上海博达数据通信有限公司 | 一种ip acl归并优化处理的实现方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100488173C (zh) * | 2006-11-24 | 2009-05-13 | 中兴通讯股份有限公司 | 对流分类算法进行自动选择的方法 |
-
2010
- 2010-12-16 CN CN201010591480.5A patent/CN102571531B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1878123A (zh) * | 2005-06-06 | 2006-12-13 | 中兴通讯股份有限公司 | 一种位图聚合的递推流分类方法及其系统 |
CN1905523A (zh) * | 2006-08-02 | 2007-01-31 | 华为技术有限公司 | 一种多域流分类的实现方法 |
CN101146027A (zh) * | 2006-09-14 | 2008-03-19 | 中兴通讯股份有限公司 | 基于访问控制列表分类的方法 |
CN101459576A (zh) * | 2007-12-14 | 2009-06-17 | 上海博达数据通信有限公司 | 一种ip acl归并优化处理的实现方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102571531A (zh) | 2012-07-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Guo et al. | False negative problem of counting bloom filter | |
Che et al. | DRES: Dynamic range encoding scheme for TCAM coprocessors | |
CN101309216B (zh) | 一种ip包分类方法和设备 | |
JP2004537921A (ja) | 高速パケット転送のための方法及びシステム | |
CN104579940A (zh) | 查找访问控制列表的方法及装置 | |
CN102571531B (zh) | 一种访问控制列表的分类匹配方法 | |
CN106685862B (zh) | 一种分片数据包处理方法及装置 | |
EP2898640B1 (en) | Ultra low latency multi-protocol network device | |
Ai et al. | Evolution of IPv6 Internet topology with unusual sudden changes | |
CN103457855B (zh) | 无类域间路由表建立、以及报文转发的方法和装置 | |
McHale et al. | Stochastic pre-classification for SDN data plane matching | |
CN106789727A (zh) | 报文分类方法和装置 | |
Huang et al. | Fast and deterministic hash table lookup using discriminative bloom filters | |
US9330760B2 (en) | Method and apparatus for setting TCAM entry | |
CN105072122A (zh) | 一种数据包快速匹配分类方法 | |
Erdem et al. | Hierarchical hybrid search structure for high performance packet classification | |
TWI413910B (zh) | 數值資料範圍區間查詢方法及系統 | |
Li et al. | Binary-tree-based high speed packet classification system on FPGA | |
CN101848190A (zh) | 基于ip地址集合和端口集合的数据包匹配处理方法 | |
Erdem et al. | Clustered hierarchical search structure for large-scale packet classification on FPGA | |
Ni et al. | A fast multi-pattern matching algorithm for deep packet inspection on a network processor | |
CN104410573B (zh) | 一种基于tcam的包匹配方法 | |
CN108566388B (zh) | 基于布鲁姆过滤器的sdn流规则冲突检测方法及系统 | |
Li et al. | Optimized hash lookup for bloom filter based packet routing | |
Wang et al. | Towards efficient security policy lookup on many-core network processing platforms |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |