Slashdot is powered by your submissions, so send in your scoop

 



Forgot your password?
typodupeerror
×
News

Rate Limiting w/ Class Based Queuing? 9

fwerked asks: "I have recently been commissioned by the uppers in my company to produce rate limiting system for a college apartment complex with 600 users. I am hoping to use a Linux system to limit each users rate to 128 Mb. using Class Based Queuing. In addition I will need to route, DHCP, and NAT. I was hoping there was someone out there in the Slashdot community that has implemented this on a large scale that might be able to recommend hardware specs (CPU, RAM, etc) and if these services should be divided among several boxes or dumped on one bad boy."
This discussion has been archived. No new comments can be posted.

Rate Limiting w/ Class Based Queuing?

Comments Filter:
  • Use the TBF queue discipline for rate limiting down to small bandwidths. 128Mbps isn't small and I assume that's not what you meant; if it was I want an apartment in that building. As far as I know, CBQ limits by themselves don't start to kick in until there's congestion. Also look at freshmeat for the non-stock WRR qdisc; and maybe apply that "overall" over your CBQ.

    Secondly, as the queue discipline's application is connection based, your requirements are probably not that big. At a guess from experiance with a similar if far smaller job, I'd say you'll be fine with vanilla, mid-range hardware. I'd keep the DHCP and other "user" services on a different box, and dedicate one to being the router. I'd think 128MB of RAM would be overkill, but fast RAM and fast NIC won't hurt. CPU probably won't matter much; whatever's cheap will have gobs of spare time between packets anyway... A CPU with real cache would be preferred over a Celeron, though.

  • Also, Block ad banners, they eat lots of bandwidth... somebody sent me a email on this a while back... email me if you want it...
  • Adding in a good cache server will help tremendously with the load on the outside network link. You will need to get everybody to use it, but that isn't as hard as it seams. You may find that is all that is needed to restore reasonable network performance for all. Considering you have 600 clients, you will likely need to have multiple NAT boxes just to have enough ports to work smoothly. Each of these could then also be provisioned with a big HD for caching HTTP and FTP data. The caches can be setup in a peering configuration where if one has a document cached, the others won't have to fetch it from the source, just the peer.
  • I don't think you're going to be successful limiting each of 600 users to 128 Mbps with a single Linux box. You might be able to handle three. Sorry. You need to be talking to a fancy high-end hardware vendor, I'm afraid. Pay particular attention to finding one who can help you set reasonable requirements.
  • You're asking the /. community to help you throttle users on a college campus and give a lower priority to traffic less liked by the man? Good luck!
  • What's wrong with limiting badwidth on a college owned network?

    At least they have internet access piped into their dorms already.

    ---
  • I think it should be obvious that the available bandwidth should be allocated on a dynamic basis; if one person isn't using their full ration the unused portion should be available to be added to someone else's.

    You should discretely inform select members of those 600 residents that this feature is available to them upon their activation of your custom-coded bribery module.

  • Unless you're running fiber to each user you probably aren't going to be able to exceed 100Mbps anyway. If I were you I'd just install 100BT switches and then you're problem is completely taken care of.
    _____________
  • I'm sorry, I didn't understand the question, but I might as well share what I know. Are we talking about an internet or regular network connection? If you want each person to be limited to 128Mbps, isn't that 128 * 600 = 76Gbps? That's a little more than Internet2 has to offer, isn't it?

    Anyway, you could probably fine more info from: search for the following linux programs (some free, some commercial):
    ipac
    iog
    ipa
    ipaudit
    pact
    bandmin
    ip accounting daemon
    iplog
    (obviously) the 2.4.x kernel.
    These projects should have mailing lists where you could ask the question of "how much hardware do i need?". I would recommend getting 1 box to do the DNS, DHCP, NAT, firewall, etc. Then have 1 box upstream throttle the bandwidth (depending on how you do your NAT, you may need to do NAT from the same box).

A morsel of genuine history is a thing so rare as to be always valuable. -- Thomas Jefferson

Working...