throttle: Throttle TCP/IPv4 connections to a given server at n bytes/second.

[ bsd3, deprecated, library, unclassified ] [ Propose Tags ]

Sometimes you want to pretend you're on a very slow connection to see how your program deals with delays, this program does that.

[Skip to Readme]
Versions [faq] 0.1, 0.1.1, 1.0.0, 2.0.0, 3.0.0
Dependencies base (==4.*), bytestring, cmdargs (>=0.6.0), data-extra (>=2.2.0), network (>=2.2.3), unix (>= [details]
License BSD-3-Clause
Copyright Chris Done 2010
Author Chris Done <>
Maintainer Chris Done <>
Category Network
Home page
Uploaded by ChrisDone at Wed Aug 21 10:46:23 UTC 2013
Distributions NixOS:3.0.0
Executables throttle
Downloads 1890 total (23 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs not available [build log]
All reported builds failed as of 2016-12-20 [all 7 reports]


Maintainer's Corner

For package maintainers and hackage trustees

Readme for throttle-2.0.0

[back to package description]


Merely proxies connections to a single server, and throttles the connection to a given speed in KB/s. This is useful for testing web sites and other network based applications for which latency and connection speed can affect the functioning or presentation of the program to the user.

I don't go to any lengths to ensure the speed is accurate, nor that asking for 500KB/s will get you 500KB/s, but I do guarantee if you ask to throttle it at X KB/s then you will not get faster than X KB/s.

Here is the --help output:

$ throttle --help
Throttle v1.0, (C) Chris Done 2010

throttle [OPTIONS]
  Listens on port <listen> and proxies a throttled connection to <host> on
  <port> at speed <speed>KB/s.

Common flags:
  -l --listen=INT 
  -h --host=ITEM  
  -p --port=INT   
  -s --speed[=NUM]  Speed in KB/s, e.g. 1.6.
  -? --help         Display help message
  -V --version      Print version information