структура NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD (ntddndis.h)

Структура NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD содержит состояние поддержки разгрузки для виртуализации сети с помощью разгрузки задачи NVGRE(NVGRE-TO). Эта структура используется в элементе EncapsulatedPacketTaskOffloadGreструктуры NDIS_OFFLOAD .

Синтаксис

typedef struct _NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD {
  ULONG TransmitChecksumOffloadSupported : 4;
  ULONG ReceiveChecksumOffloadSupported : 4;
  ULONG LsoV2Supported : 4;
  ULONG RssSupported : 4;
  ULONG VmqSupported : 4;
  ULONG UsoSupported : 4;
  ULONG Reserved : 8;
  ULONG MaxHeaderSizeSupported;
} NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD, *PNDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD;

Члены

TransmitChecksumOffloadSupported

Параметры разгрузки задачи для контрольной суммы передачи.

ReceiveChecksumOffloadSupported

Параметры разгрузки задачи для получения контрольной суммы.

LsoV2Supported

Параметры разгрузки задачи для разгрузки большой отправки версии 2 (LSOv2).

RssSupported

Параметры разгрузки задач для масштабирования на стороне получения (RSS).

VmqSupported

Параметры разгрузки задач для очереди виртуальных машин (VMQ).

UsoSupported

Параметры разгрузки задач для разгрузки сегментации UDP (USO).

Reserved

Зарезервировано для системного использования.

MaxHeaderSizeSupported

Для этого элемента должен быть задан максимальный размер заголовка от начала пакета до начала внутренних полезных данных TCP или UDP (последний байт внутреннего заголовка TCP или UDP), который сетевой адаптер должен поддерживать для всех этих разгрузки задач. Ожидается, что драйвер протокола не разгрузит обработку пакета, совокупные заголовки инкапсуляции которого превышают этот размер.

Примечание. 256 байт — это хорошее значение по умолчанию, которое должно охватывать все возможные случаи.

Комментарии

В начальном объявлении возможности, а также в NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG и NDIS_STATUS_TASK_OFFLOAD_HARDWARE_CAPABILITIES обозначениях состояния члены TransmitChecksumOffloadSupported, ReceiveChecksumOffloadSupported, LsoV2Supported, RssSupported, VmqSupported и UsoSupported могут иметь побитовое значение ИЛИ следующих флагов:

Термин Описание
NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD_NOT_SUPPORTED Указывает, что адаптер мини-порта не поддерживает соответствующую функцию разгрузки задач, указанную элементом.
NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD_INNER_IPV4 Указывает, что адаптер мини-порта поддерживает соответствующую функцию разгрузки задач, которую член указывает, где внутренний IP-заголовок инкапсулированного пакета — IPv4.
NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD_OUTER_IPV4 Указывает, что адаптер мини-порта поддерживает соответствующую функцию разгрузки задач, которую член указывает, где внешний IP-заголовок инкапсулированного пакета — IPv4.
NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD_INNER_IPV6 Указывает, что адаптер мини-порта поддерживает соответствующую функцию разгрузки задач, которую член указывает, где внутренний IP-заголовок инкапсулированного пакета — IPv6.
NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD_OUTER_IPV6 Указывает, что адаптер мини-порта поддерживает соответствующую функцию разгрузки задач, которую член указывает, где внешний IP-заголовок инкапсулированного пакета — IPv6.

Например, если адаптер и драйвер мини-порта поддерживают только заголовок IPv6 в качестве внешнего IP-заголовка, но не как внутренний заголовок IP- адреса, они зададут для параметра TransmitChecksumOffloadSupported, ReceiveChecksumOffloadSupported, LsoV2Supported, RssSupported, VmqSupported и UsoSupported значение побитового ИЛИ NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD_INNER_IPV4, NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD_OUTER_IPV4 и NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD_OUTER_IPV6.

Что касается параметров IP и TCP, для инкапсулированных пакетов было сделано следующее предположение:

  • Если сетевая карта указывает поддержку IpOptions и TcpOptions в обычной разгрузке контрольной суммы и объявлении LSOv2, она должна поддерживать обработку вариантов для инкапсулированных пакетов, если поддерживается виртуализация сети с использованием разгрузки задачи универсальной маршрутизации (NVGRE). Это означает, что он будет поддерживать параметры внутреннего и внешнего IP-адреса и параметры TCP внутри инкапсулированных пакетов. Отдельных объявлений о возможностях для этих функций не существует только для разгрузки задач NVGRE.

Драйвер протокола может разгружать пакеты в смешанном режиме, что означает пакеты, в которых внутренняя и внешняя версии заголовков IP-адресов отличаются. Например, заголовок внешнего IP-адреса пакета может иметь значение IPv6, а заголовок внутреннего IP-адреса — как IPv4.

Требования

Требование Значение
Минимальная версия клиента Windows 8, поддерживается в NDIS 6.30 и более поздних версиях.
Минимальная версия сервера Windows Server 2012
Верхняя часть ntddndis.h (включая Ndis.h)

См. также раздел