AFP、SMB、NFS 哪个是最好的数据传输协议?

Kam*_*ami 14 performance file-sharing file-transfer benchmarking macos

我有一台运行 Gentoo 的带有大硬盘的计算机。我必须通过有线网络向 Apple 设备(它们都运行 OS X)提供医疗/大文件。

哪种协议最适合以下需求?:

  1. 速度
  2. 易用性(客户端和服务器)
  3. 较少限制(最大文件大小,文件名的有限字符集)
  4. 安全

har*_*ymc 7

您应该会发现这篇文章很有趣:
Mac OS X 10.5.5 客户端的 iSCSI、AFP、SMB 和 NFS 性能

它显示了这些测试结果:

(片刻之间)

iSCSI 134.267530
AFP 140.285572
SMB 159.061026
NFSv3(无调整)477.432503
NFSv3(无调整)293.994605

  • 报告的 NFS v3 结果非常糟糕。在我为客户优化吞吐量的适度广泛的工作中,NFS 的速度往往是 SMB 的两倍或更多。使用一台服务器,一台主机在没有其他流量的千兆网络上,当 CIFS 挣扎超过 250 时,我可以获得每秒 900 兆位的 NFS。这不是可持续的现实世界吞吐量,可以肯定,并且不会使这些测试无效se,但确实让我对结果非常怀疑。 (3认同)

Dav*_*ent 7

我对 OS X 中的 i/o 速度和不同网络协议的 i/o 速度进行了一些真实世界的非科学测试。

我的设置:

  • 2011 年初 MPB 运行 OS X 10.7 Lion,连接到 Netgear 千兆交换机
  • Qnap TS-419P II NAS 4盘RAID5,连接网件千兆交换机
  • Buffalo LinkStation Pro NAS 带 1 个磁盘,连接到 Netgear 千兆交换机
  • 用于 OS X 的 globalSAN iSCSI 启动器用于 iSCSI 测试

测试是通过将大约 2gb 的相机原始文件(每个大小约为 20-25mb)复制 (cp) 到设备,重新启动设备并将相同的数据复制回本地 SSD 驱动器来进行的。

写入性能:

  1. Qnap,异步 NFS = 34.59 mb/s
  2. Qnap,法新社 = 31.83 mb/s
  3. Qnap、ISCSI = 31.89 mb/s
  4. *Qnap、SMB、cp = 30.71 mb/s
  5. Qnap,NFS = 27.22 mb/s
  6. 布法罗,法新社 = 10.07 mb/s
  7. *Qnap、SMB、mv = 3.93 mb/s

*) 只有在使用 SMB 时,我才从使用 cp 或 mv 命令将文件复制到设备中得到非常不同的写入性能结果!

为 NFS 设置异步选项大大提高了读取性能。我使用以下挂载命令进行测试:

mount -t nfs -o resvport,soft,intr,rsize=32768,wsize=32768,timeo=900,retrans=3,proto=tcp,vers=3,async server:/share /private/share/
Run Code Online (Sandbox Code Playgroud)

读取性能:

  1. Qnap,异步 NFS = 71.99 mb/s
  2. Qnap,法新社 = 67.44 mb/s
  3. Qnap、ISCSI = 60.22 mb/s
  4. Qnap,NFS = 46.51 mb/s
  5. Qnap、SMB = 35.82 mb/s
  6. 布法罗,法新社 = 5.46 mb/s

这些协议似乎以不同的方式处理缓存。这是我在将文件复制到设备并立即返回到本地 SSD 驱动器(无需重新启动设备)时得到的结果

读取性能 - 无需重启

  1. Qnap、ISCSI = 151.71 mb/s
  2. 布法罗,法新社 = 145.54 mb/s
  3. Qnap,法新社 = 143.23 mb/s
  4. Qnap,异步 NFS = 71.99 mb/s
  5. Qnap,NFS = 47.37 mb/s
  6. Qnap、SMB = 38.13 mb/s

我的结论:我将使用 AFP 或 NFS,因为这两种协议都为我的目的(Lightroom、备份、媒体流)提供了相似的性能和灵活性(与 iSCSI 相比)