EditMTUとは
EditMTU  (Ver 2.55)

 EditMTUとは

 ADSLを導入したのだけれど期待した速度が得られず、少しでも速度をアップさせたいということで MTU や RWIN 値などの通信パラメータをいろいろ変えて試している人は多いでしょう。

 でも、パラメータはレジストリに記録されているので、手動(regedit)で値を変える場合には間違いの無いように注意深い作業が必要なんですね。細かく調整したい場合は何度も値を変えることになるので、簡単手軽にレジストリを変更出来るこのツールを作ってみました。 パラメータの意味がよく分からなくても、自分の通信種別を選択して推奨値を書き込むことが出来ます。

   PINGの実行により、最適な MTU値を探索できます。

   現在のレジストリの設定値を確認できます。

   標準的なパラメータ値がセットしてあるので、簡単設定できます。

   標準値を自分なりに調整してレジストリに書き込むことも出来ます。

   レジストリ値を、このツール使用前の状態に戻すこともできます。

 ただし、MTU/RWIN値などの調整は対策の１つであって、通信スピードに影響する要因は他にもいろいろあります。 このツールでパラメータを変更しても効果がない場合は、ノイズや信号レベルの減衰などの影響で ADSLモデムのリンク速度が下がっていると考えられます。以下を確認して下さい。

   ウィルス対策ソフトなどの通信を監視している常駐ソフトを試しに無効にしてみる。

   電話回線を利用したガス検針器／ドアフォンなどが悪影響する場合がある。

   電話線が長いと他の機器のノイズを拾うのでなるべく短くする。

   ADSLモデムにアースを付けてみたり、ケ-ブルにノイズフィルタを付けてみる。

   電話線に接続された他の電話／FAXなどの機器を一時外して試してみる。

   電話局との距離が長かったり、ISDN回線が併設されているなど悪条件が無いか。

   より近い交換局への収容換えをNTTに依頼したり、回線がよく切れる場合は保安器交換(有料)を依頼する手も。

   NTTに回線調整(有料)を依頼し、途中のブリッジタップ(BT)外しが有効だった例も。

   回線状態が一時的に悪くなって ADSLモデムのリンク速度が遅くなった場合、回線状態が回復しても リンク速度が元に戻らないことがあります。 その場合、モデムの電源を一度切って、しばらくしてから電源を入れ直してみてください。

 この EditMTU は Win98/Me/2000/XPで動作します。

 EditMTUは変更したレジストリ値を元に戻す機能もありますが、念のためレジストリのバックアップをしておくといいでしょう。 また、システム復元機能があるＯＳなら、それでレジストリの復元も出来ます。 Win98などでは、MSDOSモードで scanreg /restore と入力すると ５つのバックアップからレジストリを復元可能です。

※以下の方法では、変更されたレジストリ値を元に戻すことは出来ますが、追加された情報の削除は出来ません。

【レジストリのバックアップ方法】

●Regeditを起動。([ スタート ]-[ ファイル名を指定して実行]-「regedit」と入力)
●メニューの「レジストリ」から、「レジストリファイルの書き出し」を選択する。
●書き出し範囲は、「HKEY_LOCAL_MACHINE」をチェックし、backup01.reg などの名前で保存する。

【レジストリを復元する方法】

●Regeditを起動。
●メニューの「レジストリ」から「レジストリファイルの読み込み」を選んで、前に保存した backup01.reg ファイルを読み込めばＯＫ。
●または、前に保存した backup01.reg ファイルをダブルクリックしても良い。


 バージョンアップとアンインストール

 インストール／バージョンアップ

 ダウンロードした editmtu255.lzh は、LZH形式の圧縮ファイルですから、Lhasa、+Lhaca などの解凍ソフトが必要です。

 適当な新フォルダを作成して、そこに解凍するだけで使えます。 EditMTU.exeが実行ファイルです。

 解凍された EditMTU.exe のショートカットをデスクトップなどに作っておけば便利です。

 バージョンアップはファイルを上書きするだけでＯＫです。

 アンインストール

 EditMTU.exe を そのフォルダごと削除するだけです。

 ショートカットを作成してあったら、それも削除してください。

 レジストリのバックアップ用データファイルについて

 このツールで変更する前のレジストリの設定を以下のファイルに保存します。 これにより、EditMTUで変更したレジストリ値だけを元に戻すことが出来ます。(データが保存されるフォルダは、EditMTU.exeと同じフォルダです)

 ※このファイルは、最初にレジストリ値の読込みボタンをクリックした時に一度だけ作成されます。

 ・ DefReg98.dat … Win98/MEのレジストリ設定を保存したファイルです。

 ・ DefRegXP.dat … Win2K/XPのレジストリ設定を保存したファイルです。

 上のレジストリ保存ファイルを削除してしまうと、レジストリを元のツール使用前の状態に戻せなくなります。


