一种acl匹配方法和设备的制作方法

文档序号:7799296阅读:318来源:国知局
一种acl匹配方法和设备的制作方法
【专利摘要】本发明提供一种ACL匹配方法和设备,包括:使用最大范围匹配方式对数据包进行第一层匹配;当所述数据包通过所述第一层匹配时,对所述数据包进一步进行一次或多次离散匹配,输出匹配结果。本发明可以在采用最大范围匹配方式的第一层匹配之后,再进一步进行离散匹配,因此可以减少一部分匹配工作,也为匹配过程提供了一定的扩展性。在匹配过程中,所采用的数值范围转换后匹配的方式更易于匹配的进行,缩短匹配时间。
【专利说明】—种ACL匹配方法和设备
【技术领域】
[0001]本发明涉及通信【技术领域】,尤其涉及一种ACL匹配方法和设备。
【背景技术】
[0002]访问控制列表(Access Control List, ACL)是路由器和交换机接口的指令列表,用来控制端口进出的数据包。ACL适用于所有的被路由协议,如IP、IPX、AppleTalk等,包含了匹配关系、条件和查询语句,其目的是为了对某种访问进行控制。ACL广泛应用于路由器、交换机和防火墙等数字通讯产品。
[0003]现有技术一般只对匹配内容进行一次匹配,匹配程序复杂,历时较长,且匹配内容单一,限制性较大。

【发明内容】

[0004](一)要解决的技术问题
[0005]本发明提供一种ACL匹配方法和设备,以解决现有技术中匹配历时长,难度大的技术问题。
[0006](二)技术方案
[0007]为解决上述技术问题,本发明提供一种ACL匹配方法,包括:
[0008]使用最大范围匹配方式对数据包进行第一层匹配;
[0009]当所述数据包通过所述第一层匹配时,对所述数据包进一步进行一次或多次离散匹配,输出匹配结果。
[0010]进一步地,所述使用最大范围匹配方式对数据包进行第一层匹配包括:
[0011]对所述数据包和第一层匹配的内容进行数值转换,将第一层匹配的内容连续存储,使用最大范围匹配方式对所述数据包进行数值匹配。
[0012]进一步地,所述对所述数据包进一步进行一次或多次离散匹配包括:
[0013]将离散匹配内容利用链表进行存储,将所述数据包遍历所有离散匹配链表,进行离散匹配。
[0014]进一步地,
[0015]所述第一层匹配的内容为:数值、时间、地址、用户名、端口、协议名、接口、应用名中的一个或多个。
[0016]进一步地,
[0017]所述离散匹配的内容为:数值、时间、地址、用户名、端口、协议名、接口、应用名中的一个或多个。
[0018]另一方面,本发明还提供一种ACL匹配设备,包括:
[0019]第一匹配单元,用于使用最大范围匹配方式对数据包进行第一层匹配;
[0020]离散匹配单元,用于当所述数据包通过所述第一层匹配时,对所述数据包进一步进行一次或多次离散匹配,输出匹配结果。[0021]进一步地,所述第一匹配单元还用于:
[0022]对所述数据包和第一层匹配的内容进行数值转换,将第一层匹配的内容连续存储,使用最大范围匹配方式对所述数据包进行数值匹配。
[0023]进一步地,所述离散匹配单元还用于:
[0024]将离散匹配内容利用链表进行存储,将所述数据包遍历所有离散匹配链表,进行离散匹配。
[0025]进一步地,
[0026]所述第一匹配单元用于进行第一次匹配的内容为:数值、时间、地址、用户名、端口、协议名、接口、应用名中的一个或多个。
[0027]进一步地,
[0028]所述离散匹配单元用于进行离散匹配的内容为:数值、时间、地址、用户名、端口、协议名、接口、应用名中的一个或多个。
[0029](三)有益效果
[0030]可见,在本发明提供的一种ACL匹配方法和设备中,可以在采用最大范围匹配方式的第一层匹配之后,再进一步进行离散匹配,因此可以减少一部分匹配工作,也为匹配过程提供了一定的扩展性。
[0031]在匹配过程中,所采用的数值范围转换后匹配的方式更易于匹配的进行,缩短匹配时间。
【专利附图】

