Estimating the number of Active Flows in a Data Stream over a Sliding Window

Éric Fusy, Frécéric Giroire · 2007

A new algorithm is introduced to estimate the number of distinct flows (or connections) in a data stream. The algorithm maintains an accurate estimate of the number of distinct flows over a sliding window. It is simple to implement, parallelizes optimally, and has a very good tradeoff between auxiliary memory and accuracy of the estimate: a relative accuracy of order requires essentially a memory of order m ln(n/m) words, where n is an upper bound on the number of flows to be seen over the sliding window. For instance, a memory of only 64kB is sufficient to maintain an estimate with accuracy of order 4 percents for a stream with several million flows. The algorithm has been validated both by simulations and experimentations on real traffic. It proves very efficient to monitor traffic and detect attacks.

Read the paper · More papers on PaperTik