diff --git a/examples/intfOptions.py b/examples/intfOptions.py index 7e95027..89a7148 100755 --- a/examples/intfOptions.py +++ b/examples/intfOptions.py @@ -13,7 +13,7 @@ from mininet.link import TCLink def intfOptions(): "run various traffic control commands on a single interface" - net = Mininet() + net = Mininet( autoStaticArp=True ) net.addController( 'c0' ) h1 = net.addHost( 'h1' ) h2 = net.addHost( 'h2' ) @@ -32,13 +32,12 @@ def intfOptions(): info( '\n*** Configuring one intf with loss of 50%\n' ) link1.intf1.config( loss=50 ) - info( '\n*** Running 20 pings to test\n' ) - info( net.hosts[ 0 ].cmd( 'ping -c 20 -i .2 10.0.0.2' ) ) - + info( '\n' ) + net.iperf( ( h1, h2 ), l4Type='UDP' ) info( '\n*** Configuring one intf with delay of 15ms\n' ) link1.intf1.config( delay='15ms' ) - info( '\n*** Run a ping to confirm delay' ) + info( '\n*** Run a ping to confirm delay\n' ) net.pingPairFull() info( '\n*** Done testing\n' ) diff --git a/examples/test/test_intfOptions.py b/examples/test/test_intfOptions.py index 0235e7c..1493693 100755 --- a/examples/test/test_intfOptions.py +++ b/examples/test/test_intfOptions.py @@ -15,7 +15,7 @@ class testIntfOptions( unittest.TestCase ): p = pexpect.spawn( 'python -m mininet.examples.intfOptions ' ) tolerance = .8 opts = [ "Results: \['([\d\.]+) .bits/sec", - "(\d+) packets transmitted, (\d+) received, (\d+)% packet loss, time (\d+)ms", + "Results: \['10M', '([\d\.]+) .bits/sec", "h(\d+)->h(\d+): (\d)/(\d), rtt min/avg/max/mdev ([\d\.]+)/([\d\.]+)/([\d\.]+)/([\d\.]+) ms", pexpect.EOF ] while True: @@ -25,17 +25,14 @@ class testIntfOptions( unittest.TestCase ): self.assertGreaterEqual( bw, float( 5 * tolerance ) ) self.assertLessEqual( bw, float( 5 + 5 * ( 1 - tolerance ) ) ) elif index == 1: - loss = int( p.match.group( 3 ) ) - msg = ( "testing packet loss at 50%\n", - "this test will sometimes fail\n", - "ran 20 pings accross network\n", - "packet loss is %d%%\n\n" - % loss ) - self.assertGreaterEqual( loss, 50 * .8, msg ) - self.assertLessEqual( loss, 50 + 50 * ( 1 - tolerance ), msg ) + BW = 10 + measuredBw = float( p.match.group( 1 ) ) + loss = ( measuredBw / BW ) * 100 + self.assertGreaterEqual( loss, 50 * tolerance ) + self.assertLessEqual( loss, 50 + 50 * ( 1 - tolerance ) ) elif index == 2: delay = float( p.match.group( 6 ) ) - self.assertGreaterEqual( delay, 15 * .8 ) + self.assertGreaterEqual( delay, 15 * tolerance ) self.assertLessEqual( delay, 15 + 15 * ( 1 - tolerance ) ) else: break