(手順 1)
以下の式を計算し、答え「A」を求める。
65535 ÷ MSS = A →
「MSS」とは?
(但しAに端数が出た場合は切り捨てて、整数にする)
例:MSSが「1414」の場合
65535 ÷ 1414 = 46.3472・・・ ≒ 46
(手順 2)
以下の式を計算し、答え「B」を求める。
A × MSS = B
(但しBは“「65535」”、または“「65535」に内輪で最も近い値”にする)
例:Aが「46」、MSSが「1414」の場合
46 × 1414 = 65044
(「65535」以下に収まっているのでOK)
※Bが「65535」以上になる場合
例:Aが「47」、MSSが「1414」の場合
47 × 1414 = 66458
“65535 < 66458”になってしまうので、計算式の答えが“「65535」、または「65535」に内輪で最も近い値”になる様に、“「47」に内輪で最も近い整数”
を探す。
「47」に内輪で最も近い整数 → 「46」
46 × 1414 = 65044 → 「65535」以下に収まっているのでOK
(今回はすぐ見つけられたが、見つけられるまで行う)
(手順 3)
「スタート → プログラム → アクセサリ → コマンドプロンプト」、DOS画面が開いたら、
ping -f -l xxxx www.goo.ne.jp
(xxxxはMTU最適値、「www.goo.ne.jp」のところは任意のアドレスで良い)
と入力し、Enter。
表示された画面の「Minimum Maximum Average」の3つのうち、「Average」の数値だけメモしておく。
「ping -f -l xxxx www.goo.ne.jpを入力 → Averageをメモ」の動作を、同じ数値が複数回出るまで繰り返す。
(手順 4)
以下の式を計算し、答え「C」を求める。
※回線が「100M」の場合
100M x 1000 x 1000 ÷ 8 x D ÷ 1000 = C
(Dは(手順 3)で求めた「複数回出た同じ数値」)
例:Dが「22」の場合
100M x 1000 x 1000 ÷ 8 x 22 ÷ 1000 = 275000
(手順 5)
以下の式を計算し、答え「E」を求める。
C ÷ 65535 = E
(但しEに端数が出た場合は切り捨てて、整数にする)
例:Cが「275000」の場合
275000 ÷ 65535 = 4.1962・・・ ≒ 4
(手順 6)
以下の式を計算し、答え「F」を求める。
E × 65535 = F
例:Eが「4」の場合
4 × 65535 = 262140
(手順 7)
以下の式を計算し、答え「G」を求める。
F ÷ B = G
(但しGに端数が出た場合は切り捨てて、整数にする)
例:Fが「262140」、Bが「65044」の場合
262140 ÷ 65044 = 4.0301・・・ ≒ 4
(手順 8)
以下の式を計算し、答え「H」を求める。
G × B = H
例:Gが「4」、Bが「65044」の場合
4 × 65044 = 260176
この「260176」(答え「H」)が「RWIN(=TCP Receive Window)最適値」。
(手順 1~8)で何をしていたのかと言うと、
『対象となるPCとその通信回線環境において、【「65535」の“2の累乗倍”】の範囲内に収まる、最も大きな「MSSの整数倍」』
を求めていた。
手順毎に分けると、
(手順 1~2)で『「65535」以下で最も大きな「MSSの整数倍」』を、
(手順 3~6)で『対象となるPC環境における【「65535」の“2の累乗倍”】の最大値』を、
(手順 7~8)で『“(手順3~6)で求めた数値”内で、最も大きな「MSSの整数倍」』を、
それぞれ求めていた。