首页> 中国专利> 防火墙系统和基于该防火墙系统的数据处理方法

防火墙系统和基于该防火墙系统的数据处理方法

摘要

本发明公开了一种防火墙系统和基于该防火墙系统的数据处理方法。其中,该系统包括:两个主控模块、多个业务处理模块、多个分流模块、多个I/O模块和一个交换模块,两个主控模块互为主备关系,用于控制各个模块,交换模块用于转发各模块间的数据包,多个I/O模块和多个分流模块绑定,每个I/O模块用于将接收的数据包发送到与其绑定的分流模块;每个分流模块用于将同一会话中的数据包发送给同一个业务处理模块;每个业务处理模块用于对数据包处理后通过一个I/O模块输出。通过本发明,解决了系统无法进行业务扩展的问题,该系统中业务处理模块的数量可以按需配置,使该系统支持业务的扩展,进而提高了该系统的性能。

著录项

  • 公开/公告号CN102404339A

    专利类型发明专利

  • 公开/公告日2012-04-04

    原文格式PDF

  • 申请/专利权人 山石网科通信技术(北京)有限公司;

    申请/专利号CN201110424951.8

  • 发明设计人 杨启军;刘向明;王钟;莫宁;

    申请日2011-12-16

  • 分类号H04L29/06(20060101);H04L12/56(20060101);

  • 代理机构11240 北京康信知识产权代理有限责任公司;

  • 代理人吴贵明;余刚

  • 地址 100085 北京市海淀区上地七街1号汇众大厦3层

  • 入库时间 2023-12-18 04:42:57

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-04-23

    专利权人的姓名或者名称、地址的变更 IPC(主分类):H04L29/06 变更前: 变更后: 申请日:20111216

    专利权人的姓名或者名称、地址的变更

  • 2017-08-11

    著录事项变更 IPC(主分类):H04L29/06 变更前: 变更后: 申请日:20111216

    著录事项变更

  • 2014-08-06

    专利权的转移 IPC(主分类):H04L29/06 变更前: 变更后: 登记生效日:20140716 申请日:20111216

    专利申请权、专利权的转移

  • 2014-06-18

    授权

    授权

  • 2012-06-13

    实质审查的生效 IPC(主分类):H04L29/06 申请日:20111216

    实质审查的生效

  • 2012-04-04

    公开

    公开

查看全部

说明书

技术领域

本发明涉及通信领域,具体而言,涉及一种防火墙系统和基于该防火墙系统的数据处理 方法。

背景技术

目前,防火墙系统通常包括一个中央处理单元(Central Processing Unit,简称为CPU), Switch(交换)系统和若干输入/输出(Input/output,简称为I/O)端口组成,如图1所示的防 火墙系统结构示意图,其中,CPU负责完成所有防火墙的业务处理,该防火墙系统的数据包 流向如图2所示,首先,数据包进入该防火墙系统的I/O端口,由I/O端口将数据包发送至 Switch系统,经Switch系统转发至CPU;然后,CPU对该数据包进行处理,将处理后的数据 包经Switch系统转发到I/O端口;最后,I/O端口将该数据包从防火墙系统中输出。上述的防 火墙系统只有一个CPU进行业务处理,其性能受限于系统中的CPU的处理能力,不能扩展处 理性能,并且在进行系统升级时,防火墙系统的CPU要中断业务才能完成升级过程,这样将 导致该系统的业务处理过程不够可靠。

目前还存在一种通信设备系统,该通信设备系统包括主板和备板,主板负责处理系统业 务,备板负责接收来自主板的同步信息。主板将配置和状态信息实时同步到备板,在进行软 件升级时,先对备板进行,然后将配置和状态信息同步到该备板,该配置和状态信息的同步 操作完成之后进行主备切换,原来的备板变为主板,接着再升级原来的主板。这样整个系统 的软件就升级为新的软件版本,该升级方式仅支持需要CPU处理的业务都在主控板上进行处 理的情况。

针对相关技术中系统无法进行业务扩展的问题,目前尚未提出有效的解决方案。

发明内容

针对相关技术中系统无法进行业务扩展的问题,本发明提供了一种防火墙系统和基于该 防火墙系统的数据处理方法,以至少解决上述问题。

根据本发明的一个方面,提供了一种防火墙系统,该系统包括:两个主控模块、多个业 务处理模块、多个分流模块、多个I/O模块和一个交换模块,其中,两个主控模块互为主备关 系,用于控制上述多个业务处理模块、上述多个分流模块、上述多个I/O模块和上述交换模块, 该交换模块用于转发各模块间的数据包,多个I/O模块和多个分流模块绑定,每个I/O模块用 于将接收到的数据包发送到与其绑定的分流模块;多个分流模块中的每个分流模块用于将同 一会话中的数据包发送给同一个业务处理模块;每个业务处理模块用于对接收到的数据包进 行处理,处理完成之后将该数据包通过多个I/O模块中的一个I/O模块输出。

