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

to deploy innovative protocols
in production networks.

What is OpenFlow?

OpenFlow is an open standard that enables researchers to run experimental protocols in the campus networks we use every day. OpenFlow is added as a feature to commercial Ethernet switches, routers and wireless access points – and provides a standardized hook to allow researchers to run experiments, without requiring vendors to expose the internal workings of their network devices. OpenFlow is currently being implemented by major vendors, with OpenFlow-enabled switches now commercially available.

How does OpenFlow work?

In a classical router or switch, the fast packet forwarding (data path) and the high level routing decisions (control path) occur on the same device. An OpenFlow Switch separates these two functions. The data path portion still resides on the switch, while high-level routing decisions are moved to a separate controller, typically a standard server. The OpenFlow Switch and Controller communicate via the OpenFlow protocol, which defines messages, such as packet-received, send-packet-out, modify-forwarding-table, and get-stats.

The data path of an OpenFlow Switch presents a clean flow table abstraction; each flow table entry contains a set of packet fields to match, and an action (such as send-out-port, modify-field, or drop). When an OpenFlow Switch receives a packet it has never seen before, for which it has no matching flow entries, it sends this packet to the controller. The controller then makes a decision on how to handle this packet. It can drop the packet, or it can add a flow entry directing the switch on how to forward similar packets in the future.

What can I do with OpenFlow?

OpenFlow allows you to easily deploy innovative routing and switching protocols in your network. It is used for applications such as virtual machine mobility, high-security networks and next generation ip based mobile networks.

Where can I learn more?

Here are some suggestions for further reading on OpenFlow:

» Read the OpenFlow White Paper

A seven page white paper from leading networking researchers that outlines the protocol, system architecture, and use cases.

» Read the OpenFlow Specification

The specification that defines the OpenFlow protocol (version 1.1.0 Implemented)

watch

» View the OpenFlow Presentation

A slide deck of a presentation on the internals and the motivation behind OpenFlow from Nick McKeown.

Would you like to join the community?

Become involved to help develop the spec?
Develop

Where can I participate in discussions?

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