NDIS_TCP_LARGE_SEND_OFFLOAD_NET_BUFFER_LIST_INFO Struktur (ndis/nbllso.h)
Die NDIS_TCP_LARGE_SEND_OFFLOAD_NET_BUFFER_LIST_INFO-Struktur gibt Informationen an, die beim Auslagern von LSO-Tasks (Large Send Offload) aus dem TCP/IP-Transport an einen Miniportadapter verwendet werden. Die NDIS_TCP_LARGE_SEND_OFFLOAD_NET_BUFFER_LIST_INFO-Struktur ist Teil der NET_BUFFER_LIST Informationen.
Syntax
typedef struct _NDIS_TCP_LARGE_SEND_OFFLOAD_NET_BUFFER_LIST_INFO {
union {
struct {
ULONG Unused : 30;
ULONG Type : 1;
ULONG Reserved2 : 1;
} Transmit;
struct {
ULONG MSS : 20;
ULONG TcpHeaderOffset : 10;
ULONG Type : 1;
ULONG Reserved2 : 1;
} LsoV1Transmit;
struct {
ULONG TcpPayload : 30;
ULONG Type : 1;
ULONG Reserved2 : 1;
} LsoV1TransmitComplete;
struct {
ULONG MSS : 20;
ULONG TcpHeaderOffset : 10;
ULONG Type : 1;
ULONG IPVersion : 1;
} LsoV2Transmit;
struct {
ULONG Reserved : 30;
ULONG Type : 1;
ULONG Reserved2 : 1;
} LsoV2TransmitComplete;
PVOID Value;
};
} NDIS_TCP_LARGE_SEND_OFFLOAD_NET_BUFFER_LIST_INFO, *PNDIS_TCP_LARGE_SEND_OFFLOAD_NET_BUFFER_LIST_INFO;
Member
Transmit
Eine Struktur in NDIS_TCP_LARGE_SEND_OFFLOAD_NET_BUFFER_LIST_INFO, die Übertragungsinformationen angibt und die die folgenden Elemente enthält:
Transmit.Unused
Ein ULONG-Wert, der nicht genutzten Speicherplatz angibt, der für NDIS reserviert ist.
Transmit.Type
Der Auslagerungstyp, den der Miniporttreiber ausführen soll. Protokolltreiber legen dieses Element auf NDIS_TCP_LARGE_SEND_OFFLOAD_V1_TYPE fest, um LSOV1-Vorgänge (Large Send Offload Version 1) anzugeben, oder NDIS_TCP_LARGE_SEND_OFFLOAD_V2_TYPE, um LSOV2-Vorgänge (Large Send Offload Version 2) anzugeben.
Transmit.Reserved2
Reserviert für NDIS.
LsoV1Transmit
Eine Struktur in NDIS_TCP_LARGE_SEND_OFFLOAD_NET_BUFFER_LIST_INFO, die LSO-Übertragungsinformationen angibt und die die folgenden Elemente enthält:
LsoV1Transmit.MSS
Die maximale Segmentgröße (MSS) in Bytes für jedes Paket nach der Segmentierung. Der TCP/IP-Transport schreibt diesen Wert, bevor ein großes TCP-Paket zur Segmentierung an einen Miniporttreiber übergeben wird. Die Größe der TCP-Nutzlast in jedem übertragenen Segment darf diesen Wert nicht überschreiten.
LsoV1Transmit.TcpHeaderOffset
Der Offset des TCP-Headers vom Anfang des Pakets für TCP-Pakete in Bytes. Miniporttreiber können tcpHeaderOffset verwenden, um den Speicherort des TCP-Headers zu bestimmen, sodass sie IP-Header nicht analysieren müssen.
LsoV1Transmit.Type
Der Auslagerungstyp, den der Miniporttreiber ausführen soll. Protokolltreiber legen dieses Element auf NDIS_TCP_LARGE_SEND_OFFLOAD_V1_TYPE fest, um LSOV1-Vorgänge anzugeben oder LSOV2-Vorgänge anzugeben NDIS_TCP_LARGE_SEND_OFFLOAD_V2_TYPE.
LsoV1Transmit.Reserved2
Reserviert für NDIS.
LsoV1TransmitComplete
Eine Struktur in NDIS_TCP_LARGE_SEND_OFFLOAD_NET_BUFFER_LIST_INFO, die das LSO angibt, um vollständige Informationen zu übertragen und die die folgenden Elemente enthält:
LsoV1TransmitComplete.TcpPayload
Die Gesamtanzahl der TCP-Nutzlastbytes in einer Gruppe von Paketen, die eine Netzwerkschnittstelle (NIC) durch Segmentieren eines großen Pakets erstellt Karte. Ein Miniporttreiber schreibt die TCP-Nutzlastgröße vor abschluss des Sendens eines LSO-Pakets.
LsoV1TransmitComplete.Type
Der Vom Miniporttreiber ausgeführte Auslagerungstyp. Die Miniporttreiber lassen diesen Wert unverändert, als der überlastende Treiber das Paket zur Übertragung übermittelt hat.
LsoV1TransmitComplete.Reserved2
Reserviert für NDIS.
LsoV2Transmit
Eine Struktur in NDIS_TCP_LARGE_SEND_OFFLOAD_NET_BUFFER_LIST_INFO, die LSOV2-Übertragungsinformationen angibt und die die folgenden Elemente enthält:
LsoV2Transmit.MSS
Der MSS in Bytes für jedes TCP-Segment. Der TCP/IP-Transport schreibt diesen Wert, bevor ein großes TCP-Paket zur Segmentierung an einen Miniporttreiber übergeben wird.
LsoV2Transmit.TcpHeaderOffset
Der Offset des TCP-Headers vom Anfang des Pakets für TCP-Pakete in Bytes. Miniporttreiber können tcpHeaderOffset verwenden, um den Speicherort des TCP-Headers zu bestimmen, sodass sie IP-Header nicht analysieren müssen.
LsoV2Transmit.Type
Der Auslagerungstyp, den der Miniporttreiber ausführen soll. Protokolltreiber legen dieses Element auf NDIS_TCP_LARGE_SEND_OFFLOAD_V1_TYPE fest, um LSOV1-Vorgänge anzugeben oder LSOV2-Vorgänge anzugeben NDIS_TCP_LARGE_SEND_OFFLOAD_V2_TYPE.
LsoV2Transmit.IPVersion
Die IP-Version des Pakets. Für IPv4-Pakete ist IPVersion auf NDIS_TCP_LARGE_SEND_OFFLOAD_IPv4 festgelegt. Für IPv6-Pakete ist IPVersion auf NDIS_TCP_LARGE_SEND_OFFLOAD_IPv6 festgelegt.
LsoV2TransmitComplete
Eine Struktur in NDIS_TCP_LARGE_SEND_OFFLOAD_NET_BUFFER_LIST_INFO, die LSOV2 angibt, vollständige Informationen zu übertragen und die die folgenden Elemente enthält:
LsoV2TransmitComplete.Reserved
Im Allgemeinen ist dieser Member für NDIS reserviert. Wenn jedoch ein Sendevorgang abgeschlossen ist, muss der Miniporttreiber diesen Member auf 0 festlegen.
LsoV2TransmitComplete.Type
Der Vom Miniporttreiber ausgeführte Auslagerungstyp. Der Miniporttreiber lässt diesen Wert unverändert, als der überlastende Treiber das Paket zur Übertragung übermittelt hat.
Wenn beispielsweise ein Sendevorgang abgeschlossen ist, legt der Miniporttreiber diesen Member auf NDIS_TCP_LARGE_SEND_OFFLOAD_V2_TYPE fest.
LsoV2TransmitComplete.Reserved2
Reserviert für NDIS.
Value
Eine PVOID-Version der LSO-Informationen. Verwenden Sie dieses Element, um auf die Rohinformationen anstelle der spezifischen Felder zuzugreifen.
Hinweise
Die NDIS_TCP_LARGE_SEND_OFFLOAD_NET_BUFFER_LIST_INFO-Struktur gibt Informationen für LSOV1- und LSOV2-Vorgänge an. Die NDIS_TCP_LARGE_SEND_OFFLOAD_NET_BUFFER_LIST_INFO-Struktur ist Teil der Informationen, die in einer NET_BUFFER_LIST-Struktur enthalten sind.
Um die LSOV1- oder LSOV2-Informationen festzulegen und abzurufen, verwenden Sie den TcpLargeSendNetBufferListInfo-Index mit dem NET_BUFFER_LIST_INFO Makro. NET_BUFFER_LIST_INFO gibt einen ULONG-Wert (keinen Zeiger auf einen ULONG-Wert) zurück.
Der TCP/IP-Transport aktualisiert die MSS - und TcpHeaderOffset-Member der NDIS_TCP_LARGE_SEND_OFFLOAD_NET_BUFFER_LIST_INFO-Struktur , bevor ein großes Paket an einen Miniporttreiber gesendet wird.
Für LSOV1 schreiben Miniporttreiber die TCP-Nutzlastgröße im TcpPayload-Member , bevor ein Sendevorgang für ein segmentiertes Paket abgeschlossen wird.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Unterstützt in NDIS 6.0 und höher. |
Kopfzeile | ndis/nbllso.h (include ndis.h) |
Weitere Informationen
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für