opensshクライアント/サーバーの最大実行速度は約1.03GB / sですが、iperf3は同じポイントツーポイントリンクで7.03GB / sを簡単に維持できることが残念です。
- ナゲルを強制する、
- ncをSSH ProxyCommandとして使用する、
- [圧縮無効](https://gist.github.com/KartikTalwar/4393116、
- 特定のパスワードを強制する、
これらのどれも効果がありません。
- iperfテストとssh転送テストの間、両方のシステムのCPU負荷は70%(合計2400%)未満でした。
- 関連ブロックデバイスなし
わかりません。 sshは10gbeをまったくサポートできませんか?パスワードやハッシュが遅くなりますか? opensslクライアントのソースコードにギガビット制限をハードコーディングした人はいますか?このパイプを介して回線速度でデータを転送するには、8つ以上の別々のSSH接続を開く必要がありますか?
以下に示すように、小さな緑色の汚れはですcat /dev/zero | ssh target 'cat >/dev/null'
。紫/オレンジ色の汚れはSSHポート転送に基づくiperf3で、背の高い汚れは通常のiperf3です。
いくつかの統計
専用リンクの iperf3: 7.11Gbits/s
(ファイバを誤って取り扱い、元の〜9Gbit性能が低下したようです。新しいse la vi)
専用リンク経由のiperf3(mtu=9000): 7.55Gbits/s
- gbe LANのiperf3: 941Mbits/s
- 直接リンクによるSSHベースのiperf3:1.03Gbits / s
ギガビットLANを介したSSHベースのiperf3:941Mbits / s
(明らかにsshは正しいルーティングを使用していますが、まだ通常のgbeの使用よりも少し高速です。)
SSH経由でProxyCommand NCを使用するiperf3:1.1Gbit / s
(別の非常に小さな利得)
ProxyCommand ncを使用したSSH経由のiperf3(mtu = 9000):1.01 Gbit / s
(この場合、mtuはリンク速度を遅くするようです)
答え1
それにもかかわらず、SSHは単一のインスタンスに対してより速い転送を許可しないようです。私はついにループバックでテストを実行する必要があることに気づきました(ループバックはLinux 4.10.0で12 Gbits / sを維持できます)。 SSDでは、ループバックのsshはまだ約125〜135 Mbits / sしか実行しません。 ext4ファイルシステムはほとんどできません。約30-50 Mbits/sを達成します。大規模なトランスポートでは、物理的なセキュリティリンクを確立し、netcatを介してddを使用することにしました。ボトルネックは、ファイルシステムや転送プロトコルではなく、ディスクアレイのスループットです。また、aria2をsftpで使用できるため、パラレルSSHクライアント転送を放棄しました。まだ行く道は遠いようです〜
答え2
ほぼ7Gbpsは、継続的な転送速度ではなく、最大ピーク値(「スパイク」)なので、明らかに間違った値です。これは、ネットワークソフトウェアが転送速度を推定する方法のために発生する可能性があります(すべての帯域幅を占有しない小さなパケットがより早く到着する可能性があります)。実際、7Gbpsの読み出しの同じラインでは、平均200Mbpsが出てきます。たとえば、1GBを超えるファイルを継続的に転送してみてください。