skip to main content
10.1145/2940147.2940152acmconferencesArticle/Chapter ViewAbstractPublication PagesconextConference Proceedingsconference-collections
research-article
Free access

CliMB: Enabling Network Function Composition with Click Middleboxes

Published: 22 August 2016 Publication History

Abstract

Click has significant advantages for middlebox development, including modularity, extensibility, and reprogrammability. Despite these features, Click still has no native TCP support and only uses nonblocking I/O, preventing its applicability to middleboxes that require access to L7 data and blocking I/O. We bridge this gap by introducing Click middleboxes (CliMB). CliMB provides a full-fledged modular TCP layer supporting congestion control, TCP options, both blocking and nonblocking I/O, as well as socket and zero-copy APIs to applications. As a result, any TCP network function may now be realized in Click. As proof of concept, we develop a zero-copy SOCKS proxy server using CliMB that shows up to 4x gains compared to an equivalent implementation using the Linux in-kernel network stack.

References

[1]
Intel DPDK framework. http://dpdk.org.
[2]
J. W. Anderson, R. Braud, R. Kapoor, G. Porter, and A. Vahdat. xOMB: Extensible Open Middleboxes with Commodity Servers. In Proc. of ACM/IEEE ANCS, 2012.
[3]
B. Anwer, T. Benson, N. Feamster, and D. Levin. Programming Slick Network Functions. In Proc. of ACM SOSR, 2015.
[4]
T. Barbette, C. Soldani, and L. Mathy. Fast Userspace Packet Processing. In Proc. of ACM/IEEE ANCS, 2015.
[5]
A. Belay, G. Prekas, A. Klimovic, S. Grossman, C. Kozyrakis, and E. Bugnion. IX: A Protected Dataplane Operating System for High Throughput and Low Latency. In Proc. of USENIX OSDI, 2014.
[6]
M. Bezahaf, A. Alim, and L. Mathy. FlowOS: A Flow-based Platform for Middleboxes. In Proc. of ACM HotMiddleboxes, 2013.
[7]
A. Bremler-Barr, Y. Harchol, and D. Hay. OpenBox: Enabling Innovation in Middlebox Applications. In Proc. of ACM HotMiddleboxes, 2015.
[8]
E. Jeong, S. Wood, M. Jamshed, H. Jeong, S. Ihm, D. Han, and K. Park. mTCP: a Highly Scalable User-level TCP Stack for Multicore Systems. In Proc. of USENIX NSDI, 2014.
[9]
J. Kim, K. Jang, K. Lee, S. Ma, J. Shim, and S. Moon. NBA (Network Balancing Act): A High-performance Packet Processing Framework for Heterogeneous Processors. In Proc. of EuroSys, 2015.
[10]
E. Kohler, R. Morris, B. Chen, J. Jannotti, and M. F. Kaashoek. The Click Modular Router. ACM Trans. Comput. Syst., 2000.
[11]
I. Marinos, R. N. Watson, and M. Handley. Network Stack Specialization for Performance. In Proc. of ACM SIGCOMM, 2014.
[12]
J. Martins, M. Ahmed, C. Raiciu, V. Olteanu, M. Honda, R. Bifulco, and F. Huici. ClickOS and the Art of Network Function Virtualization. In Proc. of USENIX NSDI, 2014.
[13]
S. Palkar, C. Lan, S. Han, K. Jang, A. Panda, S. Ratnasamy, L. Rizzo, and S. Shenker. E2: A Framework for NFV Applications. In Proc. of ACM SOSP, 2015.
[14]
D. Perino, M. Gallo, R. Laufer, Z. B. Houidi, and F. Pianese. A Programmable Data Plane for Heterogeneous NFV Platforms. In Proc. of IEEE INFOCOM SWFAN workshop, 2016.
[15]
L. Rizzo. netmap: A Novel Framework for Fast Packet I/O. In Proc. of USENIX Security, 2012.
[16]
V. Sekar, N. Egi, S. Ratnasamy, M. K. Reiter, and G. Shi. Design and Implementation of a Consolidated Middlebox Architecture. In Proc. of USENIX NSDI, 2012.
[17]
J. Sherry, S. Hasan, C. Scott, A. Krishnamurthy, S. Ratnasamy, and V. Sekar. Making Middleboxes Someone Else's Problem: Network Processing As a Cloud Service. In Proc. of ACM SIGCOMM, pages 13–24, 2012.
[18]
W. Sun and R. Ricci. Fast and Flexible: Parallel Packet Processing with GPUs and Click. In Proc. of IEEE/ACM ANCS, 2013.
[19]
S. Woo, K. Jang, D. Han, and K. Park. Towards an Open Middlebox Platform for Modular Function Composition. In Proc. of USENIX NSDI, poster session, 2012.

