skip to main content
10.1145/2774993.2775065acmconferencesArticle/Chapter ViewAbstractPublication PagescommConference Proceedingsconference-collections
research-article
Open Access
Best Paper

mSwitch: a highly-scalable, modular software switch

Published:17 June 2015Publication History

ABSTRACT

In recent years software network switches have regained eminence as a result of a number of growing trends, including the prominence of software-defined networks, as well as their use as back-ends to virtualization technologies, to name a few. Consequently, a number of high performance switches have been recently proposed in the literature, though none of these simultaneously provide (1) high packet rates, (2) high throughput, (3) low CPU usage, (4) high port density and (5) a flexible data plane. This is not by chance: these features conflict, and while achieving one or a few of them is (now) a solved problem, addressing the combination requires significant new design effort.

In this paper we fill the gap by presenting mSwitch. To prove the flexibility and performance of our approach, we use mSwitch to build four distinct modules: a learning bridge consisting of 45 lines of code that outperforms FreeBSD's bridge by up to 8 times; an accelerated Open vSwitch module requiring small changes to the code and boosting performance by 2.6--3 times; a protocol demultiplexer for userspace protocol stacks; and a filtering module that can direct packets to virtualized middleboxes.

References

  1. The netmap project. http://info.iet.unipi.it/~luigi/netmap/.Google ScholarGoogle Scholar
  2. M. Alizadeh, S. Yang, S. Katti, N. McKeown, B. Prabhakar, and S. Shenker. Deconstructing datacenter packet transport. In Proc. ACM HotNets, pages 133--138, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. 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. USENIX OSDI, pages 49--65, Oct. 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Bob Jenkins' Web Site. SpookyHash: a 128-bit noncryptographic hash. http://www.burtleburtle.net/bob/hash/spooky.html, October 2013.Google ScholarGoogle Scholar
  5. M. Dobrescu, N. Egi, K. Argyraki, B.-G. Chun, K. Fall, G. Iannaccone, A. Knies, M. Manesh, and S. Ratnasamy. Routebricks: exploiting parallelism to scale software routers. In Proc. ACM SOSP, pages 15--28, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. ETSI Portal. Network Functions Virtualisation: An Introduction, Benefits, Enablers, Challenges and Call for Action. http://portal.etsi.org/NFV/NFV_White_Paper.pdf, October 2012.Google ScholarGoogle Scholar
  7. S. Han, K. Jang, K. Park, and S. Moon. Packetshader: a gpu-accelerated software router. In Proc. ACM SIGCOMM, September 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. M. Honda, F. Huici, C. Raiciu, J. Araujo, and L. Rizzo. Rekindling network protocol innovation with user-level stacks. ACM CCR, 44(2): 52--58, Apr. 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. M. Honda, Y. Nishida, C. Raiciu, A. Greenhalgh, M. Handley, and H. Tokuda. Is it Still Possible to Extend TCP? In Proc. ACM IMC, pages 181--192, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. J. Hwang, K. Ramakrishnan, and T. Wood. Netvm: high performance and flexible networking using virtualization on commodity platforms. In Proc. USENIX NSDI. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Intel. Intel DPDK: Data Plane Development Kit. http://dpdk.org, September 2013.Google ScholarGoogle Scholar
  12. Intel. Intel Ethernet Flow Director. http://www.intel.com/content/www/us/en/ethernet-controllers/ethernet-flow-director-video.html, May 2015.Google ScholarGoogle Scholar
  13. Intel Corporation. Packet Processing - Intel DPDK vSwitch - OVS. https://github.com/01org/dpdk-ovs, January 2014.Google ScholarGoogle Scholar
  14. 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. USENIX NSDI, pages 459--473, Apr. 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. NEC Laboratories Europe. Cloud Networking Performance Lab. http://cnp.neclab.eu/.Google ScholarGoogle Scholar
  16. OPEN VSWITCH. Open vSwitch. http://openvswitch.org, 2013.Google ScholarGoogle Scholar
  17. S. Peter, J. Li, I. Zhang, D. R. K. Ports, D. Woos, A. Krishnamurthy, T. Anderson, and T. Roscoe. Arrakis: The operating system is the control plane. In Proc. USENIX OSDI, pages 1--16, Oct. 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. K. K. Ram, A. L. Cox, and S. Rixner. Hyper-switch: A scalable software virtual switching architecture. In Proc. USENIX ATC, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. L. Rizzo. netmap: a novel framework for fast packet I/O. In Proc. USENIX ATC, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. L. Rizzo, M. Carbone, and G. Catalli. Transparent acceleration of software packet forwarding using netmap. In Proc. IEEE INFOCOM, pages 2471--2479, 2012.Google ScholarGoogle ScholarCross RefCross Ref
  21. L. Rizzo and G. Lettieri. Vale: a switched ethernet for virtual machines. In Proc. ACM CoNEXT, December 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. J. H. Salim, R. Olsson, and A. Kuznetsov. Beyond softnet. In Proc. USENIX Linux Showcase and Conference, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. SDNCentral.com. Time for an SDN Sequel? Scott Shenker Preaches SDN Version 2. https://www.sdxcentral.com/articles/news/scott-shenker-preaches-revised-sdn-sdnv2/2014/10/, October 2014.Google ScholarGoogle Scholar
  24. V. Sekar, N. Egi, S. Ratnasamy, M. Reiter, and G. Shi. Design and implementation of a consolidated middlebox architecture. In Proc. USENIX NSDI, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. 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. ACM SIGCOMM, pages 13--24, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. D. Zhou, B. Fan, H. Lim, D. G. Andersen, and M. Kaminsky. Scalable, high performance ethernet forwarding with cuckooswitch. In Proc. ACM CoNEXT, December 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. mSwitch: a highly-scalable, modular software switch

            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 '15: Proceedings of the 1st ACM SIGCOMM Symposium on Software Defined Networking Research
              June 2015
              226 pages
              ISBN:9781450334518
              DOI:10.1145/2774993

              Copyright © 2015 Owner/Author

              Permission to make digital or hard copies of part or all 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 third-party components of this work must be honored. For all other uses, contact the Owner/Author.

              Publisher

              Association for Computing Machinery

              New York, NY, United States

              Publication History

              • Published: 17 June 2015

              Check for updates

              Qualifiers

              • research-article

              Acceptance Rates

              SOSR '15 Paper Acceptance Rate7of43submissions,16%Overall Acceptance Rate7of43submissions,16%

            PDF Format

            View or Download as a PDF file.

            PDF

            eReader

            View online with eReader.

            eReader