上述分流模块包括:负载确定单元,用于接收到一个会话的第一个数据包时,确定上述 多个业务处理模块的负载情况;选择单元,用于根据负载确定单元确定的负载情况,选择第 一个数据包对应的业务处理模块;第一分流单元,用于将第一个数据包转发给选择单元选择 的业务处理模块。

上述分流模块包括:映射单元,用于接收到一个会话的第一个数据包时,根据第一个数 据包的包头携带的信息进行映射;确定单元,用于根据映射单元的映射结果确定第一个数据 包对应的业务处理模块;第二分流单元,用于将第一个数据包转发给确定单元确定的业务处 理模块。

上述业务处理模块包括:接收单元,用于接收第一个数据包;创建单元,用于根据第一 个数据包创建上述会话的数据结构;响应单元,用于向分流模块回复响应消息,其中该响应 消息携带有上述会话标识与业务处理模块的标识的对应关系;分流模块包括:对应关系存储 单元,用于存储上述响应消息中携带的上述会话标识与业务处理模块的标识的对应关系;第 三分流单元,用于根据对应关系存储单元存储的上述对应关系,将上述会话中的后续数据包 转发给业务处理模块。

上述分流模块包括:同步单元,用于接收到升级指示后,将对应关系存储单元中存储的 上述对应关系同步至多个分流模块中的另一个分流模块;第一升级单元,用于根据上述升级 指示进行升级;另一个分流模块包括:同步存储单元,用于存储同步单元同步的对应关系; 交换模块包括:绑定修改单元,用于根据系统配置指示修改上述多个I/O模块和上述多个分流 模块绑定关系。

上述业务处理模块包括:信息同步单元,用于接收到升级指示后,将创建单元创建的上 述数据结构同步至多个业务处理模块中的另一个业务处理模块;通知单元,用于向分流模块 发送上述对应关系修改通知,其中该修改通知携带有自身所在的业务处理模块的标识和另一 个业务处理模块的标识;第二升级单元,用于根据上述升级指示进行升级;分流模块包括: 对应关系修改单元,用于根据通知单元发送的修改通知,将上述对应关系中与上述修改通知 中第一个业务处理模块的标识相同的标识修改为修改通知中第二个业务处理模块的标识;第 四分流单元,用于根据对应关系修改单元修改后的对应关系将上述会话中的后续数据包转发 至另一个业务处理模块;另一个业务处理模块包括:信息存储单元,用于存储信息同步单元 同步的上述数据结构;业务处理单元,用于根据信息存储单元存储的上述数据结构对上述会 话中的后续数据包进行处理。

根据本发明的另一方面,提供了一种基于上述防火墙系统的数据处理方法,该方法包括: 多个I/O模块中的每个I/O模块接收到数据包后,将数据包发送到与其绑定的分流模块;多个 分流模块中的每个分流模块接收到该数据包后,按照同一会话中的数据包发送给同一个业务 处理模块的分流规则,将该数据包转发给对应的业务处理模块;每个业务处理模块接收到该 数据包后,对该数据包进行处理,处理完成之后将该数据包通过多个I/O模块中的一个I/O模 块输出。

上述分流模块将上述数据包转发给对应的业务处理模块包括:分流模块接收到一个会话 的第一个数据包后,确定上述多个业务处理模块的负载情况;分流模块根据确定的多个业务 处理模块的负载情况,选择第一个数据包对应的业务处理模块;分流模块将第一个数据包转 发给选择的业务处理模块。

上述分流模块将上述数据包转发给对应的业务处理模块包括:分流模块接收到一个会话 的第一个数据包后,根据第一个数据包的包头携带的信息进行映射;分流模块根据映射结果 确定第一个数据包对应的业务处理模块;分流模块将第一个数据包转发给确定的业务处理模 块。

每个业务处理模块接收到上述数据包后包括:业务处理模块接收到第一个数据包后,根 据第一个数据包创建上述会话的数据结构;业务处理模块向分流模块回复响应消息,其中, 该响应消息携带有上述会话标识与业务处理模块的标识的对应关系;分流模块存储上述响应 消息中携带的上述会话标识与业务处理模块的标识的对应关系;分流模块根据存储的上述对 应关系,将上述会话中的后续数据包转发给业务处理模块。

上述方法还包括:分流模块接收到升级指示后,将存储的上述对应关系同步至上述多个 分流模块中的另一个分流模块;然后,根据上述升级指示进行升级;交换模块接收系统配置 指示后,根据上述系统配置指示修改上述多个I/O模块和上述多个分流模块绑定关系,按照修 改后的绑定关系转发上述会话中的后续数据包;另一个分流模块存储分流模块同步的对应关 系后,根据存储的上述对应关系,将交换模块转发的上述会话中的后续数据包转发给业务处 理模块。

