开始编写 Hyper-V 可扩展交换机扩展
Hyper-V 可扩展交换机扩展是 NDIS 筛选器或 Windows 筛选平台 (WFP) 筛选器,在 Hyper-V 可扩展交换机中运行 (也称为“Hyper-V 虚拟交换机”) 。
有 3 类扩展:捕获、筛选和转发。 所有这些都可以作为 NDIS 筛选器驱动程序实现。 筛选扩展也可以作为 WFP 筛选器驱动程序实现。
有关驱动程序开发人员的体系结构概述,请参阅 Hyper-V 可扩展交换机概述。
若要创建 Hyper-V 可扩展交换机扩展,请执行以下步骤:
了解扩展体系结构和编程模型。
- 阅读基于 NDIS 的扩展的联机文档,从 Hyper-V 可扩展交换机开始。 捕获、筛选和转发扩展使用标准 NDIS 筛选 API。 NDIS 接口已得到增强,可提供虚拟交换机和虚拟机的配置、通知和标识。 Hyper-V 可扩展交换机函数Hyper-V 可扩展交换机枚举Hyper-V 可扩展交换机结构和联合Hyper-V 可扩展交换机 OIDHyper-V 可扩展交换机状态指示Hyper-V 可扩展交换机宏
- 阅读基于 WFP 的扩展的在线文档,从 使用虚拟交换机筛选开始。
- 观看以下有关扩展的说明视频。
- 有几个 PowerShell 命令可用于管理扩展。 这些内容在 管理已安装的 Hyper-V 可扩展交换机扩展中列出。
设置开发环境。
- 安装Microsoft Visual Studio Professional。
- 下载并安装 Windows 驱动程序工具包。
研究示例扩展。
- 下载 NDIS 转发扩展示例。
- 下载 WFP 示例。 这是一个正常运行的原型,其中包含 vSwitch 功能。
编写扩展。
- 可以使用其中一个示例作为起点、移植现有筛选器代码或从头开始编写扩展。
- 如果要开发 NDIS 扩展,可以通过一些更改来使用标准 NDIS INF,如 Hyper-V 可扩展交换机扩展的 INF 要求中所述。
生成扩展并对其进行单元测试。
- 必须使用 Visual Studio 生成扩展。
- 通过使用 Visual Studio 编译和运行示例扩展,可以熟悉扩展生成过程。
了解 Windows 认证 (徽标) 获取扩展签名的过程。
- 扩展必须通过 Windows 硬件实验室工具包 (HLK) 中的测试。
- 扩展的要求列在 Windows 硬件认证要求 - 筛选器驱动程序 的 Filter.Driver.vSwitchExtension.ExtensionRequirements 下。
设置 Windows 硬件实验室工具包环境。
运行扩展的 WHCK 测试:
- Filter.Driver.Fundamentals
- Filter.Driver.Security
- Filter.Driver.vSwitchExtension
最终扩展通过 WHCK 认证后,将其提交到 Microsoft。
- 必须将扩展作为具有特定格式的 MSI 安装包提交,以确保管理包(如 System Center Virtual Machine Manager (SCVMM) 2012)可以跟踪和部署它。 MSI 格式在 扩展驱动程序 MSI 打包要求中定义。
在 WindowsServerCatalog.com 上列出扩展。
- 在 WindowsServerCatalog.com 上列出扩展的简短说明。
- 即将提供有关在 WindowsServerCatalog.com 上列出认证扩展的信息。