Statistics
| Branch: | Tag: | Revision:

mininet @ 16c57ddb

Name Size Revision Age Author Comment
  bin 16c57ddb almost 12 years Brandon Heller Enable controller-less setups
  examples 83086439 almost 12 years Brandon Heller Remove/merge obsolete examples
  mininet 16c57ddb almost 12 years Brandon Heller Enable controller-less setups
INSTALL 2.97 KB 83086439 almost 12 years Brandon Heller Remove/merge obsolete examples
Makefile 113 Bytes ff43615a almost 12 years Brandon Heller Add example unit tests and Makefile target
NOX_INSTALL 632 Bytes 0608b593 almost 12 years Brandon Heller Add notes on installing NOX on Deb testing.
README 2.38 KB 0a9ea29f almost 12 years Bob Lantz Fixed problem for empty lists in cleanup. Added...
netns.c 377 Bytes 6a30c394 almost 12 years Bob Lantz Changed to include linux/sched.c for compiling ...
setup.py 956 Bytes 8f20b95d almost 12 years Brandon Heller Auto-install run and clean scripts Also remove...

Latest revisions

# Date Author Comment
16c57ddb 01/02/2010 06:58 PM Brandon Heller

Enable controller-less setups

4804237f 01/02/2010 06:58 PM Brandon Heller

Add more NOX options

eeb9cb3c 01/02/2010 06:58 PM Brandon Heller

Restore iperf test

Also simplify test running.

83086439 01/02/2010 06:55 PM Brandon Heller

Remove/merge obsolete examples

8f20b95d 01/02/2010 10:43 AM Brandon Heller

Auto-install run and clean scripts

Also remove usused imports and outdated doc text.

a6b47322 01/02/2010 10:42 AM Brandon Heller

Add mn_run.py, a script to run Mininets.

Simplifies launching a Mininet or running tests on one.

8b5062a3 12/26/2009 10:25 PM Brandon Heller

Move TreeNet to new Mininet API

Also remove all non-object-oriented legacy Mininet code and update
tests.

User-space compatibility is untested, but most of the code for it is
still in.

e3621eb0 12/26/2009 03:40 PM Brandon Heller

Move fixLimits function to util

89bf3103 12/20/2009 10:19 PM Brandon Heller

Move Node functions into their own file

Nodes include Switch, Host, and Controller; move these to a separate
file.

This file still could use some attention to hide private functions.
Node seems like a primary class to extend, for adding stuff like Open
vSwitch, so it could benefit from a simpler interface.

4d2d52c3 12/20/2009 05:46 PM Brandon Heller

Remove unused function

View all revisions | View revisions

README


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. Mininet provides a set of Python classes and functions which enable creation of OpenFlow networks of varying sizes and topologies. In order to run Mininet, you must have: * A Linux 2.6.26 or greater kernel compiled with network namespace support enabled. (debian-testing seems to have such a kernel, but it doesn't work for compiling nox, unfortunately.) * 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 of the same name, 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 (e.g. TreeNet(2,3).run(pingTest) ) - 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 ). It provides useful diagnostic commands, as well as the ability to send a command to a node. For example, mininet> h11 ifconfig -a tells host h11 to run the command 'ifconfig -a' - A 'cleanup' script to get rid of junk (interfaces, processes, files in /tmp, etc.) which might be left around by mininet. Try this if things stop working! - Examples (in examples/ directory) to help you get started. Batteries are not included (yet!) However, some preliminary installation notes are included in the INSTALL file. Good luck! --- Bob Lantz rlantz@cs.stanford.edu

Also available in: Atom