p4-learning
Compilation of P4 exercises, examples, documentation, slides for learning or teaching (by nsg-ethz)
tutorials
P4 language tutorials (by p4lang)
p4-learning | tutorials | |
---|---|---|
2 | 2 | |
508 | 1,270 | |
2.6% | 3.1% | |
6.9 | 8.3 | |
7 months ago | 20 days ago | |
Python | P4 | |
GNU General Public License v3.0 only | Apache License 2.0 |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
p4-learning
Posts with mentions or reviews of p4-learning.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-07-04.
-
Curious about networking
I recommend P4. It is well-maintained, has good tutorials and an active community (practically all of academia in network programming uses it): - https://p4.org/ - https://github.com/p4lang/tutorials - https://github.com/nsg-ethz/p4-learning Intel now closed Tofino (which made P4-programmable chips), but some others are developing P4-capable switches. Others in the tbps area usually use something very similar. It's all very closed off. Broadcom did open access NPL (https://nplang.org/) once, but it seems they stopped half-way. Their repositories are not maintained at all.
-
Sdwan - per packet steering
The most simple implementation is probably packet spraying. It's basically ECMP, but instead of hashing over your flow-defining tuple, you randomly take any of configured next hops for the ECMP group. https://github.com/nsg-ethz/p4-learning/blob/master/exercises/05-ECMP/solution/p4src/ecmp.p4
tutorials
Posts with mentions or reviews of tutorials.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-07-04.
-
Curious about networking
I recommend P4. It is well-maintained, has good tutorials and an active community (practically all of academia in network programming uses it): - https://p4.org/ - https://github.com/p4lang/tutorials - https://github.com/nsg-ethz/p4-learning Intel now closed Tofino (which made P4-programmable chips), but some others are developing P4-capable switches. Others in the tbps area usually use something very similar. It's all very closed off. Broadcom did open access NPL (https://nplang.org/) once, but it seems they stopped half-way. Their repositories are not maintained at all.
- In technical detail, how does the internet router work?
What are some alternatives?
When comparing p4-learning and tutorials you can also consider the following projects:
Kathara - A lightweight container-based network emulation system.
nbgrader - A system for assigning and grading notebooks
Learning-Python - This repo is made for the Learning Python blog course. In this course, all relevant material is provided for the course. For any suggestions, feedback or doubts, feel free to contact me via LinkedIn or Gmail.
exam-terminal - A terminal/console based exam, test, or quiz tool for educators and learners
data-structures-for-teaching - Implementations of some Data Structures and Algorithms, with different approaches and some practical applications.
oppia - A free, online learning platform to make quality education accessible for all.