Commit Graph
100 Commits
Author SHA1 Message Date
Brandon Heller 1f1d590c7a test: Improve unit tests to verify basic functionality
Also a more complete ping test that parses all output to the CLI.

These tests expand the hifi-specific ones to not just cover whether
a topology can be created with options, but whether those options
are properly implemented within some tolerance, like CPU limits,
link bandwidth, delays, and even drops.
2012-11-14 07:57:17 -08:00
Brandon Heller fcd01592e1 Move CPU limit into net, to be reused in future unit tests 2012-11-14 07:55:10 -08:00
Brandon Heller e1205a8a49 Add a simple unit test for link/host creation with options 2012-11-14 00:43:46 -08:00
Brandon Heller d7768ab228 examples/simpleperf: Warn in docstring about effects of link settings
These include dropped pings and iperf hanging.
2012-11-13 23:28:24 -08:00
Brandon Heller bf208cdeb6 Fix SSHD example by generalizing input intf args
A number of functions in node.py look like this:
   return self.intf( intf ).<other stuff>

Previously, self.intf(...) in Node would expect a string name for an
interface and return None if an object was passed in instead of a
string name.

Now, be more permissive and assume that objects passed in are for Intf
objects.  This makes all such functions in node.py handle more flexible
input args, either name or actual Intf object.

An alternative and equally valid approach would be to raise an Exception
whenever a non-string, non-falsy value was passed in to Node.intf(), and
to modify the code in at least one place - examples/sshd.py - to pass
the interface name, rather than the interface object.

Also fix input args for examples/scratchnetuser.py - the interface name
was being passed in as the prefix len, which makes no sense.
2012-11-13 22:44:47 -08:00
Brandon Heller 12fea0f6d5 examples/baresshd: ensure root permissions
Prevent idiots like me from getting confused by non-obvious 'broken pipe'
errors when they forget to put 'sudo' in front  :-)
2012-11-13 21:33:44 -08:00
Brandon Heller bcfb3009c0 small refactor: put function to ensure root in util
Two benefits:
- One place to change if in the future, a more granular method of
  root access is used (like the BigSwitch patch).
- Makes this reusable by stuff like examples/baresshd.py that use
  the low-level Mininet API.
2012-11-13 21:32:41 -08:00
Brandon Heller 8a1264e266 Fix 'cgroups not mounted' error in U12.10
'mount' shows something slightly different in Ubuntu 12.10:

cgroup on /sys/fs/cgroup type tmpfs (rw,uid=0,gid=0,mode=0755)

Note the lack of a plural on first word cgroup, which has changed.

Still mounted at /sys/fs/cgroup, so check for both possibilities
when instantiated CPU-limited hosts.
2012-11-13 20:53:13 -08:00
Brandon Heller 36c9b040ca examples: Add new tests to README 2012-11-13 18:33:10 -08:00
Brandon Heller 2eb0593cd2 examples/cpu: Fix typo, note existence in README 2012-11-13 18:06:19 -08:00
Brandon Heller d40003e0cd examples: Make simpleperf.py executable 2012-11-13 18:05:10 -08:00
Brandon Heller 9330a33fe5 pep8: Fix E501 line-too-long errors incurred fixing other pep8 stuff :-) 2012-11-13 17:21:36 -08:00
Brandon Heller 2e089b5e4a pep8: Fix E127 continuation line over-indented
There are a bunch of these remaining, but I don't think the right course is
to 'fix' all of them to make pep8 happy, but instead to either change
the test in pep8 to consider that a continuation line may itself
be continued halfway, OR, to change the code in these lines to be more
readable by removing the need for all those nested continuations.

