Windows 客户端的最佳文件共享协议?

Eti*_*mps 5 networking linux windows file-sharing network-share

我想与 Windows 7 客户端共享 Linux 服务器上的文件。我可以在多种文件共享协议之间进行选择:SMB/CIFS、FTP、WebDAV、NFS……问题是:哪一种最适合我的需求?

以下是我的标准:

  • 在快速链接 (LAN) 上具有高性能,可在慢速链接 (WAN) 上使用。原始吞吐量是最重要的,尽管高随机性能会很好(随机读/写,打开大量文件......)。在千兆 LAN 上,我希望能够使我的网络链接饱和,并且我希望它感觉就像我在使用本地驱动器。在 WAN 上,我期望低开销,因此它可以适应高延迟并充分利用可用的网络带宽。
  • 应用程序的透明度,即可安装为驱动器号或关闭。
  • 安全性和防火墙友好是奖励(只要我可以通过 VPN 隧道传输它)。

SMB/CIFS 在 WAN 上速度很慢,FTP 似乎不是很透明,而且似乎所有 Windows NFS 客户端都很丑陋并且缺乏重要的功能,例如在文件名中正确支持 Unicode。我还没有尝试 WebDAV。

那么,您对这个问题的立场是什么?我不反对为 LAN 和 WAN 使用两种不同的协议,但出于可用性原因,我更愿意避免使用它。

J. *_*ker 6

你只有几个非常好的选择。您对 WAN 上的 SMB/CIFS 是正确的,它不是最有效的。使用 SMB/CIFS 的主要好处是避免使用常规的客户端/服务器架构。分散式架构的缺点是效率低下,连接的节点越多,这种情况就越明显。如果您需要通过 WAN/LAN 进行分散设置,SMB/CIFS 将是唯一的出路。此外,出于安全考虑,不建议通过 WAN 使用 SMB/CIFS。

我更喜欢在所有或大部分 Linux LAN 中使用 NFS,尤其是在始终连接的情况下,例如共享主目录。NFS over WAN 在防火墙方面很糟糕。它可以做到,我已经做到了,但这不仅仅是打开一个端口。当您需要 NAS 类型设置时,NFS 确实是一个不错的选择。

如果您对客户端/服务器模型没问题,我强烈推荐 WebDAV。您将获得自动支持的读取(常规 HTTP 网络浏览器)、仅使用一个端口(80 和/或 443)的轻松防火墙以及稳定的性能。

FTP 有其优点,但在 WAN 上,您需要带有显式 SSL 的 FTP。FTPeS 较新,并非所有 FTP 客户端都支持它。现代客户会喜欢 filezilla 的新副本。但再一次,防火墙不仅仅是打开一个端口。

你真的不能比 HTTP IMO 更透明。这也是我为我的 WAN/LAN 所做的,我什至更喜欢它只用于我的常规 LAN 传输。