Win98/ME

 MTU/RWIN調整の操作方法

 「Win98/ME」タブ

 Win98/ME のパラメータ設定と確認ができます。

   ボタンをクリックすると、現在のレジストリの設定値が各パラメータの右側のグレー色のBOXに表示されます。※値が存在しない場合は空白か「-」を表示。(ＯＳのデフォルトでは、ほとんどの値が未設定ですから - が表示されます)

　　なお、Ver2.0以降では自動的にレジストリ値を取得するように変更しましたので、特に「値取得」ボタンをクリックする必要はありません。

   ボタンをクリックすると、レジストリ値を読み込んで、その値を左側の設定BOXの方にコピーします。 レジストリ値を繰り返し修正して書き込む場合に便利でしょう。 ※レジストリに未設定の値がある場合はコピー出来ません。

  「通信の種別」BOX右端の[▼]をクリックして自分に該当するものを選択すると、各パラメータの標準値がセットされますから、後は [image] ボタンをクリックするだけでレジストリに登録できます。

　　(※次回 EditMTUを起動した時は、終了時に選択されていた通信種別が表示されます)

  表示されているパラメータ値を自分なりに調整してからレジストリに書き込むことも出来ます。(※互いに連動する値については「オプション」タブを参照)

　　なお、この変更したパラメータ値(左側の白BOXの表示)は EditMTUを再起動したり「通信種別」を変更したりすると 元の推奨値に戻ります。

  「MTU探索」で得られたMTU/RWIN値をコピーした場合、デフォルトではその値を編集(変更)出来ませんが、 [image] ボタンをクリックすると編集出来るようになります。(クリックで [image] / [image] に切り換わります)

  ※Win98/MEの場合には、各パラメータ(MaxDupAcks以外)を「文字列」として書き込みます。

   ボタンをクリックすると、このツールで変更されたレジストリ値を元に戻します。(※このツールで変更する前の状態への復元です)

  レジストリ変更を有効にするには、Windowsを再起動する必要があります。


Win2K/XP

 MTU/RWIN調整の操作方法

 「Win2K/XP」タブ

 Win2K/XP のパラメータ設定と確認ができます。

  ボタンをクリックすると、現在のレジストリの設定値が各パラメータの右側のグレー色のBOXに表示されます。※値が存在しない場合は「-」か空白を表示。(ＯＳのデフォルトでは、すべての値が未設定ですから「-」か空白が表示されます)

　　なお、Ver2.0以降では自動的にレジストリ値を取得するように変更しましたので、特に「値取得」ボタンをクリックする必要はありません。

  ボタンをクリックすると、レジストリ値を読み込んで、その値を左側の設定BOXの方にコピーします。 レジストリ値を繰り返し修正して書き込む場合に便利でしょう。 ※レジストリに未設定の値がある場合はコピー出来ません。

 Registry値を読み込むと、MTU値を書き込むレジストリKey(ネットワークカードのクラスID)を、レジストリから自動取得します。

 ※ 複数の NetworkCard が検出された場合は、使用している NetworkCard を選択して「 [image] LANCard固定」をチェックしてください。

 ※ 固定しない場合は、検出された全ての NetworkCard のキーに MTU値を書き込みます。

 「通信の種別」BOX右端の[▼]をクリックして自分に該当するものを選択すると、各パラメータの標準値がセットされますから、後は [image] ボタンをクリックするだけでレジストリに登録できます。

　　(※次回 EditMTUを起動した時は、終了時に選択されていた通信種別が表示されます)

 表示されているパラメータ値を自分なりに調整してからレジストリに書き込むことも出来ます。(※互いに連動する値については「オプション」タブを参照)

　　なお、この変更したパラメータ値(左側の白BOXの表示)は EditMTUを再起動したり「通信種別」を変更したりすると 元の推奨値に戻ります。

  「MTU探索」で得られたMTU/RWIN値をコピーした場合、デフォルトではその値を編集(変更)出来ませんが、 [image] ボタンをクリックすると編集出来るようになります。(クリックで [image] / [image] に切り換わります)

  「XP PPPoE の MTU値を登録する」 にチェックを付けると、WinXP の PPPoE接続の場合の MTU値を書き込みます。(XPの PPPoE デフォルトMTU値は 1480)  ※その右の [image] ボタンをクリックすると、MTU設定値を削除してデフォルトに戻します。

  「AFD\Parametersキーに値を設定」 にチェックを付けると、以下のキーにも値を書き込みます。

　　[HKLM\SYSTEM\CurrentControlSet\Services\AFD\Parameters]

　　　'LargeBufferSize' = dword:00004000

　　　'MediumBufferSize' = dword:00000bc0

