NDIS_OFFLOAD_PARAMETERS-Struktur (ntddndis.h)

Die NDIS_OFFLOAD_PARAMETERS-Struktur gibt die Konfigurationseinstellungen für die aktuelle Aufgabeauslagerung als Reaktion auf eine OID-Set-Anforderung von OID_TCP_OFFLOAD_PARAMETERS an.

Syntax

typedef struct _NDIS_OFFLOAD_PARAMETERS {
  NDIS_OBJECT_HEADER                 Header;
  UCHAR                              IPv4Checksum;
  UCHAR                              TCPIPv4Checksum;
  UCHAR                              UDPIPv4Checksum;
  UCHAR                              TCPIPv6Checksum;
  UCHAR                              UDPIPv6Checksum;
  UCHAR                              LsoV1;
  UCHAR                              IPsecV1;
  UCHAR                              LsoV2IPv4;
  UCHAR                              LsoV2IPv6;
  UCHAR                              TcpConnectionIPv4;
  UCHAR                              TcpConnectionIPv6;
  ULONG                              Flags;
  UCHAR                              IPsecV2;
  UCHAR                              IPsecV2IPv4;
  struct {
    UCHAR RscIPv4;
    UCHAR RscIPv6;
  };
  struct {
    UCHAR EncapsulatedPacketTaskOffload;
    UCHAR EncapsulationTypes;
  };
  union {
    struct {
      USHORT VxlanUDPPortNumber;
    } VxlanParameters;
    ULONG Value;
  } EncapsulationProtocolParameters;
  _ENCAPSULATION_PROTOCOL_PARAMETERS _ENCAPSULATION_PROTOCOL_PARAMETERS;
  struct {
    UCHAR IPv4;
    UCHAR IPv6;
  } UdpSegmentation;
} NDIS_OFFLOAD_PARAMETERS, *PNDIS_OFFLOAD_PARAMETERS;

Member

Header

Die NDIS_OBJECT_HEADER-Struktur für die NDIS_OFFLOAD_PARAMETERS-Struktur . Legen Sie den Typmember der Struktur, die Header angibt, auf NDIS_OBJECT_TYPE_DEFAULT fest.

Um die Version der NDIS_OFFLOAD_PARAMETERS-Struktur anzugeben, legen Sie den Revisionsmember auf einen der folgenden Werte fest:

Wert Bedeutung
NDIS_OFFLOAD_PARAMETERS_REVISION_3
3
Unterstützt die Member RscIPv4 , RscIPv6, EncapsulatedPacketTaskOffload und EncapsulationTypes für NDIS 6.30.

Legen Sie das Element Größe auf NDIS_SIZEOF_OFFLOAD_PARAMETERS_REVISION_3 fest.

NDIS_OFFLOAD_PARAMETERS_REVISION_2
2
Unterstützt die Member IPsecV2, IPsecV2IPv4, Reserved1 und Reserved2 für NDIS 6.1.

Legen Sie das Element Größe auf NDIS_SIZEOF_OFFLOAD_PARAMETERS_REVISION_2 fest.

NDIS_OFFLOAD_PARAMETERS_REVISION_1
1
Originalversion für NDIS 6.0.

Legen Sie das Element Größe auf NDIS_SIZEOF_OFFLOAD_PARAMETERS_REVISION_1 fest.

IPv4Checksum

Die IPv4-Prüfsummeneinstellung des Miniportadapters. Weitere Informationen finden Sie im folgenden Abschnitt "Hinweise".

TCPIPv4Checksum

Die IPv4-Prüfsummeneinstellung des Miniportadapters für TCP-Pakete. Weitere Informationen finden Sie im folgenden Abschnitt "Hinweise".

UDPIPv4Checksum

Die IPv4-Prüfsummeneinstellung des Miniportadapters für UDP-Pakete. Weitere Informationen finden Sie im folgenden Abschnitt "Hinweise".

TCPIPv6Checksum

