LINUX.ORG.RU
ФорумAdmin

Деление канала между пользователями.

 ,


0

5

Всем доброго времени суток! Недавно встал вопрос такого характера. Есть сеть, пользователей сети около 14, есть выход в интернет, 1 белый адрес, канал 100мб/с. Как сделать так, чтобы канал делился поровну, если пользователей 12, то 100/12 по 8мб/с каждому, если пользователей больше, то соответственно канал уменьшаем у каждого. А то есть у нас любители потокового видео, торрентов, грузим канал и сеть падает. Можно конечно tcpdump на сервере включить и посмотреть от кого пакеты идут, ну мне кажется проблему можно решить способом выше или я ошибаюсь?

купить роутер,
ваш вахтенный КО.

Deleted ()

В кач-ве плацебо можно tc qdisc add dev $IF root sfq perturb 10 А так вам уже написали выше... курим iproute2

anc ★★★★★ ()
Ответ на: комментарий от alestro

Но squid будет безбожно тормозить на шейпинге https. А при помощи того же htb задача очень хорошо решается

anonymous ()
Ответ на: комментарий от theurs

Ну то есть вот же есть конкретный запрос, поделить канал ХХХмбит на ХХ хостов так чтоб один хост мог сожрать все 100мбит если никто больше интернет не использует а если кто то еще использует то поделить поровну.

Что то подобное как мне кажется должно использоваться везде по дефолту. Должен быть простой рецепт.

theurs ()

чтобы канал делился поровну, если пользователей 12, то 100/12 по 8мб/с каждому, если пользователей больше, то соответственно канал уменьшаем у каждого.

Нехороший метод, много канала будет просто не использоваться и все в итоге будут недовольны. Балансировку надо умнее делать.

Bfgeshka ★★★★★ ()
Ответ на: комментарий от theurs

На htb.init уже дали ссылку, но в целом настраивать шейпинг в линуксе не так уж и просто.

Если нестандартная конфигурация, какие-нибудь виртуальные интерфейсы и нужен шейпинг в обе стороны - вообще непросто.

Я как-то не выдержал и написал шейпер в юзерспейсе: https://habrahabr.ru/post/310242/ . Он не очень производительный, но просто настраивается (нужно собрать/запустить программу и добавить правило в iptables) и работает не в лоб, простым делением полос, а хитрее. Считает приоритеты, если например трафика между двумя хостами много (кто-то льет потоком видео или торрент), то повышается вероятность того что именно этот трафик отбросится.

Бонусом идет рисовалка загрузки, почти в реальном времени показывает сколько через него прошло/отброшено байт или пакетов.

Если в качестве роутера стоит более-менее нормальная железка, должен без проблем потянуть 100М и 14 пользователей, но гарантировать конечно не могу.

Deleted ()
Ответ на: комментарий от Deleted

Блин, как удобно сделана на лоре правка своих сообщений.

Хотел дописать что если не получится с ядерными шейперами, можете попробовать такой, юзерспейсный. Было бы интересно получить фидбек (пусть и негативный), может что-то исправил бы в своем шейпере

Deleted ()
Ответ на: комментарий от AnonimS

Можешь посмотреть в сторону FreeBSD ipfw он умеет шепер также можно портировать ipfw в Linux читай документацию по настройке

rootmaster ()

pfSense проще не бывает, или htb.init

anonymous ()

В итоге - что решил, как реализовал, поделись ?

dispancer ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.