From owner-freebsd-net Tue Mar 26 8:49: 9 2002 Delivered-To: freebsd-net@freebsd.org Received: from mave.nlanr.net (mave.nlanr.net [198.202.74.38]) by hub.freebsd.org (Postfix) with ESMTP id 90DC137B419 for ; Tue, 26 Mar 2002 08:49:05 -0800 (PST) Received: from localhost (mjl@localhost) by mave.nlanr.net (8.11.1/8.11.1) with ESMTP id g2QGmx092341; Tue, 26 Mar 2002 08:48:59 -0800 (PST) (envelope-from mjl@nlanr.net) X-Authentication-Warning: mave.nlanr.net: mjl owned process doing -bs Date: Tue, 26 Mar 2002 08:48:59 -0800 (PST) From: Matthew Luckie To: Luigi Rizzo Cc: freebsd-net@FreeBSD.ORG Subject: Re: ip_output and ENOBUFS In-Reply-To: <20020325145447.A2986@iguana.icir.org> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-net@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.org > I am under the impression that implementing this mechanism would > not be so trivial. hmm, we looked at how other protocols handled the ENOBUFS case from ip_output. tcp_output calls tcp_quench on this error. while the interface may not be able to send any more packets than it does currently, closing the congestion window back to 1 segment seems a severe way to handle this error, knowing that the network did not drop the packet due to congestion. Ideally, there might be some form of blocking until such time as a mbuf comes available. This sounds as if it will be much easier come FreeBSD 5.0 I'm aware that if people are hitting this condition, they need to increase the number of mbufs to get maximum performance. This section of code has previously been discussed here: http://docs.freebsd.org/cgi/getmsg.cgi?fetch=119188+0+archive/2000/freebsd-net/20000730.freebsd-net and has been in use for many years (a glance at TCP/IP Illustrated Vol 2 shows similar code), so there is probably a good reason that I am not aware of for this code to be in place. Comments? To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-net" in the body of the message