estructura TCP_ESTATS_PATH_ROD_v0 (tcpestats.h)

La estructura de TCP_ESTATS_PATH_ROD_v0 contiene información dinámica de solo lectura para estadísticas TCP extendidas en la medición de ruta de acceso de red para una conexión TCP.

Sintaxis

typedef struct _TCP_ESTATS_PATH_ROD_v0 {
  ULONG FastRetran;
  ULONG Timeouts;
  ULONG SubsequentTimeouts;
  ULONG CurTimeoutCount;
  ULONG AbruptTimeouts;
  ULONG PktsRetrans;
  ULONG BytesRetrans;
  ULONG DupAcksIn;
  ULONG SacksRcvd;
  ULONG SackBlocksRcvd;
  ULONG CongSignals;
  ULONG PreCongSumCwnd;
  ULONG PreCongSumRtt;
  ULONG PostCongSumRtt;
  ULONG PostCongCountRtt;
  ULONG EcnSignals;
  ULONG EceRcvd;
  ULONG SendStall;
  ULONG QuenchRcvd;
  ULONG RetranThresh;
  ULONG SndDupAckEpisodes;
  ULONG SumBytesReordered;
  ULONG NonRecovDa;
  ULONG NonRecovDaEpisodes;
  ULONG AckAfterFr;
  ULONG DsackDups;
  ULONG SampleRtt;
  ULONG SmoothedRtt;
  ULONG RttVar;
  ULONG MaxRtt;
  ULONG MinRtt;
  ULONG SumRtt;
  ULONG CountRtt;
  ULONG CurRto;
  ULONG MaxRto;
  ULONG MinRto;
  ULONG CurMss;
  ULONG MaxMss;
  ULONG MinMss;
  ULONG SpuriousRtoDetections;
} TCP_ESTATS_PATH_ROD_v0, *PTCP_ESTATS_PATH_ROD_v0;

Miembros

FastRetran

Tipo: ULONG

Número de invocaciones del algoritmo de retransmisión rápida.

Timeouts

Tipo: ULONG

El número de veces que el tiempo de espera de retransmisión ha expirado cuando el multiplicador de retroceso del temporizador de retransmisión es igual a uno.

SubsequentTimeouts

Tipo: ULONG

El número de veces que el tiempo de espera de retransmisión ha expirado después de duplicar el temporizador de retransmisión.

Para obtener más información, vea la sección 5.5 de RFC 2988 que se describe en los comentarios siguientes.

CurTimeoutCount

Tipo: ULONG

El número actual de veces que el tiempo de espera de retransmisión ha expirado sin recibir una confirmación para los nuevos datos.

El miembro CurTimeoutCount se restablece a cero cuando se reconocen e incrementan nuevos datos para cada invocación de la sección 5.5 de RFC 2988.

AbruptTimeouts

Tipo: ULONG

Número de tiempos de espera que se produjeron sin ninguna confirmación duplicada anterior inmediatamente u otras indicaciones de congestión. Los tiempos de espera abruptos indican que la ruta de acceso perdió toda una ventana de datos o confirmaciones.

Los tiempos de espera precedidos por confirmaciones duplicadas u otras señales de congestión (notificación de congestión explícita, por ejemplo) no se cuentan como abruptas y es posible que se hayan evitado mediante un algoritmo de retransmisión rápida más sofisticado.

PktsRetrans

Tipo: ULONG

Número de segmentos transmitidos que contienen al menos algunos datos retransmitidos.

BytesRetrans

Tipo: ULONG

Número de bytes retransmitidos.

DupAcksIn

Tipo: ULONG

Número de ACK duplicados recibidos.

SacksRcvd

Tipo: ULONG

Número de opciones de confirmación selectiva (SACK) recibidas.

SackBlocksRcvd

Tipo: ULONG

Número de bloques SACK recibidos (dentro de las opciones de SACK).

CongSignals

Tipo: ULONG

El número de ajustes de ventana de congestión descendente multiplicativos debido a todas las formas de señales de congestión, incluida la retransmisión rápida, la notificación de congestión explícita (ECN) y los tiempos de espera. Este miembro resume todos los eventos que invocan la parte de disminución multiplicativa (MD) del control de congestión de disminución multiplicativa de aumento aditivo (AIMD) y, como tal, es el mejor indicador de cómo se ven afectadas las ventanas de congestión.

Tenga en cuenta que los tiempos de espera de retransmisión reducen implícitamente la ventana estableciendo el tamaño del umbral de inicio lento y se incluyen en el valor almacenado en el miembro CongSignals . Para minimizar las indicaciones de congestión falsa debido a segmentos desordenados, el miembro CongSignals se incrementa en asociación con el algoritmo De retransmisión rápida.

PreCongSumCwnd

Tipo: ULONG

Suma de los valores de la ventana de congestión, en bytes, capturadas cada vez que se recibe una señal de congestión.

Este miembro se actualiza cada vez que se incrementa el miembro CongSignals , de modo que el cambio en el miembro PreCongSumCwnd dividido por el cambio en el miembro CongSignals es la ventana media (en algún intervalo) justo antes de una señal de congestión.

PreCongSumRtt

Tipo: ULONG

Suma, en milisegundos, de la última muestra del tiempo de ida y vuelta de red (RTT) antes de las señales de congestión recibidas. El último ejemplo del RTT se almacena en el miembro SampleRtt .

El miembro PreCongSumRtt se actualiza cada vez que se incrementa el miembro CongSignals , de modo que el cambio en PreCongSumRtt dividido por el cambio en el miembro CongSignals es el RTT promedio (en algún intervalo) justo antes de una señal de congestión.

PostCongSumRtt

Tipo: ULONG

Suma, en milisegundos, de la primera muestra de la RTT de red (almacenada en el miembro SampleRtt ) después de cada señal de congestión.

El cambio en el miembro PostCongSumRtt dividido por el cambio en el miembro PostCongCountRtt es el RTT promedio (en algún intervalo) justo después de una señal de congestión.

PostCongCountRtt

Tipo: ULONG

Número de muestras rtT, en bytes, incluidas en el miembro PostCongSumRtt .

El cambio en el miembro PostCongSumRtt dividido por el cambio en el miembro PostCongCountRtt es el RTT promedio (en algún intervalo) justo después de una señal de congestión.

EcnSignals

Tipo: ULONG

Número de señales de congestión entregadas al remitente TCP a través de ECN.

Este suele ser el número de segmentos que contienen la congestión de eco

Bits experimentados (ECE), pero también incluye segmentos con errores en la comprobación de ecn nonce u otras señales de congestión explícitas.

EceRcvd

Tipo: ULONG

El número de segmentos recibidos con los encabezados IP que contienen marcas congestión experimentada (CE).

SendStall

Tipo: ULONG

Número de bloqueos de interfaz u otras limitaciones de recursos locales del remitente que se tratan como señales de congestión.

QuenchRcvd

Tipo: ULONG

Reservado para uso futuro. Este miembro siempre se establece en cero.

RetranThresh

Tipo: ULONG

Número de confirmaciones duplicadas necesarias para desencadenar La retransmisión rápida.

Tenga en cuenta que, aunque esto es constante en las implementaciones tradicionales de Reno TCP, es adaptable en muchas implementaciones TCP más recientes.

SndDupAckEpisodes

Tipo: ULONG

Número de Acks duplicados enviados cuando Ack anterior no se duplicaba. Este es el número de veces que se ha enviado una serie contigua de confirmaciones duplicadas.

Se trata de una indicación del número de segmentos de datos perdidos o reordenados en la ruta de acceso desde el punto de conexión TCP remoto al punto de conexión TCP cercano.

SumBytesReordered

Tipo: ULONG

Suma de los importes SND. UNA avanza en la confirmación que termina un episodio dup-ack sin retransmisión.

Observe que el cambio en el miembro SumBytesReordered dividido por el cambio en el miembro NonRecovDaEpisodes es una estimación de la distancia media de reordenación, en algún intervalo.

NonRecovDa

Tipo: ULONG

El número de acks duplicados (o SACKS) que no desencadenó una retransmisión rápida porque ACK avanzaba antes del número de confirmaciones duplicadas que alcanzaban el RetranThresh.

Tenga en cuenta que el cambio en el miembro NonRecovDa dividido por el cambio en el miembro NonRecovDaEpisodes es una estimación de la distancia media de reordenación en segmentos durante algún intervalo.

NonRecovDaEpisodes

Tipo: ULONG

Número de episodios de confirmación duplicados que no desencadenaron una retransmisión rápida porque ACK avanzaba antes del número de confirmaciones duplicadas que alcanzaban el RetranThresh.

AckAfterFr

Tipo: ULONG

Reservado para uso futuro. Este miembro siempre se establece en cero.

DsackDups

Tipo: ULONG

Número de segmentos duplicados notificados al host local por bloques D-SACK.

SampleRtt

Tipo: ULONG

La medida más reciente del tiempo de ida y vuelta de red sin procesar, en milisegundos, utilizada en el cálculo del temporizador de retransmisión (RTO).

SmoothedRtt

Tipo: ULONG

El tiempo de ida y vuelta suavizado, en milisegundos, utilizado en el cálculo del RTO.

RttVar

Tipo: ULONG

Variación del tiempo de ida y vuelta, en milisegundos, utilizada en el cálculo del RTO.

MaxRtt

Tipo: ULONG

Tiempo máximo de ida y vuelta muestreado en milisegundos.

MinRtt

Tipo: ULONG

Tiempo mínimo de ida y vuelta muestreado en milisegundos.

SumRtt

Tipo: ULONG

Suma de todos los tiempos de ida y vuelta muestreados en milisegundos.

Tenga en cuenta que el cambio en el miembro SumRtt dividido por el cambio en el miembro CountRtt es el RTT medio, promediado uniformemente en un intervalo de entrada.

CountRtt

Tipo: ULONG

Número de muestras de tiempo de ida y vuelta incluidas en el miembro SumRtt .

CurRto

Tipo: ULONG

Valor actual, en milisegundos, del temporizador de retransmisión.

MaxRto

Tipo: ULONG

Valor máximo, en milisegundos, del temporizador de retransmisión.

MinRto

Tipo: ULONG

Valor mínimo, en milisegundos, del temporizador de retransmisión.

CurMss

Tipo: ULONG

Tamaño máximo de segmento actual (MSS), en bytes.

MaxMss

Tipo: ULONG

MsS máximo, en bytes.

MinMss

Tipo: ULONG

MsS mínimo, en bytes.

SpuriousRtoDetections

Tipo: ULONG

Número de confirmaciones que notifican segmentos que ya se han retransmitido debido a un tiempo de espera de retransmisión.

Comentarios

La estructura TCP_ESTATS_PATH_ROD_v0 se usa como parte de la característica de estadísticas extendidas tcp disponible en Windows Vista y versiones posteriores.

El TCP_ESTATS_PATH_ROD_v0 se define como la versión 0 de la estructura para obtener información dinámica de solo lectura en la medida de la ruta de acceso de red para una conexión TCP. Esta información está disponible una vez establecida la conexión.

La estructura TCP_ESTATS_PATH_ROD_v0 se recupera mediante llamadas a las funciones GetPerTcp6ConnectionEStats o GetPerTcpConnectionEStats cuando TcpConnectionEstatsPath se pasa en el parámetro EstatsType . Es necesario habilitar las estadísticas de TCP extendidas para recuperar esta estructura.

La detección de MTU de ruta de acceso y el tamaño máximo del segmento se describen en detalle en la detección de MTU de IETF RFC 1191 en la detección de MTU de ruta de acceso. Para obtener más información, vea http://www.ietf.org/rfc/rfc1191.txt.

Los algoritmos de control de congestión TCP y control de congestión se describen en detalle en el RFC 2581 de IETF en el control de congestión TCP. Para obtener más información, vea http://www.ietf.org/rfc/rfc2581.txt.

SACK y una extensión a la opción SACK se describen en detalle en la opción RFC 2883 de IETF en una extensión a la opción de confirmación selectiva (SACK) para TCP. Para obtener más información, vea http://www.ietf.org/rfc/rfc2883.txt.

