шейпинг

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

шейпинг

irix
Hello Openbsd,

 
Для оконечных очередей в hfsc и cbq шедулерах
Можно использовать red и rio обработку очереди.
Заметил что при использовании red очередь как правило стремиться к нулю. Т.е на стандартной 50ти пакетной очереди загрузка даже мелкими пакетами как правило не превышает 20-25 и почти моментально сбрасываеться до 4-9 штук.
При использовании rio ситуация противоположная заполненость стандартной очереди наоборот стремиться к наполнению. т.е в среднем идёт значение 35-43 иногда ненадолго доходит до 47-49 и сбрасываеться к 35-40.
Всё это проверял на скоростях 256 и 512.

Как должна в pf/altq рабоатть rio ???

ещё заметил что при использовании hfsc и red траффих идёт пилообразно когда тяну файло. Если вообще типы очередей не использовать или использовать rio то график ровный.

У cbq с точностью до наоборот с red и вообще без обработчика всё в порядке, а при rio пила на графике.

при каких расскладахи с какими шедулерами нужно использовать red, rio, и fifo ?

При каком типе траффика даёться максимальное заполнение очереди ?


Эксперимент проводил на OpenBSD 4.5, 4.4,current
--
Best regards,
 irix                          mailto:[hidden email]


Reply | Threaded
Open this post in threaded view
|

Re: шейпинг

Stanislav Kruchinin
irix wrote:

> Для оконечных очередей в hfsc и cbq шедулерах Можно использовать red и rio
> обработку очереди. Заметил что при использовании red очередь как правило
> стремиться к нулю. Т.е на стандартной 50ти пакетной очереди загрузка даже
> мелкими пакетами как правило не превышает 20-25 и почти моментально
> сбрасываеться до 4-9 штук. При использовании rio ситуация противоположная
> заполненость стандартной очереди наоборот стремиться к наполнению. т.е в
> среднем идёт значение 35-43 иногда ненадолго доходит до 47-49 и сбрасываеться
> к 35-40. Всё это проверял на скоростях 256 и 512.
>
> Как должна в pf/altq рабоатть rio ???

RIO = RED with In/Out bit, для пакетов с DiffServ-битами in и out применяются
отдельные дисциплины RED. По идее, это входящий и исходящий трафик. Детали можно
узнать из следующей статьи: http://nms.lcs.mit.edu/6829-papers/p362-clark.pdf

Здесь http://www.icir.org/floyd/red.html собрана масса статей по RED и его
вариациям. Читать не перечитать.

>
> ещё заметил что при использовании hfsc и red траффих идёт пилообразно когда
> тяну файло. Если вообще типы очередей не использовать или использовать rio то
> график ровный.
>
> У cbq с точностью до наоборот с red и вообще без обработчика всё в порядке, а
> при rio пила на графике.

Видимо, hfsc и cbq с разными задержками кладут пакеты в дочернюю очередь. Чтобы
избавиться от пилообразного поведения нужно увеличивать длину очереди, тогда red
не будет доходить до пороговых значений параметра заполнения, при которых
начинается отбрасывание пакетов.

>
> при каких расскладахи с какими шедулерами нужно использовать red, rio, и fifo
> ?

FIFO -- это элементарный алгоритм пересылки пакетов без какой либо приоритезации
и перестановки (первым пришел, первым ушел). Сравнивать его с RED некорректно,
RED нужно сравнивать с droptail (пакеты отбрасываются только тогда, когда
очередь забита под завязку). Предпочтительнее предотвращать переполнение очереди
с помощью red или rio, еще лучше не просто отбрасывать а применять ECN. Если это
шейпер на несколько тысяч пользователей, то чем проще краевая дисциплина, тем
лучше. Никакого RED не надо, главное снизить нагрузку на процессор.

> При каком типе траффика даёться максимальное заполнение очереди ?

Очевидно, при DoS-атаках на переполнение очереди маршрутизатора.