db354bd2e1
Sketching algorithm provide high-fidelity approximate measurements and appears as a promising alternative to traditional approaches such as packet sampling. NitroSketch [1] is a software sketching framework that optimizes performance, provides accuracy guarantees, and supports a variety of sketches. This commit adds a new data structure called sketch into membership library. This new data structure is an efficient way to profile the traffic for heavy hitters. Also use min-heap structure to maintain the top-k flow keys. [1] Zaoxing Liu, Ran Ben-Basat, Gil Einziger, Yaron Kassner, Vladimir Braverman, Roy Friedman, Vyas Sekar, "NitroSketch: Robust and General Sketch-based Monitoring in Software Switches", in ACM SIGCOMM 2019. https://dl.acm.org/doi/pdf/10.1145/3341302.3342076 Signed-off-by: Alan Liu <zaoxingliu@gmail.com> Signed-off-by: Yipeng Wang <yipeng1.wang@intel.com> Signed-off-by: Leyi Rong <leyi.rong@intel.com> Tested-by: Yu Jiang <yux.jiang@intel.com> |
||
---|---|---|
.. | ||
meson.build | ||
rte_member_heap.h | ||
rte_member_ht.c | ||
rte_member_ht.h | ||
rte_member_sketch_avx512.c | ||
rte_member_sketch_avx512.h | ||
rte_member_sketch.c | ||
rte_member_sketch.h | ||
rte_member_vbf.c | ||
rte_member_vbf.h | ||
rte_member_x86.h | ||
rte_member.c | ||
rte_member.h | ||
rte_xxh64_avx512.h | ||
version.map |