-
Notifications
You must be signed in to change notification settings - Fork 31
P4Pi Hackathon SIGCOMM21
A one day virtual hackathon for P4 educators, enthusiasts and newcomers.
Registration to the hackathon is included in the SIGCOMM'21 (low!) registration fee, and there is an aggressive fee waiver process.
Please register here.
The P4Pi hackathon will take place virtually on Monday, August 23rd. The hackathon will run from 10am ET / 4pm CET to 5pm ET / 11pm CET.
We will be using Gather.town for the hackathon. The hackathon room is located at the top of the screen.
Time ET/CET | Session |
---|---|
10:00/16:00 | Introduction |
10:15/16:15 | Projects brainstorming and forming groups |
10:30/16:30 | Hacking! |
12:30/18:30 | Status update |
13:00/19:00 | Lunch/Dinner break |
13:30/19:30 | Hacking! |
16:00/22:00 | Project presentations |
16:45/22:35 | Closing |
Information will be sent by email to registered participants, as well as posted here.
The SIGCOMM #sigcomm2021-hackathon-p4pi Slack channel will be used before and during the hackathon. Post your questions there!
It is recommended (but not mandatory) to have a P4Pi platform ready for the hackathon. Please refer to our Required Equipment page.
If you don't have a Raspberry Pi platform, you can use a VM instead. The instructions are here.
If you have registered before July 30th, and requested a P4Pi platform, your platform has been shipped.
We strongly recommend preparing a microSD card with the latest P4Pi image prior to the hackathon, as downloading the image and copying it can take significant time.
To do so, follow the instructions on the Installing P4Pi page.
If you are new to P4, we strongly recommend the P4 Learn page.
The following four short videos by Stephen Ibanez are also recommended:
- Part 1 - Introduction to Data Plane Programming
- Part 2 - Basics Part I
- Part 3 - Basics Part II
- Part 4 - Basic Tunneling Application
In addition, it is helpful to go through the tutorial exercises on Github.
The P4Pi videos playlist provides an introduction to P4Pi, and shows how to use it.
As P4Pi is useful to different groups of users, there will be 3 project tracks:
- Educators - for participants who aim to use P4PI in their classroom and that will use the hackathon to practice using the platform and develop additional contents.
- Contributors - for participants with previous knowledge in P4 who want to port their code to P4PI or to develop better tools, more applications or other target specific projects.
- Hackers - for participants with expert knowledge in P4 who wish to use the platform for research and development purposes, explore new use cases and come up with cool ideas.
A group can work on a project that applies to more than one track.
If you are participating in the hackathon, you can propose a project:
Proposer | Track | Topic |
---|---|---|
Theo Jepsen | Hackers | IP scrambling |
Peter Voros | Contributors / Hackers | Advanced firewall |
Radostin Stoyanov | Contributors | Multicast support |
Radostin Stoyanov | Hackers | Learning tags for classification |
Radostin Stoyanov | Contributors / Educators | Web interface improvements |
Radostin Stoyanov | Contributors | PSA support enhancements |
Noa Zilberman | Contributors | Porting P4 examples to P4Pi |
Noa Zilberman | Educators | Teaching enhancements |
Sandor Laki | Contributors | T4P4S Enhancements |
Sandor Laki | Contributors / Hackers | Another P4 backend on P4Pi: eBPF or BMv2 |
Sandor Laki | Contributors / Hackers | T4P4S with other DPDK PMDs |
Sahil Gupta | Hackers | TCP state machine in the data plane |
-
Q: Can I contribute to more than one track?
A: Yes, if your project applies to more than one track.
-
Q: I don't have a group. Can I still participate?
A: Yes! we will be forming groups during the hackathon
-
Q: I am only starting with P4. Can I still participate?
A: Yes! beyond the tutorials mentioned above, we will have mentors that will help during the hackathon. The best way to learn P4 is through hands-on experience.
-
Q: Is P4Pi just for teaching P4 or networking at large?
A: We envision P4Pi as a platform for teaching networking at large. As P4Pi is still a puppy, the examples are focused on P4.
We thank Network Programming Initiative for their generous support of the hackathon.
The following have contributed to the organization of this hackathon (in alphabetic order):
David Kis (ELTE), Sandor Laki (ELTE), Radostin Stoyanov (Oxford), Robert Soulé (Yale), Peter Voros (ELTE), Noa Zilberman (Oxford)
-
Bmv2 Exercises