目录
OpenFlow起源与发展
OpenFlow 是 Software Definded Network 的一种,由斯坦福大学的 Nick McKeown 教授在 2008 年 4 月 ACM Communications Review 上发表的一篇论文 OpenFlow: enabling innovation in campus networks 里首先提出来的。它最初的出发点是用于网络研究人员实验其创新网络架构、协议,考虑到实际的网络创新思想需要在实际网络上才能更好地验证,而研究人员又无法修改在网的网络设备,故而提出了 OpenFlow 的控制转发分离架构,将控制逻辑从网络设备盒子中引出来,研究者可以通过一组定义明确的接口对网络设备进行任意的编程从而实现新型的网络协议、拓扑架构而无需改动网络设备本身。
OpenFlow网络
所谓OpenFlow网络指的是相互连接的一组OpenFlow交换机的集合,并且这些交换机全部置于一个OpenFlow Controller或一个OpenFlow Controller的集群管理之下。
分为以下三个部分
1、OpenFlow交换机:
主要实现数据层的转发。下面一节做详细介绍
2、FlowVisor:
主要作用是对网络进行虚拟化。FlowVisor是建立在OpenFlow协议上的网络虚拟化工具。部署在标准OpenFlow控制器与OpenFlow交换机之间,它将物理网络划分为不同的逻辑网络,使每个控制器控制一个虚网,从而实现虚网划,并保证各虚网相互隔离分。它让管理员通过定义流规则来管理网络,而不是修改路由器和交换机的配置。效果如下图所示,
FlowVisor的设计原则是:
FlowVisor对控制器和交换机是透明的,它们都感知不到FlowVisor的存在
各虚网之间相互隔离,即使是广播包,各虚网的流量也相互隔离
划分虚网的策略是灵活、模块化、可扩展的
OpenFlow消息在进行传输时,FlowVisor会根据配置策略对OpenFlow消息进行拦截、修改、转发等操作。这样,控制器就只能控制其被允许控制的流,但是控制器并不知道它所管理的网络被FlowVisor进行过分片操作。 同样,交换机发出的消息经过FlowVisor过滤后,也会被发送到相应的控制器。
3、Controller:
主要是对网络集中控制OpenFlow将控制层与数据转发层分离,其中OpenFlow交换机实现了数据转发功能,而OpenFlow控制器则实现了控制层功能。Controller通过OpenFlow协议提供的标准数据接口,对OpenFlow交换机中的流表进行控制、管理,实现了对整个网络的集中控制。
在Controller中,可以用python等程序对其功能进行定义,比如下发流表,对Packet_in包进行处理等。
OpenFlow交换机

OpenFlow交换机是OpenFlow网络得核心部件,主要用于管理数据层得转发。其结构如上图方框中所示。
分类
OpenFlow交换机分为两类:专用OpenFlow交换机和支持OpenFlow的交换机
- 专用OpenFlow交换机:专门为OpenFlow设计的交换机。与传统交换机不同,它不再具有控制逻辑,而仅仅是在端口间转发数据包的一个简单部件。
- 支持OpenFlow的交换机:是在传统商业交换机的基础上,添加了安全通道、流表、OpenFlow协议,获得了OpenFlow特性的交换机。它既具有传统交

本文深入探讨了OpenFlow作为SoftwareDefinedNetwork的核心技术,详细解析了其起源、发展及网络架构,包括OpenFlow交换机、FlowVisor和Controller的功能与交互。文章还介绍了OpenFlow协议的细节,如消息类型、匹配流程和流表机制,以及OpenFlow在网络虚拟化、负载均衡和绿色节能等领域的应用案例。
最低0.47元/天 解锁文章
1023

被折叠的 条评论
为什么被折叠?



