skip to main content
10.1145/3337821.3337896acmotherconferencesArticle/Chapter ViewAbstractPublication PagesicppConference Proceedingsconference-collections
research-article

A Tale of Two (Flow) Tables: Demystifying Rule Caching in OpenFlow Switches

Published: 05 August 2019 Publication History

Abstract

Software Defined Networking (SDN) enables flexible flow control by deploying fine-grained rules in OpenFlow switches. Modern commodity switches usually use TCAM to store these rules and perform high-speed parallel lookups. Though efficient, the TCAM capacity is limited because TCAM is expensive in cost and power-hungry. The explosive growth in the number of rules has exacerbated the limitation of TCAM. There have been considerable efforts in implementing hybrid flow tables with both TCAM and RAM, where the high-speed TCAM is regarded as a cache to store the most popular rules and the cheap RAM is used to handle cache miss. The primary challenges for designing hybrid TCAM/RAM flow tables lie in how to improve cache hit rate and how to handle wildcard rule dependency when allocating rules between TCAM and RAM.
In this paper, we present the design and evaluation of CuCa, a practical and efficient rule caching scheme for hybrid switches. Different from existing schemes, CuCa offers both offline and online algorithms for rule caching, corresponding to the proactive and reactive approaches to OpenFlow rule installation. By designing a two-stage-cache architecture in TCAM, CuCa can handle rule dependency efficiently and provide remarkable performance improvements. Simulation and real-world experiment results reveal that CuCa improves average TCAM hit rate by 38.7% compared to state-of-the-art schemes and by over 33% compared to the default caching algorithm of a commodity OpenFlow switch.

References

