F5 GLOSSARY

OpenFlow

What is OpenFlow?

OpenFlow is a technology that enables SDN (Software Defined Networking), a software-driven approach to network configuration.

Traditionally, network devices combined two key functions: the control plane, which handles route management, and the data plane, which handles data forwarding. The defining feature of OpenFlow is the separation of these two functions. The OpenFlow controller is responsible for the control plane (generally implemented in software), while the OpenFlow switch handles the data plane (typically provided as hardware, though software implementations like Open vSwitch also exist).

Another key feature of OpenFlow is the use of Flow Tables, which define data forwarding rules. Flow Tables specify conditions for packet processing, such as MAC addresses, IP addresses, port numbers, VLAN IDs, or MPLS labels, and corresponding actions like forwarding packets to specific ports, modifying specific fields, or dropping packets.

Using Flow Tables, OpenFlow can perform functions typically handled by Layer 2 (L2) switches, routers, or Layer 3 (L3) switches. It can also implement behavior akin to firewalls or load balancers. Additionally, OpenFlow supports failover mechanisms, allowing automatic rerouting via alternative paths if a switch fails, as well as network segmentation similar to VLANs. Networks composed of multiple OpenFlow switches are centrally managed and controlled by the OpenFlow controller.

OpenFlow provides a highly flexible and programmable way to define and manage network configurations and functions, offering significant advantages over traditional hardware-based network infrastructure.