Asymmetric Application Identification on Switches

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In distributed hardware-based switching platforms, existing systems face challenges in performing large-scale application identification due to the risk of denial-of-service attacks and the need for multiple IDS/IPS engine instances to handle both sides of traffic flows, which is inefficient and requires unnecessary communication and state creation.

Innovation Solution

The system selects an IDS/IPS engine during the TCP session establishment using the time spent on the three-way TCP handshake, allowing subsequent data packets to be forwarded to the selected engine, thereby supporting multiple engine instances and reducing unnecessary communication and state creation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If copies of all new flows are sent to IDS/IPS engines at the ingress interface, then application identification can be performed, but it may lead to denial-of-service attacks and requires multiple engine instances

Engineering Contradiction:
Improveapplication identification capabilityVSAvoidnumber of IDS/IPS engine instances
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by selecting an IDS/IPS engine instance during the TCP three-way handshake phase, before actual data traffic flows. The ingress interface identifies the client IP and port combination during handshake and pre-assigns an engine instance, so that when real traffic arrives, the selection is already complete. This avoids the need to handle all new flows immediately and reduces the burden on IDS/IPS engines.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent extracts the engine selection logic from the data traffic processing path and places it in the control plane during TCP handshake. By separating the selection decision (made during handshake) from the data forwarding path, the system avoids sending copies of all data flows to IDS/IPS engines, reducing unnecessary processing and the risk of denial-of-service attacks.

Inventive Principle:
Principle #2Taking out (Extraction)

2Adaptability or versatility

If multiple IDS/IPS engine instances are deployed to handle both sides of traffic flows, then application identification is supported, but unnecessary communication and state creation occur

Engineering Contradiction:
Improvesupport for both sides of trafficVSAvoidcommunication overhead and state management
Core Design Contradiction:
Adaptability or versatilityVSLoss of energy

Solution Approach 1:

The patent applies asymmetry by treating the client-to-server and server-to-client directions differently. During TCP handshake, the system selects an engine instance based on client characteristics (IP and port). Once selected, both directions of traffic for that TCP session are forwarded to the same engine instance. This asymmetric approach (selecting based on one direction's characteristics but handling both directions) eliminates the need for symmetric handling that would require separate engine instances for each direction, reducing communication overhead and state management complexity.

Inventive Principle:
Principle #4Asymmetry

3Measurement precision

If all traffic flows are forwarded to IDS/IPS engines for inspection, then comprehensive application identification is achieved, but system efficiency decreases due to DoS risk

Engineering Contradiction:
Improveapplication identification accuracyVSAvoidsystem processing efficiency
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent applies partial action by selectively forwarding only established TCP session traffic to IDS/IPS engines, rather than inspecting all traffic flows. The system uses the TCP handshake phase to identify and select engine instances, then forwards subsequent data packets for those specific sessions. This partial inspection approach maintains application identification accuracy for relevant traffic while avoiding the overhead of inspecting all flows, thus preserving system efficiency and reducing DoS risk.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11805078B2Asymmetric application identification detection on switches
Publication Date: 2023.10.31 HEWLETT PACKARD ENTERPRISE DEV LP
  • US11805078B2 patent drawing
  • US11805078B2 patent drawing
  • US11805078B2 patent drawing

AI summary

A first ingress interface on a switch receives a first control packet for establishing a Transmission Control Protocol (TCP) session and selects a first engine running on a first line card in the switch. A second ingress interface receives a second control packet and selects the same first engine. Data associated with the TCP session received by the first or second ingress interface subsequent to establishing the TCP session is to be forwarded to the first engine. The first ingress interface receives a third control packet and sends, to the selected first engine, a notification indicating the TCP session which is to be tracked. The first or second ingress interface receives a fourth packet with a payload associated with the TCP session and forwards, to the selected first engine, a copy of the fourth packet, thereby facilitating a plurality of engine instances to support application identification.