Поделиться через


структура NDIS_OFFLOAD_ENCAPSULATION (ndis/encapsulationconfig.h)

Структура NDIS_OFFLOAD_ENCAPSULATION задает параметры инкапсуляции при использовании с OID OID_OFFLOAD_ENCAPSULATION .

Синтаксис

typedef struct _NDIS_OFFLOAD_ENCAPSULATION {
  NDIS_OBJECT_HEADER Header;
  struct {
    ULONG Enabled;
    ULONG EncapsulationType;
    ULONG HeaderSize;
  } IPv4;
  struct {
    ULONG Enabled;
    ULONG EncapsulationType;
    ULONG HeaderSize;
  } IPv6;
} NDIS_OFFLOAD_ENCAPSULATION, *PNDIS_OFFLOAD_ENCAPSULATION;

Члены

Header

Структура NDIS_OBJECT_HEADER для структуры NDIS_OFFLOAD_ENCAPSULATION. Задайте для элемента Type структуры, указанной в заголовке , значение NDIS_OBJECT_TYPE_OFFLOAD_ENCAPSULATION, для элемента Revision — значение NDIS_OFFLOAD_ENCAPSULATION_ REVISION _1, а для элемента Size — значение NDIS_SIZEOF_OFFLOAD_ENCAPSULATION_REVISION_1.

IPv4

Структура в NDIS_OFFLOAD_ENCAPSULATION, указывающая инкапсуляцию IPv4 и содержащая следующие элементы:

IPv4.Enabled

Значение ULONG, которое включает инкапсуляцию IPv4. Драйвер протокола устанавливает значение Включено , чтобы NDIS_OFFLOAD_SET_ON, если он включает разгрузку IPv4 с большой отправкой версии 1 (LSOV1), разгрузку большой отправки версии 2 (LSOV2) или разгрузку контрольной суммы. Если драйвер протокола деактивирует все разгрузки, для параметра Enabled устанавливается значение NDIS_OFFLOAD_SET_OFF. В противном случае драйвер протокола устанавливает для параметра Enabled значение NDIS_OFFLOAD_SET_NO_CHANGE.

IPv4.EncapsulationType

Тип инкапсуляции IPv4. Если для элемента Enabled не задано значение NDIS_OFFLOAD_SET_ON, этот элемент равен нулю. Если для элемента Enabled задано значение NDIS_OFFLOAD_SET_ON, драйвер протокола должен присвоить encapsulationType одно из следующих значений:

Значение Значение
NDIS_ENCAPSULATION_IEEE_802_3
Указывает инкапсуляцию IEEE 802.3. Если указано это значение, драйвер мини-порта должен также использовать NDIS_ENCAPSULATION_IEEE_802_3_P_AND_Q или NDIS_ENCAPSULATION_IEEE_802_3_P_AND_Q_IN_OOB инкапсуляции, если это применимо. Дополнительные сведения см. в документации по NDIS_OFFLOAD .
NDIS_ENCAPSULATION_IEEE_LLC_SNAP_ROUTED
Указывает инкапсуляцию управления логическими ссылками (LLC) для маршрутизируемых протоколов, как описано в RFC 1483. Этот флаг также используется для указания инкапсуляции Ethernet LLC/SNAP.

IPv4.HeaderSize

Длина заголовка Ethernet, используемого в пакетах IPv4. Если для элемента Enabled не задано значение NDIS_OFFLOAD_SET_ON, этот элемент равен нулю. Если для элемента Enabled задано значение NDIS_OFFLOAD_SET_ON, драйвер протокола должен задать для headerSize размер заголовка Ethernet, который он использует.

IPv6

Структура в NDIS_OFFLOAD_ENCAPSULATION, указывающая инкапсуляцию IPv6 и содержащая следующие элементы:

IPv6.Enabled

Значение ULONG, которое включает инкапсуляцию IPv6. Драйвер протокола задает значение Enabled для NDIS_OFFLOAD_SET_ON, если он включает разгрузки IPv6 LSOV1, LSOV2 или контрольной суммы. Если драйвер протокола деактивирует все разгрузки, для параметра Enabled устанавливается значение NDIS_OFFLOAD_SET_OFF. В противном случае драйвер протокола устанавливает для параметра Enabled значение NDIS_OFFLOAD_SET_NO_CHANGE.

IPv6.EncapsulationType

Тип инкапсуляции IPv6. Если для элемента Enabled не задано значение NDIS_OFFLOAD_SET_ON, Значение EncapsulationType равно нулю. Если для элемента Enabled задано значение NDIS_OFFLOAD_SET_ON, драйвер протокола должен присвоить encapsulationType одно из следующих значений:

Значение Значение
NDIS_ENCAPSULATION_IEEE_802_3
Указывает инкапсуляцию IEEE 802.3. Если указано это значение, драйвер мини-порта должен также использовать NDIS_ENCAPSULATION_IEEE_802_3_P_AND_Q или NDIS_ENCAPSULATION_IEEE_802_3_P_AND_Q_IN_OOB инкапсуляции, если это применимо. Дополнительные сведения см. в документации по NDIS_OFFLOAD .
NDIS_ENCAPSULATION_IEEE_LLC_SNAP_ROUTED
Указывает инкапсуляцию LLC для маршрутизируемых протоколов, как описано в RFC 1483. Этот флаг также используется для указания инкапсуляции Ethernet LLC/SNAP.

IPv6.HeaderSize

Длина заголовка Ethernet, используемого в пакетах IPv6. Если для элемента Enabled не задано значение NDIS_OFFLOAD_SET_ON, этот элемент равен нулю. Если для элемента Enabled задано значение NDIS_OFFLOAD_SET_ON, драйвер протокола должен задать для headerSize размер заголовка Ethernet, который он использует.

Комментарии

Структура NDIS_OFFLOAD_ENCAPSULATION задает запрошенные параметры инкапсуляции, которые адаптер мини-порта должен использовать для служб разгрузки задач.

В наборе OID_OFFLOAD_ENCAPSULATION драйвер протокола указывает структуру NDIS_OFFLOAD_ENCAPSULATION в элементе InformationBufferструктуры NDIS_OID_REQUEST .

Требования

Требование Значение
Минимальная версия клиента Поддерживается в NDIS 6.0 и более поздних версиях.
Верхняя часть ndis/encapsulationconfig.h (включая ndis.h)

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

NDIS_OBJECT_HEADER

NDIS_OID_REQUEST

OID_OFFLOAD_ENCAPSULATION