tcp_output starving -- is due to mbuf get delay?

Mike Silbersack silby at
Sun Apr 13 23:55:12 PDT 2003

On Sat, 12 Apr 2003, Hiten Pandya wrote:

> > That tcp_quench knocks the window size back to one packet, if I'm not
> > mistaken.  You might want to put a counter there and see if that's
> > happening frequently to you; if so, it might explain some loss of
> > performance.
> Maybe something like this:
> Cheers.
>   -- Hiten

As Jayanth pointed out, ip_output already keeps statistics on when it
returns ENOBUFS, so adding this additional variable wouldn't be of much

For reference (from netstat -s):

        0 output packets dropped due to no bufs, etc.

Although, I think ip_output could be improved.  It precalculates the
expected # of packets to be sent, and returns ENOBUFS early if its
estimate looks bad.  However, if it gets to the point where if_output is
called, and if_output then fails, no statistic is kept.  So, it does look
like Hiten's patch could be useful, as well as another counter tracking
if_output failures.

But I'm too busy to worry about them for now. :)

Mike "Silby" Silbersack

More information about the freebsd-performance mailing list