This document introduces OpenFlow, an open platform that allows researchers to test new network ideas by giving them access and control over flow tables in switches. It describes OpenFlow's architecture and key components like the OpenFlow protocol, OpenFlow switches, and OpenFlow controllers like NOX that can be used to write network control software. It also provides illustrations of how packets are processed and forwarded in an OpenFlow network. The goal of OpenFlow is to provide a test environment for future Internet technologies at the flow level and packet level.