The goal of this tutorial is to teach you the basics of P4, P4Runtime, and ONOS. It is targetted to beginners who have little or no knowledge of the P4 language and would like to learn more using ONOS as the control plane. It includes hands-on exercises where you will learn how to create an emulated network of P4 devices using Mininet and BMv2 (the reference P4 software switch) controlled by ONOS via P4Runtime, while using a simple P4 program implementing a custom tunneling protocol named "MyTunnel".
If you already have intermediate knowledge of the P4 language and you would like to learn more about using ONOS for more realistic networking applications, we suggest you use this tutorial:
While you go through the slides, it is a good idea to start downloading the VM (~4 GB):
Instructions to download the ONOS+P4 Tutorial VM
Click here to download/open the slides in a new browser window (via Google Slides)
Here are some pointers for you to learn more about P4 and ONOS: