All of lore.kernel.org
 help / color / mirror / Atom feed
* [LARTC] Multiple classes
@ 2002-12-03  5:49 Homer Parker
  2002-12-03 10:29 ` Stef Coene
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Homer Parker @ 2002-12-03  5:49 UTC (permalink / raw)
  To: lartc

[-- Attachment #1: Type: text/plain, Size: 839 bytes --]

	I'm trying to implement something similar the the diagram in section
9.5.2.1 in the LARTC HOWTO, but must have missed something somewhere :(
I'm trying to hack up wondershaper, as it looked like a good place to
start.. Here's where I currently at, but I've tried alot of different
things, all failing, some worse than others. The end result is to throttle
back 126 IP's individually. I've read so much over the last few days, I've
almost confused myself, and probably have ;) Thanks for any and all help!

tc qdisc add dev $DEV0 root handle 1: htb default 20

tc class add dev $DEV0 parent 1: classid 1:1 htb rate 128kbit \
  burst 6k

tc class add dev $DEV0 parent 1:1 classid 2: htb rate 128kbit \
  burst 6k                                                     


--- 
Homer Parker

http://www.homershut.net
telnet://bbs.homershut.net


[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [LARTC] Multiple classes
  2002-12-03  5:49 [LARTC] Multiple classes Homer Parker
@ 2002-12-03 10:29 ` Stef Coene
  2002-12-03 17:39 ` Homer Parker
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: Stef Coene @ 2002-12-03 10:29 UTC (permalink / raw)
  To: lartc

On Tuesday 03 December 2002 06:49, Homer Parker wrote:
> 	I'm trying to implement something similar the the diagram in section
> 9.5.2.1 in the LARTC HOWTO, but must have missed something somewhere :(
> I'm trying to hack up wondershaper, as it looked like a good place to
> start.. Here's where I currently at, but I've tried alot of different
> things, all failing, some worse than others. The end result is to throttle
> back 126 IP's individually. I've read so much over the last few days, I've
> almost confused myself, and probably have ;) Thanks for any and all help!
>
> tc qdisc add dev $DEV0 root handle 1: htb default 20
>
> tc class add dev $DEV0 parent 1: classid 1:1 htb rate 128kbit \
>   burst 6k
>
> tc class add dev $DEV0 parent 1:1 classid 2: htb rate 128kbit \
>   burst 6k
All class attached to the same qdisc have the same major number.  Numbering of 
classes and qdiscs : <major nuber>:<minor numer>.  
2: is a valid name for a qdisc, but not for a class.

Stef

-- 

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

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

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [LARTC] Multiple classes
  2002-12-03  5:49 [LARTC] Multiple classes Homer Parker
  2002-12-03 10:29 ` Stef Coene
