随着软件定义网络(SDN)这个概念日渐深入人心,你自然会考虑将SDN部署到贵企业,可是现有的选择数量多得让人晕头转向。现在有许多的开源SDN方案,而且似乎每一家传统网络厂商都推出了各自的产品或平台,加入了这场混战。此外还有不计其数的SDN初创企业。
我们在这里着重介绍市面上的SDN控制器。由于SDN控制器在网络中起到了核心作用,所以尤其至关重要。控制器其实是一个应用程序,它让IT人员可以控制一端的物理网络设备与另一端的应用程序之间的信息流动,从而实现智能网络。
SDN控制器平台去除了网络硬件的控制平面,从而为网络设备卸下了重担。它们使用OpenFlow和OVSDB之类的协议,控制流量、配置网络设备,通常通过各种各样的棋块来实现,而这些模块能够提供不同的功能。控制器既能管理和监控虚拟网络基础设施,又能管理和监控底层物理网络设备;许多控制器能够为多租户网络基础设施隔离网络的某些部分。
有几种样式的开源SDN控制器,许多网络厂商加入了OpenDaylight项目,目的是为了贡献或开发与之兼容的产品。因而,几款商用产品现在基于开源代码,常常是为了与支持OpenFlow的网络设备协同运行而设计的。
SDN控制器在许多环境下派得上用场,包括云和数据中心网络;在这种环境下,SDN控制器能够提高资源的利用率,并且缩短多租户隔离所需的周转时间;还包括企业园区网络,在这种环境下,可充分利用网络访问控制和网络监控的好处。它们对服务提供商网络而言也大有前景:流量优化和应用程序流控制对业务增长和成功而言至关重要。
那么,到底哪一种SDN控制器适合贵企业的网络和应用程序呢?我们概述了种种方案,主要着眼于可用于企业的那些方案,帮助你做出决定。
早期的开源SDN控制器
NOX是第一款OpenFlow控制器,由Nicira Networks公司(2012年被VMware收购)开发而成,与OpenFlow同时开发。它是用C++编写而成的一款程序,旨在用来管理交换机。Nicira在2008年将NOX捐献给了研究社区。
POX是NOX的后续版本,它用Python编写而成。POX仍在积极开发之中,其目的是开发典型的现代SDN控制器。
Beacon用Java编写而成,可与Eclipse集成开发环境协同运行。虽然局限于星形拓扑结构,但它是第一款让没有丰富经验的编程人员也能够开发出SDN环境的SDN控制器。
Floodlight基于Beacon,采用了Apache许可模式。作为Big Switch Networks公司支持的开源项目之一,该控制器可以与含有OpenFlow和非OpenFlow组件的网络协同运行。它还集成了OpenStack云编排功能。
免费的新型开源控制器
ONOS是由开放网络实验室(ON.Lab)开发的一款开放网络操作系统,而ON.Lab是一家由来自斯坦福大学和加州大学伯克利分校的SDN发明家及领导者创办的非营利组织。虽然ONOS现在面向运营商网络,但ON.Lab的设想是让它成为厂商推动的OpenDaylight项目的替代者,并希望在未来将它的应用范围扩大到企业领域。
OpenContrail是瞻博网络公司的Contrail控制器的开源版本,它来自于瞻博网络在2012年收购的Contrail Systems。 该项目采用Apache 2.0许可模式,旨在促进SDN采用和云整合。相比许多架构设计,它更加依赖MPLS和BGP等传统网络协议。
OpenDaylight是得到Linux基金会资助的一个协作项目,它所开发的SDN控制器旨在可以在几乎任何环境下运行。据OpenDaylight声称,该控制器基于Beacon,实施在Java虚拟机里面,所以它可以部署在任何支持Java的硬件或操作系统上。除了其他开放的SDN标准外,它还支持OpenFlow。该组织已取得了重大进展,宣布了两个主要的软件版本:Hydrogen和Helium,仅仅相隔了一年。
Ryu是用Python编写而成的SDN控制器,采用了Apache 2.0许可模式。它得到NTT通信公司的支持,部署在该公司的数据中心,用Pica8封装而成,作为其SDN入门套件的一部分。Ryu支持众多协议,其中包括OpenFlow、Netconf和OF-config。据说明文档显示,使用OpenStack以及Ryu让用户可以实现多样化细分。#p#
企业SDN控制器
Big Switch Networks公司提供大云架构控制器(Big Cloud Fabric Controller),作为其SDN数据中心架构的一部分。该控制器基于Project Floodlight开源规范,使用OpenFlow扩展件与Switch Light进行联系,而Switch Light是Big Switch的交换机操作系统。可以通过该平台的虚拟操作系统:vSwitch,实现虚拟交换机制。该产品包含在分支-主干物理Clos架构或分支-主干和vswitch混合架构中。
博科的Vyatta控制器是基于OpenDaylight规范的开源控制器。博科在2012年收购了Vyatta公司,因而获得了其虚拟网络技术的基础技术。据博科声称,该控制器是第一款按照OpenDaylight标准制造的产品,没有任何的专有扩展件或平台依赖关系,为多厂商的网络和应用程序提供了一个通用平台。该控制器还附有一年免费许可证。
思科的应用策略基础设施控制器(APIC)是该公司面向其ACI平台的自动化和管理点,通过应用程序配置文件,提供了控制网络环境的功能。APIC依赖思科OpFlex协议,让那些策略能够跨物理和虚拟网络交换机得到应用。 APIC的重心放在策略执行上――允许硬件设备和网络协议保留智能,而不像OpenFlow控制器旨在将所有功能统统集中到控制器上。还提供了软件形式和硬件设备形式的APIC企业模块,以便将SDN扩展到广域网和网络边缘。
据思科方面称,思科的可扩展网络控制器(XNC)是OpenDaylight控制器的第一个商用版,它充当了OpenDaylight堆栈的参考实施。该控制器使用模块化架构,不仅支持思科的单一平台套件(onePK),还支持OpenFlow。
戴尔的灵动网络控制器(Active Fabric Controller)是为企业级OpenStack部署而设计的。它使用OpenFlow与数据中心交换机进行联系。该控制器基于OpenFlow而建,还有一个面向OpenStack Neuron网络项目的插件,提供了扩展云服务和网络服务的功能。戴尔打算让客户在云或密度非常高的企业环境下将该控制器与其Z9500交换机结合使用。
极进网络公司的OneController基于OpenDaylight规范,但含有专有扩展件。这些扩展件让客户得以通过基于无线分析、无线控制、安全和策略控制等功能的控制器模块,将SDN扩展到极进网络的无线产品(它在2013年收购了Enterasys公司而获得了无线产品)。
惠普的虚拟应用网络(VAN)SDN控制器是基于OpenFlow的控制器,面向使用惠普或其他OpenFlow兼容硬件的数据中心、园区或服务提供商环境。VAN可与OpenStack一同工作,使用惠普的虚拟云网络平台,扩展到OpenStack的Neutron。惠普的特点还在于,不光提供SDN平台,还提供了一个应用程序商店。
IBM的可编程网络控制器(Programmable Network Controller)提供了基于OpenFlow的架构,可集中控制网络流量和虚拟机移动。该控制器与IBM的更广泛平台SDN for Virtual Environments整合起来。SDN for VE是一款IBM网络覆盖软件,让现有的网络硬件能够划分成虚拟网段。
瞻博网络的Contrail控制器基于从该公司在2012年收购的Contrail Systems公司获得的技术而建。该控制器在虚拟机上运行,使用XMPP协议来管理网络进程。它充分利用了瞻博的OpenStack发行版实现云编排和自动化,而且支持CloudStack和IBM的SmartCloud Orchestrator。除了面向运营商网络的NorthStar控制器外,瞻博还提供了OpenContrail,这是Contrail的开源版。
据Metaswitch Networks声称,该公司的Gulfstream SDN控制器是为网络访问和超大规模数据中心基础设施而设计的。它支持众多标准,包括OpenFlow 1.3、REST和NETCONF,结合了开源代码和专有代码。
Midokura公司的Enterprise MidoNet是软件定义的虚拟网络,面向基础设施即服务云环境。MidoNet只专注于虚拟交换机,不过与其他SDN控制器和Cumulus交换机整合起来,这样就有可能扩展到物理基础设施。Midokura大力参与OpenStack,将MidoNet与OpenStack及其Horizon用户界面紧密地整合起来。
NEC的可编程流量控制器(ProgrammableFlow Controller)是第一款基于OpenFlow的商用SDN控制器。它首发于2011年,现在已推出了第五个版本。该控制器支持物理交换机和虚拟交换机,还有与OpenFlow和传统网络都能协同运行的混合版。它提供了与OpenStack和微软系统中心虚拟机管理器整合编排的功能。NEC还提供Univerge网络协调器,该产品可控制多种SDN控制器。
Pica8公司的集成开放OVS控制器是Pica8的SDN平台和控制器的控制器部分。该控制器使用OpenFlow,与物理交换机和虚拟交换机都能协同运行。Pica8指定RYU开源控制器作为其参考架构,但是还展示了可与Floodlight和NOX协同运行的功能。RYU控制器得到了NTT通信公司的支持,由该公司的实验室部门开发而成。
Plexxi Control是一款旨在与该公司的大数据架构(Big Data Fabric)协同运行的SDN控制器。它还可与Plexxi交换机硬件进行联系,该硬件用无源光互连件相连接的双层架构来配置。该公司声称,交换机处理一些网络智能,充当“控制器副手”。Plexxi的API让该架构可以与VMware的VCenter等系统协同运行。
VMware的NSX控制器是该公司的NSX SDN平台的一部分,该平台由VMware在2012年收购的Nicira Networks公司发展而来。控制器支持单播和混合逻辑交换机控制平面模式,目的是为了让NSX与物理网络分开来。据VMware声称,NSX是一款完全虚拟化的产品,与任何网络硬件兼容。它可以部署在VMware vSphere或使用多种虚拟机管理程序的环境中,并且支持OpenStack、CloudStack和VMware云管理软件。
原文标题:SDN Controller Handbook