Deleted Added
full compact
dummynet.4 (50476) dummynet.4 (57676)
1.\"
1.\"
2.\" $FreeBSD: head/share/man/man4/dummynet.4 50476 1999-08-28 00:22:10Z peter $
2.\" $FreeBSD: head/share/man/man4/dummynet.4 57676 2000-03-01 14:50:24Z sheldonh $
3.\"
4.Dd Sep 28, 1998
5.Dt DUMMYNET 4
6.Os
7.Sh NAME
8.Nm dummynet
9.Nd Flexible bandwidth manager and delay emulator
10.Sh SYNOPSIS

--- 14 unchanged lines hidden (view full) ---

25program, by means of
26.Nm ``pipe''
27rules.
28A dummynet
29.Nm pipe
30is characterized by a bandwidth, delay, queue size, and loss
31rate, which can be configured with the
32.Nm ipfw
3.\"
4.Dd Sep 28, 1998
5.Dt DUMMYNET 4
6.Os
7.Sh NAME
8.Nm dummynet
9.Nd Flexible bandwidth manager and delay emulator
10.Sh SYNOPSIS

--- 14 unchanged lines hidden (view full) ---

25program, by means of
26.Nm ``pipe''
27rules.
28A dummynet
29.Nm pipe
30is characterized by a bandwidth, delay, queue size, and loss
31rate, which can be configured with the
32.Nm ipfw
33program. Pipes are
33program.
34Pipes are
34numbered from 1 to 65534, and packets can be passed through multiple
35pipes depending on the ipfw configuration.
36.Pp
37Dummynet operates at the ip level, but if bridging extensions are
38enabled, it is possible to pass bridged packets through pipes as well.
39.Sh USAGE
40Packets are sent to a pipe using the command
41.Bd -literal

--- 38 unchanged lines hidden (view full) ---

80The
81.Nm ipfw
82code is used to select packets that must be subject to
83bandwidth/queue/delay/losses, and returns the identifier of
84the ``pipe'' describing such limitations.
85.Pp
86Selected packets are first queued in a bounded size queue, from which
87they are extracted at the programmed rate and passed to a second queue
35numbered from 1 to 65534, and packets can be passed through multiple
36pipes depending on the ipfw configuration.
37.Pp
38Dummynet operates at the ip level, but if bridging extensions are
39enabled, it is possible to pass bridged packets through pipes as well.
40.Sh USAGE
41Packets are sent to a pipe using the command
42.Bd -literal

--- 38 unchanged lines hidden (view full) ---

81The
82.Nm ipfw
83code is used to select packets that must be subject to
84bandwidth/queue/delay/losses, and returns the identifier of
85the ``pipe'' describing such limitations.
86.Pp
87Selected packets are first queued in a bounded size queue, from which
88they are extracted at the programmed rate and passed to a second queue
88where delay is simulated. At the output from the second queue packets
89where delay is simulated.
90At the output from the second queue packets
89are reinjected into the protocol stack at the same point they came
90from (i.e. ip_input(), ip_output(), bdg_forward() ).
91Depending on the setting of the sysctl variable
92 sys.net.inet.ipfw.one_pass
93Packets coming from a pipe can be either forwarded to their
94destination, or passed again through the
95.Nm ipfw
96rules, starting from the one after the matching rule.
97.Pp
98.Nm dummynet
91are reinjected into the protocol stack at the same point they came
92from (i.e. ip_input(), ip_output(), bdg_forward() ).
93Depending on the setting of the sysctl variable
94 sys.net.inet.ipfw.one_pass
95Packets coming from a pipe can be either forwarded to their
96destination, or passed again through the
97.Nm ipfw
98rules, starting from the one after the matching rule.
99.Pp
100.Nm dummynet
99performs its task once per timer tick. The granularity of operation is
101performs its task once per timer tick.
102The granularity of operation is
100thus controlled by the kernel option
101.Bd -literal
102 options HZ
103.Ed
104
105whose default value (100) means a granularity of 10ms.
106For an accurate simulation of high data rates it might be necessary to
103thus controlled by the kernel option
104.Bd -literal
105 options HZ
106.Ed
107
108whose default value (100) means a granularity of 10ms.
109For an accurate simulation of high data rates it might be necessary to
107reduce the timer granularity to 1ms or less. Consider, however,
110reduce the timer granularity to 1ms or less.
111Consider, however,
108that some interfaces using programmed I/O may require a considerable
112that some interfaces using programmed I/O may require a considerable
109time to output packets. So, reducing the granularity too much might
113time to output packets.
114So, reducing the granularity too much might
110actually cause ticks to be missed thus reducing the accuracy of
111operation.
112
113.Sh KERNEL OPTIONS
114The following options in the kernel configuration file are related
115to
116.Nm dummynet
117operation:

--- 54 unchanged lines hidden (view full) ---

172.Sh BUGS
173This manpage is not illustrating all the possible ways to use
174dummynet.
175.Sh HISTORY
176.Nm
177dummynet
178was initially implemented as a testing tool for TCP congestion control
179by Luigi Rizzo <luigi@iet.unipi.it>, as described on ACM Computer
115actually cause ticks to be missed thus reducing the accuracy of
116operation.
117
118.Sh KERNEL OPTIONS
119The following options in the kernel configuration file are related
120to
121.Nm dummynet
122operation:

--- 54 unchanged lines hidden (view full) ---

177.Sh BUGS
178This manpage is not illustrating all the possible ways to use
179dummynet.
180.Sh HISTORY
181.Nm
182dummynet
183was initially implemented as a testing tool for TCP congestion control
184by Luigi Rizzo <luigi@iet.unipi.it>, as described on ACM Computer
180Communication Review, Jan.97 issue. Later it has been then modified
185Communication Review, Jan.97 issue.
186Later it has been then modified
181to work at the ip and bridging level, and integrated with the IPFW
182packet filter.
187to work at the ip and bridging level, and integrated with the IPFW
188packet filter.