P4-Learning Documentation
This documentation contains helpful information that will help you getting started with P4.
The questions that get asked often (if any) will be added to the FAQ section (which at the moment is empty). Useful resources and documentation will also be added if something new comes or if people ask about it.
Before asking something check if the solution to your problem can be found in any of the following documents and links, or examples.
Getting Started With P4:
- Build VM Build The VM from scratch using Vagrant
- Download VM Get the OVA Image to directly import it to VirtualBox
- P4 Tutorials Official P4 tutorials (they use the P4Runtime).
- P4 Utils Mininet Extension to build P4 networks
P4 References
- P4 Spec P4 Language and Related Specifications.
- P4-guide Repository which contains a lot of useful information, examples, tests of what works or what does not, etc.
- P4 Repositories Guide to the public p4lang repositories
Resources
- Manual Topology Setup Example that shows how to run a small topology without using mininet
- Useful Scripts Set of useful scripts
- Simple Switch Bmv2 Simple Switch implementation documentation
- Control Plane Simple Switch Control plane documentation
- Debugging and Troubleshooting Debugging and Troubleshooting guidelines
- Scapy Scapy Packet Manipulation library written in python
- FAQ List of most asked questions from students