3da2b1482cab16e00133d216267c844bc6d3fae0
the node is running in the root namespace.
Mininet: A Simple Virtual Testbed for OpenFlow
aka
How to Squeeze a 1024-node OpenFlow Network onto your Laptop
(Extremely Experimental Development Version 0.1, December 2009)
---
Mininet creates simple OpenFlow test networks by using process-based
virtualization and network namespaces.
Simulated hosts (as well as switches and controllers with the user
datapath) are created as processes in separate network namespaces. This
allows a complete OpenFlow network to be simulated on top of a single
Linux kernel.
In order to run Mininet, you must have:
* A Linux 2.6.26 or greater kernel compiled with network namespace support
enabled. (Debian 5.0 or greater should work.)
* The OpenFlow reference implementation (either the user or kernel
datapath may be used, and the tun or ofdatapath kernel modules must be
loaded, respectively)
* Python, Bash, Ping, iPerf, etc.
* Root privileges (required for network device access)
* The netns program (included as netns.c), or an equivalent program called
'netns', installed in an appropriate path location.
* mininet.py installed in an appropriate Python path location.
Currently mininet includes:
- A simple node infrastructure (Host, Switch, Controller classes) for
creating virtual OpenFlow networks.
- A simple network infrastructure (class Network and its descendants
TreeNet, GridNet and LinearNet) for creating scalable topologies and
running experiments (using someNetwork.run( test ) )
- Some simple tests which can be run using someNetwork.run( test )
- A simple command-line interface which may be invoked on a network using
.run( Cli )
- Examples (in examples/ directory) to help you get started.
Some preliminary installation notes are included in the INSTALL file.
---
Bob Lantz
rlantz@cs.stanford.edu
Languages
Python
76.3%
C
12.4%
Shell
10.6%
Makefile
0.7%