软件定义网络基础---Openflow概述

一:OpenFlow概述

二:交换机模型架构

(一)OpenFlow构架三个组成成分

三:OpenFlow 1.0版本

自OpenFlow1.0发布以来,目前已经有多个版本的OF规范版本被发布

四:OpenFlow主要版本及特性

(一)OpenFlow 1.0

1.0版本中,只支持单流表。每个OpenFlow交换机中,都只有一张流表,用于数据包的查找、处理、转发。
并且只能同一台控制器进行通信

流表由多个流表项组成,每个流表项就是一个转发规则。
流表项有匹配字段、计数器和动作组成

(二)OpenFlow 1.1

1.1版本支持多级流表,形成流水线处理流表匹配的各个过程,能够避免单流表过度膨胀问题(太长的问题),也能更好的利用硬件内部固有的多标特性

1.1和1.0不兼容,但是后续版本都是基于1.1版本

(三)OpenFlow 1.2

下发的匹配字段不再是固定长度的结构,而是采用TLV结构  //<---TLV(Type,Length,Value)三元组--->定义匹配字段,称为OpenFlow可扩展匹配

同时,该协议规定一台交换机可以和多态controller连接,增强可靠性。
可以通过controller命令消息变换角色。
并且从OpenFlow1.2开始支持IPV6协议

(四)OpenFlow 1.3(长期支持稳定版)

支持的匹配关键字增加到40个,足以满足当时的网络应用需求

(五) OpenFlow 1.4(基于1.3的改进版)

主要增加了流表同步机制,能够让多个流表可以共享相同的匹配字段。而且还可以定义不同的动作

(六)OpenFlow 1.5

主要变化是流水线的处理流程。在入向匹配的基础上增加了出向匹配的过程

(七)由于1.0与其他版本不兼容,所以将1.0和1.3版本作为长期支持的稳定版本

后续版本的发展,要维持版本的一个兼容性

五:单流表到多级流表的构架(对四的整理回顾)

(一)单流表---OpenFlow 1.0

随着越来越多样化的网络需求,流表变得十分臃肿。单流表对硬件的需求越来越高

(二)多级流表+组表---OpenFlow 1.1-1.4

多张流表串联起来形成流水线,数据包的匹配在流水线的处理过程中完成

(三)出入向匹配---OpenFlow1.5

该版本中增加了入向匹配和出向匹配两个阶段

原文地址:https://www.cnblogs.com/ssyfj/p/11620365.html

时间: 2024-11-08 04:11:10

软件定义网络基础---Openflow概述的相关文章

软件定义网络基础---OpenFlow流表

一:流表 (一)流的概念 我们把同一时间经过同一网络中,具有某种共同特征或属性的数据,抽象为一个流 比如:我们将访问同一个地址的数据视为一个流 流一般是由网络管理员定义的,可以根据不同的流执行不同的策略,在OpenFlow中,数据都是作为流进行处理的.所以流表就是针对特定流的策略表项的集合,负责数据包的查找和转发 一张流表包含了一系列的流表项flow entries (二)流表项组成 (包头域.计数器.动作表3个) (三)包头域 (四)计数器 (五)动作表 动作表用于指示交换机,在收到匹配的数据

软件定义网络基础---OpenFlow协议

原文地址:https://www.cnblogs.com/ssyfj/p/11623514.html

软件定义网络基础---南向接口协议概述

一:什么是南向接口协议 南向接口就是控制器与交换机之间的通信协议 二:南向接口协议的主要任务 不同的南向接口协议有不同的实现目标 三:已实现的南向接口协议 (一)OpenFlow协议 OpenFlow是伴随着SDN一起出现的,所以说是最早的南向接口协议 (二)OF-Config协议 用于OpenFlow交换机的配置与管理,是OpenFlow的伴侣协议,赋值OpenFlow交换机的管理配置 (三)NETCONF 最早作为一种网管协议被提出来的,用于网络设备的配置与管理. 在SDN兴起后,被用作SD

软件定义网络基础---REST API概述

一:什么是REST API REST API是北向接口的主流设计方式 API是应用程序编程接口,是预先定义好的函数,可以供应用程序或开发人员访问调用 REST (Representational State Transfer,表述化状态转移)首次出现在2000 年 Roy Thomas Fielding 的博士论文中,指的是一组架构约束条件和原则. (一)REST和API关系 而满足REST约束条件和原则的设计规范或者架构风格,我们称之为RESTful,遵循RESTful设计的API就是REST

软件定义网络基础---SDN控制平面

一:SDN控制平面 一个或多个SDN控制器组成,是网络的大脑. ? 对底层网络交换设备进行集中管理,状态监测.转发决策以及处理和调 度数据平面的流量: ? 通过北向接口向上层应用开放多个层次的可编程能力. (一)典型的SDN控制器体系架构 SDN控制平面分为6层 南向接口层主要对各种南向接口协议的支持,如Open Flow,Netconf,OVSDB等,控制器通过接口层的通道实现对底层网络的管理 抽象逻辑层主要是将服务抽象出来,实现各种通信协议的适配,为各模块和应用提供一致的服务 基础网络层在任

软件定义网络基础---SDN的主流构架

一:基于不同标准的主流构架 二: ONF定义的SDN基本构架 (一) 四个平面.两大接口 三:四个平面 (一)数据平面 数据平面是由若干网元(Netword Element)构成,每个网元包括一个或多个SDN数据路径(DataPath) SDN DataPath是一个逻辑上的网络设备,负责转发和处理数据.没有控制能力 ONF标准化了OpenFlow协议.在该协议中数据平面被抽象为一个由多级流表驱动的转发模型  (二)控制平面 第二个任务是:收集网络的实时状态,为SDN应用... SDN控制器是整

软件定义网络基础---SDN的核心思想

一:SDN包含的核心思想:解耦,抽象,可编程 二:解耦 (一)SDN网络解耦思想 解耦是指将控制平面和数据平面进行分离,主要为了解决传统网络中控制平面和数据平面在物理上紧耦合导致的问题 控制平面和数据平面之间不需要相互依赖,只需要遵循一定的开放接口即可进行通信 (二)传统网络比较 传统网络 在传统网络中数据平面和控制平面没有分离. 在同一个网络设备中,设备的转发行为基于控制协议生成的转发表. 比如:二层交换机基于MAC地址表进行转发.路由器基于路由表结合性转发. 而各种转发表是由设备的控制平面,

软件定义网络基础---SDN数据平面

主要介绍SDN架构和转发模型 一:传统网络设备 (一)传统设备控制平面和数据平面 (二)数据平面的任务 数据平面对数据包的处理,主要通过查询由控制平面所生成的转发信息表来完成 (三)传统网络数据平面数据包的处理流程 (四)传统网络数据转发处理特点 比如某一设备的数据平面,只能对某几种特定协议的数据包进行解析 功能模块固定,在网络生产时就已经固定.例如: 二:SDN数据平面架构 (一)主要变化 第一:在该SDN数据平面中,包处理流程中的所有模块,包括解析.转发和调度,都是可编程.协议无关的 第二:

软件定义网络基础---REST API的设计规范

一:REST API的设计 REST API是基于HTTP协议进行设计的,由HTTP动词+URI组成 (一)HTTP动词 (二)资源的原型 文档(Document): 文档是资源的单一表现形式: 集合(Collection): 集合是资源的一个容器(目录),可以向里面添加 资源(文档): 仓库(Store): 客户端管理的一个资源库,可以向仓库中新增资源 或者删除资源,或者从仓库中获取资源: 控制器(Controller): 可以执行一个方法,支持参数输入,结果返 回. (三)RESTful设计