NDIS_TCP_LARGE_SEND_OFFLOAD_V1-Struktur (ntddndis.h)

Die NDIS_TCP_LARGE_SEND_OFFLOAD_V1-Struktur stellt informationen zur großen Sendeauslagerung version 1 (LSOV1) in der NDIS_OFFLOAD-Struktur bereit.

Syntax

typedef struct _NDIS_TCP_LARGE_SEND_OFFLOAD_V1 {
  struct {
    ULONG Encapsulation;
    ULONG MaxOffLoadSize;
    ULONG MinSegmentCount;
    ULONG TcpOptions : 2;
    ULONG IpOptions : 2;
  } IPv4;
} NDIS_TCP_LARGE_SEND_OFFLOAD_V1, *PNDIS_TCP_LARGE_SEND_OFFLOAD_V1;

Member

IPv4

Eine Struktur in NDIS_TCP_LARGE_SEND_OFFLOAD_V1, die die folgenden Member enthält:

IPv4.Encapsulation

Kapselungseinstellungen für IPv4. Weitere Informationen zu diesem Member finden Sie im folgenden Abschnitt Hinweise.

IPv4.MaxOffLoadSize

Die maximalen Bytes an Benutzerdaten, die der Transport in einem einzelnen Paket an den Miniporttreiber übergeben kann. Der Transport übergibt kein Paket an den Miniporttreiber, das mehr Benutzerdatenbytes enthält, als MaxOffLoadSize angibt. Wenn ein solches Paket übertragen werden muss, segmentiert der Transport selbst das Paket in kleinere Pakete.

IPv4.MinSegmentCount

Die Mindestanzahl von Segmenten, durch die ein großes TCP-Paket teilbar sein muss, bevor der Transport es zur Segmentierung an die Hardware auslagern kann. Der Transport wird kein großes Paket zur Segmentierung an den Miniporttreiber auslagern, es sei denn, der Miniporttreiber kann mindestens so viele Segmente erstellen, wie MinSegmentCount aus dem Paket angibt. Wenn ein großes TCP-Paket die Mindestsegmentanforderung nicht erfüllt, segmentiert der TCP/IP-Transport selbst das Paket in kleinere Pakete.

IPv4.TcpOptions

Ein ULONG-Wert, den ein Miniporttreiber festlegt, um anzugeben, dass der Miniporttreiber ein großes TCP-Paket segmentieren kann, dessen TCP-Header TCP-Optionen enthält, oder um anzugeben, dass diese Funktion aktiviert oder deaktiviert ist. Der TCP/IP-Transport legt diesen Wert fest, um diese Funktion zu aktivieren oder zu deaktivieren.

IPv4.IpOptions

Ein ULONG-Wert, den ein Miniporttreiber festlegt, um anzugeben, dass ein Miniportadapter ein großes TCP-Paket segmentieren kann, dessen IP-Header IP-Optionen enthält, oder um anzugeben, dass diese Funktion aktiviert oder deaktiviert ist.

Hinweise

Die NDIS_TCP_LARGE_SEND_OFFLOAD_V1-Struktur wird im LsoV1-Element der NDIS_OFFLOAD-Struktur verwendet. NDIS_TCP_LARGE_SEND_OFFLOAD_V1 gibt aktuelle oder unterstützte Dienste an, die ein Miniportadapter für die Segmentierung großer TCP-Pakete in kleinere Pakete bereitstellt. NDIS bietet auch große Send-Offload-Version 2 (LSOV2), eine erweiterte Version von LSO. Weitere Informationen zu LSOV2 finden Sie unter NDIS_TCP_LARGE_SEND_OFFLOAD_V2.

NDIS_OFFLOAD wird in der NDIS_MINIPORT_ADAPTER_OFFLOAD_ATTRIBUTES Struktur , NDIS_BIND_PARAMETERS Struktur, NDIS_FILTER_ATTACH_PARAMETERS Struktur, OID_TCP_OFFLOAD_CURRENT_CONFIG OID und NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG status Indikation.

Für OID_TCP_OFFLOAD_CURRENT_CONFIG gibt die NDIS_OFFLOAD-Struktur die Aufgabenauslagerungsfunktionen an, die ein Miniportadapter unterstützt. Wenn sich die aktuellen Auslagerungsfunktionen ändern, meldet ein Miniporttreiber die neuen Funktionen in einem NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG status Indikation.

Das Kapselungselementvon NDIS_TCP_LARGE_SEND_OFFLOAD_V1 definiert die LSOV1-Kapselungsfunktionen oder -Einstellungen für den Miniportadapter.

Als Reaktion auf eine OID_TCP_OFFLOAD_CURRENT_CONFIG Abfrageanforderung stellt NDIS einen bitweisen OR der Encapsulationsflags bereit, die die unterstützten Kapselungseinstellungen im Encapsulationselement angeben. Miniporttreiber müssen Ethernet-Kapselung (NDIS_ENCAPSULATION_IEEE_802_3) bereitstellen. Die anderen Kapselungstypen sind optional.

Für einen NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG status Angabe stellt der Miniporttreiber ein bitweises OR der Kapselflags bereit, die die aktuellen Funktionen im Encapsulationselement angeben.

Die folgenden Flags werden für das Encapsulation-Element definiert:

NDIS_ENCAPSULATION_NONE oder NDIS_ENCAPSULATION_NOT_SUPPORTED
Gibt an, dass keine Kapselungsauslagerung unterstützt wird.

NDIS_ENCAPSULATION_NULL
Gibt die NULL-Kapselung an.

NDIS_ENCAPSULATION_IEEE_802_3
Gibt die IEEE 802.3-Kapselung an.

NDIS_ENCAPSULATION_IEEE_802_3_P_AND_Q
Gibt die IEEE 802.3p- und IEEE 802.3q-Kapselung an.

NDIS_ENCAPSULATION_IEEE_802_3_P_AND_Q_IN_OOB
Gibt an, dass ieee 802.3p- und IEEE 802.3q-Kapselungseinstellungen im NetBufferListInfo-Member jeder NET_BUFFER_LIST-Struktur angegeben werden.

NDIS_ENCAPSULATION_IEEE_LLC_SNAP_ROUTED
Gibt die LLC-Kapselung (Logical Link Control) für routingfähige Protokolle an, wie in RFC 1483 beschrieben. Dieses Flag wird auch verwendet, um die Ethernet LLC/SNAP-Kapselung anzugeben.

Die Werte in den TcpOptions- und IpOptions-Membern von NDIS_TCP_LARGE_SEND_OFFLOAD_V1 die Miniportadapterunterstützung im OID_TCP_OFFLOAD_CURRENT_CONFIG OID oder NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG status Indikation. Diese Member können einen der folgenden Werte aufweisen:

NDIS_OFFLOAD_NOT_SUPPORTED
Der Miniportadapter unterstützt nicht das Feature, das der Member angibt.

NDIS_OFFLOAD_SUPPORTED
Der Miniportadapter unterstützt das feature, das das Element angibt.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Unterstützt in NDIS 6.0 und höher.
Kopfzeile ntddndis.h (include Ndis.h)

Weitere Informationen

NDIS_BIND_PARAMETERS

NDIS_FILTER_ATTACH_PARAMETERS

NDIS_MINIPORT_ADAPTER_OFFLOAD_ATTRIBUTES

NDIS_OFFLOAD

NDIS_OID_REQUEST

NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG NDIS_TCP_LARGE_SEND_OFFLOAD_V2

NET_BUFFER_LIST

OID_TCP_OFFLOAD_CURRENT_CONFIG