US 12,294,628 B2
Methods and systems to maintain multiple persistent channels between proxy servers
Gediminas Dagys, Neringa (LT)
Assigned to Oxylabs, UAB, Vilnius (LT)
Filed by Oxylabs, UAB, Vilnius (LT)
Filed on Jan. 26, 2024, as Appl. No. 18/424,407.
Application 18/424,407 is a continuation of application No. 18/132,872, filed on Apr. 10, 2023, granted, now 11,936,742.
Application 18/132,872 is a continuation of application No. 17/864,266, filed on Jul. 13, 2022, granted, now 11,652,890, issued on May 16, 2023.
Prior Publication US 2024/0171640 A1, May 23, 2024
This patent is subject to a terminal disclaimer.
Int. Cl. H04L 67/141 (2022.01); H04L 67/02 (2022.01); H04L 67/56 (2022.01)
CPC H04L 67/141 (2013.01) [H04L 67/02 (2013.01); H04L 67/56 (2022.05)] 20 Claims
OG exemplary drawing
 
1. A method of enabling proxy servers to exchange data independently without any relation to a previous request or message through a persistent connection within a service provider infrastructure, the method comprising:
initiating, by an exit proxy, a first network connection with a proxy supernode in the service provider infrastructure;
transmitting, by the exit proxy, a request to upgrade the first network connection to support WebSocket communication channels to the proxy supernode;
receiving, by the exit proxy, a Hypertext Transfer Protocol (HTTP) 101 switching protocol response code from the proxy supernode, wherein the HTTP 101 switching protocol response code establishes a WebSocket communication channel between the exit proxy and the proxy supernode;
receiving, by the exit proxy, a first WebSocket message from the proxy supernode, the first WebSocket message specifying (i) a uniform resource locator (URL) of a target server and (ii) service or data requested by a client from the target server;
initiating, by the exit proxy, a second network connection with the target server;
querying, by the exit proxy, the target server for the service or data requested by the client;
in response to procuring the service or data requested by the client from the target server, formulating, by the exit proxy, a second WebSocket message integrating the procured service or data; and
transmitting, by the exit proxy, the second WebSocket message to the proxy supernode via the WebSocket communication channel.