今天是上海浦西全域静态管理的第 34 天。
周一抗原,周二抗原+核酸,周三抗原。
网传 8 号 恢复地铁运营,不过已经被辟谣了,看来一时半会儿还是出不去。不过这几天感觉物流明显好多了,陆陆续续开始收到之前在京东下的单,小苏同学买了个厨师机,娘俩准备做糕点,老苏在琢磨着是不是应该研究怎么做面条了🙂
什么是 Iperf3 ?
Iperf3
是一个网络带宽测试工具,
Iperf3
可以报告带宽、延迟抖动和数据包丢失。利用
Iperf3
这一特性,可以用来测试一些网络设备如路由器,防火墙,交换机等的性能。
Iperf3
可在
Windows
、
Mac OS
、
Linux
、
FreeBSD
等各种平台使用,是一个简单又实用的小工具。老苏之前用过
Windows
版本,但说实话仅限于最基本的应用,并没有深入过,今天也只是介绍安装而已。
Iperf3
采用了
C/S
(客户端/服务器端)架构模式,在使用
Iperf3
测试时,要同时在
Server
端与
Client
端都各执行一个程序,让它们互相传送报文进行测试。
安装
在群晖上以 Docker 方式安装
Server
端。
在注册表中搜索
iperf3
,选择第一个
networkstatic/iperf3
,双击直接下载
端口
本地端口不冲突就行,不确定的话可以用命令查一下
# 查看端口占用netstat -tunlp |grep 端口号
本地端口容器端口
5201
5201
也可以再增加一个
UDP
协议
环境
需要在命令中输入
-s
,表示以
server
模式运行
命令行安装
作为工具,一般都是
即开即用,用完即走
,所以命令行加上了
--rm
参数,当你退出时容器会自动删除。
# 启动容器,退出交互后会删除容器docker run -it \
--rm \
--name=iperf3-server \
-p 5201:5201 \
networkstatic/iperf3 \
-s
如果你希望容器一直存在,可以取消
--rm
参数
# 启动容器,退出交互后容器会停止docker run -it \
--name=iperf3-server \
-p 5201:5201 \
networkstatic/iperf3 \
-s
如果你不需要交互,可以将
-it
改为
-d
,这下就跟群晖
docker
安装是一样的了
# 启动容器docker run -d \
--name=iperf3-server \
-p 5201:5201 \
networkstatic/iperf3 \
-s
运行
和以往的不同,
Server
端并不能在浏览器中输入
http://群晖IP:5201
看到主界面,只能在日志中看到服务正在侦听
5201
端口,还需要我们运行
Client
端才行
客户端
客户端的下载地址:https://iperf.fr/iperf-download.php
在这里你能找到各个平台的版本,老苏下载了
Windows 64 bits
的最新版本
解压后在
CMD
模式下运行
简单测试
测试台式机和群晖之间的带宽,采用的有线网络,群晖和客户端主机都是千兆网卡,中间的路由是电信的
磊科MG1200AC
iperf3 -c 群晖IP
常用命令
-c 表示以客户端启动,并在后面填写服务端的 IP 地址;
-p 指定端口号,需要和服务端指定的端口号一致;
-t 可以指定传输测试的持续时间, Iperf 在指定的时间内,重复的发送指定长度的数据包,默认是 10 秒钟.
-u 指定测试 UDP 协议;
-i 设置每次报告之间的时间间隔,单位为秒,如果设置为非零值,就会按照此时间间隔输出测试报告,默认值为零;
-f 指定带宽单位;
-J 来输出 JSON 格式测试结果;
-R 反向传输,缺省 iperf3 使用上传模式: Client 负责发送数据, Server 负责接收;如果需要测试下载速度,则在 Client 侧使用 -R 参数即可;
--logfile 参数可以将输出的测试结果储存至文件中;
参考文档
esnet/iperf: iperf3: A TCP, UDP, and SCTP network bandwidth measurement tool
地址:https://github.com/esnet/iperf
iPerf - Download iPerf3 and original iPerf pre-compiled binaries
地址:https://iperf.fr/iperf-download.php
版权归原作者 杨浦老苏 所有, 如有侵权,请联系我们删除。