P4 (named for “Programming Protocol-independent Packet Processors”) is a language for expressing how packets are processed by the data plane of a forwarding element such as a hardware or software switch, network interface card, router, or network appliance.
The P4 Project is open to participation by any individual or organization willing and able to make an active and material contribution to the following objectives:
- Build a thriving open source community dedicated to the use and improvement of the P4 language.
- Utilize P4 to describe how a forwarding plane should process packets.
- Promote standardization and improvement of the P4 language
- Enable industry participants to develop new technologies that function in accordance with the specification.
- Benefit consumers and the industry by facilitating adoption of the P4 language.