Skip to content

wborbaneto/mininet-wifi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

    Mininet: A Simple Virtual Testbed for OpenFlow
                        aka
How to Squeeze a 1024-node OpenFlow Network onto your Laptop

Development Version, March 2010

---

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 may be invoked directly from the command line, and also
provides a handy Python API for creating 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 (see INSTALL for additional information.)

* An OpenFlow implementation (either the reference user or kernel
  space implementations, or Open vSwitch.) Appropriate kernel modules
  (e.g. tun and ofdatapath for the reference kernel implementation) must
  be loaded.

* Python, bash, ping, iperf, etc.

* Root privileges (required for network device access)

Currently Mininet includes:

- A simple node infrastructure (Host, Switch, Controller classes) for
  creating virtual OpenFlow networks
	
- A simple network infrastructure (Mininet class) supporting parametrized
  topologies (Topo subclasses.) For example, a tree network may be created
  with the command
  
  # mn --topo tree,depth=2,fanout=3
  
- Basic tests, including connectivity (ping) and bandwidth (iperf)

- A command-line interface (CLI class) which 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' command to get rid of junk (interfaces, processes, files in
  /tmp, etc.) which might be left around by mininet. Try this if things
  stop working!
  
  # mn -c
  
- Examples (in the 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
[email protected]

Packages

No packages published

Languages

  • Python 89.8%
  • C 5.3%
  • Shell 4.6%
  • Makefile 0.3%