高レイテンシリンクを介した大容量ファイル転送の速度の向上


8

そのため、最近、海外のオフィスの1つからインターネットを介して大きなファイルをプルする必要がありました。どちらのオフィスにも両方向に50Mビットのファイバーリンクがありますが、往復時間は恐ろしいものであり、良い日に450ミリ秒、がらくたに750ミリ秒と異なります。

もともと、VPN接続を介してファイルをプルしようとしましたが、転送が失敗し(smbは実際には低速リンクを吸い込んで)、約128kBpsで速度が最大に達した後、グーグルはWindows TCPウィンドウスケーリングの問題に直面していることを示しました。

私はそれ以来、ここにファイルをすばやく取得できる商用プライベートクラウドタイプのサービスを介してファイルをプッシュしました。そのため、以下は何よりも好奇心のためのものです。

おもしろいことに、両端のインターネットアクセスはhttpプロキシを介して行われます。ただし、マシンの両端に管理者権限があります。

速度を上げるにはどうしますか?

私が試したこと:

1)2つのLinux仮想マシン間のプレーンSFTP。corkscrewを使用してhttpプロキシを介してパンチアウトし、3つ目の仲介者を使用して2つの端を接続します。達成された速度:約600kBps。

2)SFTPですが、HPN-SSHでパッチされたOpenSSHを使用します。コルクスクリューと中間構成は1)と同じです。速度の向上はほとんどない。

3)2と同じですがpget -c -n 10、転送をチャンクに分割するためにLFTPを使用します。これは3.5MBpsを見て、これまでで最高です...

すべての改善を歓迎します。


回答:


4

最近では、UDRで rsyncをラップし、UDRをトランスポートとして使用することにより、長距離で待ち時間の長いリンクを介した転送に対処しています。UDRは、次のように記述されるUDTを使用します

UDTは、広域高速ネットワークを介した分散データ集約型アプリケーション向けの、信頼性の高いUDPベースのアプリケーションレベルのデータ転送プロトコルです。UDTはUDPを使用して、独自の信頼性制御および輻輳制御メカニズムを備えたバルクデータを転送します。新しいプロトコルは、TCPよりもはるかに高速でデータを転送できます。UDTは、さまざまな輻輳制御アルゴリズムに対応できる高度に設定可能なフレームワークでもあります。

これにより、デフォルトで暗号化が無効になります。これは、HPN-SSHにパッチを当てるときに必要だった主要なことでしたが、UDPアプローチはかなり役に立ちました。UDR / UDPソリューションの主な利点は、コマンド機能がほとんど変更されないことです。rsyncコマンドの前にを付けることになりますudr

udr rsync -avP --stats --delete --inplace /data/ mir1:/data/

また参照してください:SSHトラフィックのWAN最適化の可能性


3

$ lastjobでも同じ問題が発生しました。

自分のインフラストラクチャ内のみに留まることは、LFTPよりも優れたソリューションを見つけることはできませんでした。

費用を正当化できれば、WANアクセラレーションを実行するアプライアンスを入手できます。基本的に、これらは透過的にリクエストをはるかに大きなチャンクに変換するため、2つのサイト間のチャットが大幅に減少します。Riverbedはおそらくその中で最もよく知られているオプションですが、IIRCにはジュニパーのルーターがそれを行うためのモジュールもあります。現在、FLOSSのオプションについては知りません。

私は実際にはDropboxらが最良の選択肢だとわかりましたが、それはあなたには受け入れられないかもしれません。

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