vsftpd的SSL性能不佳

我正在尝试调整vsftpd以达到我用法的最大性能:

  • 我只有一个或两个连接到服务器的客户端。
  • 文件大小在〜15MB和1GB之间。
  • 典型的传输批次代表1到2GB的数据。

出于testing目的,我使用单个1GB文件在两侧使用了tmpfs(从而消除了任何磁盘瓶颈)。

当禁用SSL时,性能很好,传输速率为〜120MB / s(达到千兆networking的限制)。

只有控制stream量(而不是数据stream量)启用SSL,性能下降大约112MB / s,这仍然在可接受的范围内。

但是,对于数据stream启用SSL时,传输速度急剧下降:

  • 6.7MB / s使用3DES&SHA( ssl_ciphers=DES-CBC3-SHA
  • 16MB / s使用DES和SHA( ssl_ciphers=DES-CBC-SHA

我没有testing其他密码,但是从传输过程中的CPU使用情况可以看出,vsftpd似乎只使用每个客户端的一个CPU /核心。 虽然这可以适用于数百个客户端的大型ftp站点,但是我想避免这种行为,并在服务器上使用更多的资源。

在一个侧面说明,如果你有任何其他openssl密码的想法…

我刚刚阅读http://unhandledexpression.com/2013/01/25/5-easy-tips-to-accelerate-ssl/它build议运行openssl speed 。 根据结果​​,你可能想要select另一种algorithm。 可悲的是,我不知道如何将一个encryption任务的负载分散到多个核心。