An Exhaustive Survey on P4 Programmable Data Plane Switches: Taxonomy, Applications, Challenges, and Future Trends

by   Elie F. Kfoury, et al.

Traditionally, the data plane has been designed with fixed functions to forward packets using a small set of protocols. This closed-design paradigm has limited the capability of the switches to proprietary implementations which are hardcoded by vendors, inducing a lengthy, costly, and inflexible process. Recently, data plane programmability has attracted significant attention from both the research community and the industry, permitting operators and programmers in general to run customized packet processing function. This open-design paradigm is paving the way for an unprecedented wave of innovation and experimentation by reducing the time of designing, testing, and adopting new protocols; enabling a customized, top-down approach to develop network applications; providing granular visibility of packet events defined by the programmer; reducing complexity and enhancing resource utilization of the programmable switches; and drastically improving the performance of applications that are offloaded to the data plane. Despite the impressive advantages of programmable data plane switches and their importance in modern networks, the literature has been missing a comprehensive survey. To this end, this paper provides a background encompassing an overview of the evolution of networks from legacy to programmable, describing the essentials of programmable switches, and summarizing their advantages over Software-defined Networking (SDN) and legacy devices. The paper then presents a unique, comprehensive taxonomy of applications developed with P4 language; surveying, classifying, and analyzing more than 150 articles; discussing challenges and considerations; and presenting future perspectives and open research issues.


page 1

page 5

page 7

page 27

page 41


Toward an Abstract Model of Programmable Data Plane Devices

SDN divides the networking landscape into 2 parts: control and data plan...

The Programmable Data Plane: Abstractions, Architectures, Algorithms, and Applications

Programmable data plane technology enables the systematic reconfiguratio...

GP4P4: Enabling Self-Programming Networks

Recent advances in programmable switches have enabled network operators ...

A Roadmap for Enabling a Future-Proof In-Network Computing Data Plane Ecosystem

As the vision of in-network computing becomes more mature, we see two pa...

YANG2UML: Bijective Transformation and Simplification of YANG to UML

Software Defined Networking is currently revolutionizing computer networ...

Watching Smartly from the Bottom: Intrusion Detection revamped through Programmable Networks and Artificial Intelligence

The advent of Programmable Data Planes represents an outstanding evoluti...

Random Linear Network Coding on Programmable Switches

By extending the traditional store-and-forward mechanism, network coding...

Please sign up or login with your details

Forgot password? Click here to reset