CN102546398B - 一种报文匹配方法及装置 - Google Patents
一种报文匹配方法及装置 Download PDFInfo
- Publication number
- CN102546398B CN102546398B CN201110424311.7A CN201110424311A CN102546398B CN 102546398 B CN102546398 B CN 102546398B CN 201110424311 A CN201110424311 A CN 201110424311A CN 102546398 B CN102546398 B CN 102546398B
- Authority
- CN
- China
- Prior art keywords
- message
- application layer
- rule
- processing strategy
- transport layer
- 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.)
- Expired - Fee Related
Links
Landscapes
- Computer And Data Communications (AREA)
- Communication Control (AREA)
Abstract
本发明实施例公开了一种报文匹配方法,包括:接收到报文后,确定与报文属性信息匹配的访问控制列表ACL规则,以及获取所述ACL规则对应的报文处理策略,所述ACL规则对应的报文处理策略包括:对所述报文进行传输层或应用层匹配;根据所述ACL规则对应的报文处理策略,对所述报文的传输层数据进行传输层规则匹配或对所述报文的应用层数据进行应用层规则匹配。本发明实施例还公开了一种报文匹配装置。采用本发明,可以对报文进行深度识别。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种报文匹配方法及装置。
背景技术
目前的网络安全检测设备在将接收的报文分流给其它的设备前,通常需要将报文与预设的规则进行匹配,以决定是否转发该报文。具体地,目前对报文进行匹配时,当报文是TCP(Transmission Control Protocol,传输控制协议)报文或UDP(User Datagram Protocol,用户数据包协议)报文时,提取报文的五元组信息,五元组信息包括:源IP(Internet Protocol,网络之间互联协议)地址、目的IP地址、协议号、源端口号和目的端口号;并将五元组信息与ACL(Access ControlList,访问控制列表)规则进行匹配,如果匹配不到ACL规则,则丢弃报文,如果匹配到ACL规则,则转发报文。当报文是非TCP或UDP报文(即未知传输层协议的报文,TCP和UDP均是传输层协议)时,提取报文的三元组信息,三元组信息包括:源IP地址、目的IP地址和协议号;并将三元组信息与ACL规则进行匹配,如果匹配不到ACL规则,则丢弃报文,如果匹配到ACL规则,则转发报文。由于现有中对报文进行匹配时,仅对报文的五元组信息或三元组信息进行匹配,因此对报文的识别粒度较粗,是一种报文的粗匹配。
发明内容
本发明实施例所要解决的技术问题在于,提供一种报文匹配方法及装置,可以对报文进行深度识别。
为了解决上述技术问题,本发明实施例提供了一种报文匹配方法,包括:
接收到报文后,确定与报文属性信息匹配的访问控制列表ACL规则,以及获取所述ACL规则对应的报文处理策略,所述ACL规则对应的报文处理策略包括:对所述报文进行传输层或应用层匹配;
根据所述ACL规则对应的报文处理策略,对所述报文的传输层数据进行传输层规则匹配或对所述报文的应用层数据进行应用层规则匹配;
其中,所述ACL规则对应的报文处理策略还包括:偏移量;
所述根据所述ACL规则对应的报文处理策略,对所述报文的应用层数据进行应用层规则匹配的步骤包括:将应用层开始位加上所述偏移量后的位置作为数据提取位,从所述数据提取位提取预定大小的应用层数据;将所述提取的应用层数据与预设的应用层规则进行匹配;
所述根据所述ACL规则对应的报文处理策略,对所述报文的传输层数据进行传输层规则匹配的步骤包括:将传输层开始位加上所述偏移量后的位置作为数据提取位,从所述数据提取位提取预定大小的传输层数据;将所述提取的传输层数据与预设的传输层规则进行匹配。
相应地,本发明实施例还提供了一种报文匹配装置,包括:
第一模块,用于接收到报文后,确定与所述报文的属性信息匹配的访问控制列表ACL规则,以及获取所述ACL规则对应的报文处理策略,所述ACL规则对应的报文处理策略包括:对所述报文进行传输层或应用层匹配;
第二模块,用于根据所述ACL规则对应的报文处理策略,对所述报文的传输层数据进行传输层规则匹配或对所述报文的应用层数据进行应用层规则匹配;
其中,所述ACL规则对应的报文处理策略还包括:偏移量;
所述第二模块包括:
第一单元,用于将应用层开始位加上所述偏移量后的位置作为数据提取位,从所述数据提取位提取预定大小的应用层数据;或者,用于将传输层开始位加上所述偏移量后的位置作为数据提取位,从所述数据提取位提取预定大小的传输层数据;
第二单元,用于将所述提取的应用层数据与预设的应用层规则进行匹配;或者,用于将所述提取的传输层数据与预设的传输层规则进行匹配。
实施本发明实施例,具有如下有益效果:
本发明实施例接收到报文后,确定与报文属性信息匹配的ACL规则,以及获取所述ACL规则对应的报文处理策略;并根据ACL规则对应的报文处理策略,对报文的传输层数据进行传输层规则匹配或对报文的应用层数据进行应用层规则匹配;由于本发明实施例对报文进行ACL规则匹配后,还对报文的传输层或应用层进行匹配,因此实现了对报文的深度识别,相较于仅根据ACL规则对报文进行匹配的方法,具有更精细的报文识别粒度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明的报文匹配方法的实施例的流程示意图;
图2是关于图1中步骤S12的一种实施方式的流程示意图;
图3是本发明的TCP报文的实施例的结构示意图;
图4是关于图1中步骤S12的另一实施方式的流程示意图;
图5是未知传输层协议报文的结构示意图;
图6是本发明的报文匹配装置的实施例的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,是本发明的报文匹配方法的实施例的流程示意图,所述报文匹配方法包括:
步骤S11,接收到报文后,确定与报文属性信息匹配的ACL规则,以及获取所述ACL规则对应的报文处理策略。
其中,当报文是TCP或UDP报文时,报文属性信息包括:源IP地址、目的IP地址、协议号、源端口号和目的端口号中的任一项或多项。当报文是未知传输层协议报文(非TCP和UDP报文)时,报文属性信息包括:源IP地址、目的IP地址和协议号中的任一项或多项。
具体地,步骤S11接收到报文后,提取报文属性信息,并判断是否有ACL规则与报文属性信息相匹配;如果判断结果为是,则获取匹配的ACL规则对应的报文处理策略;如果判断结果为否,可以选择丢弃该报文。需要说明的是,ACL规则可以包括至少一条,且ACL规则与ACL规则对应的报文处理策略存储在ACL规则表中。需要说明的是,判断是否有ACL规则与报文属性信息相匹配时,可能判断到有多条ACL规则与报文属性信息相匹配,此时将匹配精度最高的ACL规则作为与报文属性信息最终匹配的ACL规则;例如报文的属性信息包括源IP地址且源IP地址为192.168.1.0,ACL规则表中一条ACL规则的内容为“与所有源IP地址为192.168.1.0的报文匹配”,另一条ACL规则的内容为“与所有源IP地址的前三位为192.168.1的报文匹配”,那么报文属性信息将与上述两条ACL规则匹配,但由于报文属性信息与第一条ACL规则更加匹配,因此将第一条ACL规则确定为与报文属性信息匹配的ACL规则,获取第一条ACL规则对应的报文处理策略。
进一步地,报文处理策略包括:丢弃报文、转发报文、对报文进行传输层匹配或对报文进行应用层匹配。当ACL规则对应的报文处理策略为丢弃报文时,在本步骤之后直接将报文丢弃掉;当ACL规则对应的报文处理策略为转发报文时,在本步骤之后可以对报文的五元组信息进行哈希计算,得到哈希值,并将报文转发给维护该哈希值的下一级设备;当ACL规则对应的报文处理策略包括对报文进行传输层匹配或对报文进行应用层匹配时,在本步骤之后执行步骤S12。
步骤S12,根据ACL规则对应的报文处理策略,对所述报文的传输层数据进行传输层规则匹配或对所述报文的应用层数据进行应用层规则匹配。
其中,当ACL规则对应的报文处理策略是对报文进行传输层匹配时,步骤S12提取报文的传输层数据,并将提取的传输层数据与传输层规则进行匹配。当ACL规则对应的报文处理策略是对报文进行应用层匹配时,步骤S12提取报文的应用层数据,并将提取的应用层数据与应用层规则进行匹配。需要说明的是,对报文进行传输层匹配主要是是针对未知传输层协议的报文,对于TCP或UDP报文,由于其传输层协议为TCP或UDP,因此不需要进行传输层规则匹配,TCP或DUP报文主要进行的是应用层规则匹配。
本实施例由于在ACL规则对应的报文处理策略中增加了对报文的传输层进行匹配或对报文的应用层进行匹配的内容,因此在对报文进行匹配时,除了对报文进行ACL规则匹配,还对报文的传输层或应用层匹配,从而实现了对报文的深度识别,且相较于仅根据ACL规则的报文匹配方法,实现了报文的精细化匹配。
请参考图2,是关于图1中步骤S12的一种实施方式的流程示意图,当步骤S11中报文为TCP或UDP报文、且ACL规则对应的报文处理策略为对报文进行应用层匹配时,步骤S12包括:
步骤S21,将应用层开始位加上偏移量后的位置作为数据提取位,并从所述数据提取位提取预定大小的应用层数据。
其中,所述偏移量可以由ACL规则对应的报文处理策略提供,即当报文处理策略为对报文进行应用层匹配时,报文处理策略还提供偏移量信息。所述预定大小可以根据实际需求设置,比如将预定大小设置为32字节。为了便于理解,下面结合附图3对本步骤进行说明,如图3所示,在TCP报文中包括:TCP报头(报文属性信息从此处提取)和应用层数据,其中A为应用层的开始位;A-B的距离为由ACL规则对应的报文处理策略提供的偏移量,也就是说B是数据提取位;B-C这段数据为需要提取的预定大小的应用层数据。
步骤S22、将所述提取的应用层数据与预设的应用层规则进行匹配。
步骤S23、当匹配到相应的应用层规则时,获取所述应用层规则对应的报文处理策略,所述应用层规则对应的报文处理策略包括:丢弃所述报文、转发所述报文或者对所述报文进行应用层匹配。
其中,所述预设的应用层规则可以有多个,且分别对应报文处理策略,应用层规则和应用层规则对应的报文处理策略可以存储在一张应用层规则表中。具体地,步骤S22的实现方式可以包括:判断应用层规则表中是否有与步骤S21提取的应用层数据匹配的应用层规则;如果判断结果为否,则丢弃报文;如果判断结果为是,则执行步骤S23获取所述应用层规则对应的报文处理策略,需要说明的是,如果与提取的应用层数据匹配的应用层规则有多条,则将与提取的应用层数据最匹配的应用层规则作为与最终匹配的应用层规则,并获取其对应的报文处理策略。下面举例对上述过程进行说明:
假设步骤S21提取的应用层数据包括:关键词x和y;应用层规则包括:一条内容为“如果提取的应用层数据同时包括关键词x和y,则与本条匹配”的应用层规则,一条内容为“如果提取的应用层数据包含关键词x,则与本条匹配”的应用层规则,一条内容为“如果提取的应用层数据不包含关键词x和y,则与本条匹配”的应用层规则,那么报文将与前两条应用层规则匹配,由于提取的应用层数据与第一条应用层规则匹配精度更高,因此将第一条应用层规则作为与最终匹配的应用层数据,并获取第一条应用层规则对应的报文处理策略。
进一步地,当应用层规则对应的报文处理策略为丢弃报文时,执行丢弃报文的操作;当应用层规则对应的报文处理策略为转发报文时,转发该报文;当应用层规则对应的报文处理策略为对报文进行应用层匹配时,则执行步骤S24。
步骤S24、继续对所述报文的应用层数据进行应用层规则匹配,直至未匹配到相应的应用层规则或者虽匹配到应用层规则、但所述应用层规则对应的报文处理策略为丢弃或转发所述报文。
其中,继续对报文的应用层数据进行匹配可以与上述步骤S21-步骤S22中涉及的应用层数据进行匹配的方法相同,此时确定数据提取位所用的偏移量可以是由步骤S23中应用层规则对应的报文处理策略提供。
本实施例对报文的应用层数据进行了匹配,实现了对报文的精细化识别;并且应用层规则对应的报文处理策略包括:丢弃报文、转发报文或对报文进行应用层匹配;因此对报文的应用层数据进行匹配,可以对报文进行精细化的过滤,例如报文虽然通过了ACL规则避免被丢弃掉,但也有可能在应用层匹配时被丢弃掉。
请参考图3,是关于图1中步骤S12的另一实施方式的流程示意图,当步骤S11中报文为未知传输层协议报文且ACL规则对应的报文处理策略为对报文进行传输层匹配时,步骤S12包括:
步骤S31,将传输层开始位加上偏移量后作为数据提取位,并从所述数据提取位提取预定大小的传输层数据。
其中,所述偏移量可以由ACL规则对应的报文处理策略提供,即当报文处理策略为对报文进行传输层匹配时,还提供偏移量信息。所述预定大小可以根据实际需求设置,比如将预定大小设置为32字节。为了便于理解,下面结合附图5对本步骤进行说明,如图5所示,未知传输协议报文包括:IP报头(报文属性信息从此处提取)、传输层数据和应用层数据,其中E为传输层的开始位;E-F的距离为由ACL规则对应的报文处理策略提供的偏移量,即F为数据提取位;F-G这段数据为需要提取的预定大小的传输层数据。
步骤S32,将所述提取的传输层数据与预设的传输层规则进行匹配。
步骤S33,当匹配到相应的传输层规则时,获取所述传输层规则对应的报文处理策略,所述传输层规则对应的报文处理策略包括:丢弃所述报文、转发所述报文或者对所述报文进行应用层匹配。
其中,所述预设的传输层规则可以有多个且对应报文处理策略,传输层规则和传输层规则对应的报文处理策略可以存储在传输层规则表中。具体地,步骤S32的实现方式可以包括:判断传输层规则表中是否有与步骤S31提取的传输层数据匹配的传输层规则;如果判断结果为否,则丢弃报文;如果判断结果为是,则执行步骤S33获取所述传输层规则对应的报文处理策略,需要说明的是,如果与提取的传输层数据匹配的传输层规则有多条,则将与提取的传输层数据最匹配的传输层规则作为最终匹配的传输层规则,并获取其对应的报文处理策略。
进一步地,当传输层规则对应的报文处理策略为丢弃报文时,在步骤S12之后执行丢弃报文的操作;当传输层规则对应的报文处理策略为转发报文时,在步骤S12之后转发该报文;当传输层规则对应的报文处理策略为对报文进行应用层匹配时,在步骤S12之后对所述报文的应用层数据进行应用层规则匹配,直至匹配不到应用层规则或者虽匹配到应用层规则、但所述应用层规则对应的报文处理策略为丢弃或转发所述报文;其中,对报文的应用层数据进行应用层规则匹配的方法可以是步骤S12的上一实施方式中涉及的对应用层数据进行应用层规则匹配的方法,在此不赘述。需要说明的是,当对应用层数据进行应用层规则匹配时,可以采用传输层起始位作为参考位确定数据提取位,也可以采用应用层起始位作为参考位确定数据提取位。
本实施例需要说明的是,当报文是未知传输协议报文时,ACL规则对应的报文处理策略也可以是对报文的应用层数据进行匹配,此时直接对报文的应用层数据进行应用层规则匹配。
本实施例由于报文的传输层协议未知,因此采用对报文的传输层数据进行传输层规则匹配的方式,可以增加对报文传输协议的识别能力。
上述从方法流程对本发明实施例的报文处理方法进行了说明,下面相应于上述方法,对本发明实施例的报文处理装置进行说明。
请参考图6,是本发明的报文匹配装置的实施例的结构示意图,所述报文匹配装置包括:
第一模块61,用于接收到报文后,确定与报文属性信息匹配的ACL规则,以及获取所述ACL规则对应的报文处理策略。
其中,当报文是TCP或UDP报文时,报文属性信息包括:源IP地址、目的IP地址、协议号、源端口号和目的端口号中的任一项或多项。当报文是未知传输层协议报文(非TCP和UDP报文)时,报文属性信息包括:源IP地址、目的IP地址和协议号中的任一项或多项。
具体地,第一模块61接收到报文后,提取报文属性信息,并判断是否有ACL规则与报文属性信息相匹配;如果判断结果为是,则获取匹配的ACL规则对应的报文处理策略;如果判断结果为否,可以丢弃该报文。需要说明的是,ACL规则可以包括至少一条,且ACL规则与ACL规则对应的报文处理策略存储在ACL规则表中。需要说明的是,判断是否有ACL规则与报文属性信息相匹配时,可能判断到有多条ACL规则与报文属性信息相匹配,此时将匹配精度最高的ACL规则作为与报文属性信息最终匹配的ACL规则,例如报文的属性信息包括源IP地址,且源IP地址为192.168.1.0,ACL规则表中一条ACL规则为“与所有源IP地址为192.168.1.0的报文匹配”,另一条ACL规则为“与所有源IP地址的前三位为192.168.1的报文匹配”,那么报文属性信息将与上述两条ACL规则匹配,但由于报文属性信息与第一条ACL规则更加匹配,因此将第一条ACL规则确定为与报文属性信息匹配的ACL规则,获取第一条ACL规则对应的报文处理策略。
进一步地,报文处理策略包括:丢弃报文、转发报文、对报文进行传输层匹配或对报文进行应用层匹配。当ACL规则对应的报文处理策略为丢弃报文,则直接将报文丢弃掉;当ACL规则对应的报文处理策略为转发报文,则对报文的五元组信息进行哈希计算,得到哈希值,并将报文转发给维护该哈希值的下一级设备;当ACL规则对应的报文处理策略包括:对报文进行传输层匹配或对报文进行应用层匹配,则执行第二模块62。
第二模块62,用于根据ACL规则对应的报文处理策略,对所述报文的传输层数据进行传输层规则匹配或对所述报文的应用层数据进行应用层规则匹配。
其中,当ACL规则对应的报文处理策略是对报文进行传输层匹配时,第二模块62提取报文的传输层数据,并将提取的传输层数据与传输层规则进行匹配。当ACL规则对应的报文处理策略是对报文进行应用层匹配时,第二模块62提取报文的应用层数据,并将提取的应用层数据与应用层规则进行匹配。需要说明的是,对报文进行传输层匹配主要是是针对未知传输层协议的报文,对于TCP或UDP报文,由于其传输层协议为TCP或UDP,因此不需要进行传输层规则匹配,主要进行应用层规则匹配。
本实施例由于在ACL规则对应的报文处理策略中增加了对报文的传输层进行匹配或对报文的应用层进行匹配的内容,因此在对报文进行匹配时,除了对报文进行ACL规则匹配,还对报文的传输层或应用层匹配,从而实现了对报文的深度识别,且相较于仅根据ACL规则的报文匹配方法,实现了报文的精细化匹配。
请继续参考图6,在一种实施方式中,当报文为TCP或UDP报文、且ACL规则对应的报文处理策略为对报文进行应用层匹配时,第二模块61包括:
第一单元621、用于将应用层开始位加上偏移量后的位置作为数据提取位,并从所述数据提取位提取预定大小的应用层数据。
其中,所述偏移量可以由ACL规则对应的报文处理策略提供,即当报文处理策略为对报文进行应用层匹配时,报文处理策略还提供偏移量信息。所述预定大小可以根据实际需求设置,比如将预定大小设置为32字节。
第二单元622、用于将所述提取的应用层数据与预设的应用层规则进行匹配。
第三单元623、用于当匹配到相应的应用层规则时,获取所述应用层规则对应的报文处理策略,所述应用层规则对应的报文处理策略包括:丢弃所述报文、转发所述报文或者对所述报文进行应用层匹配。
其中,所述预设的应用层规则可以有多个,且分别对应有报文处理策略,应用层规则和应用层规则对应的报文处理策略可以存储在一张应用层规则表中。具体地,第二单元622的实现方式可以包括:判断应用层规则表中是否有与第一单元621提取的应用层数据匹配的应用层规则;如果判断结果为否,则丢弃报文;如果判断结果为是,则第三单元623获取所述应用层规则对应的报文处理策略,需要说明的是,如果与提取的应用层数据匹配的应用层规则有多条,则将与提取的应用层数据最匹配的应用层规则作为最终匹配的应用层规则,并获取其对应的报文处理策略。
进一步地,当应用层规则对应的报文处理策略为丢弃报文时,执行丢弃报文的操作;当应用层规则对应的报文处理策略为转发报文时,转发该报文;当应用层规则对应的报文处理策略为对报文进行应用层匹配时,则执行第四单元624。
第四单元624、用于继续对所述报文的应用层数据进行匹配,直至未匹配到相应的应用层规则或者虽匹配到应用层规则、但所述应用层规则对应的报文处理策略为丢弃或转发所述报文。
其中,继续对报文的应用层数据进行匹配可以与上述对应用层数据进行匹配的方式相同;另外此时所用的偏移量可以由第三单元623获取的应用层规则对应的报文处理策略中提供。
本实施例对报文的应用层数据进行了匹配,实现了对报文的精细化识别;并且应用层规则对应的报文处理策略包括:丢弃报文、转发报文或对报文进行应用层匹配;因此对报文的应用层数据进行匹配,可以对报文进行精细化的过滤,例如报文虽然通过了ACL规则避免被丢弃掉,但也有可能在应用层匹配时被丢弃掉。
请继续参考图6,在另一种实施方式中,当报文为未知传输层协议报文、且ACL规则对应的报文处理策略为对报文进行传输层匹配时,
第一单元621,用于将传输层开始位加上偏移量后作为数据提取位,并从所述数据提取位提取预定大小的传输层数据。
其中,所述偏移量可以由ACL规则对应的报文处理策略提供,即当报文处理策略为对报文进行传输层匹配时,还提供偏移量信息。所述预定大小可以根据实际需求设置,比如将预定大小设置为32字节。
第二单元622,用于将所述提取的传输层数据与预设的传输层规则进行匹配;
第三单元623,用于当匹配到相应的传输层规则时,获取所述传输层规则对应的报文处理策略,所述传输层规则对应的报文处理策略包括:丢弃所述报文、转发所述报文或者对所述报文进行应用层匹配。
其中,所述预设的传输层规则可以有多个且对应有报文处理策略,传输层规则和传输层规则对应的报文处理策略可以存储在传输层规则表中。具体地,第三单元623的实现方式可以包括:判断传输层规则表中是否有与第二单元622提取的传输层数据匹配的传输层规则;如果判断结果为否,则丢弃报文;如果判断结果为是,则获取所述传输层规则对应的报文处理策略,需要说明的是,如果与提取的传输层数据匹配的传输层规则有多条,则将与提取的传输层数据最匹配的传输层规则作为最终匹配的传输层规则,并获取其对应的报文处理策略。
进一步地,当传输层规则对应的报文处理策略为丢弃报文时,进一步执行丢弃报文的操作;当传输层规则对应的报文处理策略为转发报文时,进一步执行转发该报文的操作;当传输层规则对应的报文处理策略为对报文进行应用层匹配时,所述报文匹配装置还包括:
第三模块63,用于对所述报文的应用层数据进行应用层规则匹配,直至未匹配到应用层规则或者虽匹配到应用层规则、但所述应用层规则对应的报文处理策略为丢弃或转发所述报文。
其中,对报文的应用层数据进行应用层规则匹配的方式可以与前述中提及的对应用层数据进行应用层规则匹配的方式相同,在此不赘述。需要说明的是,第三模块63对应用层数据进行应用层规则匹配时,可以采用传输层起始位作为参考位确定数据提取位,也可以采用应用层起起位作为参考位确定数据提取位。
本实施例需要说明的是,当报文是未知传输协议报文时,ACL规则对应的报文处理策略也可以是对报文的应用层数据进行匹配,此时直接对报文的应用层数据进行应用层规则匹配。
本实施例由于报文的传输层协议未知,因此采用对报文的传输层数据进行传输层规则匹配的方式,可以增加对报文传输协议的识别能力。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。
Claims (14)
1.一种报文匹配方法,其特征在于,包括:
接收到报文后,确定与报文属性信息匹配的访问控制列表ACL规则,以及获取所述ACL规则对应的报文处理策略,所述ACL规则对应的报文处理策略包括:对所述报文进行传输层或应用层匹配;
根据所述ACL规则对应的报文处理策略,对所述报文的传输层数据进行传输层规则匹配或对所述报文的应用层数据进行应用层规则匹配;
其中,所述ACL规则对应的报文处理策略还包括:偏移量;
所述根据所述ACL规则对应的报文处理策略,对所述报文的应用层数据进行应用层规则匹配的步骤包括:将应用层开始位加上所述偏移量后的位置作为数据提取位,从所述数据提取位提取预定大小的应用层数据;将所述提取的应用层数据与预设的应用层规则进行匹配;
所述根据所述ACL规则对应的报文处理策略,对所述报文的传输层数据进行传输层规则匹配的步骤包括:将传输层开始位加上所述偏移量后的位置作为数据提取位,从所述数据提取位提取预定大小的传输层数据;将所述提取的传输层数据与预设的传输层规则进行匹配。
2.如权利要求1所述的方法,其特征在于,当所述报文为传输控制协议TCP报文或用户数据协议UDP报文时,
所述报文属性信息包括:源网络之间互联协议IP地址、目的IP地址、协议号、源端口号和目的端口号中的任一项或多项;
所述ACL规则对应的报文处理策略包括:对所述报文进行传输层匹配。
3.如权利要求2所述的方法,其特征在于,
当匹配到应用层规则时,获取所述应用层规则对应的报文处理策略,所述应用层规则对应的报文处理策略包括:丢弃所述报文、转发所述报文或者对所述报文进行应用层匹配。
4.如权利要求3所述的方法,其特征在于,当所述应用层规则对应的报文处理策略为对所述报文进行应用层匹配时,
所述根据所述ACL规则对应的报文处理策略,对所述报文的应用层数据进行应用层规则匹配的步骤还包括:
继续对所述报文的应用层数据进行应用层规则匹配,直至未匹配到应用层规则或者虽匹配到应用层规则、但所述应用层规则对应的报文处理策略为丢弃或转发所述报文。
5.如权利要求1所述方法,其特征在于,当所述报文为未知传输层协议报文时,
所述报文属性信息包括:源IP地址、目的IP地址和协议号中的任一项或多项;
所述ACL规则对应的报文处理策略包括:对所述报文进行传输层匹配。
6.如权利要求5所述的方法,其特征在于,
当匹配到传输层规则时,获取所述传输层规则对应的报文处理策略,所述传输层规则对应的报文处理策略包括:丢弃所述报文、转发所述报文或者对所述报文进行应用层匹配。
7.如权利要求6所述的方法,其特征在于,当所述传输层规则对应的报文处理策略为对所述报文进行应用层匹配时,所述方法还包括:
对所述报文的应用层数据进行应用层规则匹配,直至匹配不到应用层规则或者虽匹配到应用层规则、但所述应用层规则对应的报文处理策略为丢弃或转发所述报文。
8.一种报文匹配装置,其特征在于,包括:
第一模块,用于接收到报文后,确定与报文属性信息匹配的访问控制列表ACL规则,以及获取所述ACL规则对应的报文处理策略,所述ACL规则对应的报文处理策略包括:对所述报文进行传输层或应用层匹配;
第二模块,用于根据所述ACL规则对应的报文处理策略,对所述报文的传输层数据进行传输层规则匹配或对所述报文的应用层数据进行应用层规则匹配;
其中,所述ACL规则对应的报文处理策略还包括:偏移量;
所述第二模块包括:
第一单元,用于将应用层开始位加上所述偏移量后的位置作为数据提取位,从所述数据提取位提取预定大小的应用层数据;或者,用于将传输层开始位加上所述偏移量后的位置作为数据提取位,从所述数据提取位提取预定大小的传输层数据;
第二单元,用于将所述提取的应用层数据与预设的应用层规则进行匹配;或者,用于将所述提取的传输层数据与预设的传输层规则进行匹配。
9.如权利要求8所述的报文匹配装置,其特征在于,当所述报文为传输控制协议TCP报文或用户数据协议UDP报文时,
所述报文属性信息包括:源IP地址、目的IP地址、协议号、源端口号和目的端口号中的任一项或多项;
所述ACL规则对应的报文处理策略包括:对所述报文进行传输层匹配。
10.如权利要求9所述的报文匹配装置,其特征在于,
所述第二模块包括:
第三单元,用于当匹配到应用层规则时,获取所述应用层规则对应的报文处理策略,所述应用层规则对应的报文处理策略包括:丢弃所述报文、转发所述报文或者对所述报文进行应用层匹配。
11.如权利要求10所述的报文匹配装置,其特征在于,当所述应用层规则对应的报文处理策略为对所述报文进行应用层匹配时,
所述第二模块还包括:
第四单元,用于继续对所述报文的应用层数据进行应用层规则匹配,直至未匹配到相应的应用层规则或者虽匹配到应用层规则、但所述应用层规则对应的报文处理策略为丢弃或转发所述报文。
12.如权利要求8所述报文匹配装置,其特征在于,当所述报文为未知传输层协议报文时,
所述报文属性信息包括:源IP地址、目的IP地址和协议号中的任一项或多项;
所述ACL规则对应的报文处理策略包括:对所述报文进行传输层匹配。
13.如权利要求12所述的报文匹配装置,其特征在于,
所述第二模块包括:
第三单元,用于当匹配到传输层规则时,获取所述传输层规则对应的报文处理策略,所述传输层规则对应的报文处理策略包括:丢弃所述报文、转发所述报文或者对所述报文进行应用层匹配。
14.如权利要求12所述的报文匹配装置,其特征在于,当所述传输层规则对应的报文处理策略为对所述报文进行应用层匹配时,
所述报文匹配装置还包括:
第三模块,用于对所述报文的应用层数据进行应用层规则匹配,直至未匹配到应用层规则或者虽匹配到应用层规则、但所述应用层规则对应的报文处理策略为丢弃或转发所述报文。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110424311.7A CN102546398B (zh) | 2011-12-16 | 2011-12-16 | 一种报文匹配方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110424311.7A CN102546398B (zh) | 2011-12-16 | 2011-12-16 | 一种报文匹配方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102546398A CN102546398A (zh) | 2012-07-04 |
CN102546398B true CN102546398B (zh) | 2015-02-25 |
Family
ID=46352387
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110424311.7A Expired - Fee Related CN102546398B (zh) | 2011-12-16 | 2011-12-16 | 一种报文匹配方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102546398B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105871573A (zh) * | 2015-01-20 | 2016-08-17 | 国家计算机网络与信息安全管理中心 | 一种报文分析过滤方法及装置 |
CN106911720A (zh) * | 2017-04-21 | 2017-06-30 | 北京匡恩网络科技有限责任公司 | 一种网闸系统中的安全仲裁方法和装置 |
CN107547564A (zh) * | 2017-09-28 | 2018-01-05 | 新华三信息安全技术有限公司 | 一种报文处理的方法及装置 |
CN108848204B (zh) * | 2018-07-10 | 2021-10-26 | 新华三信息安全技术有限公司 | 一种nat业务快速处理方法及装置 |
CN112422457B (zh) * | 2019-08-23 | 2023-04-07 | 中兴通讯股份有限公司 | 报文处理方法、装置和计算机存储介质 |
CN112910831A (zh) * | 2019-12-04 | 2021-06-04 | 中兴通讯股份有限公司 | 报文匹配方法、装置、防火墙设备和存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101399747A (zh) * | 2007-09-27 | 2009-04-01 | 中兴通讯股份有限公司 | Acl配置实现方法 |
CN101610264A (zh) * | 2009-07-24 | 2009-12-23 | 深圳市永达电子股份有限公司 | 一种防火墙系统、安全服务平台及防火墙系统的管理方法 |
CN201563132U (zh) * | 2009-07-03 | 2010-08-25 | 北京星网锐捷网络技术有限公司 | 网络带宽控制装置与路由器 |
CN101867558A (zh) * | 2009-04-17 | 2010-10-20 | 深圳市永达电子股份有限公司 | 用户态网络协议栈系统及处理报文的方法 |
CN101286936B (zh) * | 2008-05-16 | 2010-10-27 | 成都市华为赛门铁克科技有限公司 | 数据报文的处理方法及装置 |
CN102143074A (zh) * | 2011-03-25 | 2011-08-03 | 中兴通讯股份有限公司 | 网络负荷的分担方法、系统及网络处理器 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7054944B2 (en) * | 2001-12-19 | 2006-05-30 | Intel Corporation | Access control management system utilizing network and application layer access control lists |
-
2011
- 2011-12-16 CN CN201110424311.7A patent/CN102546398B/zh not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101399747A (zh) * | 2007-09-27 | 2009-04-01 | 中兴通讯股份有限公司 | Acl配置实现方法 |
CN101286936B (zh) * | 2008-05-16 | 2010-10-27 | 成都市华为赛门铁克科技有限公司 | 数据报文的处理方法及装置 |
CN101867558A (zh) * | 2009-04-17 | 2010-10-20 | 深圳市永达电子股份有限公司 | 用户态网络协议栈系统及处理报文的方法 |
CN201563132U (zh) * | 2009-07-03 | 2010-08-25 | 北京星网锐捷网络技术有限公司 | 网络带宽控制装置与路由器 |
CN101610264A (zh) * | 2009-07-24 | 2009-12-23 | 深圳市永达电子股份有限公司 | 一种防火墙系统、安全服务平台及防火墙系统的管理方法 |
CN102143074A (zh) * | 2011-03-25 | 2011-08-03 | 中兴通讯股份有限公司 | 网络负荷的分担方法、系统及网络处理器 |
Also Published As
Publication number | Publication date |
---|---|
CN102546398A (zh) | 2012-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102546398B (zh) | 一种报文匹配方法及装置 | |
EP2434689B1 (en) | Method and apparatus for detecting message | |
CN104468624B (zh) | Sdn控制器、路由/交换设备及网络防御方法 | |
CN106790170B (zh) | 一种数据包过滤方法及装置 | |
TWI661698B (zh) | 轉發乙太網路封包的方法和裝置 | |
CN101707617A (zh) | 报文过滤方法、装置及网络设备 | |
CN102148854B (zh) | 对等节点共享流量识别方法和装置 | |
CN108965248B (zh) | 一种基于流量分析的p2p僵尸网络检测系统及方法 | |
CN104660565A (zh) | 恶意攻击的检测方法和装置 | |
CN103916294A (zh) | 协议类型的识别方法和装置 | |
CN103166866A (zh) | 生成表项的方法、接收报文的方法及相应装置和系统 | |
CN108234473A (zh) | 一种报文防攻击方法及装置 | |
CA2931525C (en) | Data stream identifying method and device | |
CN110061921B (zh) | 一种云平台数据包分发方法及系统 | |
CN111181857A (zh) | 一种报文处理方法及装置、存储介质、光网络终端 | |
CN104660597A (zh) | 三层认证方法、装置及三层认证交换机 | |
CN114338510B (zh) | 控制和转发分离的数据转发方法和系统 | |
CN103746768B (zh) | 一种数据包的识别方法及设备 | |
EP3384642B1 (en) | Forwarding table compression | |
CN114301632B (zh) | 一种IPsec数据处理方法、终端及存储介质 | |
CN107547535A (zh) | 防攻击的mac地址学习方法、装置和网络设备 | |
CN107347051B (zh) | 一种业务报文处理方法及系统 | |
EP3944582B1 (en) | Monitoring of abnormal host | |
CN106059882A (zh) | 一种路由插入的方法及装置 | |
CN104994186A (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20150225 Termination date: 20201216 |