On Thu, Feb 01, 2007 at 09:32:17AM +0100, Federico Giannici wrote:
> Claudio Jeker wrote:
> >On Wed, Jan 31, 2007 at 06:21:57PM +0100, Adriaan wrote:
> >>On 1/31/07, Bret Lambert <[EMAIL PROTECTED]> wrote:
> >>[snip]
> >>>Running and tuning OpenBSD network servers
> >>>in a production environment:
> >>>
> >>>http://www.openbsd.org/papers/tuning-openbsd.ps
> >>>
> >>>may have the info you're looking for.
> >>IIRC Theo said he would throw Henning in the ocean for that paper ;)
> >>
> >
> >Actually Henning said he would throw Henning in the ocean for that paper.
> >
> >But back to the original problem with the no buffer space reports.
> >This is in fact an expected behaviour for non stream oriented  protocols
> >like udp or icmp (ping). The problem here is that ENOBUF is returned by
> >the queuing code when the interface queue is full. The error is then
> >reported upwards and in case of datagram sockets is reported back to the
> >userland process. A smart client/server would reduce the packet throughput
> >in such a case. e.g. ping -f is not that smart.
> >In TCP this error is handled by the kernel and so mostly invisible for the
> >userland.
> 
> Claudio, thanks for the explanation.
> 
> Considering that the traffic is not GENERATED by the PC itself, and that 
> it is a firewall/queuing/gateway with a lot of queues and traffic, how 
> can I increase the "interface queue"?
> 
> Are we talking about a NIC (hardware) queue, so I can try to change it 
> with another model (currently a fxp)?
> Or is it some kind of kernel buffer, so there is some kernel option to 
> increase?
> 

You are using many altq queues. Now altq implements a virtual limit on the
interface queue via some sort of token bucket. If the queue gets full
packet need to be dropped -- like stuffing 10Mbps into a 2Mbps queue will
not work without dropping at least some packets. Altq returns ENOBUF when
packets need to be dropped because the limit has been reached.
So when your pfctl -v -s q output shows many dropped packets you know
where the ENOBUFs come from.

-- 
:wq Claudio

Reply via email to