Re: Traffic Shaping not working with CBQ

Linux Advanced Routing and Traffic Control

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thursday 30 October 2003 11:29, Raghuveer K wrote:
> Hi Stef/Martin,
>
> Iam resending this mail for the third time, I request you to please
> respond ASAP.
You mail ended twice in my "to read" folder.

> Iam stucked as my traffic control is not working, I just tried first
> with incoming traffic shaping, below is the test setup and rules
> applied. Your valuable suggestion will surely help me and make it right.
>
> Traffic Control is not taking place after applying the below rules. Here
> follows the test setup:-
> 1. The linux m/c 's eth0(100Mbits, WAN) is connected to 128 Kbits ADSL
> and eth1 to the LAN.
> 2.  I tried doing traffic control for incoming(at eth1).
> 3.  In LAN, I connected 3 m/c's(all linux).
> 4.  The ISP rate  taken is 97% of 128Kbits.
> 5.  Bandwidth Monitoring is done by using IPTraf on each LAN m/c's.
>
> Here are the rules Iam applying to control incoming traffic at LAN
> interface(eth1) for LAN users.
> Here actual Isp rate = 128Kbit, rate taken = 97% of 128Kbit, eth1 ip is
> 192.168.5.1
>
> /* root qdisc */
> tc qdisc add dev eth1 root handle 1: cbq bandwidth 100Mbit avpkt 1000 cell
> 8
>
> /* Parent Class */
> tc class add dev eth1 parent 1:0 classid 1:1 cbq bandwidth 100Mbit rate
> 124Kbit weight 12Kbit prio 3 allot 1514 cell 8 maxburst 10  avpkt 1000
> bounded
> /* Whether should I place the below filter for Parent class..???
> tc filter add dev eth1 parent 1:0 protocol ip prio 3 u32 match ip src
> 0/0 match ip dst 0/0 classid 1:1
> */
You can also add the other filters to the root qdisc 1:0.

> /* Child Classes */
>
> /* 1st LAN user<192.168.5.2> = 37Kbit */
> tc class add dev eth1 parent 1:1 classid 1:2 cbq bandwidth 100Mbit rate
> 37Kbit weight 3Kbit prio 3 allot 1514 cell 8 maxburst 10  avpkt 1000
> tc filter add dev eth1 parent 1:1 protocol ip prio 3 u32 match ip src
> 0/0 match ip dst 192.168.5.2 classid 1:2
>
> /* 2nd LAN user<192.168.5.3> = 24Kbit */
> tc class add dev eth1 parent 1:1 classid 1:3 cbq bandwidth 100Mbit rate
> 24Kbit weight 2Kbit prio 3 allot 1514 cell 8 maxburst 10  avpkt 1000
> tc filter add dev eth1 parent 1:1 protocol ip prio 3 u32 match ip src
> 0/0 match ip dst 192.168.5.3 classid 1:3
>
> /* 3rd LAN user<192.168.5.4> = 12Kbit */
> tc class add dev eth1 parent 1:1 classid 1:4 cbq bandwidth 100Mbit rate
> 12Kbit weight 1Kbit prio 3 allot 1514 cell 8 maxburst 10  avpkt 1000
> tc filter add dev eth1 parent 1:1 protocol ip prio 3 u32 match ip src
> 0/0 match ip dst 192.168.5.4 classid 1:4
>
> /* Default : Rest/Other traffic = 51Kbit*/
> tc class add dev eth1 parent 1:1 classid 1:5 cbq bandwidth 100Mbit rate
> 51Kbit weight 5Kbit prio 3 allot 1514 cell 8 maxburst 10  avpkt 1000
> tc filter add dev eth1 parent 1:1 protocol ip prio 3 u32 match ip src
> 0/0 match ip dst 0/0 classid 1:5
>
> I have few observations and queries, as follows:--
> 1.In my test setup the ISP rate is fluctuating in the range of 21Kbits
> to 131 Kbits for 128Kbits ADSL.
> 2. I have not added any filter for the parent class. Is it required...?
> What happens if I add...?
Add all your filters to the root qdisc and put the traffic in the destination 
class.  Like :
tc filter add dev eth1 parent 1:0 protocol ip prio 3 u32 match ip src 0/0 
match ip dst 0/0 classid 1:5

> 3. Is "iptraf " tool OK for monitoring the distribution of bandwidth on
> each LAN m/c.
Yes.

> 4. In case, if I shape outgoing traffic on eth0 interface, whether shall
> I take outgoing and incoming ISP rate's in 30:70 ratio, i.e 30% if
> 128Kbits for
>    outgoing Qdisc(eth0) and 70% for incoming Qdisc(eth1). As 128 Kbits
> rate being asyncronous(ADSL).
What's the speed of your connection?  128kbits for download, but how much for 
uploads?

> Can you pls guide me where am I going wrong..? Do I continue using CBQ
> or try instead HTB rules.
If you can, go for htb.  Much less confusing options.
Als, check out with tc -s -d class show dev eth1 if the filters are working 
and each class is processing packets.

Stef

-- 
stef.coene@xxxxxxxxx
 "Using Linux as bandwidth manager"
     http://www.docum.org/
     #lartc @ irc.openprojects.net

_______________________________________________
LARTC mailing list / LARTC@xxxxxxxxxxxxxxx
http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/

[Index of Archives]     [LARTC Home Page]     [Netfilter]     [Netfilter Development]     [Network Development]     [Bugtraq]     [GCC Help]     [Yosemite News]     [Linux Kernel]     [Fedora Users]
  Powered by Linux