Statistics
| Branch: | Tag: | Revision:

mininet / examples @ e113f8ed

Name Size Revision Age Author Comment
  test e113f8ed almost 4 years Bob Lantz Add error message to shed light on why this som...
README.md 4.85 KB c2341cd4 about 5 years cody burkard update examples README with new examples
__init__.py 48 Bytes 045ef7b8 about 6 years Bob Lantz Add docstring to satisfy pylint
baresshd.py 1.05 KB 7c5d2771 about 5 years cody burkard wait for sshd to start in example
bind.py 2.26 KB 7a3159c9 almost 5 years Bob Lantz Spacing tweaks for pep8 checker
cluster.py 32.6 KB d5d66f12 over 4 years Roan Huang Fixed `whoami` output problem in cluster.py Re...
clusterSanity.py 501 Bytes 7a3159c9 almost 5 years Bob Lantz Spacing tweaks for pep8 checker
clustercli.py 3.78 KB 3ac5cafe almost 5 years Bob Lantz Fix code minor code check errors
clusterdemo.py 639 Bytes 7a3159c9 almost 5 years Bob Lantz Spacing tweaks for pep8 checker
consoles.py 15.2 KB 7a3159c9 almost 5 years Bob Lantz Spacing tweaks for pep8 checker
controllers.py 1.04 KB db134f36 almost 4 years Bob Lantz Allow RemoteController to connect to correct po...
controllers2.py 1.57 KB 0fe73a67 over 5 years Bob Lantz build=False is unnecessary if topo=None, which ...
controlnet.py 4.85 KB 4ac45a39 almost 5 years Bob Lantz Fix super() arg in DataController
cpu.py 2.07 KB 643c9f91 about 5 years Bob Lantz More pylint changes...
emptynet.py 960 Bytes ecddbcf2 about 6 years Brian O'Connor updated emptynet to use addLink
hwintf.py 1.51 KB 9a22e2b7 almost 4 years Bob Lantz Use ifconfig for interface verification. Previ...
intfoptions.py 1.29 KB 5a530af1 about 5 years Bob Lantz Remove trailing whitespace. ;-/
limit.py 1.99 KB 18aab5b7 about 5 years Bob Lantz More pylint changes
linearbandwidth.py 3.89 KB 33695835 almost 4 years Bob Lantz Only use 80 hosts for linearbandwidth.py for no...
linuxrouter.py 2.76 KB 79f5d39d almost 5 years Bob Lantz Comment edits and pass code check
miniedit.py 151 KB e5a5cd00 over 4 years Bob Lantz customConstructor -> customClass
mobility.py 4.1 KB 7a3159c9 almost 5 years Bob Lantz Spacing tweaks for pep8 checker
multilink.py 834 Bytes 18aab5b7 about 5 years Bob Lantz More pylint changes
multiping.py 2.18 KB 891d8071 about 6 years Brian O'Connor fixed multiping example
multipoll.py 2.41 KB edf60032 about 7 years Brandon Heller pep8: fix E128 continuation line under-indented...
multitest.py 1.02 KB b605cf74 about 6 years Brian O'Connor style in multitest
nat.py 580 Bytes 9ed14fa0 over 4 years Bob Lantz Remove explicit NAT code and use built-in NAT f...
natnet.py 1.9 KB 18aab5b7 about 5 years Bob Lantz More pylint changes
numberedports.py 2.28 KB 7a3159c9 almost 5 years Bob Lantz Spacing tweaks for pep8 checker
popen.py 1023 Bytes 50cebe67 over 7 years Bob Lantz Add pmonitor() to make it easy to monitor popen...
popenpoll.py 932 Bytes 9a73dcad about 6 years Brian O'Connor fixed print format in popenpoll
scratchnet.py 1.98 KB a49c85a6 over 7 years Bob Lantz Fix examples to work with new API (and vice-ver...
scratchnetuser.py 2.4 KB bf208cde about 7 years Brandon Heller Fix SSHD example by generalizing input intf arg...
simpleperf.py 1.84 KB 5365831d almost 4 years Bob Lantz Use 0% loss when testing examples/simpleperf.py...
sshd.py 2.97 KB 5f8547a5 almost 5 years Bob Lantz Remove now-unused Link import
tree1024.py 522 Bytes eafbd2a5 almost 5 years Bob Lantz Change to OVSSwitch
treeping64.py 950 Bytes 2e089b5e about 7 years Brandon Heller pep8: Fix E127 continuation line over-indented ...
vlanhost.py 3.59 KB 643c9f91 about 5 years Bob Lantz More pylint changes...

Latest revisions

# Date Author Comment
e113f8ed 02/03/2016 07:32 AM Bob Lantz

Add error message to shed light on why this sometimes fails

33695835 01/26/2016 11:40 PM Bob Lantz

Only use 80 hosts for linearbandwidth.py for now

In the long run, we should debug the performance issues
with kvm and Ubuntu 15. For now, however, we're relaxing
the constraints.

Closes #594

5dc15aea 01/26/2016 11:40 PM Bob Lantz

Tolerate slow startup/lost pings for now

In the long run we should troubleshoot the performance issue
on kvm/Ubuntu15, but for now we are relaxing the constraint.

Closes #593

9a22e2b7 01/25/2016 10:27 PM Bob Lantz

Use ifconfig for interface verification.

Previously we were using both ip link and ifconfig - not only is
this inconsistent and redundant, but it also broke when newer
ip link changed the reported names of certain interfacs to
"h1-eth0@36:".

Fixes #592

0fac568a 01/22/2016 09:52 PM Bob Lantz

Rewrite tolerance to be saner (plus or minus 20%)

5365831d 01/22/2016 01:07 AM Bob Lantz

Use 0% loss when testing examples/simpleperf.py

Also clarified the code in test_simpleperf.py.

Fixes #590

db134f36 01/14/2016 06:40 AM Bob Lantz

Allow RemoteController to connect to correct port.

Fixes #584

65a0e5f3 06/25/2015 08:36 PM lantz

Merge pull request #528 from pichuang/cluster

Fixed `whoami` output problem in cluster.py

d5d66f12 06/25/2015 05:37 AM Roan Huang

Fixed `whoami` output problem in cluster.py

Remove the last character when use `whoami`

9ed14fa0 06/23/2015 10:17 PM Bob Lantz

Remove explicit NAT code and use built-in NAT functionality.

This API isn't great - we should try to improve it in the future.

View revisions

README


Mininet Examples

These examples are intended to help you get started using Mininet's Python API.

baresshd.py:

This example uses Mininet's medium-level API to create an sshd process running in a namespace. Doesn't use OpenFlow.

bind.py:

This example shows how you can create private directories for each node in a Mininet topology.

cluster.py:

This example contains all of the code for experimental cluster edition. Remote classes and MininetCluster can be imported from here to create a topology with nodes on remote machines.

clusterSanity.py:

This example runs cluster edition locally as a sanity check to test basic functionality.

clustercli.py:

This example contains a CLI for experimental cluster edition.

clusterdemo.py:

This example is a basic demo of cluster edition on 3 servers with a tree topology of depth 3 and fanout 3.

consoles.py:

This example creates a grid of console windows, one for each node, and allows interaction with and monitoring of each console, including graphical monitoring.

controllers.py:

This example creates a network with multiple controllers, by using a custom Switch() subclass.

controllers2.py:

This example creates a network with multiple controllers by creating an empty network, adding nodes to it, and manually starting the switches.

controlnet.py:

This examples shows how you can model the control network as well as the data network, by actually creating two Mininet objects.

cpu.py:

This example tests iperf bandwidth for varying CPU limits.

emptynet.py:

This example demonstrates creating an empty network (i.e. with no topology object) and adding nodes to it.

hwintf.py:

This example shows how to add an interface (for example a real hardware interface) to a network after the network is created.

intfoptions.py:

This example reconfigures a TCIntf during runtime with different traffic control commands to test bandwidth, loss, and delay.

limit.py:

This example shows how to use link and CPU limits.

linearbandwidth.py:

This example shows how to create a custom topology programatically by subclassing Topo, and how to run a series of tests on it.

linuxrouter.py:

This example shows how to create and configure a router in Mininet that uses Linux IP forwarding.

miniedit.py:

This example demonstrates creating a network via a graphical editor.

mobility.py:

This example demonstrates detaching an interface from one switch and attaching it another as a basic way to move a host around a network.

multiLink.py:

This example demonstrates the creation of multiple links between nodes using a custom Topology class.

multiping.py:

This example demonstrates one method for monitoring output from multiple hosts, using node.monitor().

multipoll.py:

This example demonstrates monitoring output files from multiple hosts.

multitest.py:

This example creates a network and runs multiple tests on it.

nat.py:

This example shows how to connect a Mininet network to the Internet using NAT. It also answers the eternal question "why can't I ping google.com?"

natnet.py:

This example demonstrates how to create a network using a NAT node to connect hosts to the internet.

numberedports.py:

This example verifies the mininet ofport numbers match up to the ovs port numbers. It also verifies that the port numbers match up to the interface numbers

popen.py:

This example monitors a number of hosts using host.popen() and pmonitor().

popenpoll.py:

This example demonstrates monitoring output from multiple hosts using the node.popen() interface (which returns Popen objects) and pmonitor().

scratchnet.py, scratchnetuser.py:

These two examples demonstrate how to create a network by using the lowest- level Mininet functions. Generally the higher-level API is easier to use, but scratchnet shows what is going on behind the scenes.

simpleperf.py:

A simple example of configuring network and CPU bandwidth limits.

sshd.py:

This example shows how to run an sshd process in each host, allowing you to log in via ssh. This requires connecting the Mininet data network to an interface in the root namespace (generaly the control network already lives in the root namespace, so it does not need to be explicitly connected.)

tree1024.py:

This example attempts to create a 1024-host network, and then runs the CLI on it. It may run into scalability limits, depending on available memory and sysctl configuration (see INSTALL.)

treeping64.py:

This example creates a 64-host tree network, and attempts to check full connectivity using ping, for different switch/datapath types.

vlanhost.py:

An example of how to subclass Host to use a VLAN on its primary interface.

Also available in: Atom