包括逻辑交换机的网络交换机系统的制作方法

文档序号:15743768发布日期:2018-10-23 22:43阅读:169来源:国知局

不同类型网络装置可以用于不同的应用。例如,在数据中心中可以大量使用特定网络装置,例如交换机。取决于网络环境,不同的交换机可以有助于提供不同性能和/或瞄准数据中心网络的不同特征方面,诸如边缘连接性、聚集、核心等等。在一些环境中方案可以包括许多不同类型交换机,其涉及用于配置和设置的时间和努力。

附图说明

图1是包括控制器的示例性网络交换机系统的方框图。

图2是包括控制器的示例性网络交换机系统的方框图。

图3是包括多个容器的示例性网络交换机系统的方框图。

图4是基于例示逻辑交换机的示例性流程图。

图5是基于设置容器的示例性流程图。

具体实施方式

可以基于网络操作系统(NOS)而操作交换机,并且交换机硬件平台可以包括能够服务数据中心中的大量配置的控制平面控制器(例如微处理器)。NOS可以使得网络交换机系统用作具有公共命名空间的交换机资源的独立模块化系统,用以管理交换机硬件资源。当NOS例如通过在制造时闪存NOS固件镜像而安装在交换机上时,可以定义这种交换机的操作、限制和功能。

网络交换机硬件平台可以经由NOS编程以使用多个备选软件架构(或功能集合)的一个而操作。这些软件架构经由数个不同软件镜像的对应一个而加载在硬件平台上。因此,在作为数个不同产品类型之一而送交至用户之前将单个软件镜像类型编程至交换机上。因为预制并向用户送交了交换机配置(类型),交换机承载了单个个性(personality)诸如机架顶类型交换机(TOR)、虚拟连接互联模块、OpenSwitch、具有OpenFlow的软件定义网络(SDN)实现的交换机、等等。

交换机软件架构也可以支持共用的引导加载器用于在已经将平台交付用户之后加载数个不同类型软件镜像的一个。然而,预制单个交换机配置和/或支持共用引导加载器加载单个配置无法允许同时在交换机硬件平台上操作多个交换机软件堆栈或镜像并且可能具有受限的功能。这种方案无法同时在网络交换机系统上(例如在交换机硬件平台上)创建多个逻辑交换机。对于数据中心的连续变化的需求,预制交换机装置(具有相关联的单个个性)无法满足其中成本敏感性和其他这种因素扮演角色的动态环境的需求。在一些情形中,对于不同使用模型和/或工作负荷重新设计网络交换机可以是有用处的。

本文所述的示例性实施方式可以改进交换机满足动态服务需求的能力。在一些示例中,特征为每个动态加载的网络服务提供了资源的隔离并且将合适量的资源限制分配至给定的服务。

在示例性实施方式中,网络交换机系统可以使用基于容器的方案而按照要求提供可组合的交换机。这允许针对交换机的按要求配置。可以以最优方式利用交换机硬件,例如通过配置给定类型或不同类型的多个虚拟交换机,甚至是基于“如所需”。可以由利用将交换机硬件分区成多个逻辑交换机、对于给定基础设施实现真实的多租户方案的示例性网络交换机系统而服务大规模数据中心。示例性的交换机硬件平台可以实现与由服务器、存储装置等类似的性能,在给定硬件平台上实现了动态供应的软件性能而无需多个分立、特殊的硬件解决方案。与使用管理程序或虚拟化相比,示例性的实施方式可以以更轻量的方式满足对于交换机硬件资源的专用需求,并且可以动态地同时地实例化多个不相关网络服务,在给定网络交换机系统上的服务之间具有适当的隔离。

图1是根据示例的包括控制器110的网络交换机系统100的方框图。如本文所使用,控制器可以涉及与网络交换机系统内一个或多个其他部件接口和/或管理其操作或连接的网络交换机系统的部件。

