Freigeben über


IP_OFFLOAD_STATS Struktur (ndischimney.h)

[Das TCP-Schornstein-Offload-Feature ist veraltet und sollte nicht verwendet werden.]

Die IP_OFFLOAD_STATS-Struktur enthält Statistiken, die ein Offloadziel als Reaktion auf eine Abfrage von OID_IP4_OFFLOAD_STATS oder OID_IP6_OFFLOAD_STATSbereitstellt.

Syntax

typedef struct _IP_OFFLOAD_STATS {
  ULONG64 InReceives;
  ULONG64 InOctets;
  ULONG64 InDelivers;
  ULONG64 OutRequests;
  ULONG64 OutOctets;
  ULONG   InHeaderErrors;
  ULONG   InTruncatedPackets;
  ULONG   InDiscards;
  ULONG   OutDiscards;
  ULONG   OutNoRoutes;
} IP_OFFLOAD_STATS, *PIP_OFFLOAD_STATS;

Angehörige

InReceives

Die Gesamtzahl der Eingabe-IP-Datagramme, die von der Schnittstelle bei entladenen TCP-Verbindungen empfangen wurden, einschließlich ip-Datagrammen, die in Fehler empfangen wurden. Siehe "ipInReceives" in RFC 2011.

InOctets

Die Gesamtanzahl der Oktette (Bytes) in Eingabe-IP-Datagrammen, die von der Schnittstelle bei entladenen TCP-Verbindungen empfangen wurden. Oktette aus Datagrammen, die in InReceives- gezählt werden, müssen hier gezählt werden. InOctets- muss die Anzahl der Bytes im IP-Header und in der Nutzlast enthalten.

InDelivers

Die Anzahl der Eingabe-IP-Datagramme, die erfolgreich an geladene TCP-Verbindungen übermittelt wurden. Siehe "ipInDelivers" in RFC 2011.

OutRequests

Die Anzahl der IP-Datagramme, die das offload-Ziel an seine IP-Ebene in Anforderungen für die Übertragung bei entladenen TCP-Verbindungen bereitgestellt hat. Siehe "ipOutRequests" in RFC 2011.

OutOctets

Die Gesamtzahl der Oktette (Bytes) in IP-Datagrammen, die das Offload-Ziel an seine IP-Ebene in Anforderungen für die Übertragung bei entladenen TCP-Verbindungen bereitgestellt hat. Oktette aus Datagrammen, die in OutRequests- gezählt werden, müssen hier gezählt werden. OutOctets- muss die Anzahl der Bytes im IP-Header und in der Nutzlast enthalten.

InHeaderErrors

Die Anzahl der Eingabe-IP-Datagramme, die bei deaktivierten TCP-Verbindungen empfangen wurden, die aufgrund von Fehlern in ihren IP-Headern verworfen wurden. Zu solchen Fehlern gehören fehlerhafte Prüfsummen, Versionsnummernkonflikt, andere Formatfehler, Zeit-zu-Live-Überschreitungen und Fehler bei der Verarbeitung von IPv6-Optionen, wenn das Offload-Ziel solche Optionen unterstützt. (Ein Offloadziel verarbeitet keine IPv4-Optionen.) Diese Anzahl enthält keine Fehler, die sich aus ungültigen Zieladressen ergeben. Siehe "ipInHdrErrors" in RFC 2011.

InTruncatedPackets

Die Anzahl der eingegebenen IP-Datagramme wurde verworfen, da der Datagrammframe nicht genügend Daten enthält. InTruncatedPackets sollte nur erhöht werden, wenn der Frame eine gültige Kopfzeile enthielt, aber andernfalls kürzer als erforderlich war. Frames, die zu kurz sind, um einen gültigen Header zu enthalten, sollten als InHeaderErrors- gezählt werden.

InDiscards

Die Anzahl der Eingabe-IP-Datagramme, die bei deaktivierten TCP-Verbindungen empfangen wurden, die nichts enthielten, um ihre weitere Verarbeitung zu verhindern, aber aus Laufzeitgründen verworfen wurden, z. B. fehlender verfügbarer Arbeitsspeicher oder andere Ressourcen. Siehe "ipInDiscards" in RFC 2011.

