有关使用通用路由封装 (NVGRE) 任务卸载实现网络虚拟化的概述

NVGRE 封装数据包格式

在这种情况下,协议或筛选器驱动程序将生成 (非 LSO) 数据包(包括 GRE 封装),并在网络上发送数据包。 在接收端,这些 (非 RSS、VMQ) 数据包将传递到协议驱动程序,而无需进行任何修改。 请注意,NVGRE 任务卸载功能未指定封装和解包操作的卸载。

发送和接收卸载

在发送路径上,以下任务卸载需要考虑封装:

  • IPv4 和 TCP 或 UDP 有效负载的校验和计算
  • 大型发送卸载版本 1 (LSO_v1) 和大型发送卸载版本 2 (LSO_v2)
  • UDP 分段卸载 (USO)

对于发送端卸载,微型端口必须在隧道 (外部) IP 标头、传输 (内部) IP 标头和 TCP 标头上执行相应的操作。

在接收路径上,以下任务卸载需要考虑封装:

  • IPv4 和 TCP 或 UDP 有效负载的校验和验证
  • 接收端缩放 (RSS)
  • VMQ

对于接收端卸载,NIC 必须分析封装协议标头。 例如,对于 GRE 封装,NIC 必须分析 GRE 标头,并在传输 (内部) 和/或隧道 (外部) IP 标头上执行任务卸载。