上述方法还包括:业务处理模块接收到升级指示后,将创建的上述数据结构同步至上述 多个业务处理模块中的另一个业务处理模块,并向分流模块发送上述对应关系修改通知,其 中,该修改通知携带有自身所在的业务处理模块的标识和另一个业务处理模块的标识,然后, 根据上述升级指示进行升级;分流模块根据业务处理模块发送的修改通知,将上述对应关系 中与上述修改通知中第一个业务处理模块的标识相同的标识修改为上述修改通知中第二个业 务处理模块的标识;分流模块根据修改后的上述对应关系将上述会话中的后续数据包转发至 另一个业务处理模块;另一个业务处理模块存储业务处理模块同步的上述数据结构,并根据 存储的上述数据结构对上述会话中的后续数据包进行处理。

通过本发明,防火墙系统中的多个I/O模块和多个分流模块绑定,每个I/O模块将接收到 的数据包发送到与其绑定的分流模块,然后每个分流模块接收到数据包后,将同一会话中的 数据包发送给同一个业务处理模块,每个业务处理模块对数据包进行处理后通过一个I/O模块 输出,解决了相关技术中系统无法进行业务扩展的问题,该系统有多个业务处理模块,该业 务处理模块的数量可以按照需求进行配置,使该系统支持业务的扩展,进而提高了防火墙系 统的性能。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示 意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据相关技术的防火墙系统结构的示意图;

图2是根据相关技术的防火墙系统的数据包流向的示意图;

图3是根据本发明实施例的防火墙系统的结构框图;

图4是根据本发明实施例的防火墙系统的具体结构框图;

图5是根据本发明实施例的防火墙系统的数据包流向的示意图;

图6根据本发明实施例的基于防火墙系统的数据处理方法的流程图;

图7根据本发明实施例一的基于防火墙系统的数据处理方法的流程图。

具体实施方式

下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下, 本申请中的实施例及实施例中的特征可以相互组合。

在现有技术中,由于防火墙系统只有一个CPU负责进行业务的处理,因此该系统性能受 限于CPU的处理能力,不能扩展处理性能。基于此,本发明实施例提供了一种防火墙系统和 基于该防火墙系统的数据处理方法。该防火墙系统用多个业务处理模块,便于进行业务扩展。 下面通过实施例进行详细说明。

本实例提供了一种防火墙系统,该系统包括:两个主控模块、多个业务处理模块、多个 分流模块、多个I/O模块和一个交换(Switch)模块。如图3所示的是防火墙系统的结构框图, 在图3中两个主控模块分别以第一主控模块30a和第二主控模块30b为例进行说明,多个业 务处理模块分别以第一业务处理模块32a、第二业务处理模块32b和第三业务处理模块32c为 例进行说明,多个分流模块分别以第一分流模块34a、第二分流模块34b和第三分流模块34c 为例进行说明,多个I/O模块分别以第一I/O模块36a、第二I/O模块36b和第三I/O模块36c 为例进行说明,一个交换模块以交换模块38为例进行说明。下面对该结构进行说明。

两个主控模块互为主备关系,用于控制多个业务处理模块、所述多个分流模块、多个I/O 模块和交换模块;交换模块(比如图3中的交换模块38),与上述模块均相连,用于转发各模 块间的数据包;

多个I/O模块和多个分流模块绑定,每个I/O模块(比如图3中的第一I/O模块36a)连 接至交换模块38,用于将接收到的数据包发送到与其绑定的分流模块(比如图3中的第一分 流模块34a);多个分流模块中的每个分流模块(比如图3中的第一分流模块34a)连接至交 换模块38,用于将同一会话中的数据包发送给同一个业务处理模块(比如图3中的第一业务 处理模块32a);

每个业务处理模块(比如图3中的第一业务处理模块32a)连接至交换模块38,用于对 接收到的数据包进行处理,处理完成之后将该数据包通过多个I/O模块中的一个I/O模块(比 如图3中的第一I/O模块36a)输出。

其中,上述业务处理模块的处理过程中包括了查找出接口的过程,如果接收到的数据包 是三层数据包,通过路由查找出接口;如果接收到的数据包是二层数据包,则通过目的MAC 地址决定出接口;出接口所在的I/O模块就是被选择的I/O模块,具体通过哪个I/O模块完成 数据包的输出可以参考相关技术实现,这里不再详述。

通过上述系统,防火墙系统中的多个I/O模块和多个分流模块绑定,每个I/O模块将接收 到的数据包发送到与其绑定的分流模块,然后每个分流模块接收到数据包后,将同一会话中 的数据包发送给同一个业务处理模块,每个业务处理模块对数据包进行处理后通过一个I/O模 块输出,解决了相关技术中系统无法进行业务扩展的问题,该系统有多个业务处理模块,该 业务处理模块的数量可以按照需求进行配置,使该系统支持业务的扩展,进而提高了防火墙 系统的性能。

