- The paper provides an in-depth survey on P4 data plane programming, combining a comprehensive tutorial on fundamentals with a categorization of applied research.
- It systematically reviews key programming models, architectures, and compilers that empower customizable packet processing in modern network devices.
- Findings highlight P4’s protocol independence and flexible APIs, which drive innovative applications in 5G, data centers, and rapid prototyping.
The paper "A Survey on Data Plane Programming with P4: Fundamentals, Advances, and Applied Research" provides an in-depth examination of the programmable data plane and its implementation using the P4 programming language. The paper is structured into two primary parts: a comprehensive tutorial and a survey of applied research.
First Part: Tutorial and Fundamentals
In the first section, the authors introduce the key concepts of data plane programming. They elaborate on several core topics:
- Data Plane Programming Models: An overview of the various models used in data plane programming, highlighting the flexibility and customization they offer for network devices.
- P4 Programming Language: A detailed introduction to P4, which stands for "Programming Protocol-independent Packet Processors." This language allows for programming the behavior of the data plane, enabling packet processing tasks to be defined by the user.
- Architectures and Compilers: Discussion on the architectures that support P4, the compilers used to translate P4 programs, and the target devices (both hardware and software) that can execute these programs.
- Targets: Various hardware and software platforms that integrate with P4, including switches and network processors.
- Data Plane APIs: Explanation of the application programming interfaces that allow interaction with the data plane, essential for integrating P4-based programs into broader software-defined networking (SDN) frameworks.
Second Part: Survey of Applied Research
The second section of the paper categorizes and surveys a vast body of applied research leveraging P4. The authors organize this research into different domains and summarize the findings, contributions, prototypes, and available source codes of these works. They analyze how these works utilize the core features of P4 to address specific challenges in networking.
- Research Domains: The identified domains cover various applications such as 5G networks, data center networks, and rapid prototyping for both commercial and academic purposes.
- Benefits of P4: The survey illustrates how P4's core features, such as protocol independence, ease of use, and adaptability, provide significant advantages for various research initiatives.
Potential Next Steps
The authors conclude by discussing potential future directions for P4 research based on their findings. They emphasize the continuous development of P4's capabilities, integration with more diverse hardware and software platforms, and potential new applications in emerging networking scenarios.
Overall, the paper serves as a thorough resource for understanding the current state of data plane programming with P4, highlighting both foundational knowledge and a wealth of applied research in the field.