サイト間VPNのスループットとパフォーマンスの向上
安定した接続性を維持しながらサイト間VPNのスループットを最適化するには、以下の推奨ベストプラクティスに従ってください。 VPNゲートウェイ、暗号設定( IKEv2 と AES- GCM を使用)、ルーティング、ネットワーク・パラメーター(MTU/MSS)を設定することで、パフォーマンスを最大化することができます。 分散トラフィックを有効にしたアクティブ・アクティブ・モードで展開した場合、ルートベースVPNは最適な条件下で最大2Gbpsのアグリゲート・スループットをサポートできる。
以下のシナリオでは、スループットが低下する可能性がある:
- ポリシー・ベースのVPNが使用される。
- 分散トラフィックが有効になっていない。
- 単一のトラフィックフローのみがアクティブである。
- ピアVPNデバイスはCPUに制約がある。
- ネットワークの断片化が発生。
実際のスループットは、ピアデバイスの容量、利用可能なISP帯域幅、ルーティング設定、パケットサイズ、トラフィックパターン、およびその他の環境要因によって異なります。 以下のガイダンスでは、モード選択、暗号化チューニング、ネットワーク構成、および運用のベストプラクティスについて説明し、最適なパフォーマンスに近づけるよう支援する。
開始前に
最適な結果を得るためには、以下の推奨事項に従ってください:
- 本番環境にデプロイする前に、独自のテスト環境でパフォーマンスをテストする。
- オンプレミスVPNデバイスがスループット要件を満たしていることを確認してください。
- ISPの帯域幅とVPNの想定容量が一致していることを確認してください。
先に進む前に、以下の前提条件を満たしてください:
- サイト間VPNゲートウェイがプロビジョニングされ、両方のVPNトンネルがアクティブになっていることを確認してください。
- オンプレミス・ピアデバイスの構成設定を変更する権限があることを確認します。
- ゲートウェイとピアデバイスが IKEv2 と
AES‑GCMをサポートしていることを確認してください。 - オンプレミス・デバイスの MTU および MSS 設定を変更する権限を持っていることを確認します。
- IBM Cloud 仮想サーバーインスタンスとオンプレミスホストの両方に
iperfをインストールし、パフォーマンスを検証します。
最大スループットのVPNモードを選択
IBM Cloud は、ルートベースとポリシーベースの両方のサイト間VPNモードをサポートしている。 モードの選択は、達成可能なスループットに直接影響する。
ルートベースVPN(推奨)
ルートベースVPNは最も高いスループットの可能性を提供する。 Distributeトラフィックを有効にしてアクティブ・アクティブ・モードで展開すると、トラフィックは両方のトンネルを同時に流れることができる。
スループットを最大化する:
- ルートベースVPNを使用する。
- ルートベースVPNのパブリックIPアドレスの両方にトンネルを設定する。
- 両方のトンネルがアクティブにトラフィックを転送するように、 トラフィックを分散させる。
- 利用可能な帯域幅を完全に使用するために、テスト時に複数の同時トラフィックフローを生成する。
管理されたテスト下で観察された性能によると、推奨されるアーキテクチャと暗号化設定で構成された場合、単一のトンネルで約 1.6 Gbps、両方のトンネルで最大2 Gbpsのアグリゲートを処理できる。 これらの数値はテストによる一例であり、お客様の環境での動作を保証するものではありません。
分散トラフィックを無効にすると、一度に1つのトンネルだけがトラフィックを伝送することになり、通常、全体的なスループットが低下する。
ポリシーベースVPN
ポリシーベースVPNは、一度に一つのアクティブなトンネルしかサポートしない。 セカンダリトンネルはフェイルオーバー時のみアクティブになる。
トンネル間でトラフィックを分散できないため、スループットは通常ルートベースVPNよりも低くなる。 ポリシー・ベースVPNは、ネットワーク・トポロジーやピアデバイスの制限によって必要な場合にのみ使用してください。
暗号化アルゴリズムAES vs AES- GCM
VPNトラフィックはIPsecで暗号化され、暗号化アルゴリズムの選択はセキュリティとパフォーマンスの両方に影響する:
-
AES(Advanced Encryption Standard)- 強力なセキュリティを提供する、広く使用されている暗号化規格。 完全性のために別のハッシュ(AES-CBC)を使用する場合は、わずかに高いオーバーヘッドが発生します。
-
AES- GCM (Galois/Counter Mode)- 暗号化と整合性チェックを一度に行うAESの最新版。 AES- GCM は並列処理をサポートし、一般的に標準的な AES-CBC よりも高いスループットを提供する。
セキュリティを犠牲にすることなくスループットを最大化するために、両方のVPNピアがサポートしている場合はAES- GCM を使用する。
次の表は、 IBM の内部ネットワーク内でテストされるベンチマークスループット値の最小例をまとめたものです。 これらの数値は、管理された試験条件下で観測されたものであり、お客様の環境における実際の性能を保証するものでは「ありません」。 実際のスループットは、ピアデバイスの容量、利用可能なISP帯域幅、ルーティング設定、パケットサイズ、トラフィックパターン、計算能力、およびその他のネットワーク条件に依存します。
| VPNモード | AESのみ | AES GCM |
|---|---|---|
| ルートベース分散 | ~1.6 Gbps | ~1.6 Gbps |
| ルートベースの非分散 | ~674 Mbps | ~1.11 Gbps |
| ポリシー・ベース | ~598 Mbps | ~1.11 Gbps |
パフォーマンスのための暗号化設定
IBM Cloud VPC とオンプレミスネットワーク間のサイト間 VPN では、IPsec プロトコルを使用してトラフィックが暗号化されます。 暗号化が始まる前に、インターネット鍵交換(IKE)プロトコルを使って安全な鍵交換が行われる:
- フェーズ1:VPNピア間で安全で認証された通信チャネルを確立する。
- フェーズ2:実際のデータトラフィックを暗号化するために使用されるIPsecセキュリティアソシエーション(SA)をネゴシエートする。
暗号化、ハッシュ化、鍵交換の操作は双方のピアのCPUリソースを消費するため、暗号の選択はVPNのパフォーマンスに直接影響する。 効率的で安全なアルゴリズムを選択することで、スループットを最大化し、安定した接続性を維持することができます。
IKEプロトコルのバージョンを選択する
IKEは、VPNデバイス間のセキュアで認証された通信チャネルを確立します。 セキュリティ・パラメーターのネゴシエーション、キーの交換、暗号化トンネルのセットアップを行う。
IBM Cloud IKEv1 と の両方をサポートしている。 IKEv2 しかし、 IKEv2 :
-
より迅速な交渉
-
オーバーヘッドの削減
-
安定性の向上
-
リキーの問題を最小限に抑える
詳しくは、 サイト間VPNにおけるリキーの衝突とはを 参照してください。
ピアデバイスでサポートされている場合は、 IKEv2。
フェーズ1(IKE)の暗号設定
フェーズ1では、VPNピアがお互いを認証し、さらなるネゴシエーションのために安全なチャネルを確立する。 ハッシュアルゴリズムは、VPNトンネル上で送信されるデータが改ざんされていないことを保証するのに役立ちます。 彼らはデータのユニークなフィンガープリント(ハッシュ)を作成し、受信側で検証される。 詳細については、 フェーズ1でサポートされている アルゴリズムを参照してください。
フェーズ1に以下の値を設定する:
- 認証:
SHA‑256またはSHA‑384 - ディフィー・ヘルマン(DH)グループ:
14または19 - 寿命:お使いの環境でより短い間隔が必要な場合を除き、デフォルト
選択したハッシュアルゴリズムがピアネットワークでサポートされていることを確認してください。 それ以外の場合は、コンプライアンス上、より強力なアルゴリズムが要求されない限り、 SHA-256 または SHA-384 を使用する。
フェーズ 2 (IPsec) 暗号設定
フェーズ 2 では、VPN ピアが実際のデータトラフィックの暗号化方法を定義する IPsec SA をネゴシエートする。 暗号化はデータをスクランブルし、許可された当事者だけが読めるようにトラフィックの機密性を保護する。 詳細については、 フェーズ2でサポートされている アルゴリズムを参照してください。
フェーズ 2 に以下の値を設定する:
- 暗号化:
AES‑GCM(推奨) - 寿命:安定性のためのデフォルト
AES-GCM 通常、 AES-CBC よりも高いスループットを実現する。 並列処理をサポートし、完全性保護を内蔵しているため、個別にハッシュ化する必要がない。
MTUとMSSを最適化してパケットの断片化を防ぐ
MTU(Maximum Transmission Unit:最大伝送単位)やMSS(Maximum Segment Size:最大セグメント・サイズ)などのネットワーク・パラメーターは、VPNのスループットに直接影響します。 フラグメンテーションやパケットロスはパフォーマンスを低下させる。
MTUとMSSを最適化するには、以下の手順に従ってください:
-
オンプレミス・デバイスのMSSを
1360バイトに設定する。 この値はIPsecのオーバーヘッドをアカウントし、 TCP パケットの断片化を避ける。 詳しくは、 TCP パケットのMSSを制限する MSSクランピングを 参照。 -
パケットのサイズをチェックする ping テストを使用してMTUを検証する。
ping -s 1472 -M do DESTINATIONここで、
-s 14721472バイトのペイロードを持つパケットを送信する。-M do- 断片化を防ぐために、"Don't Fragment"(DF)フラグを設定する。
DESTINATION- テストしたいIPアドレスまたはホスト名。
Windows の場合:
ping www.example.com -f -l 1472ここで、
-f- パケットに "Don't Fragment "フラグを設定し、フラグメントなしで送信できる最大サイズをテストするのに役立つ。
-l- ヘッダを除いたペイロードサイズをバイト単位で指定する。
IBM VPN for VPC の場合、MTUは
1500バイトで、推奨MSSは1360バイトである。 フラグメンテーションが発生する場合は、MTUを1490バイトに下げる。
これらのパラメータを最適化することで、利用可能なVPNスループットをフルに活用することができる。
VPNゲートウェイの設定
VPNゲートウェイを最適化することで、トラフィックが効率的に流れ、サポートされている場合は両方のトンネルが使用される。
VPNゲートウェイの設定を最適化するには、以下の手順に従ってください:
-
分散トラフィックによるルートベースVPNモードを有効にする。
-
ルートベースVPN- "Distribute traffic "オプションが有効な場合、トラフィックは両方のVPNトンネルを同時に流れる。 また、より多くのピアをゲートウェイに接続することで、トラフィック負荷の分散が可能になり、全体のスループットを向上させることができる。 詳しくは、 ルートベースVPNのトラフィック分散を ご覧ください。
トラフィックを分散させないスタティック・ルート・ベースのVPN接続では、1つのトンネルしか使用されないため、全体のスループットが低下する。
-
ポリシー・ベースVPN- 一度に1つのVPNトンネルだけがアクティブになる。 セカンダリトンネルは、プライマリに障害が発生した場合にのみアクティブになるため、スループットが低下する。 このモードでは "トラフィックの分散 "は利用できない。
-
-
クロスゾーン遅延を避けるため、VPNゲートウェイがVPCサブネットと同じアベイラビリティゾーンにあることを確認してください。 詳細については、「 トラフィックがルートベースVPNゲートウェイを経由しないのはどのような場合か 」を参照してください。
-
全体的なスループットはゲートウェイの総容量に依存するため、トラフィックの多いトンネルを専用のVPNゲートウェイに移動する。 単一のゲートウェイ上に複数の接続を作成している場合は、それらを別のゲートウェイに移動することを検討してください。これにより、共有アプライアンスの負荷が軽減され、スループットの安定性が向上します。
-
未使用のトンネルは、IKEと再暗号化のオーバーヘッドを増加させる可能性があるため、無効にしてください。
-
ルートがVPCルーティングテーブルに適切に伝搬されることを確認します。 送信元IPアドレスは、トラフィックのバイパスを防ぐために、設定されたVPNローカルサブネット範囲と一致する必要があります。 また、重複するCIDRが存在しないことを確認する。
-
NAT-Tを有効にする。 オンプレミスのVPNデバイスがNATの背後にある場合、またはESP(Encapsulating Security Payload)トラフィックが中間デバイスによってブロックされている場合。 NAT-TはIPsecパケットを UDP、トラフィックがNATデバイスを通過できるようにカプセル化する。
運営上の配慮を見直す
その他の運用要因もVPNのパフォーマンスに影響を与える可能性がある:
- ピアネットワークのファイアウォールが IBM Cloud VPC CIDRを許可していることを確認して、スロットリングやレート制限のエラーを回避してください。
- ISPがネットワークトラフィックを制限していないことを確認してください。
- 他の環境やワークロードを Transit Gateway 経由で接続する場合は、ポリシーベース VPN のみを使用する(このトポロジーではルートベースはサポートされない)。 詳しくは、 VPNゲートウェイのルートプロパゲーションの設定を 参照してください。
スループットの検証
iperf などのネットワーク・パフォーマンス・ツールを使用して、VPNのスループットを定期的にテストし、パフォーマンスが予想される範囲内に収まるようにする。 サーバーとクライアントの両方のシステムに iperf をインストールする必要があります。 iperf を使用するには、以下の手順に従う:
-
サーバー( IBM Cloud またはオンプレミス・ホスト)で、着信接続をリッスンする
iperfサーバーを起動する:iperf -s -
クライアントで、クライアントからサーバーへのテストを開始する:
iperf -c SERVER_IP_ADDRESS -
帯域幅、転送速度、その他の測定基準について出力を確認する。
これらのベストプラクティスに従うことで、安全で安定した接続性を維持しながら、サイト間VPNのスループットを大幅に向上させることができます。
これらの手順を完了したら、VPNのスループットを再度測定し、変更前に取得したベースライン値と結果を比較してください。 この比較により、最適化が効果的であることを確認し、ピアデバイスのCPU制限、ISPの制約、トラフィックパターンの非効率性など、残っているボトルネックを特定することができます。
それでもスループットが要件を満たさない場合は、各構成領域を系統的に見直し、調整ごとにパフォーマンスを検証してください。 継続的なテストとチューニングにより、VPN配備がお客様の環境で可能な限り効率的かつ確実に動作するようにします。