Partilhar via


Determinando as funcionalidades de descarregamento de tarefa NVGRE de um adaptador de rede

Um driver de miniporto que dá suporte à Virtualização de Rede usando o Descarregamento de Tarefas NVGRE (Encapsulamento de Roteamento Genérico) relata essa funcionalidade por meio da estrutura NDIS_OFFLOAD que sua função MiniportInitializeEx passa para NdisMSetMiniportAttributes.

Capacidade de descarregamento de tarefa NVGRE de relatório

Na estrutura NDIS_OFFLOAD , o membro Header deve ser definido da seguinte maneira:

  • O membro Revision deve ser definido como NDIS_OFFLOAD_REVISION_3.
  • O membro Size deve ser definido como NDIS_SIZEOF_NDIS_OFFLOAD_REVISION_3.

Para relatar seu suporte para descarregamento de tarefas NVGRE, um driver de miniporto define os seguintes membros na estrutura NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD , que é armazenada no membro EncapsulatedPacketTaskOffloadGre da estrutura NDIS_OFFLOAD que a função MiniportInitializeEx do driver de miniport passa para NdisMSetMiniportAttributes:

  • Defina o membro MaxHeaderSizeSupported como o tamanho máximo do cabeçalho desde o início do pacote até o início do conteúdo TCP interno ou UDP (o último byte de cabeçalho interno TCP ou UDP) que a NIC deve dar suporte para todos esses descarregamentos de tarefa. Espera-se que o driver de protocolo não descarregue o processamento de um pacote cujos cabeçalhos de encapsulamento combinados excedam esse tamanho.

    Observação 256 bytes é um bom valor padrão que deve abranger todos os casos possíveis.

  • Defina os outros membros para indicar quais tipos de tarefa o driver de miniporto dá suporte para pacotes encapsulados. Para obter uma lista dos sinalizadores que podem ser definidos para esses membros, consulte a seção Comentários de NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD.

Consultando a funcionalidade de descarregamento de tarefas NVGRE

Para determinar se um driver de miniporto dá suporte a drivers de descarregamento, protocolo e filtro de tarefa NVGRE, é possível emitir a solicitação OID OID_TCP_OFFLOAD_HARDWARE_CAPABILITIES , que retorna a estrutura de NDIS_OFFLOAD .

Nota Para determinar se a funcionalidade NVGRE do driver de miniporto está habilitada no momento, use a solicitação OID OID_TCP_OFFLOAD_CURRENT_CONFIG conforme descrito em Consulta e alteração do estado de descarregamento de tarefas NVGRE.

Nota Para habilitar ou desabilitar a funcionalidade NVGRE do driver de miniporto, use o OID_TCP_OFFLOAD_PARAMETERS solicitação OID, conforme descrito em Consulta e alteração do estado de descarregamento da tarefa NVGRE.