skip to main content
10.1145/3663408.3663415acmotherconferencesArticle/Chapter ViewAbstractPublication PagescommConference Proceedingsconference-collections
research-article

QuarkTable: Building Compact Forwarding Tables for Programmable Switches on Public Clouds

Published: 03 August 2024 Publication History

Abstract

Programmable switches have been recently proposed as dataplane solutions for public clouds. However, the conflict of limited on-chip memory and massive forwarding rules in cloud networks hinders the large-scale deployments. We argue that building compact forwarding tables for programmable switches is a viable option to this problem. In this paper, as a first step, we explore the feasibility of compact data structures for VPC routing tables (VRTs) and propose QuarkTable as a solution. The idea of QuarkTable builds upon the existence of redundancy in the prefixes of VRTs, supported by extensive analysis of real-world VRTs collected from six geographically distributed regions of Alibaba Cloud. By cutting the VRT into two partitions and encoding the upper part of the longer prefixes, QuarkTable effectively shortens the length of each entry and reduces the overall memory consumption. We demonstrate the effectiveness of QuarkTable by showing its proximity to the entropy bound of real-world VRTs. Experiments on six VRTs from Alibaba Cloud show practical memory savings up to 33.5% and 30.2% for SRAM and TCAM, respectively.

References

[1]
[n. d.]. Cisco Silicon One. https://www.cisco.com/c/en/us/solutions/silicon-one.html.
[2]
[n. d.]. Create a VPC with an IPv4 CIDR block - Virtual Private Cloud - Alibaba Cloud Documentation Center. https://www.alibabacloud.com/help/en/virtual-private-cloud/latest/create-an-ipv4-vpc.
[3]
[n. d.]. Intel® Tofino™ Series Programmable Ethernet Switch ASIC. https://www.intel.com/content/www/us/en/products/network-io/programmable-ethernet-switch/tofino-series.html.
[4]
[n. d.]. RFC 1918 - Address Allocation for Private Internets (RFC1918). http://www.faqs.org/rfcs/rfc1918.html.
[5]
[n. d.]. Trident4 / BCM56880 Series. https://www.broadcom.com/products/ethernet-connectivity/switching/strataxgs/bcm56880-series.
[6]
[n. d.]. University of Oregon Route Views Project. http://www.ro uteviews.org/routeviews/.
[7]
[n. d.]. VPC CIDR blocks - Amazon Virtual Private Cloud. https://docs.aws.amazon.com/vpc/latest/userguide/vpc-cidr-blocks.html.
[8]
Hirochika Asai and Yasuhiro Ohara. 2015. Poptrie: A Compressed Trie with Population Count for Fast and Scalable Software IP Routing Table Lookup. In ACM SIGCOMM. https://doi.org/10.1145/2785956.2787474
[9]
asudbring. 2023. Azure Virtual Network - Concepts and best practices. https://learn.microsoft.com/en-us/azure/virtual-network/concepts-and-best-practices
[10]
Ran Ben Basat, Sivaramakrishnan Ramanathan, Yuliang Li, Gianni Antichi, Minian Yu, and Michael Mitzenmacher. 2020. PINT: Probabilistic in-band network telemetry. In ACM SIGCOMM. 662–680.
[11]
Pat Bosshart, Dan Daly, Glen Gibb, Martin Izzard, Nick McKeown, Jennifer Rexford, Cole Schlesinger, Dan Talayco, Amin Vahdat, George Varghese, and others. 2014. P4: Programming protocol-independent packet processors. ACM SIGCOMM Computer Communication Review 44, 3 (2014), 87–95.
[12]
Qizhe Cai, Shubham Chaudhary, Midhul Vuppalapati, Jaehyun Hwang, and Rachit Agarwal. 2021. Understanding host network stack overheads. In ACM SIGCOMM. 65–77.
[13]
Mikael Degermark, Andrej Brodnik, Svante Carlsson, and Stephen Pink. 1997. Small forwarding tables for fast routing lookups. ACM SIGCOMM Computer Communication Review 27, 4 (1997), 3–14. https://doi.org/10.1145/263109.263133
[14]
Sarang Dharmapurikar, Praveen Krishnamurthy, and David E Taylor. 2003. Longest prefix matching using bloom filters. In ACM SIGCOMM.
[15]
Mihai Dobrescu, Katerina Argyraki, and Sylvia Ratnasamy. 2012. Toward predictable performance in software packet-processing platforms. In USENIX NSDI. 141–154.
[16]
R.P. Draves, C. King, S. Venkatachary, and B.D. Zill. 1999. Constructing optimal IP routing tables. In IEEE INFOCOM. https://doi.org/10.1109/INFCOM.1999.749256
[17]
Will Eatherton, George Varghese, and Zubin Dittia. 2004. Tree bitmap: hardware/software IP lookups with incremental updates. ACM SIGCOMM Computer Communication Review 34, 2 (2004), 97–122. https://doi.org/10.1145/997150.997160
[18]
Jing Fu and Jennifer Rexford. 2008. Efficient IP-address lookup with a shared forwarding table for multiple virtual routers. In ACM CoNEXT. https://doi.org/10.1145/1544012.1544033
[19]
Thomas Holterbach, Edgar Costa Molero, Maria Apostolaki, Alberto Dainotti, Stefano Vissicchio, and Laurent Vanbever. 2019. Blink: Fast connectivity recovery entirely in the data plane. In USENIX NSDI. 161–176.
[20]
Hongjing Huang, Yingtao Li, Jie Sun, Xueying Zhu, Jie Zhang, Liang Luo, Jialin Li, and Zeke Wang. 2023. P4SGD: Programmable Switch Enhanced Model-Parallel Training on Generalized Linear Models on Distributed FPGAs. IEEE Transactions on Parallel and Distributed Systems (2023).
[21]
Daehyeok Kim, Zaoxing Liu, Yibo Zhu, Changhoon Kim, Jeongkeun Lee, Vyas Sekar, and Srinivasan Seshan. 2020. TEA: Enabling State-Intensive Network Functions on Programmable Switches. In ACM SIGCOMM. https://doi.org/10.1145/3387514.3405855
[22]
Attila Korosi, Janos Tapolcai, Bence Mihalka, Gabor Meszaros, and Gabor Retvari. 2014. Compressing IP Forwarding Tables: Realizing Information-Theoretical Space Bounds and Fast Lookups Simultaneously. In IEEE ICNP. https://doi.org/10.1109/ICNP.2014.55
[23]
Yaoqing Liu, Beichuan Zhang, and Lan Wang. 2013. FIFA: Fast incremental FIB aggregation. In IEEE INFOCOM. https://doi.org/10.1109/INFCOM.2013.6566913
[24]
Layong Luo, Gaogang Xie, Kave Salamatian, Steve Uhlig, Laurent Mathy, and Yingke Xie. 2013. A trie merging approach with incremental updates for virtual routers. In IEEE INFOCOM. https://doi.org/10.1109/INFCOM.2013.6566914
[25]
Sarah McClure, Zeke Medley, Deepak Bansal, Karthick Jayaraman, Ashok Narayanan, Jitendra Padhye, Sylvia Ratnasamy, Anees Shaikh, and Rishabh Tewari. 2023. Invisinets: Removing Networking from Cloud Networks. In USENIX USDI. 479–496.
[26]
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 ACM SIGCOMM. https://doi.org/10.1145/3098822.3098824
[27]
Tian Pan, Nianbing Yu, Chenhao Jia, Jianwen Pi, Liang Xu, Yisong Qiao, Zhiguo Li, Kun Liu, Jie Lu, Jianyuan Lu, Enge Song, Jiao Zhang, Tao Huang, and Shunmin Zhu. 2021. Sailfish: accelerating cloud-scale multi-tenant multi-service gateways with programmable switches. In ACM SIGCOMM. https://doi.org/10.1145/3452296.3472889
[28]
Gábor Rétvári, János Tapolcai, Attila K\Horösi, András Majdán, and Zalán Heszberger. 2013. Compressing IP forwarding tables: Towards entropy bounds and beyond. In ACM SIGCOMM.
[29]
Mariano Scazzariello, Tommaso Caiazzi, Hamid Ghasemirahni, Tom Barbette, Dejan Kostić, and Marco Chiesa. 2023. A High-Speed Stateful Packet Processing Approach for Tbps Programmable Switches. In USENIX NSDI. https://www.usenix.org/conference/nsdi23/presentation/scazzariello
[30]
Naveen Kr Sharma, Antoine Kaufmann, Thomas E Anderson, Arvind Krishnamurthy, Jacob Nelson, and Simon Peter. 2017. Evaluating the Power of Flexible Packet Processing for Network Resource Allocation. In USENIX NSDI. 67–82.
[31]
Haoyu Song, Murali Kodialam, Fang Hao, and T. V. Lakshman. 2010. Building Scalable Virtual Routers with Trie Braiding. In IEEE INFOCOM. https://doi.org/10.1109/INFCOM.2010.5461960
[32]
Hardik Soni, Myriana Rifai, Praveen Kumar, Ryan Doenges, and Nate Foster. 2020. Composing dataplane programs with μ P4. In ACM SIGCOMM. 329–343.
[33]
Zartash Afzal Uzmi, Markus Nebel, Ahsan Tariq, Sana Jawad, Ruichuan Chen, Aman Shaikh, Jia Wang, and Paul Francis. 2011. SMALTA: practical and near-optimal FIB aggregation. In ACM CoNEXT. https://doi.org/10.1145/2079296.2079325
[34]
Henry Wang. 2019. Algorithmic longest prefix matching in programmable switch. US Patent 10,511,532.
[35]
Tong Yang, Gaogang Xie, YanBiao Li, Qiaobin Fu, Alex X. Liu, Qi Li, and Laurent Mathy. 2014. Guarantee IP lookup performance with FIB explosion. In ACM SIGCOMM. https://doi.org/10.1145/2619239.2626297
[36]
Marko Zec, Luigi Rizzo, and Miljenko Mikuc. 2012. DXR: towards a billion routing lookups per second in software. ACM SIGCOMM Computer Communication Review 42, 5 (2012), 29–36.
[37]
Chaoliang Zeng, Layong Luo, Teng Zhang, Zilong Wang, Luyang Li, Wenchen Han, Nan Chen, Lebing Wan, Lichao Liu, Zhipeng Ding, 2022. Tiara: A scalable and efficient hardware acceleration architecture for stateful layer-4 load balancing. In USENIX NSDI.