Die IPv6-Prüfsummeneinstellung des Miniportadapters für TCP-Pakete. Weitere Informationen finden Sie im folgenden Abschnitt "Hinweise".

UDPIPv6Checksum

Die IPv6-Prüfsummeneinstellung des Miniportadapters für UDP-Pakete. Weitere Informationen finden Sie im folgenden Abschnitt "Hinweise".

LsoV1

Die Einstellung "Large Send Offload Version 1" (LSOV1) des Miniportadapters. Diese Einstellung sollte einer der folgenden Werte sein:

Wert Bedeutung
NDIS_OFFLOAD_PARAMETERS_NO_CHANGE
Der Miniporttreiber sollte die aktuelle Einstellung nicht ändern.
NDIS_OFFLOAD_PARAMETERS_LSOV1_DISABLED
LSOV1 ist deaktiviert.
NDIS_OFFLOAD_PARAMETERS_LSOV1_ENABLED
LSOV1 ist aktiviert.

IPsecV1

Die Einstellung internet protocol security (IPsec) offload des Miniportadapters. Diese Einstellung sollte einer der folgenden Werte sein:

Wert Bedeutung
NDIS_OFFLOAD_PARAMETERS_NO_CHANGE
Der Miniporttreiber sollte die aktuelle Einstellung nicht ändern.
NDIS_OFFLOAD_PARAMETERS_IPSECV1_DISABLED
IPsec-Auslagerung ist deaktiviert.
NDIS_OFFLOAD_PARAMETERS_IPSECV1_AH_ENABLED
Das Feature "IPsec offload Authentication Header (AH)" sollte für das Senden und Empfangen aktiviert sein.
NDIS_OFFLOAD_PARAMETERS_IPSECV1_ESP_ENABLED
Das Feature "IPsec offload Encapsulating Security Payload (ESP)" sollte für das Senden und Empfangen aktiviert sein.
NDIS_OFFLOAD_PARAMETERS_IPSECV1_AH_AND_ESP_ENABLED
Die IPsec-Auslagerungs-AH- und ESP-Features können übertragen und empfangen werden.

LsoV2IPv4

Die Einstellung IPv4 large send offload Version 2 (LSOV2) des Miniportadapters. Diese Einstellung sollte einer der folgenden Werte sein:

Wert Bedeutung
NDIS_OFFLOAD_PARAMETERS_NO_CHANGE
Der Miniporttreiber sollte die aktuelle Einstellung nicht ändern.
NDIS_OFFLOAD_PARAMETERS_LSOV2_DISABLED
LSOV2 für IPv4 ist deaktiviert.
NDIS_OFFLOAD_PARAMETERS_LSOV2_ENABLED
LSOV2 für IPv4 ist aktiviert.

LsoV2IPv6

Die IPv6 LSOV2-Einstellung des Miniportadapters. Diese Einstellungen werden als einer der folgenden Werte angegeben:

Wert Bedeutung
NDIS_OFFLOAD_PARAMETERS_NO_CHANGE
Der Miniporttreiber sollte die aktuelle Einstellung nicht ändern.
NDIS_OFFLOAD_PARAMETERS_LSOV2_DISABLED
LSOV2 für IPv6 ist deaktiviert.
NDIS_OFFLOAD_PARAMETERS_LSOV2_ENABLED
LSOV2 für IPv6 ist aktiviert.

TcpConnectionIPv4

Die IPv4-Verbindungsauslagerungseinstellung des Miniportadapters. Diese Einstellungen werden als einer der folgenden Werte angegeben:

Wert Bedeutung
NDIS_OFFLOAD_PARAMETERS_NO_CHANGE
Der Miniporttreiber sollte die aktuelle Einstellung nicht ändern.

TcpConnectionIPv6

Die IPv6-Verbindungsauslagerungseinstellung des Miniportadapters. Diese Einstellungen werden als einer der folgenden Werte angegeben:

