报文控制策略的匹配方法及装置的制造方法

文档序号:10578088阅读:154来源:国知局
报文控制策略的匹配方法及装置的制造方法
【专利摘要】本申请提供一种报文控制策略的匹配方法及装置,该方法包括:对接收的报文进行解析,得到报文的五元组信息;将五元组信息中的每个信息与五元组掩码中对应掩码做按位与运算,得到对应的五个运算结果;如果五个运算结果与五元组信息对应相等,则在报文控制策略表中查找与报文匹配的报文控制策略;如果五个运算结果与五元组信息不相等,则确定报文控制策略表中不存在与报文匹配的报文控制策略,停止报文控制策略的匹配操作。本申请通过使用五元组掩码进行预匹配,可过滤掉部分不匹配报文控制策略的流量,减少了无效查找,提高了报文控制策略匹配的性能。
【专利说明】
报文控制策略的匹配方法及装置
技术领域
[0001]本申请涉及网络通信技术领域,尤其涉及一种报文控制策略的匹配方法及装置。
【背景技术】
[0002]随着互联网技术的快速发展,为了保证互联网的安全发展,各种报文处理技术应运而生,一般网络设备可通过报文控制策略来对匹配该报文控制策略的报文进行相应处理,如转发报文、丢弃报文、存储报文等。由于网络流量大,网络设备进行报文控制策略匹配的计算量也很大,因此网络设备存在较大的时延,如何快速匹配报文控制策略成为报文处理的关键。
[0003]现有技术中,可直接提取出报文的五元组信息或者报文内容,并通过快速匹配算法到报文控制策略表中去匹配报文控制策略。但是在大流量的数据采集和分析的应用场景下,大部分报文与网络设备中的报文控制策略无法匹配上,这可造成大量的无效查找,大大降低了报文控制策略匹配的性能。

【发明内容】

[0004]本申请提供一种报文控制策略的匹配方法及装置,以解决现有报文控制策略的匹配方法可能造成大量的无效查找的问题。
[0005]第一方面,提供一种报文控制策略的匹配方法,应用于网络设备中,包括:
[0006]对接收的报文进行解析,得到所述报文的五元组信息;
[0007]将所述五元组信息中的每个信息与五元组掩码中对应掩码做按位与运算,得到对应的五个运算结果;
[0008]如果所述五个运算结果与所述五元组信息对应相等,则在报文控制策略表中查找与所述报文匹配的报文控制策略;
[0009]如果所述五个运算结果与所述五元组信息不相等,则确定所述报文控制策略表中不存在与所述报文匹配的报文控制策略,停止报文控制策略的匹配操作。
[0010]第二方面,提供一种报文控制策略的匹配方法装置,应用于网络设备上,所述装置包括:
[0011 ]解析单元,用于对接收的报文进行解析,得到所述报文的五元组信息;
[0012]运算单元,用于将所述五元组信息中的每个信息与五元组掩码中对应掩码做按位与运算,得到对应的五个运算结果;
[0013]匹配单元,用于在所述五个运算结果与所述五元组信息对应相等时,在报文控制策略表中查找与所述报文匹配的报文控制策略;在所述五个运算结果与所述五元组信息不相等时,确定所述报文控制策略表中不存在与所述报文匹配的报文控制策略,停止报文控制策略的匹配操作。
[0014]本申请的网络设备通过使用五元组掩码进行预匹配,可过滤掉部分不匹配报文控制策略表的流量,避免了网络设备对与报文控制策略无法匹配上的报文进行报文控制策略匹配计算,减少了无效查找,提高了报文控制策略匹配的性能。
【附图说明】
[0015]图1是本申请一种实施例中报文控制策略的匹配方法流程图;
[0016]图2是本申请一种实施例五元组掩码的生成方法流程图;
[0017]图3是本申请一种实施例中报文控制策略的匹配装置的所在硬件设备的硬件示意图;
[0018]图4是本申请一种实施例中报文控制策略的匹配装置示意图。
【具体实施方式】
[0019]这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
[0020]在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
[0021]应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
[0022]本申请中,报文控制策略可包括报文五元组信息以及对该报文的处理操作。
[0023]参见图1,是本申请一种实施例中报文控制策略的匹配方法流程图,该方法应用于网络设备,例如防火墙设备上,包括以下步骤:
[0024]步骤101:对接收的报文进行解析,得到报文的五元组信息。
[0025]本实施例中,网络设备接收到报文后,可对报文进行解析得到的五元组信息,包括:源IP地址、目的IP地址、源端口、目的端口和协议号。
[0026]步骤102:将五元组信息中的每个信息与五元组掩码中对应掩码做按位与运算,得到对应的五个运算结果。
[0027]对应于五元组信息,五元组掩码包括:源IP地址掩码、目的IP地址掩码、源端口掩码、目的端口掩码、协议号掩码。当有新的报文控制策略下发时,网络设备都可根据新下发的报文控制策略对应的五元组信息与网络设备原来存储的五元组掩码中的每个掩码对应做按位或运算,生成并存储一个五元组的掩码。生成五元组掩码的具体操作可参见图2。
[0028]由于五元组的掩码是由所有报文控制策略对应的五元组信息进行或运算计算得到的,因此最后存储的五元组掩码值为I的位可以包含所有报文控制策略的五元组信息为I的位。
[0029]网络设备在接收到报文后,可先将报文五元组信息中的每个信息与五元组掩码中对应掩码做按位与运算,得到对应的五个运算结果。
[0030]步骤103:判断五个运算结果中的每个运算结果与五元组信息中的对应信息是否完全相等。
[0031 ]如果完全相等,则判定五个运算结果与五元组信息对应相等,并执行步骤104,否则判定五个运算结果与五元组信息不相等,并执行步骤105。
[0032]步骤104:如果五个运算结果与五元组信息对应相等,则在报文控制策略表中查找与报文匹配的报文控制策略。
[0033]如果五个运算结果与报文的五元组信息对应相等,则说明此报文的五元组信息很有可能存储在报文控制策略表中,因此可在报文控制策略表中使用快速匹配算法查找与报文匹配的报文控制策略。
[0034]步骤105:如果五个运算结果与五元组信息不相等,则确定报文控制策略表中不存在与报文匹配的报文控制策略,停止报文控制策略的匹配操作。
[0035]由于五元组的掩码是由所有报文控制策略对应的五元组信息进行或运算计算得到的,因此最后存储的五元组掩码值为I的位可以包含所有报文控制策略的五元组信息为I的位。如果五个运算结果与报文的五元组信息不相等,则可确定此报文的五元组信息没有存储在报文控制策略表中,即报文控制策略表中不存在与报文匹配的报文控制策略,停止报文控制策略的匹配操作以免造成无效查找。
[0036]结合图1的实施例可知,本申请中的网络设备可通过使用五元组掩码进行预匹配,可过滤掉部分不匹配报文控制策略表的流量,避免了网络设备对与报文控制策略无法匹配上的报文进行报文控制策略匹配计算,减少了无效查找,提高了报文控制策略匹配的性能。
[0037]参见图2,是本申请一种实施例五元组掩码的生成方法流程图:
[0038]步骤201:添加报文控制策略。
[0039]当有新的报文控制策略下发时,网络设备可在报文控制策略表中添加报文控制策略。
[0040]步骤202:将报文控制策略的对应五元组信息与五元组掩码中对应掩码做按位或运算。
[0041]为了实现本申请,需要预先设置五元组掩码中每个掩码的初始掩码,这里设置每个掩码的初始掩码为O,五元组掩码中各个掩码的位数可与五元组信息对应信息的位数相同,也可统一设置为32位,本申请对此不作特别限定。
[0042]下面以根据报文控制策略中对应五元组信息中的源IP地址生成源IP地址掩码为例描述生成掩码的方法,五元组掩码的其他掩码的生成方法与此相同。
[0043]每次添加报文控制策略时都可将网络设备中存储的源IP地址掩码与所添加的报文控制策略的源IP地址做按位或运算,根据O或I等于I,I或I等于I,0或O等于O的原理,源IP地址掩码的掩码值为I的位可包含所有源IP地址中值为I的位。
[0044]例如,网络设备的报文控制策略表中存储了2条策略,报文控制策略I的源IP地址为1.1.1.1,报文控制策略2的源IP地址为2.2.2.2。由于源IP地址掩码的初始掩码为O,因此与报文控制策略I的源IP地址做按位或运算后,结果为报文控制策略I的源IP地址。报文控制策略I的源IP地址二进制是00000001000000010000000100000001,则源IP地址中值为I的位是第O位,第8位,第16位,第24位。报文控制策略2的源IP地址的二进制是00000010000000100000001000000010,则值为 I 的位是第 I 位,第9位,第17位,第 25 位。
[0045]将报文控制策略I的源IP地址和报文控制策略2的源IP地址进行位或运算,得到的结果是3.3.3.3,二进制是00000011000000110000001100000011,则结果值为I的bit位是第O位,第I位,第8位,第9位,第16位,第17位,第24位,第25位。
[0046]按照此操作方法,即可生成五元组掩码的其他掩码。
[0047]步骤203:存储五元组掩码。
[0048]结合图2的实施例可知,本申请中的网络设备可通过按位或运算得到五元组掩码,以用于图1所示的实施例对接收到的报文进行预匹配。
[0049]参见图3,是本申请一种实施例中报文控制策略的匹配装置的所在硬件设备的硬件示意图。
[0050]本申请数据包过滤装置的实施例可以应用在网络设备上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图3所示,为本申请一种实施例中报文控制策略的匹配装置的所在硬件设备的硬件示意图,除了图3所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的设备通常根据该装置的实际功能,还可以包括其他硬件,对此不再赘述。
[0051]参见图4,是本申请一种实施例中报文控制策略的匹配装置示意图,该装置可以应用于网络设备,用于实现图1所示实施例的方法,该装置可以包括:解析单元410、运算单元420、匹配单元430。
[0052]解析单元410,用于对接收的报文进行解析,得到所述报文的五元组信息;
[0053]运算单元420,用于将所述五元组信息中的每个信息与五元组掩码中对应掩码做按位与运算,得到对应的五个运算结果;
[0054]匹配单元430,用于在所述五个运算结果与所述五元组信息对应相等时,在报文控制策略表中查找与所述报文匹配的报文控制策略;在所述五个运算结果与所述五元组信息不相等时,确定所述报文控制策略表中不存在与所述报文匹配的报文控制策略,停止报文控制策略的匹配操作。
[0055]可选的,所述装置还包括:生成单元440(图4中未示出),用于生成五元组掩码。
[0056]其中,五元组掩码包括源IP地址掩码、目的IP地址掩码、源端口掩码、目的端口掩码、协议号掩码。
[0057]生成单元440,具体用于在有报文控制策略下发时,将所述报文控制策略的对应五元组信息中的每个信息与所述五元组掩码中对应掩码做按位或运算,生成新的五元组掩码。
[0058]可选的,所述装置还包括:预设单元450(图4中未示出),用于预先设置五元组掩码中每个掩码的初始掩码。
[0059]可选的,所述装置还包括:判断单元460(图4中未示出),用于判断所述五个运算结果中的每个运算结果与所述五元组信息中的对应信息是否完全相等,如果完全相等,则判定所述五个运算结果与所述五元组信息对应相等,否则判定所述五个运算结果与所述五元组信息不相等。
[0060]上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
[0061]对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0062]以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
【主权项】
1.一种报文控制策略的匹配方法,应用于网络设备上,其特征在于,所述方法包括: 对接收的报文进行解析,得到所述报文的五元组信息; 将所述五元组信息中的每个信息与五元组掩码中对应掩码做按位与运算,得到对应的五个运算结果; 如果所述五个运算结果与所述五元组信息对应相等,则在报文控制策略表中查找与所述报文匹配的报文控制策略; 如果所述五个运算结果与所述五元组信息不相等,则确定所述报文控制策略表中不存在与所述报文匹配的报文控制策略,停止报文控制策略的匹配操作。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:生成五元组掩码。3.根据权利要求2所述的方法,其特征在于,所述五元组掩码包括源IP地址掩码、目的IP地址掩码、源端口掩码、目的端口掩码、协议号掩码; 所述生成五元组掩码,包括: 当有报文控制策略下发时,将所述报文控制策略的对应五元组信息中的每个信息与所述五元组掩码中对应掩码做按位或运算,生成新的五元组掩码。4.根据权利要求3所述的方法,其特征在于,所述生成五元组掩码之前,还包括:预先设置五元组掩码中每个掩码的初始掩码。5.根据权利要求1所述的方法,其特征在于,所述将所述五元组信息中的每个信息与五元组掩码中对应掩码做按位与运算之后,还包括: 判断所述五个运算结果中的每个运算结果与所述五元组信息中的对应信息是否完全相等,如果完全相等,则判定所述五个运算结果与所述五元组信息对应相等,否则判定所述五个运算结果与所述五元组信息不相等。6.一种报文控制策略的匹配装置,应用于网络设备上,其特征在于,所述装置包括: 解析单元,用于对接收的报文进行解析,得到所述报文的五元组信息; 运算单元,用于将所述五元组信息中的每个信息与五元组掩码中对应掩码做按位与运算,得到对应的五个运算结果; 匹配单元,用于在所述五个运算结果与所述五元组信息对应相等时,在报文控制策略表中查找与所述报文匹配的报文控制策略;在所述五个运算结果与所述五元组信息不相等时,确定所述报文控制策略表中不存在与所述报文匹配的报文控制策略,停止报文控制策略的匹配操作。7.根据权利要求6所述的装置,其特征在于,所述装置还包括:生成单元,用于生成五元组掩码。8.根据权利要求7所述的装置,其特征在于,所述五元组掩码包括源IP地址掩码、目的IP地址掩码、源端口掩码、目的端口掩码、协议号掩码; 所述生成单元,具体用于在有报文控制策略下发时,将所述报文控制策略的对应五元组信息中的每个信息与所述五元组掩码中对应掩码做按位或运算,生成新的五元组掩码。9.根据权利要求8所述的装置,其特征在于,所述装置还包括:预设单元,用于预先设置五元组掩码中每个掩码的初始掩码。10.根据权利要求6所述的装置,其特征在于,所述装置还包括:判断单元,用于判断所述五个运算结果中的每个运算结果与所述五元组信息中的对应信息是否完全相等,如果完全相等,则判定所述五个运算结果与所述五元组信息对应相等,否则判定所述五个运算结果与所述五元组信息不相等。
【文档编号】H04L12/813GK105939284SQ201610016462
【公开日】2016年9月14日
【申请日】2016年1月8日
【发明人】黄晓朦, 刘欣然, 吴刚, 王勇, 王涛, 郭三川, 翟海滨
【申请人】杭州迪普科技有限公司, 国家计算机网络与信息安全管理中心
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1