CAB Wildcard Rule Caching for SDN Flow Tables

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Software-Defined Networking (SDN) switches face challenges with wildcard rule caching due to high cache miss rates and flow table overflow, particularly due to wildcard rule dependency and limited TCAM capacity, which affects network performance and scalability.

Innovation Solution

The CAching in Buckets (CAB) system partitions the D-dimensional field space into logical 'buckets' and associates wildcard rules with these buckets based on priority, ensuring semantic correctness and reducing cache misses by caching rules that share the same bucket together.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If wildcard rules are cached in TCAM to improve rule reusability and reduce controller requests, then scalability is enhanced, but the limited TCAM capacity causes flow table overflow

Engineering Contradiction:
Improverule reusabilityVSAvoidTCAM capacity
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent segments the flow table into multiple regions: a TCAM region for caching wildcard rules and a RAM region for storing exact-match rules. This segmentation allows the system to utilize both types of memory effectively, enabling rule reusability through wildcard rule caching in TCAM while preventing overflow by offloading exact-match rules to the larger RAM capacity.

Inventive Principle:
Principle #1Segmentation

2Productivity

If wildcard rules are cached to reduce cache miss rate, then network performance improves, but rule dependency causes false packet forwarding

Engineering Contradiction:
Improvenetwork performanceVSAvoidpacket forwarding accuracy
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent applies local quality by associating each cached wildcard rule with a specific priority level and scope. When a packet matches multiple cached wildcard rules, the system selectively applies the highest priority rule rather than any matching rule. This localized priority assignment ensures reliable packet forwarding while maintaining high cache hit rates.

Inventive Principle:
Principle #3Local quality

3Device complexity

If reactive caching is used to dynamically cache rules on demand, then flow table space is saved, but cache miss rate increases causing 2-ms latency

Engineering Contradiction:
Improveflow table space managementVSAvoidpacket processing latency
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The patent implements preliminary action by proactively caching frequently accessed exact-match rules in the RAM region before they are actually needed for packet processing. This pre-caching mechanism reduces cache misses and the associated 2-ms latency by ensuring that commonly used rules are already loaded in the faster RAM memory, ready for immediate processing.

Inventive Principle:
Principle #10Preliminary action

4Reliability

If extra storage overhead is used to guarantee semantic correctness of cached rules, then packet processing accuracy improves, but flow table overflow risk increases

Engineering Contradiction:
Improvesemantic correctnessVSAvoidflow table capacity
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent uses copying by maintaining a compact metadata structure that stores priority and scope information for each cached wildcard rule. Instead of storing full rule definitions multiple times to ensure semantic correctness, the system copies only the essential metadata pointers, significantly reducing storage overhead while maintaining packet processing accuracy.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS10129181B2Controlling the reactive caching of wildcard rules for packet processing, such as flow processing in software-defined networks
Publication Date: 2018.11.13 NEW YORK UNIV
  • US10129181B2 patent drawing
  • US10129181B2 patent drawing
  • US10129181B2 patent drawing

AI summary

Software-Defined Networking (“SDN”) enables flexible flow control by caching policy rules at OpenFlow switches. Compared with exact-match rule caching, wildcard rule caching can better preserve the flow table space at switches. However, one of the challenges for wildcard rule caching is the dependency between rules, which is generated by caching wildcard rules overlapped in field space with different priorities. Failure to handle the rule dependency may lead to wrong matching decisions for newly arrived flows, or may introduce high storage overhead in flow table memory. A wildcard rule caching system, which may be used for SDN partitions the field space into logical structures called buckets, and caches buckets along with all the associated wildcard rules. Doing so resolves rule dependency while using control network bandwidth efficiently. Further, controller processing load and flow setup latency are reduced.