每个分流模块在接收到I/O模块发送的数据包之后,按照同一会话中的数据包发送给同一 个业务处理模块的分流规则,将上述数据包发送给同一个业务处理模块,对于分流模块在接 收到第一个数据包后如何选择业务处理模块进行数据包的传输,本实施例给出两种优选实施 方式,当然,本发明并不限于这两种实施方式,下面对分流模块在接收到第一个数据包后如 何选择业务处理模块的两种优选实施方式分别进行描述,其中,本优选实施方式以图3中的 第一分流模块34a为例进行详细说明。

第一种方式,该防火墙系统的第一分流模块34a包括:负载确定单元,用于接收到一个 会话的第一个数据包时,确定多个业务处理模块的负载情况;选择单元,用于根据负载确定 单元确定的负载情况,选择上述第一个数据包对应的第一业务处理模块32a;第一分流单元, 连接至选择单元,用于将第一个数据包转发给选择单元选择的第一业务处理模块32a。该方式 是基于业务处理模块的负载情况进行选择的,一般情况下,分流模块选择一个负载较低的业 务处理模块来进行数据包的发送。

第二种方式,该防火墙系统第一分流模块34a包括:映射单元,用于接收到一个会话的 第一个数据包时,根据第一个数据包的包头携带的信息进行映射;确定单元,连接至映射单 元,用于根据映射单元的映射结果确定上述第一个数据包对应第一业务处理模块32a;第二分 流单元,连接至确定单元,用于将第一个数据包转发给确定单元确定的第一业务处理模块32a。 该方式是基于第一个数据包的包头携带的信息和第一业务处理模块32a之间的映射关系进行 业务处理模块的选择,比如可以采用固定映射的方式,计算数据包的5元组(IP数据包的源 目的IP地址,源目的端口和协议号)的hash(杂凑或称为哈希,也可以写为HASH)值,将 同一个hash值的数据包对应与同一个业务处理单元,以此建立第一个数据包和业务处理模块 之间的映射关系,从而使第一分流模块34a在接收到第一个数据包时选择出第一业务处理模 块32a进行数据包的发送。在分流模块接收到第一个数据包时,上述两种优选实施方式便于 快速简捷的选择合适的业务处理模块。

在业务处理模块接收到分流模块发送的第一个数据包之后,业务处理模块可以将其记录 下来,便于后续的数据包的接收和处理,因此,在本实施例的一个优选实施方式中,为了实 现上述目的,业务处理模块(本优选实施方式以第一业务处理模块32a为例进行说明)可以 包括:接收单元,用于接收第一个数据包;创建单元,连接至接收单元,用于根据上述第一 个数据包创建会话的数据结构;响应单元,连接至创建单元,用于向第一分流模块34a回复 响应消息,其中该响应消息携带有会话标识与第一业务处理模块32a的标识的对应关系。通 过本优选实施方式,业务处理模块可以更加方便有效的对分流模块发送过来的后续数据包进 行管理记录。其中,本实施例创建的数据结构可以包括:数据包的5元组、数据包出接口、 数据包下一跳MAC地址、反向数据包的5元组、数据包入接口、数据包源MAC地址、安全 策略ID、处理该会话的数据包的业务处理模块ID等中的部分或全部参数。该会话标识可以是 数据包中携带的5元组及反向数据包中携带的5元组等。

在分流模块接收到该响应消息之后,可以将上述会话标识与业务处理模块的标识的对应 关系记录下来,便于分流模块在接收到后续的数据包时,根据此对应关系将数据包发送给对 应的业务处理模块。分流模块(本优选实施方式以第一分流模块34a为例进行说明)可以包 括:对应关系存储单元,用于存储第一业务处理模块32a发送的响应消息中携带的会话标识 与第一业务处理模块32a的标识的对应关系;第三分流单元,连接至对应关系存储单元,用 于根据对应关系存储单元存储的该对应关系,将会话中的后续数据包转发给第一业务处理模 块32a。

上述对应关系存储单元存储的上述对应关系可以选择在分流表中进行记录,分流模块在 接收到数据包后,可以先查找分流表,如果在该分流表中找到了该数据包的会话标识和业务 处理模块的标识的对应关系,根据记录的信息就可以确定该数据包应该发送给哪个业务处理 模块。如果没有找到该对应关系,则按照上述的分流模块在接收到第一个数据包后如何选择 业务处理模块的两种优选实施方式,选择一个负载较低的业务处理模块,或者按照固定映射 的方式选择一个业务处理模块。这样分流表中存储的信息就可以不断的扩充。本优选实施方 式提供的对应关系使分流模块可以简捷快速并且有规划地发送数据包至业务处理模块。

