Commit Graph
100 Commits
Author SHA1 Message Date
Bob Lantz 2ceb57915a Merge branch 'cdburkard-patches/test_walkthrough' 2014-10-07 16:11:03 -07:00
Bob Lantz 61c144b9f6 Minor fixes to wireshark test 2014-10-07 16:08:57 -07:00
lantz 8537e8d9fa Merge pull request #404 from cdburkard/patches/default_cli
use node.pexec() to update IP address of intf instead of node.cmd()
2014-10-07 14:27:46 -07:00
Bob Lantz 098bede0ec Wait for controller shutdown.
Unfortunately, this can slow things down a bit - perhaps
100-200 ms in the case of ovs-controller, but I am hoping that
it may help slightly with #399.
2014-10-02 20:09:17 -07:00
Bob Lantz 629e58ca5b Add 'use' test for using VM interactively 2014-10-02 18:45:54 -07:00
Bob Lantz d6da13d4e3 ntpd doesn't take a server argument 2014-10-01 17:32:15 -07:00
Bob Lantz 92a4f2ddbf Try using ntpd since ntpdate doesn't always work 2014-10-01 17:29:04 -07:00
Bob Lantz ded25a9ef8 disableNtpd: wait 1 second and print out date just to be sure 2014-10-01 14:42:43 -07:00
Bob Lantz 1bae1aab03 Turn of ntpd and set date manually before tests
This should fix the problem where we see the first test
taking negative time, as well as possibly other issues
with performance tests which may be sensitive to changes
in wall clock time.

Fixes #398
2014-10-01 14:20:59 -07:00
lantz 01a1e8e400 Merge pull request #397 from cdburkard/patches/test_nets
wait for switches to connect during test_nets
2014-09-30 15:19:54 -07:00
Bob Lantz 9487cb508d Fix typo 2014-09-29 19:57:26 -07:00
Bob Lantz 461751e5cd Merge branch 'cdburkard-patches/linear_bw' 2014-09-29 19:06:31 -07:00
Bob Lantz 762479c15b Merge branch 'patches/linear_bw' of https://github.com/cdburkard/mininet into cdburkard-patches/linear_bw 2014-09-29 19:06:08 -07:00
Bob Lantz c8607467bd Merge branch 'cdburkard-patches/fix_sshd' 2014-09-29 18:51:00 -07:00
Bob Lantz f8e98d6a7f Merge branch 'patches/fix_sshd' of https://github.com/cdburkard/mininet into cdburkard-patches/fix_sshd 2014-09-29 18:50:41 -07:00
lantz 4aa0b82381 Merge pull request #395 from cdburkard/patches/vlan_fail_output
check for vlan dependency
2014-09-29 18:33:38 -07:00
lantz f9522b30dc Merge pull request #394 from cdburkard/patches/cpu_test
continue to test cfs if rt is not enabled in kernel
2014-09-29 17:41:07 -07:00
Bob Lantz ec26c7492d Install vconfig in VM for VLAN example
This should help with #393 although it doesn't solve
the root issue of the example failing silently when
vconfig is missing.
2014-09-29 16:30:24 -07:00
lantz fa7edec7c8 Merge pull request #391 from cdburkard/patches/fix_popen
workaround: attach to cgroup first, then mount namespace
2014-09-26 16:47:06 -07:00
lantz 89cc29b4c2 Merge pull request #367 from cdburkard/devel/Ryu
add Ryu controller support to Mininet
2014-09-26 16:41:45 -07:00
Bob Lantz dedb06b2f5 Wait for crlf after OK/FAILED for better -v output 2014-09-25 18:43:07 -07:00
lantz 5fc3f57ede Merge pull request #386 from cdburkard/patches/cpu_test
Skip test_cpu.py if RT_GROUP_SCHED is not enabled
2014-09-25 14:19:55 -07:00
lantz 5789dae8be Merge pull request #387 from cdburkard/patches/iperf_bw
use udp with iperf to measure loss. pings are not reliable
2014-09-25 14:17:09 -07:00
lantz 0efde9c4ed Merge pull request #388 from cdburkard/patches/intfOptions
measure loss with udp iperf
2014-09-25 14:16:26 -07:00
Bob Lantz 61760eabc5 Make sure we 'sudo kill' our sudo pexpect process in close().
This should more reliably shut down pexpect subprocesses when
build.py exits before completion.
2014-09-24 11:57:46 -07:00
Bob Lantz 12095a12f4 Try to install openvswitch-testcontroller if needed 2014-09-23 17:49:46 -07:00
Bob Lantz 412726d39c Fix -a 2014-09-23 17:18:59 -07:00
Bob Lantz 136c959191 Fix wireshark namespace conflict and don't reinstall 2014-09-23 16:32:30 -07:00
lantz 2ac4cd43da Merge pull request #384 from mininet/devel/loxigen
Switch to loxigen-built openflow.lua wireshark plugin
2014-09-23 14:09:02 -07:00
Bob Lantz f603052b35 Install coloring rules regardless of plugin. Also don't clobber. 2014-09-23 14:01:40 -07:00
Bob Lantz 47be38e63c Don't install lua plugin for wireshark 1.12+
Apparently there is a conflict where the lua plugin
conflicts with the built-in dissector for openflow
that is included with 1.12 and up. For now, we will
just not install the plugin. This should fix the
14.10 VM build.

