リモートシェル(RSH)を使用する従来のシステムでパイプネットワークを介したデータ転送を検討してください。たとえば、次のようになります。
rsh host -l user tar -cf - /home/dir \| compress | uncompress | tar -xvf -
そしてこれは「現代的な」システムでは:
ssh user@host tar -cf - /home/dir \| gzip | ungzip | tar -xvf -
パフォーマンスの問題:
AIX 4.3とAIX 5.3の間で転送を実行するためにRSHを使用すると、パフォーマンスが非常に低下します。アイドルスイッチを介して接続したアイドルカード(10/100)を使用しても、5.4GBを転送する約350Kbpsのパフォーマンスが得られました。
AIX 5.3とLinuxの間でこの転送を実行しますが、SSHとgzipを使用するとパフォーマンスははるかに向上しますが、ネットワーク容量には達しません(1ギガビットLANでは平均約400Mbpsを取得します)。
ネットワークパイプのパフォーマンス、カスタムパイプバッファ、ネットワークブロック/バッファなどを最適化する方法はありますか?
答え1
少なくともSSH部分では、帯域幅が制限されるのではなく、CPUが制限されていると思います。
サーバーの暗号化/暗号化解除は制限要因であるため、2つのアイドルサーバー間でscp(ssh cp)を使用して約45〜50 MB / sを取得します。 gzip / ungzipを追加すると、利用可能なコアの数に応じて少なくなる可能性があります。
圧縮されていない転送と暗号化されていない転送の数が優れています。圧縮コマンドなしで試してみて、どのように進行しているかを確認できます。
答え2
圧縮とディスクI / Oを排除するために基本速度テストを実行しましたか?
これは簡単です。影響を受けるホストの1つから別のホストにftpを介して接続して実行すると、一方
put "|dd if=/dev/zero bs=1M count=1000″ /dev/null
の/dev/zeroから1 GBを読み取り、もう一方の/dev/nullに書き込みます。これは純粋なネットワークをテストします。帯域幅。これについてさらに説明する。
AIXChangeブログ:ネットワークパフォーマンスを測定する2つの方法
-o Cipher=arcfour ...
scpを介した転送の場合は、scpのオプションとして、あまりトリッキーでないストリームパスワード(RC4)を使用して暗号化を減らすことができます。
また、見ることができます関連質問を使用して圧縮を有効にすることをお勧めします-C
。あなたの状況を私が理解したところによれば、ネットワーク帯域幅ではなくCPUのパフォーマンスが制限要因であるため、圧縮は状況をさらに悪化させる可能性があります。