【附图说明】
[0032]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0033]图1是本发明实施例ACL匹配方法的基本流程示意图;
[0034]图2是本发明实施例1中ACL匹配方法的流程示意图;
[0035]图3是本发明实施例ACL匹配设备的基本结构示意图。
【具体实施方式】
[0036]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0037]本发明实施例首先提供一种ACL匹配方法,参见图1,包括:
[0038]步骤101:使用最大范围匹配方式对数据包进行第一层匹配。
[0039]步骤102:当所述数据包通过所述第一层匹配时,对所述数据包进一步进行一次或多次离散匹配,输出匹配结果。
[0040]可见,在本发明实施例提供的一种ACL匹配方法中,可以在采用最大范围匹配方式的第一层匹配之后,再进一步进行离散匹配,因此可以减少一部分匹配工作,也为匹配过程提供了一定的扩展性。
[0041]优选地,使用最大范围匹配方式对数据包进行第一层匹配可以包括:对数据包和第一层匹配的内容进行数值转换,将第一层匹配的内容连续存储,使用最大范围匹配方式对数据包进行数值匹配。
[0042]优选地,对数据包进一步进行一次或多次离散匹配可以包括:将离散匹配内容利用链表进行存储,将数据包遍历所有离散匹配链表,进行离散匹配。
[0043]优选地,第一层匹配的内容和离散匹配的内容可以包含网络流量中涉及的可以匹配的元素,分别为:数值、时间、地址、用户名、端口、协议名、接口、应用名等。
[0044]实施例1:
[0045]本发明实施例1提供一种ACL匹配方法,以详细说明本发明实施例的具体实现过程,参见图2,其中,需匹配的内容为:时间:9:00-11:00,13:00-17:00 ;IP地址1.1.1.1-1.1.1.10。
[0046]步骤201:使用最大范围匹配方式对数据包进行第一层匹配。
[0047]本步骤中,将所有匹配的内容进行转换,生成范围型的数值,其中,如果存在难以转换为数值的匹配内容,可以将其置于后续的离散匹配当中进行匹配。在本实施例1中,可以将时间设置为最大范围:900-1700 ;IP地址为1.1.1.1-1.1.1.10。将上述范围值进行连续存储,使得数据包对所有的范围值内容进行匹配。
[0048]步骤202:判断匹配结果,如果全部匹配,则进入步骤203 ;而如果有一个不匹配,就表示数据包没有通过第一层匹配,进入步骤204。
[0049]步骤203:对数据包进行离散匹配。
[0050]本步骤中,只需对时间进行离散匹配,将离散匹配设置为:时间900-1100,1300-1700,使用链表进行存储,然后将数据包遍历所有离散匹配链表,进入步骤204。
[0051]步骤204:输出匹配结果。
[0052]至此,则完成了本发明实施例ACL匹配的全过程。
[0053]本发明实施例还提供了一种ACL匹配设备,参见图3,包括:
[0054]第一匹配单元301,用于使用最大范围匹配方式对数据包进行第一层匹配;
[0055]离散匹配单元302,用于当数据包通过所述第一层匹配时,对数据包进一步进行一次或多次离散匹配,输出匹配结果。
[0056]优选地,第一匹配单元301还可以用于:对数据包和第一层匹配的内容进行数值转换,将第一层匹配的内容连续存储,使用最大范围匹配方式对数据包进行数值匹配。
[0057]优选地,离散匹配单元302还可以用于:将离散匹配内容利用链表进行存储,将数据包遍历所有离散匹配链表,进行离散匹配。
[0058]优选地,第一匹配单元301用于进行第一次匹配的内容可以为:数值、时间、地址、用户名、端口中的一个或多个。
[0059]优选地,离散匹配单元302用于进行离散匹配的内容可以为:数值、时间、地址、用户名、端口中的一个或多个。
[0060]可见,本发明实施例至少具有如下有益效果:
[0061]在本发明实施例提供的一种ACL匹配方法和设备中,可以在采用最大范围匹配方式的第一层匹配之后,再进一步进行离散匹配,因此可以减少一部分匹配工作,也为匹配过程提供了一定的扩展性。
[0062]在匹配过程中,所采用的数值范围转换后匹配的方式更易于匹配的进行,缩短匹配时间。
[0063]最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
【权利要求】
1.一种ACL匹配方法,其特征在于,包括: 使用最大范围匹配方式对数据包进行第一层匹配; 当所述数据包通过所述第一层匹配时,对所述数据包进一步进行一次或多次离散匹配,输出匹配结果。
2.根据权利要求1所述的ACL匹配方法,其特征在于,所述使用最大范围匹配方式对数据包进行第一层匹配包括: 对所述数据包和第一层匹配的内容进行数值转换,将第一层匹配的内容连续存储,使用最大范围匹配方式对所述数据包进行数值匹配。
3.根据权利要求1所述的ACL匹配方法,其特征在于,所述对所述数据包进一步进行一次或多次离散匹配包括: 将离散匹配内容利用链表进行存储,将所述数据包遍历所有离散匹配链表,进行离散匹配。
4.根据权利要求1至3中任一项所述的ACL匹配方法,其特征在于: 所述第一层匹配的内容为:数值、时间、地址、用户名、端口、协议名、接口、应用名中的一个或多个。
5.根据权利要求1至3中任一项所述的ACL匹配方法,其特征在于: 所述离散匹配的内容为:数值、时间、地址、用户名、端口、协议名、接口、应用名中的一个或多个。
6.一种ACL匹配设备,其特征在于,包括: 第一匹配单元,用于使用最大范围匹配方式对数据包进行第一层匹配; 离散匹配单元,用于当所述数据包通过所述第一层匹配时,对所述数据包进一步进行一次或多次离散匹配,输出匹配结果。
7.根据权利要求6所述的ACL匹配设备,其特征在于,所述第一匹配单元还用于: 对所述数据包和第一层匹配的内容进行数值转换,将第一层匹配的内容连续存储,使用最大范围匹配方式对所述数据包进行数值匹配。
8.根据权利要求6所述的ACL匹配设备,其特征在于,所述离散匹配单元还用于: 将离散匹配内容利用链表进行存储,将所述数据包遍历所有离散匹配链表,进行离散匹配。
9.根据权利要求6-8中任一项所述的ACL匹配设备,其特征在于: 所述第一匹配单元用于进行第一次匹配的内容为:数值、时间、地址、用户名、端口、协议名、接口、应用名中的一个或多个。
10.根据权利要求6-8中任一项所述的ACL匹配设备,其特征在于: 所述离散匹配单元用于进行离散匹配的内容为:数值、时间、地址、用户名、端口、协议名、接口、应用名中的一个或多个。
【文档编号】H04L29/06GK103905304SQ201410100404
【公开日】2014年7月2日 申请日期:2014年3月18日 优先权日:2014年3月18日
【发明者】朱志博 申请人:汉柏科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1