上述实施例及各个优选实施方式中的防火墙系统中的业务处理模块的数量可以按需求进 行配置,这样实现了系统性能的可扩展性,并且在系统内部进行数据处理时可以更加有规划 有目的的进行。防火墙系统还面临着升级的问题,现有技术中的有些系统在升级时要中断业 务,这样将导致该系统的业务处理过程不够可靠,还有些系统在升级时虽然不用中断业务, 但是这种升级方式仅支持所有业务的处理都在主控板上进行的系统。因此,本实施例提供了 一个优选实施方式,如图4所示的是防火墙系统的具体结构框图,该系统除了包括图3中的 各个模块之外,还包括:

分流模块(以图4中的第一分流模块34a为例)包括:同步单元34a0,用于接收到升级 指示后,将对应关系存储单元中存储的对应关系同步至多个分流模块中的另一个分流模块(以 图4中的第二分流模块34b为例);第一升级单元34a2,连接至同步单元34a0,用于根据上述 升级指示进行升级;

另一个分流模块(即图4中的第二分流模块34b)包括:同步存储单元34b0,连接至同 步单元34a0,用于存储同步单元34a0同步的对应关系;后续,该分流模块将根据同步后的对 应关系进行数据包的转发。

交换模块38包括:绑定修改单元380,用于根据系统配置指示修改多个I/O模块和多个 分流模块绑定关系。

在本优选实施方式中,第一分流模块34a要进行升级时,将其存储的对应关系同步到第 二分流模块34b,然后交换模块38修改I/O模块和分流模块绑定关系,这样在第一I/O模块 36a接收到数据包时,将该数据包发送到第二分流模块34b;并且,如果一个会话的数据包在 第一分流模块34a上要发送至第一业务处理模块32a,本优选实施方式中的第二分流模块34b 将该数据包发送至第一业务处理模块32a。这样保证了在分流模块进行升级的过程中数据包的 传输不会中断,当然,在第一分流模块34a要进行升级时,其所选择的要进行对应关系同步 的其他分流模块并不只限于第二分流模块34b,可以是除其本身之外的任意一个分流模块。通 过本优选实施方式,防火墙系统可以在业务不中断的情况下进行分流模块的升级操作,提高 了该防火墙系统的业务处理的可靠性。

在对分流模块的升级进行了描述之后,下面对业务处理模块的升级过程进行描述。本实 施例提供了另外一种优选实施方式,该方式包括:

业务处理模块(以图4中的第一业务处理模块32a为例)包括:信息同步单元,用于接 收到升级指示后,将创建单元创建的数据结构同步至多个业务处理模块中的另一个业务处理 模块(以图4中的第二业务处理模块32b为例);通知单元,用于向分流模块(以图4中的第 三分流模块34c为例)发送对应关系修改通知,其中该修改通知携带有自身所在的业务处理模 块的标识(即第一业务处理模块32a的标识)和第二业务处理模块32b的标识,这两个标识 指明了从哪个业务处理模块切换到哪个业务处理模块;第二升级单元,连接至通知单元,用 于根据上述升级指示进行升级。本实施例的业务迁移完毕后,主控模块会将其重启,然后加 载新的软件版本。

分流模块(即第一分流模块34a)包括:对应关系修改单元,用于根据通知单元发送的修 改通知,将上述对应关系中与该修改通知中第一个业务处理模块的标识相同的标识修改为该 修改通知中第二个业务处理模块的标识,本实施例即将上述对应关系(例如分流表)中的第 一业务处理模块32a的标识修改为第二业务处理模块32b的标识;第四分流单元,连接至对 应关系修改单元,用于根据对应关系修改单元修改后的对应关系将上述会话中的后续数据包 转发至第二业务处理模块32b;

另一个业务处理模块(即图4中的第二业务处理模块32b)包括:信息存储单元,连接至 信息同步单元,用于存储信息同步单元同步的数据结构;业务处理单元,连接至信息存储单 元,用于根据信息存储单元存储的数据结构述会话中的后续数据包进行处理。

在本优选实施方式中,第一业务处理模块32a要进行升级时将其创建的数据结构同步到 第二业务处理模块32b,然后第一分流模块34c修改数据包的会话标识与第二业务处理模块 32b的标识的对应关系,这样在第一分流模块34a要发送数据包至第一业务处理模块32a时, 本优选实施方式中的第一分流模块34a将该数据包发送至第二业务处理模块32b。这样保证了 在业务处理模块进行升级的过程中使数据包的传输不会中断,当然,在第一业务处理模块32a 要进行升级时,其所选择的要进行数据结构同步的其他业务处理模块并不只限于第二业务处 理模块32b,可以是除其本身之外的任意一个业务处理模块。通过本优选实施方式,防火墙系 统可以在业务不中断的情况下进行业务处理模块的升级操作,提高了该防火墙系统的业务处 理的可靠性。