Cited By

View all
  • (2021)The Programmable Data PlaneACM Computing Surveys10.1145/344786854:4(1-36)Online publication date: Apr-2021
  • (2021)Combined Stateful Classification and Session Splicing for High-Speed NFV Service ChainingIEEE/ACM Transactions on Networking10.1109/TNET.2021.309924029:6(2560-2573)Online publication date: Dec-2021
  • (2019)Transparent AR Processing Acceleration at the EdgeProceedings of the 2nd International Workshop on Edge Systems, Analytics and Networking10.1145/3301418.3313942(30-35)Online publication date: 25-Mar-2019
  • Show More Cited By

Index Terms

  1. CliMB: Enabling Network Function Composition with Click Middleboxes

      Recommendations

      Comments

      Information & Contributors

      Information

      Published In

      cover image ACM Conferences
      HotMIddlebox '16: Proceedings of the 2016 workshop on Hot topics in Middleboxes and Network Function Virtualization
      August 2016
      60 pages
      ISBN:9781450344241
      DOI:10.1145/2940147
      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 the author(s) 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].

      Sponsors

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      Published: 22 August 2016

      Permissions

      Request permissions for this article.

      Check for updates

      Author Tags

      1. Click router
      2. Network middleboxes
      3. Programmable middleboxes

      Qualifiers

      • Research-article

      Conference

      SIGCOMM '16
      Sponsor:
      SIGCOMM '16: ACM SIGCOMM 2016 Conference
      August 22 - 26, 2016
      Florianopolis, Brazil

      Acceptance Rates

      HotMIddlebox '16 Paper Acceptance Rate 9 of 28 submissions, 32%;
      Overall Acceptance Rate 29 of 80 submissions, 36%

      Contributors

      Other Metrics

      Bibliometrics & Citations

      Bibliometrics

      Article Metrics

      • Downloads (Last 12 months)88
      • Downloads (Last 6 weeks)10
      Reflects downloads up to 14 Feb 2025

      Other Metrics

      Citations

      Cited By

      View all
      • (2021)The Programmable Data PlaneACM Computing Surveys10.1145/344786854:4(1-36)Online publication date: Apr-2021
      • (2021)Combined Stateful Classification and Session Splicing for High-Speed NFV Service ChainingIEEE/ACM Transactions on Networking10.1109/TNET.2021.309924029:6(2560-2573)Online publication date: Dec-2021
      • (2019)Transparent AR Processing Acceleration at the EdgeProceedings of the 2nd International Workshop on Edge Systems, Analytics and Networking10.1145/3301418.3313942(30-35)Online publication date: 25-Mar-2019
      • (2018)Research Challenges for Network Function Virtualization - Re-Architecting Middlebox for High Performance and Efficient, Elastic and Resilient Platform to Create New Services -IEICE Transactions on Communications10.1587/transcom.2017EBI0001E101.B:1(96-122)Online publication date: 2018
      • (2018)MicroboxesProceedings of the 2018 Conference of the ACM Special Interest Group on Data Communication10.1145/3230543.3230563(504-517)Online publication date: 7-Aug-2018
      • (2018)A Survey on the Programmable Data Plane: Abstractions, Architectures, and Open Problems2018 IEEE 19th International Conference on High Performance Switching and Routing (HPSR)10.1109/HPSR.2018.8850761(1-7)Online publication date: Jun-2018
      • (2017)mOSProceedings of the 14th USENIX Conference on Networked Systems Design and Implementation10.5555/3154630.3154640(113-129)Online publication date: 27-Mar-2017
      • (2016)Evaluating allocation heuristics for an efficient virtual Network Function chaining2016 7th International Conference on the Network of the Future (NOF)10.1109/NOF.2016.7810141(1-5)Online publication date: Nov-2016
      • (2016)Network function virtualization: through the looking-glassAnnals of Telecommunications10.1007/s12243-016-0540-971:11-12(573-581)Online publication date: 3-Aug-2016

      View Options

      View options

      PDF

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader

      Login options

      Figures

      Tables

      Media

      Share

      Share

      Share this Publication link

      Share on social media