Skip to content

oomatz/p4-researching

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

p4-researching

My Researching work on P4.

Notice: Current testing environment are not based on the latest version of P4. You can using the scripts under docker/ to build a docker image for these tests. And all the examinations are running on software switch, a.k.a "bmv2", and I use simple_switch_grpc as demonstration.

Environment Setting

Before getting started with P4 programming, we need a P4-capabled environment for running those scenario. And this repository summarize several methods and provide several way to accomplish.


About this repository

P4 (with Mininet)

  • More details under src/
  • Contain lots of P4 practices and scenarios, which based on the open source software switch - BMv2 and mininet, with P4Runtime support to finish those work.

Notice:

v0 users: You can found some tutorials in branch:tutorials

v1 users: Use the master branch directly.

P4 with ONOS

Learning how to build an ONOS application which support P4. See more detail under onos/

Tracing P4Runtime

  • Look here, have some diagram about P4Runtime's dependencies.

Build network namespace

  • If you don't want to use mininet, you can use ip netns instead.
  • Under net/, have a demo script for building several network namespace.

Learning Materials

  • Provide some learning resources about Networking, which located in course/.
  • Welcome to contribute!

Author

National Cheng Kung University, 瞿旭民 (Kevin Cyu), kevinbird61@gmail.com

Activities


Reference

About

Testbed/Tutorials/Researching work on P4.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • P4 51.8%
  • Python 31.8%
  • Java 10.0%
  • Shell 4.7%
  • Makefile 1.1%
  • Dockerfile 0.4%
  • Go 0.2%