ITよろづや

ITの参考になる情報を備忘録代わりに残していきます

Windows7通信を不安定にさせるSNP(Scalable Networking Pack)を無効にする

Windows7でデフォルトで有効になっているSNP(Scalable Networking Pack)ですが、この起動が悪さをして、通信が不安定になったり、アプリが予期しない動作をする事があります。

その為、SNPは無効にしておくほうが、今のところ無難です。

 

ちなみに、SNPとは?
~~~
 SNP とは TCP に関するネットワーク処理を、ネットワーク インターフェース カード (NIC) および NIC のミニポート ドライバーを利用して最適化するためのテクノロジー及びその実装の総称です。
~~~

SNPについては、マイクロソフト Network & AD サポートチーム公式ブログでも、使用を推奨していません。

 

■予期せぬ挙動が!? 新機能 Scalable Networking Pack をご存知ですか?

 

ここで書かれていますが、物理PCであれ、仮想PCであれ、無効にしておいたほうがいいと思います。

 

では、この機能が有効になっているかどうかの確認方法ですが、

 

≪SNPの設定確認≫
C:\>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
** 上の autotuninglevel 設定は、少なくとも 1 つのプロファイルのローカル/ポリシー
構成を
上書きするウィンドウ スケーリング ヒューリスティックの結果です。

 

~~~~

 

基本的には、上記の①~③をすべて無効にします。

 

TCP Chimney Offload の無効化
>netsh int tcp set global chimney=disabled

 

②Receive-Side Scaling(RSS)の無効化
>netsh int tcp set global rss=disabled

 

③Network Direct Memory Access(NetDMA)の無効化
>netsh int tcp set global netdma=disabled

 

トラブルを避けるためにも、クライアント展開用に設定すべき項目は事前に知っておく必要がありますね!追記ですが、こちらWindows10、Windows Server 2016でも同様に無効にしたほうがよさそうです。
 
Windows10、Windows Server 2016はデフォルト値が違うので、別の記事で同様に説明します。