Index Terms

  1. QuarkTable: Building Compact Forwarding Tables for Programmable Switches on Public Clouds

        Recommendations

        Comments

        Information & Contributors

        Information

        Published In

        cover image ACM Other conferences
        APNet '24: Proceedings of the 8th Asia-Pacific Workshop on Networking
        August 2024
        230 pages
        ISBN:9798400717581
        DOI:10.1145/3663408
        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].

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        Published: 03 August 2024

        Permissions

        Request permissions for this article.

        Check for updates

        Author Tags

        1. Programmable Switch
        2. Public Cloud
        3. Routing Table
        4. VPC

        Qualifiers

        • Research-article
        • Research
        • Refereed limited

        Conference

        APNet 2024

        Acceptance Rates

        APNet '24 Paper Acceptance Rate 50 of 118 submissions, 42%;
        Overall Acceptance Rate 50 of 118 submissions, 42%

        Contributors

        Other Metrics

        Bibliometrics & Citations

        Bibliometrics

        Article Metrics

        • 0
          Total Citations
        • 39
          Total Downloads
        • Downloads (Last 12 months)39
        • Downloads (Last 6 weeks)12
        Reflects downloads up to 13 Feb 2025

        Other Metrics

        Citations

        View Options

        Login options

        View options

        PDF

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader

        HTML Format

        View this article in HTML Format.

        HTML Format

        Figures

        Tables

        Media

        Share

        Share

        Share this Publication link

        Share on social media