Abstract:
Software-defined networking (SDN) has gained significant momentum due to its numerous advantages, including centralized control, flexibility, and enhanced network management. This shift is supported by the scientific and academic communities for its vendor neutrality, open development, and innovation potential. Typically, emulators like Mininet are used to test new SDN protocols and applications. While they have benefits, they often fail to fully replicate real-world conditions since Mininet does not simulate real-life parameters such as the delay, variation in delay, and loss of packets. In Mininet, all the devices are hosted on the same physical machine, so these physical limitations are hidden, and latencies are often set artificially. To bridge this gap, we look into the viability of setting up an affordable SDN testbed of Open vSwitch (OVS) with programmable boards, particularly Raspberry Pi devices. To assess the effectiveness of the testbed, we use the Ryu controller and a simple four-switch configuration to investigate the feasibility of utilizing Raspberry Pi boards as SDN switches. A comparison was made between the performance of Raspberry Pi 3B+ and Raspberry Pi 4 boards under the same network configurations for different metrics, such as throughput, latency, and the ability to handle multiple connections. This helped us understand how each board performs in various scenarios and identify its strengths and limitations. Moreover, we have tested the compatibility of our testbed to run real-world network applications by running four different applications: routing, load balancing, network security, and network slicing. We verified that each application functions as expected and behaves similarly to Mininet when subjected to the same network conditions. This ensures that our testbed provides a reliable environment for evaluating network applications. Our findings are compared against the performance of Mininet, highlighting the practical advantages and limitations of using Raspberry Pi-based SDN switches.