@ 2002-12-03 17:39 ` Homer Parker
  2002-12-03 21:03 ` Stef Coene
  2002-12-04 10:08 ` Homer Parker
  3 siblings, 0 replies; 5+ messages in thread
From: Homer Parker @ 2002-12-03 17:39 UTC (permalink / raw)
  To: lartc

[-- Attachment #1: Type: text/plain, Size: 2194 bytes --]

On Tue, 3 Dec 2002 11:29:00 +0100 Stef Coene <stef.coene@docum.org>
wrote....


> > different things, all failing, some worse than others. The end result
> > is to throttle back 126 IP's individually. I've read so much over the
> > last few days, I've almost confused myself, and probably have ;)
> > Thanks for any and all help!
> >
> > tc qdisc add dev $DEV0 root handle 1: htb default 20
> >
> > tc class add dev $DEV0 parent 1: classid 1:1 htb rate 128kbit \
> >   burst 6k
> >
> > tc class add dev $DEV0 parent 1:1 classid 2: htb rate 128kbit \
> >   burst 6k
> All class attached to the same qdisc have the same major number. 
> Numbering of classes and qdiscs : <major nuber>:<minor numer>.  
> 2: is a valid name for a qdisc, but not for a class.

	Ok, I've tried grasping what you are telling me here, let's see how far
off I am now... From the example in 9.5.5.1:

# tc qdisc add dev eth0 root handle 1: htb default 30

# tc class add dev eth0 parent 1: classid 1:1 htb rate 6mbit burst 15k

# tc class add dev eth0 parent 1:1 classid 1:10 htb rate 5mbit burst 15k
# tc class add dev eth0 parent 1:1 classid 1:20 htb rate 3mbit ceil 6mbit
# burst 15k tc class add dev eth0 parent 1:1 classid 1:30 htb rate 1kbit
# ceil 6mbit burst 15k

The author then recommends SFQ for beneath these classes:

# tc qdisc add dev eth0 parent 1:10 handle 10: sfq perturb 10
# tc qdisc add dev eth0 parent 1:20 handle 20: sfq perturb 10
# tc qdisc add dev eth0 parent 1:30 handle 30: sfq perturb 10

Add the filters which direct traffic to the right classes:

# U32="tc filter add dev eth0 protocol ip parent 1:0 prio 1 u32"
# $U32 match ip dport 80 0xffff flowid 1:10
# $U32 match ip sport 25 0xffff flowid 1:20

	If I started with something similar to this, then I would just start
building under the 10:, 20:, 30: for the different IP's? If that's the
case, then I would send all of x.x.x.x to 10:1, and then have the
different rates and priorities within th 10:1 block? Am I on the right
track, or completely out in left field?

>      #lartc @ irc.oftc.net

	I can never find anyone in there, lots of names, no responses :(

--- 
Homer Parker

http://www.homershut.net
telnet://bbs.homershut.net


[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [LARTC] Multiple classes
  2002-12-03  5:49 [LARTC] Multiple classes Homer Parker
  2002-12-03 10:29 ` Stef Coene
  2002-12-03 17:39 ` Homer Parker
@ 2002-12-03 21:03 ` Stef Coene
  2002-12-04 10:08 ` Homer Parker
  3 siblings, 0 replies; 5+ messages in thread
From: Stef Coene @ 2002-12-03 21:03 UTC (permalink / raw)
  To: lartc

On Tuesday 03 December 2002 18:39, Homer Parker wrote:
> On Tue, 3 Dec 2002 11:29:00 +0100 Stef Coene <stef.coene@docum.org>
> wrote....
>
> > > different things, all failing, some worse than others. The end result
> > > is to throttle back 126 IP's individually. I've read so much over the
> > > last few days, I've almost confused myself, and probably have ;)
> > > Thanks for any and all help!
> > >
> > > tc qdisc add dev $DEV0 root handle 1: htb default 20
> > >
> > > tc class add dev $DEV0 parent 1: classid 1:1 htb rate 128kbit \
> > >   burst 6k
> > >
> > > tc class add dev $DEV0 parent 1:1 classid 2: htb rate 128kbit \
> > >   burst 6k
> >
> > All class attached to the same qdisc have the same major number.
> > Numbering of classes and qdiscs : <major nuber>:<minor numer>.
> > 2: is a valid name for a qdisc, but not for a class.
>
> 	Ok, I've tried grasping what you are telling me here, let's see how far
> off I am now... From the example in 9.5.5.1:
>
> # tc qdisc add dev eth0 root handle 1: htb default 30
>
> # tc class add dev eth0 parent 1: classid 1:1 htb rate 6mbit burst 15k
>
> # tc class add dev eth0 parent 1:1 classid 1:10 htb rate 5mbit burst 15k
> # tc class add dev eth0 parent 1:1 classid 1:20 htb rate 3mbit ceil 6mbit
> # burst 15k tc class add dev eth0 parent 1:1 classid 1:30 htb rate 1kbit
> # ceil 6mbit burst 15k
>
> The author then recommends SFQ for beneath these classes:
>
> # tc qdisc add dev eth0 parent 1:10 handle 10: sfq perturb 10
> # tc qdisc add dev eth0 parent 1:20 handle 20: sfq perturb 10
> # tc qdisc add dev eth0 parent 1:30 handle 30: sfq perturb 10
>
> Add the filters which direct traffic to the right classes:
>
> # U32="tc filter add dev eth0 protocol ip parent 1:0 prio 1 u32"
> # $U32 match ip dport 80 0xffff flowid 1:10
> # $U32 match ip sport 25 0xffff flowid 1:20
>
> 	If I started with something similar to this, then I would just start
> building under the 10:, 20:, 30: for the different IP's? If that's the
> case, then I would send all of x.x.x.x to 10:1, and then have the
> different rates and priorities within th 10:1 block? Am I on the right
> track, or completely out in left field?
It all depends on what you want to do.  Have you read my docs on www.docum.org 
??  But you are on the right track.
I have some remarks.  1kbit rate is _very_ low.  And 15k burst is not much for 
5mbit rate.  If you don't specify the burst or cburst paramter, tc will 
calculate the most optimal setting for you.

> >      #lartc @ irc.oftc.net
> 	I can never find anyone in there, lots of names, no responses :(
I'm there if I'm at home (nick name staf).

Stef

-- 

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

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

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [LARTC] Multiple classes
  2002-12-03  5:49 [LARTC] Multiple classes Homer Parker
                   ` (2 preceding siblings ...)
  2002-12-03 21:03 ` Stef Coene
@ 2002-12-04 10:08 ` Homer Parker
  3 siblings, 0 replies; 5+ messages in thread
From: Homer Parker @ 2002-12-04 10:08 UTC (permalink / raw)
  To: lartc

[-- Attachment #1: Type: text/plain, Size: 2065 bytes --]

On Tue, 3 Dec 2002 22:03:39 +0100 Stef Coene <stef.coene@docum.org>
wrote....

> It all depends on what you want to do.  Have you read my docs on
> www.docum.org ??  But you are on the right track.

	Ok, starting from scratch (again).. This loads and runs just fine:

tc qdisc del dev eth0 root
tc qdisc del dev eth1 root

tc qdisc add dev eth0 root handle 10: htb
tc class add dev eth0 parent 10: classid 10:1 htb rate 10mbit
# tc class add dev eth0 parent 10:1 classid 10:10 htb rate 256kbit
tc qdisc add dev eth0 parent 10:1 sfq perturb 10
tc filter add dev eth0 parent 10: protocol ip \
  u32 match ip dst 208.191.32.254 flowid 10:1

# exit

tc qdisc add dev eth1 root handle 20: htb
tc class add dev eth1 parent 20: classid 20:1 htb rate 10mbit
# tc class add dev eth1 parent 20:1 classid 20:10 htb rate 256kbit
tc qdisc add dev eth1 parent 20:1 sfq  perturb 10
tc filter add dev eth1 parent 20: protocol ip \
  u32 match ip src 208.191.32.254 flowid 20:1


	Whereas this doesn't...


tc qdisc del dev eth0 root
tc qdisc del dev eth1 root

tc qdisc add dev eth0 root handle 10: htb
tc class add dev eth0 parent 10: classid 10:1 htb rate 10mbit
tc class add dev eth0 parent 10:1 classid 10:10 htb rate 256kbit
tc qdisc add dev eth0 parent 10:10 sfq perturb 10
tc filter add dev eth0 parent 10: protocol ip \
  u32 match ip dst 208.191.32.254 flowid 10:10

# exit

tc qdisc add dev eth1 root handle 20: htb
tc class add dev eth1 parent 20: classid 20:1 htb rate 10mbit
tc class add dev eth1 parent 20:1 classid 20:10 htb rate 256kbit
tc qdisc add dev eth1 parent 20:10 sfq  perturb 10
tc filter add dev eth1 parent 20: protocol ip \
  u32 match ip src 208.191.32.254 flowid 20:10

	When i say does and doesn't work, the first on passes data, the second
one doesn't, and the pings I was testing with showed up as dropped packets
when I ran "tc -s class ls dev eth1", which I thought odd... Especially
since they showed up in the root class... Welp, it's 4am (again), time to
get a nap... 


--- 
Homer Parker

http://www.homershut.net
telnet://bbs.homershut.net


[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2002-12-04 10:08 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-12-03  5:49 [LARTC] Multiple classes Homer Parker
2002-12-03 10:29 ` Stef Coene
2002-12-03 17:39 ` Homer Parker
2002-12-03 21:03 ` Stef Coene
2002-12-04 10:08 ` Homer Parker

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.