Книга: UNIX: разработка сетевых приложений
Параметр сокета IP_TOS
Параметр сокета IP_TOS
Этот параметр позволяет нам устанавливать поле тип службы (тип сервиса) (TOS, type-of-service) (рис. А.1) в заголовке IP для сокета TCP или UDP. Если мы вызываем для этого сокета функцию getsockopt, возвращается текущее значение, которое будет помещено в поля DSCP и ECN заголовка IP (по умолчанию значение нулевое). Не существует способа извлечь это значение из полученной дейтаграммы IP.
Приложение может установить DSCP равным одному из значений, о которых существует договоренность с провайдером. Каждому значению соответствует определенный тип обслуживания, например IP-телефонии требуется низкая задержка, а передачи больших объемов данных требуют повышенной пропускной способности. Документ RFC 2474 [82] определяет архитектуру diffserv, которая обеспечивает лишь ограниченную обратную совместимость с историческим определением поля TOS (RFC 1349 [5]). Приложения, устанавливающие параметр IP_TOS
равным одной из констант, определенных в файле <netinet/ip.h>
(например, IPTOS_LOWDELAY
или IPTOS_THROUGHPUT
), должны вместо этого использовать различные значения DSCP. Архитектура diffserv сохраняет только два значения (6 и 7, что соответствует константам IPTOS_PREC_NETCONTROL
и IPTOS_PREC_INTERNETCONTROL
), так что только те приложения, которые используют именно эти константы, будут работать в сетях diffserv.
Документ RFC 3168 [100] определяет поле ECN. Приложениям рекомендуется предоставлять установку этого поля ядру и сбрасывать в нуль два младших бита значения, заданного IP_TOS
.
- Параметр сокета IP_RECVIF
- Параметр сокета IP_OPTIONS
- 6.5.13. Действие TOS
- Параметр сокета IP_RECVDSTADDR
- 7.6. Параметры сокетов IPv4
- Основные параметры ЭЛТ-мониторов
- Безопасность внешних таблиц. Параметр EXTERNAL FILE DIRECTORY
- Единое имя файла параметров InterBase
- Параметры конфигурационного файла InterBase
- Параметры в ibconfig
- Показания к изменению параметра