模式匹配处理方法及系统的制作方法

文档序号:7650087阅读:312来源:国知局
专利名称:模式匹配处理方法及系统的制作方法
技术领域
本发明涉及模式匹配技术,特别涉及一种模式匹配处理方法及系统,属于通信领域。
背景技术
模式匹配(Pattern Matching)是一种将收集到的信息与已知的网络入侵和系统误用模式数据库进行比较,从而发现违背安全策略的行为的技术。简单的模式匹配方式如通过字符串匹配来寻找一个简单的条目或指令,复杂的模式匹配方式如利用数学表达式来表示安全状态的变化。
如图1所示,现有技术中,对数据流的报文的模式匹配系统通常由模式匹配数据库(Pattern Matching Database,简称PMDB)、模式匹配引擎(PatternMatching Engine,简称PME)和模式匹配使用者(Pattern Matching User,简称PMU)组成。PMDB作为一个存储容器,用于存储模式匹配规则,并可以对存储的模式匹配规则进行添加、修改、删除和查看。PME与PMDB之间交互的是控制命令信息即控制流,用于PME将PMDB中存储的模式匹配规则与收到的报文进行模式匹配。PME与PMU之间交互的是报文或匹配结果数据即数据流,用于当收到待检测的报文时,PMU向PME传送该报文并请求模式匹配服务,PME将模式匹配的结果返回给PMU。
随着模式匹配在入侵检测系统(Intrusion Detection System,简称IDS)、入侵防御系统(Intrusion Prevention System,简称IPS)、病毒防范(Anti-Virus,简称AV)等领域中的广泛应用,模式匹配引擎的重要作用日渐显现。一方面,为了减少网络转发时延,可使用多个模式匹配引擎来进行模式匹配。另一方面,模式匹配引擎正在从软件引擎向硬件引擎发展,为了实现软件引擎到硬件引擎的平滑过渡,也需要同时支持软件引擎和硬件引擎。在上述两种情况下,都要求实现对同时使用的多个模式匹配引擎的统一有效的控制管理,支持多个模式匹配引擎的互相切换或者协同工作。
现有技术中,支持双模式匹配引擎的模式匹配系统结构如图2所示,模式匹配数据库需要分别为每个模式匹配引擎提供不同的控制流接口,同时,模式匹配使用者也需要分别为每个模式匹配引擎提供的不同的数据流处理接口。这种结构使得每增加一个模式匹配引擎,模式匹配数据库和模式匹配使用者都需要随之改动,大大降低了系统的扩展性,同时也增加了系统的复杂度。此外,这种模式匹配系统只实现了简单地选择模式匹配引擎来对报文进行模式匹配处理,而未实现模式匹配引擎之间的负载均衡、以及在其中一个模式匹配引擎工作暂停时的负载迁移,也未实现多个模式匹配引擎之间的平滑切换以及对多个模式匹配引擎协同工作的统一有效的控制管理。

发明内容
本发明的目的是提供一种模式匹配处理方法及系统,能够大大增强系统的扩展性,降低系统的复杂度,实现多个模式匹配引擎的平滑切换和协同工作,以及实现对同时使用的多个模式匹配引擎的统一有效的控制管理。
为实现上述发明目的,本发明提供了一种模式匹配处理方法,包括对模式匹配数据库、模式匹配使用者以及多个模式匹配引擎进行集中地控制和数据传送;在模式匹配使用者收到报文后,根据预设的策略从多个模式匹配引擎中为该报文选择一个对应的模式匹配引擎,并向所选择的模式匹配引擎传送该报文;该模式匹配引擎根据模式匹配数据库中存储的模式匹配规则,对该报文进行模式匹配;将模式匹配结果返回给模式匹配使用者,模式匹配使用者根据模式匹配结果对所述报文执行对应的预设处理流程。
在上述技术方案中,通过对模式匹配数据库、模式匹配使用者以及多个模式匹配引擎进行集中地控制和数据传送,使得在增加模式匹配引擎时,无需对模式匹配数据库和模式匹配使用者都做出改动,从而大大提高了系统的扩展性,同时集中的控制方式也减少了系统的复杂度,实现对同时使用的多个模式匹配引擎的统一有效的控制管理。此外,通过根据预设的策略从多个模式匹配引擎中为收到的报文选择一个对应的模式匹配引擎,并结合集中地控制和数据传送,能够实现多个模式匹配引擎的平滑切换和协同工作。
优选地,可采用独立设置或者一体化设置于所述模式匹配使用者中的模式匹配引擎框架来实现所述对模式匹配数据库、模式匹配使用者以及多个模式匹配引擎进行集中地控制和数据传送。具体而言,所述对模式匹配数据库、模式匹配使用者以及多个模式匹配引擎进行集中地控制和数据传送具体包括模式匹配引擎框架通过为模式匹配数据库提供的控制流接口、为模式匹配使用者提供的数据流接口以及为每个模式匹配引擎提供的控制流接口和数据流接口,对模式匹配数据库、模式匹配使用者以及每个模式匹配引擎进行控制和数据传送,其中所述的模式匹配引擎框架为独立设置或者一体化设置于所述模式匹配使用者中;所述在模式匹配使用者收到报文后,根据预设的策略从多个模式匹配引擎中为该报文选择一个对应的模式匹配引擎,并向所选择的模式匹配引擎传送该报文具体包括在模式匹配使用者收到报文后,由模式匹配引擎框架根据预设的策略,从多个模式匹配引擎中为该报文选择一个对应的模式匹配引擎,并由模式匹配使用者经由模式匹配引擎框架向所选择的模式匹配引擎传送该报文;所述模式匹配引擎根据模式匹配数据库中存储的模式匹配规则,对该报文进行模式匹配具体包括所选择的模式匹配引擎经由所述模式匹配引擎框架获取模式匹配数据库中存储的模式匹配规则,根据该模式匹配规则对该报文进行模式匹配;所述将模式匹配结果返回给模式匹配使用者具体包括由所选择的模式匹配引擎经由模式匹配引擎框架向模式匹配使用者传送模式匹配结果。
为实现上述发明目的,本发明还提供了一种模式匹配引擎控制处理系统,包括用于存储模式匹配规则的模式匹配数据库、用于收发报文以及根据模式匹配结果对报文执行对应的预设处理流程的模式匹配使用者、以及用于根据模式匹配数据库中存储的模式匹配规则对报文进行模式匹配的多个模式匹配引擎,还包括集中控制模块,用于对模式匹配数据库、模式匹配使用者以及多个模式匹配引擎进行集中地控制和数据传送,以及在模式匹配使用者收到报文后,根据预设的策略从多个模式匹配引擎中为该报文选择一个对应的模式匹配引擎。
在上述技术方案中,通过集中控制模块对模式匹配数据库、模式匹配使用者以及多个模式匹配引擎进行集中地控制和数据传送,使得在增加模式匹配引擎时,无需对模式匹配数据库和模式匹配使用者都做出改动,从而大大提高了系统的扩展性,同时集中的控制方式也减少了系统的复杂度,实现对同时使用的多个模式匹配引擎的统一有效的控制管理。此外,通过集中控制模块根据预设的策略从多个模式匹配引擎中为收到的报文选择一个对应的模式匹配引擎,并结合集中地控制和数据传送,能够实现多个模式匹配引擎的平滑切换和协同工作。
优选地,所述集中控制模块可为独立设置或者与所述模式匹配使用者一体化设置的模式匹配引擎框架,所述模式匹配引擎框架为模式匹配数据库提供控制流接口,为模式匹配使用者提供数据流接口,并为每个模式匹配引擎提供控制流接口和数据流接口,用于对模式匹配数据库、模式匹配使用者以及每个模式匹配引擎进行控制和数据传送,以及在模式匹配使用者收到报文后,由模式匹配引擎框架根据预设的策略,从多个模式匹配引擎中为该报文选择一个对应的模式匹配引擎,并由模式匹配使用者经由模式匹配引擎框架向所选择的模式匹配引擎传送该报文;所选择的模式匹配引擎经由所述模式匹配引擎框架获取模式匹配数据库中存储的模式匹配规则,根据该模式匹配规则对该报文进行模式匹配后,经由模式匹配引擎框架向模式匹配使用者传送模式匹配结果。
综上所述,本发明通过对模式匹配数据库、模式匹配使用者以及多个模式匹配引擎进行集中地控制和数据传送,而非现有技术中的模式匹配引擎与模式匹配数据库之间、以及模式匹配引擎与模式匹配使用者之间分别进行分散的控制和数据传送,因此在增加模式匹配引擎时,无需对模式匹配数据库和模式匹配使用者都做出改动,从而大大增强了系统的扩展性,降低了系统的复杂度;并且通过统一集中的控制和数据传送实现了对同时使用的多个模式匹配引擎的统一有效的控制管理;通过根据预设的策略从多个模式匹配引擎中为收到的报文选择一个对应的模式匹配引擎,并结合集中的控制和数据传送,实现了多个模式匹配引擎的平滑切换和协同工作。


图1为现有的模式匹配系统的示意图;图2为现有的双模式匹配引擎的模式匹配系统的示意图;图3为本发明模式匹配处理系统实施例一的结构示意图;图4为本发明模式匹配处理系统实施例二的结构示意图;图5为本发明模式匹配处理系统实施例二的另一结构示意图;图6为本发明模式匹配处理系统实施例二的又一结构示意图;图7为本发明模式匹配处理系统实施例二的再一结构示意图。
具体实施例方式
下面结合附图和实施例,对本发明的技术方案做进一步的详细描述。
现有技术中,模式匹配处理系统的模式匹配引擎与模式匹配数据库之间、以及模式匹配引擎与模式匹配使用者之间分别进行分散的控制和数据传送,从而大大降低了系统的扩展性,同时也增加了系统的复杂度。此外,现有技术中的模式匹配处理系统未实现多个模式匹配引擎之间的平滑切换以及对多个模式匹配引擎协同工作的统一有效的控制管理。
本发明的基本构思为针对上述现有技术的不足之处,将分散控制和数据传送的机制改为集中控制和数据传送的机制,具体而言,通过对模式匹配数据库、模式匹配使用者以及多个模式匹配引擎进行集中地控制和数据传送,使得在增加模式匹配引擎时,无需对模式匹配数据库和模式匹配使用者都做出改动,从而大大提高了系统的扩展性,同时集中的控制方式也减少了系统的复杂度,实现对同时使用的多个模式匹配引擎的统一有效的控制管理。此外,通过根据预设的策略从多个模式匹配引擎中为收到的报文选择一个对应的模式匹配引擎,并结合集中地控制和数据传送,实现多个模式匹配引擎的平滑切换和协同工作。
基于上述发明构思,本发明提供了一种模式匹配处理方法,包括对模式匹配数据库、模式匹配使用者以及多个模式匹配引擎进行集中地控制和数据传送;在模式匹配使用者收到报文后,根据预设的策略从多个模式匹配引擎中为该报文选择一个对应的模式匹配引擎,并向所选择的模式匹配引擎传送该报文;该模式匹配引擎根据模式匹配数据库中存储的模式匹配规则,对该报文进行模式匹配;将模式匹配结果返回给模式匹配使用者,模式匹配使用者根据模式匹配结果对所述报文执行对应的预设处理流程。
本领域的普通技术人员应当理解,在实际应用中可根据具体应用场景的需求,灵活采用所述对模式匹配数据库、模式匹配使用者以及多个模式匹配引擎进行集中地控制和数据传送的具体实施方式
,以及所述根据预设的策略从多个模式匹配引擎中为该报文选择一个对应的模式匹配引擎的具体实施方式
,其均应在本发明技术方案所要求保护的范围之内。下面通过实施例一和实施例二对上述具体实施方式
作举例说明。
在本发明模式匹配处理方法的实施例一中,是采用一体化设置于所述模式匹配使用者中的模式匹配引擎框架来实现所述对模式匹配数据库、模式匹配使用者以及多个模式匹配引擎进行集中地控制和数据传送。具体而言,本实施例一包括所述一体化设置于所述模式匹配使用者中的模式匹配引擎框架通过为模式匹配数据库提供的控制流接口、为模式匹配使用者提供的数据流接口以及为每个模式匹配引擎提供的控制流接口和数据流接口,对模式匹配数据库、模式匹配使用者以及每个模式匹配引擎进行控制和数据传送;在模式匹配使用者收到报文后,由模式匹配引擎框架根据预设的策略,从多个模式匹配引擎中为该报文选择一个对应的模式匹配引擎,并由模式匹配使用者经由模式匹配引擎框架向所选择的模式匹配引擎传送该报文;所选择的模式匹配引擎经由所述模式匹配引擎框架获取模式匹配数据库中存储的模式匹配规则,根据该模式匹配规则对该报文进行模式匹配;由所选择的模式匹配引擎经由模式匹配引擎框架向模式匹配使用者传送模式匹配结果。
在本实施例一中,通过一体化设置于所述模式匹配使用者中的模式匹配引擎框架来对模式匹配数据库、模式匹配使用者以及多个模式匹配引擎进行集中地控制和数据传送,而非现有技术中的模式匹配引擎与模式匹配数据库之间、以及模式匹配引擎与模式匹配使用者之间分别进行分散的控制和数据传送,因此在增加模式匹配引擎时,无需对模式匹配数据库和模式匹配使用者都做出改动,从而大大增强了系统的扩展性,降低了系统的复杂度;并且通过统一集中的控制和数据传送实现了对同时使用的多个模式匹配引擎的统一有效的控制管理;通过根据预设的策略从多个模式匹配引擎中为收到的报文选择一个对应的模式匹配引擎,并结合集中的控制和数据传送,实现了多个模式匹配引擎的平滑切换和协同工作。
在本发明模式匹配处理方法的实施例二中,是采用分别与模式匹配数据库、多个模式匹配引擎以及模式匹配使用者连接的、独立设置的模式匹配引擎框架,来实现所述的对模式匹配数据库、模式匹配使用者以及多个模式匹配引擎进行集中地控制和数据传送。具体而言,本实施例二包括所述独立设置的模式匹配引擎框架通过为模式匹配数据库提供的控制流接口、为模式匹配使用者提供的数据流接口以及为每个模式匹配引擎提供的控制流接口和数据流接口,对模式匹配数据库、模式匹配使用者以及每个模式匹配引擎进行控制和数据传送;在模式匹配使用者收到报文后,由模式匹配引擎框架根据预设的策略,从多个模式匹配引擎中为该报文选择一个对应的模式匹配引擎,并由模式匹配使用者经由模式匹配引擎框架向所选择的模式匹配引擎传送该报文;所选择的模式匹配引擎经由所述模式匹配引擎框架获取模式匹配数据库中存储的模式匹配规则,根据该模式匹配规则对该报文进行模式匹配;由所选择的模式匹配引擎经由模式匹配引擎框架向模式匹配使用者传送模式匹配结果。
上述实施例一和实施例二中,模式匹配引擎框架通过为模式匹配数据库提供的控制流接口、为模式匹配使用者提供的数据流接口以及为每个模式匹配引擎提供的控制流接口和数据流接口,对模式匹配数据库、模式匹配使用者以及每个模式匹配引擎进行控制和数据传送;本领域的技术人员应当理解,可根据实际应用场景中控制和数据传送的具体需求,增加或减少模式匹配引擎框架为模式匹配使用者、模式匹配数据库或模式匹配引擎提供的控制流接口或数据流接口,其均应在本发明技术方案所要求保护的范围之内。
在上述实施例二中,通过独立设置的模式匹配引擎框架来对模式匹配数据库、模式匹配使用者以及多个模式匹配引擎进行集中地控制和数据传送,而非现有技术中的模式匹配引擎与模式匹配数据库之间、以及模式匹配引擎与模式匹配使用者之间分别进行分散的控制和数据传送,从而大大增强了系统的扩展性,降低了系统的复杂度。
并且,相对于上述实施例一而言,本实施例二通过独立设置的模式匹配引擎框架来实现集中的控制管理和数据传送,从而大大减少了模式匹配使用者的负荷,使得多个模式匹配引擎的协同工作对模式匹配使用者来说是透明的,进一步降低了系统的复杂度;在增加模式匹配引擎时也只需对模式匹配引擎框架作出改动,无需对模式匹配使用者进行改动,从而也进一步增强了系统的扩展性。
此外,通过独立设置的模式匹配引擎框架来实现对多个模式匹配引擎的选择和控制管理,一方面分担了模式匹配使用者的负荷,提高了模式匹配使用者以及整个模式匹配系统的性能;另一方面,独立设置的模式匹配引擎框架也能够有更多的性能空间来实现根据更为复杂、准确度更高的预设策略来选择模式匹配引擎、对多个模式匹配引擎进行控制管理、以及对多个模式匹配引擎进行负载均衡等复杂操作,从而能够更有效地实现对同时使用的多个模式匹配引擎的统一有效的控制管理,以及多个模式匹配引擎间的平滑切换和协同工作。
本领域的普通技术人员应当理解,上述实施例二中,可根据具体应用场景的需求灵活采用所述的模式匹配引擎框架通过为模式匹配数据库提供的控制流接口、为模式匹配使用者提供的数据流接口以及为每个模式匹配引擎提供的控制流接口和数据流接口,对模式匹配数据库、模式匹配使用者以及每个模式匹配引擎进行控制和数据传送的具体实施方式
,其均应在本发明技术方案所要求保护的范围之内。下面对上述具体实施方式
作举例说明实施方式1、模式匹配引擎框架的控制面通过分别为模式匹配数据库以及每个模式匹配引擎的控制面提供的控制流接口,对模式匹配数据库以及每个模式匹配引擎进行控制;模式匹配引擎框架的数据面通过分别为模式匹配使用者以及每个模式匹配引擎的数据面提供的数据流接口,对模式匹配使用者以及每个模式匹配引擎进行数据传送;每个模式匹配引擎的控制面通过控制流实现对数据面操作的控制;模式匹配引擎框架的控制面通过控制流实现对模式匹配引擎框架的数据面操作的控制。
本实施方式1是将模式匹配引擎框架划分为控制面和数据面,将每个模式匹配引擎也划分为控制面和数据面;由模式匹配引擎框架的控制面来对模式匹配引擎的控制面以及模式匹配数据库进行控制管理;由模式匹配引擎框架的数据面来对模式匹配使用者以及每个模式匹配引擎进行数据传送;而模式匹配引擎框架的控制面则对其数据面进行控制管理,模式匹配引擎的控制面对其数据面进行控制管理。
这种将控制流与数据流区分开来分别设置接口进行处理的机制,适用于模式匹配引擎框架内部以及与外部的控制操作复杂频繁的应用场景,通过丰富清晰的接口设置能够有效地提高系统内各模块间的交互效率。
实施方式2、
模式匹配引擎框架的控制面通过分别为模式匹配数据库以及每个模式匹配引擎的控制面提供的控制流接口,对模式匹配数据库以及每个模式匹配引擎进行控制;模式匹配引擎框架的数据面通过分别为模式匹配使用者以及每个模式匹配引擎的数据面提供的数据流接口,对模式匹配使用者以及每个模式匹配引擎进行数据传送;每个模式匹配引擎的控制面通过控制流实现对数据面操作的控制。
本实施方式2与上述实施方式1相比,省去了模式匹配引擎框架内部的控制面与数据面之间的控制流交互。这种机制适用于模式匹配引擎框架内部控制操作需求不高而与外部的交互频繁复杂的应用场景,既有效地提高系统效率,又避免冗余的接口设置。
实施方式3、模式匹配引擎框架的控制面通过为模式匹配数据库提供的控制流接口对模式匹配数据库进行控制;模式匹配引擎框架的数据面通过分别为每个模式匹配引擎的数据面提供的控制流接口对每个模式匹配引擎进行控制;模式匹配引擎框架的数据面通过分别为模式匹配使用者以及每个模式匹配引擎的数据面提供的数据流接口对模式匹配使用者及每个模式匹配引擎进行数据传送;模式匹配引擎框架的控制面通过控制流实现对模式匹配引擎框架的数据面操作的控制。
本实施方式3与上述实施方式1相比,是由模式匹配引擎框架的数据面来向模式匹配引擎提供控制流接口,而非实施方式1中的由模式匹配引擎的控制面向模式匹配引擎提供控制流接口;同时,由于本实施方式3中模式匹配引擎框架的数据面是统一集中地对模式匹配引擎的控制面和数据面进行控制和数据传送,因此模式匹配引擎内部的控制面也无需与数据面进行交互。
由上述实施方式1-3的举例说明可知,所述模式匹配引擎框架的内部和外部接口设置是与具体应用场景的交互需求相适应,本领域的普通技术人员可根据具体应用场景的需求,采用上述实施方式,或对上述实施方式进行灵活的组合,或采用其它实施方式,来对所述模式匹配引擎框架的内部和外部接口进行灵活的设置,其均应在本发明技术方案所要求保护的范围之内。
如上文所述,本实施例二中,通过独立设置的模式匹配引擎框架,能够有更多的性能空间来实现根据更为复杂、准确度更高的预设策略来选择模式匹配引擎、对多个模式匹配引擎进行控制管理、以及对多个模式匹配引擎进行负载均衡等复杂操作,从而能够更有效地实现对同时使用的多个模式匹配引擎的统一有效的控制管理,以及多个模式匹配引擎间的平滑切换和协同工作。
本领域的普通技术人员应当理解,可根据具体应用场景的需求灵活采用所述的预设策略的具体实施方式
,其均应在本发明技术方案所要求保护的范围之内。下面对所述的预设策略的具体实施方式
作举例说明实施方式a所述由模式匹配引擎框架根据预设的策略,从多个模式匹配引擎中为该报文选择一个对应的模式匹配引擎具体包括预先为每个模式匹配引擎设置相应的优先级;在模式匹配使用者收到报文后,所述模式匹配引擎框架从多个模式匹配引擎中,为该报文选择一个当前可用的、优先级较高的模式匹配引擎。
本实施方式a是采用根据模式匹配引擎预设的优先级来选择优先级高的模式匹配引擎的策略。不同的模式匹配引擎对应不同的预设优先级,优先选择使用高优先级的模式匹配引擎进行数据流的模式匹配。例如该策略可为如果第一模式匹配引擎的优先级比第二模式匹配引擎的优先级高,若第一模式匹配引擎可用,则总是使用第一模式匹配引擎进行数据流的模式匹配;只有当第一模式匹配引擎不可用时,才使用第二模式匹配引擎进行数据流的模式匹配。
实施方式b所述由模式匹配引擎框架根据预设的策略,从多个模式匹配引擎中为该报文选择一个对应的模式匹配引擎具体包括预先根据每个模式匹配引擎处理能力,为每个模式匹配引擎设置相应的处理能力级别;在模式匹配使用者收到报文后,所述模式匹配引擎框架根据各模式匹配引擎的能力级别,从多个模式匹配引擎中为模式匹配使用者收到的报文选择一个模式匹配引擎,使得各模式匹配引擎所处理的数据流量比与各模式匹配引擎的处理能力比相适应。
本实施方式b是采用根据模式匹配引擎的处理能力来为数据流选择合适的模式匹配引擎的策略。不同的模式匹配引擎之间预先根据处理能力设置能力级来加以区分,模式匹配引擎框架在分配数据流处理请求时,依据各个模式匹配引擎的能力级相对比分配数据流处理请求,进行报文字节数负载均衡。例如如果第一模式匹配引擎的处理能力为1Gbit/s,而第二模式匹配引擎的处理能力为500Mbit/s,则第一模式匹配引擎的处理能力是第二模式匹配引擎的2倍。模式匹配引擎框架在分配数据流处理请求时,计算报文的字节数,使得第一模式匹配引擎处理的数据流请求的字节数是第二模式匹配引擎的2倍,也即使得各模式匹配引擎所处理的数据流量比与各模式匹配引擎的处理能力比相适应。本实施方式b所采用的策略实质上也起到了负载均衡的作用,并且这种负载均衡方案基于单个报文方式,相对于上述实施方式a而言更为精确。
由上述实施方式a、b的举例说明可知,所述预设策略的设置是与具体应用场景对负载均衡的精确度需求相适应,本领域的普通技术人员可根据具体应用场景的需求,采用上述实施方式,或对上述实施方式进行灵活的组合,或采用其它实施方式,来对所述预设策略进行灵活的设置,其均应在本发明技术方案所要求保护的范围之内。
在本发明模式匹配处理方法的实施例三中,基于上述的实施例二,通过独立设置的模式匹配引擎框架,进一步地对多个模式匹配引擎进行负载均衡。具体而言,本实施例三与上述实施例二相比有以下区别在所述模式匹配使用者收到报文之前还包括模式匹配引擎框架预先分配与每个模式匹配引擎一一对应的、用于存储待模式匹配的报文的存储区,并预先根据每个模式匹配引擎处理能力,为每个模式匹配引擎设置相应的处理能力级别。所述在模式匹配使用者收到报文后,根据预设的策略从多个模式匹配引擎中为该报文选择一个对应的模式匹配引擎,并向所选择的模式匹配引擎传送该报文具体包括在模式匹配使用者收到报文后,模式匹配引擎框架根据各模式匹配引擎的能力级别,从多个模式匹配引擎中为模式匹配使用者收到的报文选择一个模式匹配引擎,使得各模式匹配引擎所处理的数据流量比与各模式匹配引擎的处理能力比相适应,并将该报文存储在所选择的模式匹配引擎对应的存储区中。所述模式匹配引擎根据模式匹配数据库中存储的模式匹配规则,对该报文进行模式匹配具体包括所选择的模式匹配引擎经由所述模式匹配引擎框架获取模式匹配数据库中存储的模式匹配规则,根据该模式匹配规则对该模式匹配引擎对应的存储区中的报文依次进行模式匹配处理。
本实施例三与上述实施例二相比,通过为每个模式匹配引擎设置一一对应的存储区来缓存待模式匹配处理的报文数据,并根据每个模式匹配引擎的处理能力来未收到的报文选择对应的存储区,进一步实现了对多个模式匹配引擎的负载均衡。
优选地,本实施例三中还可包括模式匹配引擎框架按照预设的时间周期对与所述多个模式匹配引擎一一对应的存储区中的报文进行管理,如果各存储区中报文的数据流量比与各模式匹配引擎的处理能力比不相适应或者检测到工作暂停的模式匹配引擎,则对存储区中的报文进行迁移,使得各存储区中报文的数据流量比与各模式匹配引擎的实时处理能力比相适应。上述操作通过定时地(可通过设置定时器实现)对与模式匹配引擎一一对应的存储区中的报文进行管理,能够实现动态的负载均衡和负载迁移,并且能够实现在某个模式匹配引擎工作暂停时的负载迁移,从而能够及时有效地根据模式匹配引擎的实时处理能力来统一调整负载分配,大大提高系统的整体处理效率和应急处理能力。
基于上述发明构思,本发明还提供了一种模式匹配处理系统,包括用于存储模式匹配规则的模式匹配数据库、用于收发报文以及根据模式匹配结果对报文执行对应的预设处理流程的模式匹配使用者、以及用于根据模式匹配数据库中存储的模式匹配规则对报文进行模式匹配的多个模式匹配引擎;还包括集中控制模块,用于对模式匹配数据库、模式匹配使用者以及多个模式匹配引擎进行集中地控制和数据传送,以及在模式匹配使用者收到报文后,根据预设的策略从多个模式匹配引擎中为该报文选择一个对应的模式匹配引擎。
本领域的普通技术人员应当理解,在实际应用中可根据具体应用场景的需求,灵活采用所述集中控制模块的具体设置方式,其均应在本发明技术方案所要求保护的范围之内。下面通过本发明模式匹配处理系统的实施例一和实施例二对上述具体实施方式
作举例说明。
在本发明模式匹配处理系统的实施例一中,是采用所述集中控制模块与所述模式匹配使用者一体化设置的设置方式。具体而言,如图3所示,所述集中控制模块为与所述模式匹配使用者一体化设置的模式匹配引擎框架(图中未示出),所述模式匹配引擎框架为模式匹配数据库提供控制流接口,为模式匹配使用者提供数据流接口(图中未示出),以及分别为每个模式匹配引擎提供控制流接口和数据流接口,用于对模式匹配数据库、模式匹配使用者以及每个模式匹配引擎进行控制和数据传送,以及在模式匹配使用者收到报文后,由模式匹配引擎框架根据预设的策略,从多个模式匹配引擎中为该报文选择一个对应的模式匹配引擎,向所选择的模式匹配引擎传送该报文,所选择的模式匹配引擎经由所述模式匹配使用者获取模式匹配数据库中存储的模式匹配规则,根据该模式匹配规则对该报文进行模式匹配后,经由模式匹配引擎框架将模式匹配结果返回给模式匹配使用者。
在本实施例一中,通过与所述模式匹配使用者一体化设置的模式匹配引擎框架,来对模式匹配数据库、模式匹配使用者以及多个模式匹配引擎进行集中地控制和数据传送,而非现有技术中的模式匹配引擎与模式匹配数据库之间、以及模式匹配引擎与模式匹配使用者之间分别进行分散的控制和数据传送,因此在增加模式匹配引擎时,无需对模式匹配数据库和模式匹配使用者都做出改动,从而大大增强了系统的扩展性,降低了系统的复杂度;并且通过统一集中的控制和数据传送实现了对同时使用的多个模式匹配引擎的统一有效的控制管理;通过根据预设的策略从多个模式匹配引擎中为收到的报文选择一个对应的模式匹配引擎,并结合集中的控制和数据传送,实现了多个模式匹配引擎的平滑切换和协同工作。
在本发明模式匹配处理系统的实施例二中,是采用独立设置的模式匹配引擎框架的设置方式。具体而言,如图4所示,所述集中控制模块为独立设置的模式匹配引擎框架,为模式匹配数据库提供控制流接口,为模式匹配使用者提供数据流接口,并为每个模式匹配引擎提供控制流接口和数据流接口,用于对模式匹配数据库、模式匹配使用者以及每个模式匹配引擎进行控制和数据传送,以及在模式匹配使用者收到报文后,由模式匹配引擎框架根据预设的策略,从多个模式匹配引擎中为该报文选择一个对应的模式匹配引擎,并由模式匹配使用者经由模式匹配引擎框架向所选择的模式匹配引擎传送该报文;所选择的模式匹配引擎经由所述模式匹配引擎框架获取模式匹配数据库中存储的模式匹配规则,根据该模式匹配规则对该报文进行模式匹配后,经由模式匹配引擎框架向模式匹配使用者传送模式匹配结果。
上述本发明模式匹配处理系统的实施例一和实施例二中,模式匹配引擎框架为模式匹配数据库提供的控制流接口、为模式匹配使用者提供的数据流接口以及为每个模式匹配引擎提供的控制流接口和数据流接口,用于对模式匹配数据库、模式匹配使用者以及每个模式匹配引擎进行控制和数据传送;本领域的技术人员应当理解,可根据实际应用场景中控制和数据传送的具体需求,增加或减少模式匹配引擎框架为模式匹配使用者、模式匹配数据库或模式匹配引擎提供的控制流接口或数据流接口,其均应在本发明技术方案所要求保护的范围之内。
在本发明模式匹配处理系统的实施例二中,通过独立设置的模式匹配引擎框架来对模式匹配数据库、模式匹配使用者以及多个模式匹配引擎进行集中地控制和数据传送,而非现有技术中的模式匹配引擎与模式匹配数据库之间、以及模式匹配引擎与模式匹配使用者之间分别进行分散的控制和数据传送,从而大大增强了系统的扩展性,降低了系统的复杂度。相对于上述本发明模式匹配处理系统的实施例一而言,本发明模式匹配处理系统的实施例二通过独立设置的模式匹配引擎框架来实现集中的控制管理和数据传送,从而大大减少了模式匹配使用者的负荷,使得多个模式匹配引擎的协同工作对模式匹配使用者来说是透明的,进一步降低了系统的复杂度;在增加模式匹配引擎时也只需对模式匹配引擎框架作出改动,无需对模式匹配使用者进行改动,从而也进一步增强了系统的扩展性。
此外,通过独立设置的模式匹配引擎框架来实现对多个模式匹配引擎的选择和控制管理,一方面分担了模式匹配使用者的负荷,提高了模式匹配使用者以及整个模式匹配系统的性能;另一方面,独立设置的模式匹配引擎框架也能够有更多的性能空间来实现根据更为复杂、准确度更高的预设策略来选择模式匹配引擎、对多个模式匹配引擎进行控制管理、以及对多个模式匹配引擎进行负载均衡等复杂操作,从而能够更有效地实现对同时使用的多个模式匹配引擎的统一有效的控制管理,以及多个模式匹配引擎间的平滑切换和协同工作。
本领域的普通技术人员应当理解,上述本发明模式匹配处理系统的实施例二中,可根据具体应用场景的需求灵活采用所述的模式匹配引擎框架的具体实施方式
,其均应在本发明技术方案所要求保护的范围之内。下面对所述的模式匹配引擎框架的具体实施方式
作举例说明实施方式A、如图5所示,所述模式匹配引擎框架包括控制面和数据面;所述模式匹配引擎框架的控制面分别为模式匹配数据库以及每个模式匹配引擎的控制面提供控制流接口,用于对模式匹配数据库以及每个模式匹配引擎进行控制;所述模式匹配引擎框架的数据面分别为模式匹配使用者以及每个模式匹配引擎的数据面提供数据流接口,用于对模式匹配使用者以及每个模式匹配引擎进行数据传送;每个模式匹配引擎包括互相交互的控制面和数据面,用于每个模式匹配引擎的控制面通过控制流实现对数据面操作的控制;模式匹配引擎框架的控制面与数据面互相交互,用于模式匹配引擎框架的控制面通过控制流实现对模式匹配引擎框架的数据面操作的控制。
本实施方式A是将模式匹配引擎框架划分为控制面和数据面,将每个模式匹配引擎也划分为控制面和数据面;由模式匹配引擎框架的控制面来对模式匹配引擎的控制面以及模式匹配数据库进行控制管理;由模式匹配引擎框架的数据面来对模式匹配使用者以及每个模式匹配引擎进行数据传送;而模式匹配引擎框架的控制面则对其数据面进行控制管理,模式匹配引擎的控制面对其数据面进行控制管理。这种将控制流与数据流区分开来分别设置接口进行处理的机制,适用于模式匹配引擎框架内部以及与外部的控制操作复杂频繁的应用场景,通过丰富清晰的接口设置能够有效地提高系统内各模块间的交互效率。
实施方式B、如图6所示,所述模式匹配引擎框架包括控制面和数据面;所述模式匹配引擎框架的控制面分别为模式匹配数据库以及每个模式匹配引擎的控制面提供控制流接口,用于对模式匹配数据库以及每个模式匹配引擎进行控制;所述模式匹配引擎框架的数据面分别为模式匹配使用者以及每个模式匹配引擎的数据面提供数据流接口,用于对模式匹配使用者以及每个模式匹配引擎进行数据传送;每个模式匹配引擎包括互相交互的控制面和数据面,用于每个模式匹配引擎的控制面通过控制流实现对数据面操作的控制。
本实施方式B与上述实施方式A相比,省去了模式匹配引擎框架内部的控制面与数据面之间的控制流交互。这种机制适用于模式匹配引擎框架内部控制操作需求不高而与外部的交互频繁复杂的应用场景,既有效地提高系统效率,又避免冗余的接口设置。
实施方式C、如图7所示,所述模式匹配引擎框架包括控制面和数据面;所述模式匹配引擎框架的控制面为模式匹配数据库提供控制流接口,用于对模式匹配数据库进行控制;所述模式匹配引擎框架的数据面分别为每个模式匹配引擎的数据面提供控制流接口,用于对每个模式匹配引擎进行控制;所述模式匹配引擎框架的数据面分别为模式匹配使用者以及每个模式匹配引擎的数据面提供数据流接口,用于对模式匹配使用者及每个模式匹配引擎进行数据传送;所述模式匹配引擎框架的控制面与数据面互相交互,用于模式匹配引擎框架的控制面通过控制流实现对模式匹配引擎框架的数据面操作的控制。
本实施方式C与上述实施方式A相比,是由模式匹配引擎框架的数据面来向模式匹配引擎提供控制流接口,而非上述实施方式A中的由模式匹配引擎的控制面向模式匹配引擎提供控制流接口;同时,由于本实施方式A中模式匹配引擎框架的数据面是统一集中地对模式匹配引擎的控制面和数据面进行控制和数据传送,因此模式匹配引擎内部的控制面也无需与数据面进行交互。
由上述实施方式A-C的举例说明可知,所述模式匹配引擎框架的内部和外部接口设置是与具体应用场景的交互需求相适应,本领域的普通技术人员可根据具体应用场景的需求,采用上述实施方式,或对上述实施方式进行灵活的组合,或采用其它实施方式,来对所述模式匹配引擎框架的内部和外部接口进行灵活的设置,其均应在本发明技术方案所要求保护的范围之内。
如上文所述,本发明模式匹配处理系统的实施例二中,通过独立设置的模式匹配引擎框架,能够有更多的性能空间来实现根据更为复杂、准确度更高的预设策略来选择模式匹配引擎、对多个模式匹配引擎进行控制管理、以及对多个模式匹配引擎进行负载均衡等复杂操作,从而能够更有效地实现对同时使用的多个模式匹配引擎的统一有效的控制管理,以及多个模式匹配引擎间的平滑切换和协同工作。
本领域的普通技术人员应当理解,可根据具体应用场景的需求灵活采用所述的模式匹配引擎框架根据预设策略来选择模式匹配引擎的具体实施方式
,其均应在本发明技术方案所要求保护的范围之内。下面对上述具体实施方式
作举例说明实施方式A1所述模式匹配引擎框架包括第一模式匹配引擎选择模块,用于在模式匹配使用者收到报文后,从多个模式匹配引擎中,为该报文选择一个当前可用的、预设的优先级较高的模式匹配引擎。
本实施方式A1中,所述第一模式匹配引擎选择模块是采用根据模式匹配引擎预设的优先级来选择优先级高的模式匹配引擎的策略。不同的模式匹配引擎对应不同的预设优先级,优先选择使用高优先级的模式匹配引擎进行数据流的模式匹配。例如该策略可为如果第一模式匹配引擎的优先级比第二模式匹配引擎的优先级高,若第一模式匹配引擎可用,则总是使用第一模式匹配引擎进行数据流的模式匹配;只有当第一模式匹配引擎不可用时,才使用第二模式匹配引擎进行数据流的模式匹配。
实施方式A2所述模式匹配引擎框架包括第二模式匹配引擎选择模块,用于在模式匹配使用者收到报文后,根据各模式匹配引擎的能力级别,从多个模式匹配引擎中为模式匹配使用者收到的报文选择一个模式匹配引擎,使得各模式匹配引擎所处理的数据流量比与各模式匹配引擎的处理能力比相适应。
本实施方式A2中,所述第二模式匹配引擎选择模块是采用根据模式匹配引擎的处理能力来为数据流选择合适的模式匹配引擎的策略。不同的模式匹配引擎之间预先根据处理能力设置能力级来加以区分,模式匹配引擎框架在分配数据流处理请求时,依据各个模式匹配引擎的能力级相对比分配数据流处理请求,进行报文字节数负载均衡。例如如果第一模式匹配引擎的处理能力为1Gbit/s,而第二模式匹配引擎的处理能力为500Mbit/s,则第一模式匹配引擎的处理能力是第二模式匹配引擎的2倍。模式匹配引擎框架在分配数据流处理请求时,计算报文的字节数,使得第一模式匹配引擎处理的数据流请求的字节数是第二模式匹配引擎的2倍,也即使得各模式匹配引擎所处理的数据流量比与各模式匹配引擎的处理能力比相适应。本实施方式b所采用的策略实质上也起到了负载均衡的作用,并且这种负载均衡方案基于单个报文方式,相对于上述实施方式a而言更为精确。
由上述实施方式A1、A2的举例说明可知,所述模式匹配引擎框架的设置是与具体应用场景对负载均衡的精确度需求相适应,本领域的普通技术人员可根据具体应用场景的需求,采用上述实施方式,或对上述实施方式进行灵活的组合,或采用其它实施方式,来对所述模式匹配引擎框架进行灵活的设置,其均应在本发明技术方案所要求保护的范围之内。
在本发明模式匹配处理系统的实施例三中,基于上述本发明模式匹配处理系统的实施例二,通过独立设置的模式匹配引擎框架,进一步地对多个模式匹配引擎进行负载均衡。具体而言,本发明模式匹配处理系统的实施例三与上述本发明模式匹配处理系统的实施例二相比有以下区别所述模式匹配引擎框架包括存储区管理模块,用于预先分配与每个模式匹配引擎一一对应的、用于存储待模式匹配的报文的存储区;第三模式匹配引擎选择模块,用于在模式匹配使用者收到报文后,根据各模式匹配引擎的能力级别,从多个模式匹配引擎中为模式匹配使用者收到的报文选择一个模式匹配引擎,使得各模式匹配引擎所处理的数据流量比与各模式匹配引擎的处理能力比相适应,并将该报文存储在所选择的模式匹配引擎对应的存储区中,所选择的模式匹配引擎根据模式匹配数据库中存储的模式匹配规则对该模式匹配引擎对应的存储区中的报文依次进行模式匹配处理。
本实施例三与上述实施例二相比,通过为每个模式匹配引擎设置一一对应的存储区来缓存待模式匹配处理的报文数据,并根据每个模式匹配引擎的处理能力来未收到的报文选择对应的存储区,进一步实现了对多个模式匹配引擎的负载均衡。
优选地,本实施例三中,所述模式匹配引擎框架还包括负载均衡管理模块,用于按照预设的时间周期对与所述多个模式匹配引擎一一对应的存储区中的报文进行管理,如果各存储区中报文的数据流量比与各模式匹配引擎的处理能力比不相适应或者检测到工作暂停的模式匹配引擎,则对存储区中的报文进行迁移,使得各存储区中报文的数据流量比与各模式匹配引擎的实时处理能力比相适应。
通过增设负载均衡管理模块以定时地(可通过设置定时器实现)对与模式匹配引擎一一对应的存储区中的报文进行管理,能够实现动态的负载均衡和负载迁移,并且能够实现在某个模式匹配引擎工作暂停时的负载迁移,从而能够及时有效地根据模式匹配引擎的实时处理能力来统一调整负载分配,大大提高系统的整体处理效率和应急处理能力。
以上实施例仅用以说明本发明的技术方案,而非对本发明作限制性理解。尽管参照上述较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解其依然可以对本发明的技术方案进行修改或者等同替换,而这种修改或者等同替换并不脱离本发明技术方案的精神和范围。
权利要求
1.一种模式匹配处理方法,其特征在于,包括对模式匹配数据库、模式匹配使用者以及多个模式匹配引擎进行集中地控制和数据传送;在模式匹配使用者收到报文后,根据预设的策略从多个模式匹配引擎中为该报文选择一个对应的模式匹配引擎,并向所选择的模式匹配引擎传送该报文;该模式匹配引擎根据模式匹配数据库中存储的模式匹配规则,对该报文进行模式匹配;将模式匹配结果返回给模式匹配使用者,模式匹配使用者根据模式匹配结果对所述报文执行对应的预设处理流程。
2.根据权利要求1所述的方法,其特征在于所述对模式匹配数据库、模式匹配使用者以及多个模式匹配引擎进行集中地控制和数据传送具体包括模式匹配引擎框架通过为模式匹配数据库提供的控制流接口、为模式匹配使用者提供的数据流接口以及为每个模式匹配引擎提供的控制流接口和数据流接口,对模式匹配数据库、模式匹配使用者以及每个模式匹配引擎进行控制和数据传送,其中所述的模式匹配引擎框架为独立设置或者一体化设置于所述模式匹配使用者中;所述在模式匹配使用者收到报文后,根据预设的策略从多个模式匹配引擎中为该报文选择一个对应的模式匹配引擎,并向所选择的模式匹配引擎传送该报文具体包括在模式匹配使用者收到报文后,由模式匹配引擎框架根据预设的策略,从多个模式匹配引擎中为该报文选择一个对应的模式匹配引擎,并由模式匹配使用者经由模式匹配引擎框架向所选择的模式匹配引擎传送该报文;所述模式匹配引擎根据模式匹配数据库中存储的模式匹配规则,对该报文进行模式匹配具体包括所选择的模式匹配引擎经由所述模式匹配引擎框架获取模式匹配数据库中存储的模式匹配规则,根据该模式匹配规则对该报文进行模式匹配;所述将模式匹配结果返回给模式匹配使用者具体包括由所选择的模式匹配引擎经由模式匹配引擎框架向模式匹配使用者传送模式匹配结果。
3.根据权利要求2所述的方法,其特征在于,所述模式匹配引擎框架通过为模式匹配数据库提供的控制流接口、为模式匹配使用者提供的数据流接口以及为每个模式匹配引擎提供的控制流接口和数据流接口,对模式匹配数据库、模式匹配使用者以及每个模式匹配引擎进行控制和数据传送具体包括模式匹配引擎框架的控制面通过分别为模式匹配数据库以及每个模式匹配引擎的控制面提供的控制流接口,对模式匹配数据库以及每个模式匹配引擎进行控制;模式匹配引擎框架的数据面通过分别为模式匹配使用者以及每个模式匹配引擎的数据面提供的数据流接口,对模式匹配使用者以及每个模式匹配引擎进行数据传送;每个模式匹配引擎的控制面通过控制流实现对数据面操作的控制;模式匹配引擎框架的控制面通过控制流实现对模式匹配引擎框架的数据面操作的控制;或者模式匹配引擎框架的控制面通过分别为模式匹配数据库以及每个模式匹配引擎的控制面提供的控制流接口,对模式匹配数据库以及每个模式匹配引擎进行控制;模式匹配引擎框架的数据面通过分别为模式匹配使用者以及每个模式匹配引擎的数据面提供的数据流接口,对模式匹配使用者以及每个模式匹配引擎进行数据传送;每个模式匹配引擎的控制面通过控制流实现对数据面操作的控制;或者模式匹配引擎框架的控制面通过为模式匹配数据库提供的控制流接口对模式匹配数据库进行控制;模式匹配引擎框架的数据面通过分别为每个模式匹配引擎的数据面提供的控制流接口对每个模式匹配引擎进行控制;模式匹配引擎框架的数据面通过分别为模式匹配使用者以及每个模式匹配引擎的数据面提供的数据流接口对模式匹配使用者及每个模式匹配引擎进行数据传送;模式匹配引擎框架的控制面通过控制流实现对模式匹配引擎框架的数据面操作的控制。
4.根据权利要求2所述的方法,其特征在于,所述由模式匹配引擎框架根据预设的策略,从多个模式匹配引擎中为该报文选择一个对应的模式匹配引擎具体包括预先为每个模式匹配引擎设置相应的优先级;在模式匹配使用者收到报文后,所述模式匹配引擎框架从多个模式匹配引擎中,为该报文选择一个当前可用的、优先级较高的模式匹配引擎;或者预先根据每个模式匹配引擎处理能力,为每个模式匹配引擎设置相应的处理能力级别;在模式匹配使用者收到报文后,所述模式匹配引擎框架根据各模式匹配引擎的能力级别,从多个模式匹配引擎中为模式匹配使用者收到的报文选择一个模式匹配引擎,使得各模式匹配引擎所处理的数据流量比与各模式匹配引擎的处理能力比相适应。
5.根据权利要求2所述的方法,其特征在于在所述模式匹配使用者收到报文之前还包括模式匹配引擎框架预先分配与每个模式匹配引擎一一对应的、用于存储待模式匹配的报文的存储区,并预先根据每个模式匹配引擎处理能力,为每个模式匹配引擎设置相应的处理能力级别;所述在模式匹配使用者收到报文后,根据预设的策略从多个模式匹配引擎中为该报文选择一个对应的模式匹配引擎,并向所选择的模式匹配引擎传送该报文具体包括在模式匹配使用者收到报文后,模式匹配引擎框架根据各模式匹配引擎的能力级别,从多个模式匹配引擎中为模式匹配使用者收到的报文选择一个模式匹配引擎,使得各模式匹配引擎所处理的数据流量比与各模式匹配引擎的处理能力比相适应,并将该报文存储在所选择的模式匹配引擎对应的存储区中;所述模式匹配引擎根据模式匹配数据库中存储的模式匹配规则,对该报文进行模式匹配具体包括所选择的模式匹配引擎经由所述模式匹配引擎框架获取模式匹配数据库中存储的模式匹配规则,根据该模式匹配规则对该模式匹配引擎对应的存储区中的报文依次进行模式匹配处理。
6.根据权利要求5所述的方法,其特征在于,还包括模式匹配引擎框架按照预设的时间周期对与所述多个模式匹配引擎一一对应的存储区中的报文进行管理,如果各存储区中报文的数据流量比与各模式匹配引擎的处理能力比不相适应或者检测到工作暂停的模式匹配引擎,则对存储区中的报文进行迁移,使得各存储区中报文的数据流量比与各模式匹配引擎的实时处理能力比相适应。
7.一种模式匹配处理系统,包括用于存储模式匹配规则的模式匹配数据库、用于收发报文以及根据模式匹配结果对报文执行对应的预设处理流程的模式匹配使用者、以及用于根据模式匹配数据库中存储的模式匹配规则对报文进行模式匹配的多个模式匹配引擎,其特征在于,还包括集中控制模块,用于对模式匹配数据库、模式匹配使用者以及多个模式匹配引擎进行集中地控制和数据传送,以及在模式匹配使用者收到报文后,根据预设的策略从多个模式匹配引擎中为该报文选择一个对应的模式匹配引擎。
8.根据权利要求7所述的系统,其特征在于所述集中控制模块为独立设置或者与所述模式匹配使用者一体化设置的模式匹配引擎框架,所述模式匹配引擎框架为模式匹配数据库提供控制流接口,为模式匹配使用者提供数据流接口,并为每个模式匹配引擎提供控制流接口和数据流接口,用于对模式匹配数据库、模式匹配使用者以及每个模式匹配引擎进行控制和数据传送,以及在模式匹配使用者收到报文后,由模式匹配引擎框架根据预设的策略,从多个模式匹配引擎中为该报文选择一个对应的模式匹配引擎,并由模式匹配使用者经由模式匹配引擎框架向所选择的模式匹配引擎传送该报文;所选择的模式匹配引擎经由所述模式匹配引擎框架获取模式匹配数据库中存储的模式匹配规则,根据该模式匹配规则对该报文进行模式匹配后,经由模式匹配引擎框架向模式匹配使用者传送模式匹配结果。
9.根据权利要求8所述的系统,其特征在于所述模式匹配引擎框架包括控制面和数据面;所述模式匹配引擎框架的控制面分别为模式匹配数据库以及每个模式匹配引擎的控制面提供控制流接口,用于对模式匹配数据库以及每个模式匹配引擎进行控制;所述模式匹配引擎框架的数据面分别为模式匹配使用者以及每个模式匹配引擎的数据面提供数据流接口,用于对模式匹配使用者以及每个模式匹配引擎进行数据传送;每个模式匹配引擎包括互相交互的控制面和数据面,用于每个模式匹配引擎的控制面通过控制流实现对数据面操作的控制;模式匹配引擎框架的控制面与数据面互相交互,用于模式匹配引擎框架的控制面通过控制流实现对模式匹配引擎框架的数据面操作的控制;或者所述模式匹配引擎框架包括控制面和数据面;所述模式匹配引擎框架的控制面分别为模式匹配数据库以及每个模式匹配引擎的控制面提供控制流接口,用于对模式匹配数据库以及每个模式匹配引擎进行控制;所述模式匹配引擎框架的数据面分别为模式匹配使用者以及每个模式匹配引擎的数据面提供数据流接口,用于对模式匹配使用者以及每个模式匹配引擎进行数据传送;每个模式匹配引擎包括互相交互的控制面和数据面,用于每个模式匹配引擎的控制面通过控制流实现对数据面操作的控制;或者所述模式匹配引擎框架包括控制面和数据面;所述模式匹配引擎框架的控制面为模式匹配数据库提供控制流接口,用于对模式匹配数据库进行控制;所述模式匹配引擎框架的数据面分别为每个模式匹配引擎的数据面提供控制流接口,用于对每个模式匹配引擎进行控制;所述模式匹配引擎框架的数据面分别为模式匹配使用者以及每个模式匹配引擎的数据面提供数据流接口,用于对模式匹配使用者及每个模式匹配引擎进行数据传送;所述模式匹配引擎框架的控制面与数据面互相交互,用于模式匹配引擎框架的控制面通过控制流实现对模式匹配引擎框架的数据面操作的控制。
10.根据权利要求8所述的系统,其特征在于,所述模式匹配引擎框架包括第一模式匹配引擎选择模块,用于在模式匹配使用者收到报文后,从多个模式匹配引擎中,为该报文选择一个当前可用的、预设的优先级较高的模式匹配引擎;或者第二模式匹配引擎选择模块,用于在模式匹配使用者收到报文后,根据各模式匹配引擎的能力级别,从多个模式匹配引擎中为模式匹配使用者收到的报文选择一个模式匹配引擎,使得各模式匹配引擎所处理的数据流量比与各模式匹配引擎的处理能力比相适应。
11.根据权利要求8所述的系统,其特征在于,所述模式匹配引擎框架包括存储区管理模块,用于预先分配与每个模式匹配引擎一一对应的、用于存储待模式匹配的报文的存储区;第三模式匹配引擎选择模块,用于在模式匹配使用者收到报文后,根据各模式匹配引擎的能力级别,从多个模式匹配引擎中为模式匹配使用者收到的报文选择一个模式匹配引擎,使得各模式匹配引擎所处理的数据流量比与各模式匹配引擎的处理能力比相适应,并将该报文存储在所选择的模式匹配引擎对应的存储区中,所选择的模式匹配引擎根据模式匹配数据库中存储的模式匹配规则对该模式匹配引擎对应的存储区中的报文依次进行模式匹配处理。
12.根据权利要求11所述的系统,其特征在于,所述模式匹配引擎框架还包括负载均衡管理模块,用于按照预设的时间周期对与所述多个模式匹配引擎一一对应的存储区中的报文进行管理,如果各存储区中报文的数据流量比与各模式匹配引擎的处理能力比不相适应或者检测到工作暂停的模式匹配引擎,则对存储区中的报文进行迁移,使得各存储区中报文的数据流量比与各模式匹配引擎的实时处理能力比相适应。
全文摘要
本发明公开了一种模式匹配处理方法,包括对模式匹配数据库、模式匹配使用者以及多个模式匹配引擎进行集中地控制和数据传送;在模式匹配使用者收到报文后,根据预设的策略从多个模式匹配引擎中为该报文选择一个对应的模式匹配引擎,并向所选择的模式匹配引擎传送该报文;该模式匹配引擎根据模式匹配数据库中存储的模式匹配规则,对该报文进行模式匹配;将模式匹配结果返回给模式匹配使用者,模式匹配使用者根据模式匹配结果对所述报文执行对应的预设处理流程。本发明还公开了一种模式匹配处理系统。本发明能够增强系统的扩展性,降低系统的复杂度,实现多个模式匹配引擎的平滑切换和协同工作,实现对多个模式匹配引擎的统一有效的控制管理。
文档编号H04L12/54GK101018122SQ200710086488
公开日2007年8月15日 申请日期2007年3月13日 优先权日2007年3月13日
发明者陈忠良 申请人:杭州华为三康技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1