sleepycat |
|
Темы:
98
Сообщения:
3291
Участник с: 19 июля 2011
|
Доброго времени суток. Наконец-то познакомился (дошли руки и глаза) поближе с iptables. Вот сейчас возник ,чисто пока теоретический, вопрос, каким средством можно было бы распилить канал между юзерами на шлюзе с пингвином и iptables в качестве стандартного фаера. Интересен опыт, а также сама ликвидность вопроса. Поскольку не везде можно получить рабочий шейпер, не смотря на то, что как бы функционал заложен. Хочется услышать мнения именно нашего комунити, так как последнему я доверяю как себе -)
Лозунг у них был такой: "Познание бесконечности требует бесконечного времени". С этим я не спорил, но они делали из этого неожиданный вывод: "А потому работай не работай — все едино". И в интересах неувеличения энтропии Вселенной они не работали. (с)
|
kurych |
|
Темы:
0
Сообщения:
1394
Участник с: 06 ноября 2011
|
Это задача для tc. Хотя проще реализовывать ограничения с помощью squid. Тогда, хотя бы, логично: при ограниченном канале ставишь кеширующий прокси для экономии трафика и, как дополнение, делишь по определенным правилам этот слабый канальчик между пользователями. А если канал более-менее нормальный, то лучше не ограничивать отдельных пользователей нарезанными полосками. Лучше посмотреть в сторону приоритезации трафика. На мой взгляд это позволяет более полно использовать ресурсы канала. Тем не менее, по исходной задаче напоролся на один скрипт, который, похоже, реализует ее. А по QoS, если есть запал, можно начать с этой странички. |
sleepycat |
|
Темы:
98
Сообщения:
3291
Участник с: 19 июля 2011
|
здорого, мне как раз нужно по факту простенький шейпер по ip для борьбы с непонятливыми соседями, которые вопреки моим инструкциям могут врубить торрент на весь канал, что приведет не к смерти, но весьма сильному торможению остального трафика. В идеале хочется также как и на фряхе в свое время, чтобы канал открывался полностью если пользователь один и т.д., т.е. в случае отсутвия необходимости шейпинга канал предоставлялся по формуле приблизительной (заданный минимальный канал по правилам+свободные в данный момент каналы, приблизительно поровну разделенные между так скажем активными каналами , ес-но до момента когда места останется только для строго оговоренного минимального канала) qos, ну не знаю, уж слишком много НО и Если в этом, деле, но все равно будет полезно почитать. PS: Эх жалко скрипт не комментирован(просто не хвататет исходных данных примера), надо будет анализоровать и додумывать, но уже лучше чем ничего.) Записываю ссылки в блокнотик. Вопрос личный тогда еще , неужели сквид может мне помочь отрезать торренты, с приложениями типа загрузчиков, браузер, icq и пр. все ясно, и картинки(парсеры логов кальмара) там отличные , кто куда и зачем, а что насчет утилит, которые не поддерживают прокси или я чтото не допонял?
Лозунг у них был такой: "Познание бесконечности требует бесконечного времени". С этим я не спорил, но они делали из этого неожиданный вывод: "А потому работай не работай — все едино". И в интересах неувеличения энтропии Вселенной они не работали. (с)
|
shaman |
|
Темы:
26
Сообщения:
379
Участник с: 13 декабря 2009
|
ну торренты вещь очень хитрая, на nag.ru целая эпопея в 50 страниц была о том как его вырезать: http://forum.nag.ru/forum/index.php?showtopic=55025 просто замечательный шейпер на хешах на tc был тут: http://abills.net.ua/forum/viewtopic.php?f=6&t=5160 я его у себя в общаге использую, очень хорошо работает. а еще можете почитать тему здесь: viewtopic.php?f=16&t=4742&hilit=+%D1%88%D0%B5%D0%B9%D0%BF%D0%B5%D1%80 а пара замечаний сразу: 1) если делаете шейпер и используете метки - теряете в производительности, маркировка пакетов слабое место. лучше сразу фильтр сделать в tc. 2) squid проще, да, но опять теряем в производительности, плюс куча не нужных плюшек, которые могут просто мешать. тк они могут смотреть содержимое пакета, а нам это не надо. просто шейпер посмотрит только заголовок. 3) если вы будете работать с торрентами, то для них делайте не шейпер (sfq и прочее), а полисер, и причем максимально простой, те до своего класса пакет должен пройти минимум фильтров. разница в том, что шейпер копит пакеты в очереди если те приходят слишком быстро, а полисер тупо отбрасывает. торрент же такая вещь, которая срет тучей маленьких пакетов, и если шейпер, то нам надо много оперативки и хороший проц. 4) хеш фильтры работают быстрее обычных. 5) вы никогда полностью не вычистите торренты. делаете этакий низкоприоритетный класс и отправляете туда все что не попало в высокоприоритетный. |
vitok |
|
Темы:
13
Сообщения:
389
Участник с: 01 сентября 2008
|
Шейпить? Только htb.init (морда для tc) |
shaman |
|
Темы:
26
Сообщения:
379
Участник с: 13 декабря 2009
|
вот кстати этот htb.init я вам не советую юзать ;) когда я решал эту задачу (реализация шейпера) он показался мне слишком заумным и абсолютно не нужным, а когда понял синтаксис tc мое мнение ни сколько не поменялось :) tc сам по себе гораздо проще, да много писать придется, но для упрощения задачи можно картинку нарисовать с классами и подклассами, а по ней уже правила составлять. |
sleepycat |
|
Темы:
98
Сообщения:
3291
Участник с: 19 июля 2011
|
ок , наверно надо покурить будет с tc . всем спасибо, более менее направление нарисовалось в подсознании. Да и торренты мне не надо убивать, просто умерить их пыл и не более того.
Лозунг у них был такой: "Познание бесконечности требует бесконечного времени". С этим я не спорил, но они делали из этого неожиданный вывод: "А потому работай не работай — все едино". И в интересах неувеличения энтропии Вселенной они не работали. (с)
|
kirpichpda |
|
Темы:
17
Сообщения:
165
Участник с: 21 июля 2009
|
Shaman Пользуясь случаем хотелось бы попросить нормальный, вменяемый мануал по tc. Ибо я не пью, а без пол литра там не разобраться. |
shaman |
|
Темы:
26
Сообщения:
379
Участник с: 13 декабря 2009
|
я LARTC курил :) сначала перевод, а потом оригинал читал, где непонятно переведено было. поллитры в принципе достаточно :-D просто так читать смысла нет, нужно пример готовый разбирать, посмотрите темку на этом форуме, я ссылку выше давал, там тов. gard выкладывал шейперы по которым я разбирался как все это работает. ну и практика обязательно, и начинать надо с простых вещей. я даже помню как gard постоянно советовал упростить шейпер, что бы понять где косяк :) ну а суть не сложная, рисуете картинку с классами как оно должно быть, создаете корневую дисциплину, для каждого класса пишете команду tc, которая создаст нужный класс. На классы вешаете нужные дисциплины. в дисциплине же укажете скорости, потом пишите фильтры которые раскидают трафик по классам. выглядит вся структура в виде дерева. те в корне дисциплина, у корня подклассы, у подклассов дисциплина и свои подклассы у которых так же дисциплина. фильтры так же могут иметь родительский класс, те не обязательно все в корень бросать. |