This project aims to leverage Containernet, a fork of the renowned Mininet network emulator, to facilitate the creation of SDN network topologies using Docker containers as hosts. By harnessing the capabilities of Containernet, developers can explore a wide range of networking and cloud emulation scenarios while benefitting from the flexibility and scalability of Docker containers.
The script is used to create a Campus LAN topology with docker hosts.
Refer to this guide here, to do a bare-metal installation in Ubuntu-20.04 LTS
This project uses ONOS version 2.7.0 LTS.
-
Find this line in the script and replace the controller-IP
net.addController('c0', switch=OVSKernelSwitch, controller=RemoteController, ip='controller-IP', port=6653)
-
Build a Ubuntu Docker Image
Refer to my other repository here, to create a custom Ubuntu image with a real-life traffic generator
Note: The name of the image must be ubuntu:latest
Required Arguments:
-a --access Number of Access Layer Switches
-d --distribution Number of Distribution Layer Switches
-bwa --bandwidthaccess Access Layer Bandwidth
-bwd --bandwidthdistribution Distribution Layer Bandwidth
-ho --host Number of Docker Hosts
Optional Arguments:
-c --core Number of Core Layer Switches
-bwc --bandwidthcore Core Layer Bandwidth
Example:
sudo python3 docker_topology.py -a 4 -bwa 10 -d 2 -bwd 20 -c 2 -bwc 30 -ho 4
This project is licensed under Mininet 2.3.1b1 License