连接建立
消息列表
Feature | Controller用这个消息类型询问交换机支持的功能(feature request/reply) |
Configuration | Controller用这个消息类型配置或查询交换机参数(get/set config) |
Moddify-State | 操作流表和group表或者port属性 |
Read-State | 获取交换机的各种状态信息,比如Counter |
Packet-out | 向外发送匹配某条流表项的数据报文 |
Barrier | 保证不同消息的顺序 |
Role-request | 当交换机有多个Controller时,Controller用这个消息向交换机宣告自己的角色 |
Asynchronous-Configuration | 用于告诉交换机,它对哪些交换机发送过来的消息感兴趣 |
Packet-in | 当有报文匹配某条流表项,该项action是output to Controller-port时或交换机的流表为空时,这个报文就通过Packet-in的消息送到Controller |
Flow-removed | 当某条流表项被删除的时候,则Flow-removed消息告知Controller |
Port-status | 当端口状态变化时,交换机用这个消息类型向Controller通告状态变化 |
Error | 当交换机出现错误的,用这个消息类型告知Controller |
Hellow | Controller和Switch初始建立会话的,相互发送hello初始化 |
Echo | 用于确认Controller和Switch的连通性和延迟每5s |
Experimenter | 实验位,可以让厂商有各自的私有扩展 |
协议交互
- h1通过ARP协议获得h2的MAC地址,然后向h2发数据包,下面是过程。
- 交换机没有大脑(傻逼),只要不能匹配流表项,就要向Controller询问。
- ICMP