This whitepaper proposes OpenFlow: a way for researchers to run experimental protocols in the networks they use every day. OpenFlow is based on an Ethernet switch, with an internal flow-table, and a standardized interface to add and remove flow entries.
Our goal is to encourage networking vendors to add OpenFlow to their switch products for deployment in college campus backbones and wiring closets. We believe thatOpenFlow is a pragmatic compromise : on one hand, it allows researchers to run experiments on heterogeneous switches in a uniform way at line-rate and with high port-density; while on the other hand, vendors do not need to expose the internal workings of their switches.
Commercial switches and routers do not typically provide an open software platform, let alone provide a means to virtualize either their hardware or software.
the commercial solutions are too closed and inflexible, and the research solutions either have insufficient performance or fanout, or are too expensive.
The basic idea is simple: we exploit the fact that most modern Ethernet switches and routers contain flow-tables (typically built from TCAMs) that run at line-rate to implement firewalls, NAT, QoS, and to collect statistics. While each vendor’s flow-table is different, we’ve identified an interesting common set of functions that run in many switches and routers. OpenFlow exploits this common set of functions.
try her protocol in a network of OpenFlow Switches, with- out changing any end-host software.
Chances are, Amy is testing her new protocol in a network used by lots of other people.
A controller associates packets with their senders by managing all the bindings between names and addresses — it essentially takes over DNS, DHCP and authenticates all users when they join, keeping track of which switch port (or access point) they are connected to.
The OpenFlow Consortium aims to popularize OpenFlow and maintain the OpenFlow Switch Specification.
We believe there is an interesting market opportunity for network equipment vendors to sell OpenFlow-enabled switches to the research community.
run experiments on heterogeneous switches and routers in a uniform way, without the need for vendors to expose the internal workings of their products, or researchers to write vendor-specific control software.