Additionally, I have added a handy function,
version_ge, which compares version numbers in
canonical x.y.z format. Thanks to stackoverflow for
pointing out the incredibly useful sort -V option!
2014-09-23 13:45:20 -07:00
Bob Lantz 9ca775cba3 Switch to loxigen-built openflow.lua wireshark plugin
The older wireshark dissectors were not well-maintained
and were a pain to build. They also added tons of extra junk
into our VM images! The ones built into the current
wireshark are deficient for 1.3. The solution for the
future is almost certainly to go with the lua-based plugin,
since it is architecture-independent and should be much
easier to maintain and upgrade.
2014-09-22 15:54:58 -07:00
lantz e4d49e6df7 Merge pull request #229 from mininet/devel/mobility-example
A simple mobility API and example
2014-09-22 12:31:31 -07:00
Bob Lantz 02bf34aa96 Remove setup/isOldOVS which have been merged into OVSSwitch 2014-09-22 12:27:49 -07:00
lantz 2c10a8e687 Merge pull request #376 from cdburkard/patches/pingOutput
if we do not receive a ping and cannot parse output, return errorTuple
2014-09-16 13:43:06 -07:00
lantz e4c4891a47 Merge pull request #359 from mininet/devel/cluster
Cluster Support Prototype
2014-09-16 13:40:45 -07:00
Bob Lantz 80d647a9b0 add findUser() to clean up user identification 2014-09-16 13:31:51 -07:00
lantz cde6c3aaf4 Merge pull request #369 from cdburkard/patches/hifi_multicore
Fix runCpuLimitTest with multiple cores
2014-09-05 15:44:23 -07:00
Bob Lantz c265deedef Cluster edition prototype: remote nodes and links.
We add a new experimental feature to allow Mininet to run across
a cluster of machines. This is currently implemented via a set
mix-in classes that provide remote nodes that are implemented
via a connection to a remote shell, and remote links which are
tunnels across servers. In this preliminary implementation,
both control and data connections are made via ssh, but this
could change in the future.

A MininetCluster class is provided which allows existing code
to be used with minimal modification - all that is required is
to provide a list of servers to use. A customizable placement
algorithm may also be specified. An experimental CLI subclass
is also provided to make it easier to examine node placement;
status and links commands can also check whether nodes and
tunnels are still running.

Although this is an experimental feature, it does include a
--cluster option to make it convenient to start up a Mininet
simulation over a cluster, and a script to assist with setting
up the prerequisite authentication via ssh key pairs.

The cluster feature is preliminary and missing some obvious
important features, such as parallel startup and multiple tunnel
types, which we hope to add in the future.
2014-09-04 23:07:01 -07:00
Bob Lantz 0333d3dbf4 qcow2size(): use qemu-image instead of file
file no longer returns image size on 14.04
fixes #373
2014-09-04 21:51:21 -07:00
Bob Lantz f2458d1dcf Accept 'ISO' or 'boot' in file *.iso command output
Fixes #372
2014-09-04 06:50:54 -07:00
Bob Lantz b85943dc0a chdir() to correct path after calling chroot()
Since chroot() doesn't chdir() by default, we are left in
an unreachable directory in node.pexec() (and in xterms.)

