Commit Graph
404 Commits
Author SHA1 Message Date
Brian O'Connor 4316be95c2 Prevent Mininet from crashing when display not set
fixes #173
2013-07-26 14:43:27 -07:00
Brian O'Connor d5f5778492 Merge branch 'master' of github.com:mininet/mininet 2013-07-23 17:05:23 -07:00
Brian O'Connor 1ecc63dfec improved check for downed link in parsePingFull
fixes #176
2013-07-23 17:03:51 -07:00
Brian O'Connor 1e4e8b70d9 Merge pull request #174 from pantuza/master
Dynamic Network with Remote Controller example; Extended LinearTopo
2013-07-22 22:14:03 -07:00
Brian O'Connor 921123155a Simplified and refactored examples/dynamicnet.py
Extended LinearTopo to support mulitple hosts per switch
2013-07-19 15:56:06 -07:00
Piyush Srivastava 433ca2ecb6 Fix issue with mountCgroups not recognizing mounted cgroup
Changed mountCgroups to use the file /proc/mounts (instead of the
current case where it uses the less reliable
(http://www.mail-archive.com/lxc-devel@lists.sourceforge.net/msg00455.html)
/etc/mtab thorugh the mount program
2013-07-13 13:31:05 -07:00
Brian O'Connor c188bee3e3 Fixed divide by 0 error in ping command when no packets are sent
fixes #143
2013-07-11 11:17:46 -07:00
Brian O'Connor 5d529edfb1 Removing unused import in mininet/link.py 2013-07-09 16:34:02 -07:00
Brian O'Connor 59eeeadbac Style changes in mininet/node.py and removing used import in mininet/link.py 2013-07-09 16:30:29 -07:00
Brian O'Connor 5c019d2aef CPULimitedHost cleanup() calls superclass method
fixes #161
2013-07-09 15:48:48 -07:00
Bob Lantz 10be691b86 Clean up intfs in root NS, and avoid deleting HW intfs
It appears that under certain conditions, such as when a
namespace exits, both ends of a veth pair may get dumped
into the root namespace. We therefore now remove an interface
both from its home namespace and from the root namespace.
2013-07-04 19:27:57 -07:00
Bob Lantz aa554d985d Workaround: add default dpopts='--no-slicing' to UserSwitch
This disables slicing by default but fixes bandwidth limits.
Eventually we want to enable both to work together, but for now
this enables one or the other depending on the dpopts setting.
2013-06-26 06:21:59 -07:00
Bob Lantz 804c4bbfa6 Workaround: add dpopts to UserSwitch
Currently, slicing on the user switch breaks bandwidth limits.
We don't yet have a good way of using both of them at the same time.
I'm inclined to turn off slicing by default, but I have to think
about it and also see if any one is using it...
2013-06-26 06:14:43 -07:00
Bob Lantz 1a658054ab Ensure dpid is a valid hex string in OVSSwitch 2013-06-26 05:00:30 -07:00
Bob Lantz 33e39a2471 Fix some pylint messages. 2013-06-25 20:26:06 -07:00
Bob Lantz 538a856c2f Add Switch.connected() and OVSSwitch.controllerUUIDs() 2013-06-25 20:16:25 -07:00
Bob Lantz 877e7efb5f Minor comment change and text change. 2013-06-25 19:39:53 -07:00
Bob Lantz bdd43beaf3 Clean up (and fix) OVSSwitch fast reconnect 2013-06-25 19:31:27 -07:00
Bob Lantz 12758046e1 Fix setDefaultRoute to work with passed parameters. 2013-06-25 12:51:43 -07:00
Brandon Heller e5d7b3801d topo: make new minimal Graph object a Graph, not a DiGraph
Fixes another Graph regression relative to NetworkX.

RipL broke because the NetworkX Graph object that was used previously
for topologies is an undirected graph:

>>> import networkx as nx
>>> g=nx.Graph()
>>> g.add_edge(0,1)
>>> g[1]
{0: {}}
>>> g[0]
{1: {}}

There is a separate DiGraph object in NetworkX for directed behavior.

The minimal replacement previously implemented DiGraph behavior.

>>> from mininet.topo import Graph
>>> g2=Graph()
>>> g2.add_edge(0,1)
>>> g2[0]
[1]
>>> g2[1]
[]

This commit restores undirected graph behavior.
2013-06-20 18:51:09 -07:00
Brandon Heller 4e1630e126 topo: add __getitem__ for Graph
Commit 65c35b65 'Remove networkx dependency' broke this line from RipL:

    nodes = [n for n in self.g[name] if self.layer(n) == layer]

To work around this, RipL code would have to be changed to something
like this:

    nodes = [n for n in self.g.data[name] if self.layer(n) == layer]

...which would use an internal variable, data.

It seems cleaner to add this one little feature from NetworkX Graph objects.
2013-06-20 16:27:17 -07:00
Bob 448ac9dcd4 Merge pull request #150 from MurphyMc/ovs_fast_reconnect
node: Make OVS switches reconnect quickly
2013-06-19 12:22:28 -07:00
Bob Lantz dd21df3ce4 Don't flush ALL routes and enable OPTIONAL default route/gw
fixes #152 hopefully
2013-06-17 17:09:54 -07:00
Murphy McCauley 3df07feb11 node: Make OVS switches reconnect quickly
Ordinarily, OVS switches back off when they can't reach their controllers.
Under the type of scenarios where Mininet is used, I think this is
probably just inconvenient.  This patch set controllers to attempt to
reconnect every second.
2013-06-06 16:28:13 -07:00
Murphy McCauley 153d598df3 node: Allow OVSSwitch to run in userspace mode
This adds a datapath parameter to OVSSwitch which allows one to tell OVS to
run in userspace mode rather than kernel mode.  From the commandline, this
is --switch=ovsk,datapath=user.

Note that this makes "ovsk" and the OVSKernelSwitch alias misnomers.  Since
the default behavior is still kernel mode, this is hopefully harmless.

This is the second version of this patch, which changes the argument name
and values according to Bob's suggestion.
2013-06-06 16:23:56 -07:00
Bob Lantz 5fae96eb6e Change to only split once so that cargs='--foo=1 --bar=2' works.
fixes #144
2013-06-03 15:37:56 -07:00
Bob Lantz e3d07bc1a0 Add 'x' command to open an X11 tunnel (and run a client)
fixes #142
2013-05-28 22:10:27 -07:00
Shaun Crampton e5754ae96f Fix method name mismatch for setDefaultRoute. 2013-05-23 14:31:27 -06:00
Bob Lantz 2485d57f66 Edits to pass code check and make style consistent. 2013-05-22 15:40:12 -07:00
ryanc 65c35b6595 Remove networkx dependency
Conflicts:

	util/install.sh

closes #100
2013-05-22 15:24:22 -07:00
Bob Lantz 1ea5c91fcc Update host's IP address during name-IP substitution
fixes #139
2013-05-22 15:06:10 -07:00
Bob Lantz 76c5b9d021 Add ovs-controller to shutdown list 2013-05-22 15:03:48 -07:00
Bob Lantz 229f112ff3 Change OVSSwitch.dpctl() to call ovs-ofctl
This should fix the problem of dump-flows not showing the OpenFlow
flow table flows and only showing cached kernel flow table flows.

fixes #136
2013-04-29 14:04:46 -07:00
Bob Lantz 0f6bf4ce84 start xterm with TERM=ansi to preserve title from bash.bashrc
fixes #128
2013-04-09 20:10:55 -07:00
Andrew Ferguson e09254eea3 Adjust numbering to support tc-based switch QoS
both the reference switch and Open vSwitch assume ids with major 1
can be used for tc-based QoS
2013-03-30 17:50:28 -04:00
Bob Lantz e5a15ced01 Change popen() to detach from terminal/process group.
This may or may not be the right thing to do - an alternative
would be to ignore SIGINT, but that would make the popen()
job unkillable by normal means! So we'll try this and see
how well it works.
Fixes #124
2013-03-28 18:14:24 -07:00
Bob Lantz c771b2d75a Add source node option to moveIntf() (note: low-level API!!)
In the future we may wish to enable moving interfaces across
nodes which are not in the root NS, and this would provide
the low-level mechanism to do so.
closes #122
2013-03-24 16:14:04 -07:00
Bob Lantz 477e84adba More code check nits. 2013-03-24 15:58:48 -07:00
Bob Lantz 3482d941e1 Fix code check. 2013-03-24 14:48:20 -07:00
Bob Lantz 1bf1a4d5e9 Tag node bash processes and add attach script
Try invoking bash processes with -s mininet:host,
for easy identification of hosts. This enables
easy attachment using the util/m script.
closes #121
2013-03-22 18:38:33 -07:00
Bob Lantz a0f69d98df Change makeTerm() to tunnel X11 using socat if needed
For local display, allow local root access
For remote display, tunnel with socat/mnexec
This should enable *wireshark in hosts* and fix #119
2013-03-22 15:48:51 -07:00
Bob Lantz 8204a1b694 fix --ipbase: fix ipAdd() and remove unused default from ipStr() 2013-03-13 16:16:20 -07:00
Bob Lantz bd558875f3 Add net['h1'] and for node in net support
thanks to Brian O'Connor for reminder + suggestion
closes #114
2013-03-08 18:28:21 -08:00
Bob Lantz 31fe4f1bd0 Fix pmonitor() to not return blank lines on EOF
fixes #109 (hopefully)
2013-03-06 17:26:52 -08:00
Bob Lantz 23c70f609d Add px command which uses exec() vs. py's eval()
This is necessary since exec() isn't really a function, and
eval can't evaluate statements.
fixes #104
2013-02-28 19:14:37 -08:00
Bob Lantz 0aefb0e036 Fix Node.MAC(intf) to return intf.MAC() rather than intf.IP()
Fixes #89 ; Thanks to Nikhil S. Menon for the bug report
2012-12-19 16:11:57 -08:00
Bob Lantz c8b857465b pass code check 2012-11-30 21:00:23 -08:00
Bob Lantz 21366afc54 2.0.0rc1 -> 2.0.0 final 2012-11-30 20:57:53 -08:00
Brandon Heller b453e0068f node: verify telnet installation for controller checking
Reported-by: Julius Bachnick

https://mailman.stanford.edu/pipermail/mininet-discuss/2012-November/001349.html
2012-11-26 15:22:07 -08:00
Brandon Heller 3744638e5c node: add OVS passive listening support 2012-11-15 00:50:25 -08:00