FreeBSD manual

download PDF document: dummynet.4.pdf

DUMMYNET(4) FreeBSD Kernel Interfaces Manual DUMMYNET(4)
NAME dummynet - traffic shaper, bandwidth manager and delay emulator
DESCRIPTION The dummynet system facility permits the control of traffic going through the various network interfaces, by applying bandwidth and queue size limitations, implementing different scheduling and queue management policies, and emulating delays and losses.
The user interface for dummynet is implemented by the dnctl(8) utility, so please refer to the dnctl(8) manpage for a complete description of the dummynet capabilities and how to use it.
Kernel Options The following options in the kernel configuration file are related to dummynet operation:
IPFIREWALL enable ipfirewall (if dummynet is to be used with ipfw) IPFIREWALL_VERBOSE enable firewall output IPFIREWALL_VERBOSE_LIMIT limit firewall output DUMMYNET enable dummynet operation HZ set the timer granularity
Generally, the following options are required:
options IPFIREWALL options DUMMYNET options HZ=1000 # strongly recommended
Additionally, one may want to increase the number of mbuf clusters (used to store network packets) according to the sum of the bandwidth-delay products and queue sizes of all configured pipes.
SEE ALSO setsockopt(2), if_bridge(4), ip(4), ipfw(8), dnctl(8), pf.conf(5), sysctl(8)
HISTORY The dummynet facility was initially implemented as a testing tool for TCP congestion control by Luigi Rizzo <luigi@iet.unipi.it>, as described on ACM Computer Communication Review, Jan.97 issue. Later it has been modified to work at the IP and bridging levels, integrated with the ipfw(4) packet filter, and extended to support multiple queueing and scheduling policies.
FreeBSD 14.0-RELEASE-p11 September 10, 2021 FreeBSD 14.0-RELEASE-p11