一种OpenFlow控制方法及相应插件、平台和网络的制作方法

文档序号:7798538阅读:103来源:国知局
一种OpenFlow控制方法及相应插件、平台和网络的制作方法
【专利摘要】一种OpenFlow控制方法及相应插件、平台和网络,方法包括:OpenStack网络节点创建用户网络时,根据创建网络的需求建立和保存用户网络与虚拟局域网、交换机端口的映射关系,映射关系中,一个用户网络对应一个或多个虚拟局域网,一个虚拟局域网对应多个交换机端口;OpenStack计算节点将OpenStack网络节点中保存的映射关系实时同步到OpenFlow控制器;OpenFlow控制器保存OpenStack计算节点同步的映射关系,生成流表并下发至OpenFlow交换机,映射关系中的每一虚拟局域网关联到流表中的一个流表项。本发明还提供了OpenFlow控制器插件、OpenStack云管理平台和软件定义网络,通过将虚拟局域网与流表项绑定,极大减少流表项的数量,有利于系统扩展。
【专利说明】—种OpenFlow控制方法及相应插件、平台和网络
【技术领域】
[0001]本发明涉及网络技术,更具体地,涉及一种OpenFlow控制方法及相应的OpenFlow控制器插件、OpenStack云管理平台和基于OpenStack云管理平台的软件定义网络。
【背景技术】
[0002]OpenStack是于2010年由美国国家航空航天局和Rackspace共同发起的一个云平台管理项目,同时也是一个旨在为公共云及私有云的建设与管理提供软件的开源项目。目
前最新的版本是第7个发行版-Grizzly0 OpenStack项目的首要任务是简化云的部署
过程并为其带来良好的可扩展性,从而打造易于部署、功能丰富且易于扩展的云计算平台。OpenStack和OpenFlow目前无通用的中文译文。
[0003]OpenStack由多个相对独立的服务组件构成,如包括:
[0004]Compute (Nova):虚拟机管理组件,用于虚拟机计算或使用群组启动虚拟机实例。Compute是OpenStack计算节点,也称为Nova。
[0005]Networking (Neutron):网络管理组件,在接口设备间提供网络即服务,这些接口设备通过OpenStack其它相关服务组件来管理(比如Nova)。在引入Neutron组件之前的OpenStack版本中,网络相关功能是由Nova提供的。Networking是OpenStack网络节点,也称为Neutron。
[0006]作为OpenStack的网络管理组件,Neutron允许用户创建自己的网络并与服务器接口相关联,支持插件架构,允许用户充分利用商业或开源的网络设备和软件,从而实现架构和部署的动态变化。从图1可以看出,用户可以与OpenStack云管理平台交换,借助OpenStack云管理平台中Neutron与Nova的协作及插件,实现创建用户网络、仓Il建交换机端口(即图中交换网络侧示出的端口)、将交换机端口与虚拟机接口关联起来等网络操作,从而实现在物理网络上构建虚拟网络,还可以实现修改、删除虚拟网络的功能。
[0007]随着不同插件的引入,OpenStack架构开始能够实现更多包括软件定义网络(SDN:Software Defined Network)在内的高级网络功能。基于OpenFlow实现的SDN中,OpenFlow交换机将原来完全由交换机/路由器控制的报文转发过程转化为由OpenFlow交换机(OpenFlow Switch)和OpenFlow控制器(Controller)来共同完成,从而实现了数据转发和路由控制的分离。OpenFlow控制器可以通过事先规定好的接口操作来控制OpenFlow交换机中的流表,从而达到控制数据转发的目的。流表由很多个流表项组成,每个流表项就是一个转发规则。进入交换机的数据包通过查询流表来获得转发的目的端口。
[0008]当前,业界存在着开源的基于OpenStack Neutron的Openflow控制器插件,包括商业和开源解决方案。其中,开源方案以Floodlight和Ryu为代表。目前大多数插件功能尚未完善,尤其是未充分考虑扩展性问题。以Ryu插件的实现为例,需要产生虚拟机(VM:virtual machine)之间直接通信的流量,每对VM间的流,对应一个流表项。对于大型数据中心,这样的流量模型不适合扩展,因为随着不同VM间流量的增加,流表项的数量也会随之增加,从而超出OpenFlow交换机中三态内容寻址存储器(TCAM:Ternary ContentAddressable Memory)的处理能力。

