P4 Runtime is a silicon-independent and protocol-independent API that can be autogenerated from an unambiguous definition of a packet processing pipeline in P4. P4 Runtime API can be used for local or remote control plane applications.

Working Group

P4 Runtime is a project under P4.org's API working group. For more details on P4 Runtime please see the blog post penned by the API working group chairs Lorenzo Vicisano and Antonin Bas here. The P4.org API working group's charter can be found here.

We have a version of P4 Runtime designed and implemented for the P4 Runtime


Below are a few helpful resources for you to learn more about P4 Runtime.


P4 Runtime presentation by Google at P4 Workshop 2017

ONOS P4 Brigade


Initial draft specification for P4 Runtime


P4 Runtime GitHub Repository

Compiler with P4 Runtime support


P4 Runtime: Putting the Control Plane in Charge of the Forwarding Plane

Get Involved

We've made significant progress but there is more to be done. You can get involved by joining P4.org and then be joining API working group activities in one or more of the following ways.

Mailing List

Join the API working group's mailing list [email protected] to join the community of engineers working on P4 Runtime. To subscribe, visit http://lists.p4.org/mailman/listinfo/p4-api_lists.p4.org You can check out the public archive of the mailing list here.

Working Group Meeting

Join the API working group meetings - stay tuned for the announcement for next meeting date on [email protected] mailing list.