Statistics
| Branch: | Tag: | Revision:

mininet / mininet / node.py @ 0a9358c9

History | View | Annotate | Download (24.8 KB)

# Date Author Comment
b480b6ef 08/18/2010 09:08 AM Brandon Heller

Add newline

ccca871a 08/18/2010 09:08 AM Brandon Heller

Add passive listening port

455194a3 08/17/2010 10:04 AM Bob Lantz

Delete spaces around =.

2f40c856 08/17/2010 07:02 AM Bob Lantz

Added additional sanity checks for when OF/OVS isn't installed.

9de7873b 08/17/2010 07:02 AM Bob Lantz

Change to automatically update IP and MAC addresses.

52082ff3 08/17/2010 07:02 AM Bob Lantz

mininet.node.SWITCH_PORT_BASE specifies first switch port number.

This should be mostly cosmetic, but it causes switches to number
their ports consistently with OpenFlow 1.0, which starts at 1.
For older versions of OpenFlow, SWITCH_PORT_BASE may be set to zero.

1a52deee 08/10/2010 09:05 AM Brandon Heller

Remove print statement left in

956546ac 08/10/2010 06:22 AM Brandon Heller

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.

d26abda4 08/06/2010 05:38 PM Brandon Heller

Small OVS API change

81d27b3c 08/06/2010 05:34 PM Brandon Heller

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.

272d496d 06/16/2010 07:24 PM Bob Lantz

Darned trailing whitespace.

a6661f0a 06/16/2010 07:21 PM Bob Lantz

Consistently use tcp:%s:%d for controller IP address format.

(In user, kernel and ovsk switch classes.)

e3f6ecca 05/07/2010 12:48 AM Bob Lantz

Pass codecheck.

82b72072 05/06/2010 11:24 PM Bob Lantz

Pass pylint.

271013e0 04/27/2010 10:13 PM Bob Lantz

Minor cleanup.

e55cbef1 04/23/2010 12:12 AM Bob Lantz

Removed debugging printing.

Note now that we can pass options into switches; for example,
we could enable stp with Switch( 's1', opts='--stp' ).

121eb449 04/23/2010 12:06 AM Bob Lantz

Changed to support new cmd() interface.

It seems that it is more convenient to be able to call

cmd( 'foo', 'bar', 1)

for example. However, this may make it slightly less
efficient, so we will see how it works.

f24e70a4 04/13/2010 01:33 AM Bob Lantz

Added timeout option for monitor().

This allows monitor() to be used for polling. Of course, you
probably want to use poll() first anyway, but it's nice not
to have to block if there's no output.

a650b8e6 04/11/2010 05:04 AM Bob Lantz

Fixed catch: typo.

c6e7eaf0 04/11/2010 04:29 AM Bob Lantz

Changed to not die immediately if we send in an empty command.

There might still be some issues with this however...

b5672f15 04/11/2010 02:24 AM Bob Lantz

Cleaning up read/monitor/interrupt.

Now you don't need to specify a default read count.

Now, by default, we print the pid out in sendCmd() which allows us
to snarf it later and set lastPid correctly.

Now, we wrap os.kill() in a try block, so that if the process is...

b14b1ee4 03/30/2010 11:09 PM Bob Lantz

Remove unneeded '-' in '-n', which was causing error message.

47acf539 03/25/2010 12:02 AM Bob Lantz

Change to use printf rather than echo.

b2ef87ae 03/24/2010 10:02 PM Bob Lantz

Changes to pass code check.

We should check NOXController and RemoteController to make sure that
they are not broken, but I cannot do this at the moment.

cf6f6704 03/24/2010 09:41 PM Bob Lantz

Added two spaces before in-line # comments.

35341142 03/24/2010 08:42 PM Bob Lantz

Minor formatting changes.

fb2f6523 03/23/2010 10:05 PM Bob Lantz

Changed mininet.link() to support multiple links.

It should also probably be renamed to something like:
configLinks(src, dst, status).

f5191b85 03/23/2010 08:15 AM Brandon Heller