fixes #370
2014-09-04 02:22:13 -07:00
lantz 66ae58de17 Merge pull request #363 from cdburkard/patches/testLinkDelay
Fix UserSwitch.connected() as well as testLinkDelay() in test_hifi
We need more than one iteration since the first iteration may show reactive forwarding and ARP delay; currently we have three for good measure, although two is probably enough.
2014-08-27 16:36:30 -07:00
lantz 92075113d8 Merge pull request #342 from cdburkard/devel/startup
improve startup performance, largely by removing unnecessary ifconfigs
2014-08-26 19:59:12 -07:00
Bob Lantz 13bdd914dc Pass rename correctly in moveSwitch() 2014-08-26 19:55:48 -07:00
Bob Lantz 60b0c7a914 Fix version check. 2014-08-26 19:55:48 -07:00
Bob Lantz 212399feaf Allow port selection in addIntf() and moveIntf() 2014-08-26 19:55:48 -07:00
Bob Lantz 08d83d136d Rename intfs, and add simple moveHost() function 2014-08-26 19:55:48 -07:00
Bob Lantz dd6424fee8 Simple mobility example. 2014-08-26 19:55:48 -07:00
Bob Lantz bfdbb7089a Fall back to chroot() if setns() fails for mnt namespace
fixes #347
2014-08-26 14:09:40 -07:00
lantz 16a384ab4b Merge pull request #353 from mininet/devel/nat
Adding NAT class to NodeLib
2014-08-21 14:16:41 -05:00
lantz a3e1a9a44d Merge pull request #354 from darshanthaker/link_exception
Raise exception when link incorrectly formatted
2014-08-20 22:08:46 -05:00
lantz 6a69c2f699 Merge pull request #356 from cdburkard/patches/stop_controller
fix for controller shutdown - send SIGHUP rather than SIGKILL
2014-08-20 22:04:51 -05:00
lantz db888fa5d4 Merge pull request #348 from ggee/miniedit2109
Update to MiniEdit 2.2.0.1
2014-08-20 22:03:21 -05:00
lantz c0e7e34916 Merge pull request #337 from ggee/ovsProtocol
Add parameter to set protocol list in OVSSwitch.
2014-08-15 14:44:33 -07:00
lantz a56d9a6661 Merge pull request #344 from bentenshan/patch-1
fix Singleton.__call__ error
2014-08-04 16:18:38 -07:00
Bob Lantz 5b0897701b Merge branch 'cdburkard-devel/defaultController' 2014-07-16 10:25:37 -07:00
Bob Lantz 5465246245 Merge branch 'devel/defaultController' of https://github.com/cdburkard/mininet into cdburkard-devel/defaultController
Conflicts:
	bin/mn
	mininet/net.py
