一种软件定义网络中的防火墙系统及其实现方法

文档序号:8003768阅读:410来源:国知局
一种软件定义网络中的防火墙系统及其实现方法
【专利摘要】本发明提供一种软件定义网络中的防火墙系统及其实现方法,至少包括:Openflow交换机、防火墙模块和控制器,其中,所述Openflow交换机和防火墙模块均与控制器连接,所述Openflow交换机再与通信终端相连。本发明的软件定义网络中的防火墙系统将防火墙以模块形式嵌入在整个网络中,利用控制器对于全网的统一管控能力,实现对整个网络中所有数据流的灵活调配和统一管理,突破了防火墙的发展瓶颈;同时,本发明的软件定义网络中的防火墙系统的管控都集中于控制器,整网防护措施的升级与修改无需对设备逐一操作,缩短了部署的时间。
【专利说明】一种软件定义网络中的防火墙系统及其实现方法

【技术领域】
[0001]本发明涉及网络【技术领域】,具体地,涉及一种软件定义网络(Software DefinedNetwork,,SDN)中的防火墙系统及其实现方法。

【背景技术】
[0002]随着互联网技术的不断发展和进步,无论是人们的日常生活还是生产方面都与互联网息息相关。因此,网络安全问题也成为了大家关注的焦点。为了解决网络的安全问题,现有技术中普遍采用防火墙的方式来实现安全机制。
[0003]防火墙是建立在内外网络边界上的过滤封锁机制,内部网络被认为是安全和可信赖的,而外部网络被认为是不安全和不可信赖的。防火墙的作用是防止不希望的、未经授权的通信进出被保护的内部网络,通过边界控制强化内部网络的安全政策。
[0004]软件定义网络SDN是一种新的网络架构,其核心技术Openf low通过将网络设备控制面与数据面分离开来,实现了控制权和转发权的相互独立,从而灵活控制数据流。在SDN网络中,由作为逻辑控制单元的控制器来对网络进行统一的集中管控。网络的部署、运维、管理等都交由控制器完成,从而解决了网络中分散设备的运行管理问题。同时SDN网络也提供了可编程接口,按业务所需设计的软件能够直接运行在控制器上,使得全网的更新和升级能够统一完成。
[0005]SDN技术消除了底层设备的差异,使得接入设备变得复杂多样,同时也使得原本分布在各种设备上的防御机制之间难以协调统一,导致无法形成完整的安全体系。上述安全问题对SDN的应用和发展带来了阻碍。如何实现对SDN网络的安全防护已经成为本领域技术人员亟待解决的技术课题。


【发明内容】

[0006]鉴于以上所述现有技术的缺点,本发明的目的在于提供一种软件定义网络中的防火墙系统及其实现方法,其能够从根本解决全网分布式防御机制难以统一的问题,有效地提高了网络应对安全问题的能力。
[0007]为实现上述目的及其他相关目的,本发明提供一种软件定义网络中的防火墙系统,至少包括:0penflow交换机、防火墙模块和控制器,其中,所述Openflow交换机和防火墙模块均与控制器连接,所述Openflow交换机再与通信终端相连。
[0008]根据权上述的软件定义网络中的防火墙系统,其中:所述控制器包括包过滤模块和REST API服务模块;其中,所述包过滤模块用于根据过包滤规则处理数据包;所述RESTAPI服务模块用于将所述控制器的API可编程接口封装成REST API形式。
[0009]进一步地,根据权上述的软件定义网络中的防火墙系统,其中:所述包过滤规则定义了包过滤模块接收或者拒绝数据包的具体规则;所述数据包的头部包括源地址、目标地址、通信协议、协议端口号相关参数;所述包过滤规则是数据包的头部参数的任意组合,用于匹配数据包的头部。
[0010]根据权上述的软件定义网络中的防火墙系统,其中:所述防火墙模块利用软件定义网络中的所述控制器提供的网络拓扑结构、网络状态和网络信息,分析网络的安全需求并制定相应的安全策略,自组成防火墙体系。
[0011]根据权上述的软件定义网络中的防火墙系统,其中:所述Openflow交换机包括Openflow流表和转发模块;所述Openflow流表用于根据所述控制器下发的流表项规则匹配所接收的数据包,若是匹配成功,就将数据包交给转发模块;若是流表耗尽后仍然无法匹配,则视为异常数据包交由控制器处理;所述转发模块用于将数据包转发至主机、其他交换机或是控制器。
[0012]进一步地,根据权上述的软件定义网络中的防火墙系统,其中:所述Openflow流表由所述控制器通过Openflow协议来部署、修改和管理。
[0013]同时本发明还提供一种上述软件定义网络中的防火墙系统的实现方法,其包括以下步骤:
[0014]步骤1:0penflow流表匹配Openflow交换机接收到的数据包,若匹配成功,则将数据包交给转发模块进行转发;若是匹配不成功,则向控制器发送异常消息,进入步骤2 ;
[0015]步骤2:控制器分析接收到的异常消息,向防火墙模块发出处理请求;
[0016]步骤3:防火墙模块决定是否立即接收请求;若是接收,防火墙模块返回确认消息,进入步骤4 ;反之,防火墙模块将事件挂起,等待处理;
[0017]步骤4:控制器接收到确认消息后,从Openflow交换机中接收数据包再进行拆包检验,并将网络信息和数据包的头部信息提交给防火墙模块;
[0018]步骤5:防护墙模块根据控制器提交的网络信息和数据包的头部信息,分析当前网络安全需求,制定包过滤规则;
[0019]步骤6:防火墙模块下发新包过滤规则至控制器的包过滤模块;
[0020]步骤7:包过滤模块根据防火墙模块决策的规则处理数据包;同时,控制器将包过滤规则转变为Openflow协议支持的流表项规则,下发至Openflow交换机,指明Openflow交换机对于相同数据包的操作动作。
[0021]根据上述的软件定义网络中的防火墙系统的实现方法,其中:步骤3中,所述网络信息包括网络拓扑、网络运行状态。
[0022]根据上述的软件定义网络中的防火墙系统的实现方法,其中:步骤3中,防火墙模块根据安全事件的急缓程度以及自身的工作负荷决定是否立即接收请求。
[0023]如上所述,本发明的软件定义网络中的防火墙系统及其实现方法,具有以下有益效果:
[0024](I)防火墙系统的软件模式可控、可变、可信;
[0025](2)防火墙系统的部署、迁移、配置、升级、修改等只需在控制器上进行统一操作,也无需额外的防火墙设备;
[0026](3)实现了全网分布式防御机制的统一调度、配置和融合,提高了网络安全性能。

