内容

概要

前提条件

要件

使用するコンポーネント

設定

確認

トラブルシュート

概要

このドキュメントでは、TCP MSS調整の概念と設定について説明します。また、最大伝送ユニット(MTU)の概念と、パケットサイズの大きいWebサイトでのパケット廃棄を防止する方法についても説明します。

著者：Cisco TACエンジニア、Ricka Jain

前提条件

要件

Point-to-Point Protocol over Ethernet(PPPoE)に関する知識があることが推奨されます。

使用するコンポーネント

このドキュメントの情報は、汎用デバイスに基づいています。

このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、初期（デフォルト）設定の状態から起動しています。対象のネットワークが実稼働中である場合には、どのようなコマンドについても、その潜在的な影響について確実に理解しておく必要があります。

設定

MTUは、1つのインスタンスでプロトコルによって送信できるデータの最大長です。たとえば、イーサネットインターフェイスのMTUサイズはデフォルトで1500バイトで、イーサネットフレームヘッダーとトレーラは除外されます。つまり、インターフェイスは1500バイトを超えるフレームを伝送できませんが、次の概念が視覚化されます。

フレームの内部を見ると、20バイトのIPヘッダー+ 20バイトのTCPヘッダーが表示されます。1460バイトが残り、1つのフレームに送信できるペイロードです。これはTCP MSSとして報告されます。

転送ルータで実行される追加のカプセル化がない場合、送信元デバイスはパケットのフラグメンテーションまたは廃棄の潜在的なリスクを伴わずに、最大ペイロード長1460バイトを使用する可能性があります。これは、送信元ホストと宛先ホストの間のTCP 3ウェイハンドシェイク段階でネゴシエートされます。ただし、転送中のルータが追加のカプセル化を実行すると、ラベルヘッダーが追加され、最終的に転送ルータから送出されるフレームのサイズが増加します。インターフェイスの最大MTUはハードウェアプラットフォームによって異なりますが、IEEE 802.3標準では1500バイトの最小MTUが必要です。

PPPoEには追加の8バイトが必要で、イーサネットMTUを1492に切り捨てます。ホストの有効なMTUが変更されていない場合、ホストとサーバの間のルータはTCPセッションを終了できます。PPPoE設定では、IP TCP ADJUST-MSS 1452コマンドを使用することをお勧めします。

送信元デバイスが1460バイトのTCP MSSを持つフルサイズパケットを作成する場合、転送ルータがパケットをドロップ/フラグメント化する可能性があります。これは、Webサイトを閲覧する際の問題など、当社のネットワークパフォーマンスに悪影響を及ぼします。パケットサイズの大きいWebサイトに対応するために、送信元デバイスから可能な最大TCP MSSサイズ（1452バイトなど）を縮小できます。TCPハンドシェイク時にルータが送信元と宛先に信号を送らない場合、最適なTCP MSSによって廃棄/フラグメンテーションの問題が発生する可能性があります。

この問題は、すべてのWebサイトを参照する際に発生する可能性はありませんが、一部のWebサイトで発生する可能性があります。Tこの理由は、パケットに到達するために作成されるパケットサイズ（中間のハードウェアによって異なる）にあります。 より大きなパケットサイズを作成するWebサイトでは、ip tcp adjust-mssコマンドを使用しない場合、より大きなパケットは廃棄されます。

一部のWebサイトを参照するときに発生する問題をトラブルシューティングするには、コマンドIP TCP ADJUST-MSS 1452を、LANインターフェイスをポイントするインターフェイスで設定する必要があります。

1.有効

2.ターミナルの設定

3.インターフェイスタイプ番号

4. Ip tcp adjust-mss max-segment-size //ルータを通過するTCP SYNパケットのMSS値を調整します。max-segment-size引数は、最大セグメントサイズ（バイト）です。範囲は 500 ～ 1460 です。

5. Ip mtu bytes //インターフェイスで送信されるIPパケットのMTUサイズをバイト単位で設定します。

6.終了

確認

ここでは、設定が正常に機能しているかどうかを確認します。

ステップ 1：

TCP MSS調整の設定を確認します。

interface ethernet1/1

ip address 10.0.0.1 255.0.0.0

ip tcp adjust-mss 1452

duplex half

ステップ 2：

ルータAからルータBにTelnet接続します。

telnet 10.0.1.2

Trying 10.0.1.2...

TCP: sending SYN, seq 886170752, ack 0

TCP0: Connection to 1.0.1.2:23, advertising MSS 536

tcp0: O CLOSED 1.0.1.2:23 4.0.0.1:11008 seq 886170752

OPTS 4 SYN WIN 4128

ステップ 3：

ルータBのデバッグ出力を確認します。

tcp0: I LISTEN 4.0.0.1:11008 1.0.1.3:23 seq 886170752

OPTS 4 SYN WIN 4128

TCP0: state was LISTEN -> SYNRCVD [23 -> 4.0.0.1(11008)]

TCP0: Connection to 4.0.0.1:11008, received MSS 1452, MSS is 1452

TCP MSS値は、設定値1452に調整されます。

トラブルシュート

現在、この設定に関する特定のトラブルシューティング情報はありません。