openflow流表的技术实现难点都有哪些

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了openflow流表的技术实现难点都有哪些相关的知识,希望对你有一定的参考价值。

jsp,serlet是最主要的!其次就是在其基础上开发的框架,如:struts。持久层框架:如hibernate。解耦框架:spring。兄弟连老师建议,还是先学javaSE,这样对后期的学习会有很大的帮助。 参考技术A Open the window so that the fresh air can flow in.

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

一:流表

(一)流的概念

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

技术图片

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

技术图片

技术图片

(三)包头域

技术图片

技术图片

(四)计数器 

 技术图片

 (五)动作表

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

技术图片

动作分类

技术图片

OpenFlow端口类型 

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

技术图片

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

技术图片

技术图片

流表动作列表 

技术图片

二:数据包

(一)数据包的处理流程

技术图片

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

技术图片

(二)包头解析匹配流程

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

技术图片

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

三:后续版本的变化

(一)流表项结构的变化

技术图片

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

 技术图片

 技术图片

 

以上是关于openflow流表的技术实现难点都有哪些的主要内容,如果未能解决你的问题,请参考以下文章

ovs 删除openflow流表

3.3 OpenFlow 流表

SDN第三次作业

OpenFlow协议简单介绍

Neutron系列 : Neutron OVS OpenFlow 流表 和 L2 Population

OpenFlow交换机中的流表与传统交换机的转发表有啥不同?