控制器110动态地实例化至少一个逻辑交换机120,例如作为容器化的交换机堆栈,以满足动态服务需求。本文的示例中,逻辑交换机涉及在具有独特身份以覆盖2层(L2)网络的分布式交换机上的端口集合。给定逻辑交换机120包括与网络交换机系统100的其他逻辑交换机隔离的控制面130,用于在应用层级逻辑地隔离并分区给定逻辑交换机120。给定逻辑交换机120也包括至少一个协议的协议堆栈140,独立于网络交换机系统100的其他逻辑交换机并与其隔离。

网络交换机系统100可以包括三个面的组合:控制面板、数据面和管理面。当工作在已分区环境中时可以寻址三个面的每一个中的行为。在示例性的实施方式中,可以分区控制面服务,并且可以以隔离的方式处理数据流量。此外,示例性的网络交换机系统可以支持与它们所管理的但是并不相互干扰的容器化服务交互的多个外部管理面实体。因此,给定逻辑交换机120的控制面资源和数据面资源与其他逻辑交换机隔离,并且管理面资源可以支持与至少一个外部管理面实体的交互。

在一些示例中,网络交换机系统100可以包括多个逻辑交换机120。因此,网络交换机系统100不限于用于逻辑交换机的控制结构必须维持在其内的单个控制面操作系统和/或软件堆栈。相反,网络交换机系统100的每个逻辑交换机120可以包含其自己的控制面130和协议堆栈140,独立于其他逻辑交换机120。通过实例化已隔离的逻辑交换机120,网络交换机系统100的示例性实施方式可以例如最小化一个协议中致命缺陷的风险,这可以影响整个控制面和/或多个逻辑交换机120。

可以使用各种技术实现在逻辑交换机120之间的隔离和分离。在示例性的实施方式中,使用容器化以容器化在Linux操作系统顶层上的逻辑交换机120。该实施方式可以提供更健壮的可靠性,因为可以隔离给定虚拟交换机中致命缺陷并防止影响网络交换机系统100的其他逻辑交换机120。因此,示例性的实施方式可以实现真实的控制面隔离。

网络交换机系统100可以包括操作系统,其包括逻辑交换机管理器以管理将要在网络交换机系统100上运行的任意数目的逻辑交换机控制面应用集合。例如,网络交换机系统100可以使用引导加载机制以允许在网络交换机系统100上加载多个不同操作环境,操作环境的一个是具有容器支持的Linux操作系统以允许各种交换机控制面软件(逻辑交换机120)加载至环境中并同时地运行。因此,网络交换机系统100的示例性实施方式可以基于指引控制器110以操作作为逻辑交换机管理器的操作系统,用于管理将要运行在网络交换机系统100上的任意数目的逻辑交换机120控制面应用集合的容器寿命周期。

额外地,示例性实施方式提供了关于管理选项的提升灵活性。例如,单个物理网络交换机系统100可以包括用于实施不同交换机协议堆栈140的不同管理模块而不必使用多个不同物理交换机。在示例性的实施方式中,单个物理网络交换机系统100可以提供逻辑交换机120(例如容器化的交换机堆栈)的一个以用作以太网交换机,而在该相同的网络交换机系统100上,也可以提供可编程的偏差运算(dev-op)软件定义的堆栈,由此实现在相同物理交换机系统硬件上(也即单交换机基础设施)多个不同的编程和/或管理模型。

通过提供可组合的基础设施,网络交换机系统100的示例性实施方式实现由在可以具有给定所需网络“风味”的物理装置中的交换机构成。示例性的网络交换机系统包含了所需软件/服务可以包含在其中的框架。随着时间变化,可以将不同网络“个性”添加至网络交换机系统100,允许动态地构成交换机的个性。在示例性的实施方式中,NOS镜像可以安装至网络交换机系统100的裸金属硬件上,并且随后岁时间变化如所需的可以经由容器而在网络交换机系统100上配置工作流。示例性的实施方式可以是基于开放式计算项目(OCP)OpenSwitch架构,例如使用开放式网络初始化环境(ONIE)作为共用引导/固件加载器以加载基础Linux OS支持容器化,通过允许每个容器的上层部件(例如逻辑交换机120)独立地动态加载而扩展。

可以杠杆调节不同的容器配置模型以加载独立的容器/逻辑交换机。因此,示例性的实施方式不限于一次加载在物理交换机上的单个单块镜像。相反,示例性的实施方式可以在网络交换机系统100上加载框架以接着在交换机硬件上同时地加载不同个性。

