OpenVPN上的NFS:性能最佳的增强器

我有两个VPS – 一个运行2008 R2,另一个运行Ubuntu 12.04。 我正在使用Windows VPS for Quickbooks和其他一些应用程序的RD会话,并使用Ubuntu VPS作为NFS文件存储以及OpenVPN端点。 问题是,通过VPN的NFS性能是非常可怕的,通过这个我经常意味着它甚至不会经常连接和超时。

如果我在隧道外部设置NFS,性能还可以…不是很好,但是易于pipe理,所以我知道它是VPN隧道。

是否有任何调整openvpn或NFS我可以玩,以提高性能?

我做了所有的调整,以通过ipsec链接获得最佳的NFS性能,“ls / mnt / remote1 / etc”仍然是12.5s。 (我是280ms,13Mbps / 2Mbps是我最慢的一个环节)

经过一番search之后,我不断遇到WebDAV作为替代scheme。 我在客户端上使用Apache与webdav和davfs2挂载共享。 通过这个设置,ls从12.5秒到1.5秒,我得到了10Mbps的下载速度。 现在非常可用。

如果你想要root权限,那么你需要用“CFLAGS = -DBIG_SECURITY_HOLE”构buildapache。 这对我来说是好的,因为所有的用户都有root访问权限,而且我也只通过ipsec隧道提供webdav。

几件事情要尝试:

查看OpenVPN中的以下选项:fragment,mssfix,link-mtu。 基本上,所有与分组大小和分片有关的事情。 太小的VPN数据包可能会通过分割NFS数据包而降低性能。 OTOH太大的VPN数据包可能会降低性能,因为某些路由器不能很好地处理这些数据包。 这里很难画出一个简单的,一般的规则。

尝试在OpenVPN上启用/禁用压缩,并查看如何影响性能。

确保您的VPN服务器使用UDP进行传输,而不是TCP。

在NFS客户端上,查看选项:retrans,rsize,wsize – 或与数据包大小和error handling相关的任何其他数据。 根据您的情况,较小的数据包大小实际上可以提高性能(在LAN中,情况正好相反)。

这类问题没有确定的答案,但问题很可能出现在上面所述的领域。

Fabiano Tarlao提供的这些提示非常有用: https ://thegoodcodeinn.blogspot.be/2015/06/nfs-over-openvpn-over-adslor-slow.html?showComment = 1488621905080#c2984550821264645538

我在我的Casper Netboot上通过OpenVPN站点到站点隧道使用这个内核参数:

NFSOPTS=tcp,intr,timeo=100,rsize=1024,wsize=1024 

我已经在ADSL连接上使用openvpn进行了NFSconfiguration,我已经尝试了不同的NFS挂载选项,在这里你可以find完整的文章: NFS over OpenVPN over ADSL(或者慢速连接)

我在这里引用有趣的部分:我已经阅读了很多post,并且我已经尝试了所提出的解决scheme的合理子集,这是最佳提示的总结:

  • 使用小于littler MTU大小的NFS数据包大小(默认值是8Kbytes,新值应该小于1500bytes,很less有人build议1024bytes)
  • 使用NFS TCP连接types; 不要在ADSL / WAN上使用UDP
  • 使用NFSasynchronous选项
  • 不要设置非常小的超时,保留默认的60秒(timeo = 600)或者..我也尝试了成功10secs(timeo = 100)
  • 用硬挂载选项,让我们添加intr选项

对于Linux用户,这里是一个小软件安装的fstabconfiguration示例:

 servername:/shared/ /mnt/foldername/ nfs rw,suid,dev,soft,exec,nouser,async,noauto,timeo=100,user,rsize=1024,wsize=1024,tcp 0 0 

在这里,对于困难的坐骑:

 rw,suid,dev,intr,exec,nouser,async,noauto,timeo=100,user,rsize=1024,wsize=1024,tcp 0 0 

NFS over vpn + adsl仍然非常慢(目前我正在以大约150 KB /秒的速度传输文件,这比没有build议的更改要好得多)。 请考虑我的7Mbit ADSL有800KB / sec的下载带宽。

PS:我也会稍后检查openvpn碎片,感谢分享。 希望我的发现也会有用。

PS2:这些技巧在我的环境中工作得很好,我得到了不同人的两个正面的反馈。