Skip to content

Commit 235b3b6

Browse files
committed
Centralize P4 learning materials in README (#43)
Signed-off-by: koushik <[email protected]>
1 parent 3faa9f9 commit 235b3b6

File tree

7 files changed

+143
-28
lines changed

7 files changed

+143
-28
lines changed

2024/contributor_guidance.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,8 @@
77
[timeline](https://developers.google.com/open-source/gsoc/timeline), and
88
[contributor guide](https://google.github.io/gsocguides/student).
99
- Check out our
10-
[organization profile](https://summerofcode.withgoogle.com/programs/2024/organizations/the-p4-language-consortium) and
10+
[organization profile](https://summerofcode.withgoogle.com/programs/2024/organizations/the-p4-language-consortium),
11+
[learning materials](/materials/learning_materials.md), and
1112
[ideas list](ideas_list.md)
1213
to see if they fit your interests and skills.
1314
- **February 22 - March 18**

2025/contributor_guidance.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,8 @@
1010
[timeline](https://developers.google.com/open-source/gsoc/timeline), and
1111
[contributor guide](https://google.github.io/gsocguides/student).
1212
- Check out our
13-
[organization profile](https://summerofcode.withgoogle.com/programs/2025/organizations/the-p4-language-consortium) and
13+
[organization profile](https://summerofcode.withgoogle.com/programs/2025/organizations/the-p4-language-consortium),
14+
[learning materials](/materials/learning_materials.md), and
1415
[ideas list](ideas_list.md)
1516
to see if they fit your interests and skills.
1617

2026/contributor_guidance.md renamed to 2026/application_instructions.md

Lines changed: 4 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,15 @@
11
# P4 GSoC 2026 Contributor Guidance
22

3-
> [!Warning]
4-
> Please note that proposals completely generated using Large Language Models (LLMs) will not be accepted. Using LLM to assist you is acceptable, but letting LLM replace you is not. If you do use LLM, use your best judgement to use it responsibly. During the application process, if we find out it's easier to work with an LLM directly than working with you, it will be an immediate reject.
5-
63
## Before the Application
74

85
- Go through the general GSoC
96
[FAQ](https://developers.google.com/open-source/gsoc/faq),
107
[timeline](https://developers.google.com/open-source/gsoc/timeline), and
118
[contributor guide](https://google.github.io/gsocguides/student).
129
- Check out our
13-
[organization profile](https://summerofcode.withgoogle.com/programs/2025/organizations/the-p4-language-consortium) and
10+
[organization profile](https://summerofcode.withgoogle.com/programs/2025/organizations/the-p4-language-consortium),
11+
[learning materials](/materials/learning_materials.md),
12+
[contributor guidance](/materials/lcontributor_guidance.md), which are mandatory for all contributors, and the
1413
[ideas list](ideas_list.md)
1514
to see if they fit your interests and skills.
1615

@@ -55,22 +54,7 @@
5554
- Please read [this guide](https://developers.google.com/blockly/guides/contribute/get-started/write_a_good_pr) on how to write a good pull request first.
5655
- The pull request doesn’t have to be merged for the qualification task to be considered complete. But if you can manage to get it merged, that’s a bonus point for your application.
5756
- Please attach the link to your pull request in the proposal.
58-
59-
## P4 Learning Materials
60-
61-
For all our projects, it’s good to know some P4. Here are some learning materials:
62-
63-
- General hands-on tutorials: https://github.com/p4lang/tutorials
64-
- Technical documentation on P4 related topics: https://github.com/jafingerhut/p4-guide?tab=readme-ov-file#introduction
65-
- Motivating P4: [IEEE ICC 2018 // Keynote: Nick McKeown, Programmable Forwarding Planes Are Here To Stay](https://www.youtube.com/watch?v=8ie0FcsN07U)
66-
- Introducing P4-16 in detail:
67-
- Part 1: [Introduction to P4_16. Part 1](https://www.youtube.com/watch?v=GslseT4hY1w)
68-
- Part 2: [Introduction to P4_16. Part 2](https://www.youtube.com/watch?v=yqxpypXIOtQ)
69-
- Material on the official P4 compiler:
70-
- [Understanding the Open-Soure P416 Compiler - February 15, 2022 - Mihai Budiu](https://www.youtube.com/watch?v=Rx5AQ0IF6eU)
71-
- [Understanding P416 Open-Source Compiler, Part 2 - March 1, 2022 - Mihai Budiu](https://www.youtube.com/watch?v=YnPHPaPSmpU)
72-
- https://github.com/p4lang/p4c/blob/main/docs/compiler-design.pdf
73-
- Introduction to P4Runtime: [Next-Gen SDN Tutorial - Session 1: P4 and P4Runtime Basics](https://www.youtube.com/watch?v=KRx92qSLgo4)
57+
**Project Timeline**
7458

7559
## Communication Channels
7660

README.md

Lines changed: 31 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,39 @@
11
# P4 GSoC
22

33
## About
4-
5-
This repository is dedicated to [The P4 Language Consortium](https://p4.org/)'s participation in [Google Summer of Code](https://summerofcode.withgoogle.com/) (GSoC). In this repository, you will find materials for all ongoing and past P4 GSoC programs.
4+
This repository is dedicated to [The P4 Language Consortium](https://p4.org/)'s participation in [Google Summer of Code](https://summerofcode.withgoogle.com/) (GSoC).
5+
In this repository, you will find materials for all ongoing and past P4 GSoC programs.
66

77
## Ongoing Program
8-
<a href="2026/README.md" target="_blank"><img src="https://img.shields.io/badge/Program%20Google%20Summer%20of%20Code-2025-fbbc05?style=flat&logo=data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAMAAABHPGVmAAAALVBMVEVHcEz7vQD7vQD8vQD7vQD8vQD7vQD8vQD8vQD7vQD7vQD8vQD7vQD7vQD7vQAgxtLpAAAADnRSTlMAZvVQ6QrVPhl6oSmHvzL6LQUAAASGSURBVHjatdnZdusgDAVQELMY%2Fv9zb2%2Bwc%2BIKDzQLvTXB3gYBFqmaDVeKU4sCBlFyy43WqLjlBpR1BpR1BpR1xjoFxmIFBpSVBpSVBpSVBpSVBpQ1xvdK1oPgblhfOWltjNaJq7ddYT2IfImYJqMDrENUChGDZn%2FWQ%2FMHxBcD4BMyBc5XCHkNQTq60vfIgXAx5xByju6T8V8itsT3%2FUPi6r39Ce8rp%2FCWYrHfIDXs95FZJs%2FvTob6Z4T2buQE4eikvHeG%2FoZY7TpRfDsNWzrjtP0L4s12NYhh%2BO1ZjJ9HfOjdYGo3QZx7YvwEAgOPdx3eQJlArMFA3wXSZ%2BwMQvplJGoPY6sqNU0gxcGYUVx5jtSIx3oS6HysTxEbMMDPAmkM9iFSXnPXt8nwuQ%2FYI8TH%2F425TQe7%2FnBPEH2bECI6T4t%2Bgvh4N1istR50FJdeIX1Ek%2FqJdGGQOWmAa4u7rn18vuuIzUq52gbxvpiSuzIau%2BuO9FUUfTvvCjcoQ4MMltRnEOqF0pdD%2FwiBZWxoqGCn8r2VGKIUCHOoTyHK2g7y1bsJRRqNe3%2FlXv5GbNhWEWXxbsf1UITRF4kYcM4KiI%2FbeFIevNNq7P2EIg0bVL%2BfqCcyYV2rbDdExWSPjUPPGBRh9JTowTscW0Dqf%2BwLXGmPthgKKMJo1f1OSQ29hf1Mbdlmg5NFV1H7KoICA3mruIQ4vl4TTFhvuAlxxrdb1J55KMJoBatEPCv6mr3sJzK%2F9RQKDAx49Ji5ctSLwsxAxgyuiduOAeVtIG14zppPKtAka9lcMZz71IHyNoAcCpvIx6UfxGLleCim3ggUpe0dQhe7I86mWvQERZmCIocryAqPsdYOSQlVIjCgyMRbLSaXxi3GD4LEw4AipzCyyvS5a5ThMpJTGAYUuQljhiWL53R11FN5BxhQsK0UWbE747E7evGV2FaEAUWmDave0H4LQxg6nErl1IEBBRdmOzjkBPpdqFB%2BpUtUGb0tDKloZP44hQLthQoDwXYiXlowpMJIymExdARL8SViYzymhGEMFR%2FR3cOyNoRCpQcZFu1s6AsNhlQuSiJP%2B1Kk90dNRHW9BYyhwlszhNgdb05CjmGcKDb3DotAoYIYV9wWxjDSZcHNmN%2Fj0KpPm3R7dMjq7HlrSokvjIqjww3SEhb4XJDpg3CLvM9%2BPG%2FMHOcaOwzYRFScNe8QHJb9nOEDhvkGwV48eZC3BgfzWwSHZaXthKEVMvkMaQnKhKESzSCkJ37uQqlJ7RmCIcbr%2By5qUEjiIwQK3q4yZKHqYDxEUIo4U6%2BNahxKr0kEZwv8HC%2BDqo69UaI2ieBAujN2RNhOoPybQjBr9oNSKNXSoQ%2B2luCUQuk1iSCIg9oiZl24Vv8TtXLROaotAtO3%2F9ooWSFcjDnH6BQio2SZQSRz%2FpsPfsifQ2RY1tmNBM3oxQRCbRjkOZn%2FEACT2J%2B1vkZiGESyG1SZS%2FqJ1wTogE1hEFHNh9yNCbvvREwqCwwoawwoKw0oKw0oKw0oKw0oKw0oKw0oMFYqMFYqMFYqMBYq88Y%2FxB7wiOJRvWkAAAAASUVORK5CYII%3D" height="30"/></a>
9-
8+
<a href="2026/README.md" target="_blank">
9+
<img src="https://img.shields.io/badge/Google%20Summer%20of%20Code-2026-fbbc05?style=flat&logo=google-summer-of-code" height="30"/>
10+
</a>
1011

1112
## Past Programs
12-
<a href="2025/README.md" target="_blank"><img src="https://img.shields.io/badge/Program%20Google%20Summer%20of%20Code-2025-fbbc05?style=flat&logo=data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAMAAABHPGVmAAAALVBMVEVHcEz7vQD7vQD8vQD7vQD8vQD7vQD8vQD8vQD7vQD7vQD8vQD7vQD7vQD7vQAgxtLpAAAADnRSTlMAZvVQ6QrVPhl6oSmHvzL6LQUAAASGSURBVHjatdnZdusgDAVQELMY%2Fv9zb2%2Bwc%2BIKDzQLvTXB3gYBFqmaDVeKU4sCBlFyy43WqLjlBpR1BpR1BpR1xjoFxmIFBpSVBpSVBpSVBpSVBpQ1xvdK1oPgblhfOWltjNaJq7ddYT2IfImYJqMDrENUChGDZn%2FWQ%2FMHxBcD4BMyBc5XCHkNQTq60vfIgXAx5xByju6T8V8itsT3%2FUPi6r39Ce8rp%2FCWYrHfIDXs95FZJs%2FvTob6Z4T2buQE4eikvHeG%2FoZY7TpRfDsNWzrjtP0L4s12NYhh%2BO1ZjJ9HfOjdYGo3QZx7YvwEAgOPdx3eQJlArMFA3wXSZ%2BwMQvplJGoPY6sqNU0gxcGYUVx5jtSIx3oS6HysTxEbMMDPAmkM9iFSXnPXt8nwuQ%2FYI8TH%2F425TQe7%2FnBPEH2bECI6T4t%2Bgvh4N1istR50FJdeIX1Ek%2FqJdGGQOWmAa4u7rn18vuuIzUq52gbxvpiSuzIau%2BuO9FUUfTvvCjcoQ4MMltRnEOqF0pdD%2FwiBZWxoqGCn8r2VGKIUCHOoTyHK2g7y1bsJRRqNe3%2FlXv5GbNhWEWXxbsf1UITRF4kYcM4KiI%2FbeFIevNNq7P2EIg0bVL%2BfqCcyYV2rbDdExWSPjUPPGBRh9JTowTscW0Dqf%2BwLXGmPthgKKMJo1f1OSQ29hf1Mbdlmg5NFV1H7KoICA3mruIQ4vl4TTFhvuAlxxrdb1J55KMJoBatEPCv6mr3sJzK%2F9RQKDAx49Ji5ctSLwsxAxgyuiduOAeVtIG14zppPKtAka9lcMZz71IHyNoAcCpvIx6UfxGLleCim3ggUpe0dQhe7I86mWvQERZmCIocryAqPsdYOSQlVIjCgyMRbLSaXxi3GD4LEw4AipzCyyvS5a5ThMpJTGAYUuQljhiWL53R11FN5BxhQsK0UWbE747E7evGV2FaEAUWmDave0H4LQxg6nErl1IEBBRdmOzjkBPpdqFB%2BpUtUGb0tDKloZP44hQLthQoDwXYiXlowpMJIymExdARL8SViYzymhGEMFR%2FR3cOyNoRCpQcZFu1s6AsNhlQuSiJP%2B1Kk90dNRHW9BYyhwlszhNgdb05CjmGcKDb3DotAoYIYV9wWxjDSZcHNmN%2Fj0KpPm3R7dMjq7HlrSokvjIqjww3SEhb4XJDpg3CLvM9%2BPG%2FMHOcaOwzYRFScNe8QHJb9nOEDhvkGwV48eZC3BgfzWwSHZaXthKEVMvkMaQnKhKESzSCkJ37uQqlJ7RmCIcbr%2By5qUEjiIwQK3q4yZKHqYDxEUIo4U6%2BNahxKr0kEZwv8HC%2BDqo69UaI2ieBAujN2RNhOoPybQjBr9oNSKNXSoQ%2B2luCUQuk1iSCIg9oiZl24Vv8TtXLROaotAtO3%2F9ooWSFcjDnH6BQio2SZQSRz%2FpsPfsifQ2RY1tmNBM3oxQRCbRjkOZn%2FEACT2J%2B1vkZiGESyG1SZS%2FqJ1wTogE1hEFHNh9yNCbvvREwqCwwoawwoKw0oKw0oKw0oKw0oKw0oKw0oMFYqMFYqMFYqMBYq88Y%2FxB7wiOJRvWkAAAAASUVORK5CYII%3D" height="30"/></a>
13+
<a href="2025/README.md" target="_blank">
14+
<img src="https://img.shields.io/badge/Google%20Summer%20of%20Code-2025-fbbc05?style=flat&logo=google-summer-of-code" height="30"/>
15+
</a>
16+
17+
<a href="2024/README.md" target="_blank">
18+
<img src="https://img.shields.io/badge/Google%20Summer%20of%20Code-2024-fbbc05?style=flat&logo=google-summer-of-code" height="30"/>
19+
</a>
20+
21+
## 📘 Learning Resources
22+
For all our projects, it’s good to know some P4. Here are some learning materials:
23+
24+
- General hands-on tutorials: [p4lang/tutorials](https://github.com/p4lang/tutorials)
25+
- Technical documentation: [p4-guide](https://github.com/jafingerhut/p4-guide?tab=readme-ov-file#introduction)
26+
- Motivating P4: [Nick McKeown Keynote, IEEE ICC 2018](https://www.youtube.com/watch?v=8ie0FcsN07U)
27+
- Introducing P4-16 in detail:
28+
- [Part 1](https://www.youtube.com/watch?v=GslseT4hY1w)
29+
- [Part 2](https://www.youtube.com/watch?v=yqxpypXIOtQ)
30+
- Material on the official P4 compiler:
31+
- [Understanding the Open-Source P416 Compiler (Feb 15, 2022) – Mihai Budiu](https://www.youtube.com/watch?v=Rx5AQ0IF6eU)
32+
- [Understanding P416 Compiler, Part 2 (Mar 1, 2022) – Mihai Budiu](https://www.youtube.com/watch?v=YnPHPaPSmpU)
33+
- [Compiler Design PDF](https://github.com/p4lang/p4c/blob/main/docs/compiler-design.pdf)
34+
- Introduction to P4Runtime: [Next-Gen SDN Tutorial – Session 1](https://www.youtube.com/watch?v=KRx92qSLgo4)
35+
36+
37+
38+
1339

14-
<a href="2024/README.md" target="_blank"><img src="https://img.shields.io/badge/Program%20Google%20Summer%20of%20Code-2024-fbbc05?style=flat&logo=data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAMAAABHPGVmAAAALVBMVEVHcEz7vQD7vQD8vQD7vQD8vQD7vQD8vQD8vQD7vQD7vQD8vQD7vQD7vQD7vQAgxtLpAAAADnRSTlMAZvVQ6QrVPhl6oSmHvzL6LQUAAASGSURBVHjatdnZdusgDAVQELMY%2Fv9zb2%2Bwc%2BIKDzQLvTXB3gYBFqmaDVeKU4sCBlFyy43WqLjlBpR1BpR1BpR1xjoFxmIFBpSVBpSVBpSVBpSVBpQ1xvdK1oPgblhfOWltjNaJq7ddYT2IfImYJqMDrENUChGDZn%2FWQ%2FMHxBcD4BMyBc5XCHkNQTq60vfIgXAx5xByju6T8V8itsT3%2FUPi6r39Ce8rp%2FCWYrHfIDXs95FZJs%2FvTob6Z4T2buQE4eikvHeG%2FoZY7TpRfDsNWzrjtP0L4s12NYhh%2BO1ZjJ9HfOjdYGo3QZx7YvwEAgOPdx3eQJlArMFA3wXSZ%2BwMQvplJGoPY6sqNU0gxcGYUVx5jtSIx3oS6HysTxEbMMDPAmkM9iFSXnPXt8nwuQ%2FYI8TH%2F425TQe7%2FnBPEH2bECI6T4t%2Bgvh4N1istR50FJdeIX1Ek%2FqJdGGQOWmAa4u7rn18vuuIzUq52gbxvpiSuzIau%2BuO9FUUfTvvCjcoQ4MMltRnEOqF0pdD%2FwiBZWxoqGCn8r2VGKIUCHOoTyHK2g7y1bsJRRqNe3%2FlXv5GbNhWEWXxbsf1UITRF4kYcM4KiI%2FbeFIevNNq7P2EIg0bVL%2BfqCcyYV2rbDdExWSPjUPPGBRh9JTowTscW0Dqf%2BwLXGmPthgKKMJo1f1OSQ29hf1Mbdlmg5NFV1H7KoICA3mruIQ4vl4TTFhvuAlxxrdb1J55KMJoBatEPCv6mr3sJzK%2F9RQKDAx49Ji5ctSLwsxAxgyuiduOAeVtIG14zppPKtAka9lcMZz71IHyNoAcCpvIx6UfxGLleCim3ggUpe0dQhe7I86mWvQERZmCIocryAqPsdYOSQlVIjCgyMRbLSaXxi3GD4LEw4AipzCyyvS5a5ThMpJTGAYUuQljhiWL53R11FN5BxhQsK0UWbE747E7evGV2FaEAUWmDave0H4LQxg6nErl1IEBBRdmOzjkBPpdqFB%2BpUtUGb0tDKloZP44hQLthQoDwXYiXlowpMJIymExdARL8SViYzymhGEMFR%2FR3cOyNoRCpQcZFu1s6AsNhlQuSiJP%2B1Kk90dNRHW9BYyhwlszhNgdb05CjmGcKDb3DotAoYIYV9wWxjDSZcHNmN%2Fj0KpPm3R7dMjq7HlrSokvjIqjww3SEhb4XJDpg3CLvM9%2BPG%2FMHOcaOwzYRFScNe8QHJb9nOEDhvkGwV48eZC3BgfzWwSHZaXthKEVMvkMaQnKhKESzSCkJ37uQqlJ7RmCIcbr%2By5qUEjiIwQK3q4yZKHqYDxEUIo4U6%2BNahxKr0kEZwv8HC%2BDqo69UaI2ieBAujN2RNhOoPybQjBr9oNSKNXSoQ%2B2luCUQuk1iSCIg9oiZl24Vv8TtXLROaotAtO3%2F9ooWSFcjDnH6BQio2SZQSRz%2FpsPfsifQ2RY1tmNBM3oxQRCbRjkOZn%2FEACT2J%2B1vkZiGESyG1SZS%2FqJ1wTogE1hEFHNh9yNCbvvREwqCwwoawwoKw0oKw0oKw0oKw0oKw0oKw0oMFYqMFYqMFYqMBYq88Y%2FxB7wiOJRvWkAAAAASUVORK5CYII%3D" height="30"/></a>

materials/contributor_guidance.md

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
# Contributor Guidance
2+
3+
Here you will find several important rules which you have to agree to follow in order to be eligible to apply as a contributor for the P4 Language Consortium.
4+
5+
These rules are intended to make the program rewarding and problem-free for everyone involved. They are based on our experience with GSoC and are designed to help you get the most out of it.
6+
7+
## Before you apply
8+
9+
- **Managing Commitments and Avoiding Burnout During GSoC**
10+
Please note that Google Summer of Code requires a time commitment of 20-40 hours per week, depending on the size of the tasks you choose. If you're considering taking on an additional part-time job, have extensive exams, or plan an extended vacation during the program, you need to carefully evaluate whether you can manage all these commitments without risking burnout. To help us better assess your availability, <ins>please make sure to explicitly list any other obligations in your application.</ins>
11+
12+
- **Get in touch with us and our community**
13+
In particular, visit our [Zulip workspace](https://p4lang.zulipchat.com/), [P4 forum](https://forum.p4.org), [P4 Linkdin](https://www.linkedin.com/company/p4-language-consortium/) and/or email the mentors listed on the [ideas list](ideas_list.md) for each project that sounds appealing to you.
14+
15+
- **Respect Mentors, Deliver on Time**
16+
The P4 Language Consortium values your enthusiasm and willingness to contribute. However, contacting mentors on multiple platforms, sending repeated messages, or asking for shortcuts may be viewed as unprofessional. Likewise, requesting last-minute reviews or urgent feedback when you are close to a deadline can be interpreted as a lack of reliability. Please remember that P4 mentors and admins volunteer their time to support a meaningful and successful GSoC experience.
17+
18+
19+
- **NO LLM-generated code or texts are accepted**
20+
Please note that proposals completely generated using Large Language Models (LLMs) will not be accepted. Using LLM to assist you is acceptable, but letting LLM replace you is not. If you do use LLM, use your best judgement to use it responsibly. During the application process, if we find out it's easier to work with an LLM directly than working with you, it will be an immediate reject.
21+
22+
23+
## Before you are accepted
24+
25+
- **Prepare a Comprehensive and Detailed Plan**
26+
Within your project proposal, please include a section with a clear timeline detailing your 12-week project plan. Be sure to note any existing commitments, such as exams, vacations, or other obligations—that could affect your availability.
27+
28+
29+
## During GSoC
30+
31+
- **Choose Your Communication Method**
32+
Before starting the coding phase, a private Zulip channel dedicated to the GSoC project will be created as the main communication channel between mentors and the student. In addition, mentors and the student should agree on the communication approach they’ll use during the GSoC period—for example, using only the Zulip channel, having weekly sync-up calls, or any other method that works best for them.
33+
34+
- **Deliverables**
35+
Before the end of the GSoC period, for the project to be considered successful, the student must complete all assigned tasks, submit a final project report, and present their work and results at the community kickoff and wrap-up meetings. The report may be used directly as a blog post. For particularly complex projects, and if the student is willing, an additional blog article can be prepared and published on the P4 Language Consortium blog.
36+
37+
Students may use any preferred approach to prepare their report, article, and presentations. One suggested method is the laboratory-diary approach: keeping a private log of task progress helps track the work and simplifies the preparation of the final deliverables.
38+
39+
The report template can be found here: [report template](report_template.md). For any insigths here a few example reports that we think is of high quality and roughly follows the template:
40+
41+
- [2025 GSoC - Bmv2 Pkt Out - Xiyu Hao](/2025/projects/bmv2_pkt_out/README.md)
42+
- [2024 GSoC - Container Migration - Stanislav Kosorin](/2024/projects/container_migration/README.md)

materials/learning_materials.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
# P4 Learning Materials
2+
3+
For all our projects, it’s good to know some P4. Here are some learning materials:
4+
5+
- General hands-on tutorials: https://github.com/p4lang/tutorials
6+
- Technical documentation on P4 related topics: https://github.com/jafingerhut/p4-guide?tab=readme-ov-file#introduction
7+
- Motivating P4: [IEEE ICC 2018 // Keynote: Nick McKeown, Programmable Forwarding Planes Are Here To Stay](https://www.youtube.com/watch?v=8ie0FcsN07U)
8+
- Introducing P4-16 in detail:
9+
- Part 1: [Introduction to P4_16. Part 1](https://www.youtube.com/watch?v=GslseT4hY1w)
10+
- Part 2: [Introduction to P4_16. Part 2](https://www.youtube.com/watch?v=yqxpypXIOtQ)
11+
- Material on the official P4 compiler:
12+
- [Understanding the Open-Soure P416 Compiler - February 15, 2022 - Mihai Budiu](https://www.youtube.com/watch?v=Rx5AQ0IF6eU)
13+
- [Understanding P416 Open-Source Compiler, Part 2 - March 1, 2022 - Mihai Budiu](https://www.youtube.com/watch?v=YnPHPaPSmpU)
14+
- https://github.com/p4lang/p4c/blob/main/docs/compiler-design.pdf
15+
- Introduction to P4Runtime: [Next-Gen SDN Tutorial - Session 1: P4 and P4Runtime Basics](https://www.youtube.com/watch?v=KRx92qSLgo4)

0 commit comments

Comments
 (0)