一种基于SDN框架的网关组方法及系统与流程

文档序号:12692421阅读:418来源:国知局
一种基于SDN框架的网关组方法及系统与流程

本发明涉及网关组设计技术领域,特别涉及一种基于SDN框架的网关组方法及系统。



背景技术:

随着计算机技术以及集成电路技术的飞速发展,云计算凭借其在系统利用率高、人力/管理成本低、灵活性/可扩展性强等方面表现出的优势,已经成为目前企业IT建设的新形态;但在网络方面传统的网络不能满足数据中性网络虚拟化的特性与NaaS(Network as a Service)的理念。

SDN(Software Defined Network)作为一种新型网络创新架构,以全新的设计理念解决网络虚拟化问题并得到了良好而迅猛的发展,已经完全具备了可以在产品环境中应用的技术成熟度;而在云计算中,大量的采用和部署虚拟化是一个基本的技术模式。服务器虚拟化技术的广泛部署,极大地增加了数据中心的计算密度;同时,为了实现业务的灵活性,部分虚拟机VM(Virtual Machine)业务需要进行内外网通信。数据中心中东西向流量的处理可以通过分布式路由来进行流量的分布式处理解决流量单点集中的问题,但是目前并没有有效的办法处理南北向流量的单点集中。

因此这就为南北向流量的分布式处理--网关组的设计带来迫切的需求与巨大难题。一方面数量巨大的虚拟机产生的巨量数据为系统处理能力与处理效率提出了新的挑战;另一方面,对于数据中心而言,南北向流量的处理一直是业界处理难题。同时,SDN控制器的出现提供了良好的网络虚拟化和自动配置以适应其扩展性和多租户需求的功能,优化并提升了业务体验,基于SDN架构可以大大降低传统网络难题的解决难度。以上挑战和机遇,为基于SDN框架实现网关组系统及方法的应用提出了迫切的要求。因此如何设计基于SDN框架的网关组方法,是本领域技术人员需要解决的技术问题。



技术实现要素:

本发明的目的是提供一种基于SDN框架的网关组系统及方法,通过网关组提高了报文的处理效率,解决传统单节点网关处理数据中心南北向流量造成的性能下降以及错误冗余低及用户配置复杂的问题。

为解决上述技术问题,本发明提供一种基于SDN框架的网关组系统,包括:控制平面模块,网桥管理模块和流表处理模块;其中,

所述控制平面模块,用于接收输入的网关组配置信息,并将所述网关组配置信息发送到所述网桥管理模块;

所述网桥管理模块,用于根据所述网关组配置信息进行网桥的创建并触发网桥添加事件通知所述流表处理模块;

所述流表处理模块,用于在监听到所述网桥添加事件时,利用SDN框架的标准南向接口推送流表到与之相连接的OpenvSwitch中完成流表的下发,其中,网关节点下发的流表负责南北向流量的转发,计算节点下发的流表包含OpenFlow组流表,负责虚拟机流量从计算节点到网关节点的转发。

可选的,所述控制平面模块,包括:

交互单元,用于接收输入的网关组配置信息;

参数检测单元,用于检测所述网关组配置信息中参数的合法性;

转发单元,用于当所述参数合法时,将所述网关组配置信息发送到所述网桥管理模块。

可选的,所述网桥管理模块具体为根据所述网关组配置信息,将对应的计算节点类型设置为网关节点类型,并在网关节点创建相应的网桥,连接网桥的Patch Port。

可选的,所述流表处理模块包括:

OpenFlow组流表单元,用于利用OpenFlow组流表将虚拟机流量从计算节点到指定网关节点转发,其中,指定网关节点为经过负载均衡计算得到的网关节点。

可选的,本方案还包括:

异常处理模块,用于利用SDN框架的异常事件产生机制,当监听到网桥的异常事件时进行老旧流表的下发。

可选的,本方案还包括:

异常处理模块具体为利用SDN框架提供的标准南向协议-OVSDB检测虚拟机、网桥发生异常时产生的异常事件进行老旧流表的删除。

