структура TCP_INFO_v1 (mstcpip.h)
Содержит статистику протокола TCP, собранную для сокета. В версии 1.0 этой структуры предоставляются дополнительные поля.
Синтаксис
typedef struct _TCP_INFO_v1 {
TCPSTATE State;
ULONG Mss;
ULONG64 ConnectionTimeMs;
BOOLEAN TimestampsEnabled;
ULONG RttUs;
ULONG MinRttUs;
ULONG BytesInFlight;
ULONG Cwnd;
ULONG SndWnd;
ULONG RcvWnd;
ULONG RcvBuf;
ULONG64 BytesOut;
ULONG64 BytesIn;
ULONG BytesReordered;
ULONG BytesRetrans;
ULONG FastRetrans;
ULONG DupAcksIn;
ULONG TimeoutEpisodes;
UCHAR SynRetrans;
ULONG SndLimTransRwin;
ULONG SndLimTimeRwin;
ULONG64 SndLimBytesRwin;
ULONG SndLimTransCwnd;
ULONG SndLimTimeCwnd;
ULONG64 SndLimBytesCwnd;
ULONG SndLimTransSnd;
ULONG SndLimTimeSnd;
ULONG64 SndLimBytesSnd;
} TCP_INFO_v1, *PTCP_INFO_v1;
Члены
State
Содержит статистику протокола TCP, собранную для сокета.
Mss
Текущий максимальный размер сегмента (MSS) для соединения в байтах.
ConnectionTimeMs
Время существования соединения в миллисекундах.
TimestampsEnabled
Значение TRUE , если для подключения включены метки времени TCP; в противном случае — FALSE.
RttUs
Текущее предполагаемое время кругового пути для соединения в микросекундах.
MinRttUs
Минимальное время кругового пути выборки в микросекундах.
BytesInFlight
Текущее число отправленных байтов, которые являются непризнанными.
Cwnd
Размер текущего окна перегрузки в байтах.
SndWnd
Размер окна отправки (SND. WND в RFC 793), в байтах.
RcvWnd
Размер окна получения (RCV. WND в RFC 793), в байтах.
RcvBuf
Размер текущего буфера приема в байтах. Размер буфера приема динамически изменяется при включенной автоматической настройке для окна получения.
BytesOut
Общее число отправленных байтов.
BytesIn
Общее количество полученных байтов.
BytesReordered
Общее количество байтов, переупорядоченных.
BytesRetrans
Общее число байтов, которые были перенаресованы.
FastRetrans
Количество вызовов алгоритма быстрой повторной передачи.
DupAcksIn
Общее количество полученных повторяющихся подтверждений.
TimeoutEpisodes
Общее количество эпизодов времени ожидания повторной передачи. Каждый эпизод может состоять из нескольких тайм-аутов.
SynRetrans
Общее количество повторно переначисленных флагов элементов управления синхронизацией (SYN).
SndLimTransRwin
Количество переходов в состояние "Получатель ограничен" из состояний "Перегрузка ограничен" или "Ограниченно отправителей".
SndLimTimeRwin
Совокупное время в миллисекундах, затраченное в состоянии "Получатель ограничен", когда передача TCP останавливается, так как отправитель заполнил окно объявленного получателя.
SndLimBytesRwin
Общее количество байтов, отправленных в состоянии "Получатель ограничен".
SndLimTransCwnd
Количество переходов в состояние "Перегрузка ограничена" из состояний "Получатель ограничен" или "Ограниченно отправителей".
SndLimTimeCwnd
Совокупное время в миллисекундах, затраченное в состоянии "Перегрузка ограничена". При истечении времени ожидания повторной передачи оно учитывается в этом элементе, а не в совокупном времени для какого-то другого состояния.
SndLimBytesCwnd
Общее количество байтов, отправленных в состоянии "Перегрузка ограничена".
SndLimTransSnd
Количество переходов в состояние Sender Limited из состояний Receiver Limited или Congestion Limited.
SndLimTimeSnd
Совокупное время в миллисекундах, затраченное в состоянии "Sender Limited".
SndLimBytesSnd
Общее количество байтов, отправленных в состоянии "Sender Limited".
Комментарии
Чтобы получить экземпляр этой структуры, вызовите функцию WSAIoctl или LPWSPIoctl с кодом элемента управления SIO_TCP_INFO . Укажите значение 1 в поле lpvInBuffer , чтобы получить версию версии 1 этой структуры.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | сборка Windows 10 20348 |
Минимальная версия сервера | сборка Windows 10 20348 |
Верхняя часть | mstcpip.h |