在处理大于10 In的大数据文件时,我使用的是IPoIB { infiniband},我需要比传统的1gbps有线网络速度更好的东西。
背景:
ib0接口使用一个静态IP地址(数据报),而我的infiniband网络在目前为数不多的RHEL服务器之间运行得很好.起作用了。有人能让我知道什么样的速度是现实的在这个场景中,给定一个100 gbps的?Doing ethtool ib0将链接报告为100,000,与我的一次scp测试一起是我目前所知道的全部。
自从我现在有100 gbps的时候,scp和ssh的表现是否有一些限制?
在这种情况下,我能做什么更好的速度测试?最终的目标是使用scp和nfs,在一个简单局域网上的多台服务器之间获得最大的文件传输速度。我知道nfs的rdma,但我正在采取初步的步骤。
我也会感兴趣地看到任何做有线网络的人的报告(答案),这个有线网络是10 EDR或更高,这将包括所有那些较慢的无穷波段,如QDR、EDR、FDR等等。
更新:我做了以下测试。因此,当我有100 gbps的网络速度时,传输受到cpu在所选密码(可能还有hmac)上的工作速度的限制。因此,如果您要做的只是scp,那么您就不会简单地获得一个昂贵的infiniband设置。我只在这里使用scp,因为它在报告传输速度方面很方便,以MB/秒为单位。
我是这两台服务器上唯一的一个,在我的服务器室。这两台服务器在硬件上是相同的,是4台具有英特尔8628 cpu的套接字服务器,freq = 2.9ghz。
注意:在使用aes-##ctr和hmac-sha2-AES#的1 gbps传统有线网络上,我一整天都有112 MB/秒的scp速度。

发布于 2021-03-06 00:24:33
如果您希望在此副本中使用SSH,那么限制因素很可能是密码速度。对于一个典型的1 Gbps网络,大多数密码将执行等效,因为限制是网络的速度。
然而,如果你使用的是一个更快的网络,那么密码很重要。假设您的硬件是现代amd64,那么aes128-gcm@openssh.com几乎肯定是最快的。这是因为现代的amd64 CPU包含加速AES和GCM的指令,AES-128比更安全的版本更快。
为了比较在我的系统上使用OpenSSL的最快可能的密码,我得到5.8GB/S与AES-128/GCM,4.1GB/S与AES-256/GCM,以及2.1GB/ AEAD与ChaCha20/Poly1305。这里的限制实际上是CPU加密数据以通过有线发送数据的速度。没有理由认为在这种情况下任何其他程序都会更快,除非它以多线程的方式进行加密,因为限制是CPU的速度。
通过运行以下命令,您可以使用您的OpenSSL版本(由OpenSSH使用)测试速度:
$ openssl speed -evp aes-128-gcm
$ openssl speed -evp aes-256-gcm
$ openssl speed -evp chacha20-poly1305如果您想要调整密码,可以这样做:
$ scp -o Ciphers=aes128-gcm@openssh.com,aes256-gcm@openssh.com,chacha20-poly1305@openssh.com \
file user@host:file请注意,通常情况下,如果您想要更快的传输,您要么需要使用某种技术来传输可以执行多线程加密的传输,要么需要使用未加密的传输技术。当然,后者会更快,但会向网络上的每个人公开您的数据和身份验证凭据。
其他密码参数(如密钥交换机制和公钥类型)不会影响传输速度,尽管它们可能会影响建立连接的时间。由于您在这里使用的是AEAD,MAC设置也是不相关的(几乎可以肯定,AEAD更快)。
如果在切换密码后没有看到性能的提高,那么限制因素很可能是磁盘、CPU或RAM之类的东西。还可能通过使用更现代化的操作系统来提高性能,因为RHEL 7是从2014年开始的,内核、密码库和驱动程序可能在过去7年中有了一些性能改进。
您可以通过这样的操作(正如Martin建议的那样)来测试问题是否是您的磁盘:
# dd if=/dev/sda of=/dev/null bs=1M count=10240这将打印出类似于磁盘能够为10 GB块传输数据的最大速度的东西。
https://unix.stackexchange.com/questions/637018
复制相似问题