本发明还提供一种基于SDN框架的网关组方法,包括:

接收输入的网关组配置信息;

根据所述网关组配置信息进行网桥的创建并触发网桥添加事件;

在监听到所述网桥添加事件时,利用SDN框架的标准南向接口推送流表到与之相连接的OpenvSwitch中完成流表的下发,其中,网关节点下发的流表负责南北向流量的转发,计算节点下发的流表包含OpenFlow组流表,负责虚拟机流量从计算节点到网关节点的转发。

可选的,本方案还包括:

检测所述网关组配置信息中参数的合法性;

当所述参数合法时,执行所述根据所述网关组配置信息进行网桥的创建并触发网桥添加事件的步骤。

可选的,利用OpenFlow组流表将虚拟机流量从计算节点到指定网关节点转发,其中,指定网关节点为经过负载均衡计算得到的网关节点。

可选的,本方案还包括:

利用SDN框架的异常事件产生机制,当监听到网桥的异常事件时进行老旧流表的下发。

本发明所提供的一种基于SDN框架的网关组系统,系统包括:控制平面模块,接收网关组配置信息,将网关组配置信息发送到网桥管理模块;网桥管理模块,根据网关组配置信息进行网桥的创建并触发网桥添加事件通知流表处理模块;流表处理模块,在监听到网桥添加事件,利用SDN框架的标准南向接口推送流表到与之相连接的OpenvSwitch中完成流表的下发,网关节点下发的流表负责南北向流量的转发,计算节点下发的流表包含OpenFlow组流表,负责虚拟机流量从计算节点到网关节点的转发;

可见,该系统充分考虑SDN转发与控制分离的特性与虚拟环境下虚拟机大规模部署的特性,采用基于OpenvSwitch流表与SDN框架的方法,实现虚拟环境下基于SDN框架的网关组,控制端接收网关组配置信息将相应节点加入到网关组,根据网关组配置信息,在所有的计算节点更新/下发流表,指导报文从计算节点转发到网关节点,并在网关节点创建网桥负责报文的转发,通过网关组大大提高了报文的处理效率解决了传统单节点网关处理数据中心南北向流量造成的性能下降以及错误冗余低及用户配置复杂的问题,避免了虚拟环境下大规模虚拟机带来的南北向(出/入数据中心的流量)流量过大报文在网关节点处理效率不高所造成的系统整体性能下降、系统不稳定。本发明还提供一种基于SDN框架的网关组方法,具有上述有益效果,在此不再赘述。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本发明实施例所提供的基于SDN框架的网关组系统的结构框图;

图2为本发明实施例所提供的网桥管理模块创建网桥的结构示意图;

图3为本发明实施例所提供的基于SDN框架的网关组方法的流程图。

具体实施方式

本发明的核心是提供一种基于SDN框架的网关组系统及方法,通过网关组提高了报文的处理效率,解决传统单节点网关处理数据中心南北向流量造成的性能下降以及错误冗余低及用户配置复杂的问题。

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本实施例中所说的南北向流量指的是数据中心外部用户和内部服务器之间交互的流量(也即出/入数据中心的流量);东西向流量指的是数据中心内部服务器之间交互的流量,也叫横向流量。本实施例利用主要考虑数据中心大规模部署虚拟机的特点,以及SDN控制器高效可编程扩展性好的特点,采用基于SDN控制器的设计方法,根据用户的网关组配置下发流表到OpenvSwitch交换机指导报文处理流程、基于OpenFlow流表进行报文处理。具体请参考图1,图1为本发明实施例所提供的基于SDN框架的网关组系统的结构框图;该系统可以包括:控制平面模块100,网桥管理模块200和流表处理模块300;其中,

控制平面模块100,用于接收输入的网关组配置信息,并将网关组配置信息发送到网桥管理模块200;

