Thanks Andy for your reply and taking your time to help like always. > > $tc class add dev eth0 parent 1:0 classid 1:1 > htb rate 900kbit ceil 945kbit As I understand, correct me if I'm wrong, this rule is telling the kernel how much bw we want to use globally or how big is the entire bucket. I know the amount of the leafs don't add up to the root's bw but, not all clients are connected at the same time. I don't know if this is the problem or not but, I have similar rules for the LAN interface which works pretty well. > > I'm not sure that it's causing your problem, but HTB is > known to do > strange things if all the bandwidth totals for the classes > do not add up I not sure either if this is the cause of the problem. > to their parent. Also, is there any particular reason why > the root class > has a different rate and ceil? > > I would make your parent rate and ceil the same, and then > make sure that > the rates of all the leafs add up to that number. The ceil > setting for > the leafs can be any amount between the rate of that leaf > and the ceil > of the parent. > > If you still can't get it working, and as this isn't really > a Squid > issue, you might be better off posting to the > netfilter-users mailing > list, although I'm happy to help further. Sorry to bring this to the squid list but, since I am using squid in the middle of this I posted here. > Andy The weird thing is if I don't use squid caching and just use normal FORWARD chain along with these tc script the upload and download throtle works fine. > > >