From owner-freebsd-net@FreeBSD.ORG Sun Nov 30 05:25:03 2008 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 6ECE71065673 for ; Sun, 30 Nov 2008 05:25:03 +0000 (UTC) (envelope-from prvs=julian=2131aa4c9@elischer.org) Received: from smtp-outbound.ironport.com (smtp-outbound.ironport.com [63.251.108.112]) by mx1.freebsd.org (Postfix) with ESMTP id 61D748FC12 for ; Sun, 30 Nov 2008 05:25:03 +0000 (UTC) (envelope-from prvs=julian=2131aa4c9@elischer.org) Received: from unknown (HELO julian-mac.elischer.org) ([10.251.60.239]) by smtp-outbound.ironport.com with ESMTP; 29 Nov 2008 21:25:03 -0800 Message-ID: <493223B5.7080502@elischer.org> Date: Sat, 29 Nov 2008 21:25:09 -0800 From: Julian Elischer User-Agent: Thunderbird 2.0.0.18 (Macintosh/20081105) MIME-Version: 1.0 To: Mykel References: <4931A5B6.1060000@mWare.ca> <49321494.90706@elischer.org> <49321EE2.6020001@freebsd.org> <49321FF8.6000805@mWare.ca> In-Reply-To: <49321FF8.6000805@mWare.ca> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: freebsd-net@freebsd.org Subject: Re: Determining counts or size of routing table? (netstat performance?) 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: Sun, 30 Nov 2008 05:25:03 -0000 Mykel wrote: > Sam Leffler wrote: >> Julian Elischer wrote: >>> Mykel wrote: >>>> Got a few 6.x machines running OpenBGPd with a few BGP full-feeds and a >>>> handful of peers... I'd like to determine the size of the FIB/kernel >>>> routing table. OpenBGPd does not give me this data, and on my >>>> duallie-Xeon 2.8s, it takes quite a while to use netstat & wc to count. >>>> >>>> I'm not looking for exact numbers, just something I can poll via >>>> NetSNMP >>>> and plot in cacti... >>>> >>>> I looked though netstat, route, sysctl, vmstat, even pored over an >>>> snmpwalk... can't find anything. >>>> Been asking around, and the only suggestion I've received was to >>>> write a >>>> daemon that dumps the table and then monitors the changes, but I'm >>>> not a >>>> programmer, nor could I find any tool in ports that might assist in >>>> this. >>>> >>>> I'd be happy with almost any metric that gives me some absolute >>>> reference as to how big my routing table is so I can get some nice >>>> pretty graphs done up. Not pounding the system every 60-300 seconds >>>> would be very nice. >>>> >>>> Any suggestions? Or does everyone just pipe netstat? Is there a MIB for >>>> sysctl or NetSNMP I'm missing? >>>> >>> no. It's a hard thing to do so that is why it hasn't been done yet. >> Perhaps I misunderstand his question but >> >> trouble% vmstat -m |grep routetbl >> routetbl 14 2K - 33875 16,32,64,128,256 >> >> should show memory allocated to the routing table. > I was also shown (privately) this: > > # vmstat -z | grep "rtentry" > rtentry: 120, 0, 198, 474, > 12190, 0 > > Either works for me, so I'm now happy. Thanks! neither of these gives an exactly accurate answer, In hte case of dangling routes, for example, routes can be outside the table and still not freed. (their reference counts have not gone to 0 as a socket still holds a reference for example). it is however a good upper bound I guess > > Myke > > _______________________________________________ > freebsd-net@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-net > To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org"