Per-flow traffic measurement has emerged as a critical but challenging task in data centers in recent years in the face of massive network traffic. Many approximate methods have been proposed to resolve the existing resource-accuracy trade-off in per-flow traffic measurement, one of which is the sketch-based method. However, sketches are affected by their high computational cost and low throughput; moreover, their measurement accuracy is hard to guarantee under the conditions of changing network bandwidth or flow size distribution. Recently, FPGAplatforms have been widely deployed in data centers, as they demonstrate a good fit for high-speed network processing. In this work, we aim to address the problem of per-flow traffic measurement from a hardware architecture perspective. We thus design SAPTM, a pipelined systolic array-like architecture for high-throughput per-flow traffic measurement on FPGA. We adopt memory-friendly D-left hashing in the design of SAPTM, which guarantees high space utilization during flow insertion and eviction, successfully addressing the challenge of tracking a high-speed data stream under limited memory resources on FPGA. Evaluations on the Xilinx VCU118 platform with real-world benchmarks demonstrate that SAPTM possesses high space utilization. Comparisons with state-of-the-art sketch-based solutions show that SAPTM outperforms comparison methods in terms of throughput by a factor of 14.1x–70.5x without any accuracy loss.
[1]
Graham Cormode,et al.
An improved data stream summary: the count-min sketch and its applications
,
2004,
J. Algorithms.
[2]
Graham Cormode,et al.
What's new: finding significant differences in network data streams
,
2004,
IEEE/ACM Transactions on Networking.
[3]
Rasmus Pagh,et al.
Cuckoo Hashing
,
2001,
Encyclopedia of Algorithms.
[4]
Ming-Yang Kao,et al.
Reversible sketches: enabling monitoring and analysis over high-speed data streams
,
2007,
TNET.
[5]
Eli Upfal,et al.
Balanced Allocations
,
1999,
SIAM J. Comput..
[6]
Burton H. Bloom,et al.
Space/time trade-offs in hash coding with allowable errors
,
1970,
CACM.
[7]
Berthold Vöcking,et al.
How asymmetry helps load balancing
,
1999,
JACM.
[8]
Yulong Shen,et al.
Diamond Sketch: Accurate Per-flow Measurement for Big Streaming Data
,
2019,
IEEE Transactions on Parallel and Distributed Systems.