OpenFlow Controller Flow Entry Delivery via Batched Command Packets

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In traditional data transport networks, switches determine forwarding paths independently, leading to suboptimal paths and increased workload, while OpenFlow technologies rely on controllers to optimize paths, but delays in delivering flow entries can result in redundant messages and logic errors during data forwarding.

Innovation Solution

A method where a controller generates and sends flow entries and control instructions in a command packet to each switch in the forwarding path, ensuring each switch stores its corresponding flow entry before forwarding data, thereby avoiding redundant messages and logic errors by encapsulating and transmitting flow entries in reverse order of the forwarding path.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the controller sends flow entries to each switch individually in the forwarding path, then each switch can obtain its flow entry, but delays in delivery cause redundant messages and logic errors

Engineering Contradiction:
Improvedata forwarding accuracyVSAvoidflow entry delivery delay
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent merges multiple individual flow entry deliveries into a single batch delivery mechanism. The controller encapsulates flow entries for multiple switches (switch B, switch C, switch D) into one command packet, which is delivered as a unified unit. This ensures atomic delivery - either all switches receive their flow entries together, or none do, eliminating the timing discrepancies that cause redundant messages and logic errors.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The controller performs preliminary encapsulation of all necessary flow entries into a complete command packet before delivery. By preparing the entire set of flow entries for all switches in advance and packaging them together, the system ensures that when the packet arrives at any switch, all downstream switches have already received their instructions, preventing the race condition where an upstream switch forwards data before downstream switches are ready.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If the controller delivers flow entries to switches simultaneously, then delivery time is reduced, but network delays cause inconsistent arrival times leading to forwarding errors

Engineering Contradiction:
Improveflow entry delivery speedVSAvoidforwarding path consistency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent combines multiple flow entry deliveries into a single batched command packet that is sent to multiple switches simultaneously. Although network delays may still cause slightly different arrival times at each switch, the batched approach ensures that all flow entries are delivered as a coordinated unit rather than individually, maintaining consistency across the forwarding path.

Inventive Principle:
Principle #5Merging (Combining)

3Adaptability or versatility

If switches determine forwarding paths independently, then switch autonomy is maintained, but each switch processes large amounts of data and determines suboptimal paths

Engineering Contradiction:
Improveswitch autonomyVSAvoiddata forwarding efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent extracts the forwarding path determination function from individual switches and centralizes it in the controller. The controller, which has global network topology knowledge, determines the optimal forwarding path and encapsulates the appropriate flow entries for each switch in the path. This allows switches to focus solely on executing forwarding decisions based on received flow entries, significantly improving forwarding efficiency while the controller maintains overall path optimization.

Inventive Principle:
Principle #2Taking out (Extraction)

4Productivity

If the controller centralizes path determination, then forwarding efficiency is improved, but the controller must manage and deliver flow entries to multiple switches

Engineering Contradiction:
Improvedata forwarding efficiencyVSAvoidcontroller complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent merges the flow entry management for multiple switches into a single unified process at the controller. Instead of maintaining separate management procedures for each switch, the controller generates a batched command packet that contains flow entries for all switches in the forwarding path, reducing the operational complexity of centralized control while maintaining improved forwarding efficiency.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS10009252B2Flow entry delivery method and communication system
Publication Date: 2018.06.26 HUAWEI TECH CO LTD
  • US10009252B2 patent drawing
  • US10009252B2 patent drawing
  • US10009252B2 patent drawing

AI summary

A flow entry delivery method and a communication system are provided. The communication system includes a controller and N switches. After receiving a packet-in message sent by a source switch, the controller determines a forwarding path for forwarding to-be-forwarded data. Then, the controller generates a corresponding flow entry for each of the N switches in the forwarding path separately, and generates a corresponding control instruction for each of other N−1 switches except the source switch in the forwarding path separately. After encapsulating the generated N flow entries and N−1 control instructions into the Nth command packet, the controller sends the Nth command packet to the Nth switch of the N switches, so that the Nth switch transmits the N flow entries in the forwarding path according to the Nth control instruction in the Nth command packet.