one sketch to rule them all rethinking network flow
play

One Sketch to Rule Them All: Rethinking Network Flow Monitoring - PowerPoint PPT Presentation

One Sketch to Rule Them All: Rethinking Network Flow Monitoring with UnivMon Zaoxing Liu, Antonis Manousis, Greg Vorsanger, Vyas Sekar, and Vladimir Braverman Many Monitoring Requirements Traffic Engineering Anomaly Detection Flow Size


  1. One Sketch to Rule Them All: Rethinking Network Flow Monitoring with UnivMon Zaoxing Liu, Antonis Manousis, Greg Vorsanger, Vyas Sekar, and Vladimir Braverman

  2. Many Monitoring Requirements Traffic Engineering Anomaly Detection “Flow Size Distribution” “Entropy”, “Traffic Changes” Worm Detection Accounting “SuperSpreaders” “Heavy Hitters” Who’s sending a lot more traffic than 10min ago? (Change) • Who’s sending a lot from 10.0.1.0/16? (Heavy Hitter) • Are you being DDoS-ed? • 2

  3. Traditional: Packet Sampling Sample packets at random, group into flows Flow = Packets with same pattern FlowId Counter Source and Destination Address and Flow reports 1 2 1 Ports 1 1 6 1 3 1 1 1 1 1 6 1 3 1 1 1 1 3 1 6 Estimate: FSD, Entropy, Heavy Hitters … Prior work: Not good for fine-grained analysis! 3

  4. Alternative: App-Specific Sketches Heavy Hitter Entropy Superspreader …. Application-Level Application-Level Application-Level Metric Metric Metric …. Counter Counter Counter Data Data Data Structures Structures Structures Packet Packet Packet Processing Processing Processing Pre-deployed Algorithms Traffic Higher Complexity with more applications Higher development time as new applications appear Tight Binding between monitoring data and control plane 4

  5. Motivating Question Today Generality XO XOR Fidelity Late Binding e.g., NetFlow e.g., Sketches AN AND Can we achieve this 5

  6. UnivMon Vision …... App 1 App n Application-specific Computation Configure Report Control Plane Data Plane Packet Update Counters Processing “General” Sketch Traffic • One Sketch for multiple tasks • Naturally Late-binding 6

  7. Many Natural Challenges! Does such a construction exist? If it exists, is it feasible to implement? Does it extend to a network-wide setting? e.g., Multiple paths, Multiple dimensions Is it competitive w.r.t. custom algorithms? 7

  8. This Talk Does such a construction exist? If it exists, is it feasible to implement? Does it extend to a network-wide setting? e.g., Multiple paths, Multiple dimensions Is it competitive w.r.t. custom algorithms? 8

  9. This Talk Does such a construction exist? If it exists, is it feasible to implement? Does it extend to a network-wide setting? e.g., Multiple paths, Multiple dimensions Is it competitive w.r.t. custom algorithms? 9

  10. Concept of Universal Streaming • Basic Streaming Algorithms: % $ Frequency Moments F k = ∑ 𝑔 #&' # (A stream of length m with n unique items) F 2 : AMS Sketch, Count Sketch …... 1 1 5 1 3 3 1 2 4 6 5 …... One algorithm solves one problem frequency vector < f 1 ,f 2 … f n > Universality: • Universal Streaming? arbitrary g() function? …... 1 1 5 1 3 3 1 2 4 6 5 % G-sum = ∑ 𝑕(𝑔 # ) #&' frequency vector < f 1 ,f 2 … f n > 10

  11. Theory of Universal Streaming [BO’10, BO’13] Thm 1: There exists a universal approach to estimate G-sum when g() function is non-decreasing such that g(0)=0, and 𝑕(𝑔 # ) # 2 . doesn’t grow monotonically faster than 𝑔 Thm 2: A universal sketch construction can be used to estimate G- sum with high probability using polylogarithmic memory. 11

  12. Intuition of Universal Sketch Informal Definition: Item 𝑗 is a 𝑕 -heavy hitter if changing its frequency 𝑔 # significantly affects its G-sum. Case 1: there is one sufficiently large a 𝑕 -heavy hitter Most of mass is concentrated in this heavy hitter. Use L2 Heavy-Hitter algorithm to find such a heavy hitter. Case 2: there is NO single sufficiently large 𝑕 -heavy hitter Find heavy hitters on a series of sampled substreams of increasingly smaller size. 12

  13. Universal Sketch Data Structure Estimated G-sum Generate log(n) substreams by zero-one hash funcs Count-Sketch etc. H1….H log(n) 0 1 1 5 1 3 3 1 2 4 6 5 Heavy Hitter Alg ( 1 ,4), ( 3 ,2),( 5 ,2) 1 1 1 5 1 1 2 5 ( 1 ,4), ( 5 ,2),( 2 ,1) Heavy Hitter Alg …... 5 2 5 …... Heavy Hitter Alg ( 5 ,2), ( 2 ,1) 2 log(n) Heavy Hitter Alg ( 2 ,1) Heavy Hitters Levels In Parallel L2 Heavy Hitter(HH) Alg and Counters 13

  14. This Talk Does such a construction exist? If it exists, is it feasible to implement? Does it extend to a network-wide setting? e.g., Multiple paths, Multiple dimensions Is it competitive w.r.t. custom algorithms? 14

  15. How to Map to P4 Estimated G-sum 0 1 1 5 1 3 3 1 2 4 6 5 Heavy Hitter Alg ( 1 ,4), ( 3 ,2),( 5 ,2) 1 1 1 5 1 1 2 5 ( 1 ,4), ( 5 ,2),( 2 ,1) Heavy Hitter Alg …... …... …... Heavy Hitter Alg ( 2 ,1) 2 log(n) App-Estimation Top-K Sampling Sketching 15

  16. Mapping to P4 Custom Libraries App-Estimation Sampling Sketching Top-K Hash Funcs P4 Hash Funcs P4 Registers + P4 Registers 16

  17. Top-K Stage on Switch App-Estimation Sampling Sketching Top-K Hard in HW Complexity (need Priority Queue) hardware Storage/Comm Overhead (report to controller) 17

  18. Split Top-K Stage App-Estimation Sampling Sketching Top-K HW Complexity (w/o Priority Queue) Storage/Comm. Overhead (report to controller) Several MBs more 18

  19. Implementation Summary …... App 1 App n Application-specific Computation Top-K Sampling Update Counters (Hash func) Sketching Top-K P4 register Possible keys Traffic App-Estimation Sampling Sketching Top-K 19

  20. This Talk Does such a construction exist? If it exists, is it feasible to implement? Does it extend to a network-wide setting? e.g., Multiple paths, Multiple dimensions Is it competitive w.r.t. custom algorithms? 20

  21. Network-wide Problem One sketch for each dim D D 𝐸 𝐸 D D 2 2 N nodes D1 O1 D dimensions D D (e.g., src, srcdst) A B D2 O2 Trivial sol: place D*N sketches Our goal: Place s sketches, where s<<D*N One-big-switch abstraction 21

  22. This talk Does such a construction exist? If it exists, is it feasible to implement? Does it extend to a network-wide setting? e.g., Multiple paths, Multiple dimensions Is it competitive w.r.t. custom algorithms? 22

  23. Evaluation Setup • Traces: CAIDA backbone traces • Split into different “epoch” durations • Memory setup: 600KB—5MB • Application metrics: HH, Change, DDoS, etc. • Custom algorithms from OpenSketch 23

  24. UnivMon is Competitive Per-App N/A Max error gap < 3.6%; Results hold across multiple traces 24

  25. UnivMon Better for Larger Portfolio Clear advantages when handling more applications 25

  26. Memory needs are reasonable OS-trace1 UM-trace1 Memory Usage (KB) OS-trace2 UM-trace2 OS-trace3 UM-trace3 OS-trace4 UM-trace4 OS-trace5 UM-trace5 300 200 5s 30s 1m 5m Monitoring Time Interval Slow increase (logarithmically) and supports larger windows 26

  27. Conclusions • Network management needs many metrics • Traditional: Generality XOR Fidelity • E.g., NetFlow vs Custom Sketches • New opportunity: Universal Sketches! • Generality AND Fidelity AND Late Binding • UnivMon brings this opportunity to fruition • Practical, realizable in P4 • Comparable (and better) than custom • Amenable to “network-wide” abstractions • Many exciting future directions: • Theoretical improvements, Native multidimensional, etc. 27

  28. Network-wide coordination helps Network Wide Evaluation (600KB per sketch) 2000 Ingress Greedy-D.&C. Average Memory(KB) Q.&S. 1500 UnivMon 1000 500 0 ATT-N.A. GEANT BellSouth 28

Recommend


More recommend