在示例性实施方式中,物理交换机(网络交换机系统100)可以分区成部件(例如容器),每个代表逻辑交换机120。由网络交换机系统100所支持容器的数目是任意的,并且给定容器的个性可以取决于为了该容器所创建的逻辑交换机的种类。因此,单个示例性实施方式可以同时地满足多个网络需求,例如通过在物理装置中创建多个被隔离部件以用作多个逻辑交换机120。逻辑交换机120可以包括例如,可以行为更类似基于物理OpenSwitch的交换机标准机柜顶层(TOR)逻辑部件;用于行为类似在其逻辑装置资源上承载了虚拟连接配置的OpenSwitch的虚拟接触(VC)配置交换机;用于表现对于存储区域网络(SAN)连接性的性能的光纤信道/在以太网之上光纤信道(FC/FCoE)的网关;用于行为类似零售商装置的软件定义联网(SDN)交换机,其中由SDN控制器基于OpenFlow而限定网络流;已采样流(sFlow)和L3-L7服务,用于执行对于由逻辑交换机所订阅的客户端和/或控制器的服务;等等。在该配置中,可以提供各种特征,诸如:将物理装置分区成多个逻辑交换机120而同时提供必需的软件隔离;逻辑交换机资源的隔离(例如流、端口等的分离);实现在各自逻辑硬件120上的服务(例如虚拟连接、OpenFlow等);并且对每个逻辑交换机120的资源提供最小和最大限值。

这些示例性特征提供了各种优点,诸如动态地组合交换机与基础设施需求匹配的特殊性能的能力,为偏差运算解决方案提供方案。示例性的实施方式可以允许网络基础设施更易于创建并缩放以匹配变化的需求。可以组成对于给定应用(例如数据中心)的网络解决方案以如所需的包括不同性能,而同时基于一致性硬件设置的使用。逻辑交换机可以是每个租户专用的,例如在多租户环境中。可定制并已隔离的特性对于特定应用诸如在制造和测试环境中而提供有价值的接触结构。示例性的实施方式也实现在基于底架的基础设施中运行交换机的选集的能力。

图2是根据示例的包括控制器210的网络交换机系统200的方框图。网络交换机系统200是基于底架的。可以例如基于每个租户而提供多个逻辑交换机220。给定的逻辑交换机220可以由控制器210动态地实例化。因此,逻辑交换机220可以提供作为多个容器化交换机堆栈以满足动态服务需求,例如给定的逻辑交换机220可以包括控制面以及至少一个协议的协议堆栈240,与网络交换机系统200的其他逻辑交换机220隔离。在应用层级逻辑地隔离并分区给定的逻辑交换机220。

控制器210可以在基于底架的基础设施中运行多个逻辑交换机220,以在多租户环境中为每个租户提供至少一个逻辑交换机220。示例性的实施方式提供可组合的架构,以随时间变化动态地添加或移除不同的个性至网络交换机系统200。

提供已隔离逻辑交换机220(例如使用容器化)使得网络交换机系统200限定不同配置至可以分段的每个容器/逻辑交换机220。例如,网络交换机系统200可以包括用于防火墙服务的专用容器/逻辑交换机220,用于负载平衡的专用容器/逻辑交换机220,用以收集网络统计/提供服务的专用容器/逻辑交换机220,等等。网络交换机系统200可以包括不同类级的容器以满足在给定场景中变化的配置需求。网络交换机系统200由用户/客户可组合,并且提供可以设置以运行于由不同类型情形/客户所需不同类型装置的公共平台,无需提供多个不同的硬件服务(SDN,传统的交换机,防火墙服务,安全管理,协议分析等等)。

网络交换机系统200可以包括多个网络端口202,共同跨越网络交换机系统200的硬件。网络端口202可以与一个或多个逻辑交换机220相关联。例如,网络端口202的子集可以分配至给定的容器/逻辑交换机220。分配的网络端口202由此与其他逻辑交换机220隔离,例如通过将分配的网络端口202绑定至对应的逻辑交换机220以在给定逻辑交换机220的边界内提供流量控制(trafficcontainment)。

