NDIS_TCP_IP_CHECKSUM_OFFLOAD-Struktur (ntddndis.h)

Die NDIS_TCP_IP_CHECKSUM_OFFLOAD-Struktur stellt Informationen zur Prüfsummentask-Auslagerung in der NDIS_OFFLOAD-Struktur bereit.

Syntax

typedef struct _NDIS_TCP_IP_CHECKSUM_OFFLOAD {
  struct {
    ULONG Encapsulation;
    ULONG IpOptionsSupported : 2;
    ULONG TcpOptionsSupported : 2;
    ULONG TcpChecksum : 2;
    ULONG UdpChecksum : 2;
    ULONG IpChecksum : 2;
  } IPv4Transmit;
  struct {
    ULONG Encapsulation;
    ULONG IpOptionsSupported : 2;
    ULONG TcpOptionsSupported : 2;
    ULONG TcpChecksum : 2;
    ULONG UdpChecksum : 2;
    ULONG IpChecksum : 2;
  } IPv4Receive;
  struct {
    ULONG Encapsulation;
    ULONG IpExtensionHeadersSupported : 2;
    ULONG TcpOptionsSupported : 2;
    ULONG TcpChecksum : 2;
    ULONG UdpChecksum : 2;
  } IPv6Transmit;
  struct {
    ULONG Encapsulation;
    ULONG IpExtensionHeadersSupported : 2;
    ULONG TcpOptionsSupported : 2;
    ULONG TcpChecksum : 2;
    ULONG UdpChecksum : 2;
  } IPv6Receive;
} NDIS_TCP_IP_CHECKSUM_OFFLOAD, *PNDIS_TCP_IP_CHECKSUM_OFFLOAD;

Member

IPv4Transmit

Eine Struktur innerhalb NDIS_TCP_IP_CHECKSUM_OFFLOAD, die IPv4-Übertragungsinformationen angibt und die die folgenden Member enthält:

IPv4Transmit.Encapsulation

Kapselungseinstellungen für die IPv4-Übertragung. Weitere Informationen zu diesem Member finden Sie im folgenden Abschnitt hinweise.

IPv4Transmit.IpOptionsSupported

Ein ULONG-Wert, den ein Miniporttreiber festlegt, um anzugeben, dass ein Miniportadapter eine IP-Prüfsumme für ein IPv4-Sendepaket berechnen kann, das IP-Optionen enthält, oder um anzugeben, dass diese Funktion aktiviert oder deaktiviert ist.

IPv4Transmit.TcpOptionsSupported

Ein ULONG-Wert, den ein Miniporttreiber festlegt, um anzugeben, dass ein Miniportadapter eine TCP-Prüfsumme für ein IPv4-Sendepaket berechnen kann, das TCP-Optionen enthält, oder um anzugeben, dass diese Funktion aktiviert oder deaktiviert ist.

IPv4Transmit.TcpChecksum

Ein ULONG-Wert, den ein Miniporttreiber festlegt, um anzugeben, dass ein Miniportadapter eine TCP-Prüfsumme für ein IPv4-Sendepaket berechnen kann. Der TCP/IP-Transport legt diesen Wert fest, um diese Funktion zu aktivieren oder anzugeben, dass diese Funktion aktiviert oder deaktiviert ist.

IPv4Transmit.UdpChecksum

Ein ULONG-Wert, den ein Miniporttreiber festlegt, um anzugeben, dass ein Miniportadapter eine UDP-Prüfsumme für ein IPv4-Sendepaket berechnen kann, oder um anzugeben, dass diese Funktion aktiviert oder deaktiviert ist.

IPv4Transmit.IpChecksum

Ein ULONG-Wert, den ein Miniporttreiber festlegt, um anzugeben, dass ein Miniportadapter eine IP-Prüfsumme für ein IPv4-Sendepaket berechnen kann, oder um anzugeben, dass diese Funktion aktiviert oder deaktiviert ist.

IPv4Receive

Eine Struktur innerhalb NDIS_TCP_IP_CHECKSUM_OFFLOAD, die IPv4-Empfangsinformationen angibt und die die folgenden Member enthält:

IPv4Receive.Encapsulation

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

IPv4Receive.IpOptionsSupported

Ein ULONG-Wert, den ein Miniporttreiber festlegt, um anzugeben, dass ein Miniportadapter eine IP-Prüfsumme für ein IPv4-Empfangspaket überprüfen kann, das IP-Optionen enthält, oder um anzugeben, dass diese Funktion aktiviert oder deaktiviert ist.

IPv4Receive.TcpOptionsSupported

Ein ULONG-Wert, den ein Miniporttreiber festlegt, um anzugeben, dass ein Miniportadapter eine TCP-Prüfsumme für ein IPv4-Empfangspaket berechnen kann, das TCP-Optionen enthält, oder um anzugeben, dass diese Funktion aktiviert oder deaktiviert ist.

IPv4Receive.TcpChecksum

Ein ULONG-Wert, den ein Miniporttreiber festlegt, um anzugeben, dass ein Miniportadapter die TCP-Prüfsumme für ein IPv4-Empfangspaket überprüfen kann oder um anzugeben, dass diese Funktion aktiviert oder deaktiviert ist.

IPv4Receive.UdpChecksum

Ein ULONG-Wert, den ein Miniporttreiber festlegt, um anzugeben, dass ein Miniportadapter die UDP-Prüfsumme eines IPv4-Empfangspakets überprüfen kann, oder um anzugeben, dass diese Funktion aktiviert oder deaktiviert ist.

IPv4Receive.IpChecksum

Ein ULONG-Wert, den ein Miniporttreiber festlegt, um anzugeben, dass ein Miniportadapter eine IP-Prüfsumme für ein IPv4-Empfangspaket überprüfen kann, oder um anzugeben, dass diese Funktion aktiviert oder deaktiviert ist.

