IBM サイト間の VPN 最大伝送単位 (MTU) クランプ
サイト間 IPsec VPN 接続を構成して最適化すると、ネットワーク・パフォーマンスの問題が発生する可能性があります。この問題の 1 つは、最大伝送単位 (MTU) と最大セグメント・サイズ (MSS) のクランプに関連しています。 このトピックでは、IPsec VPN 接続の理解と最適化に役立つように、これらの概念について詳しく説明します。
MTU とは
MTU とは、コンピューター・ネットワークで単一フレームで送信できるデータ・パケットの最大サイズのことです。 通常、MTU 値は固定で、バイト単位で測定されます。 イーサネット・ネットワークでは、標準 MTU サイズは 1500 バイトです。 データ・パケットは、MTU を超えると、伝送のためにより小さいセグメントにフラグメント化されます。 IBM Cloud VPC ネットワークで、MTU 9000 バイトの ジャンボフレームを 有効にすると、仮想マシンのパフォーマンスが向上します。 ただし、VPN トラフィックはインターネットを介して移動する必要があるため、 IBM サイト間 VPN ゲートウェイでは MTU は 1500 バイトに固定されています。
MSS とは
MSS は、TCP/IP ネットワーキング・スタック内の伝送制御プロトコル (TCP) 層に固有のパラメーターです。 MSS は、IP パケット内の単一 TCP セグメントに含めることができるデータの最大量を表します。 ネットワーク・インフラストラクチャーによって決定される MTU とは異なり、MSS 値は、2 つの通信装置間の TCP ハンドシェーク中にネゴシエーションされます。 これは、TCP セグメントがネットワークの MTU 内に収まるようにして、フラグメント化と再アセンブリーを回避するために使用されます。
MTU と MSS の関係は、ネットワークの MTU の制約内で効率的なデータ伝送を確保することに基づいています。 MSS をネットワークの MTU に合わせて調整するには、以下の算術関係を使用できます。
MSS = MTU - (IP Header Size + TCP Header Size)
ここで、
IP Header Size
は、IP ヘッダーのサイズ (通常は 20 バイト) です。TCP Header Size
は TCP ヘッダーのサイズ (通常は 20 バイト) です。 したがって、VPN ゲートウェイでは MSS は 1460 です。
MSS クランプ
パケットが IPsec によってまだ暗号化されていない場合、VPN ゲートウェイの MSS は 1460 です。 VPC 仮想マシンが IBM VPN ゲートウェイを介して VPN 接続にトラフィックを送信する場合、暗号化と認証のために追加ヘッダー内に IP パケットをカプセル化することが原因で問題が発生する可能性があります。 このカプセル化により、パケットのサイズが増加し、MTU 1500 バイトを超えます。 サイズが大きくなるため、パケットの断片化や再組み立てなどの問題が発生し、パフォーマンスの低下や待ち時間の増加につながる可能性がある。
IBM サイト間 IPsec VPN における MTU 関連の問題に対処するために、VPN ゲートウェイは _MSS クランピングを_使用する。 このアプローチは、TCPパケットのMSSをネットワークのMTU内に確実に収まる値に制限するために使用され、パケットの断片化とそれに伴うパフォーマンスの問題を防ぎます。
IPsec カプセル化によるパケット・サイズの増加は、IPsec VPN によって使用される暗号化暗号によって異なります。 一般に、MSS 1360 は、MTU 1500 のすべての種類の暗号化暗号にとって安全な値です。 したがって、トラフィックが IBM サイト間 VPN ゲートウェイを通過すると、TCP パケット内の MSS は自動的に 1360 に削減されます。
ネットワークまたは ISP プロバイダーのネットワーク MTU が 1500 バイト未満の場合は、MSS クランプを有効にして、オンプレミス VPN ゲートウェイの MSS を減らす必要があります。