OpenFlow Switch Protocol 1.5.1详细解读之概览篇

    OpenFlow是一种软件架构或者讲是一种网络架构。

本文基于openflow标准而来,标准下载网址如下所示:点击打开链接

1、openflow的介绍

OpenFlow Switch Protocol 1.5.1详细解读之概览篇

如图所示为openflow switch的主要构成。其中包括一个或者多个openflow channel,一个或者多个flow table,一个group table。

1、 openflow switch通过openflow switch协议和controller(控制器)相互通信,后面会详细讲解这些通信消息,这些协议消息被分为三类(1)控制器到交换机的消息(Controller-to-Switch Messages)     (2)异步消息(Asynchronous Messages)   (3)对称消息(Symmetric Messages)。通过openflow switch protocol,控制器可以管理交换机,可以增加修改删除flow table中的entry。每一个flow table包含一系列的flow entry,每个flow entry包含match fields(匹配项),counters,和一系列应用于匹配上了match fields的报文的instructions(动作)。

2、从图上可以看到pipeline中有很多flow table,那么这些flow tabel是按照怎样的规则进行匹配的呢。这里标准协议进行了规定:匹配从第一个flow table开始,这里可能有两种结果匹配上和没匹配上。对于匹配上match项的报文,则与match相关联的instructions(动作)将被执行,但是没有匹配上的报文的处理则依赖于table-miss entry的配置可能的结果有:通过openflow channel上送给控制器,丢弃,或者送给下一个flow table。


3、instructions包含一些actions或者modify 一些pipeline的情况。instruction中的action的作用包括报文转发,报文修改或者group table处理。