Smokeping::matchers::ExpLoss(3) exponential weighting matcher for packet loss


Match against exponential weighted average of last samples, thus new values are more valuable as old ones. Two thresholds - rising and falling - produce hysteresis loop like in RMON alert subsystem. If the average reaches the ``rising'' threshold, matcher go to the ``match'' state and hold It until the average drops under the ``falling'' threshold.

Call the matcher with the following sequence:

 type = matcher
 pattern =  CheckLoss(hist => <hist>, rising=><rising> \
                     [,falling => <falling>] [,skip=><stat>] [,fast=><fast>])

 hist    - number of samples to weight against; weight will be disposed with
           exponetial decreasing manner from newest to oldest, so that the
           oldest sample would have 1% significance;
 rising  - rising threshold for packet loss, 0-100%
 falling - falling threshold for packet loss, default is <rising>
 skip    - skip <skip> number of samples after startup before ``fire'' alerts.
 fast    - use <fast> samples for fast transition: if the values of last <fast>
           samples more then <rising> - take ``match'' state, if less then
           <falling> - take ``no match'' state.

 If the actual history is less then <hist> value then this value is taken 
 as the actual history.


Copyright (c) 2008 Veniamin Konoplev

Developed in cooperation with EU EGEE project


This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.


Veniamin Konoplev <[email protected]>