NDIS_TCP_LARGE_SEND_OFFLOAD_V2 Struktur (ntddndis.h)
Die NDIS_TCP_LARGE_SEND_OFFLOAD_V2-Struktur enthält Informationen zu großen Sende offload Version 2 (LSOV2) in der NDIS_OFFLOAD Struktur.
Syntax
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;
Angehörige
IPv4
Eine Struktur innerhalb NDIS_TCP_LARGE_SEND_OFFLOAD_V2, die IPv4-Informationen angibt und die die folgenden Member enthält:
IPv4.Encapsulation
Kapselungseinstellungen für IPv4. Weitere Informationen zu diesem Mitglied finden Sie im folgenden Abschnitt "Hinweise".
IPv4.MaxOffLoadSize
Die maximalen Byte von Benutzerdaten, die der Transport an den Miniporttreiber in einem einzelnen Paket übergeben kann. Der Transport übergibt kein Paket an den Miniporttreiber, der 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 der Segmente, durch die ein großes TCP-Paket divisierbar sein muss, bevor der Transport sie zur Segmentierung in die Hardware entladen kann. Der Transport entlädt ein großes Paket nicht für die Segmentierung an den Miniporttreiber, 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.
IPv6
Eine Struktur innerhalb NDIS_TCP_LARGE_SEND_OFFLOAD_V2, die IPv6-Informationen angibt und die die folgenden Member enthält:
IPv6.Encapsulation
Kapselungseinstellungen für IPv6. Weitere Informationen zu diesem Mitglied finden Sie im folgenden Abschnitt "Hinweise".
IPv6.MaxOffLoadSize
Die maximalen Byte von Benutzerdaten, die der Transport an den Miniporttreiber in einem einzelnen Paket übergeben kann. Der Transport übergibt kein Paket an den Miniporttreiber, der mehr Benutzerdatenbytes enthält, als MaxOffLoadSize- angibt. Wenn ein solches Paket übertragen werden muss, segmentiert der Transport selbst das Paket in kleinere Pakete.
IPv6.MinSegmentCount
Die Mindestanzahl der Segmente, durch die ein großes TCP-Paket divisierbar sein muss, bevor der Transport sie für die Segmentierung in eine NIC entladen kann. Der Transport entlädt ein großes Paket nicht für die Segmentierung an den Miniporttreiber, 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.
IPv6.IpExtensionHeadersSupported
Ein ULONG-Wert, den ein Miniporttreiber festlegt, um anzugeben, dass der Miniportadapter ein großes TCP-Paket segmentieren kann, dessen IP-Header IPv6-Erweiterungsheader enthält.
IPv6.TcpOptionsSupported
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.
Bemerkungen
Die NDIS_TCP_LARGE_SEND_OFFLOAD_V2 Struktur wird im LsoV2 Member der NDIS_OFFLOAD-Struktur verwendet. Die NDIS_TCP_LARGE_SEND_OFFLOAD_V2-Struktur gibt aktuelle oder unterstützte Dienste an, die ein Miniportadapter zum Segmentieren großer TCP-Pakete in kleinere Pakete bereitstellt. NDIS bietet auch große Versand offload Version 1 (LSOV1), die eine frühere Version von LSOV2 ist. Weitere Informationen zu LSOV1 finden Sie unter NDIS_TCP_LARGE_SEND_OFFLOAD_V1.
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 die NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG Statusanzeige.
Für OID_TCP_OFFLOAD_CURRENT_CONFIGgibt die NDIS_OFFLOAD-Struktur die Aufgaben offload-Funktionen an, die ein Miniportadapter unterstützt. Wenn sich die aktuellen Offload-Funktionen ändern, meldet ein Miniporttreiber die neuen Funktionen in einem NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG Statusanzeige.
Die Kapselung Member von NDIS_TCP_LARGE_SEND_OFFLOAD_V2 definieren die LSOV2-Kapselungseinstellungen für den Miniportadapter.
Als Reaktion auf eine OID_TCP_OFFLOAD_CURRENT_CONFIG Abfrageanforderung stellt NDIS ein bitweises OR der Kapselungskennzeichnungen bereit, die die unterstützten Kapselungseinstellungen angeben, in jedem der Kapselung Member. Miniporttreiber müssen Ethernet-Kapselung (NDIS_ENCAPSULATION_IEEE_802_3) bereitstellen. Die anderen Kapselungstypen sind optional.
Für ein NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG Statusanzeige stellt der Miniporttreiber ein bitweises OR der Kapselungsflaggen bereit, die die aktuellen Funktionen angeben, in jedem der Kapselung Member.
Die folgenden Flags werden für die Kapselung Member definiert:
NDIS_ENCAPSULATION_NOT_SUPPORTED
Gibt an, dass kein Entkapselungs-Offload unterstützt wird.
NDIS_ENCAPSULATION_NULL
Gibt die NULL-Kapselung an.
NDIS_ENCAPSULATION_IEEE_802_3
Gibt IEEE 802.3-Kapselung an.
NDIS_ENCAPSULATION_IEEE_802_3_P_AND_Q
Gibt 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-Element jeder NET_BUFFER_LIST Struktur angegeben werden.
NDIS_ENCAPSULATION_IEEE_LLC_SNAP_ROUTED
Gibt die Kapselung für Routingprotokolle (Logical Link Control, LLC) an, wie in RFC 1483 beschrieben. Dieses Flag wird auch verwendet, um ethernet LLC/SNAP-Kapselung anzugeben.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Unterstützt in NDIS 6.0 und höher. |
Header- | ntddndis.h (include Ndis.h) |