All of lore.kernel.org
 help / color / mirror / Atom feed
* [LARTC] Too stupid to figure out shaping
@ 2005-04-27 15:35 John Gorkos
  2005-04-27 15:37 ` David Boreham
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: John Gorkos @ 2005-04-27 15:35 UTC (permalink / raw)
  To: lartc

First I'll confess my sins, then I'll beg for help.

I own a small wireless ISP, and I sell service at three levels, 256kb/s, 
384kb/s, and 512kb/s.  For about 18 months, I thought I had this bandwidth 
limiting figured out.  I had three HTB classes off the root, one each with 
the limits above.  Since each customer has a single IP address, I used 
iptables to mark packets destined for each subscriber with level 1,2 or 3.  
It looked like it worked great:  Customer A got 256, B got 384, and C got his 
512.  In hindsight, it was wishful thinking, since ALL 256kb/s customers got 
dumped into the same 256 class and had to duke it out for that 256kb/s, 
instead of each customer getting their own 256kb/s slice.  Eventually, as I 
added more customers, people started complaining that they weren't getting 
what they're paying for (rightly).

So, now I'm running my ISP with no bandwidth shaping and I'm struggling to get 
my brain wrapped around how make sure everyone gets what they pay for, but 
not more.

From the reading I've done, it looks like I need a separate class for each 
subscriber.  Inside that class, I'd like to have a standard set of queues to 
prioritize each customer's slice of bandwidth by port (typical three band 
stuff:  interactive, web,bulk).
  So assuming I've got three customers:
10.0.0.10 gets256kb/s
10.0.0.11 gets 386 kb/s
10.0.0.12 gets 256kb/s
 I think I'd have a tree like this:

                        CLASS 10 (256kb/s) (inner classes prioritize)
ROOT -----        CLASS 11(384kb/s)                 "
                        CLASS 12 (256kb/s)                "
plus three filters to direct iptables-marked traffic to the appropriate queue 
and three iptables entries to mark the traffic appropriately.

The problem is, I'm simply not smart enough to actually IMPLEMENT this.  I 
tried setting up the HTB classes, and when I added the 5th one (class 15 in 
the little diagram above), my interactivity to the router went to near 1000ms 
RTT (I was ssh'ed into it).  I started getting calls from my customers 
immediately saying something was 'wrong with the internet'.  I'm not sure 
what happened, since I hadn't installed any filters or anything.

Anyway, I'd dearly appreciate some help on this.  Surely this is a nut that 
someone has already cracked, but for the life of me all I can find on the 
internet are how-to shape your own outbound traffic to your ISP so your P2P 
traffic (the BANE of ISPs) doesn't interfere with your Doom3 deathmatch.

Thanks in advance,
John Gorkos
_______________________________________________
LARTC mailing list
LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc

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

end of thread, other threads:[~2005-04-27 23:04 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-04-27 15:35 [LARTC] Too stupid to figure out shaping John Gorkos
2005-04-27 15:37 ` David Boreham
2005-04-27 16:14 ` Brian Carrig
2005-04-27 18:42 ` Andreas Klauer
2005-04-27 22:19 ` John Gorkos
2005-04-27 23:04 ` Andreas Klauer

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.