Автор Тема: Помощ за tc  (Прочетена 804 пъти)

PERMANENT

  • Напреднали
  • *****
  • Публикации: 94
    • Профил
Помощ за tc
« -: Feb 13, 2007, 20:35 »
Знам че по този проблем е писано много и на различни места но от това идва и проблема ми.Доставям нет на една малка мрежа и както винаги се налага  да се намери начин за ограничаване на трафика за да може всички да ползват нет с еднаква скорост.Реших да се пробвам да направя shaper които да реши проблема.Намерих в google доста интерести работи за tc(traffic control) но повечето от които се разминаваха
и точно за това се налага да експерементирам на сляпо.Както винаги това почти никога не дава резултак за това се налага да търся помощ
от хора които знаят повече от мен.Пробвах до огранича нета на даден потребител така

tc qdisc add dev eth0 root handle 1: cbq bandwidth 1Mbit cell 8 avpkt 1000 mpu 64

tc class add dev eth0 parent 1:0 classid 1:1 cbq bandwidth 1Mbit rate 1MBit allot 1514 cell 8 weight 1Mbit prio 8 maxburst 20 avpkt 1000

пример за потребител 1
tc class add dev eth0 parent 1:1 classid 1:2 cbq bandwidth 256Kbit rate 128Kbit allot 1514 cell 8 weight 100Kbit prio 10 maxburst 20 avpkt 1000 split 1:0

пример за потребител 2
tc class add dev eth0 parent 1:1 classid 1:3 cbq bandwidth 256Kbit rate 128Kbit allot 1514 cell 8 weight 100Kbit prio 11 maxburst 20 avpkt 1000 split 1:0

и сега главния ми проблем е че не знам какво точно да правя после
нещо от рода на това
ip route add  user1-ip via router-ip flow 1:2
при което ми връща
Error: either "to" is duplicate, or "flow" is a garbage.
или нещо от този род

iptables -t mangle -A POSTROUTING -j CLASSIFY --set-class 1:2

но просто нищо не става все едно нищо не съм правил.Ще се радвам някои да даде малко напътствия и мерси придварително
Активен

neter

  • Global Moderator
  • Напреднали
  • *****
  • Публикации: 3408
  • Distribution: Debian, SailfishOS, CentOS
  • Window Manager: LXDE, Lipstick
    • Профил
    • WWW
Помощ за tc
« Отговор #1 -: Feb 13, 2007, 22:08 »
Пробвай това
http://linux-bg.org/cgi-bin....9308581
Ще ти помогне, докато научиш traffic control-а. Ама не го използвай на сляпо. Разгледай за какво става дума, за да схванеш какво се случва. Тук има и една надстройка за FlatTC-то
http://linux-bg.org/cgi-bin....9884148
макар, че аз него не успях да го разуча съвсем, а и си мисля, че трафик контрол без маркиране само с 1 машина е трудна работа да се постигне. Но... и аз имам още много да уча по темата  '<img'>
Активен

"Да си добре приспособен към болно общество не е признак за добро здраве" - Джиду Кришнамурти

PERMANENT

  • Напреднали
  • *****
  • Публикации: 94
    • Профил
Помощ за tc
« Отговор #2 -: Feb 13, 2007, 22:43 »
FlatTC-то е хубаво скриптче само дето трябва да прекомпелирам кернела
да подържа ipset и ipmark.Аз лично нямах проблеми с ipset-a но ipmark-а
ми създаваше големи главоболия.Утре може да пуста една подробна тема туковиж се намери решение
Активен

VladSun

  • Напреднали
  • *****
  • Публикации: 2166
    • Профил
Помощ за tc
« Отговор #3 -: Feb 14, 2007, 11:20 »
@PERMANENT
Единственото главоболие, което създава IPMARK-a е, че PoM екипът реши, че IPMАRK няма да е вече към PoM пакетът. Т.е. или трябва да си пачнеш кернела отделно за IPMARK или да си свалиш по-стар PoM, където IPMARK все още присъства. Има и още едно решение - да ползваш FlatTC с IPCLASSIFY пача - тогава IPMARK не ти трябва изобщо.

@neter
':p' Защо мислиш, че има проблем, ако не се маркират пакетите? '<img'>



Активен

KISS Principle ( Keep-It-Short-and-Simple )
http://openfmi.net/projects/flattc/
Има 10 вида хора на този свят - разбиращи двоичния код и тези, които не го разбират :P