[rrd-users] quick sanity check on my config ... not sure if AVERAGE is appropriate

Alex van den Bogaerdt alex at ergens.op.het.net
Mon Oct 22 11:43:53 CEST 2007

On Sun, Oct 21, 2007 at 03:47:46PM -0700, Gore Jarold wrote:

> I created the RRD with:
> rrdtool create traffic.rrd DS:inbound:COUNTER:600:0:U
> DS:outbound:COUNTER:600:0:U RRA:AVERAGE:0.5:1:288

This is an unlimited rate.

If your counter wraps to zero, that's probably fine as it will most
likely do so at 2^32 or 2^32.

However, if your counter resets to zero, and if you don't tell rrdtool,
then rrdtool will think it is a wrap.

For instance:
The counter reached 12,345,678
The system reboots.
The counter is now 0

RRDtool does:

counter increase = 0-12345678
this is negative --> assume counter wrap
counter increase = 2^32+0-12345678
divide by 300
resulting rate: 14,275,405.39333 Bps which is 114,203,243.14666 bps.

This is not the reality and, depending on your network interface speed,
it may even go undetected.

But even for 10Mbps this could work:

Counter value: 4,000,000,000
Counter value: 0

counter increase = 0 - 4000000000
this is negative --> assume counter wrap
counter increase = 2^32+0-4000000000
divide by 300
resulting rate: 983,224 Bps which is 7,865,792 bps.

You need to:

a) set a sane upper limit
b) update with "U" when the counters are reset


use DERIVE instead of COUNTER.  Keep the lower limit as zero.

True counter wraps are no longer compensated for, but also you won't
have a problem with resets

Alex van den Bogaerdt

More information about the rrd-users mailing list