Wert Bedeutung
NDIS_OFFLOAD_PARAMETERS_NO_CHANGE
Der Miniporttreiber sollte die aktuelle Einstellung nicht ändern.

Flags

Eine Gruppe von Flags, die mit einem bitweisen OR-Vorgang kombiniert werden können. Legen Sie dieses Element auf 0 (null) fest. Derzeit sind keine Flags definiert.

IPsecV2

Die Einstellung internet protocol security (IPsec) offload Version 2 eines Miniportadapters, der IPv6 und IPv4 unterstützt. Dieser Member gibt die Einstellung für die IPv6- und IPv4-Unterstützung an. Diese Einstellung sollte einer der folgenden Werte sein:

Wert Bedeutung
NDIS_OFFLOAD_PARAMETERS_NO_CHANGE
Der Miniporttreiber sollte die aktuelle Einstellung nicht ändern.
NDIS_OFFLOAD_PARAMETERS_IPSECV2_DISABLED
IPsec-Auslagerung Version 2 ist deaktiviert.
NDIS_OFFLOAD_PARAMETERS_IPSECV2_AH_ENABLED
Das Feature Authentifizierungsheader (AH) der IPsec-Auslagerung der Version 2 sollte für das Senden und Empfangen aktiviert sein.
NDIS_OFFLOAD_PARAMETERS_IPSECV2_ESP_ENABLED
Das FEATURE "IPsec offload Version 2 Encapsulating Security Payload (ESP)" sollte für das Senden und Empfangen aktiviert sein.
NDIS_OFFLOAD_PARAMETERS_IPSECV2_AH_AND_ESP_ENABLED
Die IPsec-Auslagerungsversion 2A H und ESP-Features sind für das Senden und Empfangen aktiviert.

IPsecV2IPv4

Die Einstellung internet protocol security (IPsec) offload Version 2 eines Miniportadapters, der IPv4 unterstützt und IPv6 nicht unterstützt. Wenn der Miniporttreiber IPv6 unterstützt, gibt der IPsecV2-Member die IPv4-Einstellung an, und dieser Member wird nicht verwendet. Diese Einstellung sollte einer der folgenden Werte sein:

Wert Bedeutung
NDIS_OFFLOAD_PARAMETERS_NO_CHANGE
Der Miniporttreiber sollte die aktuelle Einstellung nicht ändern.
NDIS_OFFLOAD_PARAMETERS_IPSECV2_DISABLED
IPsec-Auslagerung Version 2 ist deaktiviert.
NDIS_OFFLOAD_PARAMETERS_IPSECV2_AH_ENABLED
Das Feature Authentifizierungsheader (AH) der IPsec-Auslagerung der Version 2 sollte für das Senden und Empfangen aktiviert sein.
NDIS_OFFLOAD_PARAMETERS_IPSECV2_ESP_ENABLED
Das FEATURE "IPsec offload Version 2 Encapsulating Security Payload (ESP)" sollte für das Senden und Empfangen aktiviert sein.
NDIS_OFFLOAD_PARAMETERS_IPSECV2_AH_AND_ESP_ENABLED
Die IPsec-Auslagerungsversion 2A H und ESP-Features sind für das Senden und Empfangen aktiviert.

RscIPv4

Gibt den Zusammenführungsstatus des Empfangssegments für IPv4 an.

Wert Bedeutung
NDIS_OFFLOAD_PARAMETERS_NO_CHANGE
Der RSC-Zustand bleibt unverändert.
NDIS_OFFLOAD_PARAMETERS_RSC_ENABLED
Der RSC-Status ist aktiviert.
NDIS_OFFLOAD_PARAMETERS_RSC_DISABLED
Der RSC-Status ist deaktiviert.

RscIPv6

Gibt den Zusammenführungsstatus des Empfangssegments für IPv6 an.

