diff --git a/README b/README index 7b588628a46a9408d68ed700ff34714a557fc077..e9ae25726acb5e815edfb7b208e8c04142028d22 100644 --- a/README +++ b/README @@ -15,6 +15,9 @@ datapath) are created as processes in separate network namespaces. This allows a complete OpenFlow network to be simulated on top of a single Linux kernel. +Mininet provides a set of Python classes and functions which enable +creation of OpenFlow networks of varying sizes and topologies. + In order to run Mininet, you must have: * A Linux 2.6.26 or greater kernel compiled with network namespace support diff --git a/examples/linearBandwidth.py b/examples/linearBandwidth.py index 5e3b35224b1ed7064950be09b0d36bf90c565483..27f909e38d14262cd0514279cd5543a0603673f5 100755 --- a/examples/linearBandwidth.py +++ b/examples/linearBandwidth.py @@ -7,6 +7,11 @@ Each network looks like: h0 <-> s0 <-> s1 .. sN <-> h1 + +Note: by default, the reference controller only supports 16 +switches, so this test WILL NOT WORK unless you have recompiled +your controller to support a 100 switches (or more.) + """ from mininet import init, LinearNet, iperfTest diff --git a/examples/treePing64.py b/examples/treePing64.py index 2673af0cc795f80de007cf58407bae1a0b1dadfd..e8062b22d2389cf53120f17289c219cf302a2212 100755 --- a/examples/treePing64.py +++ b/examples/treePing64.py @@ -1,25 +1,28 @@ #!/usr/bin/python -"Create a 64-node tree network, and test connectivity using pingTest." +"Create a 64-node tree network, and test connectivity using ping." from mininet import init, TreeNet, pingTestVerbose -def bigTreePing64(): +def treePing64(): results = {} - - print "*** Testing Mininet with kernel and user datapath" + datapaths = [ 'kernel', 'user' ] + + print "*** Testing Mininet with kernel and user datapaths" - for datapath in [ 'kernel', 'user' ]: + for datapath in datapaths: k = datapath == 'kernel' - results[ datapath ] = [] - for switchCount in range( 1, 4 ): - network = TreeNet( depth=3, fanout=4, kernel=k ) - testResult = network.run( pingTestVerbose ) - results[ datapath ] += testResult - - print "*** Test results:", results - + network = TreeNet( depth=2, fanout=8, kernel=k ) + result = network.run( pingTestVerbose ) + results[ datapath ] = result + + print + print "*** TreeNet ping results:" + for datapath in datapaths: + print "%s:" % datapath, results[ datapath ] + print + if __name__ == '__main__': init() - bigTreePing64() + treePing64() diff --git a/mininet.py b/mininet.py index 20b4e7a97cbd8bb7bf09b818b1fbcc39b696fe46..12cb92ee65b9135b6aa710bd2faf205c4609e3bb 100755 --- a/mininet.py +++ b/mininet.py @@ -482,7 +482,9 @@ def stop( self ): controller.stop(); controller.terminate() print "*** Stopping switches" for switch in self.switches: + print switch.name, ; flush() switch.stop() ; switch.terminate() + print print "*** Stopping hosts" for host in self.hosts: host.terminate()