软件定义网络 SDN--openflow概述

来源:互联网 发布:如何运行php文件 编辑:程序博客网 时间:2024/06/08 00:54

将网络管理功能从网络设备中分离出来是SDN的基本特征。它意味着将网络的控制功能(即控制平面)与网络转发功能(即数据平面)相分离,而且所分离出来的控制平面是可编程的。这种控制逻辑的迁移使得下层网络互联基础设施能够从应用层面上抽象出来。SDN架构也将提供一组API,使得常用网络服务的实现更为简便。

OpenFlow是第一个专为SDN设计的标准接口,提供了能够跨多种网络设备的高性能的、精细的流量控制。

一、

负责转发功能的硬件包含以下部分:

(1)一个包含流记录(flow entry)的流表(flow table),流记录由用于匹配当前流的规则和所采取的具体的操作组成。

(2)一个传输层协议,用于与控制器进行安全传输,以传递没有在当前流表中的新纪录。


部署SDN需要的基本构件包括:SDN交换机(如OpenFlow交换机)、SDN控制器、控制器中用于和转发设备通信的接口、通常的南向接口(OpenFlow)和网络应用接口(北向接口)。

在SDN中,由于控制逻辑和算法被卸载到了控制器中,交换机一般被表示为能够通过开放接口访问的基础转发硬件。

OpenFlow交换机分为两类:纯粹的OpenFlow交换机(只支持OpenFlow操作)和混合的OpenFlow交换机(可启用OpenFlow操作)。纯粹的OpenFlow交换机不具有传统交换机的板级控制特性,完全依赖于控制器做转发决策。混合的OpenFlow交换机除了支持传统的操作和协议之外,还支持OpenFlow操作。

OpenFlow交换机包括一个流表,流表负责执行数据包的查表和转发,交换机的每个流表保存一组流的记录。

        控制器和交换机之间的通信采用openflow协议,通过安全信道在实体之间传递一组预定义的消息,安全信道是将每个交换机连接到控制器的接口。可以把openflow协议视为控制器和交换机之间交互的一种可能的方案(南向接口),因为它定义了交换硬件和网络控制器之间的通信。

        openflow协议定义了以下三种消息类型,每种又可分为若干子类型:

       (1)控制器到交换机的消息:用于直接管理交换机或查看交换机的状态。

(2)对称的消息:既可以由交换机主动发送,也可以由控制器主动发送。

(3)异步的消息:由交换机发起,用来向控制器通告网络事件和交换机状态的变化。


        北向接口完全在软件中定义,而控制器和交换机之间的通信交互则离不开硬件实现方案。









原创粉丝点击