Hi.

    I want to shape traffic from some IPs in my lan, but I'm w/ trouble. I have a linux box connected to the Internet. In the other side of this box is my LAN. I want to create the following scenario:
 
My root qdisc is attached to a 100Mbit/s NIC
I want to create a class attached to this qdisc that will limit the traffic at 384Kbit/s.
I want to create two leaf classes that limits the traffic at 256Kbit/s.
I want to attach two sfq qdiscs so two classes are treated equally.
I want to put one LAN IP for each leaf class.
When one IP is downloading a file from internet it will never be more than 256Kbit.
When both IPs is downloading files at the same time, they will never be more than 384Kbit.
 
(I think that is something like the webserver + smtp example  that is in the howto)
 
My config:
 
tc qdisc add dev eth1 root handle 1:0 cbq bandwidth 100Mbit avpkt 1000 cell 8
tc class add dev eth1 parent 1:0 classid 1:1 cbq bandwidth 100Mbit rate 384Kbit weight 38Kbit prio 8 allot 1514 cell 8 maxburst 20 avpkt 1000 bounded
 
tc class add dev eth1 parent 1:1 classid 1:10 cbq bandwidth 100Mbit rate 256Kbit weight 25Kbit prio 8 allot 1514 cell 8 maxburst 20 avpkt 1000
tc class add dev eth1 parent 1:1 classid 1:20 cbq bandwidth 100Mbit rate 256Kbit weight 25Kbit prio 8 allot 1514 cell 8 maxburst 20 avpkt 1000
 
tc qdisc add dev eth1 parent 1:10 handle 100: sfq
tc qdisc add dev eth1 parent 1:20 handle 200: sfq
 
tc filter add dev eth1 parent 1:0 protocol ip prio 1 u32 match ip dst 10.0.0.2/32 flowid 1:10
tc filter add dev eth1 parent 1:0 protocol ip prio 1 u32 match ip dst 10.0.0.3/32 flowid 1:20
When I start a download from one machine, the speed is limited at 256Kbit/s (this is OK)
When I start a download from both machines, the speed for each machine is limited to 256Kbit/s. They are getting 512Kbit/s together. 
I want limit this speed at 384Kbit/s, so traffic from each machine will never be more than 192Kbps when both are in use.
 
Why it is not working for me ??? What is the mistake ?
Thank You.
 
Ricardo

Reply via email to