SO_KEEPALIVE
Состояние параметра сокета SO_KEEPALIVE определяет, отправляются ли пакеты для поддержания активности в сокете, ориентированном на подключение. Этот параметр сокета применяется только к прослушивающим сокетам и сокетам, ориентированным на подключение.
Чтобы задать состояние этого параметра сокета, приложение WSK вызывает функцию WskControlSocket со следующими параметрами.
Параметр | Значение |
---|---|
RequestType |
WskSetOption |
ControlCode |
SO_KEEPALIVE |
Уровень |
SOL_SOCKET |
Размер входных данных |
sizeof(ULONG) |
InputBuffer |
Указатель на переменную типа ULONG, содержащую значение для нового состояния параметра сокета:
|
OutputSize |
0 |
OutputBuffer |
NULL |
OutputSizeReturned |
NULL |
Чтобы получить состояние этого параметра сокета, приложение WSK вызывает функцию WskControlSocket со следующими параметрами.
Параметр | Значение |
---|---|
RequestType |
WskGetOption |
ControlCode |
SO_KEEPALIVE |
Уровень |
SOL_SOCKET |
Размер входных данных |
0 |
InputBuffer |
NULL |
OutputSize |
sizeof(ULONG) |
OutputBuffer |
Указатель на переменную типа ULONG, которая получает значение состояния параметра сокета:
|
OutputSizeReturned |
NULL |
Приложение WSK должно указывать указатель на IRP при вызове функции WskControlSocket , чтобы задать или получить состояние параметра сокета SO_KEEPALIVE.
Состояние этого сокета по умолчанию заключается в том, что отправка пакетов отслеживания активности отключена.
Если этот параметр сокета включен для прослушивающего сокета, этот параметр включен по умолчанию для всех входящих подключений, принятых в этом сокете. Приложение WSK может вызывать функцию WskControlSocket в принятом сокете, чтобы переопределить состояние этого параметра сокета, унаследованного от сокета прослушивания.
Пакеты keep-alive отправляются базовым сетевым транспортом. Не все сетевые транспорты поддерживают отправку пакетов поддержания активности.
Дополнительные сведения об использовании пакетов для поддержания активности см. в разделе RFC 1122, раздел 4.2.3.6, "TCP Keep-Alives".
Требования
Версия |
Доступно в Windows Vista и более поздних версиях операционных систем Windows. |
Заголовок |
Ws2def.h (включая Wsk.h) |