January 20, 2018

339 words 2 mins read

Mininet Basics

Mininet Basics

Mininet provides a virtual test bed and development environment for SDN. Mininet networks run real code including standard Unix/Linux network applications as well as the real Linux kernel and network stack. Mininet provides an extensible Python API for network creation and experimentations. Ref: [MININET - Open Networking Foundation]

Mininet Basics:

Mininet enables: rapid prototyping of software-defined networks, complex topology testing without the need to wire up a physical network, and multiple concurrent developers to work independently on the same topology.

Instances

  • Guest: official VM Mininet 2.2.2 on Ubuntu 14.04 LTS - 64 bit
  • POX 0.2.0 (carp)
  • OVS (Open vSwitch) 2.0.2
  • Host: VirtualBox 5.2.6 on Ubuntu Xenial 16.04.3.

Mininet Setup

  • Download a Mininet VM Image
  • Import the Image (eg. into VirtualBox)
  • Configure Access (eg. port forwarding or host-only networking)
  • Run the VM
  • Access via SSH with Remote Display Forwarding Enabled

Note: in the official Mininet VM image version 2.2.2, there is possibly a configuration bug if you’re using VirtualBox. See comments by isams1 in this thread. So don’t use host-only networking to access the VM.

MiniNAM

  • A utility that provides real-time animation of any network created by the Mininet emulator.
  • MiniNAM includes all the components required to initiate, visualize and modify Mininet network flows in real-time.
  • MiniNAM provides a graphical user interface that allows dynamic modification of preferences and packet filters: a user can view selective flows with options to color code packets based on packet type and/or nodes (hosts).

POX Controller

  • POX is a Python-based SDN controller platform geared towards research and education.
  • POX provides a framework for communicating with SDN switches using either the OpenFlow or OVSDB protocol. Developers can use POX to create an SDN controller using the Python programming language.

References

  1. Learn Development Tools - mininet/openflow-tutorial Wiki
  2. Create a Learning Switch - mininet/openflow-tutorial Wiki
  3. MININET - Open Networking Foundation
  4. MiniNAM | University College Cork
  5. uccmisl/MiniNAM: A Network Animator for Visualizing Real-Time Packet Flows in Mininet
  6. FAQ - mininet/mininet Wiki
  7. Learn Development Tools - mininet/openflow-tutorial Wiki
  8. Create a Learning Switch - mininet/openflow-tutorial Wiki
comments powered by Disqus