【发明内容】

[0009]本发明要解决的技术问题是提供一种可以减少流表项数量的OpenFlow控制方法及相应的插件、平台和网络。
[0010]为了解决上述问题,本发明提供了一种OpenFlow控制方法,应用于包括OpenStack云管理平台、OpenFlow控制器和OpenFlow交换机的网络,所述方法包括:
[0011]所述OpenStack网络节点创建用户网络时,根据创建网络的需求建立和保存所述用户网络与虚拟局域网、交换机端口的映射关系,所述映射关系中,一个用户网络对应一个或多个虚拟局域网,一个虚拟局域网对应多个交换机端口 ;
[0012]所述OpenStack计算节点将所述OpenStack网络节点中保存的所述映射关系实时同步到OpenFlow控制器;
[0013]所述OpenFlow控制器用于保存所述OpenStack计算节点同步的所述映射关系,生成流表并下发至OpenFlow交换机,所述映射关系中的每一虚拟局域网关联到所述流表中的一个流表项。
[0014]较佳地,
[0015]所述OpenStack网络节点修改所述用户网络时,判断当前保存的所述用户网络与虚拟局域网、交换机端口的映射关系是否符合修改网络的需求,如不符合,根据修改网络的需求重新建立所述用户网络与虚拟局域网、交换机端口的映射关系并更新当前保存的所述映射关系;
[0016]所述OpenStack网络节点删除所述用户网络时,将当前保存的所述用户网络与虚拟局域网、交换机端口的映射关系删除。
[0017]较佳地,
[0018]所述OpenStack网络节点建立或重新建立所述用户网络与虚拟局域网、交换机端口的映射关系,包括:
[0019]所述OpenStack网络节点根据创建网络或修改网络的需求,确定需要在所述用户网络内使用的一种或多种转发规则;
[0020]所述OpenStack网络节点建立或重新建立所述映射关系时,所述用户网络对应的虚拟局域网至少满足:同一虚拟局域网使用同一转发规则,且该转发规则为该虚拟局域网关联的一个流表项中定义的转发规则。
[0021]较佳地,
[0022]所述OpenStack计算节点将所述OpenStack网络节点中保存的所述映射关系实时同步到OpenFlow控制器,包括:
[0023]所述OpenStack计算节点轮询所述OpenStack网络节点保存的所述映射关系,或者在收到创建、修改和删除用户网络的指令时,获取所述OpenStack网络节点保存的所述映射关系;
[0024]所述OpenStack计算节点将当前获取的所述映射关系与之前获取的所述映射关系比对,如所述映射关系发生变化时,将新的映射关系通知所述OpenFlow控制器。
[0025]相应地,本发明还提供了一种OpenFlow控制器插件,应用于包括Neutron服务器和Neutron数据库的OpenStack网络节点,包括:
[0026]接收单元,用于接收来自Neutron服务器的创建租户网络的第一指令;
[0027]映射单元,用于根据所述第一指令携带的创建网络的需求,生成所述租户网络与虚拟局域网、交换机端口的映射关系并保存到Neutron数据库,所述映射关系中,一个租户网络对应一个或多个虚拟局域网,一个虚拟局域网对应多个交换机端口。
[0028]较佳地,
[0029]所述接收单元还用于接收来自Neutron服务器的修改租户网络的第二指令和删除租户网络的第三指令;
[0030]所述映射单元还用于在所述接收单元接收所述第二指令后,判断当前保存的所述租户网络与虚拟局域网、交换机端口的映射关系是否符合所述第二指令携带的修改网络的需求,如不符合,根据所述修改网络的需求重新建立所述映射关系并更新到Neutron数据库中;及,用于根据所述第三指令,删除Neutron数据库中保存的所述租户网络与虚拟局域网、交换机端口的映射关系。
[0031]较佳地,
[0032]所述映射单元根据建立或重新建立所述用户网络与虚拟局域网、交换机端口的映射关系,包括:
[0033]所述映射单元根据创建网络或修改网络的需求确定需要在所述用户网络内使用的一种或多种转发规则,建立或重新建立所述映射关系时,所述用户网络对应的虚拟局域网至少满足:同一虚拟局域网使用同一转发规则,且该转发规则为该虚拟局域网关联的一个流表项中定义的转发规则。
[0034]相应地,本发明还提供了一种OpenStack云管理平台,包括OpenStack网络节点和OpenStack计算节点,其中:
[0035]所述OpenStack网络节点,用于在创建用户网络时,根据创建网络的需求建立和保存所述用户网络与虚拟局域网、交换机端口的映射关系,所述映射关系中,一个用户网络对应一个或多个虚拟局域网,一个虚拟局域网对应多个交换机端口 ;
[0036]所述OpenStack计算节点,用于将所述OpenStack网络节点中保存的所述映射关系实时同步到OpenFlow控制器。
[0037]较佳地,
[0038]所述OpenStack网络节点包括:
[0039]Neutron服务器,用于接收用户创建、修改和删除用户网络的指令,将所述指令转发给OpenFlow控制器插件;
[0040]OpenFlow控制器插件,采用如上所述的OpenFlow控制器插件;
[0041]Neutron数据库,用于保存用户网络与虚拟局域网、交换机端口的映射关系。
[0042]较佳地,
[0043]所述OpenStack计算节点包括:
[0044]Nova客户端,用于接受用户网络的相关指令并分别传递给OpenStack网络节点上的Neutron服务器和本节点上的Neutron代理;
[0045]Neutron代理,用于轮询所述OpenStack网络节点保存的所述映射关系,或者在收到创建、修改和删除用户网络的指令时获取所述OpenStack网络节点保存的所述映射关系,如当前获取的所述映射关系相对于之前获取的所述映射关系发生变化,通过OpenFlow控制器客户端将新的映射关系通知所述OpenFlow控制器;
[0046]OpenFlow控制器客户端,用于将新的映射关系通知OpenFlow控制器。
[0047]相应地,本发明还提供了一种基于OpenStack云管理平台的软件定义网络,包括OpenStack云管理平台、OpenFlow控制器和OpenFlow交换机,其中:
[0048]所述OpenStack云管理平台,采用如上所述的OpenStack云管理平台;
[0049]所述OpenFlow控制器,用于保存来自所述OpenStack计算节点的所述映射关系,生成流表并下发至OpenFlow交换机,所述映射关系中的每一虚拟局域网关联到所述流表中的一个流表项。
[0050]上述方案通过将虚拟局域网与流表项绑定,极大减少流表项的数量,有利于系统扩展。
【专利附图】

