iperf3网络测速

公网测速-speedtest-cli

Centos7示例:

# 安装speedtest-cli
pip3 install speedtest-cli

# 查看是否可执行
which speedtest-cli

#创建软链接--如果找不到speedtest-cli命令时执行.
ln -s /usr/local/bin/speedtest-cli /usr/local/sbin/speedtest-cli

# 更新所有的测速点
speedtest-cli --list

# 测速
speedtest-cli --share

在这里插入图片描述

# 查看所有测速点
speedtest-cli --list

在这里插入图片描述

# 指定测速点
speedtest-cli --server=29071 --share

在这里插入图片描述


iperf3测速服务器搭建

系统版本声明:Centos8
本文也适用于Centos7


安装iperf3

# Ubuntu安装iperf3
sudo apt install iperf3 -y

# Centos安装
yum install iperf3 -y

# 检查iperf3是否安装成功
which iperf3

启动服务端

iperf3的默认端口5201
-s 以服务器模式启动
-D 以守护进程模式运行
-p 定义端口号;
-i 设置每次报告之间的时间间隔,单位为秒,如果设置为非零值,就会按照此时间间隔输出测试报告,默认为0

# 启动iperf3服务端
## -s 以服务器模式启动
iperf3 -s

# iperf3 –s –u  # 3.1.7版本已经不需要-u参数,-s默认启动的tcp和udp
## -D 以守护进程模式运行
iperf3 -s -D

#服务端使用自定义端口
## -s 以服务器模式启动
## -p    定义端口号;
## -D 以守护进程模式运行
iperf3 –s –p 55 -D

iperf3客户端测速

https://www.nixops.me/articles/iperf-check-bandwidth.html

参数解释
-c指定服务器地址
-p表示服务器的端口号;
-u使用udp协议;
-b指定客户端通过UDP协议发送信息的带宽,默认值为1Mbit/s
-n指定传输的字节数
-t指定Iperf测试时间,默认10秒
-i设置每次报告之间的时间间隔,单位为秒,如果设置为非零值,就会按照此时间间隔输出测试报告,默认值为零;
-F传输或接收特定的文件
-P客户端到服务器的连接数,默认值为1
-T指定ttl值
-w设置套接字缓冲区为指定大小,对于TCP方式,此设置为TCP窗口大小,对于UDP方式,此设置为接受UDP数据包的缓冲区大小,限制可以接受数据包的最大值.
–logfile参数可以将输出的测试结果储存至文件中.
-J来输出JSON格式测试结果.
-R反向传输(测试下载速度)

上传测速

# 默认是测试的上传速度
## -c    表示服务器的IP地址;
iperf3 -c 测速服务器IP


# (-P)多线程
## -P 线程数
iperf3 -c 47.108.52.5 -t 60 -P 2 

#客户端UDP测速(上传) 
#UDP测速默认只有1M,需要准确测速需要加-b参数指定最大带宽
## -c  表示服务器的IP地址;
## -u  使用udp协议;
## -b  指定客户端通过UDP协议发送信息的带宽,默认值为1Mbit/s
## -t  持续时间60s
iperf3 –c 171.220.227.80 -u -b 1000M -t 60

下载测速

# 测试下载测速
## -R 下载
iperf3 -c 47.108.52.5 -R

#客户端UDP测速(下载-R)
## -u  使用udp协议;
## -b  指定客户端通过UDP协议发送信息的带宽,默认值为1Mbit/s
## -R 下载
iperf3 -c 47.108.52.5 -u -b 1000M -R

# 客户端持续60s(下载-R)
## -u  使用udp协议;
## -p  指定端口
## -b  指定客户端通过UDP协议发送信息的带宽,默认值为1Mbit/s
## -R 下载
iperf3 -c 47.108.52.5 -u –p 55 -b 1000M –t 60 -R

# (-P)多线程下载
## -u  使用udp协议;
## -b  指定客户端通过UDP协议发送信息的带宽,默认值为1Mbit/s
## -t  持续事件
## -P  线程数
## -R 下载
iperf3 -c 47.108.52.5 -u -b 100M -t 60 -P 2 -R

Windows下iperf3测速不准原因

中断合并(interrupt coalescence) 也叫中断调整 (interrupt Moderation)
需要服务器和客户端网卡都开启中断调整(interrupt moderation),不开启大流量测速时网速可能不准.
不是所有网卡都有中断调整(interrupt moderation)选项

在这里插入图片描述
在这里插入图片描述


