TECHNICAL STEERING TEAM (TST)
Nate Foster (TST Chair)
Many targets (in particular targets following an SDN architecture) implement a separate control plane and a data plane. P4 is designed to specify only the data plane functionality of the target. P4 programs do not specify the behavior of the control plane.
Separately, P4 programs can also be used along with P4Runtime to partially define the interface by which the control plane and the data-plane communicate. In this scenario, P4 is first used to describe the forwarding behavior and this in turn is converted by a P4 compiler into the metadata needed for the control plane and data plane to communicate. The data plane need not be programmable for P4 and P4Runtime to be of value in unambiguously defining the capabilities of the data plane and how the control plane can control these capabilities.