ipfw gred parameters
Eugene Grosbein
eugen at kuzbass.ru
Wed Sep 30 06:22:38 UTC 2009
On Tue, Sep 29, 2009 at 12:54:53PM -0600, Brett Glass wrote:
> I've been trying to determine the best parameters for gred ("gentle
> RED") to allow graceful bandwidth limiting in ipfw, but have found
> precious little guidance on the Web as to what the parameters mean.
> The code gives some hints, but I'm still uncertain: what parameters
> work best in a typical system? And how do the parameters submitted
> to "dummynet" correspond to the ones usually seen in descriptions
> of the algorithm?
I use the following schema:
ipfw add pipe $pipeno config bw ${group_bw}Kbit/s queue $qslots \
gred $w_q/$q_min/$q_max/$max_p
pipeno: number of pipe
group_bw: total pipe bandwidth
qslots: length of GRED queue
w_q: constantly equals to 0.002 (0 < w_q < 1),
exponential factor
max_p: constantly equals to 0.1, the probability of packet
drop lineary grows from zero upto $max_p
while GRED queue occupancy grows upto $q_min.
q_min: see max_p
q_max the probability of packet drop lineary
grows from max_p to 1 while GRED queue occupancy grows
from q_min to q_max
I choose q_min = 0.9*qslots, q_max = qslots.
For narrow pipes qslots should be small if short ping delays
are more preferable, e.g. qslots=50 for 256Kbit/s
or qslots=30 for 64Kbit/s.
For large bandwidth it's suitable to increase qslots;
for example, I use qslots=1000 for 10-15Mbit/s.
Eugene Grosbein
More information about the freebsd-net
mailing list