3.1.3. Служба контроля трафика
Этот сервис обеспечивает возможность генерации, запроса и прослушивания событий, связанных с контролем трафика. Эта служба включает дисциплины очередей (планировщики и алгоритмы обслуживания очередей — например, планировщики на основе уровней приоритета или алгоритм RED) и классификаторы трафика. Система управления трафиком в Linux обеспечивает высокий уровень гибкости о поддерживает иерархическое каскадирование различных блоков для совместного использования ресурсов каналов передачи трафика.
++ ++ +-----+ +-------+ ++ ++ .++
|| . || +------+ | |-->| Qdisc |-->|| || ||
|| ||---->|Фильтр|--->|Класс| +-------+ ||-+ || ||
|| || | +------+ | +---------------+| | || ||
|| . || | +----------------------+ | || .||
|| . || | +------+ | || ||
|| || +->|Фильтр|-_ +-----+ +-------+ ++ | || .||
|| -->|| | +------+ ->| |-->| Qdisc |-->|| | ||->||
|| . || | |Класс| +-------+ ||-+-->|| .||
->dev->|| || | +------+ _->| +---------------+| || ||
|| || +->|Фильтр|- +----------------------+ || .||
|| || +------+ || .||
|| . |+----------------------------------------------+| ||
|| | Родительская дисциплина очередей | .||
|| . +------------------------------------------------+ .||
|| . . .. . . .. . . . .. .. .. . .. ||
|+--------------------------------------------------------+|
| Родительская дисциплина очередей |
| (связана с выходным устройством) |
+----------------------------------------------------------+
На приведенном рисунке показана пример схемы выходного блока TC. В этом документе приводится весьма краткое рассмотрение этого вопроса; дополнительную информацию можно найти на сайте [11]. Пакет сначала проходит через фильтр, используемый для идентификации класса трафика, к которому может быть отнесен данный пакет. Термин «класс» относится к дисциплинам очередей и связан с конкретной очередью. Очередь может использовать простой алгоритм (например, FIFO) или более сложные механизмы типа RED или token bucket. Дисциплину очереди, наиболее удаленную от родительской дисциплины, обычно называют планировщиком. В показанной здесь иерархии планировщик может включать различные алгоритмы планирования, что делает системы управления трафиком на выходе в ОС Linux очень гибкими.