Instructions and extensions for the comnetsemu network emulator
Instructions for easy comnetsemu installation
The following are the suggested and fastest ways to run comnetsemu VM.
A. Running comnetsemu in VirtualBox
The simplest way to enjoy comnetsemu is to:
1) install VirtualBox in your system
2) download and import in VirtualBox the comnetsemu stand alone ova package
3) run the VM in VirtualBox
4) connect locally to the VirtualBox via ssh (username: comnetsemu, password: comnetsemu)
[more detailed information will soon follow]
B. Building and running comnetsemu using multipass
1) Download and install multipass for your system
2) Run the following commands in the host terminal to generate and connect to the multipass VM:
multipass launch 20.04 --name myVM
multipass shell myVM
3) Run the following commands in the multipass VM:
sudo apt update
sudo apt upgrade
sudo apt install git iperf iperf3 make pkg-config python3 python3-dev python3-pip sudo ansible
git clone https://git.comnets.net/public-repo/comnetsemu
bash ./install.sh -a
4) The system should be ready to go. Try "sudo mn" to run mininet in the simplest configuration.
Please consult Multipass website for more information, e.g. how to transfer files.
It is also possible to enable "remote" access from the host to the multipass VM via /etc/hosts (see here).
Note: This is currently the best way to run comnetsemu in Apple Silicon (M1 & beyond) platforms.
C. Continuously updated comnetsemu install using vagrant
Please refer to the official installation instructions for this.
Note: vagrant install requires some basic knowledge about git repositories and virtualization.
Extensions for the comnetsemu network emulator
As the popularity of our comnetsemu network emulator grows, so also its applications!
In this webpage, we are collecting the most interesting extensions of comnetsemu. Those are not directly included in the official repository since not all users might be interested on those, and that otherwise the package would become too cumbersome.
How to implement dynamic network slicing in comnetsemu.
How to emulate a 5G network deployment in comnetsemu. This package demonstrates distributed UPF deployment and slice-based UPF selection using UERANSIM and Open5GS:
https://github.com/martamorg/5G_Project/tree/autoSlices (this includes automated slice configuration script)
5G network deployment with Free5GC and UERANSIM. This package is similar to the previous one, but using UERANSIM and Free5GC.
Live video streaming over comnetsemu. Streaming video over an SDN network.
Network slicing with visualization. Different solutions for slicing the network and enabling interactivity.
https://github.com/luiss07/Topology-DynamicSlicing (hints: check links in app.js, webapp on port 8081)
https://github.com/Sro552/network_slice (check IP address in webapp, web interface on port 8000/webapp)
Reference Work from the research group
An Open Source Testbed for Virtualized Communication Networks
Z. Xiang, S. Pandi, J. Cabrera, F. Granelli, P. Seeling, F. H. P. Fitzek
in: IEEE Communications Magazine, Vol. 59, no. 2, pp. 77-83, 2021