Starting your journey with Software-Defined Networking (SDN)

First, you need to install Mininet and an SDN controller such as RYU.

To install Mininet, you need to have Linux OS on your machine (bare metal or VM). If you do not have Linux on your machine, then you can create a new Ubuntu Virtual Machine (VM), which allows you to work on Mininet and also Software-Defined Networks (SDNs).

Installing Mininet:

1) You need to download and install Oracle Virtual Box from the link below:
https://www.virtualbox.org/wiki/Downloads

2) Then, you need to create a new Ubuntu Virtual Machine using Virtual Box. You can download the OS ISO image from https://releases.ubuntu.com/

3) After successful installation of your VM, install Mininet on your Ubuntu virtual machine using the following commands:

Note (a) In this tutorial, we do not need to install Python since I am using Ubuntu 20.04, which includes Python 3 pre-installed.

Note (b) We need to write install.sh -a to install OpenvSwitch and other required tools and related dependencies.

We will install git and then Mininet with support for Python 3.

sudo apt install git
git clone https://github.com/mininet/mininet
cd mininet
git checkout -b mininet-2.3.0 2.3.0  
cd ..
sudo PYTHON=python3 mininet/util/install.sh -a

You should get the following output:

Now, let’s run the following test:

sudo mn --switch ovsbr --test pingall

You should get the following output:

Installing the SDN controller:

git clone https://github.com/osrg/ryu.git
cd ryu
sudo pip install .

Next, we run the SDN controller using the following command:

ryu-manager ryu.app.simple_switch

You should get the following output:

Now, you are ready for starting your SDN journey.

Leave a comment