リモートホストでsshを実行しますが、端末のパフォーマンスが低下します。入力している記号はすぐには表示されませんが、少し遅れて表示されます。遅延後、2つのシンボルが同時に表示されることがあります。
待ち時間が長いことは、sshパフォーマンスの低下のもう1つの原因です。 tracerouteのより良い代替としてmtrを使用することを強くお勧めします。これにより、ネットワークの問題が発生する可能性のある場所をある程度理解できるはずです。
必要がない場合はX11転送を無効にし(ssh -x)、圧縮を有効にすると(ssh -C)、セッションを高速化することもできます。
次の2つの原因が考えられます。
CompressionおよびCompressionLevel 9を使用します。これは少し役立つはずです。これらのパラメーターは/ etc/ssh/ssh_configで構成できます。しかし、実際のネットワークが非常に貧弱な場合、このトリックはあまり効果がありません。
端末が正常であることをすぐに発見して、ネットワークパフォーマンスを測定しようとしました。何が起きたの?
2つのインターネットチャネルルーター間で負荷分散を行っています。 sshトラフィックをwan1を介してルーティングすることも、wan2を介してルーティングすることもあります。私は、1つのチャネルだけに問題があることを提案しました。そこで、2つのチャネルのmtr(素晴らしいツール!)を使用してネットワークパフォーマンスを個別に測定しました。
うん! wan2には21ホップ、110ミリ秒、wan1には15ホップ、わずか21ミリ秒です。 wan2レイテンシが問題です。
この動作の最も明白な原因は、リンクが飽和しているか、パケットをドロップしていることです。ワークステーションからsshを実行するマシンまで、ホップはいくつありますか?該当する場合、tracerouteを分析しましたか?
長いファットパイプ(高帯域幅+高遅延)でOpenSSHを使用している場合、OpenSSHがより大きなtcpウィンドウサイズを使用するための修正が含まれているため、両側で少なくともバージョン4.7を使用していることを確認してください。
* The SSH channel window size has been increased, and both ssh(1)
sshd(8) now send window updates more aggressively. These improves
performance on high-BDP (Bandwidth Delay Product) networks.
接続を最大限に活用したい場合、これは重要になる可能性があります。そうしないと、送信を続行する前に送信側が確認を待機する必要がある場合があるためです。
誤って構成されたDNSがこれを引き起こす可能性があります。ログインするとサーバーは問題なく応答し、ファイルのアップロードとダウンロードはかなり高速になりますが、SSHログインは遅くなります。
すでに他の人が言っているように、それは遅延、ネットワークの損失、遅いサーバーが原因である可能性があります。
モダンTCPスタックは Naggle と呼ばれるアルゴリズムを使用するため、1つのタイプで2文字が表示されることがあります。
また、接続を制限するSSHブルートフォースの試みである可能性もあります。セッションが遅くなるたびにログをチェックし、多くの場合、誰かが狂ったようにパスワードを試しています。
注目すべきことの1つは、単にサーバーのメモリです。 Ubuntuを実行していたVM 256Mbのメモリを使用していて、SSHは本当に遅い。これを512Mbに倍増すると問題が解決した。