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

Accelerated Service Chaining on a Single Switch ASIC

Published:14 November 2019Publication History

ABSTRACT

Network functions and service function chaining are prevalent in cloud and ISP networks. In traditional software-based solutions, scaling up the capacity of these functions requires a large number of server cores. However, edge clouds are severely resource-constrained in terms of space, power, and budget, so traditional methods incur a high cost. We present Dejavu, a system that can offload a service chain to a programmable switch to achieve high performance and resource efficiency. Our system can compose multiple network functions into a single program that preserves the original chaining requirements, and exploit features of the switch ASIC to efficiently deploy the composed program on a single switch.

Skip Supplemental Material Section

Supplemental Material

p141-wu.mp4

mp4

522.3 MB

References

  1. Barefoot. 2019. Barefoot Tofino. https://www.barefootnetworks.com/products/brief-tofino-2/. (2019).Google ScholarGoogle Scholar
  2. Barefoot. 2019. P4STUDIO Architecture. https://www.barefootnetworks.com/products/brief-p4-studio/. (2019).Google ScholarGoogle Scholar
  3. 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
  4. 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 ACM SIGCOMM Computer Communication Review, Vol. 43. ACM, 99--110.Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Doruk Bozdag, Fusun Ozguner, and Umit V Catalyurek. 2009. Compaction of schedules and a two-stage approach for duplication-based DAG scheduling. IEEE Transactions on Parallel and Distributed Systems 20, 6 (2009), 857--871.Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. X. Chen, D. Zhang, X. Wang, K. Zhu, and H. Zhou. 2019. P4SC: Towards High-Performance Service Function Chain Implementation on the P4-Capable Device. In 2019 IFIP/IEEE Symposium on Integrated Network and Service Management (IM). 1--9.Google ScholarGoogle Scholar
  7. P4 Language Consortium. 2019. P4 Language Specification. https://p4.org/p4-spec/p4-14/v1.0.5/tex/p4.pdf. (2019).Google ScholarGoogle Scholar
  8. P4 Language Consortium. 2019. P416 Language Specification. https://p4.org/p4-spec/docs/P4-16-v1.1.0-spec.html. (2019).Google ScholarGoogle Scholar
  9. P4 Language Consortium. 2019. P416 Portable Switch Architecture. https://p4.org/p4-spec/docs/PSA-v1.1.0.html. (2019).Google ScholarGoogle Scholar
  10. P4 Language Consortium. 2019. P4_16 Prototype Compiler. https://github.com/p4lang/p4c. (2019).Google ScholarGoogle Scholar
  11. P4 Language Consortium. 2019. Packet Test Framework. https://github.com/p4lang/ptf. (2019).Google ScholarGoogle Scholar
  12. Daniel E Eisenbud, Cheng Yi, Carlo Contavalli, Cody Smith, Roman Kononov, Eric Mann-Hielscher, Ardas Cilingiroglu, Bin Cheyney, Wentao Shang, and Jinnah Dylan Hosein. 2016. Maglev: A Fast and Reliable Software Network Load Balancer.. In NSDI. 523--535.Google ScholarGoogle Scholar
  13. Rohan Gandhi, Hongqiang Harry Liu, Y. Charlie Hu, Guohan Lu, Jitendra Padhye, Lihua Yuan, and Ming Zhang. 2014. Duet: Cloud Scale Load Balancing with Hardware and Software. In Proceedings of the 2014 ACM Conference on SIGCOMM (SIGCOMM '14). ACM, New York, NY, USA, 27--38. https://doi.org/10.1145/2619239.2626317Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Aaron Gember-Jacobson, Raajay Viswanathan, Chaithan Prakash, Robert Grandl, Junaid Khalid, Sourav Das, and Aditya Akella. 2014. OpenNF: Enabling innovation in network function control. In ACM SIGCOMM Computer Communication Review, Vol. 44. ACM, 163--174.Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Ionel Gog, Malte Schwarzkopf, Adam Gleave, Robert N. M. Watson, and Steven Hand. 2016. Firmament: Fast, Centralized Cluster Scheduling at Scale. In 12th USENIX Symposium on Operating Systems Design and Implementation (OSDI 16). USENIX Association, Savannah, GA, 99--115. https://www.usenix.org/conference/osdi16/technical-sessions/presentation/gogGoogle ScholarGoogle ScholarDigital LibraryDigital Library
  16. A Greenberg. 2014. Windows azure: Scaling SDN in the public cloud. Open Networking Summit (ONS) (2014).Google ScholarGoogle Scholar
  17. Adam Greenhalgh, Felipe Huici, Mickael Hoerdt, Panagiotis Papadimitriou, Mark Handley, and Laurent Mathy. 2009. Flow processing and the rise of commodity network hardware. ACM SIGCOMM Computer Communication Review 39, 2 (2009), 20--26.Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Joel Halpern and Carlos Pignataro. 2015. Service function chaining (sfc) architecture. IETF, RFC7665 (2015).Google ScholarGoogle Scholar
  19. Sangjin Han, Keon Jang, KyoungSoo Park, and Sue Moon. 2010. PacketShader: A GPU-accelerated Software Router. In Proceedings of the ACM SIGCOMM 2010 Conference (SIGCOMM '10). ACM, New York, NY, USA, 195--206. https://doi.org/10.1145/1851182.1851207Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. David Hancock and Jacobus Van der Merwe. 2016. Hyper4: Using p4 to virtualize the programmable data plane. In Proceedings of the 12th International on Conference on emerging Networking EXperiments and Technologies. ACM, 35--49.Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Jinho Hwang, K. K. Ramakrishnan, and Timothy Wood. 2014. NetVM: High Performance and Flexible Networking Using Virtualization on Commodity Platforms. In 11th USENIX Symposium on Networked Systems Design and Implementation (NSDI 14). USENIX Association, Seattle, WA, 445--458. https://www.usenix.org/conference/nsdi14/technical-sessions/presentation/hwangGoogle ScholarGoogle ScholarDigital LibraryDigital Library
  22. 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
  23. Lavanya Jose, Lisa Yan, George Varghese, and Nick McKeown. 2015. Compiling packet programs to reconfigurable switches. In 12th USENIX Symposium on Networked Systems Design and Implementation (NSDI'15). 103--115.Google ScholarGoogle Scholar
  24. Murad Kablan, Azzam Alsudais, Eric Keller, and Franck Le. 2017. Stateless network functions: Breaking the tight coupling of state and processing. In 14th {USENIX} Symposium on Networked Systems Design and Implementation ({NSDI} 17). 97--112.Google ScholarGoogle Scholar
  25. Georgios P Katsikas, Tom Barbette, Dejan Kostic, Rebecca Steinert, and Gerald Q Maguire Jr. 2018. Metron:{NFV} Service Chains at the True Speed of the Underlying Hardware. In 15th {USENIX} Symposium on Networked Systems Design and Implementation ({NSDI} 18). 171--186.Google ScholarGoogle Scholar
  26. Teemu Koponen, Keith Amidon, Peter Balland, Martín Casado, Anupam Chanda, Bryan Fulton, Igor Ganichev, Jesse Gross, Paul Ingram, Ethan J Jackson, et al. 2014. Network Virtualization in Multi-tenant Datacenters.. In NSDI, Vol. 14. 203--216.Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Sameer G Kulkarni, Wei Zhang, Jinho Hwang, Shriram Rajagopalan, KK Ramakrishnan, Timothy Wood, Mayutan Arumaithurai, and Xiaoming Fu. 2017. Nfvnice: Dynamic backpressure and scheduling for nfv service chains. In Proceedings of the Conference of the ACM Special Interest Group on Data Communication. ACM, 71--84.Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Bojie Li, Kun Tan, Layong Larry Luo, Yanqing Peng, Renqian Luo, Ningyi Xu, Yongqiang Xiong, Peng Cheng, and Enhong Chen. 2016. Clicknp: Highly flexible and high performance network processing with reconfigurable hardware. In Proceedings of the 2016 ACM SIGCOMM Conference. ACM, 1--14.Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Y. Li, L. T. X. Phan, and B. T. Loo. 2016. Network functions virtualization with soft real-time guarantees. In IEEE INFOCOM 2016 - The 35th Annual IEEE International Conference on Computer Communications. 1--9. https://doi.org/10.1109/INFOCOM.2016.7524563Google ScholarGoogle ScholarCross RefCross Ref
  30. Joao Martins, Mohamed Ahmed, Costin Raiciu, Vladimir Olteanu, Michio Honda, Roberto Bifulco, and Felipe Huici. 2014. ClickOS and the art of network function virtualization. In Proceedings of the 11th USENIX Conference on Networked Systems Design and Implementation. USENIX Association, 459--473.Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Rui Miao, Hongyi Zeng, Changhoon Kim, Jeongkeun Lee, and Minlan Yu. 2017. SilkRoad: Making Stateful Layer-4 Load Balancing Fast and Cheap Using Switching ASICs. In Proceedings of the Conference of the ACM Special Interest Group on Data Communication. ACM, 15--28.Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Adam Morrison, Lei Xue, Ang Chen, and Xiapu Luo. 2018. Enforcing Context-Aware BYOD Policies with In-Network Security. In 10th USENIX Workshop on Hot Topics in Cloud Computing (HotCloud'18).Google ScholarGoogle Scholar
  33. Recep Ozdag. 2012. Intel® Ethernet Switch FM6000 Series-Software Defined Networking. See goo. gl/AnvOvX (2012), 5.Google ScholarGoogle Scholar
  34. Shoumik Palkar, Chang Lan, Sangjin Han, Keon Jang, Aurojit Panda, Sylvia Ratnasamy, Luigi Rizzo, and Scott Shenker. 2015. E2: A Framework for NFV Applications. In Proceedings of the 25th Symposium on Operating Systems Principles (SOSP '15). ACM, New York, NY, USA, 121--136. https://doi.org/10.1145/2815400.2815423Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. Aurojit Panda, Sangjin Han, Keon Jang, Melvin Walls, Sylvia Ratnasamy, and Scott Shenker. 2016. NetBricks: Taking the V out of {NFV}. In 12th USENIX Symposium on Operating Systems Design and Implementation (OSDI'16). 203--216.Google ScholarGoogle Scholar
  36. Parveen Patel, Deepak Bansal, Lihua Yuan, Ashwin Murthy, Albert Greenberg, David A. Maltz, Randy Kern, Hemant Kumar, Marios Zikos, Hongyu Wu, Changhoon Kim, and Naveen Karri. 2013. Ananta: Cloud Scale Load Balancing. In Proceedings of the ACM SIGCOMM 2013 Conference on SIGCOMM (SIGCOMM '13). ACM, New York, NY, USA, 207--218. https://doi.org/10.1145/2486001.2486026Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. Paul Quinn, Uri Elzur, and Carlos Pignataro. 2018. Network service header (nsh). IETF, RFC 8300 (2018).Google ScholarGoogle Scholar
  38. Shriram Rajagopalan, Dan Williams, Hani Jamjoom, and Andrew Warfield. 2013. Split/merge: System support for elastic execution in virtual middleboxes. In Presented as part of the 10th {USENIX} Symposium on Networked Systems Design and Implementation ({NSDI} 13). 227--240.Google ScholarGoogle Scholar
  39. Kaushik Kumar Ram, Alan L Cox, Mehul Chadha, and Scott Rixner. 2013. Hyper-switch: A scalable software virtual switching architecture. In 2013 USENIX Annual Technical Conference (ATC'13). 13--24.Google ScholarGoogle Scholar
  40. Mahadev Satyanarayanan, Paramvir Bahl, Ramón Caceres, and Nigel Davies. 2009. The case for vm-based cloudlets in mobile computing. IEEE pervasive Computing 4 (2009), 14--23.Google ScholarGoogle Scholar
  41. Vyas Sekar, Norbert Egi, Sylvia Ratnasamy, Michael K Reiter, and Guangyu Shi. 2012. Design and implementation of a consolidated middlebox architecture. In Proceedings of the 9th USENIX conference on Networked Systems Design and Implementation. USENIX Association, 24--24.Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. Hardik Soni, Thierry Turletti, and Walid Dabbous. 2018. P4Bricks: Enabling multiprocessing using Linker-based network data plane architecture. (Feb. 2018). https://hal.inria.fr/hal-01632431 working paper or preprint.Google ScholarGoogle Scholar
  43. Tammo Spalink, Scott Karlin, Larry Peterson, and Yitzchak Gottlieb. 2001. Building a robust software-based router using network processors. In ACM SIGOPS Operating Systems Review, Vol. 35. ACM, 216--229.Google ScholarGoogle ScholarDigital LibraryDigital Library
  44. Vinod Kumar Vavilapalli, Arun C Murthy, Chris Douglas, Sharad Agarwal, Mahadev Konar, Robert Evans, Thomas Graves, Jason Lowe, Hitesh Shah, Siddharth Seth, et al. 2013. Apache hadoop yarn: Yet another resource negotiator. In Proceedings of the 4th annual Symposium on Cloud Computing. ACM, 5.Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. Abhishek Verma, Luis Pedrosa, Madhukar R. Korupolu, David Oppenheimer, Eric Tune, and John Wilkes. 2015. Large-scale cluster management at Google with Borg. In Proceedings of the European Conference on Computer Systems (EuroSys). Bordeaux, France.Google ScholarGoogle ScholarDigital LibraryDigital Library
  46. Cheng Zhang, Jun Bi, Yu Zhou, Abdul Basit Dogar, and Jianping Wu. 2017. HyperV: A high performance hypervisor for virtualization of the programmable data plane. In 2017 26th International Conference on Computer Communication and Networks (ICCCN). IEEE, 1--9.Google ScholarGoogle ScholarCross RefCross Ref
  47. Peng Zheng, Theophilus Benson, and Chengchen Hu. 2018. P4Visor: Lightweight Virtualization and Composition Primitives for Building and Testing Modular Programs. In Proceedings of the 14th International Conference on Emerging Networking EXperiments and Technologies (CoNEXT '18). ACM, 98--111. https://doi.org/10.1145/3281411.3281436Google ScholarGoogle ScholarDigital LibraryDigital Library
  48. Yu Zhou and Jun Bi. 2017. Clickp4: Towards modular programming of p4. In Proceedings of the SIGCOMM Posters and Demos. ACM, 100--102.Google ScholarGoogle ScholarDigital LibraryDigital Library

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