* [LARTC] New and need help with TC
@ 2002-01-04 7:18 Stefan Schueller
2002-01-05 13:29 ` bert hubert
0 siblings, 1 reply; 2+ messages in thread
From: Stefan Schueller @ 2002-01-04 7:18 UTC (permalink / raw)
To: lartc
Hi,
I'm new to this list and I was wondering if any of you could help me out
with my traffic problem.
I did get some limiting to work but it's not working the way I want and
that's mostly because I still don't understand some of the commands I'm
using. I want to limit my total bandwidth to a maximum of 256kbits but I
don't want one user to take it all. I also don't want to have everyone
suffer because one site has a lot of hits. I want to make the site with the
high traffic slower than the other sites but I don't want the total to go
over 256kbits. The IP of the high traffic site is 209.150.199.225. All
others should be able to download at a speed up to 200k and have priority
over the high traffic site.
Also does anyone have a nice traffic monitor that shows me the traffic of
each IP which I can use with rrdtool? I have cban right now but it only
shows overall traffic on the adapter.
Here is what I have right now. It is limiting traffic at 256kbits more or
less but I still get spikes over 1mbits which kills my avarage and gets me
the high ISP bill at the end of the month.
This is what I want (kind of):
*************************************************
* eth0 (Limit to 256kbits) *
* ********************** ********************** *
* * Lower Priority * * Higher Priority * *
* * 209.58.199.225 * * All other IPs * *
* * (150k Max total)* * (200k Max total) * *
* * (100K max per * * (180k max per * *
* * connection) * * connection) * *
* ********************** ********************** *
************************************************
This is what I'm doing:
# I don't know if I have to do this at all
/sbin/ip address add 209.58.199.225 dev eth0
/sbin/ip address add 209.58.199.226 dev eth0
/sbin/ip address add 209.58.199.227 dev eth0
/sbin/ip address add 209.58.199.228 dev eth0
/sbin/ip address add 209.58.199.229 dev eth0
/sbin/ip address add 209.58.199.230 dev eth0
/sbin/ip address add 209.58.199.231 dev eth0
/sbin/ip address add 209.58.199.232 dev eth0
/sbin/ip address add 209.58.199.233 dev eth0
/sbin/ip address add 209.58.199.234 dev eth0
/sbin/ip address add 209.58.199.235 dev eth0
/sbin/ip address add 209.58.199.236 dev eth0
/sbin/ip address add 209.58.199.237 dev eth0
/sbin/ip address add 209.58.199.238 dev eth0
/sbin/ip address add 209.58.199.239 dev eth0
# Here I think I'm making some kind of parent which limits all traffic to
256kbits, its name is 1
/sbin/tc qdisc add dev eth0 root handle 1: cbq bandwidth 256kbit avpkt 1000
# create a subparanet of parent 1:0 called 1:1 with also a 256kbits limit?
Not sure what the other half of the comand does?!allot? weight?
/sbin/tc class add dev eth0 parent 1:0 classid 1:1 cbq bandwidth 256Kbit
rate 256Kbit allot 1500 weight 16 avpkt 1000
#create a child of parent 1:1 called 1:10 and some limiting I don't
undertand?!
/sbin/tc class add dev eth0 parent 1:1 classid 1:10 cbq bandwidth 200Kbit
rate 180Kbit allot 1500 weight 100kbit prio 5 maxburst 20 avpkt 1000 bounded
/sbin/tc class add dev eth0 parent 1:1 classid 1:11 cbq bandwidth 150Kbit
rate 100Kbit allot 1500 weight 64kbit prio 5 maxburst 20 avpkt 1000 bounded
#??? u32??
/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 5 handle 1: u32
divisor 1
#Filter IPs to certain children
/sbin/tc filter add dev eth0 parent 1:0 protocol ip u32 match ip src
209.58.199.225 flowid 1:11
/sbin/tc filter add dev eth0 parent 1:0 protocol ip u32 match ip src
209.58.199.226 flowid 1:10
/sbin/tc filter add dev eth0 parent 1:0 protocol ip u32 match ip src
209.58.199.227 flowid 1:10
/sbin/tc filter add dev eth0 parent 1:0 protocol ip u32 match ip src
209.58.199.228 flowid 1:10
/sbin/tc filter add dev eth0 parent 1:0 protocol ip u32 match ip src
209.58.199.229 flowid 1:10
/sbin/tc filter add dev eth0 parent 1:0 protocol ip u32 match ip src
209.58.199.230 flowid 1:10
/sbin/tc filter add dev eth0 parent 1:0 protocol ip u32 match ip src
209.58.199.231 flowid 1:10
/sbin/tc filter add dev eth0 parent 1:0 protocol ip u32 match ip src
209.58.199.232 flowid 1:10
/sbin/tc filter add dev eth0 parent 1:0 protocol ip u32 match ip src
209.58.199.233 flowid 1:10
/sbin/tc filter add dev eth0 parent 1:0 protocol ip u32 match ip src
209.58.199.234 flowid 1:10
/sbin/tc filter add dev eth0 parent 1:0 protocol ip u32 match ip src
209.58.199.235 flowid 1:10
/sbin/tc filter add dev eth0 parent 1:0 protocol ip u32 match ip src
209.58.199.236 flowid 1:10
/sbin/tc filter add dev eth0 parent 1:0 protocol ip u32 match ip src
209.58.199.237 flowid 1:10
/sbin/tc filter add dev eth0 parent 1:0 protocol ip u32 match ip src
209.58.199.238 flowid 1:10
/sbin/tc filter add dev eth0 parent 1:0 protocol ip u32 match ip src
209.58.199.239 flowid 1:10
/sbin/tc filter add dev eth0 parent 1:0 protocol ip u32 match ip src
209.58.150.51 flowid 1:10
Do I make any sense?
thanks for any help you can give me.
-Stefan
stefan@techdroid.com
_______________________________________________
LARTC mailing list / LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://ds9a.nl/lartc/
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [LARTC] New and need help with TC
2002-01-04 7:18 [LARTC] New and need help with TC Stefan Schueller
@ 2002-01-05 13:29 ` bert hubert
0 siblings, 0 replies; 2+ messages in thread
From: bert hubert @ 2002-01-05 13:29 UTC (permalink / raw)
To: lartc
On Fri, Jan 04, 2002 at 02:18:26AM -0500, Stefan Schueller wrote:
> I did get some limiting to work but it's not working the way I want and
> that's mostly because I still don't understand some of the commands I'm
> using. I want to limit my total bandwidth to a maximum of 256kbits but I
> don't want one user to take it all. I also don't want to have everyone
> suffer because one site has a lot of hits. I want to make the site with the
> high traffic slower than the other sites but I don't want the total to go
> over 256kbits. The IP of the high traffic site is 209.150.199.225. All
> others should be able to download at a speed up to 200k and have priority
> over the high traffic site.
Ok. What you want is a 256kbit/s CBQ with SFQ within.
> Also does anyone have a nice traffic monitor that shows me the traffic of
> each IP which I can use with rrdtool? I have cban right now but it only
> shows overall traffic on the adapter.
I use iptables to make rules matching each IP, and then hook that up to
rrdtool with some sed/grep magic.
> Here is what I have right now. It is limiting traffic at 256kbits more or
> less but I still get spikes over 1mbits which kills my avarage and gets me
> the high ISP bill at the end of the month.
You may want to read http://ds9a.nl/lartc/manpages - It will explain the
stuff you are guessing at. How does your ISP measure your usage? 10 second
interval? The ISPs I know use a 5 minute interval.
Regards,
bert
--
http://www.PowerDNS.com Versatile DNS Software & Services
http://www.tk the dot in .tk
Netherlabs BV / Rent-a-Nerd.nl - Nerd Available -
Linux Advanced Routing & Traffic Control: http://ds9a.nl/lartc
_______________________________________________
LARTC mailing list / LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://ds9a.nl/lartc/
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2002-01-05 13:29 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-01-04 7:18 [LARTC] New and need help with TC Stefan Schueller
2002-01-05 13:29 ` bert hubert
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.