257 | | ==== (10/22) ====#w7 |
258 | | |
| 263 | |
| 264 | ==== (10/24) ==== #w7 |
| 265 | Some terms to keep things organized: |
| 266 | * Control plane : the collection of communication channels just visible to the controllers. Assumed to be isolated from the data plane, in which the switches and network hosts reside. |
| 267 | * network event : a message that notifies a controller of network state change, e.g. a switch joining the network, or a new !OpenFlow message. |
| 268 | * Control entity : a SDN controller. May or may not be connected to switches but nevertheless capable of influencing network state by processing !OpenFlow messages or its derivatives. |
| 269 | * Control plane server : a control entity that exports services to other controllers, and may subscribe to other controllers for network events. Also called "subscribers". |
| 270 | * Control plane client : a control entity that relays network events to control entities interested in them. |
| 271 | |
| 272 | A server is configured with the information required to advertise its services and subscriptions. A single controller can also be both client and server. |
| 273 | |
| 274 | Three unique control messages were defined using OF Vendor messages: |
| 275 | 1. OFExportsRequest : sent by a control plane client when initially connecting to a control plane server. Akin to an OFFeatureRequest. |
| 276 | 1. OFExportsReply : sent in response to a OFExportsRequest. Contains the names of the services exported by the server, and the events that it would like to subscribe to. |
| 277 | 1. OFExportsUpdate : sent by a server to its clients, when it receives (as a client) any new OFExportsReply messages from its servers. |
| 278 | |
| 279 | The Reply and Update messages convey subscriptions as one of three categories: |
| 280 | 1. Device : network host related events such as a host join, departure, or address/VLAN change. |
| 281 | 1. Switch : !OpenFlow switch joins and leaves. |
| 282 | 1. Message : !OpenFlow messages distinguished by message type. |
| 283 | |
| 284 | This reflects the event types that Floodlight recognizes by default, is well-defined, and is probably comprehensive enough to convey a very wide range of network events. The aim here is to define subscriptions as a combination of events from these event categories. |
| 285 | |
| 286 | To keep things simple, of the Message category of events, focus will be placed on the Packet_In type (0x10), which is practically a catch-all for network host related messages. If more fine-tuned filtering is requires, a OFMatch structure may probably be used to describe the constraints on the types of Packet_Ins a subscriber may wish to hear about. |
| 287 | |