Hello Stef, Thanks a million for the information but things still dont work. Am sending you the modified tc script that i worked on. This in essence has 2 filters for the incoming and outgoing packets to 192.168.*.*. Each location has a 3 server setup. 192.168.0.100 : Billing server (eth0) x.x.x.x : External IP (eth1) Other servers :- 192.168.0.101 : Cache server for Network 1 192.168.0.102 : Cache server for Network 2 On the gateway these scripts don't work at all(In terms of Traffic Shaping). Clients are still able to download more than 40Kbit as suggested in the scripts. Eth0 is on an internal LAN while eth1, eth2 are external ip addresses. The rule sets in tc have been made such as to capture traffic and put them between the classes. This apart, Natting will take place only on the external ethernet adapter right??. Since the Internal NIC eth0 doesn't have.any Natted conditions it should be easier for it to shape traffic. That apart, one last but important issue, i am re-directing all web traffic from this gateway load balanced to the other 2 caching boxes. Can this be an issue?? Awaiting your inputs on the same. Please help me resolve this. You efforts on the same will be appreciated. #!/bin/bash ##################################### #Deleting and setting up #Root qdisc's ##################################### tc qdisc del dev eth0 root tc qdisc add dev eth0 root handle 1:0 cbq bandwidth 10Mbit avpkt 1000 cell 8 ####################################### #Setting up top 10 qdiscs #for initial packet classification ####################################### tc class add dev eth0 parent 1:0 classid 1:1 cbq bandwidth 10Mbit rate 200Kbit allot 1514 cell 8 maxburst 20 avpkt 1000 weight 20Kbit bounded tc filter add dev eth0 parent 1:0 protocol ip u32 match ip src 192.168.10.0/24 classid 1:1 tc filter add dev eth0 parent 1:0 protocol ip u32 match ip dst 192.168.10.0/24 classid 1:1 tc class add dev eth0 parent 1:0 classid 1:2 cbq bandwidth 10Mbit rate 200Kbit allot 1514 cell 8 maxburst 20 avpkt 1000 weight 20Kbit bounded tc filter add dev eth0 parent 1:0 protocol ip u32 match ip src 192.168.11.0/24 classid 1:2 tc filter add dev eth0 parent 1:0 protocol ip u32 match ip dst 192.168.11.0/24 classid 1:2 tc class add dev eth0 parent 1:0 classid 1:3 cbq bandwidth 10Mbit rate 200Kbit allot 1514 cell 8 maxburst 20 avpkt 1000 weight 20Kbit bounded tc filter add dev eth0 parent 1:0 protocol ip u32 match ip src 192.168.12.0/24 classid 1:3 tc filter add dev eth0 parent 1:0 protocol ip u32 match ip dst 192.168.12.0/24 classid 1:3 : : : : #################################### #Actual Filters #################################### ################################# # Start of Actual Filters ################################# tc class add dev eth0 parent 1:1 classid 1:13 cbq bandwidth 10Mbit rate 40Kbit weight 4Kbit prio 4 allot 1514 cell 8 maxburst 20 avpkt 1000 bounded tc filter add dev eth0 parent 1:1 protocol ip u32 match ip src 192.168.10.1/32 classid 1:13 tc filter add dev eth0 parent 1:1 protocol ip u32 match ip dst 192.168.10.1/32 classid 1:13 tc class add dev eth0 parent 1:1 classid 1:14 cbq bandwidth 10Mbit rate 40Kbit weight 4Kbit prio 4 allot 1514 cell 8 maxburst 20 avpkt 1000 bounded tc filter add dev eth0 parent 1:1 protocol ip u32 match ip src 192.168.10.2/32 classid 1:14 tc filter add dev eth0 parent 1:1 protocol ip u32 match ip dst 192.168.10.2/32 classid 1:14 : : : : : : Trevor On Wed, 2003-06-11 at 22:01, Stef Coene wrote: > On Wednesday 11 June 2003 05:20, Trevor Warren wrote: > > Hello Folks, > > > > For a long time i have tried to get Traffic Shaping work for my 500 > > Customer setup, but never succeded. I know i have made mistakes which i > > ain't able to point out. > > > > I have made a heirarchical setup where in the incoming-outgoing > > bandwidth is split into 10 different subnets and i have filters to > > divert traffic into these 10 different pipes. Then in each of these > > pipes i then have all the clients under those subnets. > > > > Below at the end i have attached the CBQ errors thrown when i > > initialise the TC pipes. > > > > Any help and pointers on the same will be appreciated. > The bandwidth _MUST_ be your NIC bandwidth. So it's 100Mbit for a 100mbit > NIC. You combined 100Mbit and 10Mbit. > You also have to provide a weight paramter. Take weight = rate / 10. I think > this will remove the quantum errors. > > Some general quesions : > What's you link bandwidth you want to shape? It's best if you add 1 bounded > class to the root qdisc wih rate = link bandwidth and attach all other > classes to that class (and not to the root qdisc). > Is this script used on a firewall? And is eth0 connected to the internet? > Then you have a filter problem. You filter on the src address, but all > connections are natted so the real src address is not known. > > Stef -- ( >- GNU/LINUX, It's all about CHOICE -< ) /~\ __ trevor@xxxxxxxxxxxxxxxxxxxxxx __ /~\ | \) / Pre Sales Consultant - Red Hat \ (/ | |_|_ \ 9820349221(M) | 22881326(O) / _|_| \___________________________________/