网络交换机系统200的交换机硬件也可以包括至少一个控制面寄存器集合203。控制面寄存器集合203可以分配至对应的容器/逻辑交换机220以使得给定逻辑交换机220的控制面230利用控制面寄存器集合203。

在包括分配服务至多个容器/逻辑交换机220的示例性实施方式中,采样流(sFlow)服务容器205可以通过跨网络交换机系统200的多个逻辑交换机220执行sFlow管理操作而与管理面资源交互。因此,流过网络交换机系统200(例如通过分配至sFlow服务的那些逻辑交换机220)的数据包可以由sFlow服务容器205随机地采样,并且可以转发对于数据包所到达端口的标题和统计数据以用于收集/分析。

网络交换机系统200可以实现sFlow分析和服务而无需设置第三方器具以提供sFlow相关服务。例如,sFlow服务容器205可以本地地执行交换机收集功能,并且本地地处理并转发所收集和综合的数据。因此可以本地地提供诊断和网络监控能力(例如由给定的容器/逻辑交换机220)。进一步,可以自由地提供这些能力,而无需分配至给定的网络端口202。相反,示例性实施方式可以独立于网络端口202而提供该能力,例如可以根据可以在给定容器/逻辑交换机220处对准目标的已采样数据的给定流。因此,网络交换机系统200支持并未分配网络端口的容器/逻辑交换机220的创建,但是相反的提供可以封装在网络交换机系统200上的特征/服务(例如网络监控和分析)。例如,sFlow服务容器205可以使用该服务以每个逻辑交换机220的数据的子代理基准来报告sFlow数据,和/或以整个装置基准来报告sFlow数据,例如以每个物理网络交换机系统200的数据为基准。

控制器210帮助创建逻辑交换机220并且可以初始化以加载逻辑交换机220。在示例性实施方式中,可以使用指令流以在物理网络交换机系统200中实现多个逻辑交换机220。例如,可以使用开放式网络初始化环境(ONIE)引导加载器以独立地动态地加载每个已容器化逻辑交换机220的上层部件,由此支持网络交换机系统200的不同个性。可以实施该指令流以产生容器/逻辑交换机220,以定义在给定硬件实施方式中什么是逻辑交换机220,或者在给定硬件实施方式中的逻辑部件。该指令可以实施例如作为配置脚本或者可读作为用于网络交换机系统200的启动进程的一部分的配置的一部分。

在示例性的实施方式中,用于设置网络交换机系统200的指令流可以包括:1)通过初始化公共服务集合(诸如Open vSwitch数据库(OVSDB))而准备默认的容器0;2)获取待配置的容器的列表;3)识别每个容器将要创建的内部网络的列表;4)每个端口/交换机宽度准备交换机缓冲器资源;以及5)对于容器列表中每个容器:a)在OVSDB中建立逻辑交换机参考;b)从OVSDB获得容器配置信息;c)建立逻辑交换机身份;d)对于端口列表中每个端口应用端口保护属性,e)建立用于容器的内部网络,f)基于容器简单说明而实现交换机服务;g)通过从OVSDB获得细节而增强了交换机专用的配置(例如转发表格限值、转换表大小等);以及h)任选地建立与其他容器的相互关系。

图3是根据示例的包括多个容器320(例如逻辑交换机)的网络交换机系统300的方框图。图示了网络端口302和它们对于容器320的分配,与网络处理器的控制面330和数据板335一起。

本文所述的示例中,网络处理器可以是单个装置或者跨多个装置的分布式。如本文所使用的,处理器可以是用于检索并执行指令的中央处理单元(CPU)、基于半导体的微处理器、图形处理单元(GPU)、现场可编程门阵列(FPGA)的至少一个,适用于检索并执行存储在机器可读存储媒介上的其他电子电路,或者其组合。

给定的容器320可以包括协议堆栈340并可以交换与外部实体诸如SDN控制器350的通信。如所示,容器1-4与对应的网络端口P1-P20相关联。容器5和0不与网络端口相关联。

