SDN Switch Flow Rule Management via Priority Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In software-defined networks, managing and updating flow rules in switches is challenging due to the need to maintain priority order, leading to frequent rearrangement of flow rules in the forwarding hardware, which can result in packet leaks and drops.

Innovation Solution

A switch is designed with a flow rule management module that allocates memory chunks based on priority ranges, allowing strict priority enforcement and converting generic flow rules to port-specific rules, ensuring that each flow rule is stored in a dedicated slot without rearranging existing rules, using content-addressable memory (CAM) for efficient storage and retrieval.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If flow rules are stored in forwarding hardware in priority order, then priority enforcement is improved, but frequent rearrangement of flow rules causes packet leaks and drops

Engineering Contradiction:
Improvepacket forwarding accuracyVSAvoidflow rule management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the flow table into multiple priority groups, with each group having a dedicated storage location in forwarding hardware. This segmentation allows flow rules to be organized by priority without requiring frequent rearrangement, as new rules are placed in appropriate priority groups rather than reordering existing entries.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The controller performs preliminary actions by pre-calculating and assigning priority values to flow rules before installing them in the forwarding hardware. This preliminary prioritization eliminates the need for dynamic rearrangement during runtime, preventing packet leaks and drops that would occur during reordering operations.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If flow rules are frequently rearranged to maintain priority order, then priority enforcement is improved, but packet forwarding stability deteriorates

Engineering Contradiction:
Improvepriority enforcementVSAvoidflow rule stability
Core Design Contradiction:
ReliabilityVSStability of the object's composition

Solution Approach 1:

By dividing the flow table into priority-based segments with dedicated storage locations, the patent ensures that flow rules remain stable within their assigned priority groups. This segmentation prevents the need for frequent rearrangement while maintaining strict priority enforcement through the hierarchical structure.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the parameter of flow rule storage from sequential ordering to priority-based indexing. Each flow rule is assigned a priority parameter that determines its storage location, allowing priority enforcement without requiring positional rearrangement, thus maintaining stability.

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If generic flow rules are converted to port-specific rules, then flow rule precision is improved, but memory requirements increase

Engineering Contradiction:
Improveflow rule specificityVSAvoidmemory allocation
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent implements a universal flow rule structure where a single flow rule entry can serve multiple ports through port wildcard matching. This multi-functionality allows generic flow rules to be converted to port-specific rules without proportionally increasing memory requirements, as one rule can match multiple ports simultaneously.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent changes the parameter of flow rule matching from exact port matching to wildcard-based port matching. This parameter change allows a single flow rule to cover multiple ports, reducing the total number of flow rule entries needed while maintaining precise control over port-specific traffic patterns.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10439932B2System and method for flow rule management in software-defined networks
Publication Date: 2019.10.08 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LTD
  • US10439932B2 patent drawing
  • US10439932B2 patent drawing
  • US10439932B2 patent drawing

AI summary

Embodiments described herein provide a switch. The switch can include one or more ports, a communication module, and a flow rule management module. During operation, the communication module obtains a flow rule from a notification message from a controller of a software-defined network. The flow rule management module then determines whether a priority value of the flow rule is in a local flow table. The flow table can store flow rules received from the controller. If the priority value of the flow rule is not in the local flow table, the flow rule management module stores the flow rule in a location of the flow table allocated for the priority value.