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


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

Структура NDIS_TCP_LARGE_SEND_OFFLOAD_V2 предоставляет большие сведения о разгрузке отправки версии 2 (LSOV2) в структуре NDIS_OFFLOAD .

Синтаксис

typedef struct _NDIS_TCP_LARGE_SEND_OFFLOAD_V2 {
  struct {
    ULONG Encapsulation;
    ULONG MaxOffLoadSize;
    ULONG MinSegmentCount;
  } IPv4;
  struct {
    ULONG Encapsulation;
    ULONG MaxOffLoadSize;
    ULONG MinSegmentCount;
    ULONG IpExtensionHeadersSupported : 2;
    ULONG TcpOptionsSupported : 2;
  } IPv6;
} NDIS_TCP_LARGE_SEND_OFFLOAD_V2, *PNDIS_TCP_LARGE_SEND_OFFLOAD_V2;

Члены

IPv4

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

IPv4.Encapsulation

Параметры инкапсуляции для IPv4. Дополнительные сведения об этом члене см. в следующем разделе Примечания.

IPv4.MaxOffLoadSize

Максимальное количество байт данных пользователя, которые транспорт может передать драйверу мини-порта в одном пакете. Транспорт не передает пакет драйверу мини-порта, который содержит больше байтов пользовательских данных, чем указано в MaxOffLoadSize . Если такой пакет должен быть передан, транспорт сам сегментирует пакет на пакеты меньшего размера.

IPv4.MinSegmentCount

Минимальное количество сегментов, на которое должен быть разделен большой TCP-пакет, прежде чем транспорт сможет перегрузить его на оборудование для сегментации. Транспорт не разгружает большой пакет драйверу мини-порта для сегментации, если драйвер мини-порта не может создать по крайней мере столько сегментов, сколько minSegmentCount указывает из пакета. Если большой tcp-пакет не соответствует требованию к минимальному сегменту, транспорт TCP/IP сам сегментирует пакет на пакеты меньшего размера.

IPv6

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

IPv6.Encapsulation

Параметры инкапсуляции для IPv6. Дополнительные сведения об этом члене см. в следующем разделе Примечания.

IPv6.MaxOffLoadSize

Максимальное количество байт данных пользователя, которые транспорт может передать драйверу мини-порта в одном пакете. Транспорт не передает пакет драйверу мини-порта, который содержит больше байтов пользовательских данных, чем указано в MaxOffLoadSize . Если такой пакет должен быть передан, транспорт сам сегментирует пакет на пакеты меньшего размера.

IPv6.MinSegmentCount

Минимальное количество сегментов, на которое должен быть разделен большой TCP-пакет, прежде чем транспорт сможет перегрузить его на сетевой адаптер для сегментации. Транспорт не разгружает большой пакет драйверу мини-порта для сегментации, если драйвер мини-порта не может создать по крайней мере столько сегментов, сколько minSegmentCount указывает из пакета. Если большой tcp-пакет не соответствует требованию к минимальному сегменту, транспорт TCP/IP сам сегментирует пакет на пакеты меньшего размера.

IPv6.IpExtensionHeadersSupported

Значение ULONG, заданное драйвером мини-порта, чтобы указать, что адаптер мини-порта может сегментировать большой пакет TCP, IP-заголовок которого содержит заголовки расширения IPv6.

IPv6.TcpOptionsSupported

Значение ULONG, устанавливаемое драйвером мини-порта, чтобы указать, что драйвер минипорта может сегментировать большой TCP-пакет, tcp-заголовок которого содержит параметры TCP, или указывает, что эта возможность включена или отключена.

Комментарии

Структура NDIS_TCP_LARGE_SEND_OFFLOAD_V2 используется в элементе LsoV2структуры NDIS_OFFLOAD . Структура NDIS_TCP_LARGE_SEND_OFFLOAD_V2 определяет текущие или поддерживаемые службы, предоставляемые адаптером минипорта для сегментирования больших пакетов TCP на пакеты меньшего размера. NDIS также предоставляет большую разгрузку отправки версии 1 (LSOV1), которая является более ранней версией LSOV2. Дополнительные сведения о LSOV1 см. в разделе NDIS_TCP_LARGE_SEND_OFFLOAD_V1.

NDIS_OFFLOAD используется в NDIS_MINIPORT_ADAPTER_OFFLOAD_ATTRIBUTES структура , NDIS_BIND_PARAMETERS структура NDIS_FILTER_ATTACH_PARAMETERS структура, OID_TCP_OFFLOAD_CURRENT_CONFIG OID и NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG указание состояния.

Для OID_TCP_OFFLOAD_CURRENT_CONFIG структура NDIS_OFFLOAD определяет возможности разгрузки задач, поддерживаемые адаптером мини-порта. Если текущие возможности разгрузки изменяются, драйвер мини-порта сообщает о новых возможностях в NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG указание состояния.

Элементы инкапсуляцииNDIS_TCP_LARGE_SEND_OFFLOAD_V2 определяют параметры инкапсуляции LSOV2 для адаптера мини-порта.

В ответ на OID_TCP_OFFLOAD_CURRENT_CONFIG запросе NDIS предоставляет побитовое ИЛИ флагов инкапсуляции, которые указывают поддерживаемые параметры инкапсуляции в каждом из элементов инкапсуляции . Драйверы miniport должны обеспечивать инкапсуляцию Ethernet (NDIS_ENCAPSULATION_IEEE_802_3). Другие типы инкапсуляции являются необязательными.

Для NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG индикации состояния драйвер мини-порта предоставляет побитовое или флаги инкапсуляции, которые указывают на текущие возможности в каждом из элементов инкапсуляции .

Для элементов инкапсуляции определены следующие флаги:

NDIS_ENCAPSULATION_NOT_SUPPORTED
Указывает, что разгрузка инкапсуляции не поддерживается.

NDIS_ENCAPSULATION_NULL
Указывает инкапсуляцию NULL.

NDIS_ENCAPSULATION_IEEE_802_3
Указывает инкапсуляцию IEEE 802.3.

NDIS_ENCAPSULATION_IEEE_802_3_P_AND_Q
Указывает инкапсуляцию IEEE 802.3p и IEEE 802.3q.

NDIS_ENCAPSULATION_IEEE_802_3_P_AND_Q_IN_OOB
Указывает, что параметры инкапсуляции IEEE 802.3p и IEEE 802.3q указаны в элементе NetBufferListInfo каждой NET_BUFFER_LIST структуры.

NDIS_ENCAPSULATION_IEEE_LLC_SNAP_ROUTED
Указывает инкапсуляцию управления логическими ссылками (LLC) для маршрутизируемых протоколов, как описано в RFC 1483. Этот флаг также используется для указания инкапсуляции Ethernet LLC/SNAP.

Требования

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

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

NDIS_BIND_PARAMETERS

NDIS_FILTER_ATTACH_PARAMETERS

NDIS_MINIPORT_ADAPTER_OFFLOAD_ATTRIBUTES

NDIS_OFFLOAD

NDIS_OID_REQUEST

NDIS_TCP_LARGE_SEND_OFFLOAD_V1 NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG

NET_BUFFER_LIST

OID_TCP_OFFLOAD_CURRENT_CONFIG