SDN基础-OpenFlow协议
一、Openflow消息类型
controller-to-switch 消息
asynchronous消息
symmetric消息
二、Openflow消息格式
由OpenFlow头部和OpenFlow消息体组成
Openflow Header格式
Openflow Header的数据结构
OpenFlow消息体
与具体的消息类型有关,消息类型是一种枚举类型,每种消息类型被定义为一个常数
三、基于Openflow的SDN通信流程
- 控制器和交换机连接的建立
- 双方建立TLS隧道后,方法发送hello消息进行版本协商
- 协商完成后,控制器和交换机之间发送Features消息,获取交换机参数,参数包括支持的buffer数目、流表数、Actions等
- 控制器发送SET_CONFIG消息向交换机发送配置参数
- 通过GET_CONFIG消息得到交换机修改后的配置信息
- 控制器与OpenFlow交换机之间,发送PACKET_OUT和PACKET_IN消息。通过PACKET_OUT中内置的LLDP包进行网络拓扑的探测
- 控制器通过FLOW_MOD向控制器下发流表操作