skip to main content
10.1145/3050220.3063772acmconferencesArticle/Chapter ViewAbstractPublication PagescommConference Proceedingsconference-collections
research-article
Public Access

Heavy-Hitter Detection Entirely in the Data Plane

Published:03 April 2017Publication History

ABSTRACT

Identifying the "heavy hitter" flows or flows with large traffic volumes in the data plane is important for several applications e.g., flow-size aware routing, DoS detection, and traffic engineering. However, measurement in the data plane is constrained by the need for line-rate processing (at 10-100Gb/s) and limited memory in switching hardware. We propose HashPipe, a heavy hitter detection algorithm using emerging programmable data planes. HashPipe implements a pipeline of hash tables which retain counters for heavy flows while evicting lighter flows over time. We prototype HashPipe in P4 and evaluate it with packet traces from an ISP backbone link and a data center. On the ISP trace (which contains over 400,000 flows), we find that HashPipe identifies 95% of the 300 heaviest flows with less than 80KB of memory.

References

  1. M. Al-Fares, S. Radhakrishnan, B. Raghavan, N. Huang, and A. Vahdat. Hedera: Dynamic flow scheduling for data center networks. In USENIX NSDI, 2010.Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Arista Networks. Arista 7050x switch architecture, 2014. https://www.corporatearmor.com/documents/Arista_7050X_Switch_Architecture_Datasheet.pdf.Google ScholarGoogle Scholar
  3. Barefoot Networks. Barefoot Tofino. https://www.barefootnetworks.com/technology/.Google ScholarGoogle Scholar
  4. T. Benson, A. Akella, and D. A. Maltz. Network traffic characteristics of data centers in the wild. In ACM IMC, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. T. Benson, A. Anand, A. Akella, and M. Zhang. MicroTE: Fine grained traffic engineering for data centers. In ACM CoNEXT, 2011.Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. P. Bosshart, D. Daly, G. Gibb, M. Izzard, N. McKeown, J. Rexford, C. Schlesinger, D. Talayco, A. Vahdat, G. Varghese, and D. Walker. P4: Programming protocol-independent packet processors. ACM SIGCOMM Computer Communication Review, 44(3):87--95, 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. P. Bosshart, G. Gibb, H.-S. Kim, G. Varghese, N. McKeown, M. Izzard, F. Mujica, and M. Horowitz. Forwarding metamorphosis: Fast programmable match-action processing in hardware for SDN. In ACM SIGCOMM, 2013.Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. CAIDA. The CAIDA UCSD Anonymized Internet Traces 2016 - March. http://www.caida.org/data/passive/passive_2016_dataset.xml.Google ScholarGoogle Scholar
  9. Cavium. Cavium and XPliant Introduce a Fully Programmable Switch Silicon Family Scaling to 3.2 Terabits per Second. http://cavium.com/newsevents-Cavium-and-XPliant-Introduce-a-Fully-Programmable-Switch-Silicon-Family.html.Google ScholarGoogle Scholar
  10. M. Charikar, K. Chen, and M. Farach-Colton. Finding frequent items in data streams. In Springer ICALP, 2002. Google ScholarGoogle ScholarCross RefCross Ref
  11. S. Choi. Implementing Heavy-Hitter Detection, 2016. https://github.com/p4lang/tutorials/tree/master/SIGCOMM_2016/heavy_hitter.Google ScholarGoogle Scholar
  12. Cisco Networks. Netflow. http://www.cisco.com/c/en/us/products/ios-nx-os-software/ios-netflow/index.html.Google ScholarGoogle Scholar
  13. G. Cormode and M. Hadjieleftheriou. Finding frequent items in data streams. In VLDB Endowment, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. G. Cormode and S. Muthukrishnan. An improved data stream summary: The count-min sketch and its applications. Journal of Algorithms, 55(1):58--75, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. G. Cormode and S. Muthukrishnan. What's hot and what's not: Tracking most frequent items dynamically. ACM Trans. Database Syst., 30(1), 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. A. R. Curtis, J. C. Mogul, J. Tourrilhes, P. Yalagandula, P. Sharma, and S. Banerjee. DevoFlow: Scaling flow management for high-performance networks. In ACM SIGCOMM, 2011.Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. C. Estan and G. Varghese. New directions in traffic measurement and accounting. ACM Trans. Computer Systems, 21(3), 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. A. Feldmann, A. Greenberg, C. Lund, N. Reingold, J. Rexford, and F. True. Deriving traffic demands for operational IP networks: Methodology and experience. In ACM SIGCOMM, 2000.Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. V. Jeyakumar, M. Alizadeh, Y. Geng, C. Kim, and D. Mazières. Millions of little minions: Using packets for low latency network programming and visibility. In ACM SIGCOMM, 2014.Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. John Wawrzynek and Krste Asanovic and John Lazzaro and Yunsup Lee. Memory (lecture), 2010. https://inst.eecs.berkeley.edu/~cs250/fa10/lectures/lec08.pdf.Google ScholarGoogle Scholar
  21. L. Jose, M. Yu, and J. Rexford. Online measurement of large traffic aggregates on commodity switches. In USENIX Hot-ICE, 2011.Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. M. Kumar and K. Prasad. Auto-learning of MAC addresses and lexicographic lookup of hardware database. US Patent App. 10/747,332.Google ScholarGoogle Scholar
  23. A. Lakhina, M. Crovella, and C. Diot. Characterization of network-wide anomalies in traffic flows. In ACM IMC, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Y. Li, R. Miao, C. Kim, and M. Yu. FlowRadar: A better NetFlow for data centers. In USENIX NSDI, 2016.Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Z. Liu, A. Manousis, G. Vorsanger, V. Sekar, and V. Braverman. One sketch to rule them all: Rethinking network flow monitoring with UnivMon. In ACM SIGCOMM, 2016.Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Y. Lu, A. Montanari, B. Prabhakar, S. Dharmapurikar, and A. Kabbani. Counter braids: A novel counter architecture for per-flow measurement. In ACM SIGMETRICS, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. G. S. Manku and R. Motwani. Approximate frequency counts over data streams. In VLDB Endowment, 2002. Google ScholarGoogle ScholarCross RefCross Ref
  28. A. Metwally, D. Agrawal, and A. El Abbadi. Efficient computation of frequent and top-k elements in data streams. In International Conference on Database Theory. Springer, 2005.Google ScholarGoogle Scholar
  29. J. Misra and D. Gries. Finding repeated elements. Science of computer programming, 2(2):143--152, 1982. Google ScholarGoogle ScholarCross RefCross Ref
  30. NANOG mailing list. SFlow vs NetFlow/IPFIX. https://mailman.nanog.org/pipermail/nanog/2016-February/thread.html#84418.Google ScholarGoogle Scholar
  31. R. Ozdag. Intel Ethernet Switch FM6000 Series - Software Defined Networking. http://www.intel.com/content/dam/www/public/us/en/documents/white-papers/ethernet-switch-fm6000-sdn-paper.pdf.Google ScholarGoogle Scholar
  32. P4 Language Consortium. P4 Switch Behavioral Model. https://github.com/p4lang/behavioral-model.Google ScholarGoogle Scholar
  33. R. Pagh and F. F. Rodler. Cuckoo hashing. J. Algorithms, 51(2):122--144, May 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. P. Phaal. SFlow sampling rates. http://blog.sflow.com/2009/06/sampling-rates.html.Google ScholarGoogle Scholar
  35. J. Rasley, B. Stephens, C. Dixon, E. Rozner, W. Felter, K. Agarwal, J. Carter, and R. Fonseca. Planck: Millisecond-scale monitoring and control for commodity networks. In ACM SIGCOMM, 2014.Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. O. Rottenstreich and J. Tapolcai. Optimal rule caching and lossy compression for longest prefix matching. IEEE/ACM Trans. Netw., 2017.Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. R. Schweller, A. Gupta, E. Parsons, and Y. Chen. Reversible sketches for efficient and accurate change detection over network data streams. In ACM IMC, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. SFlow. http://sflow.org/.Google ScholarGoogle Scholar
  39. Simon Horman. Packet recirculation, 2013. https://Iwn.net/Articles/546476/.Google ScholarGoogle Scholar
  40. A. Sivaraman, A. Cheung, M. Budiu, C. Kim, M. Alizadeh, H. Balakrishnan, G. Varghese, N. McKeown, and S. Licking. Packet transactions: High-level programming for line-rate switches. In ACM SIGCOMM, 2016.Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. A. Sivaraman, S. Subramanian, M. Alizadeh, S. Chole, S.-T. Chuang, A. Agrawal, H. Balakrishnan, T. Edsall, S. Katti, and N. McKeown. Programmable packet scheduling at line rate. In ACM SIGCOMM, 2016. Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. The P4 Language Consortium. The P4 Language Specification, Version 1.1.0 - Release Candidate, January 2016. http://p4.org/wp-content/uploads/2016/03/p4_v1.1.pdf.Google ScholarGoogle Scholar
  43. B. Vöcking. How asymmetry helps load balancing. Journal of the ACM (JACM), 50(4):568--589, 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  44. N. Weste and D. Harris. CMOS VLSI Design: A Circuits and Systems Perspective. Addison-Wesley, 2010.Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. M. Yu, L. Jose, and R. Miao. Software defined traffic measurement with OpenSketch. In USENIX NSDI, 2013.Google ScholarGoogle ScholarDigital LibraryDigital Library
  46. L. Yuan, C.-N. Chuah, and P. Mohapatra. ProgME: Towards programmable network measurement. In ACM SIGCOMM, 2007.Google ScholarGoogle ScholarDigital LibraryDigital Library
  1. Heavy-Hitter Detection Entirely in the Data Plane

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in
    • Published in

      cover image ACM Conferences
      SOSR '17: Proceedings of the Symposium on SDN Research
      April 2017
      211 pages
      ISBN:9781450349475
      DOI:10.1145/3050220

      Copyright © 2017 ACM

      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 3 April 2017

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • research-article
      • Research
      • Refereed limited

      Acceptance Rates

      Overall Acceptance Rate7of43submissions,16%

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader