スポンサーリンク
スポンサーリンク

【ip tcp adjust-mss】どのルータに設定が必要か?

【説明】

“ip tcp adjust-mss”は、Ciscoルーターやスイッチで使用されるコマンドで、TCP Maximum Segment Size(MSS)の調整を行います。MSSは、TCP/IPプロトコルスタックにおいて、TCPデータグラムが一度に送信できる最大サイズを指定します。この値は、IPヘッダーとTCPヘッダーのサイズを除いたもので、通常はMTU(Maximum Transmission Unit)から算出されます。

“ip tcp adjust-mss”コマンドは、主に以下の目的で使用されます。

1.フラグメント化の低減: MSSの調整により、パケットフラグメント化を抑えることができます。パケットがフラグメント化されると、ネットワークのパフォーマンスが低下する可能性があるため、フラグメント化を避けることが重要です。

2.VPNトンネルとMSSの調整: VPNトンネルを使用する際、オリジナルのパケットに追加ヘッダーが付与されます。これにより、MSSがオリジナルのMTUを超える可能性があります。この場合、”ip tcp adjust-mss”コマンドを使用してMSSを調整することで、パケットのフラグメント化を防ぐことができます。

【概要】

  • 複数のルータをホップする場合、[ip tcp adjust-mss]をどのルータのどのinterfaceに設定か確認する。
  • 各ルータ(interface)で、別々のmssを設定した場合、どうなるのか確認する。

【前提】

  • Wiresharkの仕様上、FCS 4byteは除外されるため、結果上もFCS省く
  • [ip tcp adjust-mss]はTCPのみに適応され、UDP/ICMPなどは対象外

構成

MSS1-3

検証内容1

【ケース0】各ルータでMSSは設定せずデフォルトでPC1とPC2間でTCP通信を行う

【ケース1】R2の【ケース1】のinterfaceで「ip tcp adjust-mss 1000」でPC1とPC2間でTCP通信を行う

【ケース2】R2の【ケース2】のinterfaceで「ip tcp adjust-mss 1000」でPC1とPC2間でTCP通信を行う

【ケース3】R4の【ケース3】のinterfaceで「ip tcp adjust-mss 1000」でPC1とPC2間でTCP通信を行う

コマンド

interface GigabitEthernet X/X
 ip tcp adjust-mss 1000

検証結果1

【ケース0】各ルータでMSSは設定せずデフォルトでPC1とPC2間でTCP通信を行う

  • capture区間①  Data 1448byte / Frame 1514byte
  • capture区間②  Data 1448byte / Frame 1514byte
  • capture区間③  Data 1448byte / Frame 1514byte
  • capture区間④  Data 1448byte / Frame 1514byte
  • capture区間⑤  Data 1448byte / Frame 1514byte

【ケース1】R2の【ケース1】のinterfaceで「ip tcp adjust-mss 1000」でPC1とPC2間でTCP通信を行う
【ケース2】R2の【ケース2】のinterfaceで「ip tcp adjust-mss 1000」でPC1とPC2間でTCP通信を行う
【ケース3】R4の【ケース3】のinterfaceで「ip tcp adjust-mss 1000」でPC1とPC2間でTCP通信を行う
※ケース1~3は結果が同様のため集約する

  • capture区間①  Data 988byte / Frame 1054byte
  • capture区間②  Data 988byte / Frame 1054byte
  • capture区間③  Data 988byte / Frame 1054byte
  • capture区間④  Data 988byte / Frame 1054byte
  • capture区間⑤  Data 988byte / Frame 1054byte

検証内容1の考察

  • TCP通信(3wayハンドシェーク)の経路にあるルータであれば、どこのルータ(どのインターフェイス)に設定されていても、MSSをadjustすることができる。

検証内容2

ケース4~6で、それぞれmss値を変えた場合、PC2 → PC1へのData/Frameサイズは

ip tcp adjust-mss 1100
ip tcp adjust-mss 800
ip tcp adjust-mss 1200

MSS2-2

検証結果2

  • capture区間①  Data 788byte / Frame 854byte
  • capture区間②  Data 788byte / Frame 854byte
  • capture区間③  Data 788byte / Frame 854byte
  • capture区間④  Data 788byte / Frame 854byte
  • capture区間⑤  Data 788byte / Frame 854byte

検証内容2の考察

複数のmssの設定があるルータをTCP通信が経由する場合、mssが最小の値を採用する。
TCP 3wayハンドシェーク時にDataサイズは決定される。

ALL
スポンサーリンク
スポンサーリンク