Maximum Transmission Unit

最大送信単位(MTU)とは



最大送信単位(MTU:Maximum Transmission Unit)とは、ネットワーク通信において、一度に送信できるデータパケットの最大サイズを示す単位です。この値は、使用するネットワークメディアや、カプセル化の有無によって変動します。例えば、イーサネットでは通常、IP通信に利用できる最大サイズは1,500バイトですが、PPPoEを使用する場合はカプセル化のために8バイトが消費され、1,492バイトとなります。WAN環境では、フレッツ光のような特定のネットワークで1,454バイトに制限されることがあります。

MTUを超えるサイズのデータ送信が必要な場合、データはより小さなパケットに分割されて送信されます。このプロセスを断片化(フラグメンテーション)と呼びます。

MTUと通信パフォーマンス



パケット通信において、パケット長は通信パフォーマンスに影響を与えます。データ破損時の再送はパケット単位で行われるため、不安定な回線ではパケットを小さく分割する方が再送の負荷を軽減できます。一方、エラーが少ない安定した回線では、パケット長を大きくすることで、パケット化によるオーバーヘッドを減らすことができます。

そのため、各通信メディアは特性に応じて最適なMTUが設定されています。また、カプセル化はMTUを減少させる要因となります。

インターネットのようなWAN環境では、パケットは様々なMTUの異なる経路を通る可能性があります。MTUを超えるパケットは通常、IP層で断片化されますが、これはルーターの処理負荷を増加させ、通信パフォーマンスを低下させる可能性があります。そのため、断片化を避けるために、送信前にパケット長を調整することが望ましい場合があります。

経路MTU探索



経路MTU探索(Path MTU Discovery)は、送信元から宛先までの経路で、断片化せずに転送できる最大のMTUを動的に検出する仕組みです。この技術は、パケットに断片化禁止フラグ(Don't Fragment = DFフラグ)を設定し、MTUを超える経路に到達した際にICMPパケットで送信元に通知することで実現します。

ICMPパケットは、転送できなかったルーターから送信元ホストへ送られ、Type 3(Destination Unreachable Message)のCode 4(fragmentation needed and DF set)で通知されます。このパケットには、断片化が必要となった伝送路のMTU値が含まれており、送信元はこれを基にパケットサイズを調整します。しかし、古いルーターではMTUの値が正確に通知されない場合もあり、再試行回数の増加や最適値より小さいMTUの選択につながることがあります。

経路MTU探索に関する問題点



経路MTU探索は理論上は断片化を必要としない最大のMTUを検出できますが、実際には設定の問題で正常に機能しないことがあります。特に、ファイアウォールでICMPパケットがフィルタリングされている場合、「経路MTU探索ブラックホール」と呼ばれる現象が発生します。この状況では、送信元がパケットの損失に気付かず、タイムアウトが発生します。

この問題を回避するためには、ICMPのType 3 Code 4パケットを許可するか、経路MTU探索を諦めて断片化を許可するかのいずれかの対策が必要です。しかし、通信相手の設定変更は難しい場合が多いため、TCPのMaximum Segment Size(MSS)オプションを利用する方法が有効です。

TCPはコネクション開始時に、自ホストが受信できる最大セグメント長(ヘッダを除く)を通知します。送信側は、このMSSを超えるデータを送ることはできません。IPv4では、TCPヘッダ20バイトとIPヘッダ20バイトを考慮して、MSS + 40バイトがMTUに相当します。

最近のブロードバンドルーターには、TCPセグメント転送時にMSSオプションを書き換える機能を持つものがあり、これを利用することで、経路MTU探索に関連する問題を回避できます。

まとめ



MTUはネットワーク通信における重要な概念であり、適切に設定することで通信効率を向上させることができます。経路MTU探索やMSSオプションといった技術を理解し、ネットワーク環境に応じた適切なMTU設定を行うことが、快適なネットワーク利用に不可欠です。


参考文献

W・リチャード・スティーヴンス『詳解TCP/IP Vol.1 プロトコル』橘康雄訳、井上尚司監訳(新装版)、ピアソン・エデュケーション、2000年12月20日(原著1994年)。ISBN 4-89471-320-9。


関連情報
最大セグメントサイズ(MSS)


RFC

RFC 1191 - Path MTU Discovery
RFC 1812 - Requirements for IP Version 4 Routers
RFC 1981 - Path MTU Discovery for IP version 6
RFC 2923 - TCP Problems with Path MTU Discovery

もう一度検索

【記事の利用について】

タイトルと記事文章は、記事のあるページにリンクを張っていただければ、無料で利用できます。
※画像は、利用できませんのでご注意ください。

【リンクついて】

リンクフリーです。