Kathara
p4-learning
Our great sponsors
Kathara | p4-learning | |
---|---|---|
4 | 2 | |
392 | 498 | |
3.6% | 2.6% | |
9.1 | 6.9 | |
11 days ago | 7 months ago | |
Python | Python | |
GNU General Public License v3.0 only | GNU General Public License v3.0 only |
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.
Kathara
-
The BPF-programmable network device
Good old netkit.
Apparently the name has changed to Khatara:
https://www.kathara.org/
- Kathará: open-source container-based network emulation system with P4 supports
-
Resources for learning networking?
https://www.kathara.org is excellent if you want to learn in a hands on, ground up kinda way.
- Kathará – Lightweight Container-Based Network Emulation System
p4-learning
-
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
What are some alternatives?
netflix-proxy - Smart DNS proxy to watch Netflix
nbgrader - A system for assigning and grading notebooks
the_router - TheRouter is a software packet router based on DPDK an NPF libraries.
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.
Kathara-Labs - Collection of Kathará network scenarios and tutorials.
exam-terminal - A terminal/console based exam, test, or quiz tool for educators and learners
rpi-microk8s-bootstrap - Automate RPI device conversion into Kubernetes cluster nodes with Terraform
data-structures-for-teaching - Implementations of some Data Structures and Algorithms, with different approaches and some practical applications.
ospfwatcher - History of all changes in OSPF Topology
oppia - A free, online learning platform to make quality education accessible for all.
bird-spawner-3000
tutorials - P4 language tutorials