Submit Hint Search The Forums LinksStatsPollsHeadlinesRSS
14,000 hints and counting!

trickle | 9 comments | Create New Account
Click here to return to the 'trickle' hint
The following comments are owned by whoever posted them. This site is not responsible for what they say.
Authored by: ThreeDayMonk on Oct 25, '05 09:17:06AM

Perhaps trickle might work:

trickle is a portable lightweight userspace bandwidth shaper. It can run in collaborative mode (together with trickled) or in stand alone mode.

trickle works by taking advantage of the unix loader preloading. Essentially it provides, to the application, a new version of the functionality that is required to send and receive data through sockets. It then limits traffic based on delaying the sending and receiving of data over a socket. trickle runs entirely in userspace and does not require root privileges.

By replacing the executable within a .app package with a wrapper using trickle, each application could be configured to use only a set portion of the available bandwidth.

However, the current version of trickle doesn't build on OS X due to some poll() irregularities.

[ Reply to This | # ]
Authored by: Delarue on Oct 25, '05 03:28:31PM
trickle version 1.07 (get it here) compiles with the following changes made to the file trickle-overload.c
< #if defined(__linux__) || (defined(__svr4__) && defined(__sun__)) || defined(__OpenBSD__) || defined(__MACH__)
> #if defined(__linux__) || (defined(__svr4__) && defined(__sun__)) || defined(__OpenBSD__)
However, it doesn't seem to do anything, at least not on my system (Tiger). Running trickle on curl or Safari seems not to affect download rates within these programs at all. Maybe trickle has to be adapted to Darwin? Would be interesting to know. Maybe someone who knows about these things can tell us?

[ Reply to This | # ]