G'day, You can't get a more authoritative answer than from Tobi himself, I thought I'd expand a bit on how clever rrd is :-)
> -----Original Message----- > From: Tobias Oetiker [SMTP:[EMAIL PROTECTED] > Sent: Wednesday, September 27, 2000 7:37 AM > To: Ehrentraut, Diana > Cc: '[email protected]' > Subject: [rrd-users] Re: xff and heartbeat > > > Today you sent me mail regarding [rrd-users] xff and heartbeat: > > ED> > ED> Hi all, > ED> > ED> as a newbie I have some problems in understanding the consolidation > ED> parameters... > ED> After reading the tutorial, the manuals and some mails in the > mailinglist I > ED> think I understand it more or less. But I would be very greatfull if > someone > ED> could verify that. > ED> > ED> The heartbeat defines the period within which should be an update, > ED> otherwise there > ED> will be an *UNKNOWN* asumed. > > yes > RRD gets fed samples at arbitrary times. From these it builds Primary Data Points (PDPs) at exact times every "step" interval. The PDPs are then accumulated into RRAs. The "heartbeat" defines the maximum acceptable interval between samples. If the interval between samples is less than "heartbeat", then an average rate is calculated and applied for that interval. If the interval between samples is longer than "heartbeat", then that entire interval is considered "unknown". Note that there are other things that can make a sample interval "unknown", such as the rate exceeding limits, or even an "unknown" input sample. The known rates during a PDP's "step" interval are used to calculate an average rate for that PDP. Also, if the total "unknown" time during the "step" interval exceeds the "heartbeat", the entire PDP is marked as "unknown". This means that a mixture of known and "unknown" sample time in a single PDP "step" may or may not add up to enough "unknown" time to exceed "heartbeat" and hence mark the whole PDP "unknown". So "heartbeat" is not only the maximum acceptable interval between samples, but also the maximum acceptable amount of "unknown" time per PDP (obviously this is only significant if you have "heartbeat" less than "step"). The "heartbeat" can be short (unusual) or long (typical) relative to the "step" interval between PDPs. A short "heartbeat" means you require multiple samples per PDP, and if you don't get them mark the PDP unknown. A long heartbeat can span multiple "steps", which means it is acceptable to have multiple PDPs calculated from a single sample. An extreme example of this might be a "step" of 5mins and a "heartbeat" of one day, in which case a single sample every day will result in all the PDPs for that entire day period being set to the same average rate. [...] > ED> So, if I set my heartbeat to a very long period, the xff does almost > have no > ED> effect. On the other hand, if I set the heartbeat to a short period > (e.g. > ED> the step-size of the RRD) I will have a high probability of getting > ED> *UNKNOWN* samples. Which I can decrease again setting xff high (e.g. > ED> xff=0.9). > > note that the heartbeat only applies to the DS update ... until a > PDP is built from the data ... the xff applies to the PDPs required > for building one RRA row > You are right that "xff" has little affect if you have few "unknown" PDPs, and setting "heartbeat" high is one way of reducing the number of "unknown" PDPs. However, it is worth remembering that "unknowns" can happen because of other reasons. When setting "xff", you are deciding how many "unknown" PDPs are acceptable when accumulating into an RRA, and an "unknown" really means that rrd has no idea what the rate for the PDP was. So "xff" is a "garbage threshold" for how much missing input data you can tolerate when accumulating your data into "course grain", large "steps", RRAs. When setting "heartbeat", you are specifying a requirement on your samples. Remember that a long "heartbeat" means that you are happy for multiple PDPs to be estimated from a single sample, which means the individual PDPs are not really accurate. The nice thing about this though is that these not-quite-accurate PDPs accumulate accurately. The individual PDPs are estimated from the average rate over a longer period, hence when you accumulate these PDPs into a single period, the average rate is correct for that period. So "heartbeat" is a "garbage threshold" for how much inaccuracy you can tolerate in your "fine grain", small "steps", RRAs. ABO -- Unsubscribe mailto:[EMAIL PROTECTED] Help mailto:[EMAIL PROTECTED] Archive http://www.ee.ethz.ch/~slist/rrd-users WebAdmin http://www.ee.ethz.ch/~slist/lsg2.cgi
