为什么Nicira要抛弃OpenFlow硬件控制?

网络
OpenFlow能够实现网络硬件中控制与数据分离、实现中央“大脑”控制(OpenFlow控制器)的方式,但现在OpenFlow的发明者决定放弃他。

5年前,当Nicira创始人Martin Casado在斯坦福大学攻读博士学位时,他准备转变网络运营模型,使之能够跟上数据中心内服务器自动虚拟化的发展。Casado原以为他的发明OpenFlow能够解决这个问题,但是现在他承认自已当初想法是错误的。现在网络行业中广为流行的OpenFlow硬件控制并不是解决问题的方法。他决定在网络虚拟化的堆叠软件中采取不同的方法,VMware非常认同这种策略,并因此斥资12亿美元收购了Nicira。

本周,Casado在VMware的剑桥办公室主持召开了一个面向新闻记者的白板会议,他在会上说:“问题是,我们确实走错了方面,而且我认为行业中有很多人还没有意识到这是错的。”

Casado发明了OpenFlow,将它作为实现网络硬件中控制与数据分离、实现中央“大脑”控制(OpenFlow控制器)的方式。这个创新将实现可扩展性,并且会彻底改变网络运营方式。他说:“这是我在斯坦福撰写的论文——这是实现自动化网络连接的方法。然后,Nicira的前三位工程师编写了这个协议,在理解SDN(软件定义网络)上,我们前期确实做了很多的工作。”

Casado指出,OpenFlow仍然适用于许多场景,特别是流量工程。谷歌的数据中心互联部署就是一个***的例子。但是,他又指出,在数据中心的网络虚拟化中,使用OpenFlow控制硬件转发是错误的方法。

使用虚拟交换机替代OpenFlow硬件

Casado说:“在***年里,我们就认识到有一些确实很重要的事情在发生。”服务器虚拟化已经改变了数据中心的网络访问层。虚拟机管理程序中内置的虚拟交换机(特别是VMware的vSwitch)已经成为新的网络边界。如果新边界出现在服务器的软件中,那么为什么还要使用OpenFlow控制物理交换机呢?虚拟交换机非常适合用于数据中心网络虚拟化,其原因有两个:“首先,它运行x86平台上,而x86非常灵活。我们知道如何编程实现。它不像在一些私有ASIC的算法那么复杂。如果我想要改变转发方式,那么我只需要编写一个新程序。”

“其次,它非常接近网络边界。长期以来,网络都试图猜测主机所发生的事情。如果您在服务器上,那么您就能够访问边界的丰富语义,这是以前无法做到的。现在监听了哪些地址?有哪些用户连接主机?您所获得的监控级别达到了网络人员的梦想要求。”

这些现实问题促使Casado及其团队重新进行了评估,然后采取了不同的方法。他说:“我们遇到了一个尴尬的时刻。”Nicira可能使用 OpenFlow实现网络虚拟化,但是它可能会将关注点从硬件转到软件控制。它可能会控制虚拟交换机。对于Casado而言,这是非常有意义的。毕竟,数据包转发并不是现代网络的问题所在。在数据包传输方面,传统网络仍然做得很好。在传统网络之上,造成问题和减慢速度的原因是策略层和操作层。特别对于访问控制列表(ACL)、VLAN、网络隔离、计费与核算等功能,专业网络人员以前都能够在静态环境中一劳永逸地完成设置。当使用服务器虚拟化提高新计算负载分配速度和实现虚拟机移动性时,手工过程马上就变得极不实用。

Casado指出,这些运营问题并不会在物理网络硬件上发生,但是可能会在可以通过软件轻松控制的虚拟交换机上发生。这正是Nicira的网络虚拟化平台(Network Virtualization Platform)出现的原因,而且这也是网络覆盖层成为与SDN同等热门话题的原因。

#p#

OpenFlow硬件的直接控制问题

