2

At the company where I work, we have a perennial problem with large downloads (not P2P, not just updates) by Linux PCs (various Ubuntus) swamping our internet connection. For whatever reason, this is not the case with downloads from Windows PCs, even using the same browser (Chrome).

I've seen various solutions for limiting the bandwidth consumed on a per-PC basis, but they don't seem like the right solution. Often they limit the ethernet bandwidth, not just internet bandwidth. And even at the best, they would only limit the bandwidth to a configured fraction of our internet pipe, which isn't what we want either. We don't want to artificially limit the usage of our internet pipe, we just want one particular "stream" to exclude the others.

On a more technical level, it would be more interesting to know what low-level difference there is between traffic originating from Linux vs. Windows that results in such different behavior.

We'd much prefer not to rate-limit Linux PCs and make them second-rate citizens. We'd much rather resolve whatever difference is causing them to trump identical activity from other clients.

2 Answers2

5

In your situation, I would install a proxy server (such as Squid) and set it up to be transparent. This should allow you to do several things:

  1. Identify what files the Ubuntu machines are downloading.
  2. Cache the files so that only the first one affects your Internet bandwidth.
  3. Rate limit any request.

If you do decide to go with Squid, here's a little tutorial on how to set it up to be transparent.

You could also implement QoS on this box, allowing things like any small packets and ping and ssh to be prioritised over large packets. This project looks promising but I haven't used it anywhere so treat with caution.

Ladadadada
  • 25,847
  • 7
  • 57
  • 90
  • sqstat (http://samm.kiev.ua/sqstat/) can give real tie traffic usage per user in the above scenario, then you could rate limit the LAN clients using something like qdisc – jwbensley Mar 08 '12 at 17:34
  • I don't think that caching will help our particular use case, which is mostly limited to unique one-time (but large) downloads. – Bryce Schober Mar 08 '12 at 18:10
4

If your problem is with ubuntu downloading packages then you can look at an apt-proxy such as apt-cacher to help alleviate that. Requires a little configuration to start with, but can save a lot of bandwidth.

Matthew Steeples
  • 1,303
  • 1
  • 10
  • 17
  • I don't think that caching will help our particular use case, which is mostly limited to unique one-time (but large) downloads. – Bryce Schober Mar 08 '12 at 18:10