Windows筛选平台

Windows筛选平台（Windows Filtering Platform，缩写WFP；也译Windows过滤平台）是微软操作系统中的一套系统服务和应用程序接口，于2006年至2007年在Windows Vista中首次引入。它允许应用程序绑定到包处理环节，过滤协议栈的流水线。它提供整合通信等功能，管理员可以将其配置为在每个应用程序的基础上调用处理逻辑。微软预期WFP将被防火墙及其他封包处理或连接监控组件使用，如杀毒软件和家长控制软件。另外，WFP也被用于实现网络地址转换（NAT）和存储IPSec策略配置。

组件 
该筛选平台包含下列组件：
 ，它将網路封包的内部结构暴露为属性。不同层次的协议存在不同的垫片。WFP配有一整套垫片；用户可以使用API注册其他协议的垫片。内置的垫片包括：
 应用层执行（ALE）垫片
 传输层模块（TLM）垫片
 网络层模块（NLM）垫片
 遠程過程調用（RPC）运行时垫片
 互联网控制消息协议（ICMP）垫片
 流垫片
自Windows 8和Windows Server 2012开始，WFP允许在TCP/IP第二层进行过滤。
 筛选引擎，其跨越内核模式与用户模式，提供基本的筛选功能。它根据筛选规则匹配数据包中的数据（由垫片暴露），并阻止或允许数据包。可以根据需要用callout实施任何其他操作。筛选器在每个应用程序的基础上运作。为缓解筛选器之间的冲突，它们被赋予权重（优先级），并且被分组成具有权重的子层。筛选器和callout可以被与提供者关联，其可以赋予名称和描述，并在本质上是与特定应用程序或服务关联。
 基本筛选引擎，管理筛选引擎的模块。它接受筛选规则并施行应用程序的安全模型。它还维护WFP的统计信息和记录其状态。
 callout，一个由筛选驱动程序公开的回调函数。筛选驱动程序提供除默认阻止/允许之外的过滤功能。管理员在注册筛选器规则时指定一个callout函数。当筛选器匹配时，系统调用该callout，由它处理指定的操作。

诊断 
Windows 7中的netsh命令中新增了功能，可以对WFP的内部状态进行丰富的诊断。此功能对于调试和找出问题的根本原因（如丢包问题）非常有用。

参见

外部链接 
 Overview of the Windows Filtering Platform
 MS_KB 979223: A nonpaged pool memory leak occurs when you use a WFP callout driver 

Windows Server 2008
Windows Vista
Windows通信和服务