Journal article
P4Pi: P4 on Raspberry Pi for networking education
- Abstract:
-
High level, network programming languages, like P4, enable students to gain hands-on experience in the structure of a switch or router. Students can implement the packet processing pipeline themselves, without prior knowledge of circuit design. However, when choosing a P4 programmable target for use in the classroom, instructors face a lack of options. On the one hand, software solutions, such as the behavioral model (BMv2) switch, are overly simplified and offer low performance. On the other hand, existing hardware solutions are closed source and expensive.
In this paper, we present P4Pi, a new, low-cost, open-source hardware platform intended for networking education. P4Pi allows students to design and deploy P4-based network devices using the Raspberry Pi board, which has a price tag of less than many academic textbooks. We describe the high-level design of the P4Pi platform, offer some suggestions for how P4Pi could be used in the classroom, and present some additional use-cases for applications and functionality that could be developed using P4Pi.
- Publication status:
- Published
- Peer review status:
- Peer reviewed
Actions
Access Document
- Files:
-
-
(Preview, Accepted manuscript, pdf, 451.6KB, Terms of use)
-
- Publisher copy:
- 10.1145/3477482.3477486
Authors
- Publisher:
- Association for Computing Machinery
- Journal:
- ACM SIGCOMM Computer Communication Review More from this journal
- Volume:
- 51
- Issue:
- 3
- Pages:
- 17-21
- Publication date:
- 2021-07-23
- Acceptance date:
- 2021-06-15
- DOI:
- ISSN:
-
0146-4833
- Language:
-
English
- Keywords:
- Pubs id:
-
1185494
- Local pid:
-
pubs:1185494
- Deposit date:
-
2021-07-09
- ARK identifier:
Terms of use
- Copyright holder:
- Laki et al.
- Copyright date:
- 2021
- Rights statement:
- Copyright © 2021 Copyright is held by the owner/author(s).
- Notes:
- This is the accepted manuscript version of the article. The final version is available online from the Association for Computing Machinery at: https://doi.org/10.1145/3477482.3477486
If you are the owner of this record, you can report an update to it here: Report update to this record