On Mon, Aug 29, 2016 at 03:32:41PM -0700, Neil McKee wrote:
> This patch changes the order of the steps that are followed
> every second in the sFlow agent.  By moving the receiver_tick()
> step to the end,  we ensure that any counters that were polled
> during the poller_tick() step are flushed immediately to the
> sFlow collector.  This eliminates what was a variable time-delay
> between counters being polled and being flushed.
> 
> The variable time-delay that this eliminates could be up to
> a second because counters lingering in the output buffer could be
> flushed at any time by the arrival of random packet-samples.
> 
> Since the sFlow standard does not require that a poll-timestamp be sent
> along with the counters the collector must use his receive-time as the
> timestamp, so that extra second of variable delay was "stretching or
> shrinking" the time between successive counter readings.  This
> affected any counter-rate calculation that was based only on the delta
> between sucessive samples. The effect was small with a polling
> interval of 60 seconds: just +/- 2%.  But the effect grew larger
> when faster polling was configured.  For example, if the counters
> were pushed every 5 seconds then the instantaneous rate
> calculations could wander by +/- 20%.  For a thorough analysis
> of this problem,  see Rick Jones' paper:
> 
> "High Frequency sFlow v5 Counter Sampling"
> ftp://ftp.netperf.org/papers/high_freq_sflow/hf_sflow_counters.pdf
> 
> So this patch makes it possible to obtain usable results even
> when high-frequency polling is configured.
> 
> Signed-off-by: Neil McKee <neil.mc...@inmon.com>

Thanks, applied to master and branch-2.6.
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to