Wert Bedeutung
NDIS_OFFLOAD_PARAMETERS_NO_CHANGE
Der RSC-Zustand bleibt unverändert.
NDIS_OFFLOAD_PARAMETERS_RSC_ENABLED
Der RSC-Status ist aktiviert.
NDIS_OFFLOAD_PARAMETERS_RSC_DISABLED
Der RSC-Status ist deaktiviert.

EncapsulatedPacketTaskOffload

Ein Protokolltreiber legt EncapsulatedPacketTaskOffload wie folgt fest:

Hinweis Für empfangsseitige Auslagerungen wie VMQ und RSS gibt es andere festgelegte OIDs, die der Protokolltreiber nach unten sendet, um die Auslagerungsparameter zu aktivieren und zu konfigurieren (z. B. Warteschlangen, Hash und Dereferenzierungstabelle). Der EncapsulatedPacketTaskOffload-Member ist eine Ergänzung zu diesen OIDs und weist die NIC an, diese Auslagerungen auch für gekapselte Pakete zu erledigen.
 
Wert Bedeutung
NDIS_OFFLOAD_SET_NO_CHANGE
0
Die NVGRE- und VXLAN-Taskauslagerungszustände bleiben unverändert.
NDIS_OFFLOAD_SET_ON
1
Aktiviert NVGRE- und VXLAN-Aufgabenauslagerungen.
NDIS_OFFLOAD_SET_OFF
2
Deaktiviert NVGRE- und VXLAN-Aufgabenauslagerungen.

EncapsulationTypes

Dieses Feld ist nur wirksam, wenn EncapsulatedPacketTaskOffload auf NDIS_OFFLOAD_SET_ON festgelegt ist. Wenn das EncapsulatedPacketTaskOffload-Element nicht auf NDIS_OFFLOAD_SET_ON festgelegt ist, ist dieser Member null. Ein Protokolltreiber muss EncapsulationTypes auf das bitweise OR der Flags festlegen, die den benötigten Kapselungstypen entsprechen. Es kann Flags aus den folgenden Optionen auswählen:

Wert Bedeutung
NDIS_ENCAPSULATION_TYPE_GRE_MAC
0x00000001
Gibt die GRE MAC-Kapselung (NVGRE) an.
NDIS_ENCAPSULATION_TYPE_VXLAN
0x00000002
Gibt die VXLAN-Kapselung an.

EncapsulationProtocolParameters

Eine Union, die die Kapselungsparameter für die VXLAN-Kapselung beschreibt.

Wenn der Miniporttreiber VxlanUDPPortNumerConfigurable als TRUE angekündigt hat, kann ein Protokolltreiber EncapsulationProtocolParameters.VxlanParameters.VxlanUDPPortNumber auf einen Wert ungleich 0 festlegen. Der Minport-Treiber muss diese Portnummer zum Abgleichen und Generieren von VXLAN-Frames verwenden, nachdem die OID erfolgreich war, und auch den aktualisierten Wert in seinen Funktionen ankündigen. Wenn der Protokolltreiber den Wert 0 übergibt, verwendet der Miniporttreiber weiterhin die Portnummer, die vom standardisierten Schlüsselwort (keyword) initialisiert wurde.

EncapsulationProtocolParameters.VxlanParameters

Eine -Struktur, die die VxlanUDPPortNumber enthält.

EncapsulationProtocolParameters.VxlanParameters.VxlanUDPPortNumber

Der Wert des VXLAN-Zielports. Dieser Wert wird standardmäßig auf den von IANA zugewiesenen Wert 4789 festgelegt. Wenn der Miniporttreiber eine konfigurierbare Portnummer unterstützt, wie in der NDIS_OFFLOAD-Struktur angekündigt, kann ein Protokolltreiber eine OID_TCP_OFFLOAD_PARAMETERS OID ausgeben, um NDIS_ENCAPSULATION_TYPE_VXLAN mit einem anderen Wert in VxlanUDPPortNumber zu aktivieren. Der Miniporttreiber muss VxlanUDPPortNumber verwenden, um gekapselte VXLAN-Pakete für die Durchführung von Empfangsausladungen zu ermitteln.

