Floodlight can be run as the network backend for OpenStack using a Neutron plugin. Neutron exposes a networking-as-a-service model via a REST API that Floodlight has implemented. There are two main components to this solution: a VirtualNetworkFilter module in Floodlight (that implements the Neutron API) and the Neutron RestProxy plugin that connects Floodlight to Neutron.
The VirtualNetworkFilter module implements MAC-based layer 2 network isolation in OpenFlow networks and exposed via a REST API. This module is included in Floodlight by default and does not depend on Neutron or OpenStack to be running. The VirtualNetworkFilter can be activated via a configuration file change described below. More information is available at Virtual Network Filter REST API.
The RestProxy plugin was designed to run as part of OpenStack’s Neutron service. If you are unfamiliar with Neutron, it is recommended you read the OpenStack network wiki and Administrator’s Guide to understand how the plugin works and detailed usage instructions. The following provides an example work flow that explains how Floodlight works with OpenStack.
Floodlight with the bigswitch neutron plugin now supports OpenStack Grizzly.
The following links provide instructions for installing and verifying the Floodlight OpenStack setup. For reference, the Floodlight OpenStack support is enabled by:
- The Big Switch Neutron Plugin at the OpenStack Neutron main repo: http://github.com/openstack/neutron
- The OpenStack devstack repo stable/grizzly branch: http://github.com/openstack-dev/devstack/tree/stable/grizzly