From owner-freebsd-net@FreeBSD.ORG Fri Dec 26 06:41:12 2008 Return-Path: Delivered-To: net@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A7B9B1065670 for ; Fri, 26 Dec 2008 06:41:12 +0000 (UTC) (envelope-from eugen@kuzbass.ru) Received: from www.svzserv.kemerovo.su (www.svzserv.kemerovo.su [213.184.65.80]) by mx1.freebsd.org (Postfix) with ESMTP id 069748FC08 for ; Fri, 26 Dec 2008 06:41:11 +0000 (UTC) (envelope-from eugen@kuzbass.ru) Received: from kuzbass.ru (kost [213.184.65.82]) by www.svzserv.kemerovo.su (8.13.8/8.13.8) with ESMTP id mBQ6f6p2051764; Fri, 26 Dec 2008 13:41:06 +0700 (KRAT) (envelope-from eugen@kuzbass.ru) Message-ID: <49547BFF.1E17DB47@kuzbass.ru> Date: Fri, 26 Dec 2008 13:38:55 +0700 From: Eugene Grosbein Organization: SVZServ X-Mailer: Mozilla 4.8 [en] (Windows NT 5.0; U) X-Accept-Language: ru,en MIME-Version: 1.0 To: Hartmut Brandt References: <20081225193818.GA9210@svzserv.kemerovo.su> <4953E89B.1060102@dlr.de> Content-Type: text/plain; charset=koi8-r Content-Transfer-Encoding: 7bit Cc: net@freebsd.org Subject: Re: bsnmpd & BGP full view X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 26 Dec 2008 06:41:12 -0000 Hartmut Brandt wrote: > > Is there a way to reduce bsnmpd's CPU & memory usage > > for BGP router using full view? > > > > I do not need to deal with routing table via SNMP. > > SNMP is needed to monitor interface byte counters only via mrtg. > > > > bsnmpd grows upto 18Mb for FreeBSD 6.4 and worse, > > it hogs CPU while bgpd obtains full view. > > > > Hmm. I just had a look and the version in 6.4 already has the optimized > route table (you may confirm that: > contrib/bsnmp/snmp_mibII/mibII_route.c should include sys/tree.h). > It takes 36 byte per route on a 32-bit machine and should take 52 byte > on a 64-bit one. The only way to reduce memory consumption considerably > that I can see is to use the kernel routing table directly, but this > requires to implement the GETNEXT operation in kernel. > > In any case it should re-read the kernel table only every 10 minutes and > in the mean time monitor the routing socket to update its copy of the > table. If of course someone is doing a lot of updates on > the kernel table it will receive all these changes and apply them to its > copy of the routing table. If the latter is a problem you could disable > the routing socket interface and could just rely on the 10 > minute re-reads. Thank you very much. How do I disable this interface for bsnmpd? > Between these re-reads you would not see changes to the > routing table through SNMP. That's OK for me - I don't look at routing table through SNMP at all :-) > BTW: how many routes do you have? When I introduced the optimized > routing table I tested with 150k routes which was reported to be > reasonable at that time. More than 271k prefixes. Eugene Grosbein