Definition - What does OpenFlow mean?
OpenFlow is an open communications protocol that acts on Layer 2 of the OSI model and provides access to the forwarding plane of a router or switch over the network. OpenFlow simply allows the path of data packets within the network of switches to be determined by software that is running on at least two routers.
OpenFlow was designed for network traffic management between switches and routers of different models and from different vendors. OpenFlow separates the programming of switches and routers from their hardware so that no hardware configuration needs to be done and all control can be flexibly attained through software. The University of California Berkeley and Stanford University collaborated for six years before OpenFlow finally went public in 2011.
Techopedia explains OpenFlow
There are three major parts involved in this technology:
- Flow tables, which are installed in the switches themselves
- A controller, which communicates with the switches through the OpenFlow protocol and sets the policies on traffic flow. It also sets up specific paths through the network or optimizes it for specific attributes like speed, reduced latency or number of hops.
- OpenFlow protocol, which enables the controller to securely communicate with the switches
OpenFlow was created because vendors sell switches or routers with limited programmability, leading to difficulties in traffic management and engineering, as well as inconsistent traffic flows between networking hardware from different vendors. OpenFlow provides this consistency by taking the control away from hardware and implementing it with software.