Translated message

A translation of this page exists in English.

tcp_window_scaling が設定されている場合の MTU、MSS およびウィンドウのサイズの相互関係

Solution Unverified - Updated -

Environment

  • Red Hat Enterprise Linux (RHEL) 6
  • Red Hat Enterprise Linux (RHEL) 5
  • Red Hat Enterprise Linux (RHEL) 4

Issue

  • tcp_window_scaling が設定されている場合に、MTU、MSS およびウィンドウのサイズはどのように相互に関連しますか?

Resolution

クライアントとサーバー間の接続では、クライアントはサーバーに対し、クライアントがサーバーから 1 度に受信できるバイト数を通知します。これはクライアントの受信ウィンドウであり、サーバーの送信ウィンドウになります。

同様に、サーバーはクライアントに対し、サーバーがクライアントから 1 度に取得できるデータのバイト数を通知します。これはサーバーの受信ウィンドウであり、クライアントの送信ウィンドウになります。

ウィンドウのサイズを検討する最も簡単な方法として、示唆される特定の接続についてのデバイスの受信バッファーのサイズを使用できます。

このウィンドウのサイズは、データがアプリケーションプロセスに渡される前に、デバイスがピアから 1 度に処理できるデータの量を表します。

TCP セグメントは、TCP デバイス間にデータを伝送するメッセージです。

セグメントで送信するデータ量を決定する際の主な考慮点は、受信側のスライディングウィンドウメカニズムの現在のステータスになります。

デバイス A がデバイス B から TCP セグメントを受信する場合、デバイス A では、デバイス B が次のセグメントでデバイス A からの送信を許可するデータ量の制限を確認するためにウィンドウフィールドの値を調べます。

現行のウィンドウサイズの指示のほかに、各 TCP デバイスには上限も関連付けられます。この上限は、現行ウィンドウの大きさに関係なく決して上回ることのできない TCP サイズのセグメントサイズです。これは最大セグメントサイズ (MSS) と呼ばれます。

TCP セグメントは IP データグラムにパッケージ化されます。IP データグラムには、独自のサイズ制限があるため、基盤となるネットワークの最大伝送ユニット (MTU) との関連で問題が生じることがあります。

TCP セグメントが大きすぎると、IP データグラムが大きすぎてフラグメンテーションなしに送信することができなくなります。

フラグメンテーションは効率を低下させ、TCP セグメントの一部が失われる可能性が高まります。これにより、セグメント全体を再送信する必要が生じます。

TCP の最大セグメントサイズ(MSS)は、セグメントのサイズに影響を与える他の要因に関係なく、TCP セグメントの Data フィールドの最大バイト数を指定します。

TCP のデフォルト MSS は 512 です。これは、最小 IP MTU の552 から IP ヘッダーと TCP ヘッダーのそれぞれの 20 バイトを差し引いた後の値です。

This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.

Comments