diff --git a/examples/intfOptions.py b/examples/intfOptions.py
index 7e9502740280c9d6a4e0bb2a99d72e72e4b0ae62..89a714824c057d24bc18f4ab0ce1f8c0d7a9d435 100755
--- a/examples/intfOptions.py
+++ b/examples/intfOptions.py
@@ -13,7 +13,7 @@
 
 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 0235e7c2927b05b7562a97c1fee3f9b9f7c906f2..14936938c7baa96b5e6fd1ae247014a1efd474b0 100755
--- a/examples/test/test_intfOptions.py
+++ b/examples/test/test_intfOptions.py
@@ -15,7 +15,7 @@ def testIntfOptions( self ):
         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 @@ def testIntfOptions( self ):
                 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