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


Параметры сокета и ioCTLs

Некоторые параметры сокета для сокетов Windows 2 приведены в следующей таблице. Более подробные сведения приведены в разделе 4 в разделе WSPGetSockOpt и/или WSPSetSockOpt. Существуют другие новые варианты сокета для конкретного протокола, которые можно найти в приложении Protocol-Specific. Полный список параметров сокета для сокетов Windows доступен в справочнике по Winsock.

Сводка по некоторым из Ioctls Winsock см. в сводке посокета Ioctl Opcodes. Полный список ioCTLs Winsock доступны в справочнике по Winsock.

Сводка общих параметров сокета

Поставщик услуг Winsock должен распознать все эти параметры, и (для WSPGetSockOpt) возвращают правдоподобные значения для каждого. Значение по умолчанию для каждого параметра отображается в следующей таблице.

Ценность

Тип

Значение

По умолчанию

Заметка

SO_ACCEPTCONN

BOOL

Сокет прослушивает.

Значение FALSE, если WSPListen не выполнено.

SO_BROADCAST

BOOL

Сокет настроен для передачи и получения широковещательных сообщений.

ЛОЖНЫЙ

SO_DEBUG

BOOL

Отладка включена.

ЛОЖНЫЙ

(i)

SO_DONTLINGER

BOOL

Если значение true, параметр SO_LINGER отключен.

ИСТИННЫЙ

SO_DONTROUTE

BOOL

Маршрутизация отключена. Успешно, но игнорируется на сокетах AF_INET; завершается сбоем сокетов AF_INET6 с WSAENOPROTOOPT. Не поддерживается в сокетах ATM (приводит к ошибке).

ЛОЖНЫЙ

(i)

SO_ERROR

int

Извлекает состояние ошибки и очищает его.

0

SO_GROUP_ID

ГРУППА

Скрытный.

НЕДЕЙСТВИТЕЛЬНЫЙ

Получение только

SO_GROUP_PRIORITY

int

Скрытный.

0

SO_KEEPALIVE

BOOL

Отправляемые хранимые средства. Не поддерживается в сокетах ATM (приводит к ошибке).

ЛОЖНЫЙ

(i)

SO_LINGER

Структура задерживает

Возвращает текущие параметры затяжки.

значение l_onoff равно 0

SO_MAX_MSG_SIZE

int

Максимальный размер исходящего сообщения для типов сокетов сообщений. Нет подготовки для определения максимального размера входящего сообщения. Не имеет значения для сокетов, ориентированных на поток.

Зависимость от реализации

Получение только

SO_OOBINLINE

BOOL

Данные OOB получаются в обычном потоке данных.

ЛОЖНЫЙ

SO_PROTOCOL_INFOW

структура WSAPROTOCOL_INFO

Описание сведений о протоколе, привязанного к этому сокету.

Зависимый от протокола

Получение только

SO_RCVBUF

int

Общее пространство буфера сокета, зарезервированное для получения. Это не связано с SO_MAX_MSG_SIZE и не обязательно соответствует размеру окна получения TCP.

Зависимость от реализации

(i)

SO_REUSEADDR

BOOL

Адрес, к которому привязан этот сокет, можно использовать другими пользователями. Неприменимо к сокетам ATM.

ЛОЖНЫЙ

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 без использования значения.

 

параметры сокета

Параметры сокета SOL_SOCKET

Параметры сокета IPPROTO_TCP

Параметры сокета IPPROTO_UDP

IoCTLs Winsock