An event organized by the P4 Education Working Group and the Cornell-Princeton Network Programming Initiative, in conjunction with NSDI 2019
Held in Boston, MA, USA on March 1, 2019
The P4 Hackathon aims to develop novel, proof-of-concept data plane applications, and to support the open-source community through the development of tools and infrastructure.
The hackathon is intended for P4 users of all levels – from beginners to experts.
We are keen to meet new people, see new faces, and create new collaborations between (and within) academia and industry!
Venue
Sheraton Boston 39 Dalton St Boston, MA 02199 USA Public Garden Room
The event is co-located with NSDI 2019.
Registration
Please note that there are a limited number of spaces.
Agenda
This agenda is tentative, please check closer to the date!
- 8:00 – 10:00am
- Registration
- 8:30 – 10:00am
- P4 crash course for beginners
- 10:00 – 10:15
- Welcome and Introductions, finding common interests to work on
- 10:15 – 17:25
- Breaking into groups, hack!
- 17:25 – 17:55
- Project presentations
- 17:55 – 18:00
- Closing
Diversity and inclusivity
The P4 hackathon aims to increase the diversity and inclusivity of the P4 community. Everyone should feel welcome taking part in the event, and we will enforce a strict no-harrasement code of conduct.
Participants who are attending NSDI 2019, can apply for NSDI’s student and diversity travel grants. P4 specific information is coming soon!
Organization
- Noa Zilberman (chair), University of Cambridge
- Robert Soulé (chair), Università della Svizzera italiana
- Nate Foster, Cornell University
- Jennifer Rexford, Princeton University
- Changhoon Kim, Barefoot Networks
- Pietro Bressana, Università della Svizzera italiana
Software
P4App
- To install the Docker image:
- Install Docker
- Follow the instructions on the Docker website: https://docs.docker.com/install/
- Alternatively, you can use a package manager. For example, on OSX, you can install Docker with Homebrew
$ brew cask install docker-toolbox
- Clone the repository
$ git clone --branch p4app --recurse-submodules https://github.com/p4lang/tutorials
- Change into an exercise directory
$ cd tutorials/p4app-exercises/basic.p4app
- Run an example to start the image download
$ make run
- Install Docker
Virtual Machine
You can either download a virtual machine image or build it from source. Note that both of these procedures can take around 45 minutes depending on the speed of your network connection.
- To download the virtual machine image
- Install VirtualBox
https://virtualbox.org - Download virtual machine image
P4 Tutorial 2018-06-01.ova - Import virtual machine into VirtualBox
Open VirtualBox, select “File > Import Appliance”, and navigate to the downloaded file. - Boot virtual machine
Select “P4 Tutorial 2018-06-01”, and click “Start”.
- Install VirtualBox
- To build the virtual machine from source
- Install VirtualBox
https://virtualbox.org - Install Vagrant
https://vagrantup.com - Clone the tutorial repository
$ git clone https://github.com/p4lang/tutorials
- Navigate to the vm directory
$ cd tutorials/vm/
- Build the virtual machine
$ vagrant up
- Install VirtualBox
- Final steps
After the machine boots, you should have a graphical desktop with all required software pre-installed, logged in as username “p4” (with password “p4”).
Special Thanks to our Sponsors:
Contact the organizers for sponsorship opportunities.
This is not a USENIX event, but we would like to thank the support of USENIX.