上述优选实施方式对分流模块和业务处理模块的升级方式分别进行了详细描述,针对主 控模块的升级方式,下面通过优选实施方式进行介绍。两个主控模块互为主备关系,假设第 一主控模块30a是处于主状态的主控模块,第二主控模块30b是处于备状态的主控模块,当 然,二者的主备关系并不限于此。第一主控模块30a上的配置、状态信息会随时同步到第二 主控模块30b,首先对处于备状态的第二主控模块30b进行升级操作,在此期间第一主控模块 30a可以继续对该系统中的各个模块进行控制,在第二主控模块30b的升级操作结束之后,对 两个主控模块的主备关系进行切换,然后再对切换后处于备状态的第一主控模块30a进行升 级操作。这样本优选实施方式就在不中断业务的前提下完成了两个主控模块的升级操作,提 高了系统的业务处理能力。

在上述防火墙系统中,采用业务在同种类模块间转移、轮流升级各模块的方案实现了系 统软件的平滑升级。该系统可以进行业务扩展,并且可以在不中断业务的前提下进行系统的 升级操作,该实施例还可以在机框式系统中进行实现,比如构建一个机框式的防火墙系统, 该防火墙系统可以有16个槽位,包括两个主控板槽位和两个交换板槽位和12个通用槽位, 该通用槽位可以插I/O板、业务处理板和分流板。主控板对应上述实施例中的主控模块,交换 板对应上述实施例中的交换模块,I/O板对应上述实施例中的I/O模块,业务处理板对应上述 实施例中的业务处理模块,分流板对应上述实施例中的分流模块。I/O板,业务处理板和分流 板的数量可以根据网络处理的需要进行灵活配置。该系统可以配置两个主控板,两个或者更 多个业务处理板,两个或者更多个分流板,该防火墙系统可以实现软件的平滑升级。即升级 软件时不需要重启整个系统,并且业务处理不受影响。

对应于上述实施例提供的一种防火墙系统,本实施例提供了一种基于该防火墙系统的数 据处理方法,该防火墙系统可以由主控模块、业务处理模块、分流模块、交换模块以及I/O端 口组成。该系统的数据包流向如图5所示,首先,数据包进入该防火墙系统的I/O端口,由I/O 端口将数据包发送至Switch模块,经Switch模块转发至分流模块;然后,分流模块按照上述 的同一会话中的数据包发送给同一个业务处理模块的分流规则,将该数据包经由Switch模块 转发给对应的业务处理模块;然后,该业务处理模块对该数据包进行处理,将处理后的数据 包经Switch模块转发到I/O端口;最后,I/O端口将该数据包从防火墙系统中输出。本实施例 中的系统以包括两个主控模块、若干个业务处理模块、若干个分流模块、若干个I/O端口和一 个Switch(交换)系统为例进行说明。图6是根据本发明实施例的基于防火墙系统的数据处 理方法的流程图,如图6所示,该方法包括以下步骤(步骤S602-步骤S606):

步骤S602,多个I/O模块中的每个I/O模块接收到数据包后,将该数据包发送到与其绑 定的分流模块。从一个I/O端口来的数据包首先需要交给分流模块处理,在系统初始化时,将 I/O端口与分流模块进行绑定,即从一个I/O端口上来的所有数据包都交给预先指定的分流模 块,该绑定关系在运行时也可以更改。

步骤S604,多个分流模块中的每个分流模块接收到数据包后,按照同一会话中的数据包 发送给同一个业务处理模块的分流规则,将该数据包转发给对应的业务处理模块。

步骤S606,每个业务处理模块接收到上述数据包后,对该数据包进行处理,处理完成之 后将数据包通过多个I/O模块中的一个I/O模块输出。

其中,上述业务处理模块的处理过程中包括了查找出接口的过程,如果接收到的数据包 是三层数据包,通过路由查找出接口;如果接收到的数据包是二层数据包,则通过目的MAC 地址决定出接口;出接口所在的I/O模块就是被选择的I/O模块,具体通过哪个I/O模块完成 数据包的输出可以参考相关技术实现,这里不再详述。

通过上述方法,防火墙系统中的多个I/O模块和多个分流模块绑定,每个I/O模块将接收 到的数据包发送到与其绑定的分流模块,然后每个分流模块接收到数据包后,将同一会话中 的数据包发送给同一个业务处理模块,每个业务处理模块对数据包进行处理后通过一个I/O模 块输出,解决了相关技术中系统无法进行业务扩展的问题,该系统有多个业务处理模块,该 业务处理模块的数量可以按照需求进行配置,使该系统支持业务的扩展,进而提高了防火墙 系统的性能。

每个分流模块在接收到I/O模块发送的数据包之后,按照同一会话中的数据包发送给同一 个业务处理模块的分流规则,将上述数据包发送给同一个业务处理模块,对于分流模块在接 收到第一个数据包后如何选择业务处理模块进行数据包的传输,本实施例给出两种优选实施 方式,当然,本发明并不限于这两种实施方式,下面对分流模块在接收到第一个数据包后如 何选择业务处理模块的两种优选实施方式分别进行描述。

