-
Notifications
You must be signed in to change notification settings - Fork 3
Introduction
vim-emu was created to support network service developers to locally prototype and test complete network services in realistic end-to-end multi-PoP scenarios. This emulation platform allows the direct execution of real network functions, packaged as Docker containers, in emulated network topologies running locally on the network service developer's machine. vim-emu integrates with management and orchestration (MANO) system, like the SONATA service platform, which areis responsible to deploy and manage the network services tested in the emulated environment. This is not possible with existing approaches, that either rely on local cloud testbeds that lack multi-PoP support, simulations that only execute simplified versions of network functions, or network emulation tools that do not offer cloud-like interfaces to interact with MANO systems.
The following figure shows the scope of our solution and its mapping to the ETSI NFV reference architecture in which it replaces the network function virtualisation infrastructure (NFVI) and the virtualised infrastructure manager (VIM). The design of vim-emu is based on a tool called Containernet which extends the well-known Mininet emulation framework and allows us to use standard Docker containers as VNFs within the emulated network. It also allows adding and removing containers from the emulated network at runtime which is not possible in Mininet. This concept allows us to use the emulator like a cloud infrastructure in which we can start and stop compute resources (in the form of containers) at any point in time. Containernet is developed by Paderborn University and is publicly available on GitHub.