SDN Controller Flood Prevention via Flow Table Intermediary

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Software-Defined Networking (SDN) controllers are vulnerable to denial of service attacks, which overwhelm the infrastructure by generating malicious flows that exhaust resources and disrupt legitimate path setup requests, due to the lack of effective mechanisms to manage table-miss entries and prevent flooding.

Innovation Solution

Implementing flood prevention flow entries in networking devices to refrain from sending Packet_IN messages to the SDN controller until path setup is completed, and deleting these entries when the path is established, thereby controlling the ingress of data packets and preventing resource exhaustion.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the SDN controller processes all Packet_IN messages from table-miss entries, then path setup for legitimate flows is enabled, but resource exhaustion and service disruption occur due to malicious flows

Engineering Contradiction:
Improvepath setup reliabilityVSAvoidresource exhaustion from malicious flows
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The system performs preliminary actions by installing flood prevention flow entries in the second flow table before malicious flows can exhaust controller resources. These preemptive entries detect and drop suspicious Packet_IN messages early, preventing resource exhaustion while still allowing legitimate path setup requests to proceed to the controller.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The second flow table acts as an intermediary between the first flow table and the SDN controller. It intercepts Packet_IN messages from table-miss entries, filters out malicious flows using flood prevention entries, and only forwards legitimate requests to the controller, thus protecting resources while maintaining service functionality.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Object-affected harmful factors

If flood prevention flow entries are installed to drop Packet_IN messages, then controller resource protection is achieved, but legitimate path setup requests may be blocked

Engineering Contradiction:
Improvecontroller resource protectionVSAvoidlegitimate path setup reliability
Core Design Contradiction:
Object-affected harmful factorsVSReliability

Solution Approach 1:

The system applies different quality treatments to different flows locally at the switch level. Flood prevention flow entries are selectively installed for suspicious flows identified through table-miss patterns, while legitimate flows continue to be processed normally. This localized differentiation protects resources without blocking valid path setup requests.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system uses feedback mechanisms where the SDN controller monitors Packet_IN message patterns and dynamically adjusts flood prevention flow entries. When legitimate flows are incorrectly blocked, the controller receives feedback and removes or modifies the restrictive entries, ensuring that resource protection does not compromise legitimate service requirements.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11838197B2Methods and system for securing a SDN controller from denial of service attack
Publication Date: 2023.12.05 SAMSUNG ELECTRONICS CO LTD
  • US11838197B2 patent drawing
  • US11838197B2 patent drawing
  • US11838197B2 patent drawing

AI summary

A Method and a system for securing a SDN controller from denial of service attack are provided. A SDN controller receives, from a networking device, data packets pertaining to a flow in Packet_IN messages, if the flow does not match flow entries in a first flow table of the networking device. A table miss flow entry pertaining to the flow is created in a second flow table of the networking device for sending the Packet_IN. The SDN controller installs a flood prevention flow entry in the second flow table to enable the networking device to drop subsequent data packets pertaining to the flow until the SDN controller installs, in the first flow table, a flow entry matching the flow. The flood prevention flow entry is deleted from the second flow table after the installation of the flow entry matching the flow.