Service Function Chains (SFCs) are one of the key enablers in providing programmable computer networks, leveraging virtualisation to eliminate physical network hardware. This increases the flexibility of the network and paves the way for network autonomy. However, this flexibility also introduces new challenges, such as resource allocation and optimisation related to their operation, requiring new algorithms to address these challenges. Various tools have been used in the literature to evaluate these algorithms, however, these tools can struggle to provide sufficiently dynamic environments, as found in real network environments, and instead offer inaccuracy, low fidelity, unscalability, inflexibility, or additional code requirements.
This paper introduces an emulator based on Mininet and Docker for SFCs called OpenRASE. The goal of OpenRASE is to enable the exploration of resource allocation algorithms for SFCs in a dynamic setting, allowing real CPU usage and latency to be measured. We describe the design and implementation of OpenRASE and discuss its characteristics in comparison with ALEVIN, the most popular tool in the literature. We also experimentally evaluate two different algorithms to address the SFC resource allocation challenge, including an online genetic algorithm, using OpenRASE to show its effectiveness and practicality for dynamic network conditions.