web-dev-qa-db-ja.com

20Mbps WAN IPSecトンネル経由で10Mbpsに制限

最近、リモートサイトを10/10Mbpsファイバーリンクから20/20Mbpsファイバーリンクにアップグレードしました(地下室へのファイバー、次に地下室からオフィスへのVDSL、約30メートル)。このサイトと中央サイトの間には定期的に大きな(マルチギグ)ファイルコピーが存在するため、リンクを20/20に増やすと、転送時間がほぼ半分になるという理論がありました。

ファイルをコピーするための転送(たとえば、robocopyを使用してファイルをいずれかの方向にコピーするか、Veeam Backup and Recoveryのレプリケーション)は、10Mbpsで制限されます。

アップグレード前:

enter image description here

アップグレード後(robocopy):

enter image description here

ほぼ同じです(転送時間の長さの違いは無視してください)。

転送は、Cisco ASA5520と Mikrotik RB2011UiAS-RM の間のIPSecトンネルを介して行われています。

最初の考え:

  • QoS-いいえ。 QoSルールはありますが、このフローに影響を与えるものはありません。とにかくチェックするために数分間すべてのルールを無効にしましたが、変更はありませんでした
  • ソフトウェア定義の制限。このトラフィックのほとんどはVeeamBackup and Recoveryのオフサイト出荷ですが、そこに定義されている制限はありません。さらに、私はまっすぐなrobocopyを実行しただけで、まったく同じ統計が表示されました。
  • ハードウェアに対応していません。さて、5520の公開されたパフォーマンスの数値は225Mbpsの3DESデータであり、Mikrotikは数値を公開していませんが、10Mbpsをはるかに超えています。これらの転送テストを実行すると、MikrotikのCPU使用率は約25%〜33%になります。 (また、IPSecトンネルを介してHTTP転送を実行すると、20Mbps近くにヒットします)
  • レイテンシとTCPウィンドウサイズを組み合わせると、サイト間のレイテンシが15ミリ秒になるため、最悪の場合でも32KBのウィンドウサイズ32*0.015は最大2.1MB /秒です。さらに、複数の同時転送は合計で10Mbpsになるだけで、この理論はサポートされていません。
  • たぶん、ソースと宛先の両方がたわごとですか?まあ、ソースは1.6GB /秒の持続的な順次読み取りをプッシュできるので、そうではありません。宛先は200MB /秒の継続的な順次書き込みを実行できるため、そうではありません。

これは非常に奇妙な状況です。私はこれまで、このような形で現れるものを見たことがありません。

他にどこを見られますか?


さらに調査すると、IPSecトンネルを問題として指摘できると確信しています。私は人為的な例を作り、サイトの2つのパブリックIPアドレス間で直接いくつかのテストを行い、次に内部IPアドレスを使用してexact同じテストを行いました。暗号化されていないインターネットでは20Mbps、IPSec側では10Mbpsしか複製できませんでした。


以前のバージョンには、HTTPに関する赤のニシンがありました。これを忘れてください、これは不完全なテストメカニズムでした。

Xeonからの提案に従って、サポートを依頼したときにISPからエコーされたので、IPSecデータのMSSを1422にドロップするマングルルールを設定しました- この計算に基づく

 1422   +  20 + 4 +  4 +   16  +   0     +      1    +     1     +   12
PAYLOAD  IPSEC SPI ESP  ESP-AES ESP (Pad)  Pad Length Next Header ESP-SHA

ISPの1480MTU内に収まるようにします。しかし、悲しいかなこれで効果的な違いはありませんでした。


ワイヤーシャークのキャプチャを比較した後、TCPセッションは両端で1380のMSSをネゴシエートします(いくつかのことを微調整し、計算が失敗した場合に備えてバッファーを追加した後。ヒント:おそらくそうです)。1380とにかくASAのデフォルトのMSSでもあるので、とにかくこれをずっとネゴシエートしていた可能性があります。


トラフィックの測定に使用している奇妙なデータ Mikrotik内のツール内 が表示されています。それは何もないかもしれません。以前はフィルターされたクエリを使用していたので、これに気づかなかったし、フィルターを削除したときにのみこれを確認した。

11
Mark Henderson

CPUは3番目にチェックしたものですが、私はこれを書きました。

これらの転送テストを実行すると、MikrotikのCPU使用率は約25%〜33%になります。

これはCPUグラフで確認できます

enter image description here

私は、外部リソース(つまり、他の多くのサポートフォーラム およびブログ )によって、ほとんどのMikrotikルーターが3DESまたはAES暗号化のいずれかで11Mbpsを超えるIPSecトラフィックをプッシュできないことを確認しました。ハードウェア暗号化オフロードを備えたモデル。

したがって、これはハードウェアの制限にすぎないようです。私はずっと早くそれを捕まえるべきでしたが、何らかの理由でMikrotikはそれがCPUにバインドされていることを私に示していませんでした。

私は買い物をしに行きます。

3
Mark Henderson

犯人がCPUだと確認できる。 ここ Mikrotik RB750GLをベンチマークし、AES-128トラフィックで12 Mb/sを測定しました(3DESでは6.0 Mb/sのみ)。

あなたの結果は私が記録したものと完全に一致しているようです。

2
shodanshok