Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 8 Nov 2003 10:13:48 +0100 (CET)
From:      Harti Brandt <brandt@fokus.fraunhofer.de>
To:        Alex Hoff <ahoff@sandvine.com>
Cc:        "'freebsd-net@freebsd.org'" <freebsd-net@freebsd.org>
Subject:   Re: 64 bit packet counters
Message-ID:  <20031108100926.M78050@beagle.fokus.fraunhofer.de>
In-Reply-To: <FE045D4D9F7AED4CBFF1B3B813C8533701D9B454@mail.sandvine.com>
References:  <FE045D4D9F7AED4CBFF1B3B813C8533701D9B454@mail.sandvine.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, 7 Nov 2003, Alex Hoff wrote:

AH>Hi,
AH>
AH>We are attempting to implement the IF-MIB, which requires the use of 64 bit
AH>packet counters and the differentiation between multicast and broadcast
AH>pkts. Since changing the if_data (by adding new counters and changing the
AH>existing to u_int64) is a bad idea, does anyone have any good ideas on how
AH>to do this? I was thinking of tacking on a new struct (lets call it
AH>ifx_data) on at the end of the current if_net struct with the appropriate
AH>counters (i/opacket, i/obyte, i/obcast, i/omcast). Apart from having to do a
AH>little double counting is there any obvious pitfals with this approach? Does
AH>anyone have an better ideas? Is there currently any plans to update the
AH>network stack to handle this properly?

You may lookup the discussions in the mailing lists. As far as I remember
the problem with 64 bit counting was that this needs locks because not on
all architectures you have atomic 64bit add operations. A simple method
that does not involve kernel changes (and that I plan to implement in my
snmp daemon) is to periodically monitor the counters (depending on the
interface speed) and detect wraps in the daemon.

harti
-- 
harti brandt,
http://www.fokus.fraunhofer.de/research/cc/cats/employees/hartmut.brandt/private
brandt@fokus.fraunhofer.de, harti@freebsd.org



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20031108100926.M78050>