也谈OpenFlow, SDN, NFV


Copyright (2014) 郭龙仓. All Rights Reserved.

OpenFlow

传统的网络环境中,只有路由器/交换机之间的接口/协议是标准化的,但是在网络设备内部,数据平面和控制平面其实是耦合在一起的,每一家厂商都有自己专有的系统来实现这两个平面,而且数据平面和控制平面不能够分开独立演化。

在 初期网络环境比较简单的时候,这种数据平面和控制平面的耦合其实无关紧要;但是现在的企业内部网络环境愈来愈复杂,大量异构的网络设备、复杂的组织架构、 竞争日趋激烈的市场环境……, 传统的网络架构不仅导致企业IT部门的投入产出比越来越低,而且效率也极大的受到影响,而且更加致命的是,企业无法迅速的响应市场环境的变化,这在极端情 况下其实会导致企业的破产/倒闭。所以,数据平面和控制平面的分离已经不是一件设计上的事情,而是关乎企业的存亡。

那么,OpenFlow是什么呢? OpenFlow是一种开放的协议,用于数据平面和控制平面之间的通信。


SDN

SDN, 顾名思义,软件定义网络。那么怎么样做到软件定义网络呢? 答案就是数据平面和控制平面的分离。OpenFlow的角色就是数据平面和控制平面之间的通信协议。看到这里,你也许会觉得其实SDN不就是 OpenFlow嘛,两者没什么本质区别。那我要告诉你,你可就大错特错了。SDN与OpenFlow其实完全不在一个层面上,虽然OpenFlow和 SDN都涉及到数据平面和控制平面的分离,但是,OpenFlow只是一种协议,SDN的含义却大得多。SDN是一整套软件定义网络的解决方 案,OpenFlow只是这个解决方案中需要用到的一种技术而已。

当大家在说OpenFlow的时候,其实是在说这种协议或者采用了这种协议的交换机。

当大家在说SDN的时候,其实是在说软件定义网路的解决方案。


NFV

NFV, 顾名思义,网络功能虚拟化。那么什么是网络功能虚拟化呢? 重点就在网络功能这四个字上,当大家说防火墙、负载均衡、路由、交换等等等等的时候,大家就是在说网络功能,所以你现在应该能够理解什么叫做网络功能虚拟化了吧。


SDN与NFV

首先,NFV与SDN都是解决方案级的。

其 次,SDN的实施必然需要网络的虚拟化,注意,是网络虚拟化,不是网络功能虚拟化,这也是导致很多人对SDN与NFV概念混淆的根本。所以,关键是理清网 络虚拟化和网络功能虚拟化的区别。网络虚拟化可能会需要用到路由、交换等网络功能虚拟化技术;但是网络功能远不止路由、交换,它的范畴要广的多。我觉得其 实可以拿面向过程与面向对象之间的区别和联系来类比一下,网络虚拟化和网络功能虚拟化其实本质上是看问题的不同角度和做事情的不同方式,它们有自己特定的 应用场景和模式,但是它们却并不冲突,就好像同一种语言可以同时支持面向过程和面向对象两种范式,企业网络也可以同时应用SDN和NFV,SDN与NFV 既相互独立又相辅相成。

最后,SDN与NFV都在促进整个网络环境趋向于更加开放、灵活、标准化。

相关内容

    暂无相关文章