　　　'SmallBufferSize' = dword:00000100

　　　'TransmitWorker' = dword:00000020

　　　'DefaultReceiveWindow' = dword:0000ffff

　　　'DefaultSendWindow' = dword:0000ffff

　　※その右にある [image] ボタンをクリックすると、各設定値を削除してデフォルトに戻します。

 ※Win2K/XPの場合は、各パラメータを DWORD値形式でレジストリに書き込みます。

  ボタンをクリックすると、このツールで変更されたレジストリ値を元に戻します。(※このツールで変更する前の状態への復元です)

 ※レジストリ変更を有効にするには、Windowsを再起動する必要があります。

 【 (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\CurrentControlSet\Services\Ndiswan\Parameters\Protocols\0]

  "ProtocolType"=dword:00000800

  "PPPProtocolType"=dword:00000021

  "ProtocolMTU"=dword:000005ae

※ (AdapterID)はレジストリから自動取得。

※ HKLM は HKEY_LOCAL_MACHINE の略。


オプション

 MTU/RWIN調整の操作方法

 「オプション」タブ

 いくつかのオプションを設定できます。

  「MaxMTU 値と DefaultMSS 値を連動して自動修正する」

 チェックがあれば、MaxMTU - 40 = DefaultMSS となるように相互の値を連動して変更します。

  「RWIN値に連動して Tcp1323Opts を自動修正する」

 チェックがあれば、RWIN 値が 65536 以上の場合 Tcp1323Opts を 3 に、65535 以下なら 0 にします。

  「RWIN値を MSS値(MTU-40)の 整数倍にする」

 チェックがあれば、RWIN値を MSS値の整数倍にします。

 チェックした場合は、RWIN値BOXの右側に表示されるBOXで 倍数を指定します。(この場合、RWIN値BOXへの直接入力は不可)

  「NetworkCard の Registryキーにも MTU 値を設定する」

 チェックがあれば、NetworkCard ごとの Registryキーに MTU、RWIN 値を登録します。

  「存在しない Registryキーは作成する」

 チェックがあれば、このツールでアクセスする Registryキーが存在しない場合は そのキーを作成します。

  「Registry書込み後に Regキャッシュを フラッシュする」

 チェックがあれば、Registry書込みの後にキャッシュメモリからレジストリファイルに強制的に保存します。

 チェックを消すと、ＯＳの正常終了時か再起動時に保存されます。

 チェックがあってもレジストリ変更を有効にするにはWindowsの再起動が必要です。

  「Pingコマンドを コンソールで実行する」

 Windows上での Ping実行が TimeOutになってしまう(DOS窓でのPingなら通る)場合、チェックを付けると コンソールで Pingを実行します。

  「この値からPingを実行する」

 チェックを付けると、Ping実行は常に直ぐ下のBoxで指定した値から開始します。

 「Web Accelerator」

 同一サイトから同時に読み込む数を設定します。高速回線であれば大きめに設定した方が読み込み時間の短縮になる可能性がありますが、大き過ぎるとサーバー負荷の増大で遅くなることも。

 「Reg.すべて削除」

 ボタンをクリックすると、TCP/IP関連のレジストリの設定を削除して ＯＳデフォルトの状態に戻すことが出来ます。

 ※このツールで変更されるレジストリ値をすべて削除します。(一部の値は削除でなく、デフォルト値に復帰)

 ※「Web Accelerator」については、起動時の4、2の値を書き込むことでデフォルトに戻せます。

 レジストリ変更を有効にするには、Windowsを再起動する必要があります。

  ボタンをクリックすると、レジストリ・スクリプト(.reg)ファイルを作成します。

  ・「Default_98ME_BACK.reg」… OSのデフォルトに戻す 98/ME用 regファイル

  ・「98ME_BACK.reg」　　　　　… ツール使用前に戻す 98/ME用 regファイル

  ・「Default_XP2K_BACK.reg」… OSのデフォルトに戻す 2K/XP用 regファイル

  ・「XP2K_BACK.reg」　　　　　… ツール使用前に戻す 2K/XP用 regファイル

  ※ 以上の四つは Ver4版(AnsiString) の regファイルです。

  ・「Reg5_Default_XP2K_BACK.reg」… OSのデフォルトに戻す 2K/XP用 regファイル

  ・「Reg5_XP2K_BACK.reg」　　　　　… ツール使用前に戻す 2K/XP用 regファイル

  ※ 以上の二つは Ver5.00版(Unicode) の regファイルです。

  ※ Win2K/XPは Ver4版にも対応していますが、一応Ver5.00版も作成します。