OutDiscards

Die Anzahl der Ausgabe-IP-Datagramme, für die das offload-Ziel auf seiner IP-Ebene bereitgestellt wurde, für die kein Problem aufgetreten ist, um die Übertragung zu verhindern, aber aus Laufzeitgründen verworfen wurden, z. B. mangels Arbeitsspeicher oder anderen Ressourcen. Siehe "ipOutDiscards" in RFC 2011.

OutNoRoutes

Die Anzahl der Ausgabe-IP-Datagramme, die das offload-Ziel an seine IP-Ebene übermittelt hat, die verworfen wurden, da keine Route (z. B. ein entladenes Pfadstatusobjekt) gefunden werden konnte, um sie an ihr Ziel zu übertragen. Siehe "ipOutNoRoutes" in RFC 2011.

Bemerkungen

Die Statistiken in der IP_OFFLOAD_STATS-Struktur beziehen sich nur auf IP-Datagramme, die das Offloadziel bei entladenen TCP-Verbindungen verarbeitet hat. Das Offload-Ziel darf keine Anzahl für IP-Datagramme für nicht ausgeladene Verbindungen enthalten. Die Statistiken beziehen sich auf eine einzelne Netzwerkschnittstelle.

Wenn ein Offloadziel über mehrere Netzwerkschnittstellen verfügt, muss es separate IP-Offloadstatistiken für jede Netzwerkschnittstelle verwalten. Wenn das Offloadziel sowohl IPv4- als auch IPv6-Verbindungen für eine Netzwerkschnittstelle unterstützt, muss ein Satz von IPv4-Offload-Statistikzählern und eine andere Gruppe von IPv6-Offload-Statistikzählern für diese Netzwerkschnittstelle beibehalten werden.

Wenn die TCP-Schornsteinfunktionen eines Offloadziels aktiviert sind (siehe NDIS_TASK_OFFLOAD), und wenn mindestens ein Benachbartes Zustandsobjekt in das Offload-Ziel entladen wurde, kann das Offloadziel ein empfangenes Paket verarbeiten, das einen beschädigten IP-Header hat, auf eine von zwei Arten:

  • Das Offload-Ziel kann das Paket über die Nicht-Offload-Schnittstelle durch Aufrufen der NdisMIndicateReceiveNetBufferLists Funktion. In diesem Fall darf das Offloadziel den InHeaderErrors-Zähler nicht erhöhen. Dies ist der empfohlene Ansatz.
  • Alternativ kann das Offloadziel das beschädigte Paket NDIS_TASK_OFFLOAD ablegen und den InHeaderErrors-Zähler erhöhen.
Der Hoststapel integriert die Statistiken, die von einem Offloadziel zurückgegeben werden, in die Statistiken, die der Hoststapel für nicht entladene TCP-Verbindungen verwaltet.

Beachten Sie, dass der Hoststapel beim Festlegen OID_IP4_OFFLOAD_STATS oder OID_IP6_OFFLOAD_STATS eine IP_OFFLOAD_STATS Struktur bereitstellt. In beiden Fällen muss das Offloadziel jedoch nicht die Werte in der IP_OFFLOAD_STATS Struktur untersuchen. Wenn OID_IP4_OFFLOAD_STATS festgelegt wird, sollte das Offloadziel stattdessen alle IPv4-Statistikzähler für entladene TCP-Verbindungen zurücksetzen. Wenn OID_IP6_OFFLOAD_STATS festgelegt ist, sollte das Offloadziel alle IPv6-Statistikzähler für entladene TCP-Verbindungen zurücksetzen.

Alle Zähler, die die Werte für den IP_OFFLOAD_STATS Strukturumbruch (Neustart von Null) bereitstellen, wenn sie über ihre maximale Anzahl hinaus erhöht werden.

Anforderungen

Anforderung Wert
Header- ndischimney.h (include Ndischimney.h)

Siehe auch

NDIS_TASK_OFFLOAD

NdisMIndicateReceiveNetBufferLists

OID_IP4_OFFLOAD_STATS

OID_IP6_OFFLOAD_STATS