具体的,本实施例中控制平面模块100接收网关组配置信息的方式可以是用户通过交互界面输入,也可以是语音录入等。本实施例对比并不进行限定。即可以理解为控制平面模块100负责与用户交互,将用户的网关组配置信息推送到网桥管理模块200。这里的网关组配置信息即用户对计算节点类型(计算/网关)的配置信息。

控制平面模块100利用SDN控制器控制平面的特性,主要是指在基于SDN控制器实现的网关组架构中的用户界面,用以接收用户侧对服务器资源类型的配置,同时将配置推送到网桥管理模块200。即控制平面为用户提供了良好的操作界面同时屏蔽底层复杂的逻辑与概念。便于用户使用,提高用户体验。

进一步为了保证后续网关工作的可靠性,在控制平面模块100中还可以执行参数的合法性检查工作。在当参数均合法时在进行后续流程。即可选的,控制平面模块可以包括:

交互单元,用于接收输入的网关组配置信息;

参数检测单元,用于检测网关组配置信息中参数的合法性;

转发单元,用于当参数合法时,将网关组配置信息发送到网桥管理模块。

网桥管理模块200,用于根据网关组配置信息进行网桥的创建并触发网桥添加事件通知流表处理模块300;

具体的,网桥管理模块200主要负责根据网关组配置信息进行网桥的创建并触发网桥添加事件通知流表处理模块300。即根据用户配置服务器资源类型在相应的服务器上创建相应的网桥并触发事件通知流表管理模块300。

例如网桥管理模块200可以根据网关组配置信息确定网关类型的节点,在系统内所有的网关类型的节点中创建网桥。即网桥管理模块具体为根据网关组配置信息,将对应的计算节点类型设置为网关节点类型,并在网关节点(即设置后系统的网关类型的节点)创建相应的网桥,连接网桥的Patch Port(OpenvSwitch中连接不同网桥的接口类型,类似于连接两台物理交换机的网线)。

例如通过接收的网关组配置信息,在与SDN控制器相连接的OpenvSwitch上创建不同的网桥,例如在所有计算节点创建br-int网桥,而在所有网关类型的节点创建br-int和br-router网桥,计算节点的br-int网桥负责计算节点虚拟机产生流量的处理,网关节点的br-int网桥处理网关上虚拟机的流量,同时接收计算节点上送的南北向流量并将流量通过Patch Port接口发送到br-router,br-router完成南北向流量的最后转发;具体请参考图2,其中,控制平面模块也可以称之为控制平面。

流表处理模块300,用于在监听到网桥添加事件时,利用SDN框架的标准南向接口推送流表到与之相连接的OpenvSwitch中完成流表的下发,其中,网关节点下发的流表负责南北向流量的转发,计算节点下发的流表包含OpenFlow组流表,负责虚拟机流量从计算节点到网关节点的转发。

具体的,监听网桥管理模块触发的网桥添加事件,触发OpenFlow流表的下发;即接收用户对网关组的配置并检测网桥管理模块网桥的创建情况下发OpenFlow流表到相应的网关类型的节点(网关节点)及计算类型的节点(计算节点)的网桥中。其中,计算类型的节点中下发OpenFlow组流表,指导虚拟机发送的南北向数据包选择网关;网关类型的节点中下发流表,处理计算节点上送的南北向流量。计算节点与网关节点配合完成虚拟机南北向流量的处理与网关组之间的负载均衡。

进一步在选择网管时还可以考虑到网管的负载均衡情况,即可选的,流表处理模块包括:

OpenFlow组流表单元,用于利用OpenFlow组流表将虚拟机流量从计算节点到指定网关节点转发,其中,指定网关节点为经过负载均衡计算得到的网关节点。

具体的,在计算类型的节点下发OpenFlow组流表,将虚拟机产生的南北向流量通过组流表上送到网关组,在选择网关的时候会进行负载均衡的处理,网关节点下发流表处理计算节点上送的南北向流量。