许多供应商和网络从业者仍然希望通过开发OpenFlow硬件而在数据中心实现网络虚拟化。但是,Casado指出,有很多因素决定这是不可行的。***个问题是网络供应商的生态系统。他说:“您要求交换机供应商在交换机上实现OpenFlow,而这样做又不会给他们带来好处,因为在一定程度上,这样做实际上在剥夺他们的价值。我在2007年编写了***个OpenFlow协议,从那时开始人们开始发布相关产品,但是只有少量有用的OpenFlow交换机。任何有有用OpenFlow交换机的人都还会再购买一个控制器,而我可以肯定,他们会采用绑定使用他们的控制器和交换机,因为这样他们才能维持对客户环境的控制。至于创建活跃的社区,业务关系决定了这是非常困难的事情。”

许多网络供应商已经在交换机上实现了OpenFlow,那么 Casado的“有用的OpenFlow交换机”是什么意思?他解释说,大多数供应商在开发交换机时并没有配备对数据中心真正有用的足够的通用转发表容量。在典型的交换机ASIC(专用集成电路)中,有一个ACL表、一个2层表和一个3层表,他说:“他们都是特殊用途的表。”这些表中没有一个能够支持数据中心级的OpenFlow。

Casado说:“在OpenFlow中:表中有11个元组查表,这是非常通用的东西,而且您拥有很多这样的表。为了OpenFlow,许多供应商会直接覆盖其中一个表(它可能包含5,000条实体),然后,他们会在这个表中硬塞入OpenFlow实现。但是,这个芯片实际上并不是为这个而造。OpenFlow仍然试图纠正这个问题,但是这非常困难。”

Casado指出,现在的大多数OpenFlow交换机流的转发表都非常适合用于研究和实验。他说:“但是,数据中心内的流与流量的数量决定了必须执行一些与3层网络类似的操作。OpenFlow并不适合用于创建数据中心交换机的转发结构。”

Nicira-VMware解决方案中是否存在适合OpenFlow硬件的空间?

这是否意味着Nicira及其父公司VMware愿意仅仅关注于软件层面?Casado说,他的技术需要在三个方面与硬件进行交互,而这要求在标准 OpenFlow上增加其他功能。他说:“首先是QoS(服务质量),队列越多越好。您在硬件中部署得越多,您向客户提供的QoS层次就越多。如果我有8 个队列,那么我只能提供8个SLA(服务水平协议)。如果我有一百万个队列,那么我可以为每一个租户签订一个SLA。”

QoS和类似的硬件特性需要更简单的以太网操作和控制与管理(或OAM)模型,好让Nicira及其他技术都可以在物理与虚拟负载上修复和调试这些功能。网络虚拟化技术还需要与未虚拟化的传统工作负载的***交换机进行交互。Casado说:“您需要控制***机架交换机,才能够让物理负载进入虚拟网络,这需要类 OpenFlow接口。”

***,网络虚拟化控制器需要与网络设备(防火墙、应用交付控制器等)进行交互,而这也需要“类 OpenFlow”接口。Casado说:“我认为,OpenFlow太过于底层。所以,我们已经提出了一个新技术:OVSdb-config。我们将用它管理Open vSwitch和OpenFlow。它允许我们管理更上层的状态。这是我们期望人们使用的东西,但是它实际并不太重要。为什么呢?只要是开放、鼓励创新而且能够完成工作,任何协议都可以。”

责任编辑:遗忘者 来源: TechTarget中国
相关推荐

2013-04-22 11:09:43

IBM服务器硬件x86

2022-11-08 10:36:02

戴尔

2011-07-18 10:35:59

MIUI小米科技雷军

2015-08-06 10:14:15

造轮子facebook

2022-08-15 08:27:02

基站网络

2013-03-12 14:30:09

Ubuntu操作系统

2013-07-08 16:00:58

OpenFlow软件定义网络SDN

2018-06-14 08:44:03

2013-10-16 10:13:54

开源开源硬件

2020-12-23 16:02:42

操作系统红帽CentOS

2017-09-08 08:35:16

Android代码API设计

2019-11-27 10:25:15

SaaS云端IT架构

2019-03-19 08:59:13

物联网IOT技术

2014-08-25 10:00:18

开源

2017-04-05 16:40:45

2019-01-14 07:28:56

大数据云计算互联网

2021-02-11 13:30:56

Nodejs源码c++

2015-05-12 11:04:42

Java EE学习Java EE

2018-05-23 00:20:29

2012-06-18 14:51:09

Python
点赞
收藏

51CTO技术栈公众号