Revert "Add ability to pause and resume any node"

This reverts commit 07aad110819778fdf65a43a6d11e9ca46c9881db.

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

Conflicts:

mininet/node.py
f32a5468 03/23/2010 07:48 AM Brandon Heller

Fix NOX breakage

Controllers are no longer namespace-able, and all calls need one fewer
arg.

Also use more sensible temporary variable name.

ec7b211c 03/16/2010 09:59 PM Bob Lantz

Buffered output. Added net.monitor() and node.readline()

Moved monitor() and readline() into net.py and node.py respectively,
which will hopefully be useful for monitoring large sets of hosts,
as is done in udpbwtest.py.

Changed iperf to use interactive command infrastructure (such as it...

e4c82e52 03/16/2010 09:59 PM Bob Lantz

Change Node.monitor() to just return output.

It seems easier to rely on node.waiting for the moment.

e100d1d9 03/16/2010 02:27 AM Bob Lantz

Change ofprotocold -> ovs-openflowd in OVSKernelSwitch.

ad824e4e 03/16/2010 02:24 AM Bob Lantz

Pass codecheck.

a3d89912 03/14/2010 10:57 AM Brandon Heller

Comment clarification

b055728f 03/14/2010 10:53 AM Brandon Heller

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.

07aad110 03/14/2010 05:35 AM Brandon Heller

Add ability to pause and resume any node

bcacfc05 03/14/2010 02:23 AM Bob Lantz

Support for control-C. Finally.

I've changed the way things work a bit:

1. netns is replaced by mnexec, a general-purpose mininet helper.

2. For interactive commands, we now use mnexec -p, which prints out
the pid, so we can kill it when someone hits control-C!...

af380c89 03/14/2010 12:36 AM Brandon Heller

Show PIDs in dump()

e953444f 03/13/2010 09:59 PM Bob Lantz

Corrected list checkin sendCmd.

e7c787b3 03/13/2010 02:02 PM Brandon Heller

Fix sending commands to switches

4065511a 03/13/2010 12:16 AM Bob Lantz

Detach shells from tty; monitoring changes.

Call netns using setsid to detach from the tty; this is
intended to fix the problem of control-C killing your network.

sendInt() doesn't actually work - hopefully we can fix this in the
future, but it's tricky since we want to detach the many shells from...

44c63c2a 03/13/2010 12:13 AM Brandon Heller

Fix OVS breakage

e3a2ef01 03/10/2010 05:52 AM Bob Lantz

Fixed docstrings for switch arg: name.

d44a5843 03/10/2010 05:48 AM Bob Lantz

Reinstantiated inNamespace and routed control network.

We need to figure out how to specify the IP addresses for the
routed control network. For now I'm going back to 192.168.12x.y

Also changed controller params to use IP strings rather than
numbers. However, we still need to clarify what ControllerParams...

80be5642 03/08/2010 11:32 PM Bob Lantz

Removed underscores for public Node methods. Minor cleanup & comments.

6f45478f 03/05/2010 09:59 PM Bob Lantz

Removed spaces.

75d72d96 03/05/2010 09:58 PM Bob Lantz

Restored accidentally deleted kill %ofpd lines. Added Node.MAC

c8641d7d 03/05/2010 09:13 AM Brandon Heller

Fix remote controller param

086ef80e 03/05/2010 12:53 AM Bob Lantz

Changed setIP to accept numeric prefix len. Added Node.deleteIntfs().

dc630c54 03/03/2010 10:37 PM Bob Lantz

Restored scratchnet and scratchnetuser demos.

Also changed the str format for nodes to use str() rather
than repr() so we don't end up with extraneous quotes.

efc9a01c 03/03/2010 09:52 PM Bob Lantz

Moved link creation into Node.addIntf() and fixed util:CreateLink().

Also tweaked cmd/cmdPrint to make them more beautiful and functional,
and a few other minor changes, such as using a new idiom for verbose.

These changes support reinstating the examples.

137ec305 03/01/2010 11:38 PM Bob Lantz

Removed trailing spaces.

63214ea2 03/01/2010 11:34 PM Bob Lantz

Merge branch 'customtopos' into bl-dev

019bff82 02/27/2010 01:16 AM Bob Lantz

Made it possible to create a Mininet() without using a Topo object.

This increases flexibility by allowing a topology to be manually created
in Python, or specified using another format, without having to create
a Topo object first.

However, Topos are useful, and are still the default topology object!

4f4f1dd2 02/18/2010 07:44 PM Brandon Heller

Fix KeyError for missing NOX env var

31b43002 02/16/2010 10:42 PM Bob Lantz

Added a bit to comments, and removed trailing spaces.

6d72a3cb 02/08/2010 11:51 PM Bob Lantz

Minor cleanup; clarified fdToNode (still need to test however.)

7c371cf3 02/06/2010 01:29 AM Bob Lantz

Comment tweaks.

e85f8bdf 02/06/2010 01:22 AM Bob Lantz

Removed hash-bang in module files which aren't executed directly,
with the exception of topo.py, which I haven't touched.

7d4b7b7f 02/06/2010 01:18 AM Bob Lantz

Comment tweaks and additions.

281f6e59 02/06/2010 12:42 AM Bob Lantz

Minor changes to get 'make test' to pass.

- some namespace conflicts due to unpep8
- fixed infinite recursion caused by removing redundant makeIntfPair

80a8fa62 02/05/2010 10:33 AM Bob Lantz

First crack at restoring mininet python style, assisted by handy
'unpep8' script, which does most of the work.

- topo.py is still in pep8
- not all examples work, but this is due to other issues

0df8b195 02/03/2010 11:38 PM Bob Lantz

Renamed logging_mod.py -> log.py

Updated other files accordingly.

f7c2df25 01/10/2010 05:11 AM Brandon Heller

Support OpenVSwitch in kernel-mode

723d068c 01/10/2010 01:59 AM Brandon Heller

Add static code checking for style and errors

This required a change to logging, which now uses a singleton pattern.

For all future checkins, 'make codecheck' should pass.

ca58c896 01/07/2010 08:54 AM Brandon Heller

Restore user-space switch option

Switches and controller in root namespace only, for now.

d856c818 01/07/2010 05:23 AM Brandon Heller

Support out-of-order link addition

Sort interface names before passing to dpctl for kernel switch, so that
links for multipath topologies can be added in any order.

ee007363 01/06/2010 03:22 PM Brandon Heller

Add default ip and port for remote controller

376bcba4 01/03/2010 05:16 PM Brandon Heller

Add options for auto MAC and ARP setup.

Auto MAC setup sets each host MAC equal to its DPID, which simplifies
debugging.

Auto ARP setup removes the need for broadcast support for ARP, which
enables a smaller NOX controller.

1bb4412f 01/02/2010 06:58 PM Brandon Heller

Separate kernel and user switches into separate objects

16c57ddb 01/02/2010 06:58 PM Brandon Heller

Enable controller-less setups

4804237f 01/02/2010 06:58 PM Brandon Heller

Add more NOX options

60d9ead6 01/01/2010 11:26 AM David Erickson

Added a RemoteController object

Now you can run a controller on a remote PC that is
not on the same pc as Mininet.

54037995 01/01/2010 11:16 AM Brandon Heller

Add MAC auto set for switches

Also use indexing for DPIDs to avoid zeroed MAC

8b5062a3 12/26/2009 10:25 PM Brandon Heller

Move TreeNet to new Mininet API

Also remove all non-object-oriented legacy Mininet code and update
tests.

User-space compatibility is untested, but most of the code for it is
still in.

89bf3103 12/20/2009 10:19 PM Brandon Heller

Move Node functions into their own file

Nodes include Switch, Host, and Controller; move these to a separate
file.

This file still could use some attention to hide private functions.
Node seems like a primary class to extend, for adding stuff like Open
vSwitch, so it could benefit from a simpler interface.