OpenVPN服务器令人失望的performance

在我安装了OpenVPN 2.3.2服务器的VPS(Ubuntu 14.04 – 64位)上,我的performance令人失望。 VPN-server使用AES-128-CBC密码进行encryption,而且我没有安装防火墙。

问题是下载/上传速度相当低。 在进行一些速度testing时,平均值约为45 Mbps。 实际速度将下降到20 Mbps,最高可达50 Mbps。 在进行这些testing时,CPU和服务器负载似乎相当低。

我试着改变服务器和客户端的tun-mtu值,使用不同的密码(blowfish等),增加缓冲区大小等我的下载速度没有VPN连接大约180 – 190 Mbps(我的ISP承诺200 Mbps),我的上传速度是10 Mbps。 正如你所看到的,差别是非常激烈的,我想尽可能提高下载速度。

使用从可用熵生成的程序,似乎没有获得性能。 我可用的熵总是在附近 700 – 800位 3000积极活跃,这是足够的?

服务器本身有一个1千兆位的连接。 服务器的下载testing确认了这个速度(大约800 Mbps)。 我也testing了从服务器上下载一个随机的1 GB文件到一个VPN客户端,而不使用VPN连接,这给了我平均180 Mbps(我的最大)的下载速度。

我无法在互联网上find很多有关OpenVPN服务器帮助缓慢/低下载速度的信息。 我担心的是CPU和服务器负载很低(在进行速度testing时,只有一个核心(OpenVPN不支持多/超线程?),CPU使用率约为16%)。

如果您想了解更多关于设置或configuration的信息或详细信息,请询问。

编辑2015-02-28:

我再次尝试使用只有三(3)个客户端的OpenVPN服务器。 再次,我面临的问题是下载速度不是最大(甚至不是一半)客户端的Internet连接速度。

我已经testing了在主机上安装OpenVPN-server,这给了我相当好的结果! 但是,我需要在VPS(虚拟机)上使用VPN服务器,而不是在主机上使用。 在下载一个10 GB的文件时,我可以高达10 MB / s(800 Mb / s),平均值为7.5 MB / s(60 Mb / s)。 我的客户端连接的互联网连接是200 Mb / s连接。 在没有VPN连接的情况下进行各种速度testing时,平均可以达到180 Mb / s。 当通过VPN服务器(在VPS上)连接时,速度甚至不会达到我应得的一半。 通过VPN服务器连接(在主机上),我可以达到120 Mb / s。

两台服务器在执行testing时使用大致相同的CPU使用率,并且都在CPU上具有aesni支持。 我已经做了一些openssl的速度testing,但这些似乎非常好,最大。 CPU核心。 在执行这些testing时,我还运行了watch -n 1 cat / proc / sys / kernel / random / entropy_avail,但是在执行下载testing时可用的熵似乎没有那么大的改变。 在主机和VPS上都在850-900左右。

我不知道为什么VPS服务器与主机的速度差别很大。 它可能是Qemu(qemu-kvm)虚拟化networking接口吗?

每当我看到VPS上的某个人,他们提到encryption或SSL性能问题时,首先想到的是他们正在运行随机池。

尝试安装“hasged”,看看是否解决了这个问题。 如果是这样,请仔细阅读文档和使用pseduo随机数生成器的注意事项,这是安全隐患。

编辑

为什么要安装“hasged”? 任何encryption操作都严重依赖高质量的随机数。 因此,您的吞吐量最终将受到您可以生成它们的速率的限制。 在VPS上,您可能没有所有可用的裸机资源。 这可能会耗尽池(尝试cat /proc/sys/kernel/random/entropy_avail ),导致程序阻塞,同时更多的随机性被搅入池中。 Haveged使用HAVEGEalgorithm,这取决于您的使用情况,可能不太安全。 这将取决于你决定是否值得适用于你的情况的风险。 🙂 Haveged是一个在后台运行的守护进程,以保持内核熵池充满和搅动。 除了可能重新启动VPS之外,不需要更改软件(取决于您的设置)。

基于UDP的OpenVPN

如果您使用UDP运行OpenVPN,则可以通过设置固定的缓冲区值来获得更好的体验。 试试这些行到您的客户端configuration文件(* .ovpn或* .conf)。

 sndbuf 393216 rcvbuf 393216 push "sndbuf 393216" push "rcvbuf 393216" 

https://winaero.com/blog/speed-up-openvpn-and-get-faster-speed-over-its-channel/