转载请注明出处:
iperf
首先,需要在一台计算机上运行iperf服务器(服务端),并在另一台计算机上运行iperf客户端。
客户端向服务器发起连接并进行数据传输,从而测量网络带宽和延迟等指标。
以下是一些常用的iperf命令和参数:
iperf -s:作为服务器启动iperf。
iperf -c <服务器IP>:作为客户端连接到指定的服务器IP。
-p <端口号>:指定iperf服务器端口号(默认为5001)。
-i <时间间隔>:设置报告输出的时间间隔(以秒为单位)。
-t <测试时间>:设置iperf运行的测试时间(以秒为单位)。
-u:使用UDP协议进行测试。
-b <带宽>:设置UDP模式下的带宽限制。
-l <包大小>:设置TCP或UDP数据包的大小。
-f <格式>:指定报告输出的格式(如Kbits、Mbits、Gbits等)。
其他可用参数和更多使用细节可以通过运行iperf --help
命令来查看。
在进行iperf测试之前,确保服务器端和客户端之间的网络连接正常。
当使用UDP模式时,要注意设置合适的带宽限制,以避免网络拥塞和数据丢失。
可以根据需要调整测试时间、报告间隔和数据包大小等参数,以获得更准确的结果。
以下是一些示例说明:
以默认设置启动iperf服务器:
iperf -s
iperf -c <服务器IP> -t 10
iperf -c <服务器IP> -u -b 1M -t 5
以指定端口号5002作为服务器端口启动iperf服务器:
iperf -s -p 5002
iperf -c <服务器IP> -p <端口号> -f Mbits
以下是iperf执行的结果示例:
[ ID] Interval Transfer Bandwidth [ 4] 0.0-10.0 sec 112 MBytes 94.0 Mbits/sec
ID:连接标识符,用于区分不同的连接。
Interval:传输时间间隔。
Transfer:传输的总数据量。
Bandwidth:带宽测量结果。
在示例中,客户端与服务器之间的TCP连接持续了10秒钟,共传输了112兆字节的数据,并且带宽为94.0兆位每秒(Mbps)。
实际打流结果示例1:
服务端:
ip netns exec eno2.2002 iperf3 -s
客户端打流:
ip netns exec eno1.2002 iperf3 -c 10.64.0.5 -t 7200 -i 2 -M 1000 -u
实际打流示例2:
请注意,实际的执行结果可能会根据网络条件、测试时间和数据包大小等因素而有所变化。