ipfw (dummynet) adds delay, but not configured to do so
Ian Smith
smithi at nimnet.asn.au
Fri Mar 6 06:15:14 PST 2009
On Fri, 6 Mar 2009, Luigi Rizzo wrote:
> On Fri, Mar 06, 2009 at 04:23:29PM +1100, Ian Smith wrote:
> ...
> > ipfw(8) at 7.1-RELEASE:
> >
> > delay ms-delay
> > Propagation delay, measured in milliseconds. The value is
> > rounded to the next multiple of the clock tick (typically 10ms,
> > but it is a good practice to run kernels with ``options HZ=1000''
> > to reduce the granularity to 1ms or less). Default value is 0,
> > meaning no delay.
> >
> > Firstly, this is well out of date; the default has been HZ=1000 since
> > 6.1-R or earlier, a ten-fold increase on the old 100Hz. I'm not sure
> > however that 10000 would be a suitable suggestion, even with today's
> > processor speeds?
>
> You can bump it up HZ but there are things that do not scale as well
> as CPU clock frequencies. E.g. the access to slow peripherals on
> the PCI or ISA buses is still as slow as it was 15 years ago,
> and if your timer-driven routine needs to access one of those
> peripherals it might consume a significant number of microseconds.
> At HZ=1000 this is probably negligible; at HZ=10k you might start
> noticing.
Indeed. HZ=1000 is a bit busy (like ~+10% CPU) on a Celeron 300 laptop,
now at 250Hz, no dummynet. I expect 10kHz slicing would drown it, ie
without some qualification re CPU clock, suggested defaults are risky.
> > Secondly, apropos Sebastian's experience, should this say "The value
> > (even if 0) is rounded to the next multiple of the clock tick .." ?
> > ^^^^^^^^^^^
>
> 0 is rounded to 0 so that's not an issue.
> The delay Sebastian is seeing comes from the babdnwidth limitation,
> which is causing a non-zero "transmission time" which is rounded up.
Think I've almost starting to get this, thanks.
cheers, Ian
More information about the freebsd-ipfw
mailing list