Skip to content

Commit

Permalink
2.3.1b4 (#1184)
Browse files Browse the repository at this point in the history
Including changes to mnexec -c to reduce the number of
close() system calls, which may help with performance in
containers on Ubuntu 22.04.

Note that systemd-udevd also seems to be a cause of performance issues
and should probably be disabled while running Mininet.

Adding dbeug logging to test_simpleperf because it is failing
intermittently. (Note with packet loss it can fail, but this
is not how we should be testing it.)
  • Loading branch information
lantz committed May 3, 2023
1 parent 0cefa0b commit 88f14e9
Show file tree
Hide file tree
Showing 5 changed files with 17 additions and 8 deletions.
2 changes: 1 addition & 1 deletion INSTALL
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
Mininet Installation/Configuration Notes
----------------------------------------

Mininet 2.3.1b3
Mininet 2.3.1b4
---

The supported installation methods for Mininet are 1) using a
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ Mininet: Rapid Prototyping for Software Defined Networks
========================================================
*The best way to emulate almost any network on your laptop!*

Mininet 2.3.1b3
Mininet 2.3.1b4

[![Build Status][1]](https://github.com/mininet/mininet/actions)

Expand Down Expand Up @@ -70,7 +70,7 @@ Mininet includes:

### Python 3 Support

- Mininet 2.3.1b3 supports Python 3 and Python 2
- Mininet 2.3.1b4 supports Python 3 and Python 2

- You can install both the Python 3 and Python 2 versions of
Mininet side by side, but the most recent installation will
Expand Down
8 changes: 7 additions & 1 deletion examples/simpleperf.py
Original file line number Diff line number Diff line change
Expand Up @@ -49,13 +49,19 @@ def perfTest( lossy=True ):
net.start()
info( "Dumping host connections\n" )
dumpNodeConnections(net.hosts)
info( "Testing bandwidth between h1 and h4\n" )
info( "Testing bandwidth between h1 and h4 (lossy=%s)\n" % lossy )
h1, h4 = net.getNodeByName('h1', 'h4')
net.iperf( ( h1, h4 ), l4Type='UDP' )
# Debugging
h1.cmd('jobs')
h4.cmd('jobs')
net.stop()


if __name__ == '__main__':
setLogLevel( 'info' )
# Debug for now
if 'testmode' in argv:
setLogLevel( 'debug' )
# Prevent test_simpleperf from failing due to packet loss
perfTest( lossy=( 'testmode' not in argv ) )
9 changes: 6 additions & 3 deletions examples/test/test_simpleperf.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,12 @@ def testE2E( self ):
# 10 Mb/s, plus or minus 20% tolerance
BW = 10
TOLERANCE = .2
p = pexpect.spawn( 'python -m mininet.examples.simpleperf testmode' )
p = pexpect.spawn(
'python -m mininet.examples.simpleperf testmode' )
# Log since this seems to be failing intermittently
p.logfile = sys.stdout
# check iperf results
p.expect( "Results: \['10M', '([\d\.]+) .bits/sec", timeout=480 )
p.expect( "Results: \['10M', '([\d\.]+) .bits/sec", timeout=90 )
measuredBw = float( p.match.group( 1 ) )
lowerBound = BW * ( 1 - TOLERANCE )
upperBound = BW + ( 1 + TOLERANCE )
Expand All @@ -30,5 +33,5 @@ def testE2E( self ):
p.wait()

if __name__ == '__main__':
setLogLevel( 'warning' )
setLogLevel( 'debug' )
unittest.main()
2 changes: 1 addition & 1 deletion mininet/net.py
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,7 @@
from mininet.term import cleanUpScreens, makeTerms

# Mininet version: should be consistent with README and LICENSE
VERSION = "2.3.1b3"
VERSION = "2.3.1b4"

class Mininet( object ):
"Network emulation with hosts spawned in network namespaces."
Expand Down

0 comments on commit 88f14e9

Please sign in to comment.