]> git.saurik.com Git - apple/xnu.git/blob - bsd/man/man4/dummynet.4
xnu-792.tar.gz
[apple/xnu.git] / bsd / man / man4 / dummynet.4
1 .\"
2 .\" $FreeBSD: /repoman/r/ncvs/src/share/man/man4/dummynet.4,v 1.4.2.12 2002/11/18 21:51:16 luigi Exp $
3 .\"
4 .Dd October 28, 2002
5 .Dt DUMMYNET 4
6 .Os Darwin
7 .Sh NAME
8 .Nm dummynet
9 .Nd traffic shaper, bandwidth manager and delay emulator
10 .Sh DESCRIPTION
11 .Em dummynet
12 is a system facility that permits the control of traffic
13 going through the various network interfaces, by applying bandwidth
14 and queue size limitations, implementing different scheduling and queue
15 management policies, and emulating delays and losses.
16 .Pp
17 The user interface for
18 .Em dummynet
19 is implemented by the
20 .Nm ipfw
21 program, so the reader is referred to the
22 .Xr ipfw 8
23 manpage for a complete description of the capabilities of
24 .Nm
25 and on how to use it.
26 .Sh KERNEL OPTIONS
27 The following options in the kernel configuration file are related to
28 .Nm
29 operation:
30 .Bd -literal
31 IPFIREWALL - enable ipfirewall (required for dummynet).
32 IPFIREWALL_VERBOSE - enable firewall output.
33 IPFIREWALL_VERBOSE_LIMIT - limit firewall output.
34 DUMMYNET - enable dummynet operation.
35 NMBCLUSTERS - set the amount of network packet buffers
36 HZ - sets the timer granularity
37 .Ed
38 .Pp
39 Generally, the following options are required:
40 .Bd -literal
41 options IPFIREWALL
42 options DUMMYNET
43 options HZ=1000 # strongly recommended
44 .Ed
45 .Pp
46 additionally, one may want to increase the number
47 of mbuf clusters (used to store network packets) according to the
48 sum of the bandwidth-delay products and queue sizes of all configured
49 pipes.
50 .Sh SEE ALSO
51 .Xr setsockopt 2 ,
52 .Xr bridge 4 ,
53 .Xr ip 4 ,
54 .Xr ipfw 8 ,
55 .Xr sysctl 8
56 .Sh HISTORY
57 .Nm
58 was initially implemented as a testing tool for TCP congestion control
59 by
60 .An Luigi Rizzo Aq luigi@iet.unipi.it ,
61 as described on ACM Computer Communication Review, Jan.97 issue.
62 Later it has been then modified to work at the ip and bridging
63 level, integrated with the IPFW packet filter, and extended to
64 support multiple queueing and scheduling policies.