对扩展openflow协议的一点思考


     软件定义X变得越来越火,正所谓,Software is eating the world。

软件定义网络也是如此。不论是在工业界还是学术界都将是一次伟大的革命,都在紧随着这个行业的方向,找自己的研究点,关注着标准化的进展。

各种Controller,原型系统都相继出现,还有的是是做SDN 的Debug,安全,总之让这个生态系统变得更加健壮。尽管南向接口标准非常多,可是openflow适合我们的学习,社区庞大。

以下记录下自己对这个的一点基本的看法。


     1.首先要明白的就是,如同其它通信协议一样,openflow定义了SDN controller和 OF SW的沟通规则,这样就能够集权控制交换设备。
     2.openflow message分为不同的类型。有控制流表行为的(如flow mod),有握手的(如helo),有宏观控制交换机的(如 ofp_set_config)。要明白它们的存在意义;
     3.我们假设自己的业务须要扩展openflow协议,就要考虑我们只须要添加一种消息类型呢?还是须要依据此消息控制交换机的行为?还是要操控详细每一个流表项的动作?假设须要控制每一个流的动作,我们就要为该message添加相应的action。

能够模仿flow mod,下图是Controller发送给交换机的一个flow mod的结构图(假例如以下发的flow_mod 的action-list中仅仅是一个OFPACT_OUTPUT来指明流的出port。后面能够有非常多其它动作)。







posted on 2017-05-19 08:56  blfbuaa  阅读(159)  评论(0编辑  收藏  举报