P4Docker: Enabling Efficient P4 Switch Testbeds with Docker Integration - Silva, Dener; Heideker, Alexandre; Trombeta, Lucas; Carvalho, Bruna; Kleinschmidt, João Henrique; Kamienski, Carlos (Anais Estendidos do Simpósio Brasileiro de Redes de Computadores e Sistemas Distribuídos (SBRC), 2024)
Software Defined Networking (SDN) represents a paradigm shift in network architecture, offering unprecedented control and flexibility by decoupling the control and data planes. A critical component of this evolution is the emergence of P4, a programming language designed for the data plane, enabling precise control over packet processing. Despite its potential, the use of P4 is hampered by its complexity and the steep learning curve associated with its programming model. Addressing this challenge, this paper introduces P4P4Docker, a Docker-based P4 switch container named P4Docker, aimed at simplifying the design, management, and debugging of P4 switch test beds. P4Docker also offers an intuitive GUI platform to engage with P4 programming, reducing entry barriers and fostering innovation in network design and experimentation. By providing an intuitive interface, P4Docker enables a more accessible and efficient engagement with P4 programming, offering comprehensive access to logs and system metrics. Ultimately, P4Docker represents a significant step toward making sophisticated network programming more accessible, potentially accelerating the adoption and innovation of SDN and data plane programmability.