For the complete documentation index, see llms.txt. This page is also available as Markdown.

Traffic Shaping

Шейпинг ограничивает скорость путём буферизации лишнего трафика. Весь приходящий трафик проходит через буфер. Шейпер из этого буфера с постоянной скоростью изымает пакеты.

Если скорость поступления пакетов в буфер ниже выходной, они в буфере не задерживаются — пролетают насквозь. А если скорость поступления выше выходной, они начинают скапливаться. Выходная скорость при этом всегда одинакова. Таким образом всплески трафика складываются в буфер и будут отправлены, когда до них дойдёт очередь. Поэтому наряду с диспетчеризацией в очередях, шейпинг — второй инструмент, делающий вклад в совокупную задержку.

На иллюстрации хорошо видно, как пакет, пришедший буфер в момент времени t2, на выходе оказывается в момент t3. t3-t2 — это задержка, вносимая шейпером. Шейпер обычно применяется к исходящему трафику. Так выглядит профиль после шейпера.

Название «Shaping» говорит о том, что инструмент придаёт профилю трафика форму, сглаживая его. Главное достоинство такого подхода — оптимальное использование имеющейся полосы — вместо дропа чрезмерного трафика, мы его откладываем.

Главный недостаток — непредсказуемая задержка — при заполнении буфера, пакеты будут томиться в нём долго. Поэтому не для всех типов трафика шейпинг хорошо подходит. Shaping использует механизм Leaky Bucket.

Last updated