Dear list, I have the problem that child classes don't seem to issue the parent class to borrow from their parent. This is a simplified version of my script: tc qdisc del dev $DEV root tc qdisc add dev $DEV root handle 1: htb default 10 tc class add dev $DEV parent 1: classid 1:1 htb rate 10mbit tc class add dev $DEV parent 1:1 classid 1:10 htb rate 1kbit ceil 512kbit #groups tc class add dev $DEV parent 1: classid 1:f1 htb rate 2048kbit ceil 10mbit burst 50k tc class add dev $DEV parent 1:f1 classid 1:a1 htb rate 2048kbit ceil 10mbit prio 2 burst 50k tc class add dev $DEV parent 1:f1 classid 1:b1 htb rate 2048kbit ceil 6mbit prio 3 burst 50k tc class add dev $DEV parent 1:f1 classid 1:c1 htb rate 2048kbit ceil 5mbit prio 4 burst 50k tc class add dev $DEV parent 1: classid 1:f2 htb rate 1024kbit ceil 10mbit burst 50k tc class add dev $DEV parent 1:f2 classid 1:a2 htb rate 1024kbit ceil 10mbit prio 2 burst 50k tc class add dev $DEV parent 1:f2 classid 1:b2 htb rate 1024kbit ceil 6mbit prio 3 burst 50k tc class add dev $DEV parent 1:f2 classid 1:c2 htb rate 1024kbit ceil 5mbit prio 4 burst 50k #users tc class add dev $DEV parent 1:a1 classid 1:3001 htb rate 64kbit ceil 512kbit burst 50k tc qdisc add dev $DEV parent 1:3001 sfq perturb 10 tc filter add dev $DEV parent 1:0 protocol ip prio 16 u32 match ip dst 172.30.10.1 flowid 1:3001 tc class add dev $DEV parent 1:b1 classid 1:3002 htb rate 64kbit ceil 1024kbit burst 50k tc qdisc add dev $DEV parent 1:3002 sfq perturb 10 tc filter add dev $DEV parent 1:0 protocol ip prio 16 u32 match ip dst 172.30.10.2 flowid 1:3002 tc class add dev $DEV parent 1:c1 classid 1:3003 htb rate 64kbit ceil 1024kbit burst 50k tc qdisc add dev $DEV parent 1:3003 sfq perturb 10 tc filter add dev $DEV parent 1:0 protocol ip prio 16 u32 match ip dst 172.30.10.3 flowid 1:3003 tc class add dev $DEV parent 1:c2 classid 1:3004 htb rate 64kbit ceil 1024kbit burst 50k tc qdisc add dev $DEV parent 1:3004 sfq perturb 10 tc filter add dev $DEV parent 1:0 protocol ip prio 16 u32 match ip dst 172.30.10.4 flowid 1:3004 . . . The script is dynamically generated, periodically called, and should put the users (distinguished through their IP address) according to their traffic usages into lower priorities (axx,bxx,cxx) respecting different bandwidth needs but also respecting minimum rates for different groups (fxx). Now the borrowing among user classes (1:3xxx) is working; but for some reason and I just can't figure out why, the group classes (fxx) don't borrow from each other when their is unused bandwidth available. The "ceil 10mbit" just seems to be ignored :( e.g.: class htb 1:3003 parent 1:c1 leaf 92f4: prio 0 quantum 1000 rate 64000bit ceil 1024Kbit burst 50Kb/8 mpu 0b overhead 0b cburst 1727b/8 mpu 0b overhead 0b level 0 Sent 22500226 bytes 28784 pkts (dropped 0, overlimits 0) rate 245080bit 39pps lended: 15306 borrowed: 13478 giants: 0 <------------ user borrowed from others tokens: -429574 ctokens: 13314 but: class htb 1:f1 root rate 2048Kbit ceil 10000Kbit burst 50Kb/8 mpu 0b overhead 0b cburst 2848b/8 mpu 0b overhead 0b level 7 Sent 221521122 bytes 257990 pkts (dropped 0, overlimits 0) rate 1818Kbit 260pps lended: 0 borrowed: 0 giants: 0 <------------ nothing going on here tokens: -1118817 ctokens: -274 class htb 1:c1 parent 1:f1 rate 2048Kbit ceil 6000Kbit burst 50Kb/8 mpu 0b overhead 0b cburst 2349b/8 mpu 0b overhead 0b level 6 Sent 22500226 bytes 28784 pkts (dropped 0, overlimits 0) rate 230776bit 37pps lended: 13478 borrowed: 0 giants: 0 <------------ or here tokens: 204546 ctokens: 3121 Any help is highly appreciated! Thanx, Bernd Froemel _______________________________________________ LARTC mailing list LARTC@xxxxxxxxxxxxxxx http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc