Linux (but not Windows) downloads take all our Internet bandwidth

Posted on

Linux (but not Windows) downloads take all our Internet bandwidth – Managing your servers can streamline the performance of your team by allowing them to complete complex tasks faster. Plus, it can enable them to detect problems early on before they get out of hand and compromise your business. As a result, the risk of experiencing operational setbacks is drastically lower.

But the only way to make the most of your server management is to perform it correctly. And to help you do so, this article will share nine tips on improving your server management and fix some problem about linux, windows, networking, bandwidth, intranet.

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.

Solution :

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.

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.

Leave a Reply

Your email address will not be published.