Heavy-Hitter Detection Using a Hardware Sketch with the Countmin-CU Algorithm

We present a custom hardware architecture for fast heavy hitter detection in large data streams. The architecture probabilistically estimates the frequency of each element in the data stream using the Countmin-CU sketch with the H3 family of hash functions. The sketch is stored in on-chip memory, and the architecture exploits the parallelism available in the data by simultaneously processing each row of the sketch. The hash functions map each element to a set of counters on the sketch, and the sketch increments the counters that hold the minimum value, which corresponds to the estimated frequency of the element. The hash functions and sorting network are implemented in hardware as fully pipelined circuits, in order to maximize their operating clock frequency. We show a prototype of the architecture running on a Xilinx Kintex-7 XC7K325T FPGA operating with a 300MHz clock, which can process a stream of 3,982,496 32-bit elements and detect the heavy hitters with an 4x16,384-element sketch in 13.27ms, achieving a speedup of 768 compared to a modern desktop computer.

[1]  Alex C. Snoeren,et al.  Inside the Social Network's (Datacenter) Network , 2015, Comput. Commun. Rev..

[2]  Alok N. Choudhary,et al.  Real-time feature extraction for high speed networks , 2005, International Conference on Field Programmable Logic and Applications, 2005..

[3]  Moses Charikar,et al.  Finding frequent items in data streams , 2004, Theor. Comput. Sci..

[4]  Gustavo Sutter,et al.  A single-FPGA architecture for detecting heavy hitters in 100 Gbit/s ethernet links , 2017, 2017 International Conference on ReConFigurable Computing and FPGAs (ReConFig).

[5]  Fredrik Vannberg,et al.  KAnalyze: a fast versatile pipelined K-mer toolkit , 2014, Bioinform..

[6]  Eric Price,et al.  Improved Concentration Bounds for Count-Sketch , 2012, SODA.

[7]  Viktor K. Prasanna,et al.  Sketch Acceleration on FPGA and its Applications in Network Anomaly Detection , 2018, IEEE Transactions on Parallel and Distributed Systems.

[8]  Jeffrey Scott Vitter,et al.  An Efficient Algorithm for Discovering Motifs in Large DNA Data Sets , 2015, IEEE Transactions on NanoBioscience.

[9]  Graham Cormode,et al.  Approximating Data with the Count-Min Sketch , 2012, IEEE Software.

[10]  George Varghese,et al.  New directions in traffic measurement and accounting: Focusing on the elephants, ignoring the mice , 2003, TOCS.

[11]  Qingpeng Zhang,et al.  These Are Not the K-mers You Are Looking For: Efficient Online K-mer Counting Using a Probabilistic Data Structure , 2013, PloS one.

[12]  Piotr Indyk,et al.  Space-optimal heavy hitters with strong error bounds , 2009, PODS.

[13]  Viktor K. Prasanna,et al.  High Throughput Sketch Based Online Heavy Hitter Detection on FPGA , 2016, SIGARCH Comput. Archit. News.

[14]  Larry Carter,et al.  Universal Classes of Hash Functions , 1979, J. Comput. Syst. Sci..

[15]  Páll Melsted,et al.  Efficient counting of k-mers in DNA sequences using a bloom filter , 2011, BMC Bioinformatics.

[16]  Minlan Yu,et al.  FlowRadar: A Better NetFlow for Data Centers , 2016, NSDI.

[17]  N. D. Clarke,et al.  Integration of External Signaling Pathways with the Core Transcriptional Network in Embryonic Stem Cells , 2008, Cell.

[18]  M. V. Ramakrishna,et al.  Efficient Hardware Hashing Functions for High Performance Computers , 1997, IEEE Trans. Computers.