千家信息网

网络性能测试工具iperf和mtr

发表于:2024-11-23 作者:千家信息网编辑
千家信息网最后更新 2024年11月23日,iperfiperf是一个用来测量网络吞吐性能的工具,它能测试TCP或UDP的吞吐量,为了执行iperf测试,必须建立服务器(用来丢弃流量)和客户端(用来产生流量)的连接。iperf有TCP和UDP两
千家信息网最后更新 2024年11月23日网络性能测试工具iperf和mtr

iperf

iperf是一个用来测量网络吞吐性能的工具,它能测试TCP或UDP的吞吐量,为了执行iperf测试,必须建立服务器(用来丢弃流量)和客户端(用来产生流量)的连接。

iperf有TCP和UDP两种测试模式,分别如下所述

TCP

  • 测量网络带宽

  • 报告MSS/MTU值的大小和观测值

  • 支持TCP窗口值通过套接字缓冲

  • 当P线程或Win32线程可用时,支持多线程。客户端与服务端支持同时多重连接

UDP

  • 客户端可以创建指定带宽的UDP流

  • 测量丢包

  • 测量延迟

  • 支持多播

  • 当P线程可用时,支持多线程。客户端与服务端支持同时多重连接(不支持Windows)


常用参数:

-s 指定为server模式

-c 指定为client模式

-u 指定为udp

-b 指定带宽

-t 指定测量的时间

-i 指定测试间隔

-l 指定包大小,默认tcp为128KBps,udp为8KBps

举例:

iperf3 -s 在服务器端运行iperf3

iperf3 -c server-ip -i 1 -t 10 -b 1000M -u 在客户端运行iperf,默认端口5201。

MTR

mtr在一个网络工具中结合了traceroute和ping的功能,做为mtr开始,通过有目的地发送具有低ttl的包,来检查运行mtr的主机和目标主机的网络连接。通过持续地发送低TTL的包,并记录中间路由器的回应时间。通过这种方式,使mtr记录到达目的主机节点的回应包的百分比和回应包的时间。突发的丢包率上涨和回应时间变长,都会反映出一个不好的连接。

mtr -h 提供帮助命令
mtr -v 显示mtr的版本信息
mtr -r 以报告模式显示

mtr -s 用来指定ping数据包的大小

mtr -n no-dns不对IP地址做域名解析

mtr -a 来设置发送数据包的IP地址 这个对一个主机由多个IP地址是有用的

mtr -i 使用这个参数来设置ICMP返回之间的要求默认是1秒

mtr -4 IPv4

mtr -6 IPv6

举例:

[root@ip-10-247-0-115 ~]# mtr -r 182.254.34.125
HOST: ip-10-247-0-115.localdomain Loss% Snt Last Avg Best Wrst StDev
1. ec2-54-223-0-2.cn-north-1.co 0.0% 10 0.3 0.4 0.3 0.8 0.2
2. 54.222.1.90 0.0% 10 1.1 1.3 1.1 2.3 0.4
3. 54.222.1.66 0.0% 10 1.1 1.1 1.1 1.2 0.0
4. 41.220.120.106.static.bjtele 0.0% 10 1.1 1.1 1.1 1.1 0.0
5. bj141-135-174.bjtelecom.net 0.0% 10 4.8 4.2 2.4 5.6 1.3
6. 202.97.65.206 0.0% 10 38.3 45.3 33.3 73.5 13.2
7. 113.108.208.30 0.0% 10 38.3 39.7 37.7 41.3 1.1
8. 113.108.209.54 0.0% 10 37.9 38.0 37.9 38.0 0.0
9. 14.119.117.134 0.0% 10 38.2 38.3 38.2 38.9 0.2
10. ??? 100.0 10 0.0 0.0 0.0 0.0 0.0
11. ??? 100.0 10 0.0 0.0 0.0 0.0 0.0
12. ??? 100.0 10 0.0 0.0 0.0 0.0 0.0
13. 182.254.34.125 70.0% 10 42.0 42.0 42.0 42.0 0.0


0