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.
P4 programs are designed to be implementation-independent: they can be compiled against many different types of execution machines such as general-purpose CPUs, FPGAs, system(s)-on-chip, network processors, and ASICs.
The goal of this project is to study the possibilities of the P4 language, specifically regarding security: how can we implement filtering or detection systems directly on a programmable switch or router, using the P4 language?
For this project you will have to test the possibilities of P4:
To start this project you should have some knowledge in
To achieve this project, you will use the following tools and technologies: