From owner-freebsd-ipfw Mon Jan 14 14:58:57 2002 Delivered-To: freebsd-ipfw@freebsd.org Received: from iguana.icir.org (iguana.icir.org [192.150.187.36]) by hub.freebsd.org (Postfix) with ESMTP id 847A537B41C for ; Mon, 14 Jan 2002 14:58:51 -0800 (PST) Received: (from rizzo@localhost) by iguana.icir.org (8.11.3/8.11.3) id g0EMwnB70611; Mon, 14 Jan 2002 14:58:49 -0800 (PST) (envelope-from rizzo) Date: Mon, 14 Jan 2002 14:58:49 -0800 From: Luigi Rizzo To: chkno@dork.com Cc: freebsd-ipfw@FreeBSD.ORG Subject: Re: ip_dummynet.c:"*** OUCH! pipe should have been idle!" Message-ID: <20020114145849.A70496@iguana.icir.org> References: <20020114141539.A70340@iguana.icir.org> <200201142246.g0EMkXC05128@chk.phattydomain.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <200201142246.g0EMkXC05128@chk.phattydomain.com> User-Agent: Mutt/1.3.23i Sender: owner-freebsd-ipfw@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG > Rules 49 & 51 are in place because of my other issue. By setting > the pipe's queue value to less than 20 slots I can make rule 51 > count orders of magnitude more packets than rule 49. I was wondering > if this was standard behavior. The problem seems to dissapear as > long as I keep the pipe queue large. See -questions for that thread. I have an explaination for this. When the queue overflows, you get an ENOBUFS error, which natd detects and handles by retransmitting the packet at a later time (not a very good idea, I'd say that natd should just drop the packet in this case. The "fix" might be trapping the ENOBUFS error in usr/src/sbin/natd.c:FlushPacketBuffer() and returning as if the transmission was successful). > > Also, if the problem is easily reproducible, please > > let me know if you are interested in testing some patches > > The OUCH event is not reproduceable. It happened in the middle of > the night, & has only happened once so far. eh, then all i can say is wait and see if it happens again... in the meantime i will have a closer look at the code. > The large port range issue seems more related to ipfw than dummynet, i am not sure what is the issue there... do thing work if you reduce the upper limit to 65534 ? In this case it might just be a problem with unsigned short comparisons... cheers luigi -----------------------------------+------------------------------------- Luigi RIZZO, luigi@iet.unipi.it . Dip. di Ing. dell'Informazione http://www.iet.unipi.it/~luigi/ . Universita` di Pisa TEL/FAX: +39-050-568.533/522 . via Diotisalvi 2, 56126 PISA (Italy) Mobile +39-347-0373137 -----------------------------------+------------------------------------- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-ipfw" in the body of the message