IPv6Transmit

Eine Struktur innerhalb NDIS_TCP_IP_CHECKSUM_OFFLOAD, die IPv6-Übertragungsinformationen angibt und die die folgenden Member enthält:

IPv6Transmit.Encapsulation

Kapselungseinstellungen für die IPv6-Übertragung. Weitere Informationen zu diesem Member finden Sie im folgenden Abschnitt hinweise.

IPv6Transmit.IpExtensionHeadersSupported

Ein ULONG-Wert, den ein Miniporttreiber festlegt, um anzugeben, dass der Miniportadapter Prüfsummen für IPv6-Pakete berechnen kann, die Erweiterungsheader enthalten.

IPv6Transmit.TcpOptionsSupported

Ein ULONG-Wert, den ein Miniporttreiber festlegt, um anzugeben, dass ein Miniportadapter eine TCP-Prüfsumme für ein IPv6-Sendepaket berechnen kann, das TCP-Optionen enthält, oder um anzugeben, dass diese Funktion aktiviert oder deaktiviert ist.

IPv6Transmit.TcpChecksum

Ein ULONG-Wert, den ein Miniporttreiber festlegt, um anzugeben, dass ein Miniportadapter eine TCP-Prüfsumme für ein IPv6-Sendepaket berechnen kann, oder um anzugeben, dass diese Funktion aktiviert oder deaktiviert ist.

IPv6Transmit.UdpChecksum

Ein ULONG-Wert, den ein Miniporttreiber festlegt, um anzugeben, dass ein Miniportadapter eine UDP-Prüfsumme für ein IPv6-Sendepaket berechnen kann, oder um anzugeben, dass diese Funktion aktiviert oder deaktiviert ist.

IPv6Receive

Eine Struktur innerhalb NDIS_TCP_IP_CHECKSUM_OFFLOAD, die IPv6-Empfangsinformationen angibt und die die folgenden Member enthält:

IPv6Receive.Encapsulation

Kapselungseinstellungen für IPv6-Empfang. Weitere Informationen zu diesem Member finden Sie im folgenden Abschnitt hinweise.

IPv6Receive.IpExtensionHeadersSupported

Ein ULONG-Wert, den ein Miniporttreiber festlegt, um anzugeben, dass der Miniportadapter Prüfsummen für IPv6-Pakete überprüfen kann, die Erweiterungsheader enthalten.

IPv6Receive.TcpOptionsSupported

Ein ULONG-Wert, den ein Miniporttreiber festlegt, um anzugeben, dass ein Miniportadapter eine Prüfsumme für ein IPv6-Empfangspaket berechnen kann, dessen TCP-Header TCP-Optionen enthält, oder um anzugeben, dass diese Funktion aktiviert oder deaktiviert ist.

IPv6Receive.TcpChecksum

Ein ULONG-Wert, den ein Miniporttreiber festlegt, um anzugeben, dass ein Miniportadapter die TCP-Prüfsumme eines IPv6-Empfangspakets überprüfen kann, oder um anzugeben, dass diese Funktion aktiviert oder deaktiviert ist.

IPv6Receive.UdpChecksum

Ein ULONG-Wert, den ein Miniporttreiber festlegt, um anzugeben, dass ein Miniportadapter eine UDP-Prüfsumme für ein IPv6-Empfangspaket überprüfen kann, oder um anzugeben, dass diese Funktion aktiviert oder deaktiviert ist.

Hinweise

Die NDIS_TCP_IP_CHECKSUM_OFFLOAD-Struktur wird im Prüfsummenelement der NDIS_OFFLOAD-Struktur verwendet. Die NDIS_TCP_IP_CHECKSUM_OFFLOAD-Struktur gibt die aktuellen oder unterstützten Dienste an, die ein Miniportadapter bereitstellt, um IP-, TCP- oder UDP-Prüfsummen (oder alle davon) für Sendepakete zu berechnen und solche Prüfsummen für Empfangspakete zu überprüfen.

NDIS_OFFLOAD wird im 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 status Angabe.

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 Angabe.

Die Kapselungsmember von NDIS_TCP_IP_CHECKSUM_OFFLOAD definieren die Kapselungseinstellungen für die Prüfsummenauslagerung für den Miniportadapter.

Als Reaktion auf eine OID_TCP_OFFLOAD_CURRENT_CONFIG Abfrageanforderung stellt NDIS in jedem Kapselungsmember ein bitweises OR der Kapselungsflags bereit, die die unterstützten Kapselungseinstellungen angeben. Miniporttreiber müssen Ethernet-Kapselung (NDIS_ENCAPSULATION_IEEE_802_3) bereitstellen. Die anderen Kapselungstypen sind optional.

Für eine NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG status Angabe stellt der Miniporttreiber in jedem der Kapselungsmember ein bitweises OR der Kapselungsflags bereit, die die aktuellen Funktionen angeben.

Die folgenden Flags sind für die Kapselungsmber definiert:

  • 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 Routingprotokolle an, wie in RFC 1483 beschrieben. Dieses Flag wird auch verwendet, um die Ethernet LLC/SNAP-Kapselung anzugeben.

Die Bedeutung der Werte in den Membern IpOptionsSupported, TcpOptionsSupported, IpExtensionHeadersSupported, TcpChecksum, UdpChecksum und IpChecksum von NDIS_TCP_IP_CHECKSUM_OFFLOAD hängt davon ab, welche OID- oder status-Angabe die Taskauslagerungsstruktur enthält. Diese Member können einen der folgenden Werte aufweisen:

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

NET_BUFFER_LIST

OID_TCP_OFFLOAD_CURRENT_CONFIG