通信のスピードアップをめざしてEditMTU Ver 2.58
|
■ ADSLのスピードアップに関する各パラメータ調整を手軽に | ||||||||
---|---|---|---|---|---|---|---|---|
MTU/RWIN値などの調整は対策の1つであって、通信スピードに影響する要因は他にもいろいろあります。MTU/RWINを最適化してもネット上での「リンク速度」以上にすることは出来ません。このツールでパラメータを変更しても効果がない場合は、ノイズや信号レベルの減衰などの影響で ADSLモデムのリンク速度が下がっていると考えられます。
・ウィルス対策ソフトなどの通信を監視している常駐ソフトを試しに無効にしてみる。
なお、速度を測る場所としては、下のような速度計測サイトがあります。
※速度は、サイトや途中の回線の混み具合によって変化します。 そのため、測定した速度の変化がレジストリ値を変更した効果なのか、それともネット側の状況が変わった影響によるものなのか判断が難しい場合があるので、時間帯を決めて何度か測定し、平均値を求めると良いでしょう。 |
■ Win98/ME のパラメータ変更と確認 |
---|
◆ ボタンをクリックすれば、現在のレジストリの値が各パラメータの右側のグレー色のBOXに表示されます。(※ 値が存在しないものは空白か「-」を表示) 【 (Win98/ME用) 値を設定するレジストリキーと名前 】[HKLM\System\CurrentControlSet\Services\Class\NetTrans\00xx] "MaxMTU"="xxxx" "MaxMSS"="xxxx" ※USBタイプ [HKLM\System\CurrentControlSet\Services\Class\Net\00xx] "IPMTU"="xxxx" ※USBタイプ [HKLM\System\CurrentControlSet\Services\VxD\MSTCP] "MaxMTU"="xxxx" "DefaultMSS"="xxxx" "DefaultRcvWindow"="xxxxx" "TcpWindowSize"="xxxxx" ※USBタイプ "KeepAliveInterval"="100000" "SessionKeepAlive"="120000" "DefaultTTL"="128" "DefaultTOS"="8" "PMTUDiscovery"="1" "PMTUBlackHoleDetect"="0" "Size/Small/Medium/Large"="3" "SackOpts"="1" "Tcp1323Opts"="0" "MaxDupAcks"=dword:3 [HKLM\System\CurrentControlSet\Services\VxD\NWLink\Ndi\params\cachesize] @="0" "default"="64" [HKLM\System\CurrentControlSet\Services\VxD\MSTCP\Parameters] "Tcp1323Opts"="0" "MaxDupAcks"=dword:3 ※ HKLM は HKEY_LOCAL_MACHINE の略。 |
■ Win2K/XP のパラメータ変更と確認 |
---|
◆ ボタンをクリックすれば、現在のレジストリの値が各パラメータの右側のグレー色のBOXに表示されます。(※ 値が存在しないものは「-」か空白を表示) 【 (Win2K/XP用) 値を設定するレジストリキーと名前 】[HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters] "TcpWindowSize"=DWORD:0000xxxx "GlobalMaxTcpWindowSize"=DWORD:0000xxxx "EnablePMTUDiscovery"=DWORD:00000001 "EnablePMTUBHDetect"=DWORD:00000000 "DefaultTTL"=DWORD:00000080 "SackOpts"=DWORD:00000001 "TcpMaxDupAcks"=DWORD:00000003 "Tcp1323Opts"=DWORD:00000000 [HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\(AdapterID)] "MTU"=DWORD:0000xxxx "TcpWindowSize"=DWORD:0000xxxx [HKLM\System\CurrentControlSet\Services\Ndiswan\Parameters\Protocols\0] "ProtocolType"=DWORD:00000800 ※ XP PPPoE用 "PPPProtocolType"=DWORD:00000021 ※ XP PPPoE用 "ProtocolMTU"=DWORD:000005ae ※ XP PPPoE用 ※ (AdapterID)はレジストリから自動取得。 ※ HKLM は HKEY_LOCAL_MACHINE の略。 |
■ オプション |
---|
◆いくつかのオプションを設定できます。 |
■ MTU 探索 |
---|
◆ PING コマンドにより MTU値を調べて、その結果からRWIN値も計算します。(PINGはパケット分割禁止モードで実行) |
■ 自動設定 |
---|
◆ PING コマンドの実行結果から、通信パラメータを自動設定します。 |
■ ダウンロード |
---|
以下のリンクをクリックしてダウンロードし、適当なフォルダを作成してそこに解凍した後、EditMTU.exe を実行してください。(Lhasa、+Lhacaなどの解凍ソフトが必要) デスクトップなどに EditMTU.exe のショートカットを作成すれば便利でしょう。 (※バージョンアップは、上書き解凍するだけでOK) editmtu258.lzh (435KB / 445,662byte) (※このアプリに関する情報はレジストリには何も登録されませんから、アンインストールは EditMTU.exeが入ったフォルダごと削除するだけでOKです) |
■ Win98/98SE は TCP/IPドライバ(vtcp.386)のアップデートが必要 |
---|
[236926usa8.exe] ↑ ダウンロードして実行すると、RFC1323機能バグ 、再送タイマ・バグが修正されます。 |
■ どのホストでも Ping が通らない場合には |
---|
・Windows XP のファイアウォール(ICF)や、Norton Internet Securityのパーソナルファイアウォール、ウイルスバスターのファイアウォール機能が有効になっている場合、Ping が通らないことがあります。 |
■ 各パラメータについての概説 | ||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
●通信先の最適な MTU 値は、NTT などの通信業者が公表している MTU サイズを参照すれば簡単に分かります。 【フラグメント(パケット分断)を発生させないMTU値の探し方】
●「スタート」→「プログラム」→「アクセサリ」→「コマンドプロンプト」を順にクリックしてDOS窓を出す。 (98では「スタート」→「プログラム」→「MSDOSプロンプト」)
または、[スタート]→[ファイル名を指定して実行] をクリックし、command (Win2K/XPでは cmd)と入力して、[OK] をクリック。 (※DOSモードでは ping を実行出来ません) ●C:\WINDOWS>の後に、 ping -f -l 1472 IPアドレス と入力し Enterキーを押す。 (※ IPアドレスは ***.***.**.*** 形式。IPアドレスが分からなければ HOST名) (※ -l は小文字の L。数字の 1 ではない) ●もし、Packet needs to be fragmented but DF set.などと表示されてしまったら、少しずつ小さい値で繰り返し実行する。 ●例えば 1472で ping が通ったとすると、1472 + 28 = 1500 が MTU 値となる。 ●(MTU - 40)の値を MSS と呼ぶ。(後の計算でMSSの値も使う) ●次に、最適な TcpWindowSize を探す。 ●まず、ping -l 12 -n 10 IPアドレス と入力し実行。 ●この結果、表示される ping time(一番下の行の表示)の Average = aaa ms の aaa の値をメモしておく。 ●次に ping -l **** -n 10 IPアドレス と入力し実行。 (**** は、先ほど得られた ping が通る最大値(この例では1472)) ●ここでも ping time の Average = bbb ms の bbb の値をメモしておく。 ●得られた aaa 、bbb の値を使って以下の計算をする。 最小のTcpWindowSize = (aaa × 帯域幅 × 1.5) ÷ 8 最大のTcpWindowSize = (bbb × 帯域幅) ÷ 8 (※帯域幅の値は、ADSL1.5Mbpsなら1536、8Mbpsなら8192とする) ●この計算結果の「最小〜最大の範囲内で (MTU - 40)の値(MSS)の倍数となる値」が通常最適な TcpWindowSize になる。 ●例えば、最小値が14457で最大値が17642だったとすると、その範囲で MSSの倍数となる 14600 16060 17520 のどれかということになる。ただし、これより大きくてはダメというわけではなく、送信側が調整バッファーを持つことが多い現状では最大値にこだわらずに大きなTcpWindowSizeを設定した方が良い場合がある。また、パケットのロスによる再送を考慮すると最大値も1.5倍する方が良い。 ●DOSコマンド入力が面倒な時は、以下のような内容のPING_XX.BATファイルを作成して実行する方法もある。 echo on ping -l 1472 -n 10 www.geocities.com echo off echo ping 終了。往復時間(RTT)は・・・・・・・・・↑Averageの値 echo −−−−− pause | ||||||||||||||||||||||
■ 関連の参考サイト | ||||||||||||||||||||||
◆MTU等の調整で高速接続・高速表示 | ||||||||||||||||||||||
■ 最後に | ||||||||||||||||||||||
プログラムは十分注意して作成していますが、いつもの「お約束」で、このページに書かれていることを実行する場合は自己責任でお願いします。 |