# 7. Управление перегрузками

```
Когда всё плохо, приоритет обработки следует отдать более важному трафику. Важность каждого пакета определяется на этапе классификации.
```

Но что такое плохо?\
Необязательно все буферы должны быть забиты, чтобы приложения начали испытывать проблемы.\
Самый простой пример — голосовые пакетики, которые толпятся за большими пачками крупных пакетов приложения, скачивающего файл.\
Это увеличит задержку, испортит джиттер и, возможно, вызовет отбрасывания.\
То есть мы имеем проблемы с обеспечением качественных услуг при фактическом отсутствии перегрузок.\
Эту проблему призван решить механизм управления перегрузками (Congestion Management).\
Трафик разных приложений разделяется по очередям, как мы уже видели выше.\
Вот только в результате всё снова должно слиться в один интерфейс. Сериализация всё равно происходит последовательно.\
Каким же образом разным очередям удаётся предоставлять различный уровень сервисов?\
По-разному изымать пакеты из разных очередей.\
Занимается этим **диспетчер** (**schedler**).

```
Мы рассмотрим большинство существующих сегодня диспетчеров, начиная с самого простого:
```

* \*\*\*\*[**FIFO**](https://almukhametov.gitbook.io/sdsm/15.-qos/7.-upravlenie-peregruzkami-congestion-management/fifo-first-in-first-out) — только одна очередь, все в BE, С — несправедливость.
* \*\*\*\*[**PQ**](https://almukhametov.gitbook.io/sdsm/15.-qos/7.-upravlenie-peregruzkami-congestion-management/pq-priority-queuing) — дорогу олигархам, холопы уступают.
* \*\*\*\*[**FQ**](https://almukhametov.gitbook.io/sdsm/15.-qos/7.-upravlenie-peregruzkami-congestion-management/fq-fair-queuing) — все равны.
* \*\*\*\*[**RR**](https://almukhametov.gitbook.io/sdsm/15.-qos/7.-upravlenie-peregruzkami-congestion-management/rr-round-robin) **-** все равны только на бумаге
* **WFQ, DWRR** — все равны, но некоторые ровнее.