EncapsulationProtocolParameters.Value

Der Portwert, wenn EncapsulationTypes nicht auf NDIS_ENCAPSULATION_TYPE_VXLAN festgelegt ist.

_ENCAPSULATION_PROTOCOL_PARAMETERS

Der Typname für EncapsulationProtocolParameters.

UdpSegmentation

Eine Struktur, die die USO-Einstellungen (UDP Segmentation Offload) des Miniportadapters beschreibt.

UdpSegmentation.IPv4

Die Einstellung IPv4 UDP Segmentation Offload (USO) des Miniportadapters. Diese Einstellung sollte einer der folgenden Werte sein:

Wert Bedeutung
NDIS_OFFLOAD_PARAMETERS_NO_CHANGE
0
Der Miniporttreiber sollte die aktuelle Einstellung nicht ändern.
NDIS_OFFLOAD_PARAMETERS_UDP_SEG_DISABLED
1
USO ist deaktiviert.
NDIS_OFFLOAD_PARAMETERS_UDP_SEG_ENABLED
2
USO ist aktiviert.

UdpSegmentation.IPv6

Die Einstellung IPv6 UDP Segmentation Offload (USO) des Miniportadapters. Diese Einstellung sollte einer der folgenden Werte sein:

Wert Bedeutung
NDIS_OFFLOAD_PARAMETERS_NO_CHANGE
0
Der Miniporttreiber sollte die aktuelle Einstellung nicht ändern.
NDIS_OFFLOAD_PARAMETERS_UDP_SEG_DISABLED
1
USO ist deaktiviert.
NDIS_OFFLOAD_PARAMETERS_UDP_SEG_ENABLED
2
USO ist aktiviert.

Hinweise

Als Reaktion auf eine OID_TCP_OFFLOAD_PARAMETERS OID-Set-Anforderung verwendet ein Miniporttreiber die Einstellungen in der NDIS_OFFLOAD_PARAMETERS-Struktur , um die aktuelle Konfiguration des Miniportadapters festzulegen.

NDIS behält die angeforderten Einstellungen in der Registrierung in der Auslagerung standardisierter Schlüsselwörter bei. Wenn NDIS den Miniportadapter neu startet, liest der Miniporttreiber die standardisierten Schlüsselwörter des Auslagerungsvorgangs und verwendet sie, um die Standardauslagerungskonfiguration der NIC festzulegen.

Verwenden Sie die folgenden Elemente der NDIS_OFFLOAD_PARAMETERS-Struktur , um auf die Prüfsummenauslagerungseinstellungen zuzugreifen:

IPv4Checksum

TCPIPv4Checksum

UDPIPv4Checksum

TCPIPv6Checksum

UDPIPv6Checksum

Die vorherigen Member können einen der folgenden Werte aufweisen:

NDIS_OFFLOAD_PARAMETERS_NO_CHANGE
Der Miniporttreiber sollte die aktuelle Einstellung nicht ändern.

NDIS_OFFLOAD_PARAMETERS_TX_RX_DISABLED
Das feature, das der Member angibt, ist deaktiviert.

NDIS_OFFLOAD_PARAMETERS_TX_ENABLED_RX_DISABLED
Das vom Member festgelegte Feature ist für die Übertragung aktiviert und für den Empfang deaktiviert.

NDIS_OFFLOAD_PARAMETERS_RX_ENABLED_TX_DISABLED
Das vom Member festgelegte Feature ist für den Empfang aktiviert und für die Übertragung deaktiviert.

NDIS_OFFLOAD_PARAMETERS_TX_RX_ENABLED
Das feature, das der Member angibt, ist für senden und empfangen aktiviert.

Anforderungen

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

Weitere Informationen

NDIS_OBJECT_HEADER

OID_TCP_OFFLOAD_HARDWARE_CAPABILITIES

OID_TCP_OFFLOAD_PARAMETERS