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

Flurries: Countless Fine-Grained NFs for Flexible Per-Flow Customization

Published: 06 December 2016 Publication History

Abstract

The combination of Network Function Virtualization (NFV) and Software Defined Networking (SDN) allows flows to be flexibly steered through efficient processing pipelines. As deployment of NFV becomes more prevalent, the need to provide fine-grained customization of service chains and flow-level performance guarantees will increase, even as the diversity of Network Functions (NFs) rises. Existing NFV approaches typically route wide classes of traffic through pre-configured service chains. While this aggregation improves efficiency, it prevents flexibly steering and managing performance of flows at a fine granularity.
To provide both efficiency and flexibility, we present Flurries, an NFV platform designed to support large numbers of short-lived lightweight NFs, potentially running a unique NF for each flow. Flurries maintains a pool of Docker container NFs--several thousand on each host--and resets NF memory state between flows for fast reuse. Flurries uses a hybrid of polling and interrupts to improve throughput and latency while allowing multiple NFs to efficiently share CPU cores. By assigning each NF an individual flow or a small set of flows, it becomes possible to dynamically manage the QoS and service chain functionality for flows at a very fine granularity. Our Flurries prototype demonstrates the potential for this approach to run as many as 80,000 Flurry NFs during a one second interval, while forwarding over 30Gbps of traffic, dramatically increasing data plane customizability.

References