各个容器320可以与相异的特性相关联,其可以相互独立地与容器320相关联。例如,容器4承载了终端主机软件限定的联网(ESDN)交换机的个性。相反,容器5是sFlow服务容器并且执行与在逻辑交换机级和网络交换机系统级的sFlow操作(例如sFlow、防火墙设置等)相关联的管理操作。本地地学习用于容器1、2和3的层2(L2)网络地址,而从外部来源(SDN控制器350)增殖容器4信息,其也可以是来自集中化来源的网络服务,推出至该网络交换机系统300。因此,容器4图示了可以如何将交换机切换和其他规则的行为应用至逻辑交换机320上,而同时仍然是网络交换机系统300的相同硬件的一部分。

容器5和0图示了无需分配交换机硬件(也即网络端口)的示例。因此,逻辑交换机320的容器化不必意味着将网络交换机系统300的硬件资源分配至对应的容器320。因为网络交换机系统300支持对于最优环境的容器化,可以在网络交换机系统300上提供并共同驻留这些服务,并且因此无需在一些其他平台上配置这些服务。进一步,网络交换机系统300使得这些服务相互隔离,通过与网络交换机系统300上其他服务隔离以最小化可以影响给定服务的任何错误或故障的影响。因此,并未强迫服务一起坐落在网络交换机系统300的全局应用层处。进一步,可以在网络交换机系统300中不同容器320之间创建网络连接,例如单纯使用Linux进程连接而无需物理网络端口302。因此,给定容器(例如容器4)中的协议可以与另一容器(例如容器5)的协议通信以处理由容器保持分立的进程。因此,容器320支持在容器320的服务之间隔离通信,而同时保持隔离以防止协议故障相互影响。

一些容器320在它们的协议堆栈340之中包括交换机守护(ovs-vswitchd)。交换机守护(daemon)可以对于网络交换机系统300的硬件中不同的分区/容器320共用作为多个副本。因此,交换机守护的多个副本可以运行在不同容器中,以为不同容器320中的应用提供健壮的隔离。

如上所述,逻辑交换机可以包括三个面的组合:控制面、数据面和管理面。网络交换机系统300可以对于在工作在分区环境中三个面的每个中的行为寻址。因此,对控制面服务分区,并且以分隔方式处理数据流量。进一步,支持多个外部管理面实体(例如诸如SDN控制器350)与它们所管理的容器化服务交互,而并未相互干扰。

控制面操作可以包括各种特征以支持用于容器/逻辑交换机320的分区环境。在示例性实施方式中,OpenSwitch NOS可以使用构建了OpenSwitch NOS的Linux的容器技术而划区。容器实现在每个容器内执行的进程/域的隔离。进程诸如可以限定至容器层级的虚拟连接(VC)服务、OpenFlow等。这些进程可以用于致力于交换机的控制面需求。

链接聚集群组(LAG)、服务品质(QoS)、虚拟局域网(VLANs)、数据流等是可以分类在控制面操作之下的示例性资源。这些资源可以创建/删除/更新作为用户操作(例如定制)的结果和/或作为交换机部件的内部逻辑(例如数据流)的结果。

帮助管理这些资源的进程(也即服务)可以划界(scoped)至容器/逻辑交换机320。例如,当被创建时,资源可以承载容器(逻辑交换机)320的所有权,或者当对于OVSDB查询时承载数据。因此,数据将是对于容器专用(逻辑交换机专用)操作相关的并以其为目标。

在示例性实施例中,网络交换机系统300的逻辑交换机1中的链接聚集(LAG-1)和逻辑交换机2中的LAG-1将因为容器/逻辑交换机320之间隔离而实施作为两个不同的LAGs,尽管它们使用相同的标签/名称LAG-1。类似的,逻辑交换机1的VLAN-160和逻辑交换机2的VLAN-160在网络交换机系统300内唯一地可识别(尽管具有相同标签/名称),并且可以使用VLAN变换机制。生成树协议(STP)可以基于每个容器而实现,例如使用在VLAN之上的STP。容器(例如ovs-vswitchd)的控制面服务可以与本地硬件交互,诸如通过将用户定义的QoS引入至端口上,或者通过与远程服务提供者诸如SDN控制器350交互等等。

