首页 > 代码库 > 利用netperf、iperf、mtr测试网络

利用netperf、iperf、mtr测试网络

1、netperf安装和使用

  netperf安装

 

 # tar -xzvf netperf-2.7.0.tar.gz# cd netperf-2.7.0# ./configure# make# make install

在客户端和服务器上都安装好。

  netperf使用 

  首先在服务器端运行netserver.

#./netserver -p 49152 -L 172.18.0.14

Starting netserver with host ‘172.18.0.14‘ port ‘49152‘ and family AF_UNSPEC

  在client端利用netperf通过命令行来测试

  -H:服务器的ip地址

  -p:端口号

  -L:本地ip地址

  -m:发送数据大小

  -l:运行时间

  TCP_STREAM批量传输

./netperf -H 172.18.0.14 -p 49152 -L 172.18.0.13 -l 60 -- -m 32768

  

#./netperf -H 172.16.0.14 -p 49152 -l 60 -- -m 4Recv   Send    Send                          Socket Socket  Message  Elapsed              Size   Size    Size     Time     Throughput  bytes  bytes   bytes    secs.    10^6bits/sec 
 
87380  65536      4    60.00      27.14
[root@cn13 src]# ./netperf -H 172.18.0.14 -p 49152 -L 172.18.0.13 -l 60 -- -m 32768MIGRATED TCP STREAM TEST from 172.18.0.13 () port 0 AF_INET to 172.18.0.14 () port 0 AF_INETRecv   Send    Send                          Socket Socket  Message  Elapsed              Size   Size    Size     Time     Throughput  bytes  bytes   bytes    secs.    10^6bits/sec   87380  65536  32768    60.00    7714.07 

  测试TCP_RR

  -r 4,4:请求大小,响应大小

如果只有一个参数-r 4,那么请求和响应大小就是4.

[root@cn13 src]# ./netperf -t TCP_RR -H 172.16.0.14 -p 49152 -L 172.16.0.13 -l 60 -- -r 4MIGRATED TCP REQUEST/RESPONSE TEST from 172.16.0.13 () port 0 AF_INET to 172.16.0.14 () port 0 AF_INET : first burst 0Local /RemoteSocket Size   Request  Resp.   Elapsed  Trans.Send   Recv   Size     Size    Time     Rate         bytes  Bytes  bytes    bytes   secs.    per sec   65536  87380  4        4       60.00    14082.09  

2、iperf的安装和使用

  iperf安装

tar -xzvf iperf-3.0b5.tar.gz[root@cn14 tangwh]# cd iperf-3.0b5[root@cn14 iperf-3.0b5]# ./configure[root@cn14 iperf-3.0b5]# make[root@cn14 iperf-3.0b5]# make install

  iperf使用  

  服务器端:

  启动服务器

[root@cn14 src]# iperf3 -s -p 12345 -i 1

  客户端:

  -c:服务端的IP

  -p:端口号

  -t:传输的总时间

  -i:每次报告之间的时间间隔

[root@cn13 src]# iperf3 -c 172.16.0.14 -p 12345 -i 1 -t 10Connecting to host 172.16.0.14, port 12345[  4] local 172.16.0.13 port 46587 connected to 172.16.0.14 port 12345[ ID] Interval           Transfer     Bandwidth       Retransmits[  4]   0.00-1.01   sec   115 MBytes   956 Mbits/sec  0[  4]   1.01-2.00   sec   112 MBytes   949 Mbits/sec  0[  4]   2.00-3.02   sec   115 MBytes   952 Mbits/sec  0[  4]   3.02-4.01   sec   112 MBytes   949 Mbits/sec  0[  4]   4.01-5.01   sec   112 MBytes   950 Mbits/sec  0[  4]   5.01-6.00   sec   112 MBytes   949 Mbits/sec  0[  4]   6.00-7.02   sec   115 MBytes   949 Mbits/sec  0[  4]   7.02-8.01   sec   112 MBytes   950 Mbits/sec  0[  4]   8.01-9.01   sec   112 MBytes   947 Mbits/sec  0[  4]   9.01-10.00  sec   112 MBytes   949 Mbits/sec  0[ ID] Interval           Transfer     Bandwidth       Retransmits      Sent[  4]   0.00-10.00  sec  1.11 GBytes   950 Mbits/sec  0      Received[  4]   0.00-10.00  sec  1.11 GBytes   949 Mbits/seciperf Done.

3、Mtr是 Linux中有一个非常棒的网络连通性判断工具。

  -c:发送多少个数据包

  -s:发送的ping数据包的大小

  -a:设置发送数据包的IP地址

  --report:显示结果在终端上

  172.16.0.14指的是要ping的ip地址

[root@cn13 tangwh]# mtr -c 10 -s 2 -a 172.16.0.13 --report 172.16.0.14HOST: cn13                        Loss%   Snt   Last   Avg  Best  Wrst StDev  1. mn14                          0.0%    10    0.2   0.4   0.2   1.5   0.4

  其中host后是本机域名。

  第一列指的是IP地址

  第二列是每个对应ip的丢包率

  第三列是每秒发送数据包的数量,默认为10,用-c来设置

  第四列是最近一次的返回时延

  第五列是平均时延

  第六列是最短时延

  第七列是最长时延

  第八列是时延抖动

利用netperf、iperf、mtr测试网络