オプションの NDIS LWF は、ネットワークの可用性に 90 秒の遅延を引き起こす可能性があります
この記事では、オプションの NDIS ライトウェイト フィルター (LWF) が、ネットワークの可用性に 90 秒の遅延を引き起こす可能性があることを紹介します。
元の製品バージョン: Windows
元の KB 番号: 2019184
概要
オプションの NDIS ライトウェイト フィルター (LWF) ドライバーがインストールされていて、ドライバーが起動されていない場合、ネットワークは最大 90 秒間使用できません。
詳細
NDIS ライトウェイト フィルター ドライバーは、Windows でネットワーク パケットを監視およびフィルター処理するためのいくつかのドライバー モデルの 1 つです。 LWF は、NDIS 6 仕様 (Vista 以降) の新機能です。
NDIS LWF には、必須のフィルター ドライバーまたはオプションのフィルター ドライバーのいずれかを指定できます。 フィルター実行の種類は、 を使用して FilterRunType
ドライバーの INF で指定されます。 の FilterRunType
1 は必須フィルターですが、FilterRunType 2 は省略可能なフィルターです。
HKR, Ndi,FilterRunType, 0x00010001, 0x00000001 ; MANDATORY filter
または
HKR, Ndi,FilterRunType, 0x00010001, 0x00000002 ; OPTIONAL filter
LWF ドライバーがインストールされていても起動されていない場合、アンロードされたフィルター ドライバーが省略可能なフィルターである場合、ネットワーク スタックは最大 90 秒間使用できなくなります。 不足しているフィルター ドライバーが必須の場合、スタックは使用できなくなります。 このタイムアウト期間は、フィルターに読み込む機会を与えます。 スタックを起動し、一時停止してから、オプション フィルターが最終的に読み込まれたときに再起動すると、ネットワークの可用性を監視している上位レイヤー コンポーネントに他の副作用が発生する可能性があります。
通常、フィルター ドライバーは、LWF の INF で 1 (SERVICE_SYSTEM_START
) として指定StartType
することで、SERVICE_SYSTEM_STARTとしてすぐに開始されます。
StartType = 1 ;SERVICE_SYSTEM_START
ただし、一部のフィルターは、StartType を 3 (SERVICE_DEMAND_START
) として指定することによって、後SERVICE_DEMAND_START
で開始されます。
StartType = 3 ;SERVICE_DEMAND_START
DEMAND START を使用する LWF は、通常、セッション 制御マネージャー (SCM) API を使用してドライバーを起動するサービスまたはアプリケーションから、他のメカニズムによってできるだけ早く開始する必要があります。 たとえば、ネイティブ WiFi (NWIFI.SYS) LWF はこれを行います。 これは、サービス wlansvc によって開始されます。 そのため、 ですが、ユーザーは SERVICE_DEMAND_START
ネットワークの可用性に遅延が発生しません。
ドライバーが起動しない場合、または起動が遅い場合、NDIS は、ネットワーク アダプターを使用可能にする前に、登録 (NdisFRegisterFilterDriver
) がスタックに接続されるまで待機します。最大 90 秒のタイムアウト期間(オプション) であれば、スタックは起動されません。
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示