Statistics
| Branch: | Tag: | Revision:

mininet / README @ 55179737

History | View | Annotate | Download (2.28 KB)

1

    
2
    Mininet: A Simple Virtual Testbed for OpenFlow/SDN
3
                        or
4
How to Squeeze an OpenFlow Network onto your Laptop
5

    
6
Mininet 2.0.0d2
7

    
8
---
9
Welcome to Mininet!
10

    
11
Mininet creates OpenFlow test networks by using process-based
12
virtualization and network namespaces.
13

    
14
Simulated hosts (as well as switches and controllers with the user
15
datapath) are created as processes in separate network namespaces. This
16
allows a complete OpenFlow network to be simulated on top of a single
17
Linux kernel.
18

    
19
Mininet may be invoked directly from the command line, and also provides a
20
handy Python API for creating networks of varying sizes and topologies.
21

    
22
In order to run Mininet, you must have:
23

    
24
* A Linux kernel compiled with network namespace support
25
  enabled (see INSTALL for additional information.)
26

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

    
32
* Python, bash, ping, iperf, etc.
33

    
34
* Root privileges (required for network device access)
35

    
36
Currently Mininet includes:
37

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

    
49
- A command-line interface (CLI class) which provides useful 
50
  diagnostic commands, as well as the ability to send a command to a
51
  node. For example,
52
  
53
  mininet> h11 ifconfig -a
54
  
55
  tells host h11 to run the command 'ifconfig -a'
56

    
57
- A 'cleanup' command to get rid of junk (interfaces, processes, files in
58
  /tmp, etc.) which might be left around by Mininet or Linux. Try this if 
59
  things stop working!
60
  
61
  # mn -c
62
  
63
- Examples (in the examples/ directory) to help you get started.
64

    
65
Batteries are not included (yet!)
66

    
67
However, some preliminary installation notes are included in the INSTALL
68
file.
69

    
70
Additionally, much useful information, including a Mininet tutorial,
71
is available on the Mininet wiki:
72

    
73
http://openflow.org/mininet
74

    
75
Enjoy, and good luck!
76

    
77
---
78
Bob Lantz
79
rlantz@cs.stanford.edu