Reference Guide

Table Of Contents
OpenFlow use cases
OS10 OpenFlow protocol support allows the flexibility of using vendor-neutral applications and to use applications that you
create. For example, the OS10 OpenFlow implementation supports L2 applications similar to the ones found in the following
websites:
https://github.com/osrg/ryu/tree/master/ryu/app (only L2 applications are supported)
https://github.com/osrg/ryu/tree/master/ryu/app
NOTE: OS10 supports applications based on OpenFlow versions 1.0 and 1.3.
Switching loop removal
Consider the case of a single broadcast domain where switching loops are common. This issue occurs because of redundant
paths in an L2 network.
Switching loops create broadcast storms with broadcasts and multicasts being forwarded out of every switch port. Every
switch in the network repeatedly re-broadcasts the messages and floods the entire network.
To solve broadcast storms in an OpenFlow network, a centralized controller makes all the control plane decisions and
manages the switches. The controller has the complete view of the topology. MAC address learning is centralized. OpenFlow
identifies the correct path and forwards the packets to the relevant switch thereby avoiding switching loops.
Reactive flow installation
Consider the case of dynamic learning of flows for bidirectional traffic. Flows are learnt as and when a packet arrives.
With dynamic learning in an OpenFlow network, the OpenFlow switch receives a packet that does not match the flow
table entries and sends the packet to the SDN controller to process it. The controller identifies the path the packet has to
traverse and updates the flow table with a new entry. The controller also decides the caching time of the flow table entries.
Configure OpenFlow
Ensure IP connectivity between the switch and the controller. When you convert the switch from Normal mode to OpenFlow
mode, the switch retains the management, interface, and AAA settings.
The following example lists the minimum configuration needed to establish the connection between the OpenFlow controller and
a logical switch instance.
1. Enter the OPENFLOW configuration mode.
OS10# configure terminal
OS10 (config)# openflow
OS10 (config-openflow)#
2. Enable the OpenFlow-only mode.
OS10 (config-openflow)# mode openflow-only
The system prompts you to reload the switch. Enter yes to enable OpenFlow-only mode.
NOTE:
When the switch starts up in OpenFlow mode, it disables all L2 and 3 protocols. Many CLI commands are not
available when the switch is in OpenFlow-only mode. For a list of commands that are available in OpenFlow-only mode,
see CLI commands available in the OpenFlow-only mode.
3. Configure a logical switch instance.
a. Option 1; for out-of-band management:
i. Configure an IP address for the management port. Ensure that there is IP connectivity between the switch and the
controller.
OS10# configure terminal
OS10 (config)# interface management 0/0
OS10 (conf-if-ma-0/0)# ip address 11.1.1.1/24
OS10 (conf-if-ma-0/0)# no shutdown
OS10 (conf-if-ma-0/0)# exit
548
OpenFlow