Docs TrafficShaping » History » Revision 8
Revision 7 (moo, 2007-07-07 15:30) → Revision 8/15 (moo, 2007-07-07 15:30)
[[TracNav(DocsToc)]] <pre> {{{ #!rst =============== Traffic Shaping =============== ------------ Module: core ------------ .. meta:: :keywords: lighttpd, bandwidth limit, traffic shaping .. contents:: Table of Contents Description =========== Starting with 1.3.8, lighttpd supports limiting the bandwidth for a single connection or config context like a virtual host or a URL. Options ======= connection.kbytes-per-second: limit the throughput for each single connection to the given limit in kbyte/s default: 0 (no limit) server.kbytes-per-second: limit the throughput for all connections to the given limit in kbyte/s if you want to specify a limit for a special virtual server use: :: $HTTP["host"] == "www.example.org" { server.kbytes-per-second = 128 } which will override the default for this host. default: 0 (no limit) Additional Notes ================ Keep in mind that a limit below 32kb/s might actually limit the traffic to 32kb/s. This is caused by the size of the TCP send buffer. ------------------------------------- Selective traffic shaping (>=1.5-svn) ------------------------------------- There is a small plugin to use selective traffic shaping on a per-connection base. You can e.g. use php and do:: <?php header("X-LIGHTTPD-KBytes-per-second: 50"); header("X-Sendfile: /path/to/file"); ?> to set the speed of the current connection. Options ======= speed.just-copy-header = "enable" use this on the frontend to just copy the header from the response to the request header (forward it to the backend) default: "disabled" (just use it) speed.use-request = "enable" use this on the backend to fetch the speed from the request. This is not useful on the frontend, i think :) default: "disabled" (don't look in the request headers) Download ======== http://trac.lighttpd.net/trac/attachment/wiki/Docs/TrafficShaping/mod_speed.c </pre> }}}