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
- Learn Development Tools - mininet/openflow-tutorial Wiki
- Create a Learning Switch - mininet/openflow-tutorial Wiki
- MININET - Open Networking Foundation
- MiniNAM | University College Cork
- uccmisl/MiniNAM: A Network Animator for Visualizing Real-Time Packet Flows in Mininet
- FAQ - mininet/mininet Wiki
- Learn Development Tools - mininet/openflow-tutorial Wiki
- Create a Learning Switch - mininet/openflow-tutorial Wiki