Implementing an OpenFlow switch on the NetFPGA platform

  • Authors:
  • Jad Naous;David Erickson;G. Adam Covington;Guido Appenzeller;Nick McKeown

  • Affiliations:
  • Stanford University, California;Stanford University, California;Stanford University, California;Stanford University, California;Stanford University, California

  • Venue:
  • Proceedings of the 4th ACM/IEEE Symposium on Architectures for Networking and Communications Systems
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

We describe the implementation of an OpenFlow Switch on the NetFPGA platform. OpenFlow is a way to deploy experimental or new protocols in networks that carry production traffic. An OpenFlow network consists of simple flow-based switches in the datapath, with a remote controller to manage several switches. In practice, OpenFlow is most often added as a feature to an existing Ethernet switch, IPv4 router or wireless access point. An OpenFlow-enabled device has an internal flow-table and a standardized interface to add and remove flow entries remotely. Our implementation of OpenFlow on the NetFPGA is one of several reference implementations we have implemented on different platforms. Our simple OpenFlow implementation is capable of running at line-rate and handling all the traffic that is going through the Stanford Electrical Engineering and Computer Science building. We compare our implementation's complexity to a basic IPv4 router implementation and a basic Ethernet learning switch implementation. We describe the OpenFlow deployment into the Stanford campus and the Internet2 backbone.