【专利附图】

【附图说明】
[0027]图1显示为本发明的软件定义网络中的防火墙系统的实体结构示意图;
[0028]图2显示为本发明的软件定义网络中的防火墙系统的框架结构示意图;
[0029]图3显示为本发明的软件定义网络中的防火墙系统的实现方法的流程图。
[0030]元件标号说明
[0031]I 防火墙模块
[0032]2 控制器
[0033]3 Openflow 交换机

【具体实施方式】
[0034]以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的【具体实施方式】加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。
[0035]需要说明的是,本实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
[0036]参照图1和图2,本发明的软件定义网络中的防火墙系统包括Openflow交换机
3、防火墙模块I和控制器2,其中,Openflow交换机3和防火墙模块I均与控制器2连接,Openflow交换机3再与通信终端相连。
[0037]控制器2包括包过滤模块和REST API服务模块。其中,包过滤模块根据包过滤规则处理数据包。包过滤规则定义了包过滤模块对于数据包的具体操作,即对所接收的每个数据包应做出允许或拒绝的决定。数据包的头部主要由源地址、目标地址、通信协议、协议端口号等参数组成;每条包过滤规则是头部参数的任意组合,用于匹配数据包的头部。具体地,包过滤模块依靠控制器对于数据包的拆包能力和分析能力,通过检查数据包的头部参数是否与包过滤规则相匹配,来决定是否让数据包通过。
[0038]REST API服务模块将控制器的API可编程接口封装成REST API形式向外开放。开发人员和用户就可通过HTTP协议提供的GET、POST等方法来实现对控制器内模块的操作,从而降低了应用编程接口的复杂度。
[0039]防火墙模块I通过API接口与控制器相连。防火墙模块I是利用控制器2的开放接口编写的应用程序,其利用SDN网络中控制器提供的网络拓扑结构、网络状态和网络信息,分析网络的安全需求并制定相应的安全策略,调动相应的模块自组成一个完整的防火墙体系。
[0040]Openflow交换机3包括Openflow流表和转发模块。Openflow流表根据控制器2下发的流表项规则匹配所接收的数据包,若是匹配成功,就将数据包交给转发模块;若是Openflow流表耗尽后仍然无法匹配,则该数据包视为异常数据包,交由控制器2处理。Openflow流表由控制器2通过Openflow协议来部署、修改和管理。转发模块用于将数据包转发至主机、其他交换机或是控制器。
[0041]本发明的软件定义网络中的防火墙系统中,Openflow交换机接收到异常数据包时,将数据包交由控制器处理;控制器再将数据包信息和网络信息返回给防火墙模块,由防火墙模块进行决定具体操作过程。如图3所示,本发明的软件定义网络中的防火墙系统的实现方法包括如下步骤:
[0042]步骤1:0penflow流表匹配Openflow交换机接收到的数据包,若是匹配成功,则将数据包交给转发模块进行转发;若是匹配不成功,则向控制器发送异常消息;
[0043]步骤2:控制器分析接收到的异常消息,向防火墙模块发出处理请求;
[0044]步骤3:防火墙模块根据安全事件的急缓程度以及自身的工作负荷决定是否立即接收请求;若是接收,防火墙模块返回确认消息,启动控制器的包过滤模块,并要求控制器提供网络拓扑、网络运行状态等网络信息以便制定正确的防护策略;反之,防火墙模块将事件挂起,等待处理;
[0045]步骤4:控制器接收到确认消息后,从Openflow交换机接收数据包再进行拆包检验,并将网络信息和数据包的头部信息提交给防火墙模块;
[0046]步骤5:防护墙模块根据控制器提交的网络信息和数据包的头部信息,分析当前网络安全需求,制定包过滤规则;
[0047]步骤6:防火墙模块下发新包过滤规则至控制器的包过滤模块,即对开放的RESTAPI端口来说也就是生成了一条特定的URL请求;控制器通过REST API服务模块处理URL请求,URL请求中的URI指向包过滤模块,包过滤模块根据对应的URL请求生成包过滤规则;
[0048]步骤7:包过滤模块根据防火墙模块制定的包过滤规则处理数据包,如果不允许数据包通过,则直接将数据包丢弃,反之,交给Openflow交换机正常转发;同时,控制器将包过滤规则转变为Openflow协议支持的流表项规则,下发至Openflow交换机,指明Openflow交换机对于相同数据包的操作动作。
[0049]综上所述,本发明的软件定义网络中的防火墙系统将防火墙以模块形式嵌入在整个网络中,利用控制器对于全网的统一管控能力,实现对整个网络中所有数据流的灵活调配和统一管理,突破了防火墙的发展瓶颈;同时,本发明的软件定义网络中的防火墙系统的管控都集中于控制器,整网防护措施的的升级与修改无需对设备逐一操作,缩短了部署的时间。所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。
[0050]上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属【技术领域】中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
【权利要求】
1.一种软件定义网络中的防火墙系统,其特征在于,至少包括:0penflOW交换机、防火墙模块和控制器,其中,所述Openflow交换机和防火墙模块均与控制器连接,所述Openflow交换机再与通信终端相连。
2.根据权利要求1所述的软件定义网络中的防火墙系统,其特征在于:所述控制器包括包过滤模块和REST API服务模块;其中,所述包过滤模块用于根据过包滤规则处理数据包;所述REST API服务模块用于将所述控制器的API可编程接口封装成REST API形式。
3.根据权利要求2所述的软件定义网络中的防火墙系统,其特征在于:所述包过滤规则定义了包过滤模块接收或者拒绝数据包的具体规则;所述数据包的头部包括源地址、目标地址、通信协议、协议端口号相关参数;所述包过滤规则是数据包的头部参数的任意组合,用于匹配数据包的头部。
4.根据权利要求1所述的软件定义网络中的防火墙系统,其特征在于:所述防火墙模块利用软件定义网络中的所述控制器提供的网络拓扑结构、网络状态和网络信息,分析网络的安全需求并制定相应的安全策略,自组成防火墙体系。
5.根据权利要求1所述的软件定义网络中的防火墙系统,其特征在于:所述Openflow交换机包括Openflow流表和转发模块;所述Openflow流表用于根据所述控制器下发的流表项规则匹配所接收的数据包,若是匹配成功,就将数据包交给转发模块;若是流表耗尽后仍然无法匹配,则视为异常数据包交由控制器处理;所述转发模块用于将数据包转发至主机、其他交换机或是控制器。
6.根据权利要求5所述的软件定义网络中的防火墙系统,其特征在于:所述Openflow流表由所述控制器通过Openflow协议来部署、修改和管理。
7.根据权利要求1-6任一所述的软件定义网络中的防火墙系统的实现方法,其特征在于:包括以下步骤: 步骤1:0penflow流表匹配Openflow交换机接收到的数据包,若匹配成功,则将数据包交给转发模块进行转发;若是匹配不成功,则向控制器发送异常消息,进入步骤2 ; 步骤2:控制器分析接收到的异常消息,向防火墙模块发出处理请求; 步骤3:防火墙模块决定是否立即接收请求;若是接收,防火墙模块返回确认消息,进入步骤4 ;反之,防火墙模块将事件挂起,等待处理; 步骤4:控制器接收到确认消息后,从Openflow交换机中接收数据包再进行拆包检验,并将网络信息和数据包的头部信息提交给防火墙模块; 步骤5:防护墙模块根据控制器提交的网络信息和数据包的头部信息,分析当前网络安全需求,制定包过滤规则; 步骤6:防火墙模块下发新包过滤规则至控制器的包过滤模块; 步骤7:包过滤模块根据防火墙模块决策的规则处理数据包;同时,控制器将包过滤规则转变为Openflow协议支持的流表项规则,下发至Openflow交换机,指明Openflow交换机对于相同数据包的操作动作。
8.根据权利要求7所述的软件定义网络中的防火墙系统的实现方法,其特征在于:步骤3中,所述网络信息包括网络拓扑、网络运行状态。
9.根据权利要求7所述的软件定义网络中的防火墙系统的实现方法,其特征在于:步骤3中,防火墙模块根据安全事件的急缓程度以及自身的工作负荷决定是否立即接收请求。
【文档编号】H04L12/741GK104348819SQ201310342568
【公开日】2015年2月11日 申请日期:2013年8月7日 优先权日:2013年8月7日
【发明者】成亚男, 李捷, 褚灵伟, 董晨, 陆肖元 申请人:上海宽带技术及应用工程研究中心
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1