【附图说明】
[0051]图1是基于OpenStack云管理平台构建用户网络的示意图;
[0052]图2是本发明实施例软件定义网络中相关节点的示意图;
[0053]图3是本发明实施例OpenFlow控制方法的流程图;
[0054]图4是图2中OpenStack网络节点和OpenStack计算节点的模块图;
[0055]图5是图4中OpenFlow控制器插件的模块图。
【具体实施方式】
[0056]为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
[0057]如图2所示,本实施例软件定义网络包括OpenStack云管理平台中的OpenStack网络节点I和OpenStack计算节点2,及OpenFlow控制器3和OpenFlow交换机4等。各节点之间可以相互通信。
[0058]本实施例应用于上述网络的OpenFlow控制方法如图3所示,包括:
[0059]步骤110,OpenStack网络节点创建用户网络时,根据创建网络的需求建立和保存所述用户网络与虚拟局域网、交换机端口的映射关系,所述映射关系中,一个用户网络对应一个或多个虚拟局域网,一个虚拟局域网对应多个交换机端口 ;
[0060]本步骤中,OpenStack网络节点建立所述用户网络与虚拟局域网、交换机端口的映射关系,包括:
[0061]所述OpenStack网络节点根据创建网络或修改网络的需求,确定需要在所述用户网络内使用的一种或多种转发规则;
[0062]所述OpenStack网络节点建立或重新建立所述映射关系时,所述用户网络对应的虚拟局域网至少满足:同一虚拟局域网使用同一转发规则,且该转发规则为该虚拟局域网关联的一个流表项中定义的转发规则。
[0063]上述映射关系可以用用户网络标识与虚拟局域网标识、交换机端口标识的对应关系来表示,每个交换机端口 ID对应一个虚拟机。文中映射关系的建立、更新和传递即指表示映射关系的数据的建立、更新和传递。
[0064]本实施例建立上述映射关系时,可以同时满足其他条件如现有技术中的一些条件,不同的虚拟局域网可以使用相同的转发规则,但同一虚拟局域网须使用同一转发规则,如果不满足,应该增加虚拟局域网来满足这一条件。
[0065]步骤120, OpenStack计算节点将所述OpenStack网络节点中保存的所述映射关系实时同步到OpenFlow控制器;
[0066]本实施例中,上述同步可以采用以下方式:
[0067]所述OpenStack计算节点轮询所述OpenStack网络节点保存的所述映射关系并与之前获取的所述映射关系比对,如所述映射关系发生变化,则将新的映射关系通知所述OpenFlow控制器。
[0068]除了上述方式外,还可以是=OpenStack计算节点在收到创建、修改和删除用户网络的指令时,获取所述OpenStack网络节点保存的所述映射关系并与之前获取的所述映射关系比对,如所述映射关系发生变化,则将新的映射关系通知所述OpenFlow控制器。此夕卜,也可以由OpenStack网络节点在建立和更新所述映射关系时,将新的映射关系发送给OpenStack计算节点或者通知OpenStack计算节点读取新的映射关系,通过OpenStack计算节点来完成上述同步。对此本发明不做任何局限。
[0069]步骤130, OpenFlow控制器保存所述OpenStack计算节点同步的所述映射关系,生成流表并下发至OpenFlow交换机,所述映射关系中的每一虚拟局域网关联到所述流表中的一个流表项。
[0070]上述虚拟局域网和流表项的关联关系(如对应表,公式等)可以同时静态配置在OpenStack网络节点和OpenFlow控制器中,或者在其中一个节点中静态配置,另一节点从该节点获取,或者,也可以由OpenStack网络节点在步骤110动态建立所述关联关系并通知OpenFlow控制器如将虚拟局域网标识和流表项标识一起发送给OpenFlow控制器,本发明对此不做局限。
[0071]控制器通过流表将相应规则下发至OpenFlow交换机后,当有新数据包到达OpenFlow交换机,OpenFlow交换机将按照匹配到的流表项的转发规则进行转发。
[0072]本实施例方法还可以包括修改、删除用户网络时的处理。
[0073]OpenStack网络节点修改所述用户网络时,判断当前保存的所述用户网络与虚拟局域网、交换机端口的映射关系是否符合修改网络的需求,如不符合,根据修改网络的需求重新建立所述用户网络与虚拟局域网、交换机端口的映射关系并更新当前保存的所述映射关系。上述不符合修改网络的需求,包括用户网络标识变化等情况。其中,OpenStack网络节点重新建立所述用户网络与虚拟局域网、交换机端口的映射关系,包括=OpenStack网络节点根据修改网络的需求,确定需要在所述用户网络内使用的一种或多种转发规则;所述OpenStack网络节点重新建立所述映射关系时,所述用户网络对应的虚拟局域网至少满足:同一虚拟局域网使用同一转发规则,且该转发规则为该虚拟局域网关联的一个流表项中定义的转发规则。
[0074]OpenStack网络节点删除所述用户网络时,将当前保存的所述用户网络与虚拟局域网、交换机端口的映射关系删除。
[0075]通过上述方法,OpenStack网络节点可以及时更新用户网络与虚拟局域网、交换机端口的映射关系并通过OpenStack计算节点实时同步到OpenFlow控制器,OpenFlow控制器可以根据最新的映射关系生成流表(包括创建、更新等),使得映射关系中的每一虚拟局域网均可以关联到流表中的一个流表项,从而满足OpenFlow交换机转发的需要。
[0076]依照上述方法,每个OpenFlow物理交换机的TCAM中流表项的数量将与通过此交换机的虚拟局域网而不是虚拟机对的数量成正比,从而极大改善现有技术中遇到的流表项激增的问题。
[0077]相应地,本实施例的相关节点中:
[0078]OpenStack网络节点I,用于在创建用户网络时,根据创建网络的需求建立和保存所述用户网络与虚拟局域网、交换机端口的映射关系,所述映射关系中,一个用户网络对应一个或多个虚拟局域网,一个虚拟局域网对应多个交换机端口 ;
[0079]OpenStack计算节点2,用于将所述OpenStack网络节点中保存的所述映射关系实时同步到OpenFlow控制器。
[0080]OpenFlow控制器3,用于保存来自所述OpenStack计算节点的所述映射关系,生成流表并下发至OpenFlow交换机,所述映射关系中的每一虚拟局域网关联到所述流表中的一个流表项。
[0081]OpenFlow交换机4,可以是OpenFlow物理交换机,也可以是OpenFlow虚拟交换机,用于根据所述流表转发数据包,可以采用现有的OpenFlow交换机。
[0082]图4示出了 OpenStack网络节点I和OpenStack计算节点2中的模块,其中:
[0083]OpenStack网络节点I包括Neutron服务器11、OpenFlow控制器插件12和Neutron数据库13,其中:
[0084]Neutron服务器11,用于接收用户网络的相关指令(如创建、修改和删除用户网络的指令)并转发给OpenFlow控制器插件。Neutron服务器11还可用于生成用户网络标识。
[0085]OpenFlow控制器插件12,用于根据创建租户网络的指令中携带的创建网络的需求,生成所述租户网络与虚拟局域网、交换机端口的映射关系并保存到Neutron数据库,所述映射关系中,一个租户网络对应一个或多个虚拟局域网,一个虚拟局域网对应多个交换机端口。较佳地,所述映射关系可以用用户网络标识与虚拟局域网标识、交换机端口标识的对应关系来表示,其中的虚拟局域网标识和交换机端口标识可以从OpenFlow交换机获取的虚拟局域网和交换机端口列表中得到。
[0086]OpenFlow控制器插件12还可用于根据修改租户网络的指令,判断当前保存的所述租户网络与虚拟局域网、交换机端口的映射关系是否符合所述第二指令携带的修改网络的需求,如不符合,根据所述修改网络的需求重新建立所述映射关系并更新到Neutron数据库中;及用于根据删除租户网络的第三指令,删除Neutron数据库中保存的所述租户网络与虚拟局域网、交换机端口的映射关系。
[0087]Neutron数据库13,用于保存用户网络与虚拟局域网、交换机端口的映射关系。
[0088]OpenStack计算节点2包括Nova客户端21、Neutron代理22和OpenFlow控制器客户端23,其中:
[0089]Nova客户端21,用于接受用户网络的相关指令并分别传递给OpenStack网络节点上的Neutron服务器和本节点上的Neutron代理。
[0090]Neutron代理22,用于轮询所述OpenStack网络节点保存的所述映射关系,或者在收到创建、修改和删除用户网络的指令时获取所述OpenStack网络节点保存的所述映射关系,如当前获取的所述映射关系相对于之前获取的所述映射关系发生变化,通过OpenFlow控制器客户端将新的映射关系通知所述OpenFlow控制器。Neutron代理还可以用于为所述用户的虚拟机创建虚拟机接口并绑定在所述用户网络上。
[0091]OpenFlow控制器客户端23,用于将新的映射关系通知OpenFlow控制器。
[0092]与现有网络相比,上述OpenFlow控制器插件、Neutron代理和OpenFlow控制器客户端是新增模块。
[0093]如图5所示,本实施例的OpenFlow控制器插件12又包括:
[0094]接收单元121,用于接收来自Neutron服务器的创建租户网络的第一指令;
[0095]映射单元122,用于根据所述第一指令携带的创建网络的需求,生成所述租户网络与虚拟局域网、交换机端口的映射关系并保存到Neutron数据库,所述映射关系中,一个租户网络对应一个或多个虚拟局域网,一个虚拟局域网对应多个交换机端口。
[0096]进一步,
[0097]所述接收单元121还可用于接收来自Neutron服务器的修改租户网络的第二指令和删除租户网络的第三指令;
[0098]所述映射单元122还可用于在所述接收单元接收所述第二指令后,判断当前保存的所述租户网络与虚拟局域网、交换机端口的映射关系是否符合所述第二指令携带的修改网络的需求,如不符合,根据所述修改网络的需求重新建立所述映射关系并更新到Neutixm数据库中;及用于根据所述第三指令,删除Neutron数据库中保存的所述映射关系。
[0099]上述映射单元122根据建立或重新建立所述用户网络与虚拟局域网、交换机端口的映射关系,包括:
[0100]所述映射单元根据创建网络或修改网络的需求确定需要在所述用户网络内使用的一种或多种转发规则,建立或重新建立所述映射关系时,所述用户网络对应的虚拟局域网至少满足:同一虚拟局域网使用同一转发规则,且该转发规则为该虚拟局域网关联的一个流表项中定义的转发规则。
[0101]本实施例可应用于目前开源和商业的基于OpenFlow的控制器,从而实现OpenStack与OpenFlow控制器、OpenFlow交换机组成的SDN集成环境。解决了目前开源和商业产品中未充分考虑的扩展性问题。
[0102]本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现,相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本发明不限制于任何特定形式的硬件和软件的结合。
[0103]以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种OpenFlow控制方法,应用于包括OpenStack云管理平台、OpenFlow控制器和OpenFlow交换机的网络,所述方法包括: 所述OpenStack网络节点创建用户网络时,根据创建网络的需求建立和保存所述用户网络与虚拟局域网、交换机端口的映射关系,所述映射关系中,一个用户网络对应一个或多个虚拟局域网,一个虚拟局域网对应多个交换机端口 ; 所述OpenStack计算节点将所述OpenStack网络节点中保存的所述映射关系实时同步到OpenFlow控制器; 所述OpenFlow控制器用于保存所述OpenStack计算节点同步的所述映射关系,生成流表并下发至OpenFlow交换机,所述映射关系中的每一虚拟局域网关联到所述流表中的一个流表项。
2.如权利要求1所述的方法,其特征在于,还包括: 所述OpenStack网络节点修改所述用户网络时,判断当前保存的所述用户网络与虚拟局域网、交换机端口的映射关系是否符合修改网络的需求,如不符合,根据修改网络的需求重新建立所述用户网络与虚拟局域网、交换机端口的映射关系并更新当前保存的所述映射关系; 所述OpenStack网络节点删除所述用户网络时,将当前保存的所述用户网络与虚拟局域网、交换机端口的映射关系删除。
3.如权利要求1或2所述的方法,其特征在于: 所述OpenStack网络节`点建立或重新建立所述用户网络与虚拟局域网、交换机端口的映射关系,包括: 所述OpenStack网络节点根据创建网络或修改网络的需求,确定需要在所述用户网络内使用的一种或多种转发规则; 所述OpenStack网络节点建立或重新建立所述映射关系时,所述用户网络对应的虚拟局域网至少满足:同一虚拟局域网使用同一转发规则,且该转发规则为该虚拟局域网关联的一个流表项中定义的转发规则。
4.如权利要求1或2所述的方法,其特征在于: 所述OpenStack计算节点将所述OpenStack网络节点中保存的所述映射关系实时同步到OpenFlow控制器,包括: 所述OpenStack计算节点轮询所述OpenStack网络节点保存的所述映射关系,或者在收到创建、修改和删除用户网络的指令时,获取所述OpenStack网络节点保存的所述映射关系; 所述OpenStack计算节点将当前获取的所述映射关系与之前获取的所述映射关系比对,如所述映射关系发生变化时,将新的映射关系通知所述OpenFlow控制器。
5.一种OpenFlow控制器插件,应用于包括Neutron服务器和Neutron数据库的OpenStack网络节点,其特征在于,所述OpenFlow控制器插件包括: 接收单元,用于接收来自Neutron服务器的创建租户网络的第一指令; 映射单元,用于根据所述第一指令携带的创建网络的需求,生成所述租户网络与虚拟局域网、交换机端口的映射关系并保存到Neutron数据库,所述映射关系中,一个租户网络对应一个或多个虚拟局域网,一个虚拟局域网对应多个交换机端口。
6.如权利要求5所述的OpenFlow控制器插件,其特征在于: 所述接收单元还用于接收来自Neutron服务器的修改租户网络的第二指令和删除租户网络的第三指令; 所述映射单元还用于在所述接收单元接收所述第二指令后,判断当前保存的所述租户网络与虚拟局域网、交换机端口的映射关系是否符合所述第二指令携带的修改网络的需求,如不符合,根据所述修改网络的需求重新建立所述映射关系并更新到Neutron数据库中;及,用于根据所述第三指令,删除Neutron数据库中保存的所述租户网络与虚拟局域网、交换机端口的映射关系。
7.如权利要求6所述的OpenFlow控制器插件,其特征在于: 所述映射单元根据建立或重新建立所述用户网络与虚拟局域网、交换机端口的映射关系,包括: 所述映射单元根据创建网络或修改网络的需求确定需要在所述用户网络内使用的一种或多种转发规则,建立或重新建立所述映射关系时,所述用户网络对应的虚拟局域网至少满足:同一虚拟局域网使用同一转发规则,且该转发规则为该虚拟局域网关联的一个流表项中定义的转发规则。
8.一种OpenStack云管理平台,包括OpenStack网络节点和OpenStack计算节点,其特征在于: 所述OpenStack网络节点,用于在创建用户网络时,根据创建网络的需求建立和保存所述用户网络与虚拟局域网、交换机端口的映射关系,所述映射关系中,一个用户网络对应一个或多个虚拟局域网,`一个虚拟局域网对应多个交换机端口 ; 所述OpenStack计算节点,用于将所述OpenStack网络节点中保存的所述映射关系实时同步到OpenFlow控制器。
9.如权利要求8所述的OpenStack云管理平台,其特征在于: 所述OpenStack网络节点包括: Neutron服务器,用于接收用户创建、修改和删除用户网络的指令,将所述指令转发给OpenFlow控制器插件; OpenFlow控制器插件,采用如权利要求5或6或7所述的OpenFlow控制器插件; Neutron数据库,用于保存用户网络与虚拟局域网、交换机端口的映射关系。
10.如权利要求8或9所述的OpenStack云管理平台,其特征在于: 所述OpenStack计算节点包括: Nova客户端,用于接受用户网络的相关指令并分别传递给OpenStack网络节点上的Neutron服务器和本节点上的Neutron代理; Neutron代理,用于轮询所述OpenStack网络节点保存的所述映射关系,或者在收到创建、修改和删除用户网络的指令时获取所述OpenStack网络节点保存的所述映射关系,如当前获取的所述映射关系相对于之前获取的所述映射关系发生变化,通过OpenFlow控制器客户端将新的映射关系通知所述OpenFlow控制器; OpenFlow控制器客户端,用于将新的映射关系通知OpenFlow控制器。
11.一种基于OpenStack云管理平台的软件定义网络,包括OpenStack云管理平台、OpenFlow控制器和OpenFlow交换机,其特征在于:所述OpenStack云管理平台,采用如权利要求8或9或10所述的OpenStack云管理平台; 所述OpenFlow控制器,用于保存来自所述OpenStack计算节点的所述映射关系,生成流表并下发至OpenFlow交换机,所述映射关系中的每一虚拟局域网关联到所述流表中的一个流表项 。
【文档编号】H04L29/08GK103825954SQ201410086433
【公开日】2014年5月28日 申请日期:2014年3月10日 优先权日:2014年3月10日
【发明者】程莹, 张云勇, 黄文利 申请人:中国联合网络通信集团有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1