Personally, I find multiply-broken lines (aka nested continuations) really
hard to read.
2012-11-13 17:17:51 -08:00
Brandon Heller edf6003217 pep8: fix E128 continuation line under-indented errors
I wasn't sure this was worth fixing at first, but it does look more readable
now.
2012-11-13 16:59:10 -08:00
Brandon Heller c0095746af pep8: Fix E121/126, continuation line indention 2012-11-13 16:08:26 -08:00
Brandon Heller 33d548b412 pep8: Fix E121 continuation line indentation is not a multiple of four 2012-11-13 15:01:11 -08:00
Brandon Heller 615ebb7afa pep8: Fix E125 continuation line does not distinguish itself from next logical line 2012-11-13 14:56:49 -08:00
Brandon Heller 7a5060478b pep8: Fix E711, comparisons to None should use 'is' or 'is not'
Lengthy discussion of why this is a good thing (I didn't know) at SO:

http://stackoverflow.com/questions/2209755/python-operation-vs-is-not
2012-11-13 14:46:58 -08:00
Brandon Heller 0bd5c6519c pep8: Fix E203 whitespace before punctutation 2012-11-13 14:39:31 -08:00
Brandon Heller 1052f8a0d4 pep8: Fix E271/E272, spaces before/after keyword 2012-11-13 14:36:56 -08:00
Brandon Heller 03d211f2a9 codecheck: Make codecheck happy with a consistent version num 2012-11-12 18:08:59 -08:00
Brandon Heller f6c4239409 install: Add 'make codecheck' deps
These total to only ~200KB.
2012-11-12 18:07:19 -08:00
Brandon Heller 59897168d4 install: Update OFTest repo location
This repo has moved to git://github.com/floodlight/oftest.git
2012-11-12 16:46:29 -08:00
Brandon Heller b597ef5d55 install: Add help2man to MN deps
'make install' calls help2man, so apt-get install it beforehand.
2012-11-12 16:46:22 -08:00
Brandon Heller 73da7204e6 Update README 2012-11-08 15:31:10 -08:00
Brandon Heller 496cd25d37 Update oftest repo location
Fixes Issue 41: https://github.com/mininet/mininet/issues/41

Reported-by: sublinhado on GitHub
2012-06-14 11:10:39 -07:00
Brandon Heller 928c0761a0 Move code from mn into mininet/util to enable reuse
Any code in mn is not usable by other Python code.

Hence, move this code into util, so other scripts can use it.
2012-05-30 00:08:01 -07:00
Brandon Heller 30b4b4e7f9 Rename and document customNode
Now customConstructor, because it general to both links and nodes.
2012-05-29 23:57:52 -07:00
Brandon Heller f509ae282d cli: add time command 2012-05-25 16:34:05 -07:00
Brandon Heller 6143bb1395 Merge pull request #31 from mininet/devel/wireshark
Devel/wireshark
2012-04-12 10:12:53 -07:00
Brandon Heller 99222e70f7 Merge pull request #26 from mininet/devel/install-oneiric
Devel/install oneiric
2012-03-13 15:11:29 -07:00
Brandon Heller b80f4aeb85 install.sh: Copy Wireshark dissector to global plugin dir 2012-02-10 14:59:39 -08:00
Brandon Heller 4800435d1a vm: Don't exit if some files aren't there 2010-08-18 04:43:51 -07:00
Brandon Heller 4d1c17e17e Move kernel downloads to OpenFlow web page 2010-08-18 02:30:18 -07:00
Brandon Heller 9da63d4e85 Add dpctl command, which runs on all switches 2010-08-18 02:08:35 -07:00
Brandon Heller 0a9358c9fc Add option to turn off passive listening port 2010-08-18 02:08:34 -07:00
Brandon Heller b480b6ef77 Add newline 2010-08-18 02:08:34 -07:00
Brandon Heller ccca871ae6 Add passive listening port 2010-08-18 02:08:34 -07:00
Brandon Heller 299925c22f Add more param choices for iperf udp on CLI 2010-08-16 12:04:24 -07:00
Brandon Heller 7d83d46270 Remove print statement left in 2010-08-16 12:04:24 -07:00
Brandon Heller 2fffa0bb6f Change port base from 0 to 1
OpenFlow versions > v0.9 require this.

Only tested w/FatTree topo - it's almost a guarantee that this breaks
every other topology.
2010-08-16 12:04:24 -07:00
Brandon Heller 0a6e54231e Set default switch type to OVS 2010-08-16 12:04:24 -07:00
Brandon Heller 6b2a3b187b Small OVS API change 2010-08-16 12:04:24 -07:00
Brandon Heller e282b6e29f Fix --mac breakage
The OVS interface for this moved to ovs-openflowd.

This functionality was never there for the user-space switch.  Now it's
in.
2010-08-16 12:04:23 -07:00
Brandon Heller 7abca147c4 vm: Remove SSH keychain load-on-boot script 2010-08-16 12:04:23 -07:00
Brandon Heller 71ba12c539 vm: Forgot to run boot.sh 2010-08-16 12:04:23 -07:00
Brandon Heller b97415eed4 vm: Use OVS git release
OVS1.0.1 does not work with veth pairs.
2010-08-16 12:04:23 -07:00
Brandon Heller 9f8c25515f Add missing dep for cbench 2010-08-16 12:04:23 -07:00
Brandon Heller 011b02f886 Update VM install for 1.0
Remove all OpenFlow Ref kmod stuff.
2010-08-16 12:04:23 -07:00
Brandon Heller fc75a1b185 Add ability to specify hosts for iperf test 2010-08-16 11:41:25 -07:00
Brandon Heller 57aae3e103 Add more param choices for iperf udp on CLI 2010-08-10 04:28:18 -07:00
Brandon Heller 60a39a7241 Add ability to specify hosts for iperf test 2010-08-10 02:16:36 -07:00
Brandon Heller 1a52deeea6 Remove print statement left in 2010-08-10 02:05:20 -07:00
Brandon Heller 956546acc7 Change port base from 0 to 1
OpenFlow versions > v0.9 require this.

Only tested w/FatTree topo - it's almost a guarantee that this breaks
every other topology.
2010-08-09 23:22:40 -07:00
Brandon Heller e9d4482e42 Set default switch type to OVS 2010-08-06 10:39:39 -07:00
Brandon Heller d26abda426 Small OVS API change 2010-08-06 10:38:15 -07:00
Brandon Heller 81d27b3c56 Fix --mac breakage
The OVS interface for this moved to ovs-openflowd.

This functionality was never there for the user-space switch.  Now it's
in.
2010-08-06 10:34:17 -07:00
Brandon Heller 72ddde869c vm: Remove SSH keychain load-on-boot script 2010-08-06 01:15:40 -07:00
Brandon Heller cd19cf520f vm: Forgot to run boot.sh 2010-08-06 00:44:29 -07:00
Brandon Heller a434c3d1b6 vm: Use OVS git release
OVS1.0.1 does not work with veth pairs.
2010-08-06 00:36:39 -07:00
Brandon Heller 6aa7f3493b Add missing dep for cbench 2010-08-05 16:56:50 -07:00
Brandon Heller 32b122bf42 Update VM install for 1.0
Remove all OpenFlow Ref kmod stuff.
2010-08-04 21:56:04 -07:00
Brandon Heller 3b48e82990 Add rough tutorial VM changes 2010-05-20 16:23:08 -07:00
Brandon Heller 15b482e375 Support gnome terminals too
Caution: code is incomplete - can't set a default type from the CLI
and in some places the phrase xterm should be replaced by terminal.
2010-04-05 02:27:00 -07:00
Brandon Heller e540ab5726 Use quit rather than kill when cleaning up screens
Kill seems to get ignored, while quit kills the detached sessions.
2010-04-05 02:07:23 -07:00
Brandon Heller ce9cd5bee5 Add command to spawn an xterm 2010-04-05 01:06:30 -07:00
Brandon Heller 74cd084315 Clean up a few more things 2010-03-23 00:51:45 -07:00
Brandon Heller 1e4f337584 Fix path for cleaning 2010-03-23 01:18:48 -07:00
Brandon Heller f5191b855f Revert "Add ability to pause and resume any node"
This reverts commit 07aad11081.

When the semantics are clear, functionality like this will get added back to
Mininet.

Conflicts:

	mininet/node.py
2010-03-23 01:15:51 -07:00
Brandon Heller f32a546855 Fix NOX breakage
Controllers are no longer namespace-able, and all calls need one fewer
arg.

Also use more sensible temporary variable name.
2010-03-23 00:48:35 -07:00
Brandon Heller e4370f7ee7 Run depmod for specified kernel 2010-03-22 23:56:58 -07:00
Brandon Heller c9ae0ab003 Generate initrd if missing
Works around bug in newer version of kernel-package.
2010-03-23 01:45:59 -07:00
Brandon Heller fc48e6ee7c Add VM build option for 2.6.33 OVS/OF 2010-03-22 23:17:22 -07:00
Brandon Heller 9a7717ed9d Get past NOX build error w/newer autoconf 2010-03-22 22:44:31 -07:00
Brandon Heller c532689266 Clone NOX into ~/ and fix typo 2010-03-22 22:28:13 -07:00
Brandon Heller d82b6183d6 Get past verification error 2010-03-22 22:14:57 -07:00
Brandon Heller a9aebba7f7 Restore 2.6.29 as default image 2010-03-22 22:14:10 -07:00
Brandon Heller 9098528a16 Fix CLI breakage with new test interface 2010-03-24 07:24:26 -07:00
Brandon Heller 55c335849a Add OVS patch for 2.6.33+
Thanks to Ben Pfaff who wrote the patch
2010-03-24 05:20:12 -07:00
Brandon Heller 4779fa84f9 Add bash_profile for VM build 2010-03-24 05:20:12 -07:00
Brandon Heller 0b1832ddc2 Consolidate install script and add cmd-line options
Now, the majority the install can be done with one line, but the other
to each part of the install is still available.

Also fix a few bugs and add Wireshark coloring rules.
2010-03-24 05:19:52 -07:00
Brandon Heller a3d899123d Comment clarification 2010-03-14 03:57:25 -07:00
Brandon Heller b055728fd5 Automatically load kernel module dependencies
Before this commit, you'd have to manually insert the kernel module for
OVS or OF kernel modules, and you couldn't run one regression test with
all 3.

Now, these are kmod insert/remove is handled automatically.
2010-03-14 03:53:16 -07:00
Brandon Heller a165881049 Ignore pyc files 2010-03-14 03:53:16 -07:00
Brandon Heller e01292c167 Fix minor typo 2010-03-14 03:53:16 -07:00
Brandon Heller 956bf4f2d0 Fix param typo 2010-03-14 03:53:15 -07:00
Brandon Heller 3fac5a43d7 Handle ping output for paused hosts 2010-03-13 21:44:11 -08:00
Brandon Heller 07aad11081 Add ability to pause and resume any node 2010-03-13 21:35:52 -08:00
Brandon Heller 28cd95c374 Fix link command parsing bug 2010-03-13 21:32:11 -08:00
Brandon Heller af380c8912 Show PIDs in dump() 2010-03-13 16:36:34 -08:00
Brandon Heller 8d3c2859e4 Add port status change command 2010-03-13 06:30:53 -08:00
Brandon Heller e7c787b343 Fix sending commands to switches 2010-03-13 06:02:40 -08:00
Brandon Heller 44c63c2abd Fix OVS breakage 2010-03-12 16:13:09 -08:00
Brandon Heller 77529ce550 Ignore binary and egg data 2010-03-12 16:13:08 -08:00
Brandon Heller c30e500731 Update install instructions 2010-03-12 16:13:08 -08:00
Brandon Heller b403cc7f96 Colorize git output by default in VM 2010-03-12 16:13:08 -08:00
Brandon Heller 3b1174eff6 Update install scripts
Don't build NOX and OVS as root.  Also don't nuke kernel src.  Install
newer autoconf needed for OVS install from Deb backports, not src.
2010-03-12 16:13:08 -08:00
Brandon Heller b0a7a2579a Fix OVS breakage 2010-03-10 15:44:00 -08:00
Brandon Heller 4e57ddbce1 Ignore binary and egg data 2010-03-09 22:45:54 -08:00
Brandon Heller 8f30aa0017 Update install instructions 2010-03-09 22:37:29 -08:00