Debian 和 Broadcom:通过网络传输文件性能不佳

Debian 和 Broadcom:通过网络传输文件性能不佳

我设置了一台运行 Debian Bullseye 和 Proxmox-kernel 的新服务器作为 NAS,主要托管视频内容(因此通常是大文件)。我注意到通过 SMB 传输文件的性能非常差,所以我尝试进行一些测试来找出系统的瓶颈。

我的服务器:

  • Supermicro 主板 H12SSL-i
  • AMD EPYC 7282(2.80 GHz,16 核,64 MB)
  • 128MB 内存
  • ZFS 根池镜像 2x 240 GB ATP N600Sc Superior M.2 NVMe SSD
  • ZFS 数据池条带镜像 8x 16 TB Western Digital Ultrastar DC HC550 Helium 3.5 英寸 SAS HDD
  • 25千兆Broadcom P225P网络适配器

我的客户:

  • 苹果 MacBook Pro M1 Max(64GB RAM)
  • Sonnet Solo10G 网络适配器

两个设备通过 UniFi Enterprise 交换机连接。

在所有情况下,我们都尝试将一个 30GBytes 的大文件从客户端传输到服务器。

  • iPerf3(iperf3 -c 192.168.109.244 -n 30720M):给出最大网络速度(9.39 Gbits/s,~1173Mbytes/s)
  • rsync(rsync --sparse --stats -hr -e 'ssh' test/ user@server:/data/pool/somewhere/):导致传输速率出奇地差(~150 Mbytes/s)
  • scp(scp test/30g.test user@server:/data/pool/somewhere/):表现比 rsync 更好,但仍然比我预期的要差(~274Mbytes/s)
  • SMB 甚至更糟,但应该可以很好地工作,以使服务器发挥作用

当然,我怀疑糟糕的 ZFS 池性能是导致糟糕结果的罪魁祸首,但我无法证实:

  • fio --directory=/data/pool/somewhere --name=write --ioengine=libaio --iodepth=32 --rw=write --bs=1M --size=30G --numjobs=1 --direct=1写入速度达到 900Mbytes/s
  • zpool iostat -v -y 1 1表明池子平衡良好,写入负载均匀分布在 4 个镜像上。

我的主要问题是文件在网络上的传输速度,我找不到设置的瓶颈。网络似乎很快,池子也很快。

有人对如何进一步测试以找出瓶颈有什么建议吗?不幸的是,我现场没有配备 10G 网络适配器的 Windows 或 Linux 电脑,因此无法排除 macOS 是罪魁祸首。欢迎提出任何想法/建议。

相关内容