El temporizador de retransmisión TCP (RTO) y el tiempo de ida y vuelta suavizado (RTT) se describen en detalle en el temporizador de retransmisión de IETF RFC 2988 en el temporizador de retransmisión de TCP de computación. Para obtener más información, vea http://www.ietf.org/rfc/rfc2988.txt.

La notificación de congestión explícita en ip se describe en detalle en la RFC 2581 de IETF sobre la adición de notificación de congestión explícita (ECN) a la dirección IP. Para obtener más información, vea http://www.ietf.org/rfc/rfc3168.txt.

Los miembros de esta estructura se definen en el RFC de IETF en el MIB de estadísticas extendidas de TCP. Para obtener más información, vea http://www.ietf.org/rfc/rfc4898.txt.

A continuación se muestra la asignación de los miembros de la estructura TCP_ESTATS_PATH_ROD_v0 a las entradas definidas en RFC 4898 para las estadísticas de TCP extendidas:

Término Descripción
FastRetran tcpEStatsStackFastRetran
Timeouts tcpEStatsPerfTimeouts
Subtimeouts tcpEStatsStackSubsequentTimeouts
CurTimeoutCount tcpEStatsStackCurTimeoutCount
AbruptTimeouts tcpEStatsStackAbruptTimeouts
PktsRetrans tcpEStatsPerfSegsRetrans
BytesRetrans tcpEStatsPerfOctetsRetrans
DupAcksIn tcpEStatsStackDupAcksIn
SacksRcvd tcpEStatsStackSACKsRcvd
SackBlocksRcvd tcpEStatsStackSACKBlocksRcvd
CongSignals tcpEStatsPerfCongSignals
PreCongSumCwnd tcpEStatsPathPreCongSumCwnd
PreCongSumRtt tcpEStatsPathPreCongSumRTT
PostCongSumRtt tcpEStatsPathPostCongSumRTT
PostCongCountRtt tcpEStatsPathPostCongCountRTT
EcnSignals tcpEStatsPathECNsignals
EceRcvd tcpEStatsPathCERcvd
SendStall tcpEStatsStackSendStall
QuenchRcvd No hay ninguna asignación a este miembro.
RetranThresh tcpEStatsPathRetranThresh
SndDupAckEpisodes tcpEStatsPathDupAckEpisodes
SumBytesReordered tcpEStatsPathSumOctetsReordered
NonRecovDa tcpEStatsPathNonRecovDA
NonRecovDaEpisodes tcpEStatsPathNonRecovDAEpisodes
AckAfterFr No hay ninguna asignación a este miembro.
DsackDups tcpEStatsStackDSACKDups
SampleRtt tcpEStatsPathSampleRTT
SmoothedRtt tcpEStatsPerfSmoothedRTT
RttVar tcpEStatsPathRTTVar
MaxRtt tcpEStatsPathMaxRTT
MinRtt tcpEStatsPathMinRTT
SumRtt tcpEStatsPathSumRTT
CountRtt tcpEStatsPathCountRTT
CurRto tcpEStatsPerfCurRTO
MaxRto tcpEStatsPathMaxRTO
MinRto tcpEStatsPathMinRTO
CurMss tcpEStatsPerfCurMSS
MaxMss tcpEStatsStackMaxMSS
MinMss tcpEStatsStackMinMSS
SpuriousRtoDetections tcpEStatsStackSpuriousRtoDetected
 

La estructura TCP_ESTATS_FINE_RTT_ROD_v0 tiene miembros que proporcionan datos similares a los miembros RttVar, MaxRtt, MinRtt y SumRtt de la estructura TCP_ESTATS_PATH_ROD_v0. Sin embargo, el tiempo se notifica en microsegundos para los miembros similares de la estructura TCP_ESTATS_FINE_RTT_ROD_v0 .

Requisitos

Requisito Value
Cliente mínimo compatible Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2008 [solo aplicaciones de escritorio]
Encabezado tcpestats.h

Consulte también

GetPerTcp6ConnectionEStats

GetPerTcpConnectionEStats

TCP_ESTATS_FINE_RTT_ROD_v0

TCP_ESTATS_TYPE