scpのパフォーマンスを制限するものは何ですか?


13

2つのDebian Linuxマシンを1ギガビットLANで接続しています。wgetどちらの方向でも約100MB / sを取得する生のHTTPファイル転送でこれを測定できます。

現在使用している場合scp、圧縮なしの最大値は約15MB / sです。-Cフラグを使用して圧縮を有効にすると、コンテンツに応じて最大50MB / sが得られます。

それでも、多くの帯域幅が無駄になっているようです。非常に大きなログファイルの転送について本当に考えなければならなくなり、どれほど奇妙に遅いかがわかるまで、私は長い間気にしませんでしたscpscpすべてのインフラストラクチャがセットアップされているため、会社の環境でもを使用するのは当然です。

scpのパフォーマンスを制限するものは何ですか?暗号化のためにCPUバウンドですか?私が使用htopすると、マルチコアCPUを使用していないようで、4つのCPUの1つだけが最大化されます。

スループットを向上させる方法はありますか?私はHTTPサーバーとsambaを利用できますが、Linuxマシン間でファイルを移動するには、通常SSHを使用します。それが私が育った方法です。しかし、これは今私にそれについて考えさせます、私は大量のデータのために他の転送方法を考慮する必要があるようです。

HTTPはPHP / Java / whateverの特定のアプリケーションでのみ使用され、sambaはWindowsマシンからのアクセスが必要な特別な理由で使用されます。


JooMingからの答えは私にとっては素晴らしいものでしたが-C、圧縮のオプションにより遅くなりました(112MB / sではなく21MB / s)。だから気をつけてください-C
数学

回答:


7

おそらくそれは暗号化です。たとえば、次のように、異なる暗号でscpを試すことができます。

scp -c arcfour src dest

使用可能な暗号については、ssh_configのマニュアルページを確認してください。RC4(arcfour)は高速暗号ですが、おそらくいくつかの代替手段ほど安全ではありません。


RC4の使用は安全ではなく、通信が簡単に切断される可能性があることに注意してください。
エヴァンダーウィン

6

その一部は、OpenSSHの内部実装に関係している可能性があります。HPN-SSHを見て、ボトルネックの1つの理由の適切な説明と、それを解決できるOpenSSHのパッチを確認してください(ソースからパッチを適用して再構築する場合)。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.