Как стать автором
Обновить

Комментарии 12

Как по заказу!
Только дня четыре назад встала аналогичная задача — делим интернет с соседом.
Вот это называется «качественный сервис». А вы говорите «телепатов нет» :)
А разве это не решает поставленной задачи? Смотрите на картинку в разделе PCQ Rate Examples.
Да, я понимаю о чем вы, но к сожалению это действительно не решает поставленной задачи.
В теории конечно же все красиво и правильно при параметре pcq-rate=0, но на практике это выглядит приблизительно так:

Клиент 1 активно закачивает файл или торрент, и занимает всю полосу пропускания.
Клиент 2 пытается так же поставить на закачку что то тяжелое, тут возникает первая маленькая проблема, скорость разделения полосы путем удаления пакетов из очереди происходит не так быстро как хотелось бы, в итоге получаем небольшую потерю пакетов на втором клиенте которая проходит через 5-15 сек. А так же резкое увеличение времени пинга на первом клиенте. Частично эта проблема решаема с помощью Burst.
Далее канал начнет делится на двух пользователей, и если внимательно мониторить клиентов и очереди, можно увидеть нехорошую картину:
Для примера ширина канала 5 мегабит.
Первому пользователю, будет отведена скорость приблизительно 2,1-2,3 мегабита.
Второму пользователю, который только что подключился, будет выдано 2,7-2,9 мегабита.
Нечестно!
Данные скорости уравняются до честных пределов только через 5-10 минут! И это при довольно шустрой конфигурации.
В конфигурациях с 10 и более пользователями все выглядит еще более печально, особенно если к качкам добавить серферов и геймеров, последние первыми забьют тревогу при узком канале. Разработчики Router OS об этом прекрасно знают еще с версии 2.х но по прежнему ничего нового не могут, или не хотят делать. Но самое удивительное что правила с жестко заданными Max limit работают как часы, никаких висяков и провалов по скорости.
Я понимаю что мое решение не верх гениальности, т.к. с плюсами приходят и минусы в виде расточительного использования системных ресурсов, но альтернативного варианта, я к сожалению пока не нашел, или плохо искал :) На днях буду проверять RC7 возможно в этой версии будет что то более похожее на правильную реализацию pcq.
tc из iproute2 и его HTB разве не проще и быстрее настроить на обычном линуксе ?)
Не могу адекватно ответить на ваш вопрос, обычный линукс еще нужно немного знать, наверно для тех кто хорошо шарит в линуксе скорее всего проще и быстрее.
А для тех кто не шарит, и особо не хочет учится новому, проще и быстрее будет на микротике.
У каждого способа реализации есть свои плюсы и минусы, минус микротика можно наблюдать выше в качестве построения заборов, грабель и костылей.
Тем более что микротик это не только x86, но и routerboard и хочешь, не хочешь, а железка лежит и ее надо как то настроить.
Не хотите еще что-нить написать про некротик? Настройку QoS, например…
В принципе про QoS на микротике уже довольно много сказано на просторах всея интернета.
Ссылка на сайт с данными статьями есть в моем профиле.
Писать обязательно буду. В голове крутятся пара идей. Так же будет вторая версия данного поста после окончательного тестирования.
В доме делим интернет 3.2 мбит на 10 человек. У нас в Иркутске этот канал стоит 1900 р.!

Просто стоит модем Acorp Lan 422 на нем настроен шейпер вот так:


Настраивал не я и но делали по инструкции c форума Acorp.
В принципе работает. Но если, кто-то включает торренты пинг возрастает. Поэтому договрились днем не качать. Но бывает кто-то забывает и качает, ему ограничиваем порты, вот так:


Тогда у него вообще торренты не качаются.

Торренты можно качать с 2 до 10 am
Еще у нас есть внутренний ресурс с фильмами и т.п. с которого скорость 10 Мбит.
Поэтому шейпер вообще вырубается с помощью расширений для Firefox imcaros и my weekly browsing. Первое расширение — запись действий для снятия галки на странице настройки щейпера в модеме. Второе — запуск этого действия по-расписанию: в 2 и 10 am. Вот такое извращение. Может быть есть у кого идеи как это сделать менее извращенно? :)

Когда перейдем на оптику поставим комп-роутер и воспользуемся Microtic Router OS. А может быть есть железное решение, т.е. роутер, который хорошо динамически делаит канал? Может что посоветуете?
а у нас стоит 625 рублей (в пересчете) — 100 мегабит анлим

и какое это имеет отношение к статье?
Все будет зависеть от потребностей по передаче. Сколько мегабит планируете прокачивать через девайс?
Если железка слабая и нужно много прокачивать, начинайте изучать линукс.
Если железка будет мощной или поток небольшой, можно обойтись микротиком. Даже возможно на базе routerboard.
Что касается хардварных решений то были бы деньги а Cisco или ZyWall найдется. :)
Mangle, не знаю почему, но во всех примерах специалисты сначала маркируют соединение, а потом помечают в нем пакеты, может быть я не совсем понимаю всей глубины мысли, но не вижу в этом особого толка и помечаю пакеты сразу в общем потоке, т.к. каждое лишнее правило заметно тормозит систему.

Дело не в количестве правил, а в логике их обработки.

Без маркировки соединений каждое правило маркировки пакетов читает IP заголовок каждого пакета и пытается отобрать нужный по критериям. Если учесть, что критериев отбора для маркировки пакета может быть очень много, например при использовании address-list, то нагрузка на ЦП прогрессирует на глазах даже на небольшом объеме трафика.

Если сначала маркировать соединения, то в заголовок пакета нужно посмотреть лишь один раз, при установлении соединения (connection-state=new). Далее достаточно лишь сравнить метку соединения. Это намного менее затратная операция.

Обязательно следует пользоваться passthrough=no. Это поможет разгрузить ЦП даже больше, т.к. в этом случае пакету не приходится гулять по всему файерволу.
Зарегистрируйтесь на Хабре , чтобы оставить комментарий

Публикации

Истории