Introducción a NDIS 6.85
En este tema se presenta la especificación de interfaz de controlador de red (NDIS) 6.85 y se describen sus principales adiciones de diseño. NDIS 6.85 se incluye en Windows 10, versión 21H2 y Windows Server 2022 y versiones posteriores.
NDIS 6.85 es una actualización de la versión secundaria de NDIS 6.84. Para obtener más información sobre cómo migrar controladores NDIS 6.x a NDIS 6.85, consulte Migración de controladores NDIS 6.x a NDIS 6.85.
Actualizaciones de características
Modo de sondeo NDIS
NDIS 6.85 presenta el modo de sondeo NDIS, un modelo de ejecución de sondeo controlado por el sistema operativo que controla la ruta de datos de la interfaz de red. Anteriormente, los controladores NDIS normalmente dependían de llamadas a procedimiento diferido (DPC) para implementar su modelo de ejecución. El modo de sondeo NDIS mueve la complejidad de las decisiones de programación fuera de los controladores NIC y a NDIS. Para obtener más información, vea Modo de sondeo de NDIS.
Virtualización de red mediante encapsulación de enrutamiento genérico (NVGRE) con descarga de segmentación UDP (USO)
NDIS 6.85 presenta la compatibilidad con NVGRE en la descarga de segmentación UDP (USO). Los controladores de miniporte, protocolo y filtro de NDIS, así como las NIC que realizan USO, deben admitir encapsulaciones NVGRE y VXLAN.
Implementación de un controlador NDIS 6.85
Un controlador NDIS 6.85 debe cumplir los requisitos definidos en Implementación de un controlador NDIS 6.30.
Además, un controlador NDIS 6.85 debe cumplir los siguientes requisitos:
Un controlador NDIS 6.85 debe notificar la versión NDIS correcta cuando se registra con NDIS.
Debe actualizar el número de versión principal y secundaria de NDIS en la estructura NDIS_Xxx_DRIVER_CHARACTERISTICS para admitir NDIS 6.85. El miembro MajorNdisVersion debe contener 6 y el miembro MinorNdisVersion debe contener 85. Este requisito se aplica a los controladores de minipuerto, protocolo y filtro. También debe actualizar la información de versión del compilador (consulte Compilación de un controlador NDIS 6.85).
Los controladores de minipuerto deben establecer el miembro Header de NDIS_MINIPORT_DRIVER_CHARACTERISTICS: Establezca Revision en NDIS_MINIPORT_DRIVER_CHARACTERISTICS_REVISION_3 y Size en NDIS_SIZEOF_MINIPORT_DRIVER_CHARACTERISTICS_REVISION_3.
Los controladores de filtro deben establecer el miembro Header de NDIS_FILTER_DRIVER_CHARACTERISTICS: Establezca Revision en NDIS_FILTER_CHARACTERISTICS_REVISION_3 y Size en NDIS_SIZEOF_FILTER_DRIVER_CHARACTERISTICS_REVISION_3.
Los controladores de protocolo deben establecer el miembro Header de NDIS_PROTOCOL_DRIVER_CHARACTERISTICS: Establezca Revision en NDIS_PROTOCOL_CHARACTERISTICS_REVISION_2 y Size en NDIS_SIZEOF_PROTOCOL _DRIVER_CHARACTERISTICS_REVISION_2.
- Los controladores de minipuerto de NDIS 6.85 para Windows 10, versión 21H2 y Windows Server 2022 y posteriores deben usar las versiones NDIS 6.85 de estructuras de datos.
Compilación de un controlador NDIS 6.85
WDK para Windows 10, versión 21H2 admite el control de versiones de encabezado. El control de versiones de encabezado garantiza que los controladores NDIS 6.85 usen las estructuras de datos NDIS 6.85 adecuadas en tiempo de compilación.
Agregue la siguiente configuración del compilador al proyecto de Visual Studio para el controlador:
- Para un controlador de minipuerto, agregue
NDIS685_MINIPORT=1
. - Para un controlador de protocolo o filtro, agregue
NDIS685=1
.
Para obtener información sobre cómo compilar un controlador con la versión Windows 10, versión 21H2 del WDK, vea Building a Driver.