TCP Fast Open Proxy Hardware Offloading
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The traditional three-way handshake in TCP connections is vulnerable to denial of service attacks and causes delays due to the need for establishing individual connections for each data transmission, and existing TCP fast open protocols require significant server resources for cookie generation and verification.
Innovation Solution
A system and method for TCP fast open support in proxy devices using a circuit and data plane, where the circuit receives SYN packets with cookies, validates them, and initiates connections if valid, or generates new cookies if invalid, utilizing a field-programmed gate array (FPGA) for cookie generation and verification to reduce server resource usage.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the server performs cookie generation and verification using traditional software processing, then the TCP fast open protocol can be implemented, but the server requires considerable resources and experiences time delays in data transmissions
Solution Approach 1:
The patent replaces traditional software-based cookie generation and verification processing with hardware acceleration using Field-Programmable Gate Arrays (FPGAs). The FPGA implements dedicated hardware circuits that perform cryptographic operations and packet processing at wire speed, eliminating the need for software intervention in these critical paths and thereby resolving the contradiction between reliable TCP connection establishment and fast data transmission.
Solution Approach 2:
The patent introduces an intermediary hardware processing layer (FPGA) between the client and server, which handles the computationally intensive cookie generation and verification tasks. This intermediary component offloads the processing burden from the server's main processing resources, enabling fast TCP fast open operations without consuming considerable server resources for each individual connection.
2Ease of manufacture
If the server uses traditional three-way handshake protocol, then connection establishment is simple, but the system is vulnerable to denial of service attacks and experiences delays in data flow
Solution Approach 1:
The patent implements preliminary action by pre-establishing connection state information and cookies in hardware tables within the FPGA before actual data transmission occurs. The system pre-processes connection parameters and maintains ready-to-use connection state, enabling rapid connection establishment without requiring time-consuming three-way handshakes during actual data flow, thus preventing DoS attack exploitation while maintaining simplicity.
3Reliability
If the server performs individual TCP connection establishment for each short data transmission, then connection control is precise, but delays occur in data flow between client and server
Solution Approach 1:
The patent enables continuity of useful action by maintaining persistent connection state information and cookie validity periods in the FPGA hardware tables. Once a connection is established and validated, the system can rapidly reuse the same hardware resources for subsequent data transmissions without re-performing full connection handshakes, thereby achieving precise connection control for multiple short data transmissions without time delays.
Data Source
AI summary
Systems and methods for TCP fast open support in proxy devices are provided. An example system may include at least one circuit and at least one data plane communicatively coupled to the circuit. The circuit may be configured to receive at least one SYN packet. The at least one SYN packet is associated with at least one client device and includes a cookie. The circuit can be configured to validate the cookie. If the result of the validation is positive, the data plane can be configured to initiate, based on the at least one SYN packet, a connection between the at least one client device and at least one server. If the result of the validation is negative, the circuit can be configured to generate, based on the SYN packet, a new cookie and send a SYN-ACK packet to the client, the SYN-ACK packet including the new cookie.


