| CPC H04L 61/4511 (2022.05) [H04L 12/4633 (2013.01); H04L 12/4641 (2013.01); H04L 61/2592 (2013.01); H04L 67/01 (2022.05); H04L 67/02 (2013.01); H04L 67/10 (2013.01); H04L 67/1017 (2013.01); H04L 67/1031 (2013.01); H04L 61/5007 (2022.05)] | 20 Claims |

|
1. A method for establishing and using a plurality of tunnels in a distributed edge compute and routing service, the method comprising:
receiving, at a first one of a plurality of edge servers of the distributed edge compute and routing service from a first tunnel client residing on a first origin server, a first tunnel connection request, wherein the first tunnel connection request identifies a hostname that is to be tunneled;
responsive to the first tunnel connection request,
establishing a first tunnel between the first one of the plurality of edge servers and the first tunnel client,
assigning a first IP address for the first tunnel,
establishing a second tunnel between a second one of the plurality of edge servers and the first tunnel client, and
assigning a second IP address for the second tunnel;
receiving, at the first one of the plurality of edge servers, a first request for an action to be performed on a first resource of the tunneled hostname handled by the first origin server, wherein the first one of the plurality of edge servers receives the first request from a third one of the plurality of edge servers that received the first request from a first client network application, and wherein the third one of the plurality of edge servers is not connected to the first origin server for the tunneled hostname;
transmitting the first request from the first one of the plurality of edge servers to the first origin server over the first tunnel;
receiving, at the second one of the plurality of edge servers, a second request for an action to be performed on a second resource of the tunneled hostname handled by the first origin server, wherein the second one of the plurality of edge servers receives the second request from a fourth one of the plurality of edge servers that received the second request from a second client network application, and wherein the fourth one of the plurality of edge servers is not connected to the first origin server for the tunneled hostname; and
transmitting the second request from the second one of the plurality of edge servers to the first origin server over the second tunnel.
|