[1]
Wei Zhang, Guyue Liu, Ali Mohammadkhan, Jinho Hwang, K. K. Ramakrishnan, and Timothy Wood. Sdnfv: Flexible and dynamic software defined control of an application- and flow-aware data plane. In Middleware, 2016.
[2]
T. Wood, K. K. Ramakrishnan, J. Hwang, G. Liu, and W. Zhang. Toward a software-based network: integrating software defined networking and network function virtualization. IEEE Network, 29(3):36--41, May 2015.
[3]
Ciena Toolkit Applies DevOps To Control SDN/NFV Networks. https://virtualizationreview.com/articles/2016/05/27/ciena-devops.aspx, May 2016.textsc{online}.
[4]
Achieving DevOps for NFV Continuous Delivery on Openstack - Verizon Case Study. https://www.openstack.org/videos/video/achieving-devops-for-nfv-continuous-delivery-on-/openstack-verizon-case-study. {online}.
[5]
Anirudh Sivaraman, Suvinay Subramanian, Mohammad Alizadeh, Sharad Chole, Shang-Tse Chuang, Anurag Agrawal, Hari Balakrishnan, Tom Edsall, Sachin Katti, and Nick McKeown. Programmable packet scheduling at line rate. In Proceedings of the 2016 Conference on ACM SIGCOMM 2016 Conference, SIGCOMM '16, pages 44--57, New York, NY, USA, 2016. ACM.
[6]
Radhika Mittal, Rachit Agarwal, Sylvia Ratnasamy, and Scott Shenker. Universal packet scheduling. In 13th USENIX Symposium on Networked Systems Design and Implementation (NSDI 16), pages 501--521, Santa Clara, CA, March 2016. USENIX Association.
[7]
Wei Zhang, Timothy Wood, Jinho Hwang, Shriram Rajagopalan, and K. K. Ramakrishnan. Performance management challenges for virtual network functions. In Proc. NetSoft. IEEE, 2016.
[8]
Intel Corporation. Intel data plane development kit: Getting started guide. 2013.
[9]
Wei Zhang, Guyue Liu, Wenhui Zhang, Neel Shah, Phillip Lopreiato, Gregoire Todeschi, K.K. Ramakrishnan, and Timothy Wood. Opennetvm: A platform for high performance network service chains. In Proceedings of the 2016 ACM SIGCOMM Workshop on Hot Topics in Middleboxes and Network Function Virtualization. ACM, 2016.
[10]
Sam Neuman. Building Microservices: Designing Fine-Grained Systems. O'Reilly Media, February 2015.
[11]
Martin Fowler and James Lewis. Microservices. http://martinfowler.com/articles/microservices.html, 2014. {online}.
[12]
Jez Humble and David Farley. Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation. Addison-Wesley Professional, 1 edition, July 2010.
[13]
Orbitz. Enabling Microservices at Orbitz. DockerCon (2015).
[14]
HubSpot. How We Deploy 300 Times a Day. http://product.hubspot.com/blog/how-we-deploy-300-times-a-day, November 2013. {online}.
[15]
Wei Zhang, Timothy Wood, and Jinho Hwang. Netkv: Scalable, self-managing, load balancing as a network function. In IEEE International Conference on Autonomic Computing. IEEE, 2016.
[16]
Wei Zhang, Timothy Wood, K.K. Ramakrishnan, and Jinho Hwang. Smartswitch: Blurring the line between network infrastructure & cloud applications. In 6th USENIX Workshop on Hot Topics in Cloud Computing (HotCloud 14), Philadelphia, PA, June 2014. USENIX Association.
[17]
Intel Corporation. Intel data plane development kit: Intel 64 and ia-32 architectures software developer's manual. 2013.
[18]
Luigi Rizzo. Netmap: a novel framework for fast packet i/o. In 21st USENIX Security Symposium (USENIX Security 12), pages 101--112, 2012.
[19]
Radu Stoenescu, Vladimir Olteanu, Matei Popovici, Mohamed Ahmed, Joao Martins, Roberto Bifulco, Filipe Manco, Felipe Huici, Georgios Smaragdakis, Mark Handley, et al. In-net: in-network processing for the masses. In Proceedings of the Tenth European Conference on Computer Systems, page 23. ACM, 2015.
[20]
Shriram Rajagopalan, Dan Williams, Hani Jamjoom, and Andrew Warfield. Split/merge: System support for elastic execution in virtual middleboxes. In Proceedings of the 10th USENIX Conference on Networked Systems Design and Implementation, nsdi'13, pages 227--240, Berkeley, CA, USA, 2013. USENIX Association.
[21]
Eddie Kohler, Robert Morris, Benjie Chen, John Jannotti, and M Frans Kaashoek. The click modular router. ACM Transactions on Computer Systems (TOCS), 18(3):263--297, 2000.
[22]
VPP. https://fd.io/, 2016. {online}.
[23]
Sangjin Han, Keon Jang, Aurojit Panda, Shoumik Palkar, Dongsu Han, and Sylvia Ratnasamy. Softnic: A software nic to augment hardware. Technical Report UCB/EECS-2015-155, EECS Department, University of California, Berkeley, May 2015.
[24]
I. Cerrato, M. Annarumma, and F. Risso. Supporting Fine-Grained Network Functions through Intel DPDK. In 2014 Third European Workshop on Software Defined Networks, pages 1--6, September 2014.
[25]
HTTP Archive - Interesting Stats. http://httparchive.org/interesting.php. {online}.
[26]
Jinho Hwang, K. K. Ramakrishnan, and Timothy Wood. Netvm: High performance and flexible networking using virtualization on commodity platforms. In Proc. NSDI, NSDI'14, pages 445--458, Berkeley, CA, USA, 2014. USENIX Association.
[27]
Adam Greenhalgh, Felipe Huici, Mickael Hoerdt, Panagiotis Papadimitriou, Mark Handley, and Laurent Mathy. Flow processing and the rise of commodity network hardware. SIGCOMM Comput. Commun. Rev., 39(2):20--26, March 2009.
[28]
Filipe Manco, Joao Martins, Kenichi Yasukata, Jose Mendes, Simon Kuenzer, and Felipe Huici. The case for the superfluid cloud. In 7th USENIX Workshop on Hot Topics in Cloud Computing (HotCloud 15), 2015.
[29]
Ivano Cerrato, Mauro Annarumma, and Fulvio Risso. Supporting fine-grained network functions through intel dpdk. In EWSDN, pages 1--6. IEEE, 2014.
[30]
Joao Martins, Mohamed Ahmed, Costin Raiciu, Vladimir Olteanu, Michio Honda, Roberto Bifulco, and Felipe Huici. Clickos and the art of network function virtualization. In 11th USENIX Symposium on Networked Systems Design and Implementation (NSDI 14), pages 459--473, Seattle, WA, April 2014. USENIX Association.
[31]
Anil Madhavapeddy, Thomas Leonard, Magnus Skjegstad, Thomas Gazagnaire, David Sheets, Dave Scott, Richard Mortier, Amir Chaudhry, Balraj Singh, Jon Ludlam, Jon Crowcroft, and Ian Leslie. Jitsu: Just-in-time summoning of unikernels. In Proc. NSDI, pages 559--573, Oakland, CA, May 2015. USENIX Association.
[32]
Giuseppe Siracusano, Roberto Bifulco, Simon Kuenzer, Stefano Salsano, Nicola Blefari Melazzi, and Felipe Huici. On-the-fly tcp acceleration with miniproxy. In Proceedings of the 2016 ACM SIGCOMM Workshop on Hot Topics in Middleboxes and Network Function Virtualization, 2016.
[33]
Shoumik Palkar, Chang Lan, Sangjin Han, Keon Jang, Aurojit Panda, Sylvia Ratnasamy, Luigi Rizzo, and Scott Shenker. E2: A framework for nfv applications. In Proceedings of the 25th Symposium on Operating Systems Principles, SOSP '15, pages 121--136, New York, NY, USA, 2015. ACM.
[34]
Seungik Lee, Myung-Ki Shin, EunKyoung Paik, and Sangheon Pack. Resource Management in Service Chaining. Internet-Draft draft-lee-nfvrg-resource-management-service-chain-01, Internet Engineering Task Force, October 2015. Work in Progress.
[35]
ETSI. Network functions virtualization (nfv); architectural framework. ETSI GS NFV V002, 2013.
[36]
Mihai Dobrescu, Norbert Egi, Katerina Argyraki, Byung-Gon Chun, Kevin Fall, Gianluca Iannaccone, Allan Knies, Maziar Manesh, and Sylvia Ratnasamy. Routebricks: exploiting parallelism to scale software routers. In Proceedings of the ACM SIGOPS 22nd symposium on Operating systems principles, pages 15--28. ACM, 2009.
[37]
Y. Li, L. T. X. Phan, and B. T. Loo. Network functions virtualization with soft real-time guarantees. In IEEE International Conference on Computer Communications (INFOCOM), 2016.
[38]
L. Cao, P. Sharma, S. Fahmy, and V. Saxena. Nfv-vital: A framework for characterizing the performance of virtual network functions. In Network Function Virtualization and Software Defined Network (NFV-SDN), 2015 IEEE Conference on, pages 93--99, Nov 2015.
[39]
Constantinos Dovrolis, Brad Thayer, and Parameswaran Ramanathan. Hip: Hybrid interrupt-polling for the network interface. SIGOPS Oper. Syst. Rev., 35(4):50--60, October 2001.
[40]
Luca Deri, Netikos S. P. A, Via Del Brennero Km, and Loc La Figuretta. Improving passive packet capture: Beyond device polling. In In Proceedings of SANE 2004, 2004.
[41]
Jiuxing Liu and Bulent Abali. Virtualization polling engine (vpe): Using dedicated cpu cores to accelerate i/o virtualization. In Proceedings of the 23rd International Conference on Supercomputing, ICS '09, pages 225--234, New York, NY, USA, 2009. ACM.
[42]
Jisoo Yang, Dave B Minturn, and Frank Hady. When poll is better than interrupt. In Proceedings of the 10th USENIX conference on File and Storage Technologies, pages 3--3. USENIX Association, 2012.

