DISTRIBUTING TRANSMISSION OF REQUESTS ACROSS MULTIPLE IP ADDRESSES OF A PROXY SERVER IN A CLOUD-BASED PROXY SERVICE
First Claim
1. A method in a proxy server of a cloud-based proxy service, comprising:
- receiving, from a client, a first packet that includes a first incoming request for an action to be performed on an identified resource, wherein the first packet is received at the proxy server as a result of a Domain Name System (DNS) request for a domain corresponding to the identified resource resolving to an Internet Protocol (IP) address of the proxy server;
selecting a first one of a plurality of IP addresses of a same protocol type of the proxy server for use as a source IP address for a second packet that carries an outgoing request, wherein the step of selecting is based at least in part on a set of one or more parameters associated with the first packet, and wherein the selected first one of the plurality of IP addresses is a least recently used IP address of the plurality of IP addresses for a destination origin server;
transmitting a second packet that includes a first outgoing request to the destination origin server that hosts the identified resource, wherein the first outgoing request is based on the first incoming request, wherein the second packet includes the selected first IP address as the source IP address of the second packet;
receiving a third packet that includes a first incoming response from the destination origin server in response to the first outgoing request; and
transmitting a fourth packet to the client, the fourth packet including a first outgoing response that is based on the first incoming response.
2 Assignments
0 Petitions
Accused Products
Abstract
A first packet is received at a proxy server from a client and includes a first incoming request for an action to be performed on an identified resource. The first packet is received at the proxy server as a result of a DNS request for a domain corresponding to the identified resource resolving to an IP address of the proxy server. The proxy server selects, based on at least in part on a set of parameters associated with the first packet, one of multiple IP addresses for use as a source IP address for a second packet that carries an outgoing request and transmits the second packet. The proxy server receives a third packet that includes an incoming response from the destination origin server in response to the outgoing request and transmits a fourth packet to the client that includes an outgoing response based on the incoming response.
-
Citations
38 Claims
-
1. A method in a proxy server of a cloud-based proxy service, comprising:
-
receiving, from a client, a first packet that includes a first incoming request for an action to be performed on an identified resource, wherein the first packet is received at the proxy server as a result of a Domain Name System (DNS) request for a domain corresponding to the identified resource resolving to an Internet Protocol (IP) address of the proxy server; selecting a first one of a plurality of IP addresses of a same protocol type of the proxy server for use as a source IP address for a second packet that carries an outgoing request, wherein the step of selecting is based at least in part on a set of one or more parameters associated with the first packet, and wherein the selected first one of the plurality of IP addresses is a least recently used IP address of the plurality of IP addresses for a destination origin server; transmitting a second packet that includes a first outgoing request to the destination origin server that hosts the identified resource, wherein the first outgoing request is based on the first incoming request, wherein the second packet includes the selected first IP address as the source IP address of the second packet; receiving a third packet that includes a first incoming response from the destination origin server in response to the first outgoing request; and transmitting a fourth packet to the client, the fourth packet including a first outgoing response that is based on the first incoming response. - View Dependent Claims (5, 6, 7, 8, 9)
-
-
2. (canceled)
-
3. (canceled)
-
4. (canceled)
-
10. (canceled)
-
11. (canceled)
-
12. (canceled)
-
13. (canceled)
-
14. A non-transitory machine-readable storage medium that provides instructions that, when executed by a processor of a proxy server of a cloud-based proxy service, cause said processor to perform operations comprising:
-
receiving, from a client, a first packet that includes a first incoming request for an action to be performed on an identified resource, wherein the first packet is received at the proxy server as a result of a Domain Name System (DNS) request for a domain corresponding to the identified resource resolving to an Internet Protocol (IP) address of the proxy server; selecting a first one of a plurality of IP addresses of a same protocol type of the proxy server for use as a source IP address for a second packet that carries an outgoing request, wherein the step of selecting is based at least in part on a set of one or more parameters associated with the first packet, and wherein the selected first one of the plurality of IP addresses is a least recently used IP address of the plurality of IP addresses for a destination origin server; transmitting a second packet that includes a first outgoing request to the destination origin server that hosts the identified resource, wherein the first outgoing request is based on the first incoming request, wherein the second packet includes the selected first IP address as the source IP address of the second packet; receiving a third packet that includes a first incoming response from the destination origin server in response to the first outgoing request; and transmitting a fourth packet to the client, the fourth packet including a first outgoing response that is based on the first incoming response. - View Dependent Claims (18, 19, 20, 21, 22)
-
-
15. (canceled)
-
16. (canceled)
-
17. (canceled)
-
23. (canceled)
-
24. (canceled)
-
25. (canceled)
-
26. (canceled)
-
27. A method in a proxy server of a cloud-based proxy service, comprising:
-
receiving, from a client, a first packet that includes a first incoming request for an action to be performed on an identified resource, wherein the first packet is received at the proxy server as a result of a Domain Name System (DNS) request for a domain corresponding to the identified resource resolving to an Internet Protocol (IP) address of the proxy server; selecting a first one of a plurality of IP addresses of a same protocol type of the proxy server for use as a source IP address for a second packet that carries an outgoing request, wherein the step of selecting is based at least in part on a set of one or more parameters associated with the first packet, and wherein the selected first one of the plurality of IP addresses is an IP address of the proxy server that has been used as a source IP address for outgoing requests to a destination origin server a least number of times compared to other ones of the plurality of IP addresses that have been used as source IP addresses for outgoing requests to the destination origin server; transmitting a second packet that includes a first outgoing request to the destination origin server that hosts the identified resource, wherein the first outgoing request is based on the first incoming request, wherein the second packet includes the selected first IP address as the source IP address of the second packet; receiving a third packet that includes a first incoming response from the destination origin server in response to the first outgoing request; and transmitting a fourth packet to the client, the fourth packet including a first outgoing response that is based on the first incoming response. - View Dependent Claims (28, 29, 30, 31, 32)
-
-
33. A non-transitory machine-readable storage medium that provides instructions that, when executed by a processor of a proxy server of a cloud-based proxy service, cause said processor to perform operations comprising:
-
receiving, from a client, a first packet that includes a first incoming request for an action to be performed on an identified resource, wherein the first packet is received at the proxy server as a result of a Domain Name System (DNS) request for a domain corresponding to the identified resource resolving to an Internet Protocol (IP) address of the proxy server; selecting a first one of a plurality of IP addresses of a same protocol type of the proxy server for use as a source IP address for a second packet that carries an outgoing request, wherein the step of selecting is based at least in part on a set of one or more parameters associated with the first packet, and wherein the selected first one of the plurality of IP addresses is an IP address of the proxy server that has been used as a source IP address for outgoing requests to a destination origin server a least number of times compared to other ones of the plurality of IP addresses that have been used as source IP addresses for outgoing requests to the destination origin server; transmitting a second packet that includes a first outgoing request to the destination origin server that hosts the identified resource, wherein the first outgoing request is based on the first incoming request, wherein the second packet includes the selected first IP address as the source IP address of the second packet; receiving a third packet that includes a first incoming response from the destination origin server in response to the first outgoing request; and transmitting a fourth packet to the client, the fourth packet including a first outgoing response that is based on the first incoming response. - View Dependent Claims (34, 35, 36, 37, 38)
-
Specification