Книга: UNIX: разработка сетевых приложений
Задание и получение класса трафика
Задание и получение класса трафика
Объект вспомогательных данных IPV6_TCLASS
задает класс трафика для дейтаграммы. Элемент cmsg_level
структуры cmsghdr
, содержащей эти данные, будет равен IPPROTO_IPV6
, элемент cmsg_type
будет равен IPV6_TCLASS
, а первый байт данных будет первым байтом целочисленного (4-байтового) значения класса трафика (см. рис. 22.5). Согласно разделу А.3, класс трафика состоит из полей DSCP
и ECN
. Эти поля должны устанавливаться одновременно. Ядро может маскировать или игнорировать указанное пользователем значение, если ему это нужно (например, если ядро реализует ECN
, оно может установить биты ECN
равными какому-либо значению, игнорируя два бита, указанных с параметром IPV6_TCLASS
). Класс трафика обычно лежит в диапазоне 0–255. Значение -1 говорит ядру о необходимости использовать значение по умолчанию.
Чтобы задать класс трафика для пакета, нужно отправить вспомогательные данные вместе с этим пакетом. Чтобы задать класс трафика для всех пакетов, отправляемых через сокет, необходимо использовать параметр сокета IPV6_TCLASS
(раздел 27.7). Класс трафика для принятого пакета возвращается функцией recvmsg
во вспомогательных данных, только если приложение включило параметр сокета IPV6_RECVTCLASS
.
- 3.4. Отношения между классами
- Получение статистики
- Оптимизация сетевого трафика
- Задание a1 для исполнителя Робот
- Домашнее задание
- Получение помощи
- Получение помощи по работе с книгой и компакт-диском
- Получение помощи по Windows SharePoint Services 3.0
- Задание
- Получение доменного имени
- 2.3.6. Задание объектов физической памяти
- 4.8. Получение прав root