ABSTRACT
Network applications often define policies to manage network traffic based on its attributes (e.g., a service chain, valid next-hops, permission flags). These policies match against packets' attributes in switches before being applied. However, the prior works of identifying attributes all incur a high memory cost in the data plane. This paper presents MEME, a scheme that clusters the attributes in packets to reduce the memory usage. MEME also leverages match-action tables and reconfigurable parsers on modern hardware switches to achieve 87.7% lower memory usage, and applies a graph algorithm to achieve 1-2 orders of magnitude faster compilation time than the prior state of the art [12]. These performance gains pave the way for deployment of a real system desired by the world's largest Internet Exchange Points.
- Burton H. Bloom. 1970. Space/Time Trade-offs in Hash Coding with Allowable Errors. Commun. ACM 13, 7 (1970), 422--426.Google ScholarDigital Library
- 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. 99--110.Google ScholarDigital Library
- Michael Dalton, David Schultz, Jacob Adriaens, Ahsan Arefin, Anshuman Gupta, Brian Fahs, Dima Rubinstein, Enrique Cauich Zermeno, Erik Rubow, James Alexander Docauer, Jesse Alpert, Jing Ai, Jon Olson, Kevin DeCabooter, Marc de Kruijf, Nan Hua, Nathan Lewis, Nikhil Kasinadhuni, Riccardo Crepaldi, Srinivas Krishnan, Subbaiah Venkata, Yossi Richter, Uday Naik, and Amin Vahdat. 2018. Andromeda: Performance, Isolation, and Velocity at Scale in Cloud Network Virtualization. In 15th USENIX Symposium on Networked Systems Design and Implementation (NSDI 18). USENIX Association, Renton, WA, 373--387. https://www.usenix.org/conference/nsdi18/presentation/daltonGoogle ScholarDigital Library
- Qunfeng Dong, Suman Banerjee, Jia Wang, Dheeraj Agrawal, and Ashutosh Shukla. 2006. Packet classifiers in ternary CAMs can be smaller. In SIGMETRICS/Performance. 311--322.Google Scholar
- Abdol-Hossein Esfahanian. 2006. On computing the connectivities of graphs and digraphs. Networks 14 (10 2006), 355 - 366. https://doi.org/10.1002/net.3230140211Google Scholar
- Seyed Kaveh Fayazbakhsh, Luis Chiang, Vyas Sekar, Minlan Yu, and Jeffrey C. Mogul. 2014. Enforcing Network-Wide Policies in the Presence of Dynamic Middlebox Actions using FlowTags. In USENIX Symposium on Networked Systems Design and Implementation. USENIX Association, Seattle, WA, 543--546.Google Scholar
- Daniel Firestone. 2017. VFP: A Virtual Switch Platform for Host SDN in the Public Cloud. In 14th USENIX Symposium on Networked Systems Design and Implementation (NSDI 17). USENIX Association, Boston, MA, 315--328. https://www.usenix.org/conference/nsdi17/technical-sessions/presentation/firestoneGoogle Scholar
- Arpit Gupta, Robert MacDavid, Rüdiger Birkner, Marco Canini, Nick Feamster, Jennifer Rexford, and Laurent Vanbever. 2016. An Industrial-scale Software Defined Internet Exchange Point. In USENIX NSDI.Google Scholar
- Arpit Gupta, Laurent Vanbever, Muhammad Shahbaz, Sean P. Donovan, Brandon Schlinker, Nick Feamster, Jennifer Rexford, Scott Shenker, Russ Clark, and Ethan Katz-Bassett. 2014. SDX: A Software Defined Internet Exchange. In ACM SIGCOMM.Google Scholar
- Nanxi Kang, Ori Rottenstreich, Sanjay Rao, and Jennifer Rexford. 2017. Alpaca: Compact Network Policies with Attribute-Encoded Addresses. IEEE/ACM Transactions on Networking (June 2017).Google ScholarDigital Library
- Alex X. Liu, Chad R. Meiners, and Eric Torng. 2010. TCAM Razor: A systematic approach towards minimizing packet classifiers in TCAMs. IEEE/ACM Transactions on Networking 18, 2 (2010), 490--500.Google ScholarDigital Library
- Robert MacDavid, Rudiger Birkner, Ori Rottenstreich, Arpit Gupta, Nick Feamster, and Jennifer Rexford. 2017. Concise Encoding of Flow Attributes in SDN Switches. In ACM SIGCOMM Symposium on SDN Research. 48--60.Google Scholar
- Nick McKeown, Tom Anderson, Hari Balakrishnan, Guru Parulkar, Larry Peterson, Jennifer Rexford, Scott Shenker, and Jonathan Turner. 2008. OpenFlow: Enabling Innovation in Campus Networks. ACM SIGCOMM Computer Communications Review 38, 2 (March 2008), 69--74.Google ScholarDigital Library
- Mengying Pan, Robert MacDavid, Shir Landau-Feibish, and Jennifer Rexford. 2019. Memory-Efficient Membership Encoding in Switches Tech Report. https://sites.google.com/view/memetechreport/homeGoogle Scholar
- GitHub Repo. 2020. https://github.com/PrincetonUniversity/Meme.Google Scholar
- Ori Rottenstreich and Isaac Keslassy. 2015. The Bloom Paradox: When Not to Use a Bloom Filter. IEEE/ACM Transactions on Networking 23, 3 (June 2015), 703--716. https://doi.org/10.1109/TNET.2014.2306060Google ScholarDigital Library
- Ori Rottenstreich, Isaac Keslassy, Avinatan Hassidim, Haim Kaplan, and Ely Porat. 2016. Optimal In/Out TCAM Encodings of Ranges. IEEE/ACM Transactions on Networking 24, 1 (2016), 555--568.Google ScholarDigital Library
- Brandon Schlinker, Todd Arnold, Italo Cunha, and Ethan Katz-Bassett. 2019. PEERING: Virtualizing BGP at the Edge for Research. In Proc. ACM CoNEXT. Orlando, FL.Google ScholarDigital Library
- RIPE Routing Information Service. 2020. https://www.ripe.net/analyse/internet-measurements/routing-information-service-ris/ris-raw-data.Google Scholar
- Brent Stephens, Alan L. Cox, and Scott Rixner. 2016. Scalable Multi-Failure Fast Failover via Forwarding Table Compression. In Proceedings of the Symposium on SDN Research (SOSR '16). Association for Computing Machinery, New York, NY, USA, Article Article 9, 12 pages. https://doi.org/10.1145/2890955.2890957Google ScholarDigital Library
Index Terms
- Memory-Efficient Membership Encoding in Switches
Recommendations
Efficient Designs of Multiported Memory on FPGA
The utilization of block RAMs (BRAMs) is a critical performance factor for multiported memory designs on field-programmable gate arrays (FPGAs). Not only does the excessive demand on BRAMs block the usage of BRAMs from other parts of a design, but the ...
Energy-efficient multi-level cell phase-change memory system with data encoding
ICCD '11: Proceedings of the 2011 IEEE 29th International Conference on Computer DesignPhase-change memory (PCM) is one of the most promising technologies among emerging non-volatile memories. Recently, the technology of multi-level cell (MLC) for PCM has been developed and a high capacity memory system can be implemented by storing ...
A durable and energy efficient main memory using phase change memory technology
ISCA '09: Proceedings of the 36th annual international symposium on Computer architectureUsing nonvolatile memories in memory hierarchy has been investigated to reduce its energy consumption because nonvolatile memories consume zero leakage power in memory cells. One of the difficulties is, however, that the endurance of most nonvolatile ...
Comments