"nice" for Networking

UNIXish systems have a command-line utility called nice that can be used to run programs at a low priority, so that they don't hog the CPU.

Is there anything analogous that will limit the amount of network bandwidth a program uses? Sometimes I'd like to start a big download, but want my web browsing and other interactive network usage to stay responsive.


Related questions:

  • Bandwidth Throttle for linux
  • Throttle network bandwidth per application in Mac OS X
  • How can I make bandwidth intensive applications have lower priority than other apps like web browsing/skype

trickle -d 10 command runs command, limiting its bandwidth to 10kB/s. This is the analog of nice for bandwidth. It is packaged by at least Debian and Ubuntu.

ip_relay and redir are both tiny TCP proxies that support bandwidth limiting. Neither of them seem to have been maintained recently, but they're packaged by at least Debian and Ubuntu.

But maybe the tool you're using for downloading already supports bandwidth limitation, for instance wget --limit-rate=10k, curl --limit-rate 10k, rsync --bwlimit=10.