2014-07-16 10:24:35 -07:00
Bob Lantz e183e69997 Check for Controller type using isinstance() 2014-07-16 09:57:48 -07:00
Bob Lantz 2a08dec648 Hack to avoid failing version check... ;-/ 2014-07-15 08:50:30 -07:00
Bob Lantz b7268856d7 Tolerate passing controller *objects* into Mininet() 2014-07-15 08:28:05 -07:00
Bob Lantz 1b2c7a3193 Clean up standard topologies to use build 2014-07-15 05:58:10 -07:00
Bob Lantz b5962e8ee9 Added TorusTopo, a 2D torus topology 2014-07-15 05:44:13 -07:00
Bob Lantz ece509d579 add connected() to LinuxBridge 2014-07-15 05:34:32 -07:00
Bob Lantz 2935000485 Add utopic/Ubuntu 14.10 2014-07-15 04:32:52 -07:00
Bob Lantz 708b184397 Don't remove items from a list we're iterating over 2014-07-15 01:29:09 -07:00
lantz 2451d757bd Merge pull request #318 from cdburkard/patches/hifi_fix
added support in iperf for different result formats.
2014-07-14 15:20:11 -07:00
Bob Lantz 4794871a9a Change algorithm slightly and print progress 2014-07-10 13:40:21 -07:00
Bob Lantz 13d25b4109 Minor message changes 2014-07-10 12:44:49 -07:00
lantz 21b50c962e Merge pull request #325 from cdburkard/patches/userspace_connect
added waitConnected attribute to mininet class
2014-07-14 13:46:07 -07:00
lantz 872e336462 Merge pull request #328 from mininet/devel/newtopo
Add build() method to simplify Topo() usage
2014-07-11 16:27:49 -07:00
Bob Lantz 38addf2e24 Add alias + switch: { 'ovs': OVSSwitch, 'lxbr': LinuxBridge } 2014-07-10 01:34:53 -07:00
Bob Lantz 3878c000fe Add nodelib.py, a library of new node types 2014-07-10 00:44:53 -07:00
Bob Lantz 1324ae6262 Add build() method to simplify Topo() usage 2014-07-09 21:37:47 -07:00
lantz 3b484491ce Merge pull request #315 from cdburkard/patches/fix_bindpy
Added support for mount namespaces in bind.py
2014-07-08 16:27:06 -07:00
Bob Lantz 3b24bd7abd Restore non-mnexec pid detection for background commands 2014-07-08 02:22:02 -07:00
Bob Lantz e9013d761f Fix pid regex to eat \r\n 2014-07-07 21:58:30 -07:00
Bob Lantz c49b216c1f Set default printPid back to True 2014-07-07 21:55:34 -07:00
Bob Lantz 16ddf6560a Fix findPid since pty uses \r\n as line ending 2014-07-07 21:51:07 -07:00
Bob Lantz 771850b9cf Possibly faster check for sentinel. 2014-07-01 18:04:44 -07:00
Bob Lantz 355696f3dd Don't set self.waiting twice 2014-07-01 17:55:14 -07:00
lantz 25979e715e Merge pull request #317 from cdburkard/patches/cleanup
added code to kill stale mininet processes
2014-07-01 13:32:58 -07:00
Bob Lantz 82e0e9f38f Avoid overhead of another process (env) in startShell() 2014-07-01 01:49:10 -07:00
Bob Lantz 549f1ebc8f Attach a pty to each node's bash process
This should enable node commands that are expecting a tty to
behave better.
2014-06-27 16:41:54 -07:00
Bob Lantz 00803bcd7f Whitespace changes in OVSSwitch. 2014-06-27 13:05:10 -07:00
lantz 00c3238e50 Merge pull request #310 from rlane/ivs-verbose
IVSSwitch: add an option to control the --verbose flag
2014-05-28 14:31:45 -07:00
lantz e07775c7c3 Merge pull request #309 from rlane/ivs-batch-shutdown
support batch shutdown for IVS
2014-05-28 14:31:34 -07:00
lantz 5797f5852e Merge pull request #303 from jhall11/pingall
Add a timeout parameter to the pingAll command
2014-05-07 13:31:44 -07:00
lantz 15d2d76972 Merge pull request #305 from ggee/ovsssl
OVS switch connect to controllers using protocols other than TCP like SSL.
2014-05-07 13:29:39 -07:00
Bob Lantz c3bf407adf Added Ubuntu 14.04. 2014-04-23 14:28:09 -07:00
lantz 14e14f1b87 Merge pull request #286 from lantz/devel/ovsbatch
Enable batch startup/shutdown of OVS

Not perfect, but it moves us forward at least.
2014-04-13 18:44:11 -07:00
lantz bffe045267 Merge pull request #290 from backb1/patch/netstatnumeric
Netstat: do not resolve addresses
2014-04-01 11:50:51 -07:00
lantz 92a28881b1 Update net.py 2014-04-01 11:46:52 -07:00
lantz ebac6784d4 Merge pull request #293 from backb1/patch/pingloss
Ping: packet loss should be a float
2014-04-01 11:45:06 -07:00
lantz d718bb72e9 Merge pull request #257 from ggee/miniedit21071
Uploading MiniEdit 2.1.0.7.1
2014-03-21 13:02:35 -07:00
lantz 40ea9172f9 Merge pull request #283 from ggee/ovs2install
OVS install Ubuntu packages
2014-03-21 13:00:48 -07:00
lantz 787f8234ce Merge pull request #289 from rlane/ivs-wait
IVSSwitch: wait for ivs to terminate before tearing down node
2014-03-20 18:33:07 -07:00
lantz cc20908bb3 Merge pull request #288 from rlane/history
persistent command history
2014-03-20 18:26:55 -07:00
Bob Lantz 0fe73a6780 build=False is unnecessary if topo=None, which is the default 2014-03-16 05:20:43 -07:00
lantz 8f5f38c6a5 Merge pull request #246 from rlane/newns
(pending) mnexec: mount sysfs in each container
2014-03-14 17:30:32 -07:00