[netperf-talk] netperf4 questions

Mike Higgins MHiggins at zhone.com
Fri Apr 2 17:52:48 PDT 2010


I've been using netperf2 for quite a while.  That worked quite well for 
our tests with our 100mbps equipment.  As we move to 1gbps and above, I 
felt it was time to dip my toes into the icy waters of netperf4.  After 
a bit of struggling, I am successful at running some tests.  The results 
are a bit confusing so perhaps someone can shed some light.  I'm doing 
tcp_stream send and receive tests and the data rates are 4447.64 mb/s 
and 4457.93 mb/s respectively.  These should not be over 1000 mb/s and I 
have confirmed that with netperf2, where the are around 940 mb/s.

The config is pretty simple, two Ubuntu 9.10 machines running on Dell 
OptiPlex GX620 PCs.  Each has an Intel Dual Gig Ethernet adapter with 
each port connected with a rolled cable to its peer on the other 
machine.  The internal nic is used for management.  The netperf4 version 
I'm using is the top o' the trunk as of 4/1/2010 as suggested.

PC A (runs netperf)
eth0 (management)
eth1 (10.100.100.1)
eth2 (10.100.101.1)


PC B (runs netserver)
eth0 (management)
eth1 (10.100.100.2)
eth2 (10.100.101.2)

I am only using 10.100.100.1 connected to 10.100.100.2 currently.

My result:

netperf -i default_commands.xml -c default_config.xml

AVE  SET    TEST      DATA    conf     Min     Max    CPU    +/-     
SD    +/-
Over Name   Time      RATE     +/-    Rate    Rate   Util   Util   
usec   usec
Num         sec       mb/s    mb/s    mb/s    mb/s  %/100  %/100    
/KB    /KB
A1   s1     12.00  4447.64  -0.000 4447.64 4447.64 0.7928 -0.0000  2.921 
-0.000

AVE  SET    TEST      DATA    conf     Min     Max    CPU    +/-     
SD    +/-
Over Name   Time      RATE     +/-    Rate    Rate   Util   Util   
usec   usec
Num         sec       mb/s    mb/s    mb/s    mb/s  %/100  %/100    
/KB    /KB
A1   s4     12.04  4457.93  -0.000 4457.93 4457.93 0.7998 -0.0000  2.940 
-0.000

default_config.xml:

<?xml version="1.0" standalone="no" ?>
<!DOCTYPE netperf SYSTEM "http://www.netperf.org/netperf_docs.dtd/1.0" 
 >       
<netperf xmlns="http://www.netperf.org/ns/netperf">

<!-- the values within this defaults element will apply to all the
netserver elements and their children. so, it may contain default
settings for say the control connections, and/or default settings for
test elements etc -->


<!-- This is just another boring comment -->
<netserver nid="n1"
    remote_host="10.100.100.2"
    remote_service="56821"
    local_service="56822">
  <test tid="t0"
    test_name = "sys_stats"
    library   = "netsysstats.la" >
  </test>
  <test tid="t1"
    test_name = "send_tcp_stream"
    library   = "nettest_bsd.la" >
    <dependson testid="t2" netserverid="n1" />
    <socket_args
      send_buffer_size = "128"
      recv_buffer_size = "128"
      send_size        = "32"  />
  </test>
  <test tid="t2"
    test_name = "recv_tcp_stream"
    library = "nettest_bsd.la" >
    <socket_args
      send_buffer_size = "128"
      recv_buffer_size = "128" />
  </test>
  <!--
  <test tid="t3"
    test_name = "send_tcp_rr"
    library   = "nettest_bsd.la" >
    <dependson testid="t4" netserverid="n1" />
    <socket_args />
  </test>
  <test tid="t4"
    test_name = "recv_tcp_rr"
    library = "nettest_bsd.la" >
    <socket_args />
  </test>
  -->
</netserver>
</netperf>


default_commands.xml

<?xml version="1.0" standalone="no" ?>
<!DOCTYPE commands SYSTEM "http://www.netperf.org/netperf_docs.dtd/1.0" >
<commands xmlns="http://www.netperf.org/ns/netperf">

<!-- 20 second TCP_STREAM test
 -->
  <create_test_set set_name="s0" tests_in_set="t0,t1,t2" />
  <create_test_set set_name="s1" tests_in_set="t0,t1" />
  <wait tid="s0" />
  <load tid="s0" />
  <wait tid="s0" />
  <measure tid="s0" />
  <wait tid="s0" seconds="10" />
  <load tid="s0" />
  <wait tid="s0" />
  <get_stats tid="t0" />
  <get_stats tid="t1" />
  <clear_stats tid="t0" />
  <clear_stats tid="t1" />
  <clear_stats tid="t2" />
  <idle tid="s0" />
  <wait tid="s0" />
  <report_stats test_set="s1"
    library="nettest_bsd.la"
    function="report_bsd_test_results" />

<!-- 20 second TCP_MAERTS test
 -->
  <create_test_set set_name="s4" tests_in_set="t0,t2" />
  <wait tid="s0" />
  <load tid="s0" />
  <wait tid="s0" />
  <measure tid="s0" />
  <wait tid="s0" seconds="10" />
  <load tid="s0" />
  <wait tid="s0" />
  <get_stats tid="s4" />
  <clear_stats tid="s0" />
  <idle tid="s0" />
  <wait tid="s0" />
  <report_stats test_set="s4"
    library="nettest_bsd.la"
    function="report_bsd_test_results" />


<!-- 20 second TCP_RR test
  <create_test_set set_name="s2" tests_in_set="t0,t3,t4" />
  <create_test_set set_name="s3" tests_in_set="t3,t0" />
  <wait tid="s2" />
  <load tid="s2" />
  <wait tid="s2" />
  <measure tid="s2" />
  <wait tid="s2" seconds="20" />
  <load tid="s2" />
  <wait tid="s2" />
  <get_stats tid="t0" />
  <get_stats tid="t3" />
  <clear_stats tid="s2" />
  <idle tid="s2" />
  <wait tid="s2" />
  <report_stats test_set="s3"
     library="nettest_bsd.la"
     function="report_bsd_test_results" />
 -->

<!-- 20 second TCP_STREAM test with confidence
  <create_test_set set_name="s0" tests_in_set="t0,t1,t2" />
  <create_test_set set_name="s1" tests_in_set="t0,t1" />
  <report_stats test_set="s1"
    report_flags="PRINT_ALL"
    library="nettest_bsd.la"
    function="report_bsd_test_results" >
    <wait tid="s0" />
    <load tid="s0" />
    <wait tid="s0" />
    <measure tid="s0" />
    <wait tid="s0" seconds="20" />
    <load tid="s0" />
    <wait tid="s0" />
    <get_stats tid="t0" />
    <get_stats tid="t1" />
    <clear_stats tid="s0" />
    <idle tid="s0" />
    <wait tid="s0" />
  </report_stats>
 -->

</commands>





More information about the netperf-talk mailing list