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

一:流表

(一)流的概念

我们把同一时间经过同一网络中,具有某种共同特征或属性的数据,抽象为一个流
比如:我们将访问同一个地址的数据视为一个流
流一般是由网络管理员定义的,可以根据不同的流执行不同的策略,在OpenFlow中,数据都是作为流进行处理的。所以流表就是针对特定流的策略表项的集合,负责数据包的查找和转发
一张流表包含了一系列的流表项flow entries

(二)流表项组成 (包头域、计数器、动作表3个)

(三)包头域

(四)计数器

(五)动作表

动作表用于指示交换机,在收到匹配的数据包后应该如何进行处理

动作分类

OpenFlow端口类型

动作转发,与交换机的端口直接相关。OpenFlow交换机的端口是交换机传递数据包的网络接口。交换机通过接口和其他交换机建立逻辑连接

物理端口、逻辑端口不做介绍

流表动作列表

二:数据包

(一)数据包的处理流程

其中匹配表按照优先级进行排序,从高到低
如果匹配成功,对应计数器进行更新并去执行相应动作
如果表项没有对应的动作执行,则数据包将会被丢弃
如果没有找到匹配的表项,则封装数据包转发给控制器

(二)包头解析匹配流程

包头解析是为了得到数据分组的12元组(包头域)

1.初始化包头
2.根据以太网类型得到VLAN或三层IP的信息
3.根据IP分组头中的协议类型,确定是TCP/UDP/ICMP协议
4.得到四层的TCP/UDP的源目的端口号或者ICMP类型和编码

三:后续版本的变化

(一)流表项结构的变化

(二)1.3版本中的组表和计量表

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

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

软件定义网络基础---OpenFlow流表的相关文章

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

一:OpenFlow概述 二:交换机模型架构 (一)OpenFlow构架三个组成成分 三:OpenFlow 1.0版本 自OpenFlow1.0发布以来,目前已经有多个版本的OF规范版本被发布 四:OpenFlow主要版本及特性 (一)OpenFlow 1.0 1.0版本中,只支持单流表.每个OpenFlow交换机中,都只有一张流表,用于数据包的查找.处理.转发. 并且只能同一台控制器进行通信 流表由多个流表项组成,每个流表项就是一个转发规则. 流表项有匹配字段.计数器和动作组成 (二)Open

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

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

Neutron 理解 (4): Neutron OVS OpenFlow 流表 和 L2 Population [Netruon OVS OpenFlow tables + L2 Population]

学习 Neutron 系列文章: (1)Neutron 所实现的虚拟化网络 (2)Neutron OpenvSwitch + VLAN 虚拟网络 (3)Neutron OpenvSwitch + GRE/VxLAN 虚拟网络 (4)Neutron OVS OpenFlow 流表 和 L2 Population (5)Neutron DHCP Agent (5)TBD OVS bridge 有两种模式:“normal” 和 “flow”.“normal” 模式的 bridge 同普通的 Linux

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

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

Neutron系列 : Neutron OVS OpenFlow 流表 和 L2 Population(7)

http://www.aboutyun.com/forum.php?mod=viewthread&tid=16563&highlight=neutron%2B%2B%CF%B5%C1%D0 问题导读: 1.OVS bridge有几种模式?2.Neutron 中的流表是怎样实现的? OVS bridge 有两种模式:“normal” 和 “flow”.“normal” 模式的 bridge 同普通的 Linux 桥,而 “flow” 模式的 bridge 是根据其流表(flow tables

openflow流表项中有关ip掩码的匹配的问题(控制器为ryu)

一.写在前面 唉,被分配到sdn安全方向,顶不住,顶不住,感觉搞不出来什么有搞头的东西.可若是让我水水的应付,我想我也是做不到的,世上无难事只怕有心人.好了,进入正题,本次要讨论的时一个比较细节的东西,在流表项中的有关ip掩码的问题.对了,本文适合于,有一定基础的openflow使用者,一点点就行. 二.问题描述 若不是机缘巧合,我甚至完全不会注意到这个问题,为什么,咱来看一个平时实验环境中最为常见的流表项长啥样,如图1                                      

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

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

Neutron系列 : Neutron OVS OpenFlow 流表 和 L2 Population(8)

问题导读: 1.怎样使用arp_responder ? 2.怎样搭建l2pop环境? 3. ARP Responder arp_responder 的原理不复杂.Neutorn DB 中保存了所有的端口的 MAC 和 IP 地址数据.而 ARP 就是一个虚机要根据另一个虚机的 IP 地址查询它的 MAC.因此,只需要 Neutron server 通过 RPC 告诉每个计算节点上的 ML2 agent 所有活动端口的 MAC 和 IP,那么就可以将 br-tun 变成一个供本机适用的 ARP P

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

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