CN112187743B - 一种基于ip地址最长前缀的网络策略匹配方法及系统 - Google Patents

一种基于ip地址最长前缀的网络策略匹配方法及系统 Download PDF

Info

Publication number
CN112187743B
CN112187743B CN202010962692.3A CN202010962692A CN112187743B CN 112187743 B CN112187743 B CN 112187743B CN 202010962692 A CN202010962692 A CN 202010962692A CN 112187743 B CN112187743 B CN 112187743B
Authority
CN
China
Prior art keywords
hash bucket
network
key value
longest prefix
hash
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
Application number
CN202010962692.3A
Other languages
English (en)
Other versions
CN112187743A (zh
Inventor
向阳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
BEIJING YUNSHAN NETWORKS Inc
Original Assignee
BEIJING YUNSHAN NETWORKS Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by BEIJING YUNSHAN NETWORKS Inc filed Critical BEIJING YUNSHAN NETWORKS Inc
Priority to CN202010962692.3A priority Critical patent/CN112187743B/zh
Publication of CN112187743A publication Critical patent/CN112187743A/zh
Application granted granted Critical
Publication of CN112187743B publication Critical patent/CN112187743B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0236Filtering by address, protocol, port number or service, e.g. IP-address or URL
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/30Types of network names
    • H04L2101/35Types of network names containing special prefixes

Abstract

本发明实施例提供一种基于IP地址最长前缀的网络策略匹配方法及系统,方法包括:将整个IP地址空间根据前N个比特划分为2N个哈希桶,记录每一个哈希桶中的最长前缀长度和对应的网络策略集合;对于任一个IP地址X,根据X的前N个比特找到对应的哈希桶,以及哈希桶中的最长前缀长度p;计算键值K=X/p,根据键值K在所述哈希桶中查找对应的网络策略。本发明实施例将整个IP地址空间分为有限个桶,为每个桶维护一个最长前缀长度L和策略集R,上述L也使得生成查询Fast Path的键值K是唯一的,无需扫描所有可能的前缀长度,从而实现O(1)时间复杂度查找,查找效率高。

Description

一种基于IP地址最长前缀的网络策略匹配方法及系统
技术领域
本发明涉及网络技术领域,尤其涉及一种基于IP地址最长前缀的网络策略匹配方法及系统。
背景技术
在网络流量处理领域,网络策略匹配通常需要实现IP地址最长匹配的效果,例如对于两条策略“IP=1.2.3.0/24,Action=A”和“IP=1.2.0.0/16,Action=B”,其含义为对1.2.3.0/24范围内的IP地址执行动作A,对1.2.0.0/16中且不在1.2.3.0/24范围内的IP地址执行动作B。也就是说,对于1.2.3.0/24范围内的IP地址优先匹配第一条策略,因为第一条策略的IP地址前缀(24)大于第二条策略的IP地址前缀(16),此类匹配称之为IP地址的最长前缀匹配。
IP地址最长前缀匹配广泛应用于网络流量处理场景,例如交换机、防火墙等网络设备中,通常使用的算法包括哈希查找和Trie树查找。
其中,哈希查找算法为:通过将网络策略按掩码长度从大到小排序,相同掩码长度的策略可使用一个哈希桶维护,实现O(1)时间复杂度的快速查找。但其缺点是为了实现最长前缀优先匹配,需要顺次扫描所有的掩码长度,最坏情况下需要扫描所有32个掩码长度,因此总体时间复杂度可高达O(W),对于IPv4,W=32。
Trie树查找算法为:通过将所有网络策略构建一颗最大高度W为32(对于IPv6为128)的二叉树,然后在这棵树上进行快速搜索,直到树节点不再有匹配的儿子节点位置。虽然这类算法拥有很多压缩树高的变种使得复杂度可以低于O(W),但是压缩也会带来构建与搜索的复杂度升高,以及查找过程中CPU Cache效率的降低,实际使用中并不会带来显著的性能提升。
发明内容
本发明实施例提供一种基于IP地址最长前缀的网络策略匹配方法及系统,用以解决现有技术中查找效率低的缺陷,实现网络策略查找效率的提升。
根据本发明实施例的第一方面,提供了一种基于IP地址最长前缀的网络策略匹配方法,包括:
将整个IP地址空间根据前N个比特划分为2N个哈希桶,记录每一个哈希桶中的最长前缀长度和对应的网络策略集合;
对于任一个IP地址X,根据X的前N个比特找到对应的哈希桶,以及哈希桶中的最长前缀长度p;
计算键值K=X/p,根据键值K在所述哈希桶中查找对应的网络策略。
在上述技术方案的基础上,本发明实施例还可以作出如下改进。
可选的,所述将整个IP地址空间根据前N个比特划分为2N个哈希桶包括:
对于IPV4的IP地址空间,N取16;
对于IPV6的IP地址空间,N取24。
可选的,所述记录每一个哈希桶中的最长前缀长度和对应的网络策略集合包括:
对划分后的每一个哈希桶中的最长前缀长度和对应的网络策略集合进行初始化;
对于任一个网络策略r中的IP前缀X/Y,将所述IP前缀X/Y对应到多个哈希桶中;
更新每一个哈希桶中的最长前缀长度,以及将所述任一个网络策略r添加到所述多个哈希桶中;
记录更新后的每一个哈希桶中的最长前缀前度和网络策略集合。
可选的,所述对于任一个网络策略r中的IP前缀X/Y,将所述IP前缀X/Y对应到多个哈希桶中包括:
对于任一个网络策略r中的IP前缀X/Y,当Y<N时,将IP前缀拆分到M=2^(N-Y)个哈希桶中;
当Y>=N时,IP前缀直接放入唯一的一个哈希桶中。
可选的,所述计算键值K=X/p,根据键值K在所述哈希桶中查找对应的网络策略包括:
若所述哈希桶中存在键值K对应的网络策略,则返回对应的网络策略;
若所述哈希桶中不存在键值K对应的网络策略,则对所述哈希桶中的所有网络策略进行扫描,找到最长前缀对应的网络策略作为键值K对应的网络策略,并将键值K和对应的网络策略存储于所述哈希桶。
根据本发明实施例的第二方面,提供了一种基于IP地址最长前缀的网络策略匹配系统,包括:
划分模块,用于将整个IP地址空间根据前N个比特划分为2N个哈希桶;
记录模块,用于记录每一个哈希桶中的最长前缀长度和对应的网络策略集合;
查找模块,用于对于任一个IP地址X,根据X的前N个比特查找对应的哈希桶,以及哈希桶中的最长前缀长度p;以及计算键值K=X/p,根据键值K在所述哈希桶中查找对应的网络策略。
可选的,所述查找模块,具体用于:
若所述哈希桶中存在键值K对应的网络策略,则返回对应的网络策略;
若所述哈希桶中不存在键值K对应的网络策略,则对所述哈希桶中的所有网络策略进行扫描查找,找到最长前缀对应的网络策略作为键值K对应的网络策略,并将键值K和对应的网络策略存储于所述哈希桶。
本发明实施例还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述基于IP地址最长前缀的网络策略匹配方法的步骤。
本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述基于IP地址最长前缀的网络策略匹配方法的步骤。
本发明实施例提供的一种基于IP地址最长前缀的网络策略匹配方法及系统,将整个IP地址空间分为有限个桶,为每个桶维护一个最长前缀长度p和策略集R,上述p也使得生成查询Fast Path的键值K是唯一的,无需扫描所有可能的前缀长度,从而实现O(1)时间复杂度查找,查找效率高。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种基于IP地址最长前缀的网络策略匹配方法的流程示意图;
图2为本发明实施例提供的一种基于IP地址最长前缀的网络策略匹配系统的结构示意图;
图3是本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1,提供了一种基于IP地址最长前缀的网络策略匹配方法,包括:将整个IP地址空间根据前N个比特划分为2N个哈希桶,记录每一个哈希桶中的最长前缀长度和对应的网络策略集合;对于任一个IP地址X,根据X的前N个比特找到对应的哈希桶,以及哈希桶中的最长前缀长度p;计算键值K=X/p,根据键值K在所述哈希桶中查找对应的网络策略。
可以理解的是,基于背景技术中查找效率低下的缺点,本发明实施例提出了一种网络策略匹配方法,将整个IP地址空间根据前N个比特划分为2^N个哈希桶。比如,对于IPV4地址空间,1.0.0.0/8:1.0.0.0~1.255.255.255.255,N取16,将IP地址的整个空间划分为256个哈希桶,1.0.0.0/16,1.1.0.0/16,1.2.0.0/16....,1.255.0.0/16。记录每一个哈希桶中的最长前缀长度和对应的网络策略集合。对于任一个具体的IP地址,可以根据IP地址的前N个比特找到对应的哈希桶,以及哈希桶中的最长前缀长度p,计算键值K=X/p,根据键值K在哈希桶中查找对应的网络策略。
本发明实施例将整个IP地址空间分为有限个桶,为每个桶维护一个最长前缀长度p和策略集R,上述p也使得生成查询Fast Path的键值K是唯一的,无需扫描所有可能的前缀长度,从而实现O(1)时间复杂度查找,查找效率高。
作为一种可能的实施方式,将整个IP地址空间根据前N个比特划分为2N个哈希桶包括:对于IPV4的IP地址空间,N取16;对于IPV6的IP地址空间,N取24。
可以理解的是,对于IPV4,取N为16,将整个IP地址空间划分为216个哈希桶;对于IPV6,取N为24,将整个IP地址空间划分为224个哈希桶,将划分后的哈希桶记为B={B1,B2,…,BM},其中M=2^N。
作为一种可能的实施方式,记录每一个哈希桶中的最长前缀长度和对应的网络策略集合包括:对划分后的每一个哈希桶中的最长前缀长度和对应的网络策略集合进行初始化;对于任一个网络策略r中的IP前缀X/Y,将所述IP前缀X/Y对应到多个哈希桶中;更新每一个哈希桶中的最长前缀长度,以及将所述任一个网络策略r添加到所述多个哈希桶中;记录更新后的每一个哈希桶中的最长前缀前度和网络策略集合。
可以理解的是,对于上述每个哈希桶Bi,记录其中的最长前缀长度LBi,LBi的初始值为N;以及对于上述每个桶Bi,记录其中的网络策略集合RBi,RBi的初始值为空。
对于网络策略rj(j为网络策略的序号)中的IP前缀X/Y,将其对应到每一个哈希桶中,具体的,当Y<N时,IP前缀需要拆分到M=2^(N-Y)个哈希桶中,例如当N=16、IP前缀等于1.2.0.0/15时,需要将此前缀拆分到1.2.0.0/16和1.2.1.0/16共m=2^(16-15)两个桶中;当Y>=N时,IP前缀可以直接放入唯一的一个桶中,例如当N=16、IP前缀等于1.2.0.0/17时,可以直接对应到桶1.2.0.0/16中,具体的实例可参见如下:
原始的网络策略r如下:
IP=0.0.0.0/22,Action=A;
IP=1.2.3.0/24,Action=B;
IP=1.2.2.0/23,Action=C;
IP=1.3.0.0/22,Action=D;
对应到各个哈希桶中的结果如下:
桶0.0.0.0/16:最长前缀22,策略集合:
IP=0.0.0.0/22,Action=A
...;
桶1.2.0.0/16:最长前缀24,策略集合:
IP=1.2.3.0/24,Action=B
IP=1.2.2.0/24,Action=C
IP=1.2.3.0/24,Action=C
...;
桶=1.3.0.0/16:最长前缀22,策略集合:
IP=1.3.0.0/22,Action=D
...。
对于B={B1,B2,…,BM}中的每个哈希桶,依次更新其最长前缀长度LBi=max{LBi,Y};以及对于B={B1,B2,…,BM}中的每个哈希桶,依次向集合RBi中加入当前策略rj
至此,将每一个网络策略和对应的IP前缀均对应到哈希桶中,记录每一个哈希桶中的最长前缀长度和网络策略集合。
作为一种可能的实施方式,计算键值K=X/p,根据键值K在所述哈希桶中查找对应的网络策略包括:若哈希桶中存在键值K对应的网络策略,则返回对应的网络策略;若哈希桶中不存在键值K对应的网络策略,则对所述哈希桶中的所有网络策略进行扫描,找到最长前缀对应的网络策略作为键值K对应的网络策略,并将键值K和对应的网络策略存储于所述哈希桶。
可以理解的是,网络策略查找的过程为,对于任一个IP地址X,取其前N个比特,找到对应的哈希桶bx,获取哈希桶bx中的最长前缀长度p=Lbx。计算键值K=“X的前p比特X/p”,在哈希桶bx中查找X/p所对应的网络策略。比如,X=1.2.3.4,p=18,则键值K=X/p=1.2.3.4/18,根据键值K在哈希桶bx中查找对应的网络策略。
若在哈希桶bx能够查找到键值K对应的网络策略,则返回X/p在哈希桶bx中存储的网络策略;若在哈希桶bx中无法找到键值K对应的网络策略,则在哈希桶bx对应的策略集合Rbx中扫描所有的网络策略,找到可匹配的最长前缀的网络策略,并将键值K和最长前缀的网络策略对应存储在网络策略集合Rbx中,以便下次可直接进行查找。
从上述查找算法描述可以看出,对于IP的最长前缀匹配部分,每个IP X仅需要一次位运算X/p得到键值K、一次O(1)数组查找得到键值K对应的哈希桶以及一次O(1)哈希桶的查找,整个快速查找路径部分是O(1)时间复杂度。另外,和以往哈希算法、Trie树算法不相同的是,本发明实施例的方法在上述查找步骤中加入键值K代表了一个IP前缀X/p中的所有IP,而不是X本身,因此,在查找过程中匹配的命中率高。
本发明实施例提供的方法特别适用于网络策略中IP比较集中的情况,例如虚拟私有云(Virtual Private Cloud)环境中的内网IP策略通常限定在三大内网地址段10.0.0.0/8、192.168.0.0/16和172.16.0.0/12之一中,IP比较集中的网段所对应的网络策略通常是同一条。
参见图2,提供了一种基于IP地址最长前缀的网络策略匹配系统,包括:
划分模块21,用于将整个IP地址空间根据前N个比特划分为2N个哈希桶。
记录模块22,用于记录每一个哈希桶中的最长前缀长度和对应的网络策略集合。
查找模块23,用于对于任一个IP地址X,根据X的前N个比特查找对应的哈希桶,以及哈希桶中的最长前缀长度p;以及计算键值K=X/p,根据键值K在所述哈希桶中查找对应的网络策略。
其中,查找模块23,具体用于:若哈希桶中存在键值K对应的网络策略,则返回对应的网络策略;若哈希桶中不存在键值K对应的网络策略,则对所述哈希桶中的所有网络策略进行扫描查找,找到最长前缀对应的网络策略作为键值K对应的网络策略,并将键值K和对应的网络策略存储于哈希桶。
图3示例了一种电子设备的实体结构示意图,如图3所示,该电子设备可以包括:处理器(processor)310、通信接口(Communications Interface)320、存储器(memory)330和通信总线340,其中,处理器310,通信接口320,存储器330通过通信总线340完成相互间的通信。处理器310可以调用存储器330中的逻辑指令,以执行基于IP地址最长前缀的网络策略匹配方法,该方法包括:将整个IP地址空间根据前N个比特划分为2N个哈希桶,记录每一个哈希桶中的最长前缀长度和对应的网络策略集合;对于任一个IP地址X,根据X的前N个比特找到对应的哈希桶,以及哈希桶中的最长前缀长度p;计算键值K=X/p,根据键值K在所述哈希桶中查找对应的网络策略。
此外,上述的存储器330中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的基于IP地址最长前缀的网络策略匹配方法,该方法包括:将整个IP地址空间根据前N个比特划分为2N个哈希桶,记录每一个哈希桶中的最长前缀长度和对应的网络策略集合;对于任一个IP地址X,根据X的前N个比特找到对应的哈希桶,以及哈希桶中的最长前缀长度p;计算键值K=X/p,根据键值K在所述哈希桶中查找对应的网络策略。
又一方面,本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的基于IP地址最长前缀的网络策略匹配方法,该方法包括:将整个IP地址空间根据前N个比特划分为2N个哈希桶,记录每一个哈希桶中的最长前缀长度和对应的网络策略集合;对于任一个IP地址X,根据X的前N个比特找到对应的哈希桶,以及哈希桶中的最长前缀长度p;计算键值K=X/p,根据键值K在所述哈希桶中查找对应的网络策略。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
本发明实施例提供的基于IP地址最长前缀的网络策略匹配方法及系统,将整个IP地址空间分为有限个哈希桶,为每个哈希桶维护一个最长前缀长度p和网络策略集R,上述p有利于向哈希桶中批量加入整个网段进行Cache,显著提升哈希桶查找的命中效率;同时上述p也使得生成查询哈希表的键值K是唯一的,无需扫描所有可能的前缀长度,从而实现O(1)时间复杂度查找,降低了查找的时间复杂度。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (8)

1.一种基于IP地址最长前缀的网络策略匹配方法,其特征在于,包括:
将整个IP地址空间根据前N个比特划分为2N个哈希桶,记录每一个哈希桶中的最长前缀长度和对应的网络策略集合;
对于任一个IP地址X,根据X的前N个比特找到对应的哈希桶,以及哈希桶中的最长前缀长度p;
计算键值K=X/p,根据键值K在所述哈希桶中查找对应的网络策略。
2.根据权利要求1所述的网络策略匹配方法,其特征在于,所述将整个IP地址空间根据前N个比特划分为2N个哈希桶包括:
对于IPV4的IP地址空间,N取16;
对于IPV6的IP地址空间,N取24。
3.根据权利要求1或2所述的网络策略匹配方法,其特征在于,所述记录每一个哈希桶中的最长前缀长度和对应的网络策略集合包括:
对划分后的每一个哈希桶中的最长前缀长度和对应的网络策略集合进行初始化;
对于任一个网络策略r中的IP前缀,将所述IP前缀对应到多个哈希桶中;
更新每一个哈希桶中的最长前缀长度,以及将所述任一个网络策略r添加到所述多个哈希桶中;
记录更新后的每一个哈希桶中的最长前缀长度和网络策略集合。
4.根据权利要求1所述的网络策略匹配方法,其特征在于,所述计算键值K=X/p,根据键值K在所述哈希桶中查找对应的网络策略包括:
若所述哈希桶中存在键值K对应的网络策略,则返回对应的网络策略;
若所述哈希桶中不存在键值K对应的网络策略,则对所述哈希桶中的所有网络策略进行扫描,找到最长前缀对应的网络策略作为键值K对应的网络策略,并将键值K和对应的网络策略存储于所述哈希桶。
5.一种基于IP地址最长前缀的网络策略匹配系统,其特征在于,包括:
划分模块,用于将整个IP地址空间根据前N个比特划分为2N个哈希桶;
记录模块,用于记录每一个哈希桶中的最长前缀长度和对应的网络策略集合;
查找模块,用于对于任一个IP地址X,根据X的前N个比特查找对应的哈希桶,以及哈希桶中的最长前缀长度p;以及计算键值K=X/p,根据键值K在所述哈希桶中查找对应的网络策略。
6.根据权利要求5所述的网络策略匹配系统,其特征在于,所述查找模块,具体用于:
若所述哈希桶中存在键值K对应的网络策略,则返回对应的网络策略;
若所述哈希桶中不存在键值K对应的网络策略,则对所述哈希桶中的所有网络策略进行扫描查找,找到最长前缀对应的网络策略作为键值K对应的网络策略,并将键值K和对应的网络策略存储于所述哈希桶。
7.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至4任一项所述基于IP地址最长前缀的网络策略匹配方法的步骤。
8.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至4任一项所述基于IP地址最长前缀的网络策略匹配方法的步骤。
CN202010962692.3A 2020-09-14 2020-09-14 一种基于ip地址最长前缀的网络策略匹配方法及系统 Active CN112187743B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010962692.3A CN112187743B (zh) 2020-09-14 2020-09-14 一种基于ip地址最长前缀的网络策略匹配方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010962692.3A CN112187743B (zh) 2020-09-14 2020-09-14 一种基于ip地址最长前缀的网络策略匹配方法及系统

Publications (2)

Publication Number Publication Date
CN112187743A CN112187743A (zh) 2021-01-05
CN112187743B true CN112187743B (zh) 2022-10-28

Family

ID=73920760

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010962692.3A Active CN112187743B (zh) 2020-09-14 2020-09-14 一种基于ip地址最长前缀的网络策略匹配方法及系统

Country Status (1)

Country Link
CN (1) CN112187743B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113343034A (zh) * 2021-06-08 2021-09-03 湖南大学 Ip查找方法、系统及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101778142A (zh) * 2009-12-11 2010-07-14 东南大学 比特串和哈希函数组合的网络地址前缀保留的匿名化方法
CN101998676A (zh) * 2009-08-21 2011-03-30 中国移动通信集团公司 一种地址前缀分配的方法和系统
CN102945249A (zh) * 2012-10-10 2013-02-27 北京邮电大学 一种策略规则匹配查询树生成方法、匹配方法及装置
CN104426774A (zh) * 2013-09-03 2015-03-18 中兴通讯股份有限公司 一种同时支持IPv4和IPv6的高速路由查找方法及装置
CN110120942A (zh) * 2019-04-17 2019-08-13 新华三信息安全技术有限公司 安全策略规则匹配方法及装置、防火墙设备及介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101286935A (zh) * 2008-05-07 2008-10-15 中兴通讯股份有限公司 一种基于ip地址范围的路由查找方法
US9647941B2 (en) * 2013-10-04 2017-05-09 Avago Technologies General Ip (Singapore) Pte. Ltd. Hierarchical hashing for longest prefix matching
CN106549872B (zh) * 2016-10-31 2019-05-24 西安空间无线电技术研究所 最长前缀匹配与精确匹配结合的星载快速路由查找系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101998676A (zh) * 2009-08-21 2011-03-30 中国移动通信集团公司 一种地址前缀分配的方法和系统
CN101778142A (zh) * 2009-12-11 2010-07-14 东南大学 比特串和哈希函数组合的网络地址前缀保留的匿名化方法
CN102945249A (zh) * 2012-10-10 2013-02-27 北京邮电大学 一种策略规则匹配查询树生成方法、匹配方法及装置
CN104426774A (zh) * 2013-09-03 2015-03-18 中兴通讯股份有限公司 一种同时支持IPv4和IPv6的高速路由查找方法及装置
CN110120942A (zh) * 2019-04-17 2019-08-13 新华三信息安全技术有限公司 安全策略规则匹配方法及装置、防火墙设备及介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
一种基于模式最长前缀正文分割的串匹配新算法;庞善臣等;《小型微型计算机系统》;20040330;第25卷(第3期);全文 *

Also Published As

Publication number Publication date
CN112187743A (zh) 2021-01-05

Similar Documents

Publication Publication Date Title
US7110540B2 (en) Multi-pass hierarchical pattern matching
WO2019200714A1 (zh) 服务器连接方法、计算机可读存储介质、终端设备及装置
CN110120942B (zh) 安全策略规则匹配方法及装置、防火墙设备及介质
JP4452183B2 (ja) プログラマブル状態マシンのデータ構造を作成して入力単語連鎖を構文解析する方法、プログラマブル状態マシンのデータ構造を使用して入力単語連鎖に対応する結果として得られた値を検索する方法、ワイヤスピードのディープ・パケット処理を行う方法、ディープ・パケット処理のための装置、チップ埋め込み装置、およびプログラミング・コード命令を含むコンピュータ・プログラム(ディープ・パケット処理のための方法および装置)
US8688902B2 (en) Method and system for processing access control lists using an exclusive-or sum-of-products evaluator
US6792423B1 (en) Hybrid longest prefix match and fixed match searches
EP2560327B1 (en) Routing table establishment method and device
CN109639579B (zh) 组播报文的处理方法及装置、存储介质、处理器
US11463360B2 (en) System and method for range matching
US10628382B2 (en) Teleporting content over network using hash matches
US9294390B2 (en) Hash table storage and search methods and devices
US8923298B2 (en) Optimized trie-based address lookup
US10771386B2 (en) IP routing search
CN109905413B (zh) 一种ip地址的匹配方法及装置
CN111107181B (zh) Nat规则匹配方法、装置、电子设备及存储介质
Moia et al. Similarity digest search: A survey and comparative analysis of strategies to perform known file filtering using approximate matching
CN112187743B (zh) 一种基于ip地址最长前缀的网络策略匹配方法及系统
CN105491094B (zh) 处理http请求的方法及装置
US20170012874A1 (en) Software router and methods for looking up routing table and for updating routing entry of the software router
CN111553669B (zh) 一种交易路由方法、装置及计算机可读存储介质
CN113824814B (zh) 一种转发表的地址匹配方法、装置、网络设备及介质
US20160301658A1 (en) Method, apparatus, and computer-readable medium for efficient subnet identification
Zhou et al. Scalable GPU-accelerated IPv6 lookup using hierarchical perfect hashing
CN110636005B (zh) 知识中心网络的知识路由方法及装置
US10764182B2 (en) Combining prefix lengths into a hash table

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