篇首语:本文由小编为大家整理,主要介绍了软件定义网络基础---OpenFlow流表相关的知识,希望对你有一定的参考价值。
我们把同一时间经过同一网络中,具有某种共同特征或属性的数据,抽象为一个流
比如:我们将访问同一个地址的数据视为一个流
流一般是由网络管理员定义的,可以根据不同的流执行不同的策略,
在OpenFlow中,数据都是作为流进行处理的。
所以流表就是针对特定流的策略表项的集合,负责数据包的查找和转发
一张流表包含了一系列的流表项flow entries
动作表用于指示交换机,在收到匹配的数据包后应该如何进行处理
动作转发,与交换机的端口直接相关。OpenFlow交换机的端口是交换机传递数据包的网络接口。
交换机通过接口和其他交换机建立逻辑连接
物理端口、逻辑端口不做介绍
其中匹配表按照优先级进行排序,从高到低
如果匹配成功,对应计数器进行更新并去执行相应动作
如果表项没有对应的动作执行,则数据包将会被丢弃
如果没有找到匹配的表项,则封装数据包转发给控制器
包头解析是为了得到数据分组的12元组(包头域)
1.初始化包头2.根据以太网类型得到VLAN或三层IP的信息3.根据IP分组头中的协议类型,确定是TCP/UDP/ICMP协议4.得到四层的TCP/UDP的源目的端口号或者ICMP类型和编码
以上是关于软件定义网络基础---OpenFlow流表的主要内容,如果未能解决你的问题,请参考以下文章