TCP Proxy Authentication for SYN Flood Mitigation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current TCP protocols are vulnerable to SYN flood attacks, which lead to high interrupt rates and CPU starvation due to incomplete TCP connections, and IP address management is inefficient, especially when dealing with dynamic client IP addresses.

Innovation Solution

A transparent TCP proxy intercepts and manages TCP connections by acting as a middleman between clients and servers, using SYN cookies and cryptographic authentication to validate connections and manage IP addresses, thereby reducing the impact of SYN flood attacks and improving IP address management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the server maintains state for all half-open connections to ensure reliable TCP connection establishment, then connection reliability is improved, but memory resources are consumed and the state table may overflow during SYN flood attacks

Engineering Contradiction:
ImproveTCP connection establishment reliabilityVSAvoidmemory resources for state table
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent extracts the authentication verification from the traditional TCP handshake process by implementing a separate authentication protocol that runs independently of the standard three-way handshake. This allows the server to verify client identity without maintaining full connection state in the traditional state table, thereby reducing memory consumption while preserving connection reliability.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces an authentication token as an intermediary mechanism between the client and server. Instead of directly maintaining connection state, the server uses authentication tokens to verify client identity during the handshake process. This intermediary approach allows the server to validate connections without storing extensive connection information in the state table, thus resolving the contradiction between reliability and memory resource consumption.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If the server processes each incoming TCP segment by verifying checksums and updating state to ensure data integrity, then data integrity is improved, but CPU time is consumed and interrupt rate increases during high connection rates

Engineering Contradiction:
Improvedata integrityVSAvoidCPU time for TCP processing
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent performs authentication verification as a preliminary action before the server commits to maintaining full connection state. By verifying client identity through authentication tokens during the initial handshake phase, the server can quickly reject unauthorized connection attempts without investing CPU resources in subsequent connection processing, thereby reducing overall CPU time consumption while maintaining data integrity for legitimate connections.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements partial connection state maintenance by only storing essential authentication information rather than complete connection state for all half-open connections. This partial approach allows the server to verify data integrity for authenticated connections while avoiding the full CPU overhead of traditional TCP state maintenance for potentially malicious connections, thus reducing interrupt rate and CPU time usage.

Inventive Principle:
Principle #16Partial or excessive action

3Adaptability or versatility

If the server accepts connections from any client IP address to maintain openness and accessibility, then network accessibility is improved, but vulnerability to SYN flood attacks and unauthorized access increases

Engineering Contradiction:
Improvenetwork accessibilityVSAvoidvulnerability to SYN flood attacks
Core Design Contradiction:
Adaptability or versatilityVSObject-affected harmful factors

Solution Approach 1:

The patent implements a self-service authentication mechanism where clients must present valid authentication tokens to establish connections. This self-service approach allows the server to maintain openness by accepting connections from any IP address while simultaneously protecting against attacks, as the authentication token verification is performed automatically without requiring the server to pre-approve specific IP addresses, thus resolving the contradiction between accessibility and vulnerability.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS9571286B2Authenticating the identity of initiators of TCP connections
Publication Date: 2017.02.14 CLOUDFLARE INC
  • US9571286B2 patent drawing
  • US9571286B2 patent drawing
  • US9571286B2 patent drawing

AI summary

A Transmission Control Protocol (TCP) receiver receives a SYN segment from a TCP initiator that initiates a TCP handshake between the TCP initiator and a TCP server. A first value is extracted from a predefined portion of the SYN segment. A second value is computed using an authentication algorithm that includes at least using a cryptographic hash function that takes as input at least the source IP address of the encapsulating IP packet of the SYN segment and a shared secret between the TCP initiator and the TCP receiver. If the computed second value matches the extracted first value, then the TCP handshake is allowed to continue. If the computed second value does not match the extracted first value, then the TCP handshake is not allowed to continue.