diff --git a/INSTALL b/INSTALL index 426c61d..6f0d9d5 100644 --- a/INSTALL +++ b/INSTALL @@ -41,6 +41,13 @@ Preliminary Mininet Installation/Configuration Notes insmod /home/openflow/openflow/datapath/linux-2.6/ofdatapath.ko modprobe tun +- The default OpenFlow controller (controller(8)) only supports 16 + switches! If you wish to run a network with more than 16 switches, + please recompile controller(8) with larger limits, or use a different + controller such as nox. (At the moment, unfortunately, it's not + easy to do so without modifying mininet.py. This will be improved + upon, and an example provided, in the future.) + - For scalable configurations, you might need to increase some of your kernel limits. For example, you could add something like the following to /etc/sysctl.conf (modified as necessary for your desired diff --git a/README b/README index 028ac47..7b58862 100644 --- a/README +++ b/README @@ -46,10 +46,17 @@ Currently mininet includes: - A simple command-line interface which may be invoked on a network using .run( Cli ) - + +- A 'cleanup' script to get rid of junk (interfaces, processes, etc.) + which might be left around by mininet. Try this if things stop + working. + - Examples (in examples/ directory) to help you get started. -Some preliminary installation notes are included in the INSTALL file. +Batteries are not included (yet!) + +However, some preliminary installation notes are included in the INSTALL +file. Good luck! --- Bob Lantz diff --git a/examples/bigTreePing64.py b/examples/bigTreePing64.py index 27fc9da..2e3d658 100755 --- a/examples/bigTreePing64.py +++ b/examples/bigTreePing64.py @@ -3,7 +3,7 @@ """Create a tree network of depth 4 and fanout 2, and test connectivity using pingTest.""" -from mininet import init, TreeNet, iperfTest +from mininet import init, TreeNet, pingTestVerbose def bigTreePing64(): results = {} @@ -14,13 +14,13 @@ def bigTreePing64(): k = datapath == 'kernel' results[ datapath ] = [] for switchCount in range( 1, 4 ): - network = TreeNet( depth=4, fanout=4, kernel=k ) - testResult = network.run( pingTest ) + network = TreeNet( depth=3, fanout=4, kernel=k ) + testResult = network.run( pingTestVerbose ) results[ datapath ] += testResult print "*** Test results:", results if __name__ == '__main__': init() - linearBandwidthTest() + bigTreePing64() diff --git a/mininet.py b/mininet.py index 53aacb2..20b4e7a 100755 --- a/mininet.py +++ b/mininet.py @@ -695,7 +695,22 @@ class Cli( object ): # Commands def help( self, args ): "Semi-useful help for CLI" - print "available commands are:", self.cmds + print "Available commands are:", self.cmds + print + print "You may also send a command to a node using:" + print " command {args}" + print "For example:" + print " mininet> h0 ifconfig" + print + print "The interpreter automatically substitutes IP addresses" + print "for node names, so commands like" + print " mininet> h0 ping -c1 h1" + print "should work." + print + print "Interactive commands are not really supported yet," + print "so please limit commands to ones that do not" + print "require user interaction, and that will terminate" + print "after a reasonable amount of time." def nodes( self, args ): "List available nodes" print "available nodes are:", [ node.name for node in self.nodelist]