即利用SDN框架监听网桥创建时产生的事件,当监听到事件时进行流表的下发,在计算类型的节点根据用户的网关节点的配置下发OpenFlow组流表,若用户配置10.1.1.1与10.1.1.2为网关,则下发的组流表出口就为10.1.1.或10.1.1.2,通过组流表将需要上送网关的流量送到网关处理。网关节点收到计算节点的流量后进行相应的转发处理。由于计算节点在选择网关时有多个选择,这样就实现了南北向流量的分布式处理与网关的负载均衡及高可用,解决了传统网络中由单点流量集中引起的问题。

基于上述技术方案,本发明实施例提供的基于SDN框架的网关组系统,充分考虑SDN转发与控制分离的特性与虚拟环境下虚拟机大规模部署的特性,采用基于OpenvSwitch流表与SDN框架的方法,实现虚拟环境下基于SDN框架的网关组,控制端接收网关组配置信息将相应节点加入到网关组,根据网关组配置信息,在所有的计算节点更新/下发流表,指导报文从计算节点转发到网关节点,并在网关节点创建网桥负责报文的转发,通过网关组大大提高了报文的处理效率解决了传统单节点网关处理数据中心南北向流量造成的性能下降以及错误冗余低及用户配置复杂的问题,避免了虚拟环境下大规模虚拟机带来的南北向(出/入数据中心的流量)流量过大报文在网关节点处理效率不高所造成的系统整体性能下降、系统不稳定。

基于上述实施例,该系统还可以包括:

异常处理模块,用于利用SDN框架的异常事件产生机制,当监听到网桥的异常事件时进行老旧流表的下发。

具体的,利用SDN框架提供的标准南向协议-OVSDB检测虚拟机、网桥发生异常时产生的异常事件进行老旧流表的删除。即当转发平面的网桥发生异常时SDN框架会产生异常事件,异常处理模块根据接收的异常事件删除原有流表,指导报文从新的路径转发。

异常处理模块利用SDN框架在底层网桥发生异常时产生的异常事件来进行老旧流表的回收及时阻断流量到故障网关的通路。上述各个模块配合工作,实现虚拟环境下网关组的功能。在数据中心虚拟环境下具有很高的技术价值、应用价值,在目前的环境下是数据中心网络的极大创新,解决了数据中心南北向流量处理的难题。

基于上述技术方案,本发明实施例提供的基于SDN框架的网关组系统,其中,控制平面模块是系统与用户的交互平面,接收网关组配置信息,网桥管理模块负责网桥的创建、删除,流表处理模块监听网桥事件进行流表的下发,异常处理模块监听异常事件完成废旧流表的回收。各模块协同工作完成SDN框架下网关组系统的实现,实现了南北向流量的分布式处理,解决了数据中心由于南北向流量单点集中引起的一些列问题。同时实现了NaaS理念的网络按需分配。

下面对本发明实施例提供的基于SDN框架的网关组方法进行介绍,下文描述的基于SDN框架的网关组方法与上文描述的基于SDN框架的网关组系统可相互对应参照。

请参考图3,图3为本发明实施例所提供的基于SDN框架的网关组方法的流程图;该方法还可以包括:

S100、接收输入的网关组配置信息;

S110、根据网关组配置信息进行网桥的创建并触发网桥添加事件;

S120、在监听到网桥添加事件时,利用SDN框架的标准南向接口推送流表到与之相连接的OpenvSwitch中完成流表的下发,其中,网关节点下发的流表负责南北向流量的转发,计算节点下发的流表包含OpenFlow组流表,负责虚拟机流量从计算节点到网关节点的转发。

基于上述实施例,该方法还可以包括:

检测网关组配置信息中参数的合法性;

当参数合法时,执行根据网关组配置信息进行网桥的创建并触发网桥添加事件的步骤。

基于上述实施例,该方法利用OpenFlow组流表将虚拟机流量从计算节点到指定网关节点转发,其中,指定网关节点为经过负载均衡计算得到的网关节点。

基于上述任意实施例,该方法还可以包括:

利用SDN框架的异常事件产生机制,当监听到网桥的异常事件时进行老旧流表的下发。

说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。

以上对本发明所提供的基于SDN框架的网关组方法及系统进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1