OpenFlow交换机规范

OpenFlow 交换机规范(概要) 1 介绍 本文档介绍的OpenFlow交换机的要求。规范包括交换机的组件 和基本功能,和OpenFlow的协议,通过一个远程控制器来管理一个OpenFlow的交

OpenFlow交换机规范(概要) 1介绍 本文档介绍的OpenFlow交换机的要求。规范包括交换机的组件和基本功能,和 OpenFlow的协议,通过一个远程控制器来管理一个OpenFlow的交换机。 2交换机组成 OpenFlow的交换机包括一个或多个流表和一组表,执行分组查找和转发,和到 一个外部控制器OpenFlow的信道(图1)。该交换机与控制器进行通信,并 通过OpenFlow的协议控制器管理的交换机。 控制器使用OpenFlow的协议,它可以添加、更新和删除流流表中的表项,既主 动或者被动响应数据包。在交换机中的每个流表中包含的一组流表项;每个流 表项包含匹配字段,计数器和一组指令,用来匹配数据包(见5.2)。 匹配开始于第一个流程表,并可能会继续额外的流表(见5.1)。流表项匹配 数据包按照优先级的顺序,从每个表的第一个匹配表项开始(见5.3)。如果 找到匹配的项,那么具体流表项按照指令去执行。如果在流表中未找到匹配 项,结果取决于漏表的流表项配置:(例如,数据包可被转发到OpenFlow的 信道控制器、丢弃、或者可以继续到下一个的流表,见5.4)。 流表项可能包含数据包转发到某个端口。这通常是一个物理端口,但它也可能 是由交换机定义的一个逻辑端口或通过本规范中定义的一个保留的端口(见 4.1)。保留端口可以指定通用的转发行为,如发送到控制器、泛洪、或使用 非OpenFlow的方法转发。如“普通”交换机转发处理(见4.5);而交换 机定义的逻辑端口,可以指定链路汇聚组,__或环回接口(见4.4)。 流表项相关的行动,也可直接把数据包发送到组,进行额外的处理(见5.6)。组 表示一组泛洪的指令集,以及更复杂的转发(如多路径,快速重路由,链路聚 合)。作为间接的通用层,组也使多个流表项转发到一个单一的标识符(例如 一个共同的下一跳的IP转发)。这种抽象的行为使相同的输出行动非常有效。 假如将正确的匹配和指令规范保护起来,交换机设计者可以任意的实现内部结构。 例如,如果需要使用一个流表项将所有的组转发到多个端口,交换机设计师可 以在硬件转发表中用一个单一的位掩码去实现。另一个例子是匹配;如果 OpenFlow交换机使用用不同数量的硬件表物理实现,那么流水线就会被暴露出 来。 3名词解释 本节介绍了关键OpenFlow的规范条款: •字节:一个8位字节。 •数据包:以太网帧,包括报头和有效载荷。 •端口:数据包进入和退出OpenFlow的流水线地方(见4.1)。可以是一个物 理端口,由交换机定义一个逻辑端口,或由OpenFlow的协议定义一个保留端 口。 •流水线:在一个openflow交换机中提供匹配、转发和数据包修改功能的流表 连接__。 •流表:流水线的一个阶段,包含若干流表项。 •流表项:在流表中用于匹配和处理数据包的一个元素。它包含用于匹配数据包 的匹配字段、匹配次序的优先级,跟踪数据包的计数器,以及对应的的指令集。

腾讯文库OpenFlow交换机规范