Compartilhar via


Consultar e alterar o estado de descarregamento da tarefa NVGRE

Esta seção descreve como consultar ou alterar a virtualização de rede atual usando o estado de descarregamento de tarefa de encapsulamento de roteamento genérico (NVGRE) de um driver de miniporta compatível com NVGRE. O descarregamento de tarefas NVGRE pode ser habilitado por padrão, mas não deve estar operacionalmente ativo por padrão. Uma NIC não deve começar a executar descarregamentos de tarefa em pacotes encapsulados até que esse recurso seja habilitado explicitamente por um driver de filtro ou protocolo NDIS.

Consultando o estado de descarregamento da tarefa NVGRE

Para consultar o estado atual de descarregamento de tarefa NVGRE de um driver de miniporta, um protocolo NDIS ou driver de filtro usa a solicitação de OID OID_TCP_OFFLOAD_CURRENT_CONFIG. Isso retornará uma estrutura NDIS_OFFLOAD cujo membro EncapsulatedPacketTaskOffloadGre é uma estrutura NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD que contém NDIS_OFFLOAD_SUPPORTED se esses descarregamentos estiverem habilitados no momento para pacotes encapsulados por GRE e NDIS_OFFLOAD_NOT_SUPPORTED caso contrário. A NDIS processa esse OID e não o transmite para a miniporta.

Observação Para determinar se um driver de miniporta dá suporte ao descarregamento de tarefa NVGRE, use a solicitação OID OID_TCP_OFFLOAD_HARDWARE_CAPABILITIES conforme descrito em Determinar os recursos de descarregamento de tarefa NVGRE de um adaptador de rede.

Alterando o estado do descarregamento de tarefa NVGRE

Um driver de filtro ou protocolo NDIS pode habilitar ou desabilitar o descarregamento de tarefa NVGRE emitindo a solicitação OID OID_TCP_OFFLOAD_PARAMETERS. Essa OID usa uma estrutura NDIS_OFFLOAD_PARAMETERS . Nessa estrutura, o membro EncapsulatedPacketTaskOffload pode ter os seguintes valores:

Prazo Descrição

NDIS_OFFLOAD_SET_NO_CHANGE

O estado de descarregamento da tarefa NVGRE permanece inalterado.

NDIS_OFFLOAD_SET_ON

Especifique este parâmetro para habilitar o offload de tarefas NVGRE.

NDIS_OFFLOAD_SET_OFF

Especifique esse sinalizador para desabilitar o descarregamento de tarefa NVGRE.

Depois que o driver de miniporta processar a solicitação de OID OID_TCP_OFFLOAD_PARAMETERS, o driver de miniporta deverá emitir uma indicação de status de NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG com o estado de descarregamento atualizado.

Quando um driver de miniporta recebe uma solicitação OID OID_TCP_OFFLOAD_PARAMETERS em que o sinalizador NDIS_OFFLOAD_SET_OFF é especificado, o driver deve indicar quaisquer pacotes encapsulados existentes que estejam parcialmente processados para descarregamento de tarefas antes de concluir a solicitação OID.

Os descarregamentos de tarefa base para pacotes normais são ativados por OIDs existentes, como OID_OFFLOAD_ENCAPSULATION e OID_RECEIVE_FILTER_ALLOCATE_QUEUE. A configuração de membro EncapsulatedPacketTaskOffload complementa esses OIDs e instrui a NIC a também fazer esses descarregamentos para pacotes encapsulados.