skip to main content
10.1145/3365609.3365864acmconferencesArticle/Chapter ViewAbstractPublication PagescommConference Proceedingsconference-collections
research-article

Do Switches Dream of Machine Learning?: Toward In-Network Classification

Published:14 November 2019Publication History

ABSTRACT

Machine learning is currently driving a technological and societal revolution. While programmable switches have been proven to be useful for in-network computing, machine learning within programmable switches had little success so far. Not using network devices for machine learning has a high toll, given the known power efficiency and performance benefits of processing within the network. In this paper, we explore the potential use of commodity programmable switches for in-network classification, by mapping trained machine learning models to match-action pipelines. We introduce IIsy, a software and hardware based prototype of our approach, and discuss the suitability of mapping to different targets. Our solution can be generalized to additional machine learning algorithms, using the methods presented in this work.

Skip Supplemental Material Section

Supplemental Material

p25-xiong.mp4

mp4

254.4 MB

References

  1. Gianni Antichi, Muhammad Shahbaz, Yilong Geng, Noa Zilberman, Adam Covington, Marc Bruyere, Nick McKeown, Nick Feamster, Bob Felderman, Michaela Blott, et al. 2014. OSNT: Open source network tester. IEEE Network Magazine 28, 5 (2014), 6--12.Google ScholarGoogle ScholarCross RefCross Ref
  2. Manos Antonakakis, Tim April, Michael Bailey, Matt Bernhard, Elie Bursztein, Jaime Cochran, Zakir Durumeric, J Alex Halderman, Luca Invernizzi, Michalis Kallitsis, et al. 2017. Understanding the Mirai botnet. In 26th USENIX Security Symposium. 1093--1110.Google ScholarGoogle Scholar
  3. Arista. 2018. Arista 7170 Multi-function Programmable Networking. White Paper, https://www.arista.com/assets/data/pdf/Whitepapers/7170_White_Paper.pdf.Google ScholarGoogle Scholar
  4. Arista. 2019. 7060X4 Series 100/200/400G Data Center Switches. https://www.arista.com/assets/data/pdf/Datasheets/7060X4-Datasheet.pdf.Google ScholarGoogle Scholar
  5. Arista. 2019. 7800R3 Series Data Center Switch Router. https://www.arista.com/assets/data/pdf/Datasheets/7800R3-Data-Sheet.pdf.Google ScholarGoogle Scholar
  6. Ammar Ahmad Awan, Hari Subramoni, and Dhabaleswar K Panda. 2017. An in-depth performance characterization of CPU-and GPU-based DNN training on modern architectures. In Proceedings of the Machine Learning on HPC Environments. ACM.Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Theophilus A Benson. 2019. In-Network Compute: Considered Armed and Dangerous. In Proceedings of the Workshop on Hot Topics in Operating Systems. ACM, 216--224.Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Pat Bosshart, Dan Daly, Glen Gibb, Martin Izzard, Nick McKeown, Jennifer Rexford, Cole Schlesinger, Dan Talayco, Amin Vahdat, George Varghese, et al. 2014. P4: Programming protocol-independent packet processors. ACM SIGCOMM Computer Communication Review 44, 3 (2014), 87--95.Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Pat Bosshart, Glen Gibb, Hun-Seok Kim, George Varghese, Nick McKeown, Martin Izzard, Fernando Mujica, and Mark Horowitz. 2013. Forwarding Metamorphosis: Fast Programmable Match-action Processing in Hardware for SDN. In Proceedings of the ACM SIGCOMM Conference (SIGCOMM '13). ACM, New York, NY, USA, 99--110.Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Anat Bremler-Barr, Yotam Harchol, David Hay, and Yacov Hel-Or. 2018. Encoding short ranges in TCAM without expansion: Efficient algorithm and applications. IEEE/ACM Transactions on Networking 26, 2 (2018), 835--850.Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Anat Bremler-Barr and Danny Hendler. 2010. Space-efficient TCAM-based classification using gray coding. IEEE Trans. Comput. 61, 1 (2010), 18--30.Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Yunji Chen, Tao Luo, Shaoli Liu, Shijin Zhang, Liqiang He, Jia Wang, Ling Li, Tianshi Chen, Zhiwei Xu, Ninghui Sun, et al. 2014. Dadiannao: A machine-learning supercomputer. In Proceedings of the 47th Annual IEEE/ACM International Symposium on Microarchitecture. IEEE Computer Society, 609--622.Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Sandeep P Chinchali, Eyal Cidon, Evgenya Pergament, Tianshu Chu, and Sachin Katti. 2018. Neural networks meet physical networks: Distributed inference between edge devices and the cloud. In Proceedings of the 17th ACM Workshop on Hot Topics in Networks. ACM, 50--56.Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Jack Choquette, Olivier Giroux, and Denis Foley. 2018. Volta: performance and programmability. IEEE Micro 38, 2 (2018), 42--52.Google ScholarGoogle ScholarCross RefCross Ref
  15. Cisco. 2018. Cisco Global Cloud Index: Forecast and Methodology, 2016-2021. "https://www.cisco.com/c/en/us/solutions/collateral/service-provider/global-cloud-index-gci/white-paper-c11-738085.html"Google ScholarGoogle Scholar
  16. Alberto Dainotti, Antonio Pescape, and Kimberly C Claffy. 2012. Issues and future directions in traffic classification. IEEE network 26, 1 (2012), 35--40.Google ScholarGoogle Scholar
  17. Jeffrey Erman, Martin Arlitt, and Anirban Mahanti. 2006. Traffic classification using clustering algorithms. In Proceedings of the 2006 SIGCOMM workshop on Mining network data. ACM, 281--286.Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Jeremy Fowers, Kalin Ovtcharov, Michael Papamichael, Todd Massengill, Ming Liu, Daniel Lo, Shlomi Alkalay, Michael Haselman, Logan Adams, Mahdi Ghandi, et al. 2018. A configurable cloud-scale DNN processor for real-time AI. In Proceedings of the 45th Annual International Symposium on Computer Architecture. IEEE Press, 1--14.Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. David J Frank, Robert H Dennard, Edward Nowak, Paul M Solomon, Yuan Taur, and Hen-Sum Philip Wong. 2001. Device scaling limits of Si MOSFETs and their application dependencies". Proc. IEEE 89 (2001), 259--288.Google ScholarGoogle ScholarCross RefCross Ref
  20. David J Hand and Keming Yu. 2001. Idiot's Bayes---not so stupid after all? International statistical review 69, 3 (2001), 385--398.Google ScholarGoogle Scholar
  21. Zhenhao He, David Sidler, Zsolt István, and Gustavo Alonso. 2018. A flexible K-means operator for hybrid databases. In 2018 28th International Conference on Field Programmable Logic and Applications (FPL). IEEE, 368--3683.Google ScholarGoogle ScholarCross RefCross Ref
  22. Stephen Ibanez, Gordon Brebner, Nick McKeown, and Noa Zilbermann. 2019. The P4→NetFPGA Workflow for Line-Rate Packet Processing. In Proceedings of the 2019 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays. ACM, 1--9.Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Nathan Jay, Noga Rotman, Brighten Godfrey, Michael Schapira, and Aviv Tamar. 2019. A Deep Reinforcement Learning Perspective on Internet Congestion Control. In International Conference on Machine Learning. 3050--3059.Google ScholarGoogle Scholar
  24. Xin Jin, Xiaozhou Li, Haoyu Zhang, Nate Foster, Jeongkeun Lee, Robert Soulé, Changhoon Kim, and Ion Stoica. 2018. Netchain: Scale-free subrtt coordination. In 15th USENIX Symposium on Networked Systems Design and Implementation (NSDI'18). 35--49.Google ScholarGoogle Scholar
  25. Xin Jin, Xiaozhou Li, Haoyu Zhang, Robert Soulé, Jeongkeun Lee, Nate Foster, Changhoon Kim, and Ion Stoica. 2017. Netcache: Balancing key-value stores with fast in-network caching. In Proceedings of the 26th Symposium on Operating Systems Principles. ACM, 121--136.Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Norman P Jouppi, Cliff Young, Nishant Patil, David Patterson, Gaurav Agrawal, Raminder Bajwa, Sarah Bates, Suresh Bhatia, Nan Boden, Al Borchers, et al. 2017. In-datacenter performance analysis of a tensor processing unit. In 2017 ACM/IEEE 44th Annual International Symposium on Computer Architecture (ISCA'17). IEEE, 1--12.Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Karthik Lakshminarayanan, Anand Rangarajan, and Srinivasan Venkatachary. 2005. Algorithms for advanced packet classification with ternary CAMs. In ACM SIGCOMM Computer Communication Review, Vol. 35. ACM, 193--204.Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Youjie Li, Iou-Jen Liu, Yifan Yuan, Deming Chen, Alexander Schwing, and Jian Huang. 2019. Accelerating Distributed Reinforcement Learning with In-switch Computing. In Proceedings of the 46th International Symposium on Computer Architecture (ISCA '19). 279--291.Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Zaoxing Liu, Antonis Manousis, Gregory Vorsanger, Vyas Sekar, and Vladimir Braverman. 2016. One sketch to rule them all: Rethinking network flow monitoring with univmon. In Proceedings of the ACM SIGCOMM Conference. ACM, 101--114.Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Melvin Earl Maron. 1961. Automatic indexing: an experimental inquiry. J. ACM 8, 3 (1961), 404--417.Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Mellanox. 2019. Mellanox Quantum HDR Switch Silicon. "https://www.mellanox.com/related-docs/prod_silicon/PB_Quantum_HDR_Switch_Silicon.pdf"Google ScholarGoogle Scholar
  32. Andrew W Moore and Denis Zuev. 2005. Internet traffic classification using bayesian analysis techniques. In ACM SIGMETRICS Performance Evaluation Review, Vol. 33. ACM, 50--60.Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. G. E. Moore. 1965. Cramming More Components onto Integrated Circuits. Electronics 38 (April 1965), 114--117.Google ScholarGoogle Scholar
  34. Timothy Prickett Morgan. 2018. Programmable Networks Get A Bigger Foot In The Datacenter Door. The Next Platform.Google ScholarGoogle Scholar
  35. NPLang.org 2019. NPL Specification. NPLang.org. Rev. 1.3.Google ScholarGoogle Scholar
  36. Nvidia. 2018. Nvidia AI inference platform performance study. Technical Overview, https://www.nvidia.com/content/dam/en-zz/Solutions/data-center/gated-resources/inference-technical-overview.pdf.Google ScholarGoogle Scholar
  37. P4 Language Consortium 2018. P4_16 Language Specification. P4 Language Consortium. Rev. 1.1.0.Google ScholarGoogle Scholar
  38. P4 Language Consortium 2019. P4Runtime Specification. P4 Language Consortium. Rev. 1.0.0.Google ScholarGoogle Scholar
  39. David A Patterson and John L Hennessy. 2013. Computer organization and design: the hardware/software interface. Newnes.Google ScholarGoogle Scholar
  40. Fabian Pedregosa, Gaël Varoquaux, Alexandre Gramfort, Vincent Michel, Bertrand Thirion, Olivier Grisel, Mathieu Blondel, Peter Prettenhofer, Ron Weiss, Vincent Dubourg, et al. 2011. Scikit-learn: Machine learning in Python. Journal of machine learning research 12, Oct (2011), 2825--2830.Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. Dan RK Ports and Jacob Nelson. 2019. When Should The Network Be The Computer?. In Proceedings of the Workshop on Hot Topics in Operating Systems. ACM, 209--215.Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. Partha Ranganathan. 2019. End of Moore's law and how an introverted computer architect learned to love networking. Keynote.Google ScholarGoogle Scholar
  43. Davide Sanvito, Giuseppe Siracusano, and Roberto Bifulco. 2018. Can the Network be the AI Accelerator?. In Proceedings of the 2018 Workshop on In-Network Computing. ACM, 20--25.Google ScholarGoogle ScholarDigital LibraryDigital Library
  44. Amedeo Sapio, Ibrahim Abdelaziz, Abdulla Aldilaijan, Marco Canini, and Panos Kalnis. 2017. In-network computation is a dumb idea whose time has come. In Proceedings of the 16th ACM Workshop on Hot Topics in Networks. ACM, 150--156.Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. Amedeo Sapio, Marco Canini, Chen-Yu Ho, Jacob Nelson, Panos Kalnis, Changhoon Kim, Arvind Krishnamurthy, Masoud Moshref, Dan RK Ports, and Peter Richtárik. 2019. Scaling Distributed Machine Learning with In-Network Aggregation. arXiv preprint arXiv:1903.06701 (2019).Google ScholarGoogle Scholar
  46. Philipp Schulz, Maximilian Matthe, Henrik Klessig, Meryem Simsek, Gerhard Fettweis, Junaid Ansari, Shehzad Ali Ashraf, Bjoern Almeroth, Jens Voigt, Ines Riedel, et al. 2017. Latency critical IoT applications in 5G: Perspective on the design of radio interface and network architecture. IEEE Communications Magazine 55, 2 (2017), 70--78.Google ScholarGoogle ScholarDigital LibraryDigital Library
  47. Giuseppe Siracusano and Roberto Bifulco. 2018. In-network neural networks. arXiv preprint arXiv:1801.05731 (2018).Google ScholarGoogle Scholar
  48. Arunan Sivanathan, Hassan Habibi Gharakheili, Franco Loi, Adam Radford, Chamith Wijenayake, Arun Vishwanath, and Vijay Sivaraman. 2018. Classifying IoT Devices in Smart Environments Using Network Traffic Characteristics. IEEE Transactions on Mobile Computing (2018).Google ScholarGoogle Scholar
  49. Vibhaalakshmi Sivaraman, Srinivas Narayana, Ori Rottenstreich, Shan Muthukrishnan, and Jennifer Rexford. 2017. Heavy-hitter detection entirely in the data plane. In Proceedings of the Symposium on SDN Research. ACM, 164--176.Google ScholarGoogle ScholarDigital LibraryDigital Library
  50. Yuta Tokusashi, Huynh Tu Dang, Fernando Pedone, Robert Soulé, and Noa Zilberman. 2019. The Case For In-Network Computing On Demand. In Proceedings of the Fourteenth EuroSys Conference 2019. ACM, 21.Google ScholarGoogle ScholarDigital LibraryDigital Library
  51. Da Tong, Yun Rock Qu, and Viktor K Prasanna. 2017. Accelerating decision tree based traffic classification on FPGA and multicore Platforms. IEEE Transactions on Parallel and Distributed Systems 28, 11 (2017), 3046--3059.Google ScholarGoogle ScholarCross RefCross Ref
  52. Vojislav Đukić, Sangeetha Abdu Jyothi, Bojan Karlaš, Muhsen Owaida, Ce Zhang, and Ankit Singla. 2019. Is advance knowledge of flow sizes a plausible assumption?. In 16th USENIX Symposium on Networked Systems Design and Implementation (NSDI'19). 565--580.Google ScholarGoogle Scholar
  53. Vincent Vanhoucke, Andrew Senior, and Mark Z Mao. 2011. Improving the speed of neural networks on CPUs. (2011).Google ScholarGoogle Scholar
  54. Shay Vargaftik, Isaac Keslassy, and Yaniv Ben-Itzhak. 2019. RADE: Resource-Efficient Supervised Anomaly Detection Using Decision Tree-Based Ensemble Methods. arXiv preprint arXiv:1909.11877 (2019).Google ScholarGoogle Scholar
  55. Jackson Woodruff, Murali Ramanujam, and Noa Zilberman. 2019. P4DNS: In-Network DNS. In Proceedings of the 2nd P4 Workshop in Europe.Google ScholarGoogle ScholarCross RefCross Ref
  56. Xilinx. 2019. Exact Match Binary CAM Search IP for SDNet. Smart-CORE IP Product Guide, PG189 (v1.0) https://www.xilinx.com/support/documentation/ip_documentation/cam/pg189-cam.pdf.Google ScholarGoogle Scholar
  57. Zhaoqi Xiong and Noa Zilberman. 2019. IIsy Repository. https://github.com/cucl-srg/IIsy/.Google ScholarGoogle Scholar
  58. Jun Zhang, Xiao Chen, Yang Xiang, Wanlei Zhou, and Jie Wu. 2015. Robust network traffic classification. IEEE/ACM Transactions on Networking (TON) 23, 4 (2015), 1257--1270.Google ScholarGoogle ScholarDigital LibraryDigital Library
  59. Noa Zilberman, Yury Audzevich, G.Adam Covington, and Andrew W. Moore. 2014. NetFPGA SUME: Toward 100 Gbps as Research Commodity. IEEE Micro 34, 5 (September 2014), 32--41.Google ScholarGoogle ScholarCross RefCross Ref
  60. Noa Zilberman, Andrew W Moore, and Jon A Crowcroft. 2016. From photons to big-data applications: terminating terabits. Philosophical Transactions of the Royal Society A: Mathematical, Physical and Engineering Sciences 374, 2062 (2016), 2014.0445.Google ScholarGoogle ScholarCross RefCross Ref

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
    HotNets '19: Proceedings of the 18th ACM Workshop on Hot Topics in Networks
    November 2019
    176 pages
    ISBN:9781450370202
    DOI:10.1145/3365609

    Copyright © 2019 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: 14 November 2019

    Permissions

    Request permissions about this article.

    Request Permissions

    Check for updates

    Qualifiers

    • research-article
    • Research
    • Refereed limited

    Acceptance Rates

    Overall Acceptance Rate110of460submissions,24%

PDF Format

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader