Skip to content

p4runtime-go-controllerP4Runtime controllers in Go

A Go SDK and p4ctl CLI, with runnable BMv2 examples.

Start with a local target ​

Use Go 1.26 or newer. The quickstart covers installing v2.0.1, starting BMv2 and writing your first controller. The examples show individual operations, and the CLI guide covers terminal workflows.

Protocol and target support ​

The SDK's protocol baseline is P4Runtime 1.3.0. Optional resources and newer fields depend on the target. BMv2 is used for integration testing. See target support for the tested paths and target-specific limits.

Released under the Apache License 2.0.