Почитамши доков, нахшил след. схемку (с дрожью жду вечера):tc filter add dev imq2 parent 1:0 prio 5 protocol ip u32 ### не понял толком, что это, корневой фильтр, значит нужен только один? (сетей всего 10, 8 10,62,0/24 и 2 других /24)
tc filter add dev imq2 parent 1:0 prio 5 handle 20: protocol ip u32 divisor 256
tc filter add dev imq2 parent 1:0 prio 5 handle 21: protocol ip u32 divisor 256
tc filter add dev imq2 parent 1:0 prio 5 handle 22: protocol ip u32 divisor 256
... (всего 10)
tc filter add dev imq2 protocol ip parent 1:0 prio 5 u32 ht 800:: match ip dst 10.62.0.0/24 hashkey mask 0x000000ff at 16 link 20:
tc filter add dev imq2 protocol ip parent 1:0 prio 5 u32 ht 800:: match ip dst 10.62.1.0/24 hashkey mask 0x000000ff at 16 link 21:
tc filter add dev imq2 protocol ip parent 1:0 prio 5 u32 ht 800:: match ip dst 10.62.2.0/24 hashkey mask 0x000000ff at 16 link 22:
... тоже 10, по 1-му на 10 предыдущих
так на 2й и 3й imq (тока на 3-й "match ip src" и "at 12 link"), на первых 2х (0-й и 1-й)мало классов и они будут со временем убраны вообще.
дефолтными классами для imq2 & imq3, указаны несуществующие классы (хз, де-то прочитал, что гут это, заюзал, ибо видно, что хеш заработал :), думаю надо хоть чуток дать.
т.к. юзается htb.init и система классов в виде файлов, можно получить готовый скрипт, наваял на перле скрипту, которы высчитывает и дописывает в него "ht **:$$:" ,там ** выглядит как "'2'[3й октет]", а $$ - последний октет в hex (для сетей не 10.62.0.0 в ** = '3'[3й октет] и т.д),т.е.
tc class add dev imq2 parent 1:10 classid 1:1016 htb rate 64Kbit ceil 1024Kbit
tc filter add dev imq2 parent 1:0 protocol ip prio 100 u32 ht 22:43: match ip dst 10.62.2.67 classid 1:1016
tc filter add dev imq2 parent 1:0 protocol ip prio 100 u32 ht 22:43: match ip src 10.62.2.67 classid 1:1016
tc class add dev imq2 parent 1:10 classid 1:1007 htb rate 64Kbit ceil 1024Kbit
tc filter add dev imq2 parent 1:0 protocol ip prio 100 u32 ht 26:4a: match ip dst 10.62.6.74 classid 1:1007
tc filter add dev imq2 parent 1:0 protocol ip prio 100 u32 ht 26:4a: match ip src 10.62.6.74 classid 1:1007
теоретически, вместо перебора 2к правил (как до этого), имеем 2 набора хешей в первом 10 строк, во втором 1, т.е. сразу на нужный фильтр.
***вложенные таблицы, это там где на втором прыге сразу в фильтр?
смотрел tc -s -d class show dev imq2 [|grep -A2 1:682], фильтры вродь, работают, пока народу мало все красиво шейпится, но эти проклятые 20Мбит меня преследуют - не рздает больше :( , жду вечера, предвкушаю, блин.
гугелю надо правильно задавать вопросы, а это в своем роде исскусство, пока практикуюсь )
**ссылки - бомба, еще не все прочитал, ща буду с-шный генератор хеш-таблиц пробовать :)
>[оверквотинг удален]
>2. другой и более легкий подход основан на классификаторе flow
>
>http://www.mail-archive.com/netdev@vger.kernel.org/msg6... = не забыть внимательно прочитать весь тред
>http://forum.nag.ru/forum/index.php?showtopic=44152 = на русском
>http://forum.nag.ru/forum/index.php?showtopic=48301&st=0&p=3... = рабочее (можно сказать промышленное) решение
>
>
>за сим откланиваюсь в надежде наблюдать отчёт о хорошо сделанной работе.
>
>P.S. что-же вы, молодой человек никак с гуглём не сдужетесь.