在运行时刻,逻辑交换机320的控制面模块可以利用网络交换机系统300的控制面寄存器(例如图2中所示的寄存器集合203)。网络交换机系统300的硬件可以包括控制面寄存器集合,并且集合可以与逻辑交换机320相对应。然而,从外部获得定义(例如从SDN控制器350)的逻辑交换机320(例如容器4SDN配置)可以不包括控制面寄存器集合。控制面配置可以随着每个逻辑交换机320变化,诸如实现VC专用行为、对于TOR类型交换机的媒介访问控制(MAC)表性能定义等等。

控制面330示出为图3中的CP1、CP2和CP3,但是可以取决于实施方式、取决于它们与控制处理器寄存器集合的关联而变化,在给定网络交换机系统300中可以包括一个或多个,并且可以为了操作原因而与给定容器320相关联。控制处理器寄存器集合可以由控制面处理器使用以操纵网络交换机系统300的操作。本文所述网络交换机系统300的示例性实施方式可以利用多个和/或冗余的控制寄存器副本,利用容器化架构,例如通过Linux内核模块堆栈或开放式虚拟交换机堆栈,以将硬件的副本暴露至例如多个不同容器以改进性能。

除了提供控制面特征之外,本文所述的示例性实施方式可以在数据面中提供数据流量的分离。网络交换机系统300可以提供在物理装置层级工作的数据面服务(例如可以由物理网络交换机系统300的多个和/或全部逻辑交换机320所共享的服务),而同时允许控制面服务隔离地工作。尽管数据面可以采取共享服务模型,隔离的控制面服务实现在给定逻辑交换机320的界限内包含网络流量。换言之,分配至给定逻辑交换机320的网络端口302可以绑定至逻辑交换机层级。

作为流量隔离的示例性图示,考虑在逻辑交换机1的端口P1上接收的网络框架,去往逻辑交换机2的端口P6。可以防止交换机子系统违反隔离规则,例如基于对于给定逻辑交换机320创建内部虚拟LAN(VLAN)或私人虚拟LAN(PVLAN)。

为了图示VLAN/PVLAN行为,网络端口302可以对于每个逻辑交换机320分组。例如,网络端口P1-P5可以分配至容器1,网络端口P6-P8可以分配至容器2,等等。如所示,网络端口302分配至各自容器320(“由其所拥有”)并且在那些网络端口302上通信量超出网络端口302所配置至的对应容器320之外而不可见。

在示例性实施方式中,网络交换机系统300可以识别在属于与逻辑交换机320对应的VLAN或PVLAN的给定网络端口群组302上的流量,并且因此实现流量隔离。网络交换机系统300可以将内部VLANs处理作为给定物理网络交换机系统300中独特的实例。在交换机行为的另一示例性实施方式中,逻辑交换机(例如容器4)可以实施作为SDN装置。SDN装置可以从SDN控制器350例如使用OpenFlow服务获取其交换机数据表。例如,与逻辑交换机对应的MAC表格实体可以作为OpenFlow服务的结果而更新。

管理面操作也由示例性网络交换机系统300支持。在给定场景中,网络交换机系统300可以用于配置提供了sFlow或L3-L7服务的容器320。在这些情形中,服务可以由容器320交付,并未采用拥有物理端口的容器。作为示例,sFlow服务容器可以在装置层级起作用,也即跨网络交换机系统300的物理装置。因此,与sFlow相关联的信息(例如采用统计信息和端口层级统计信息)可以由装置宽度的sFlow引擎可访问。sFlow数据报告可以基于每个逻辑交换机层级(可以利用sFlow的子代理概念)。备选地,可以报告装置层级统计信息。因此,可以采用容器化交换机堆栈来实例化所示容器5以作为sFlow容器,所述sFlow容器不包括分配至容器的交换机硬件资源,并且该所示容器5用于执行控制器的管理操作。容器5也可以用作软件定义的联网(SDN)交换机,基于获得定义、交换机数据表、以及来自外部SDN控制器的媒介访问控制(MAC)表实体来配置。

