From owner-freebsd-net Mon Feb 11 11: 5:20 2002 Delivered-To: freebsd-net@freebsd.org Received: from patrocles.silby.com (d188.as6.nwbl0.wi.voyager.net [169.207.130.62]) by hub.freebsd.org (Postfix) with ESMTP id DCE3937B427 for ; Mon, 11 Feb 2002 11:04:36 -0800 (PST) Received: from localhost (silby@localhost) by patrocles.silby.com (8.11.6/8.11.6) with ESMTP id g1BD89385047; Mon, 11 Feb 2002 13:08:20 GMT (envelope-from silby@silby.com) X-Authentication-Warning: patrocles.silby.com: silby owned process doing -bs Date: Mon, 11 Feb 2002 13:08:07 +0000 (GMT) From: Mike Silbersack To: Tariq Rashid Cc: freebsd-net@FreeBSD.ORG Subject: RE: squeeze more performance out of natd? In-Reply-To: Message-ID: <20020211130512.S84750-100000@patrocles.silby.com> 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 On Mon, 11 Feb 2002, Tariq Rashid wrote: > some tests seems to show that natd's cpu load goes up because we have a > large file descriptor set for select() - this is more of a problem than the > kernelspace/userland packet traversal. the traffic its handling is something > like 1500 low traffic tcp connections to a single server port. > > from doing some rtfm-ing i see that select() is not very scalable - not > good for large fd sets and not good if they are nearly alwats ready for > reading. The best way to improve performance would probably be to rewrite natd to use kqueue instead of select. I'm not sure how difficult this would be, you might wish to talk to jlemon if you have any questions on the best way to tackle the project. Mike "Silby" Silbersack To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-net" in the body of the message