[1]
Kirill Kogan, Sergey Nikolenko, Ori Rottenstreich, William Culhane, and Patrick Eugster. Sax-pac (scalable and expressive packet classification). ACM SIGCOMMM Computer Communication Review, 44(4):15--26, 2014.
[2]
Nick Mckeown, Tom Anderson, Hari Balakrishnan, Guru M. Parulkar, Larry L. Peterson, Jennifer Rexford, Scott Shenker, and Jonathan S. Turner. Openflow: Enabling innovation in campus networks. ACM SIGCOMM Computer Communication Review, 38(2):69--74, 2008.
[3]
Yu Chieh Cheng and Pi Chung Wang. Packet classification using dynamically generated decision trees. IEEE Transactions on Computers, 64(2):582--586, 2015.
[4]
Chad R. Meiners, Alex X. Liu, and Eric Torng. Bit weaving: A non-prefix approach to compressing packet classifiers in tcams. IEEE/ACM Transactions on Networking, 20(2):488--500, 2012.
[5]
Tao Cheng, Kuochen Wang, Li-Chun Wang, and Chain-Wu Lee. An in-switch rule caching and replacement algorithm in software defined networks. In Proc. IEEE International Conference on Communications (ICC 2018), pages 1--6. IEEE, 2018.
[6]
BGP data obtained from the APNIC router at DIX-IE (Tokyo, Japan). http://thyme.apnic.net/.
[7]
Ori Rottenstreich and János Tapolcai. Optimal rule caching and lossy compression for longest prefix matching. IEEE/ACM Transactions on Networking, 25(2):864--878, 2017.
[8]
Alex X Liu, Chad R Meiners, and Eric Torng. Packet classification using binary content addressable memory. IEEE/ACM Transactions on Networking, 24(3):1295--1307, 2016.
[9]
Yossi Kanizo, David Hay, and Isaac Keslassy. Palette: Distributing tables in software-defined networks. In Proc. IEEE INFOCOM 2013, pages 545--549. IEEE, 2013.
[10]
Nanxi Kang, Zhenming Liu, Jennifer Rexford, and David Walker. Optimizing the one big switch abstraction in software-defined networks. In Proc. the ninth ACM conference on Emerging networking experiments and technologies, pages 13--24. ACM, 2013.
[11]
Ben Pfaff, Justin Pettit, Teemu Koponen, et al. The design and implementation of open vswitch. In Proc. 12th USENIX Symposium on Networked Systems Design and Implementation (NSDI 2015), pages 117-130, 2015.
[12]
Sangjin Han, Keon Jang, KyoungSoo Park, and Sue Moon. Packetshader: a gpu-accelerated software router. ACM SIGCOMM Computer Communication Review, 41(4):195--206, 2011.
[13]
XianzhongDing,ZhiyongZhang,ZhipingJia,LeiJu,MengyingZhao,andHuawei Huang. Unified nvtcam and stcam architecture for improving packet matching performance. In Proc. 18th ACM SIGPLAN/SIGBED Conference on Languages, Compilers, and Tools for Embedded Systems (LCTES 2017), volume 52, pages 91--100. ACM, 2017.
[14]
Naga Katta, Omid Alipourfard, Jennifer Rexford, and David Walker. Cacheflow: Dependency-aware rule-caching for software-defined networks. In Proc. the Symposium on SDN Research (SOSR '16), page 6. ACM, 2016.
[15]
Jang Ping Sheu and Yen Cheng Chuo. Wildcard rules caching and cache replacement algorithms in software-defined networking. IEEE Transactions on Network and Service Management, 13(1):1--1, 2016.
[16]
Huawei Huang, Guo Song, Li Peng, Weifa Liang, and Albert Y. Zomaya. Cost minimization for rule caching in software defined networking. IEEE Transactions on Parallel and Distributed Systems, 27(4):1007--1016, 2016.
[17]
Garegin Grigoryan and Yaoqing Liu. Pfca: a programmable fib caching architecture. In Proc. 14th ACM/IEEE Symposium on Architectures for Networking and Communications Systems, pages 97--103. ACM, 2018.
[18]
Xuan-Nam Nguyen, Damien Saucez, Chadi Barakat, and Thierry Turletti. Rules placement problem in openflow networks: A survey. IEEE Communications Surveys & Tutorials, 18(2):1273--1286, 2016.
[19]
Bo Yan, Yang Xu, Hongya Xing, Kang Xi, and H Jonathan Chao. Cab: A reactive wildcard rule caching system for software-defined networks. In Proc. the third workshop on Hot topics in software defined networking, pages 163--168. ACM, 2014.
[20]
Xianfeng Li and Wencong Xie. Craft: a cache reduction architecture for flow tables in software-defined networks. In Proc. IEEE Symposium on Computers and Communications (ISCC 2017), pages 967--972. IEEE, 2017.
[21]
Xitao Wen, Bo Yang, Yan Chen, Li Erran Li, Kai Bu, Peng Zheng, Yang Yang, and Chengchen Hu. Ruletris: Minimizing rule update latency for tcam-based sdn switches. In Proc. IEEE 36th International Conference on Distributed Computing Systems (ICDCS 2016), pages 179--188. IEEE, 2016.
[22]
David E Taylor and Jonathan S Turner. Classbench: A packet classification benchmark. IEEE/ACM Transactions on Networking, 15(3):499--511, 2007.
[23]
Piotr Rygielski, Marian Seliuchenko, Samuel Kounev, and Mykhailo Klymash. Performance analysis of sdn switches with hardware and software flow tables. In Proc. the 10th EAI International Conference on Performance Evaluation Methodologies and Tools (ValueTools 2016), 2016.

Cited By

View all
  • (2025)Approximations and Hardness of Covering and Packing Partially Ordered ItemsGraph-Theoretic Concepts in Computer Science10.1007/978-3-031-75409-8_12(166-180)Online publication date: 22-Jan-2025
  • (2024)Exploring Dynamic Rule Caching Under Dependency Constraints for Programmable Switches: Theory, Algorithm, and ImplementationIEEE Transactions on Network and Service Management10.1109/TNSM.2024.342209221:4(4830-4843)Online publication date: Aug-2024
  • (2024)Software Defined Wireless Sensor Load Balancing Routing for Internet of Things Applications: Review of ApproachesHeliyon10.1016/j.heliyon.2024.e29965(e29965)Online publication date: Apr-2024
  • Show More Cited By

Index Terms

  1. A Tale of Two (Flow) Tables: Demystifying Rule Caching in OpenFlow Switches

      Recommendations

      Comments

      Information & Contributors

      Information

      Published In

      cover image ACM Other conferences
      ICPP '19: Proceedings of the 48th International Conference on Parallel Processing
      August 2019
      1107 pages
      ISBN:9781450362955
      DOI:10.1145/3337821
      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]

      In-Cooperation

      • University of Tsukuba: University of Tsukuba

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      Published: 05 August 2019

      Permissions

      Request permissions for this article.

      Check for updates

      Author Tags

      1. OpenFlow
      2. Software Defined Networking
      3. TCAM
      4. hybrid flow tables
      5. rule caching

      Qualifiers

      • Research-article
      • Research
      • Refereed limited

      Funding Sources

      • National Natural Science Foundation of China

      Conference

      ICPP 2019

      Acceptance Rates

      Overall Acceptance Rate 91 of 313 submissions, 29%

      Contributors

      Other Metrics

      Bibliometrics & Citations

      Bibliometrics

      Article Metrics

      • Downloads (Last 12 months)15
      • Downloads (Last 6 weeks)0
      Reflects downloads up to 02 Mar 2025

      Other Metrics

      Citations

      Cited By

      View all
      • (2025)Approximations and Hardness of Covering and Packing Partially Ordered ItemsGraph-Theoretic Concepts in Computer Science10.1007/978-3-031-75409-8_12(166-180)Online publication date: 22-Jan-2025
      • (2024)Exploring Dynamic Rule Caching Under Dependency Constraints for Programmable Switches: Theory, Algorithm, and ImplementationIEEE Transactions on Network and Service Management10.1109/TNSM.2024.342209221:4(4830-4843)Online publication date: Aug-2024
      • (2024)Software Defined Wireless Sensor Load Balancing Routing for Internet of Things Applications: Review of ApproachesHeliyon10.1016/j.heliyon.2024.e29965(e29965)Online publication date: Apr-2024
      • (2023)Reducing Flow Table Update Costs in Software-Defined NetworkingSensors10.3390/s2323937523:23(9375)Online publication date: 23-Nov-2023
      • (2023)Integration of Interdomain Flow-Rule in Software-Defined Networks for Embedded Internet of Things DevicesElectronics10.3390/electronics1205117212:5(1172)Online publication date: 28-Feb-2023
      • (2023)A Composite Pipeline for Forwarding Low-Latency Traffic in SDN Programmable Data PlanesElectronics10.3390/electronics1202046112:2(461)Online publication date: 16-Jan-2023
      • (2023)AWEsome-Cache: Dependency-Free Rule-Caching for Arbitrary Wildcard Patterns in TCAM2023 IEEE 31st International Conference on Network Protocols (ICNP)10.1109/ICNP59255.2023.10355586(1-12)Online publication date: 10-Oct-2023
      • (2023)On-demand Multipath Transmission for Video Streaming Via Cross-layer Collaboration in SDN2023 IEEE 11th International Conference on Information, Communication and Networks (ICICN)10.1109/ICICN59530.2023.10393393(802-807)Online publication date: 17-Aug-2023
      • (2023)Reducing Update Cost of TCAM-Based Flow Table2023 IEEE 6th International Conference on Computer and Communication Engineering Technology (CCET)10.1109/CCET59170.2023.10335152(1-5)Online publication date: 4-Aug-2023
      • (2022)Cache Dependent Rules With Size-Limited Flow Table in Software-Defined Networking2022 IEEE Smartworld, Ubiquitous Intelligence & Computing, Scalable Computing & Communications, Digital Twin, Privacy Computing, Metaverse, Autonomous & Trusted Vehicles (SmartWorld/UIC/ScalCom/DigitalTwin/PriComp/Meta)10.1109/SmartWorld-UIC-ATC-ScalCom-DigitalTwin-PriComp-Metaverse56740.2022.00356(1736-1741)Online publication date: Dec-2022
      • Show More Cited By

      View Options

      Login options

      View options

      PDF

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader

      Figures

      Tables

      Media

      Share

      Share

      Share this Publication link

      Share on social media