NDIS 驱动程序堆栈
下图显示了网络驱动程序接口规范 6.0 驱动程序堆栈中逻辑元素的基本配置。 堆栈具有未指定数量的筛选器模块。 箭头表示堆栈元素之间的信息流。
如上图所示,可以通过微型端口适配器堆叠任意数量的筛选器模块。 这些模块可以是不同筛选器驱动程序的实例,也可以是同一筛选器驱动程序的多个实例。 如果微型端口驱动程序管理多个微型端口适配器,则每个微型端口适配器上可以存在单独的驱动程序堆栈。
协议驱动程序与微型端口适配器绑定。 因此,驱动程序堆栈中的基础筛选器模块对协议驱动程序是透明的。 若要获取有关基础筛选器模块的信息,协议驱动程序可以枚举驱动程序堆栈中的筛选器模块。
如果多个协议驱动程序绑定到微型端口适配器,则两个协议驱动程序的筛选器模块都是相同的。 根据绑定,NDIS 会将请求路由到正确的协议驱动程序。
带有中间驱动程序的 NDIS 6.0 堆栈
下图显示了具有中间驱动程序的 NDIS 6.0 驱动程序堆栈。
如果在驱动程序堆栈中包含 NDIS 中间驱动程序,则堆栈实质上是两个堆栈:一个堆栈高于另一个堆栈。
中间驱动程序的虚拟微型端口为上层堆栈提供微型端口适配器,而中间驱动程序的协议边缘为下层堆栈提供协议绑定。
虚拟微型端口与任何其他微型端口适配器具有相同的状态。 有关微型端口适配器状态的详细信息,请参阅 微型端口驱动程序的适配器状态。
中间驱动程序的协议边缘应实现与协议驱动程序相同的绑定状态。 有关绑定状态的详细信息,请参阅协议驱动程序 绑定状态。