Windows共有間で遅くなる理由
I.LanManager認証「NTLM v1,2」
WindowsXPとWindows7が混在っした環境では、ファイル共有サーバーなどのリソースにアクセスする際に、LanManager認証方式を利用している。この認証方式の設定がアクセス元とアクセス先で異なっていると、アクセスができなくなる。Windows 7とXPでこの初期設定が異なる結果として、XPで使っていたファイル共有サーバーなどにWindows 7からアクセスできないトラブルが起こる。
手っ取り早く言えば下記の通り。
・Windows 7のLanManager認証の初期設定は、「NTLM v2」
・WindowsXPのLanManager認証の初期設定は、「NTLM v1」
上記以外に、Windows7またはWindows8のプラットフォームでのネットワークでデータ転送速度が遅くなるトラブルは「SNP ※1」という機能が原因であることが多いとのこと。
SNPとは、ネットワーク処理をNICなどのハードウエアを使って効率化する機能であるが、実際にSNPが有効になっていると、速度が遅くなることがある。
現時点では、そもそもSNPの機能を最初からオフにしておいたほうがよいと思う。
「SNPの無効の仕方」
- 管理者権限でコマンドプロンプトを起動する。
- コマンドラインに次の3~5を入力する。
- netsh int tcp set global rss=disabled
- netsh int tcp set global chimney=disabled
- netsh int tcp set global netdma=disabled
「SNPの状態を確認する(解除できているか確認)」
- 管理者権限でコマンドプロンプトを起動する。
- コマンドラインに「netsh int tcp show global」を実行
- Receive-Side Scaling 状態:disabledになっていることを確認する。
- chimney オフロード状態:disabledになっていることを確認する。
- NetDMA状態:disabledになっていることを確認する。
このSNPは現在のところハードウェアとソフトウェアのチューニングがうまくいっていないらしく処理速度の足を引っ張っている原因にもなっているらしいので、一度試してみるといいかも。
※1.SNP
Scalable Networking Packの略。WindowsXPでは非搭載。 WindowsXP 64ビット版ではSP2で搭載されている。 またWindows VistaやWindows 7,Windows 8も搭載されているが、一部の機能が初期設定でオフになっている。
II.Internet Protocol Version 6
Internet Protocol Version 6とは、通称「IPv6」と呼ばれており、IPアドレスを決める規定のバージョンが6番目。 現在、使用しているIPv4はグローバルアドレスの割り当てに数の限りがあるため、現在IPv6へ流れが変わりつつある。 しかし、これはグローバルアドレスの話と、巨大LAN(社内ネットワーク)でないかぎり家庭の環境ではIPv4で処理はまかなえる。
現在のところIPv6とIPv4が混在する環境ではうまくいかないところもあるようで、IPv6を設定から外す事が多いようです。
特にWindows 7が備えたIPv6機能が、データ転送速度を低下させる原因になることもあるようです。
IPv6機能が有効になっていると、IPv6フォールバックなどによってアクセスに時間がかかるようになる。企業ネットワークをIPv6で構築していない限り、IPv6機能は不要である。 よって、家庭内で使用する場合端末10台そこそこであれば、従来のIPv4(例 192.168.*.*)を使用したほうがよい。
「実際に確認・変更する場合」
コントロールパネルにある[ネットワークとインターネット]の[ネットワークの状態とタスクの表示]をクリックした後、[アダプターの設定の変更]をクリックして表示される画面で確認できる。
ここでインターネットプロトコルバージョン6(TCP/IPv6)のチェックを外してOKをクリックするだけ。
これで、ネットワーク上の他のPCを検索したりする場合にも、表示されたりされなかったりするような不具合が解消される。