Параметры сокета и ioCTLs
Некоторые параметры сокета для сокетов Windows 2 приведены в следующей таблице. Более подробные сведения приведены в разделе 4 в разделе WSPGetSockOpt и/или WSPSetSockOpt. Существуют другие новые варианты сокета для конкретного протокола, которые можно найти в приложении для конкретного протокола. Полный список параметров сокета для сокетов Windows доступен в справочнике по Winsock.
Сводка по некоторым из Ioctls Winsock см. в разделе "Сводка ioctl Opcodes сокетов". Полный список IOCTLs Winsock доступен в справочнике по Winsock.
Сводка общих параметров сокета
Поставщик услуг Winsock должен распознать все эти параметры и (для WSPGetSockOpt) возвращать правдоподобные значения для каждого. Значение по умолчанию для каждого параметра отображается в следующей таблице.
Значение
Тип
Значение
По умолчанию
Примечание.
SO_ACCEPTCONN
BOOL
Сокет прослушивает.
ЗНАЧЕНИЕ FALSE, если не выполнен WSPListen.
SO_BROADCAST
BOOL
Сокет настроен для передачи и получения широковещательных сообщений.
FALSE
SO_DEBUG
BOOL
Отладка включена.
FALSE
(i)
SO_DONTLINGER
BOOL
Если значение true, параметр SO_LINGER отключен.
TRUE
SO_DONTROUTE
BOOL
Маршрутизация отключена. Успешно, но игнорируется на сокетах AF_INET; не удается выполнить AF_INET6 сокеты с WSAENOPROTOOPT. Не поддерживается в сокетах ATM (приводит к ошибке).
FALSE
(i)
SO_ERROR
INT
Извлекает состояние ошибки и очищает его.
0
SO_GROUP_ID
ГРУППА
Зарезервировано.
NULL
Получение только
SO_GROUP_PRIORITY
INT
Зарезервировано.
0
BOOL
Отправляемые хранимые средства. Не поддерживается в сокетах ATM (приводит к ошибке).
FALSE
(i)
SO_LINGER
Структура задерживает
Возвращает текущие параметры затяжки.
значение l_onoff равно 0
SO_MAX_MSG_SIZE
INT
Максимальный размер исходящего сообщения для типов сокетов сообщений. Нет подготовки для определения максимального размера входящего сообщения. Не имеет значения для сокетов, ориентированных на поток.
Зависимость от реализации
Получение только
SO_OOBINLINE
BOOL
Данные OOB получаются в обычном потоке данных.
FALSE
SO_PROTOCOL_INFOW
Описание сведений о протоколе, привязанного к этому сокету.
Зависимый от протокола
Получение только
SO_RCVBUF
INT
Общее пространство буфера сокета, зарезервированное для получения. Это не связано с SO_MAX_MSG_SIZE и не обязательно соответствует размеру окна получения TCP.
Зависимость от реализации
(i)
SO_REUSEADDR
BOOL
Адрес, к которому привязан этот сокет, можно использовать другими пользователями. Неприменимо к сокетам ATM.
FALSE
SO_SNDBUF
INT
Общее пространство буфера сокета, зарезервированное для отправки. Это не связано с SO_MAX_MSG_SIZE и не обязательно соответствует размеру окна отправки TCP.
Зависимость от реализации
(i)
SO_TYPE
INT
Тип сокета (например, SOCK_STREAM).
Как было создано через сокет.
PVD_CONFIG
char FAR *
Непрозрачный объект структуры данных, содержащий сведения о конфигурации поставщика услуг.
Зависимость от реализации
TCP_NODELAY
BOOL
Отключить алгоритм Nagle для отправки объединенных пакетов.
Зависимость от реализации
(i) Поставщик услуг может автоматически игнорировать этот параметр в WSPSetSockOpt и возвращать константное значение для WSPGetSockOpt или принимать значение для WSPSetSockOpt и возвращать соответствующее значение в WSPGetSockOpt без использования значения каким-либо образом.
См. также