Visão geral da virtualização de rede usando o descarregamento de tarefa NVGRE (encapsulamento de roteamento genérico)
Formato de pacote de encapsulamento NVGRE
Nesse caso, um driver de protocolo ou filtro gerará os pacotes (não LSO), incluindo o encapsulamento GRE, e enviará os pacotes na transmissão. No lado de recebimento, esses pacotes (não RSS, VMQ) são passados para o driver de protocolo sem nenhuma modificação. Observe que o recurso de descarregamento de tarefas NVGRE não especifica o descarregamento das operações de encapsulamento e descapsulação.
Enviar e receber descarregamentos
No caminho de envio, os seguintes descarregamentos de tarefa precisam levar em conta o encapsulamento:
- Computação de soma de verificação de conteúdo IPv4 e TCP ou UDP
- Descarregamento de Envio Grande versão 1 (LSO_v1) e Descarregamento de Envio Grande versão 2 (LSO_v2)
- Descarregamento de segmentação UDP (USO)
Para descarregamentos do lado do envio, o miniporto deve executar operações correspondentes no cabeçalho IP do túnel (externo), no cabeçalho IP de transporte (interno) e no cabeçalho TCP.
No caminho de recebimento, os seguintes descarregamentos de tarefa precisam levar em conta o encapsulamento:
- Validação de soma de verificação do conteúdo IPv4 e TCP ou UDP
- RSS (dimensionamento lateral de recebimento)
- VMQ
Para descarregamentos do lado do recebimento, a NIC deve analisar os cabeçalhos do protocolo de encapsulamento. Por exemplo, para encapsulamento GRE, a NIC deve analisar o cabeçalho GRE e executar descarregamentos de tarefa nos cabeçalhos IP de transporte (interno) e/ou túnel (externo).