P4

Introduction

P4 (named for “Programming Protocol-independent Packet Processors”) is a domain specific programming 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.
P4 is a project hosted by the Open Networking Foundation (ONF).

P4 SRv6 Fabric tutorial

The P4 SRv6 Fabric tutorial teaches you with a sequence of hands-on exercises how to build an SRv6-enabled fabric using P4, P4Runtime Agent and Open Network Operating System (ONOS™).
The Developer/Tutorial GitHub repository is here.
The document with instructions can be found here.

SRv6 uSID implementation in P4

In the context of the ROSE project, the Networking Group from University of Rome Tor Vergata, Italy, has implemented the SRv6 uSID solution using the P4 language.

The team provides also a demo that runs on a mininet topology.

The source code and the detailed instruction to run the demo are available here.