Please Note: This website has been archived and is no longer maintained.
See the Open Networking Foundation for current OpenFlow-related information.

Become an OpenFlow developer

We’d like to invite you to become involved in OpenFlow development if you aren’t already. There are many areas in which you can become involved in OpenFlow development, including:

  • specification: New features are periodically added to the OpenFlow protocol to address the needs of network operators.
  • OpenFlow switch implementation: There are many software- and hardware-based OpenFlow switches available; a number of these projects are open and welcome contributions from the community.
  • OpenFlow test suite: The test suite verifies that implementations are in compliance with the specification.
  • Controllers: Controllers are used to implement new ideas on top of an OpenFlow network.
  • Features: A number of people have developed features that plug in to existing controllers.

Mailing lists

You can browse past mailing list postings or subscribe via the following links:

Checking out OpenFlow

To get the most current development version of OpenFlow, use GIT and issue the following command:

git clone git://

This will check out the experimental branch of our repository to your local directory.

Developing an OpenFlow Controller

If you want to develop an OpenFlow controller, you can have a look at the basic controller that is part of the OpenFlow test suite. More full-fledged OpenFlow controllers include:

Bugs and Support

Please report and feature requests for the reference implementation or the test suite via Trac.

If you need support with a specific issue or have other questions please post to the openflow-discuss mailing list.


The OpenFlow wiki hosts many pages related are relevant to developers, from information about how to try OpenFlow in a virtual machine to feature proposals for the specification.