SDN--OpenFlow基础学习

xiaoxiao2021-02-28  65

OpenFlow是一种用于controller和网络设备之间通信,被controler用来控制网络设备,网络设备用来反馈信息的标准化南向借口。OpenFlow还规定了网络设备对报文的转发和编辑方式。

一、OpenFlow的标准分析

1、交换机转发平面

逻辑上有两部分组成:Port端口和流表(Flow table)其中Port端口表示:跟Controller通信的通道(controller channel)可以认为是一个特殊的Port

流:指在一段时间内,经过同一个网络的一些列具有相同属性的顺序发送的报文集合。

流表:就是芯片中一张张的转发表,每张流表都有很多的流表项(Flow Entry)组成。

流表项:是流表的最小单位,每条流表项对应了网络中传输的一条流。

流表项的6个组成部分:

MatchField:匹配字段

Priority:(优先级)

Counter:计数器

Instruction:指令

Timeout:(超时时间)

Cookie:附属属性;

2、controller和交换机之间的消息分为三大类,分别是Controller-to-switch消息,Asynchronous(异步)消息(也就是Switch-to-control)、Symmetric(对称)消息。

3.1Controller-to-switch消息

消息类型:

1)Feature

2)Configuration

3)Modify-state

4)Read-state

5)Packet-out

6)Barrier

7)Rolo-request

8)Asynchronous-configuration

3.2Asynchronous(异步)消息

1)packet-in

2)Flow-removed

3)Port-status

4)Error

3.3Symmetric(对称)消息

1)Hello

2)Echo

3)Experimenter

4、OpenFlow Channel(交换机通道)

OpenFlow Channel是指交换机跟Controller之间的连接通道,可以使带外管理通道,也可以使带内管理口,常用的是带外管理口。连接可以使TCP连接,也可以是TLS连接。使用TCP/TLS连接主要是为了保证可靠性。如果多个交换机跟多个Controller连接,那么创建多条TCP/TLS连接。

5、Controller有三种角色

1)Master

2)Slave

3)Equal

6、Openflow系统性能指标

1)交换机处理带宽---由芯片决定

2)流表项数量-------有芯片决定

3)流表项下发能力---每秒中能安装多少条流表项;通过提高CUP主频或优化软件(主要是优先级的排序)。

4)To-controller报文转发--报文在交换机里面匹配到某条流表项,这条流表项的动作是吧报文送到ControllerController经过处理之后可能会再把报文通过交换机转发出去。性能取决于Controller和交换机两个元素。

二、OpenFlow Controller和交换机工作流程

1)系统初始化

交换机系统初始化的时候,都会有默认的流表,流表里面有一条默认的流表项。(默认的丢弃报文或所有报文都转发给Controller

2)业务驱动Controller增加/删除/修改流表项

Controller进行下发流表项,对流表项做一系列动作。

3)报文在交换机中转发

报文根据交换机的配置去查找指定流表,执行相应的指令。

三、Controller(控制器)

Controller是一个运行在独立服务器上的软件程序,可以用不同的语言来实现,可以运行在不同的操作系统上。目前包括:SDN controllerOpenflow controller,其中Openflow controller只支持openflow一种南向接口协议去控制转发设备。

Controller属性:

1) 北向接口:最简单最传统的北向几口是CLISNMP、目前最流行的是REST API接口。

2) 南向接口:openflowSNMP/NetConfigOF-configXMPPLISPBGP-LS;

3) 控制方式:集中控制和分布式控制(Onix

4) 对物理和虚拟设备的通用管理

5) 支持Openflow标准。

四:Ryn控制器

Ryn控制器是日本NTT一个实验室发起的Controller项目。它是基于Python开发的,是唯一一个支持OpenFlow1.3的开源控制器。云计算平台Openstack可以直接调用Ryu控制器来配置OVS

转载请注明原文地址: https://www.6miu.com/read-61532.html

最新回复(0)