TRICKLED(8)

NAME
trickled - userspace bandwidth manager daemon

SYNOPSIS
trickled [-h] [-v] [-V] [-f] [-s] [-d rate[:schedule]] [-u rate[:schedule]] [-t seconds] [-l length] [-p priority] [-c file] [-n path] [-N seconds] [-w size]

DESCRIPTION
trickled is a userspace bandwidth manager daemon. trickled manages several trickle(1) sessions at a time, shaping across multiple sessions.

The options are as follows:

-v  Increases the verbosity level (can be specified multiple times).

-V  Prints version.

-f  Runs trickled in the foreground.

-s  Uses syslog for all output (instead of stderr).

-d rate[:schedule]
    Limit the download bandwidth consumption to rate KB/s. Optionally, set a schedule to follow.

-u rate[:schedule]
    Limit the upload bandwidth consumption to rate KB/s. Optionally, set a schedule to follow.

-t seconds
    Set smoothing time to seconds s. The smoothing time determines with what intervals trickled will try to let the application transcieve data. Smaller values will result in a more continuous (smooth) session, while larger values may produce bursts in the sending and receiving data. Smaller values (0.1 - 1 s) are ideal for interactive applications while slightly larger values (1 - 10 s) are better for applications that need bulk transfer. This parameter is customizable on a per-application basis via trickled.conf(5). The default value is 5 s.

-l length
    Set smoothing length to length KB. The smoothing length is a fallback of the smoothing time. If trickled cannot meet the requested smoothing time, it will instead fall back on sending length KB of data. The default value is 10 KB.

-p priority
    Set default priority to priority.

-c file
    Use the configuration file file. This file must be of the format documented in trickled.conf(5).

-n path
    Set socket name to path. By default, trickled uses /tmp/.trickled.sock.

-N seconds
    Notifies user of total bandwidth consumption every seconds s.

-w size
    Set peak detection window size to size KB. This determines how aggressive trickled is at eliminating bandwidth consumption peaks. Lower values will be more aggressive, but may also result in over shaping. The default value (512 KB) is usually sufficient.

  Schedules
Both the -u and -d flags accept one or more optional schedules, specified in the following form:

:[days_of_week][start_time],[end_time],[rate]

days_of_week may be any of Su M T W Th F Sa in any order. If no day is specified, the schedule will apply for all days.

start_time is the 3-or-4-digit 24-hour local time to begin the new bandwidth schedule. For example, 1234 would mean 12:34 PM. 123 would mean 1:23 AM. 2345 would mean 11:45 PM.

end_time is the 3-or-4-digit 24-hour local time to end the bandwidth schedule.

rate is the bandwidth limit (in KB/s) that is enforced during the specified time.

Multiple schedules can be string together on the command line. If the schedules overlap, the last one takes precident.

EXAMPLES
trickled -u 10 -d 20

Limit aggregate trickle(1) upload bandwidth consumption to 10 KB/s and download consumption to 20 KB/s.

trickled -d 50 -u 10:WSaSu130,145,1000:MTTh1200,300,96

Limit aggregate trickle(1) bandwidth consumption as follows:

•   constant 50 KB/s download limit

•   1000 KB/s upload limit between 1:30 AM and 1:45 AM on Wednesdays, Saturdays, and Sundays

•   96 KB/s upload limit between 12:00 noon and 3:00 PM on Mondays, Tuesdays, and Thursdays

•   10 KB/s upload limit otherwise

trickled -s -u 100 -d 10000:900,1700,10

Limit aggregate trickle(1) bandwidth consumption as follows:

•   constant 100 KB/s upload limit

•   10 KB/s download limit between 9:00 AM and 5:00 PM all days of the week

•   10,000 KB/s download limit otherwise

SEE ALSO
trickle(1), trickled.conf(5), syslog(3), netintro(4)

AUTHORS
trickled has been developed by Marius Aamodt Eriksen <marius@monkey.org>.