MTUとMSSとRWINについて
パソコンでインターネットに接続してTCP/IP経由でサーバーとデーターのやり取りをしますが、この時、MTUとMSSとRWINというものが通信速度に関係してきます。最近のパソコンではユーザーはこれらをあまり気にすることはありませんが、MTUとMSSとRWINについて書き留めておきます。
MTU(Maximum Transmission Unit)とは
MTU(Maximum Transmission Unit)サイズは、その ネットワーク楽天 で伝送されるIPデータグラム(パケット)の最大長のことです。
MTUサイズはpingコマンドにデーターの分割を禁止するオプションの「-f」とICMPメッセージの大きさを指定するオプションの「-l」を付けることで調べることができます。
ICMPメッセージ長とMTUサイズの関係
ICMPメッセージ長とMTUサイズには次の関係があります。
MTUサイズ = IPヘッダ長 + ICMPヘッダ長 + ICMPメッセージ長 1500バイト= 20バイト + 8バイト + 1472バイト ---例
例えば、「-l」で指定した値が1472までは正常に応答があり、それを超える値を指定すると異常応答になる場合は、そのネットワークで伝送できるICMPメッセージの最大長は1472バイトとなります。
これにIPヘッダ長20バイトとICMPヘッダ長8バイトの合計28バイトを加えた1500バイトがMTUサイズになります。
MSS(Maximum Segment Size)
MSS(Maximum Segment Size)とは、TCPプロトコルで伝送されるセグメントの最大長のことです。
また、MSSとMTUサイズには次の関係があります。
MSS = MTUサイズ - IPヘッダ長 - TCPヘッダ長
1460= 1500バイト - 20バイト - 20バイト ---イーサネットの例
例えば、イーサネットでは、MTUサイズは1500バイトです。IPヘッダ長が20バイトで、TCPヘッダ長が20バイトだから、MSSは1460バイトになります。
RWIN(Receive Window Size)とは
RWIN(Receive Window Size)とは、TCP/IP経由でデータを受信しているコンピュータが、受信確認を送信側に送る間隔を示す値のことです。
RWINは、回線速度やパソコンによって最適なサイズが異なりますが、Windows98では RWINのデフォルト値は適当ではないので、書き換えてやる方が速くなります。
Windows2000以降で、ADSLの速度が速くなるのはRWINのデフォルト値に適度な値が設定されているからです。