2008年6月24日火曜日

MTU RWIN 調整しておくべきかも

うちのマンションもようやく光対応になって、ネット環境がYahooBBからフレッツ光プレミアムに変わった。
やっぱり光は快適~!
と思いきや、ためしにスピード計測サイトで測ってみたら、上り8Mbps・下り20Mbpsと意外に大したことない結果が出た。
これでもADSLのときに比べればずいぶん良くなったし、光といってもマンション内はVDSLだからこんなもんかなと納得してたけど、回線工事に来てくれたお兄さんがテストしてたときに「70メガですね~。OKです~。」なんて言っていたのを思い出して、あまりに開きが大きいので、ためしにMTU調整でもしてみよかななんて気になった。

私のPCはWindowsXPですので初期値はそれぞれ、MTUが1500、RWINが65535です。
これはLAN環境でデータをやりとりするような場合に有効な値で、ウェブページの閲覧などといった、不特定な外部ネットワークとの細かいやり取りが多くなるような状況には不向きな値。
スピード計測の結果が良くないのはこのせいだということは容易に想像できます。

MTU、RWINの設定は手動で設定するより専用ツールを使用したほうが楽。
今回は、EditMTUというフリーソフトを使わせてもらいました。

EditMTU
http://hp.vector.co.jp/authors/VA022090/editmtu/


EditMTUには自動設定モードがあるので、これを使うと手間要らず。
まず初めに、フレッツ光プレミアムの付属ツールでダウンロードスピードを計測します。
うちの場合は、75.83Mbps≒9.5MB/sという結果でした。(1MB/s = 8Mbps)

この値は、CTUとインターネットの出入口の役割を果たしているサーバーまでの間で通信をした場合の結果で、Fletsのプライベートネットワーク内で計測した場合の数値です。
つまり、割り当てられている回線がフルに機能した場合にどれだけの速度で通信が可能であるかを示しているもので、パソコンからウェブサイトを閲覧しているときのような状況での計測結果ではありません。
また、CTUへ接続されている端末(パソコン)へどれだけチューニングを施してもこれ以上の数値にはなりません。


次に、EditMtu.exeを起動して、「速度の種別」を計測結果(75.83Mbps)に近いところ(80Mbps)に合わせます。


『サイト(HOST)』は、利用しているプロバイダを選択。無ければ任意のホストで。
『設定開始』をクリックすると、最適な設定値を探してくれます。



Registryに書き込みます。良いですか?のダイアログが表示されたら『OK』をクリック。
Windowsを再起動すると、設定が反映されます。



うちの環境の場合、いろいろ試してみた結果、スピード計測サイトでの数値が一番高かったのは、以下のような内容で設定した場合でした。

------ BNRスピードテスト (ダウンロード速度) ------
測定サイト: http://www.musen-lan.com/speed/ Ver3.5001
測定日時: 2008/06/24 02:58:45
回線/ISP/地域:
--------------------------------------------------
1.NTTPC(WebARENA)1: 67317.655kbps(67.317Mbps) 8414.65kB/sec
2.NTTPC(WebARENA)2: 75367.611kbps(75.367Mbps) 9420.58kB/sec
推定転送速度: 75367.611kbps(75.367Mbps) 9420.58kB/sec

ちなみにスピード計測サイトの結果が良ければどのような場面でも高いパフォーマンス性を発揮するかというと必ずしもそうではないです。
通信ですから相手があってのこと。相手の環境が変われば最適値も変わります。
用途を限定しない(インターネット全般としている)設定は、最高値を探ること自体あまり意味の無いことと割り切って、適当なところでよしとしておいたほうが無難ですね。
それにしても、ちょっと調整するだけで3倍以上のパフォーマンス改善。というかデチューンを元に戻したというべきか、なにしろいままでこういうことには必要性を感じないでいたけれど、少しは気にかけていたほうがよいかも。



以下参考にMTU・RWINについて簡単な説明。

MTUというのは、ネットワークを流れるパケットサイズ(byte)の上限の設定値。
データは分割されたパケットの集合体としてネットワーク上を流れます。
直感的な捉え方としてはMTUの設定値を大きくすれば転送効率が良くなるわけですが、データの送受信には相手があるので、相手側で受信可能なパケットサイズを超えたときはエラー(パケットの破損)が生じてしまい、そのための処理を平行して行わなくてはならなくなるため、かえって効率が悪くなる場合があります。
他のコンピューターとデータをやり取りする場合は、参加しているネットワーク環境で送受信可能なパケットサイズの上限ぎりぎりの値を設定しておくことで、ロスのない通信を行うことができます。
一般家庭でのインターネット環境の場合、参加しているネットワークは、回線事業者が提供しているネットワークということになります。うちの場合はNTTのフレッツ光プレミアムです。
フレッツ光プレミアムのMTU値(NTT西日本)は1438byteなので、適正値は、この値以下でエラーを回避して通信可能な最大値となります。
実際の通信では、自分のネットワークの外にあるサーバーなどとデータのやりとりを行うので、設定する値は1438ではなく、それ以下です。

WindowsのMTU調整方法は、日経トレンディネットで公開されている記事を参考にするとわかりやすいと思います。

通信効率を上げたいときは、RWINの設定値も大きく影響します。
RWINとは、データの送受信を行う際の受信確認の頻度を決める値です。
どれだけ(何byte)データを受け取ったら受信確認を送るかという設定で、この頻度を少なくする(値を大きくする)ことで転送効率を上げることができます。
この値は、MTUの設定値と通信の用途、ハードウェアの性能などによって適正値が変化します。
特定の相手との間でサイズの大きいデータを送受信することを主な用途として、ハードの性能も充分に整っている場合は、この値を大きくすることで効率的な通信を行うことができます。
ウェブページの閲覧やホームページ製作のファイル転送など、細かなデータをやり取りすることが多い場合は、あまり大きな値を設定しているとかえって効率が悪くなる場合があります。
RWINの適正値は、MTUの値から40を引いた数の10~200倍です。40は、実データ以外の送受信に必要な余地分です。
MTU値として設定された大きさのパケットを10~200個受け取ったときに受信確認を送出するよう設定するというような考え方で良いと思います。
RWINの適正値は、いろいろな数値で実際に通信を行い、そのときにかかった通信時間の結果が速かったものです。

0 件のコメント: