Intermediary Device IP Address Insertion via TCP Options
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing data communication networks struggle to maintain accurate identification of client IP addresses and overlay network data as requests traverse intermediary devices, leading to modifications in IP addresses and loss of original client information.
Innovation Solution
An intermediary device is deployed between clients and servers to receive acknowledgement packets with transport layer option fields, extracting and storing overlay network data containing IP addresses of traversed hosts, and inserting this data into application layer protocol headers for subsequent requests.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If intermediary devices are deployed to manage network traffic, then service quality and traffic management are improved, but original client IP address identification is lost or modified
Solution Approach 1:
The intermediary device extracts overlay network data including client IP addresses from acknowledgment packets during the TCP handshake phase, before any application layer communication occurs. This preliminary extraction ensures the original client IP address is captured and stored in association with the transport layer connection before any potential modifications can occur during subsequent traffic forwarding.
Solution Approach 2:
The patent introduces a new intermediary component within the intermediary device that specifically handles overlay network data extraction and insertion. This component acts as a mediator between the TCP transport layer and application layer protocols, extracting IP address information from acknowledgment packets and inserting it into application layer headers, thereby preserving client identification information that would otherwise be lost through the intermediary device.
2Reliability
If overlay network data is extracted and inserted into application layer headers, then client IP address integrity is maintained, but device complexity increases
Solution Approach 1:
The intermediary device leverages existing TCP acknowledgment packet processing functionality to extract overlay network data, rather than requiring completely separate extraction and insertion mechanisms. The device uses its existing transport layer connection management capabilities to associate extracted IP address information with ongoing connections, thereby maintaining reliability while minimizing the need for additional complex components.
Solution Approach 2:
The intermediary device uses the acknowledgment packets themselves, which are already part of the TCP handshake process, to carry the overlay network data. The device extracts information that is already present in the acknowledgment packets, rather than requiring separate signaling mechanisms or additional protocol exchanges, thereby maintaining reliability while reducing device complexity.
Data Source
Figure 1A
Figure 1B
Figure 1C
AI summary
The present disclosure presents systems and methods for maintaining identification of network devices sending or traversing a network packet en route to an intermediary device deployed between a source and a destination network device. An intermediary may receive an acknowledgement packet comprising an option field identified by an option number for a transport layer connection established via intermediary. The acknowledgement packet may comprise overlay network data that identifies IP addresses of the originating network device and host network devices intercepting and forwarding the network packet to the intermediary. The intermediary device may determine the option number for the option field from which to obtain the overlay network data identifying IP addresses. The intermediary device may receive a second request of the client to access the server via the transport layer connection and insert IP addresses from the overlay network data into an application layer protocol header of the second request forwarded to the server.