- Mar 24, 2015
-
-
Bob Lantz authored
-
- Mar 19, 2015
-
-
Bob Lantz authored
Perhaps it should be RyuController, but just Ryu for now. RYU made no sense because it's not an acronym.
-
- Mar 18, 2015
- Mar 14, 2015
-
-
Bob Lantz authored
specialClass is an analog of functools.partial but for classes. We can now use it instead of partial() in mn, so that Mininet can introspect on the actual base class. Fixes #488
-
- Mar 13, 2015
-
-
lantz authored
Support for running arbitrary command when starting terminal
-
- Mar 02, 2015
- Feb 21, 2015
-
-
Bob Lantz authored
I also added another try/catch block so that interrupting the 'Interrupt' message should no longer occur.
-
- Feb 20, 2015
-
-
Rich Lane authored
Previously, when creating multiple CLI objects, each one would append the ~/.mininet_history file to readline's internal list. When writing the file back it would be duplicated for each CLI object created. So, over a few mininet runs the history file would grow exponentially. This change moves the readline setup code out of the CLI constructor into a class method and adds a flag to prevent it from being executed more than once.
-
- Feb 09, 2015
-
-
Joseph Beshay authored
-
- Feb 04, 2015
-
-
Bob Lantz authored
Fixes #475
-
Bob Lantz authored
-
Bob Lantz authored
This was causing controlnet.py to not clean up its interfaces, since those interfaces were linked from the controller to the switch rather than vice-versa!! deleteIntfs already will only delete interfaces whose names match our name, which should usually prevent us from accidentally deleting a hardware interface from the root namespace!
-
Bob Lantz authored
-
Bob Lantz authored
-
Bob Lantz authored
-
Bob Lantz authored
-
Bob Lantz authored
-
Bob Lantz authored
-
Bob Lantz authored
-
Bob Lantz authored
-
Bob Lantz authored
-
Bob Lantz authored
-
Bob Lantz authored
-
Bob Lantz authored
-
Bob Lantz authored
In the future, we should probably not hardwire this, or should at least make it a constant!!
-
Bob Lantz authored
We also clean things up a bit and check for error messages, which now can cause exceptions which should invoke cleanup.
-
Bob Lantz authored
Since we already disable job notification with +m, it doesn't make sense to set it in the original invocation! It's also annoying if all of the host commands end up overwriting your regular bash_history!!
-
Bob Lantz authored
-
lantz authored
Batch startup support for OVS Currently, every ovs-vsctl command requires reading the entire OVS configuration database. This means that its performance gets linearly slower as more switches and ports are added. To mitigate this, we batch multiple configuration operations into individual, long, ovs-vsctl commands. This patch set makes a couple of other notable changes, including setting printPid=False by default (avoids using mnexec unnecessarily) and running certain commands using errRun rather than quietRun. Additionally we no longer look for leftover links in the root namespace, so code relying on that functionality may have to change slightly (as in controlnet.py and sshd.py for example.) It also adds cluster support to mn -c. The performance result is that mn --topo linear,200 --test none now completes in 60 seconds rather than 95 seconds (on my laptop) without the patch (vs. 101 seconds in 2.2.0). This is still slower than I would like - we should be able to make some additional improvements.
-
Bob Lantz authored
-
Bob Lantz authored
-
Bob Lantz authored
-
- Jan 29, 2015
-
-
Bob Lantz authored
If you try to use the low-level API, you are probably not going to call batchStartup()! So, we set batch=False by default. This means that buildFromTopo() needs to set it to True, so we add a bit of irritatingly complex machinery to allow this to happen. The good fallout of this is that now customConstructor() returns a real subclass, not simply a constructor function! We also detect errors where people are incorrectly attempting to give parameters to a lambda function - since none of our lambdas accept parameters!! Note that this is a bit like functools.partial for classes - it would be nice if functools had a true subclassing function.
-