All organizations · GSoC 2026 · Programming languages, Infrastructure and cloud
The P4 Language Consortium
Evolve the programmable data plane ecosystem!
Programming Protocol-independent Packet Processors (P4) is a domain-specific language for network devices, specifying how data plane devices (switches, NICs, routers, filters, etc.) process packets. Before P4, vendors had total control over the functionality supported in the network. And since networking silicon determined much of the possible behavior, silicon vendors controlled the rollout of new features (e.g., VXLAN), and rollouts took years. P4 turns the traditional model on its head. Application developers and network engineers can now use P4 to implement specific behavior in the network, and changes can be made in minutes instead of years.
- llvm
- c++
- linux kernel
- mlir
- ebpf
- networking
- programming language
- compiler
- AI/ML Networking
- networking security
Project ideas
9 ideas on its 2026 ideas page. 16 mentors named.
- Project 1.1: BMv2 packet trace support ⤴️
- Project 2.1: Realistic Traffic Manager and Queueing Architecture for P4 Switch Simulation in ns-3 (P
- Project 2.2: Polyglot P4TC: Python and Rust API Wrappers for Linux TC-based P4 ⤴️
- print(f"An error occurred: {e}")
- Project 2.3: PCIe TLP Communication Framework using P4 ⤴️
- Project 2.4: P4MLIR Exporter: Generate Valid P4 from P4HIR ⤴️
- Project 3.1: Alkali-P4MLIR: Bridging P4 and SmartNICs Through MLIR Dialect Conversion Between Alkali
- Project 3.2: Tutorial documentation for P4-SpecTec: A P4 specification mechanization framework ⤴️
- Project 3.3: Integrating P4-based In-Network Machine Learning framework into P4Pi ⤴️
Read the ideas page. Ideas are for scope reference; never copy one into a proposal.
History
In GSoC since 2024, 3 years. Projects per year: '24: 4, '25: 4, '26: 5.
On GitHub
21 repositories pushed to in the last year. Main languages: C++ (6), Python (4), Shell (4), CSS (1), JavaScript (1), MLIR (1).
Links and channels
- Website: https://p4.org/
- Ideas page: https://github.com/p4lang/gsoc/blob/main/program/2026/ideas_list.md
- Contributor guide: https://github.com/p4lang/gsoc/blob/main/program/2026/application_instructions.md
- Source code: https://github.com/p4lang
- Chat: https://p4lang.zulipchat.com/
- Mailing list: https://p4.org/join/
git-into-gsoc org "The P4 Language Consortium" --shortlist
git-into-gsoc repos "The P4 Language Consortium"
git-into-gsoc issues --org "The P4 Language Consortium"
or ask your assistant: "Which The P4 Language Consortium repositories merge newcomers' pull requests, and which beginner issues are still free?"
Those commands read live data: which repositories merge outside pull requests, and which beginner issues nobody has claimed. Install in two minutes.