Поделиться через


Перечисление TCPSTATE (mstcpip.h)

Перечисление TCPSTATE сокетов Windows указывает возможные состояния tcp-подключения.

Синтаксис

typedef enum _TCPSTATE {
  TCPSTATE_CLOSED,
  TCPSTATE_LISTEN,
  TCPSTATE_SYN_SENT,
  TCPSTATE_SYN_RCVD,
  TCPSTATE_ESTABLISHED,
  TCPSTATE_FIN_WAIT_1,
  TCPSTATE_FIN_WAIT_2,
  TCPSTATE_CLOSE_WAIT,
  TCPSTATE_CLOSING,
  TCPSTATE_LAST_ACK,
  TCPSTATE_TIME_WAIT,
  TCPSTATE_MAX
} TCPSTATE;

Константы

 
TCPSTATE_CLOSED
TCP-подключение вообще не имеет состояния подключения. Это состояние представляет состояние, когда отсутствует блок управления передачей (TCB), и, следовательно,
нет подключения.
TCPSTATE_LISTEN
TCP-подключение ожидает запроса на подключение с любого удаленного сервера
TCP и порт.
TCPSTATE_SYN_SENT
— TCP-подключение ожидает соответствующего запроса на подключение.
после отправки запроса на подключение.
TCPSTATE_SYN_RCVD
TCP-подключение ожидает подтверждения, которое подтверждает подключение.
запрос после получения и отправки
запрос на подключение.
TCPSTATE_ESTABLISHED
TCP-подключение является открытым, поэтому полученные данные могут быть
доставляется пользователю. Это нормальное состояние для этапа передачи данных
соединения.
TCPSTATE_FIN_WAIT_1
TCP-подключение ожидает запроса на завершение подключения
из удаленного TCP или подтверждения ранее отправленного запроса для завершения подключения.
TCPSTATE_FIN_WAIT_2
TCP-подключение ожидает запроса на завершение подключения
из удаленного TCP.
TCPSTATE_CLOSE_WAIT
TCP-подключение ожидает запроса на завершение подключения
от локального пользователя.
TCPSTATE_CLOSING
TCP-подключение ожидает подтверждения запроса, чтобы завершить подключение из удаленного TCP.
TCPSTATE_LAST_ACK
TCP-подключение ожидает подтверждения запроса на завершение подключения, которое ранее было отправлено на удаленный TCP, включая подтверждение его запроса на завершение подключения.
TCPSTATE_TIME_WAIT
TCP-подключение ожидает достаточно времени, чтобы убедиться в том, что
удаленный TCP получил подтверждение своего запроса на завершение подключения.
TCPSTATE_MAX
Максимальное значение перечисления TCPSTATE .

Комментарии

TCP-подключение переходит из одного состояния в другое в ответ на события. Событиями являются вызовы OPEN, SEND, RECEIVE, CLOSE, ABORT и STATUS; входящие сегменты, особенно содержащие флаги SYN, ACK, RST и FIN; и время ожидания.

Дополнительные сведения о состояниях подключения TCP см. в статье RFC 793.

Требования

Требование Значение
Минимальная версия клиента Windows 10, версия 1703 [только классические приложения]
Минимальная версия сервера Windows Server 2016 [только классические приложения]
Верхняя часть mstcpip.h

См. также раздел

SIO_TCP_INFO

TCP_INFO_v0