WFP アーキテクチャ
次の図は、Windows フィルタリング プラットフォーム (WFP) の基本的なアーキテクチャを示しています。
フィルター エンジン
フィルター エンジンには、ユーザー モード コンポーネントとカーネル モード コンポーネントが含まれており、ネットワーク データに対するすべてのフィルター処理操作が一緒に実行されます。 フィルター エンジンには、オペレーティング システムのネットワーク スタック レイヤーに疎にマップされる複数のフィルターレイヤーが含まれています。 フィルター エンジン レイヤーは、それらを所有するフィルター エンジン コンポーネントに基づいて、ユーザー モード レイヤーとカーネル モード レイヤーに分割されます。
ユーザー モード コンポーネントは、RPC と IPsec のフィルター処理を実行します。 フィルター エンジンには、約 10 個のユーザー モード フィルター レイヤーが含まれています。
カーネル モード コンポーネントは、TC/IP スタックのネットワーク層とトランスポート 層でフィルター処理を実行します。 このコンポーネントは、 分類 プロセス中に使用可能な吹き出し関数も呼び出します。 フィルター エンジンには、約 50 個のカーネル モード フィルター レイヤーが含まれています。
各フィルター エンジン レイヤーの説明については、「レイヤー識別子のフィルター処理」を参照してください。
ベース フィルター エンジン
基本フィルター エンジン (BFE) は、WFP コンポーネントを調整するユーザー モード サービス (bfe.dllsvchost.exe プロセスで実行されます)。 BFE によって実行される主なタスクは、システムからのフィルターの追加と削除、フィルター構成の格納、WFP 構成セキュリティの適用です。 アプリケーションは 、WFP 管理機能を介して BFE と通信します。
引き出し線のドライバー
吹き出しドライバーは、1 つ以上のカーネル モード フィルター レイヤーでフィルター エンジンにカスタム引き出し関数を追加することで、追加のフィルター機能を提供します。 吹き出しでは、詳細な検査とパケット、およびストリームの変更がサポートされます。 吹き出しドライバーが引き出し関数をフィルター エンジンに追加した後、特定のドライバーの引き出し関数を指定するフィルターをフィルター処理プロセスに追加できます。 このようなフィルターは、ユーザー モード管理アプリケーションまたは吹き出しドライバー自体によって追加できます。 Windows 開発キットで提供されるカーネル モード インターフェイスは、ユーザー モード API の代わりにではなく、必要な場所でのみ使用する必要があります。
Note
引き出しドライバーの詳細については、 Windows 開発キットの「Windows フィルター プラットフォーム」セクションを参照してください。
Windows フィルター プラットフォームには、IPsec のセキュリティで保護されたデータ通信、ステートフル フィルター設定、ステルス モード フィルター処理に使用できる組み込みの引き出し関数が多数含まれています。 組み込みの吹き出し関数の完全な一覧については、「組み込みの吹き出し識別子」を参照してください。
関連トピック