第一种方式,分流模块接收到一个会话的第一个数据包后,确定多个业务处理模块的负 载情况,然后分流模块根据确定的多个业务处理模块的负载情况,选择第一个数据包对应的 业务处理模块,最后分流模块将上述第一个数据包转发给选择的业务处理模块。该方式是基 于业务处理模块的负载情况进行选择的,一般情况下,分流模块选择一个负载较低的业务处 理模块来进行数据包的发送。

第二种方式,分流模块接收到一个会话的第一个数据包后,根据该第一个数据包的包头 携带的信息进行映射,然后分流模块根据映射的结果确定第一个数据包对应的业务处理模块, 最后分流模块将第一个数据包转发给确定的业务处理模块。比如可以采用固定映射的方式, 计算数据包的5元组(IP数据包的源目的IP地址,源目的端口和协议号)的hash(杂凑或称 为哈希,也可以写为HASH)值,将同一个hash值的数据包对应与同一个业务处理单元,以 此建立第一个数据包和业务处理模块之间的映射关系,从而使分流模块在接收到第一个数据 包时选择出业务处理模块进行数据包的发送。在分流模块接收到第一个数据包时,上述两种 优选实施方式便于快速简捷的选择合适的业务处理模块。

在业务处理模块接收到分流模块发送的第一个数据包之后,业务处理模块可以将其记录 下来,便于后续的数据包的接收和处理,因此,在本实施例的一个优选实施方式中,为了实 现上述目的,在接收到分流模块发送的第一个数据包后,业务处理模块可以根据第一个数据 包创建会话的数据结构,然后业务处理模块向该分流模块回复响应消息,其中该响应消息携 带有会话标识与业务处理模块的标识的对应关系,然后上述分流模块存储响应消息中携带的 会话标识与业务处理模块的标识的对应关系,这样在分流模块接到后续的数据包时,可以根 据存储的对应关系,将会话中的后续数据包转发给业务处理模块。通过本优选实施方式,业 务处理模块可以更加方便有效的对分流模块发送过来的后续数据包进行管理记录,然后分流 模块可以将上述会话标识与业务处理模块的标识的对应关系记录下来,便于分流模块在接收 到后续的数据包时,根据此对应关系将数据包发送给对应的业务处理模块。其中,本实施例 创建的数据结构可以包括:数据包的5元组、数据包出接口、数据包下一跳MAC地址、反向 数据包的5元组、数据包入接口、数据包源MAC地址、安全策略ID、处理该会话的数据包 的业务处理模块ID等中的部分或全部参数。该会话标识可以是数据包中携带的5元组及反向 数据包中携带的5元组等。

上述实施例及其各个优选实施方式中的防火墙系统可以满足业务扩展的要求,并且在系 统内部进行数据处理时可以更加有规划有目的的进行。现有技术中的防火墙系统还面临着升 级时必须中断业务的问题。因此,本实施例提供了一个优选实施方式,在接收到升级指示后, 分流模块可以将存储的对应关系同步至多个分流模块中的另一个分流模块,然后该分流模块 根据上述升级指示进行升级,然后交换模块接收系统配置指示后,根据该系统配置指示修改 多个I/O模块和多个分流模块的绑定关系,按照修改后的绑定关系转发所述会话中的后续数据 包,另一个分流模块存储上述分流模块同步的对应关系后,根据存储的对应关系,将交换模 块转发的会话中的后续数据包转发给业务处理模块。

假定系统有多个分流模块,其中有两个分流模块分别称为A和B,现在准备要升级分流 模块A。首先将分流模块A上的分流表同步到分流模块B上,后续,分流模块B将根据同步 后的对应关系进行数据包的转发。同步操作完成后,更改Switch模块的配置,将原来与分流 模块A绑定的I/O端口的流量全部转发给分流模块B进行处理,这时分流模块A将不再收到 业务数据包,可以对其进行升级并且不影响业务的处理,在分流模块A升级完成后。再按照 类似的过程升级分流模块B。当然,在分流模块要进行升级时,其所选择的要进行对应关系同 步的其他分流模块并不只限于某一个特定的分流模块,可以是除其本身之外的任意一个分流 模块。

本优选实施方式保证了在分流模块进行升级的过程中使数据包的传输不会中断,通过本 优选实施方式,防火墙系统可以在业务不中断的情况下进行分流模块的升级操作,提高了该 防火墙系统的业务处理的可靠性。

