2013年8月16日金曜日

Windows7 64bit ネットワークの高速化

Windows7 64bit版をインストールしたままの状態で使っていると、ネットワークが非常に遅いことがきがついてきます。
# 32bit版は、下記のような問題はないようです。
XPの経験から照らして、Ethernet関連のボード、チュプ類のドライバが古いか、
もしくは、デバイスのパラメータ設定がおかしい等を想定して、ドライバの更新や、
パラメータの設定変更を行ってみたのですが、殆ど、改善がされません。
途方に暮れて、ネット上に何か情報がないかと検索していたところ、
思いもしなかった情報にたどり着きました。
それは、Windows7から新たに導入された機能が悪さを働き、ネットワーク速度を
極めて悪化させるという情報がありました。
以下、IT Proから抜粋引用、詳細は、IT Proをご覧ください。
---------------------------------------------------------
標準では「SNP(Scalable Networking Pack)」と呼ばれるネットワークを
最適化する機能が有効化されている。
この「SNPが有効化」されている設定のままPCを動作させると、
ネットワーク処理が不安定になったり、ネットワーク処理とは関係ない
アプリケーションの処理に影響を与えたりする。
SNPは三つの機能からなる。「SNPが有効」とは三つのうち、少なくとも
一つが有効化していることを指す。
(1)TCP Chimney Offload
TCPのネットワーク制御をプロセッサからNICにオフロード
(負荷を軽減)する機能。
(2)Receive Side Scaling(RSS)
TCPの受信制御を複数のプロセッサ(コア)に分散化して効率化する機能。
(3)Network Direct Memory Access(NetDMA)
NICから直接メモリーにアクセスできるようにし、効率化する機能。
これらの機能を使うと、プロセッサの負荷を軽減し、ネットワークの
パフォーマンスはより最適化されるはずだが、実際には、
SNPを有効化すると、特定のネットワーク操作でパフォーマンスが
低下するといった不具合が発生したり、ネットワークパケットの
取りこぼしが発生し、正常に通信できないという問題も発生する。
そのほか、アプリケーションが正常に働かなくなることもある。
---------------------------------------------------------
というほどのダメダメプログラムなのだそうである。
実際、標準設定のまま使っていると、ブラウザの表示が非常に遅く、
また、大きなファイルヲダウンロードしようとすると、NWが非常に
遅いことが分かります。
これを改善するためには、上記の3つの機能を使わないように、
無効化設定をします。
先ず、コマンドプロンプトを開いて、現在の状態を確認すると...
------------------------------------------------------
>netsh int tcp show global
アクティブ状態を照会しています...
TCP グローバル パラメーター
----------------------------------------------
Receive-Side Scaling 状態 : enabled
Chimney オフロード状態 : automatic
NetDMA 状態 : enabled
Direct Cache Acess (DCA) : disabled
受信ウィンドウ自動チューニング レベル : normal
アドオン輻輳制御プロバイダー : none
ECN 機能 : disabled
RFC 1323 タイムスタンプ : disabled
------------------------------------------------------
となり、最初の3つの設定が、enabled,automatic,ebabled と
なっており、有効化されていることがわかります。
しかし、これを無効化する操作をすると
--------------------------------------------------------
>netsh int tcp set global chimney=disabled
設定の取得中に Show chimneyapplicationコマンドの実行に失敗しました。
設定の取得中に Show chimneyapplicationコマンドの実行に失敗しました。
IPv4 で Set global コマンドの実行に失敗しました 要求された操作には、権限の昇格が必要です。管理者として実行してください。
--------------------------------------------------------
というエラーがでるではありませんか。
確かに、ユーザは、Administratorではないのですが、管理者権限を与えている
のですが、Administratorでないと実行できないようです。
またまた次の問題が.....
win7の標準インストールをすると、SetUpの途中でユーザ設定するようになっており、
Administratorは表示されないようになっています。
そこで、まず、Administratorを表示させるように設定変更します。
コントロールパネル→管理ツール→右ペインから「コンピュータの管理」を
ダブルクリック→左ペインの「ローカルユーザとグループ」を開き、
「ユーザ」を選択→右ペインの「Administrator」をダブルクリックし、
「全般」タブにある「アカウントを無効にする」のチェックを外します。
この状態だと、Administratorのパスワードが設定されていない状態ですので、
直ちにパスワードを設定してください。
Administratorでログインし直して、
コマンドプロンプトから再度実行すると...
-------------------------------------------------------
>netsh int tcp set global chimney=disabled
OK
>netsh int tcp set global rss=disabled
OK
>netsh int tcp set global netdma=disabled
OK
-------------------------------------------------------
今度は、うまく設定できたようです。
これを一度、設定しておくと、システム側で記憶するようで、
リブートしても覚えています。
もっと、きちんとしたパラメータの設定場所が分かれば、
また、書きます。
これで、NWのもたつきもなく、すいすいネットサーフィンが
できるようになります...
......かと思いましたが、その後、やはり遅く感じるようになり、
ブラウザの設定を変更すると改善することがわかりました。
下記をご覧ください。

 

Blogger news

Pageviews past week

Blogroll

About