使用systemd设置iperf3开机自启

https://gist.github.com/auipga/64be019018ef311deba2211ced316f5e


服务器创建iperf3服务用户,配置bash为nologin

# 创建iperf3服务用户,配置bash为nologin
## -M 不建立用户目录
## -s 指定shell
useradd -M -s /sbin/nologin iperf3

iperf3.service文件

Centos7service目录/usr/lib/systemd/system/iperf3.service
Ubuntuservice目录/lib/systemd/system/iperf3.service

[Unit]
Description=iperf3 server
After=network.target

[Service]
Type=simple
User=iperf3
Group=iperf3
ExecStart=/usr/bin/iperf3 -s
ExecStop=/usr/bin/pkill iperf3
Restart=always
# 最大运行秒数(7天自动重启)
RuntimeMaxSec=604800
RestartSec=2s

[Install]
WantedBy=multi-user.target

设为开机自启

# 重载改动过的服务
systemctl daemon-reload

# 设为开机自启
systemctl enable --now iperf3

# 查看服务状态
systemctl status iperf3

用supervisor设置iperf3开机自启服务

# 安装supervisor
yum install -y supervisor

# 设置supervisord为开机自启并现在启动服务
sudo systemctl enable --now supervisord

服务器创建iperf3服务用户,配置bash为nologin

# 创建iperf3服务用户,配置bash为nologin
## -M 不建立用户目录
## -s 指定shell
useradd -M -s /sbin/nologin iperf3

配置ini文件

创建日志保存目录

# 创建日志保存目录
mkdir -p /var/log/supervisord.log

/etc/supervisord.d/目录中添加iperf3.ini文件
配置内容如下

[program:iperf3]
command=/usr/bin/iperf3 -s
autostart=true
autorestart=true
user=iperf3
startsecs=1
startretries=3
redirect_stderr=true
stdout_logfile=/var/log/supervisord.log/access_iperf3.log
stderr_logfile=/var/log/supervisord.log/error_iperf3.log

启动iperf3后台服务器

iperf3的默认端口是5201

# 更新supervisor配置文件
supervisorctl update

# 重新加载supervisor配置文件
supervisorctl reload

# 查看supversiord管理的服务运行状态
[cesu-c8 root ~]# supervisorctl  status
iperf3                           RUNNING   pid 36155, uptime 0:00:06

# 查看iperf3服务器是否启动
[cesu-c8 root ~]# supervisorctl  status iperf3
iperf3                           RUNNING   pid 36155, uptime 0:00:48

# 查看端口是否处于监听状态
[cesu-c8 root ~]# ss -tunlp|grep 5201
tcp   LISTEN 0      128                *:5201             *:*    users:(("iperf3",pid=36155,fd=3)) 

公共测速服务器

https://iperf.fr/iperf-servers.php#public-servers
https://blog.csdn.net/oujiangping/article/details/78260172

iperf3是一种用于测试网络速度的工具。它支持通过TCP或UDP协议在内网环境中进行速度测试。iperf3的使用非常简单,只需在一台计算机上运行iperf3服务器端,并在另一台计算机上运行iperf3客户端,即可进行测速。 在内网环境中进行iperf3测速的步骤如下: 1. 下载和安装iperf3:首先,在测速的两台计算机上下载并安装iperf3软件,可以从官方网站或其他可信的软件下载平台获取。 2. 设置iperf3服务器:在其中一台计算机上运行iperf3服务器端,输入相应的命令来启动服务器。默认情况下,iperf3服务器监听端口为5201,并且使用TCP协议进行通信。 3. 运行iperf3客户端:在另一台计算机上运行iperf3客户端,并指定服务器的IP地址和端口号。可以用命令行或图形界面方式来运行iperf3客户端。 4. 进行速度测试:一旦客户端连接到服务器,测速即可开始。iperf3通过在客户端和服务器之间发送指定大小的数据包来测量网络的吞吐量。测试结果将显示连接速度、延迟和丢包率等信息。 需要注意的是,在进行iperf3内网测速时,应确保两台计算机连入同一内网中,无防火墙或路由器限制。此外,使用UDP协议进行测试可能会导致带宽利用率较低和丢包现象较多,因此在需要测量实时流量的场景下更适合使用TCP协议。 通过使用iperf3进行内网测速,我们可以了解内部网络的性能表现,发现潜在的网络瓶颈,并采取相应的措施来优化网络性能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

识途老码

赞赏是第一生产力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值