在对分流模块的升级进行了描述之后,下面对业务处理模块的升级过程进行描述。本实 施例提供了另外一种优选实施方式,该方式的过程如下所示。业务处理模块接收到升级指示 后,将创建的数据结构同步至多个业务处理模块中的另一个业务处理模块,并向分流模块发 送对应关系修改通知,其中该修改通知携带有自身所在的业务处理模块的标识和上述另一个 业务处理模块的标识,这两个标识指明了从哪个业务处理模块切换到哪个业务处理模块,然 后,上述业务处理模块根据升级指示进行升级。本实施例的业务迁移完毕后,主控模块会将 其重启,然后加载新的软件版本。分流模块根据上述业务处理模块发送的修改通知,将对应 关系中与该修改通知中上述业务处理模块的标识相同的标识修改为该修改通知中上述另一个 业务处理模块的标识,上述分流模块根据修改后的对应关系将会话中的后续数据包转发至上 述另一个业务处理模块,该另一个业务处理模块存储上述业务处理模块同步的数据结构,然 后根据存储的数据结构对会话中的后续数据包进行处理。

假定防火墙系统有多个业务处理模块,其中有两个业务处理模块分别称为A和B,现在 准备要升级业务处理模块A。首先将业务处理模块A上的session(会话)信息同步到业务处 理模块B上,同步操作完成后,通知分流模块将原来转发给业务处理模块A的流量全部转发 给业务处理模块B。这样处理后,业务处理模块A将不再收到业务数据包,这时就可以对业 务处理模块A进行升级,在业务处理模块A的升级完成后,按照类似方法,再对其他业务处 理模块升级。当然,在业务处理模块要进行升级时,其所选择的要进行数据结构同步的其他 业务处理模块并不只限于某一个特定的业务处理模块,可以是除其本身之外的任意一个业务 处理模块。

本优选实施方式保证了在业务处理模块进行升级的过程中使数据包的传输不会中断,通 过本优选实施方式,防火墙系统可以在业务不中断的情况下进行业务处理模块的升级操作, 提高了该防火墙系统的业务处理的可靠性。

上述优选实施方式对分流模块和业务处理模块的升级方式分别进行了详细描述,针对主 控模块的升级方式,下面通过优选实施方式进行介绍。防火墙系统中的两个主控模块处于主 备的逻辑,主上的配置、状态信息会随时同步到备,在系统进行升级时,先升级备状态的主 控模块,升级完成后再对主备逻辑进行切换,然后再升级新的备状态的主控模块。该方式在 不中断业务的前提下完成了两个主控模块的升级操作,提高了系统的业务处理能力。

下面结合优选实施例和附图对上述实施例的实现过程进行详细说明。

实施例一

图7是根据本发明实施例一的基于防火墙系统的数据处理方法的流程图,该防火墙系统 可以由主控模块、业务处理模块、分流模块、Switch(交换)模块以及I/O端口组成。主控模 块负责系统的控制平面处理,两个主控模块构成主备冗余,业务处理模块负责防火墙业务处 理,分流模块负责将数据包分发到业务处理模块上,Switch模块用于各模块的互联,各模块 间交互的业务和控制数据将由Switch模块进行转发。如图7所示,该方法包括如下步骤(步 骤S702-步骤S724):

步骤S702,系统升级备状态的主控模块。

步骤S704,在备状态的主控模块升级完成之后,两个主控模块进行主备切换。

步骤S706,升级备状态的主控模块(即原来的主状态的主控模块)。

步骤S708,对所有的业务处理模块排队,选择队头的业务处理模块为第一个升级的业务 处理模块,下一个业务处理模块为其备份模块,该选择方式并不限于此,本实施例仅以此方 式进行说明。

步骤S710,升级选择出的业务处理模块。

步骤S712,判断所有业务处理模块的升级是否全部完成,如果所有业务处理模块都已经 升级完成,执行步骤S714,如果业务处理模块没有全部升级完成,执行步骤S716。

步骤S714,对所有分流模块进行排队,选择队头的分流模块为第一个升级的分流模块, 下一个分流模块为其备份模块,该选择方式并不限于此,本实施例仅以此方式进行说明,然 后执行步骤S718。

步骤S716,选择队列中的下一个模块作为升级模块,然后执行步骤S710;

步骤S718,升级选择出的分流模块。

步骤S720,判断所有分流模块的升级是否全部完成,如果所有分流模块都已经升级完成, 执行步骤S724,如果分流模块没有全部升级完成,执行步骤S722。

步骤S722,选择队列中的下一个模块作为升级模块,然后执行步骤S718。

步骤S724,系统升级完成。

本实施例的方法可以使防火墙系统进行性能扩展,并且实现业务不间断的平滑升级,该 系统具有高可靠、性能易扩展等优势。

从以上的描述中,可以看出,本发明方案可实现一个性能可扩展的防火墙系统,并且该 系统采用业务在同种类模块间转移、轮流升级各模块的方案实现了平滑升级,从而实现了防 火墙系统的性能扩展,并且在业务不中断的前提下可以进行系统的升级,提高了系统业务处 理的可靠性。

显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算 装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上, 可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置 中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步 骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个 集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员 来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等 同替换、改进等,均应包含在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号