TCP_OFFLOAD_STATS-Struktur (ndischimney.h)

[Das TCP-Schornsteinauslagerungsfeature ist veraltet und sollte nicht verwendet werden.]

Die TCP_OFFLOAD_STATS-Struktur enthält Statistiken, die ein Auslagerungsziel als Reaktion auf eine Abfrage von OID_TCP4_OFFLOAD_STATS oder OID_TCP6_OFFLOAD_STATS bereitstellt.

Syntax

typedef struct _TCP_OFFLOAD_STATS {
  ULONG64 InSegments;
  ULONG64 OutSegments;
  ULONG   CurrentlyEstablished;
  ULONG   ResetEstablished;
  ULONG   RetransmittedSegments;
  ULONG   InErrors;
  ULONG   OutResets;
} TCP_OFFLOAD_STATS, *PTCP_OFFLOAD_STATS;

Member

InSegments

Die Gesamtanzahl der Segmente, die bei ausgeladenen TCP-Verbindungen empfangen werden, einschließlich der segmenten, die fehlerhaft ( InErrors ) empfangen wurden. Diese Anzahl umfasst Segmente, die für derzeit hergestellte Verbindungen empfangen wurden. Weitere Informationen finden Sie unter tcpInSegs in RFC 1156.

OutSegments

Die Gesamtanzahl der Segmente, die bei ausgeladenen TCP-Verbindungen gesendet werden, einschließlich der Segmente für aktuelle Verbindungen, jedoch mit Ausnahme der Segmente, die nur erneut gesendete Oktette enthalten. Weitere Informationen finden Sie unter tcpOutSegs in RFC 1156.

CurrentlyEstablished

Die Anzahl der TCP-Verbindungen, für die der aktuelle Status entweder ESTABLISHED oder CLOSE-WAIT lautet. Siehe
tcpCurrEstab in RFC 1156.

ResetEstablished

Die Anzahl der Male, mit denen tcp-Verbindungen aus dem Zustand ESTABLISHED oder CLOSE-WAIT direkt in den Zustand CLOSED übergehen.

RetransmittedSegments

Die Gesamtanzahl der Segmente, die bei ausgeladenen TCP-Verbindungen erneut übertragen werden, d. h. die Anzahl der übertragenen TCP-Segmente, die ein oder mehrere zuvor übertragene Oktette enthalten. Weitere Informationen finden Sie unter tcpRetransSegs in RFC 1156.

InErrors

Die Anzahl der Pakete, die bei ausgeladenen TCP-Verbindungen empfangen wurden, die einen oder mehrere TCP-spezifische Fehler enthielten, die das Auslagerungsziel daran hinderten, die Pakete zu übermitteln. Weitere Informationen finden Sie unter ifInErrors in RFC 1156.

OutResets

Die Anzahl der Segmente, die bei ausgeladenen TCP-Verbindungen übertragen werden, wobei das RST-Bit im TCP-Header festgelegt ist.

Hinweise

Die Statistiken in der TCP_OFFLOAD_STATS-Struktur beziehen sich nur auf ausgeladene TCP-Verbindungen. Das Auslagerungsziel darf keine Anzahl von TCP-Segmenten für Verbindungen enthalten, die nicht ausgelagert wurden. Die Statistiken in der TCP_OFFLOAD_STATS-Struktur beziehen sich auf eine einzelne Netzwerkschnittstelle.

Wenn ein Auslagerungsziel über mehr als eine Netzwerkschnittstelle verfügt, muss es einen separaten Satz von TCP-Statistikindikatoren für jede Netzwerkschnittstelle verwalten. Wenn das Auslagerungsziel sowohl IPv4- als auch IPv6-Verbindungen auf einer Netzwerkschnittstelle unterstützt, muss es für diese Schnittstelle einen separaten Satz von TCP-Statistikindikatoren für TCP/IPv4-Datenverkehr und einen separaten Satz von TCP-Statistikindikatoren für TCP/IPv6-Datenverkehr verwalten.

Wenn die TCP-Schornsteinfunktionen eines Auslagerungsziels aktiviert sind (siehe NDIS_TASK_OFFLOAD), und wenn mindestens ein objekt für den Zustand des ausgeladenen Pfads auf das Auslagerungsziel ausgelagert wurde, kann das Auslagerungsziel ein empfangenes Paket verarbeiten, das über einen beschädigten TCP-Header (aber einen gültigen IP-Header) verfügt, auf zwei Arten:

  • Das Auslagerungsziel kann das Paket über die Schnittstelle ohne Auslagerung angeben, indem die NdisMIndicateReceiveNetBufferLists-Funktion . In diesem Fall darf das Auslagerungsziel den InErrors-Indikator nicht erhöhen. Dies ist die empfohlene Vorgehensweise.
  • Alternativ kann das Auslagerungsziel das beschädigte Paket löschen und den InErrors-Indikator erhöhen.
Wenn die TCP-Schornsteinfunktionen des Auslagerungsziels nicht aktiviert sind oder wenn nicht mindestens ein objekt für den Zustand des ausgeladenen Pfads vorhanden ist, muss das Auslagerungsziel das beschädigte Paket angeben und darf den InErrors-Indikator nicht erhöhen.

Der Hoststapel integriert die von einem Auslagerungsziel zurückgegebenen Statistiken in die Statistiken, die der Hoststapel für nicht ausgeladene TCP-Verbindungen verwaltet.

Beachten Sie, dass der Hoststapel beim Festlegen von OID_TCP4_OFFLOAD_STATS oder OID_TCP6_OFFLOAD_STATS eine TCP_OFFLOAD_STATS-Struktur bereitstellt. In diesem Fall muss das Auslagerungsziel jedoch nicht die Werte in der TCP_OFFLOAD_STATS Struktur untersuchen. Wenn OID_TCP4_OFFLOAD_STATS festgelegt ist, sollte das Auslagerungsziel stattdessen seine TCP-Statistikindikatoren für ausgeladene TCP-Verbindungen, die IPv4-Datagramme übermitteln, auf Null zurücksetzen. Wenn OID_TCP6_OFFLOAD_STATS festgelegt ist, sollte das Auslagerungsziel seine TCP-Statistikindikatoren für ausgeladene TCP-Verbindungen, die IPv6-Datagramme übermitteln, auf Null zurücksetzen.

Alle Leistungsindikatoren, die die Werte für den TCP_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)

Weitere Informationen

OID_TCP4_OFFLOAD_STATS

OID_TCP6_OFFLOAD_STATS