Determinar las funcionalidades de descarga de la tarea NVGRE de un adaptador de red
Un controlador de miniporte que admite virtualización de red mediante la descarga de tareas de encapsulación de enrutamiento genérico (NVGRE) notifica esta funcionalidad mediante la estructura NDIS_OFFLOAD que su función MiniportInitializeEx pasa a NdisMSetMiniportAttributes.
Funcionalidad de descarga de tareas NVGRE de informes
En la estructura NDIS_OFFLOAD , el miembro Header debe establecerse de la siguiente manera:
- El miembro Revision debe establecerse en NDIS_OFFLOAD_REVISION_3.
- El miembro Size debe establecerse en NDIS_SIZEOF_NDIS_OFFLOAD_REVISION_3.
Para notificar su compatibilidad con la descarga de tareas NVGRE, un controlador de miniporte establece los siguientes miembros en la estructura NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD , que se almacena en el miembro EncapsulatedPacketTaskOffloadGre de la estructura NDIS_OFFLOAD que la función MiniportInitializeEx del controlador de miniporte pasa a NdisMSetMiniportAttributes:
Establezca el miembro MaxHeaderSizeSupported en el tamaño máximo del encabezado desde el principio del paquete hasta el principio de la carga INTERNA de TCP o UDP (el último byte del encabezado interno TCP o UDP) que la NIC debe admitir para todas estas descargas de tareas. Se espera que el controlador de protocolo no descargue el procesamiento de un paquete cuyos encabezados de encapsulación combinados superen este tamaño.
Nota 256 bytes es un buen valor predeterminado que debe abarcar todos los casos posibles.
Establezca los demás miembros para indicar qué tipos de tareas descargan el controlador de miniporte admite para paquetes encapsulados. Para obtener una lista de las marcas que se pueden establecer para estos miembros, vea la sección Comentarios de NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD.
Consulta de la funcionalidad de descarga de tareas NVGRE
Para determinar si un controlador de miniporte admite la descarga de tareas NVGRE, los controladores de protocolo y filtro pueden emitir la solicitud OID de OID_TCP_OFFLOAD_HARDWARE_CAPABILITIES , que devuelve la estructura de NDIS_OFFLOAD .
Nota Para determinar si la funcionalidad NVGRE del controlador miniporte está habilitada actualmente, use la solicitud de OID de OID_TCP_OFFLOAD_CURRENT_CONFIG tal y como se describe en Consulta y cambio del estado de descarga de la tarea NVGRE.
Nota Para habilitar o deshabilitar la funcionalidad NVGRE del controlador de miniporte, use la solicitud de OID de OID_TCP_OFFLOAD_PARAMETERS como se describe en Consulta y cambio del estado de descarga de la tarea NVGRE.