Была задумка немного разграничить 2х мегобитный канал таким образом, что бы всякие там ftp, http сервера не сильно забивали канал. Почитал advanced routing & traffic control howto, порадовался, пишу правила. Сначала в графике: 1: (root) (10mbit - скорость интерфейса сетевой карты) | 1:1 -> 2mbit (скорость канала) | \ 10: 20: (для всего остального) (200kbit - для маленьких пакетов) (isolated) | \ | \ 20:1 20:2 (1600Kbit - для ftp и http) (1000Kbit - для всего остального) (bounded) (isolated) правила для tc и cbq: tc qdisc add dev eth2 root handle 1: cbq bandwidth 10Mbit avpkt 1000 mpu 64 tc class add dev eth2 parent 1:0 classid 1:1 cbq bandwidth 10Mbit rate 2Mbit \ weight 200Kbit allot 1514 prio 8 maxburst 10 avpkt 100 вот эти две строки проходят нормально, а на следующую уже ругается - RTNETLINK answers: Invalid argument Вроде все по документации написал, чего ему не нравиться? iproute2 поставлено. tc class add dev eth2 parent 1:1 classid 10:1 cbq bandwidth 10Mbit rate 200Kbit \ weight 20Kbit allot 1514 prio 1 maxburst 10 avpkt 100 isolated tc class add dev eth2 parent 1:1 classid 20: cbq bandwidth 10Mbit rate 1800Kbit \ weight 180Kbit allot 1514 prio 6 maxburst 20 avpkt 1500 bounded tc class add dev eth2 parent 20:0 classid 20:1 cbq bandwidth 10Mbit rate 1.6Mbit \ weight 160Kbit allot 1514 prio 6 maxburst 10 avpkt 1500 bounded tc class add dev eth2 parent 20:0 classid 20:2 cbq bandwidth 10Mbit rate 1Mbit \ weight 100Kbit allot 1514 prio 3 maxburst 10 avpkt 1500 isolated дальнейшее раскидывание пакетов по задумке осуществляется через их маркировку в iptables И потом #max prio tc filter add dev eth2 parent 1:1 protocol ip handle 3 fw flowid 10:0 #min prio tc filter add dev eth2 parent 20:0 protocol ip handle 4 fw flowid 20:1 #medium prio tc filter add dev eth2 parent 20:0 protocol ip handle 5 fw flowid 20:2