参照图4和图5,根据本公开各个实施例图示了流程图。流程图代表可以结合参照附图所述各个系统和装置而采用的进程。尽管以特定顺序图示,本公开并非有意如此限制。相反,明确预期设计的是各个进程可以以不同顺序和/或与那些所示其他进程同时地发生。

图4是根据示例的基于实例化逻辑交换机的流程图400。在方框410中,通过初始化公共服务集合而准备默认容器,该公共服务集合由网络交换机系统共用。例如,网络交换机系统的控制器可以通过准备将要使用那些服务的默认容器0而初始化用于网络交换机系统的Open vSwitch数据库(OVSDB)管理协议服务。在方框420中,控制器将要基于待配置容器的容器列表以及每个容器待创建的内部网络的网络列表来实例化每个逻辑交换机。例如,控制器可以在网络交换机系统的启动期间参考配置文件,以获得逻辑交换机和/或内部网络的列表。配置文件可以由用户定制,并且可以在制造期间预装。在方框430中,跨网络交换机系统为每个端口准备交换机缓冲器资源。例如,控制器可以对于待使用的给定逻辑交换机建立缓冲器资源,物理网络端口基于此而在网络交换机系统中可应用。

图5是根据示例的基于设置容器的流程图500。可以对于将要实例化在网络交换机系统中的给定容器化逻辑交换机而执行方框510-570。在方框510中,在开放式虚拟交换机数据库(OVSDB)中建立逻辑交换机参考。例如,网络交换机系统的控制器可以在OVSDB中对于将要实例化的逻辑交换机创建虚拟/逻辑源和目的端口的列表。在方框520中,从OVSDB获得容器配置信息。例如,控制器可以从OVSDB获得关于将要在待实例化的容器的配置中包括什么类型资源的信息。

在方框530中,建立逻辑交换机身份。例如,可以采用机柜顶部(TOR)身份建立逻辑交换机,由将要与逻辑交换机交互的应用使用。在方框540中,针对为容器化逻辑交换机所列的每个端口任选地应用端口保护属性。例如,控制器可以对于给定端口为接收到和/或发送的网络通信量设置份额,其中相关的(例如,对于恰好是所分配的物理端口的那些逻辑交换机)。

在方框550中,任选地为容器化的至少一个逻辑交换机建立内部网络。例如,如合适的,控制器可以使用Linux进程连接在不同容器之间设置网络连接。在方框560中,基于对于容器化的逻辑交换机的容器配置描述而实现交换机服务。例如,控制器可以维持包括容器配置描述的文件,并且当将给定服务与给定逻辑交换机相关联时参考文件。例如,控制器可以维持包括容器配置描述的文件,并且当将给定服务与给定本地交换机相关联时参考文件。在方框570中,如从OVSDB所获交换机专用配置时,强制执行该交换机专用配置。例如,控制器可以基于规则的集合强制实施对于逻辑交换机的配置,以便于在逻辑交换机之间强制实施数据流量的分隔。

本文提供的示例性实施方式可以实施在硬件、软件、或两者的组合中。示例性的系统可以包括用于执行存储在有形非临时媒介(例如易失性存储器、非易失性存储器、和/或计算机可读媒介)中指令的处理器和存储器资源。非临时计算机可读媒介可以是有形的并且具有存储在其上、由处理器可执行以实施根据本公开的示例的计算机可读指令。

示例性系统(例如包括计算装置的控制器和/或处理器)可以包括和/或接收存储了计算机可读指令的集合的有形非临时计算机可读媒介以执行以上所述和权利要求中以下所述的方法。例如,系统可以执行指令以指示控制器引擎以实例化逻辑交换机,其中引擎包括用于执行本文所述指令的硬件和软件的任意组合。如本文所使用,处理器可以包括诸如在并行处理系统中一个或多个处理器。存储器可以包括由处理器可寻址以用于执行计算机可读指令的存储器。计算机可读媒介可以包括易失性和/或非易失性存储器诸如随机访问存储器(“RAM”),磁性存储器诸如硬盘、软盘和/或磁带存储器,固态驱动(“SSD”),快闪存储器,相变存储器等等。

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