US 11,870,855 B2
Proxyless protocol
Sonny Ben-Shimon, Tel-Aviv (IL); Uri Goren, Rishon LeZion (IL); Daniel Berkovitch, Bridgewater, NJ (US); Ittai Balaban, Mishmarot (IL); Alok Kumar, Mountain View, CA (US); Parveen Patel, Mountain View, CA (US); Pierre-emmanuel Ettori, Sunnyvale, CA (US); Anshuman Gupta, Mountain View, CA (US); Idan Brown, Mountain View, CA (US); and Noam Lampert, Tel-Aviv (IL)
Assigned to Google LLC, Mountain View, CA (US)
Filed by Google LLC, Mountain View, CA (US)
Filed on Nov. 22, 2022, as Appl. No. 18/058,019.
Application 18/058,019 is a continuation of application No. 17/219,705, filed on Mar. 31, 2021, granted, now 11,533,372.
Prior Publication US 2023/0092318 A1, Mar. 23, 2023
This patent is subject to a terminal disclaimer.
Int. Cl. H04L 29/08 (2006.01); H04L 67/141 (2022.01); H04L 67/56 (2022.01); H04L 5/00 (2006.01); H04L 69/326 (2022.01)
CPC H04L 67/141 (2013.01) [H04L 5/0055 (2013.01); H04L 67/56 (2022.05); H04L 69/326 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A computer-implemented method when executed by data processing hardware causes the data processing hardware to perform operations comprising:
receiving, from a client, a first Transmission Control Protocol (TCP) connection request requesting to establish a first TCP connection between the client and a proxy server for routing data through the proxy server to a destination server, the first TCP connection request comprising client information and a first sequence number;
transmitting, to the destination server, a second TCP connection request requesting to establish a second TCP connection between the client and the destination server, the second TCP connection request comprising a second sequence number;
receiving, from the destination server, an acknowledgment message indicating acknowledgment of the second TCP connection request;
transmitting, to the destination server, a data packet comprising a proxy protocol header message comprising the client information;
generating a new acknowledgment message using the first TCP connection request;
transmitting, to the client, the new acknowledgment message establishing a TCP connection between the client and the destination server; and
after transmitting the new acknowledgment message:
receiving, from the client, a TCP packet for the proxy server;
determining that the TCP packet is associated with the TCP connection between the client and the destination server; and
based on determining that the TCP packet is associated with the TCP connection between the client and the destination server, forwarding the TCP packet to the destination server without modification to the TCP packet and without reconfiguration of the TCP connection.