RE: [LARTC] qdisc unbounding question

Linux Advanced Routing and Traffic Control

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

 



> -----Original Message-----
> From: Rodrigo Goya [mailto:rgoya@xxxxxxxxxxxxxxxxxx]
> Sent: Friday, June 01, 2001 9:55 AM
> To: Linux Advanced Router & Traffic Control
> Subject: Re: [LARTC] qdisc unbounding question
> 
> 
> Hi,
> 
> > > tc class add dev eth0 parent 1:170 classid 1:30 cbq 
> bandwidth 200Kbit
> > > rate 30Kbit weight 3Kbit prio 6 allot 1514 cell 8 
> maxburst 20 avpkt 1000
> > 
> > Shouldn't the parent class be 1:1 instead of 1:170 ??
> > 
> > I believe in the current scheme, 1:170 is child from 1:1 
> and 1:30 a child
> > from 1:170. I think you want both 1:170 as 1:30 to be 
> children from 1:1.
> > 
> 
> I agree with this.
> 
> Also, shouldn't root qdisc 1:0 have full interface bandwidth? 
> and then root
> class 1:1 have "bandwidth $TOTAL rate 200kbit bounded" ?


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
< I'm throwing in the diagram again in for clarity >

  <---- 170kbs                        170kbs ------------>
	  if Dest. = 10.10.20.97        if Dest. = 10.10.30.3
	  (classid=170)                 (classid=171)

			|------|     |------
			| eth0 |     |eth1  |
			|      |-----|      |
			--------     -------
  <------30kbs                       30kbs --------------->
	  if Dest. = 10.10.20.95        if Dest. = 10.10.30.2 
        (classid=30)			  (classid=31)

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Ok.. I guess I could implement this. However, as it is now, I am
effectively keeping the
maximum bandwidth under 200kbs. So, I don't see a reason for it. Is
there one?

Let me clarify, I have been able to determine, through testing, that
these seperate classes are
indeed working. In other words, I am not able to exceed the bandwidth
limitations set in their seperate classes.
I.e. no more than 170kbs with dest ip= 10.10.20.97 AND no more than
30kbs if dest. ip = 10.10.20.95.

Now, the only problem I'm having is having is to allow class 30 to
borrow from it's parent class.



> 
> Something else, isn't it necesary to have a qdisc for each 
> interface? Right now
> it's 1:0 for eth0 and 1:0 for eth1, I don't know if this 
> works, I've always
> done it using (for example) 1:0 for eth0 and 2:0 for eth1.
> 
> If I'm off track please tell me =)

Ok. This definetly makes sense. I set this up. so that there is a new
qdisc classifier for each respective device 
	1:0 for eth0
	2.0 for eth1

Unfortunately, I'm still back to square one. I Still can't seem to share
between classes. 
Heres the latest revised output:

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~


tc qdisc add dev eth0 root handle 1:0 cbq bandwidth 200Kbit avpkt 1000
cell 8
tc class add dev eth0 parent 1:0 classid 1:1 cbq bandwidth 200Kbit rate
200Kbit weight 20Kbit prio 8 allot 1514 cell 8 maxburst 20 avpkt 1000

tc qdisc add dev eth1 root handle 2:0 cbq bandwidth 200Kbit avpkt 1000
cell 8
tc class add dev eth1 parent 2:0 classid 2:1 cbq bandwidth 200Kbit rate
200Kbit weight 20Kbit prio 8 allot 1514 cell 8 maxburst 20 avpkt 1000

tc class add dev eth0 parent 1:1 classid 1:170 cbq bandwidth 200Kbit
rate 170Kbit weight 17Kbit prio 5 allot 1514 cell 8 maxburst 20 avpkt
1000
tc qdisc add dev eth0 parent 1:170 tbf rate 170Kbit buffer 10Kb/8 limit
15Kb mtu 1500
tc filter add dev eth0 parent 1:0 protocol ip prio 100 u32 match ip dst
10.10.20.97 flowid 1:170

tc class add dev eth1 parent 2:1 classid 2:171 cbq bandwidth 200Kbit
rate 170Kbit weight 17Kbit prio 5 allot 1514 cell 8 maxburst 20 avpkt
1000
tc qdisc add dev eth1 parent 2:171 tbf rate 170Kbit buffer 10Kb/8 limit
15Kb mtu 1500
tc filter add dev eth1 parent 2:0 protocol ip prio 100 u32 match ip dst
10.10.30.3 flowid 2:171

tc class add dev eth0 parent 1:1 classid 1:30 cbq bandwidth 200Kbit rate
30Kbit weight 3Kbit prio 5 allot 1514 cell 8 maxburst 20 avpkt 1000 
tc qdisc add dev eth0 parent 1:30 tbf rate 30Kbit buffer 10Kb/8 limit
15Kb mtu 1500
tc filter add dev eth0 parent 1:0 protocol ip prio 100 u32 match ip dst
10.10.20.95 flowid 1:30

tc class add dev eth1 parent 2:1 classid 2:31 cbq bandwidth 200Kbit rate
30Kbit weight 3Kbit prio 5 allot 1514 cell 8 maxburst 20 avpkt 1000 
tc qdisc add dev eth1 parent 2:31 tbf rate 30Kbit buffer 10Kb/8 limit
15Kb mtu 1500
tc filter add dev eth1 parent 2:0 protocol ip prio 100 u32 match ip dst
10.10.30.2 flowid 2:31




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