A data plane is an infrastructure layer that helps move data across a network in the form of packets. In many cases, the data plane works in response to operations performed via the control plane—which centrally manages infrastructure changes such as configuration updates, security policy enforcement, and node management.
The data plane is therefore responsible for forwarding data onwards from source to destination. Without the data plane as an intermediary, it'd be impossible to properly manage your infrastructure components or practice software-defined networking.
How does a data plane work?
Despite their relationship, the data plane exists separately from the control plane. It does the following as a result:
Receives and analyzes data packets
Forwards data to its destination
Ensures reliable and accurate packet delivery
Performs error detection and correction
Enables flow control and packet prioritization on busy networks
Adheres to routing rules and other constraints imposed by the control plane, such as those governing request frequency (for updating resources, etc.)
The data plane operates at layer 2 of the OSI model, also called the data link layer. It can either be hardware-driven or software-driven depending on your performance and scalability needs. It relies on one or more of the following internet protocols to function (aside from using HTTP for its own APIs to enable configuration):
Address Resolution Protocol (ARP)
Ethernet
Does HAProxy use the data plane?
Yes! HAProxy products support load balancing, reverse proxying, centralized management (via HAProxy Fusion) and other functions that require a reliable data plane. Data Plane API also powers many backend functions that govern how data flows between integrated products and infrastructure components.
To learn more about data plane functionality in HAProxy, check out our HAProxy Data Plane API documentation or Announcing HAProxy Data Plane API 3.0 to view our latest enhancements.