MTU 探索

 MTU/RWIN調整の操作方法

 「MTU 探索」タブ

 PING コマンドの実行により MTU値を調べ、その結果から RWIN値も計算します。

 「速度の種別」を選択し、「Host名」BOXに適当なサイトのホスト名か IPアドレスを入力(または選択)してから「Ping」ボタンをクリックすると探索を開始します。(※「速度の種別」は Ping実行後に選択(変更)しても構いません)

 「Host名」BOXには URLを入力(コピー＆貼り付け)しても構いません。 URLを入力した場合は自動的にホスト名に直しますが、すべてのサイトでPingが通るとは限りません。

 自分で入力したホスト名は、存在すればリストに追加されて保存されます。 リストの項目を削除したい場合は、その項目を選択して「End」キー(または「Ctrl」+「Delete」)を押すと削除出来ます。

 ボタンをクリックするとPING実行を開始します。 をクリックすると中止します。

 「DataSize」BOXの値を 1 づつ減らしながら、パケットが分割されないサイズまで Ping コマンドを実行します。

 「DataSize」BOXの初期値は 1472 になっていますが、予想される値より少し大き目に調整してから「Ping」ボタンをクリックすると良いでしょう。

 「Reply...」という応答(設定した回数)が返った時に「MTU」BOXに表示された値が 通常最適と言われている MTU値です。

 ※ 送信データには 28バイトのヘッダーが付加されるので、DataSize+28 が MTU値となります。

 探索結果の RTTの平均値(Average)から RWIN値も計算して表示します。

　　・RTT値はネットの状況変化で常に変動しますから、正確な RWIN値を計算するには Ping送出回数(デフォルトは10回)を多めにした方が良いです。

　　・Ping送出回数は「DataSize」BOX のすぐ右隣にある [image] BOXで指定します。

　　・RTT値はサイトごとに異なりますから、RWIN値は通常よく使用するサイトに合わせておくと良いでしょう。

　　・Ping実行後に「速度の種別」を変更した場合は、それに応じてRWIN値も変わります。

 RWIN値は (Average)×(帯域幅)÷8 で計算します。

　　・ [image] 「整数倍に」をチェックすると RWIN値を MSS値の整数倍に調整します。

　　・ [image] 「1.5倍する」をチェックすると 1.5を掛けた結果を表示します。(パケット再送信が起きることを考慮した場合)

　　・ [image] 「平均する」をチェックすると (MTU+40)/2 のDataSizeで Pingを指定回数実行し、その RTT(Average)値から RWIN値を計算します。

 ボタンをクリックすると、探索したMTU値とRWIN値を設定BOXにコピーします。

 ボタンをクリックすると目的のホストまでの経路を表示します。 をクリックすると中止します。


自動設定

 MTU/RWIN調整の操作方法

 「自動設定」タブ

 PING コマンドの実行結果から通信パラメータを自動設定します。

 これは 初心者向けのものです。通常は「MTU探索」の方を利用してください。

「速度の種別」を選択し、「サイト」BOXで合わせるサイトを選択(または入力)してから [image] ボタンをクリックすると、まずPingコマンドが実行されます。そして、その実行結果を元に各パラメータをレジストリに書き込みます。

 ここで書き込まれたレジストリ値は「Win98/Me」タブか「Win2K/XP」タブで確認出来ます。そこで [image] ボタンを押すと、レジストリを このツール使用前の状態に戻せます。

  「Registry書き込みの前に確認する」にチェックがあると、レジストリ変更前に確認のダイアログを表示します。そこで書き込みを中止することも出来ます。

  「このタブを起動時に表示する」にチェックがあると、この「自動設定」タブを常に起動時に表示します。

  「MTU探索の Hostリストに同期」にチェックがあれば「MTU探索」タブの Hostリストが起動時にサイト(Host)BOXにコピーされます。また自分で入力も出来ます。

  ※この設定の変更は アプリを再起動しないと有効になりません。

　なお、サイト(Host)BOXに URLを入力(コピー＆貼り付け)した場合は、自動的にホスト名に変換します。ただし、すべてのサイトでPingが通るとは限りません。

 自分で入力したサイト(Host)名は、存在すればリストに追加されて保存されます。リストの項目を削除したい場合は、その項目を選択して【End】キー(または【Ctrl】+【Delete】)を押すと削除出来ます。

 ※自動設定では、NetworkCard(LAN Card)が複数検出された場合 Win2K/XPのMTU値を変更しません。


連絡先など

 最後に

 ソフトの種別

 この EditMTU は フリーソフトです。

 免責、配布条件

 このアプリを使用したことによるいかなる結果についても免責とさせていただきます。

 配布などは自由ですが、出来れば事前／事後にご連絡ください。

 このアプリの著作権はＨＥＮにあります。

 連絡先

 もしバグなどがありましたら以下にご連絡ください。 可能な限り対処します。

 メールの宛先  signhen@yahoo.co.jp      ＨＥＮ