64 bit packet counters
Harti Brandt
brandt at fokus.fraunhofer.de
Sat Nov 8 01:13:54 PST 2003
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 at fokus.fraunhofer.de, harti at freebsd.org
More information about the freebsd-net
mailing list