Шрифт:
Таблица 7.2. Параметры сокетов транспортного уровня
Level | optname | get | set | Описание | Флаг | Тип данных |
---|---|---|---|---|---|---|
IPPROTO_TCP | TCP_MAXSEG | • | • | Максимальный размер сегмента TCP | int | |
TCP_NODELAY | • | • | Отключает алгоритм Нагла | • | int | |
IPPROTO_SCTP | SCTP_ADAPTION_LAYER | • | • | Указание на уровень адаптации | sctp_setadaption | |
SCTP_ASSOCINFO | + | • | Получение и задание сведений об ассоциации | sctp_assocparamms{} | ||
SCTP_AUTOCLOSE | • | • | Автоматическое закрытие | int | ||
SCTP_DEFAULT_SEND_PARAM | • | • | Параметры отправки но умолчанию | sctp_sndrcvinfo{} | ||
SCTP_DISABLE_FRAGMENTS | • | • | Фрагментация SCTP | • | int | |
SCTP_EVENTS | • | • | Уведомление об интересующих событиях | sctp_event_subscribe{} | ||
SCTP_GET_PEER_ADDR_INFO | + | Получение состояния адреса собеседника | sctp_paddrinfo{} | |||
SCTP_I_WANT_MAPPED_V4_ADDR | • | • | Отображение адресов IPv4 | • | int | |
SCTP_INITMSG | • | • | Параметры пакета INIT по умолчанию | sctp_initmsg{} | ||
SCTP_MAXBURST | • | • | Максимальный размер набора пакетов | int | ||
SCTP_MAXSEG | • | • | Максимальный размер фрагментации | int | ||
SCTP_NODELAY | • | • | Отключение алгоритма Нагла | • | int | |
SCTP_PEER_ADDR_PARAMS | + | • | Параметры адреса собеседника | sctp_paddrparams{) | ||
SCTP_PRIMARY_ADDR | + | • | Основной адрес назначения | sctp_setprim{} | ||
SCTP_RTOINFO | + | • | Информация RTO | sctp_rtoinfo{} | ||
SCTP_SET_PEER_PRIMARY_ADDR | • | Основной адрес назначения собеседника | sctp_setpeerprim{} | |||
SCTP_STATUS | + | Получение сведений о статусе ассоциации | sctp_status{} |
Существует два основных типа параметров: двоичные параметры, включающие или отключающие определенное свойство (флаги), и параметры, получающие и возвращающие значения параметров, которые мы можем либо задавать, либо проверять. В колонке «Флаг» указывается, относится ли параметр к флагам. Для флагов при вызове функции
getsockopt
аргумент *optval
является целым числом. Возвращаемое значение *optval
нулевое, если параметр отключен, и ненулевое, если параметр включен. Аналогично, функция setsockopt
требует ненулевого значения *optval
для включения параметра, и нулевого значения — для его выключения. Если в колонке «Флаг» не содержится символа «•», то параметр используется для передачи значения заданного типа между пользовательским процессом и системой.