Cited By

View all
  • (2024)Poster: Secure NFV Infrastructure based on Software Fault Isolation Considering Multi-Tenant EnvironmentProceedings of the 22nd Annual International Conference on Mobile Systems, Applications and Services10.1145/3643832.3661403(650-651)Online publication date: 3-Jun-2024
  • (2024)Interleaved Function Stream Execution Model for Cache-Aware High-Speed Stateful Packet Processing2024 IEEE 44th International Conference on Distributed Computing Systems (ICDCS)10.1109/ICDCS60910.2024.00056(531-542)Online publication date: 23-Jul-2024
  • (2024)FlowLever: Leverage Flow Director for Packet Dispatch Acceleration in NFVIEEE Access10.1109/ACCESS.2024.337370512(36122-36134)Online publication date: 2024
  • Show More Cited By

Index Terms

  1. Flurries: Countless Fine-Grained NFs for Flexible Per-Flow Customization

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    CoNEXT '16: Proceedings of the 12th International on Conference on emerging Networking EXperiments and Technologies
    December 2016
    524 pages
    ISBN:9781450342926
    DOI:10.1145/2999572
    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]

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 06 December 2016

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. cloud computing
    2. network function virtualization
    3. resource management
    4. scheduling

    Qualifiers

    • Research-article

    Funding Sources

    Conference

    CoNEXT '16
    Sponsor:

    Acceptance Rates

    CoNEXT '16 Paper Acceptance Rate 30 of 160 submissions, 19%;
    Overall Acceptance Rate 198 of 789 submissions, 25%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)120
    • Downloads (Last 6 weeks)30
    Reflects downloads up to 15 Sep 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2024)Poster: Secure NFV Infrastructure based on Software Fault Isolation Considering Multi-Tenant EnvironmentProceedings of the 22nd Annual International Conference on Mobile Systems, Applications and Services10.1145/3643832.3661403(650-651)Online publication date: 3-Jun-2024
    • (2024)Interleaved Function Stream Execution Model for Cache-Aware High-Speed Stateful Packet Processing2024 IEEE 44th International Conference on Distributed Computing Systems (ICDCS)10.1109/ICDCS60910.2024.00056(531-542)Online publication date: 23-Jul-2024
    • (2024)FlowLever: Leverage Flow Director for Packet Dispatch Acceleration in NFVIEEE Access10.1109/ACCESS.2024.337370512(36122-36134)Online publication date: 2024
    • (2023)Bash in the Wild: Language Usage, Code Smells, and BugsACM Transactions on Software Engineering and Methodology10.1145/351719332:1(1-22)Online publication date: 13-Feb-2023
    • (2023)Semantics Foundation for Cyber-physical Systems Using Higher-order UTPACM Transactions on Software Engineering and Methodology10.1145/351719232:1(1-48)Online publication date: 13-Feb-2023
    • (2023)Performance and Application Scenario Evaluation of Network Hardware Queue2023 IEEE 3rd International Conference on Computer Communication and Artificial Intelligence (CCAI)10.1109/CCAI57533.2023.10201305(326-330)Online publication date: 26-May-2023
    • (2023)Network Function-enabled Switch for Scalable Network Service Function Chaining2023 IEEE World AI IoT Congress (AIIoT)10.1109/AIIoT58121.2023.10174344(0167-0176)Online publication date: 7-Jun-2023
    • (2023)AdaptNF: Adaptive service chain scheduling with stateless migration and NF consolidationDigital Communications and Networks10.1016/j.dcan.2021.12.0029:2(462-472)Online publication date: Apr-2023
    • (2022)EZPath: Expediting Container Network Traffic via Programmable Switches2022 IFIP Networking Conference (IFIP Networking)10.23919/IFIPNetworking55013.2022.9829818(1-8)Online publication date: 13-Jun-2022
    • (2022)ScaleFlux: Efficient Stateful Scaling in NFVIEEE Transactions on Parallel and Distributed Systems10.1109/TPDS.2022.320420933:12(4801-4817)Online publication date: 1-Dec-2022
    • Show More Cited By

    View Options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Get Access

    Login options

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media