Selection of proxy device for connection pooling
Abstract
Methods, systems, and computer storage media are provided for communicating with client devices by way of a proxy device. An indication is received that multiple client devices are attempting to communicate with a shared service over a wide area network, such as the Internet. A server provides a first client device with a list of other client devices that are currently in communications with the shared service. Once a proxy device has been selected, the server receives an identification of that proxy device from the first client device so that the server knows that future communications from the first client device will be received through the proxy device. Data is then communicated to and from the shared service by way of the proxy device.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . One or more computer storage media storing computer-useable instructions that, when used by one or more computing devices, cause the one or more computing devices to perform a method of communicating data to one or more client devices by way of a proxy device, the method comprising:
at a remote server, selecting a proxy device that will communicate with the remote server on behalf of the one or more client devices, wherein the selection of the proxy device indicates to the remote server that future communications to the one or more client devices will be communicated through the proxy device, and wherein the proxy device is selected from a plurality of proxy devices based on one or more of,
(1) a connection type,
(2) a speed,
(3) other communications currently in progress, or
(4) wired or wireless capabilities; and
communicating data from the remote server to the one or more client devices by way of the proxy device through a wide area network.
2 . The one or more computer storage media of claim 1 , wherein the one or more client devices have a common geographical location.
3 . The one or more computer storage media of claim 1 , wherein the selecting comprises receiving an indication that the one or more client devices are to receive communications from the remote server by way of the wide area network.
4 . The one or more computer storage media of claim 1 , wherein the one or more client devices comprise a first client device and a second client device that are attempting to communicate with a shared service.
5 . The one or more computer storage media of claim 1 , wherein the remote server monitors which of the one or more client devices are currently in a communications session with a shared service.
6 . The one or more computer storage media of claim 3 , wherein the proxy device is selected by the remote server from a plurality of proxy devices having different properties.
7 . The one or more computer storage media of claim 4 , wherein the remote server is used by the first and second client devices for communication with the shared service.
8 . The one or more computer storage media of claim 1 , wherein the remote server monitors which devices are registered as proxy devices.
9 . The one or more computer storage media of claim 1 , wherein the remote server receives a single communication stream from the proxy device when the proxy device is communicating with the remote server on behalf of the one or more client devices.
10 . The one or more computer storage media of claim 1 , wherein the proxy device receives a single communication stream from the remote server when the remote server is communicating with the one or more client devices by way of the proxy device.
11 . The one or more computer storage media of claim 1 , wherein the remote server notifies the one or more client devices as to an identity of the proxy device.
12 . The one or more computer storage media of claim 11 , wherein the proxy device is selected based on it being better able to communicate with the remote server.
13 . A system for communicating data to one or more client devices by way of a proxy device, the system comprising:
a remote server having one or more processors and one or more computer-readable storage media, the remote server configured to: determine that data is to be communicated to one or more client devices; identify a proxy device through which the data is to be communicated to the one or more client devices, wherein the identifying of the proxy device is based on one or more of,
(1) a connection type,
(2) a speed,
(3) other communications currently in progress, or
(4) wired or wireless capabilities; and
communicate the data to the one or more client devices by way of the proxy device.
14 . The system of claim 13 , further comprising:
one or more proxy devices configured to communicate data with the one or more client devices and with the remote server such that the remote server can communicate the data to the one or more client devices by way of one of the one or more proxy devices.
15 . The system of claim 13 , further comprising:
the one or more client devices that are attempting to communicate data with the remote server.
16 . The system of claim 13 , wherein the remote server is further configured to detect that the one or more client devices are in a communications session with a shared service associated with the remote server.
17 . The one or more computer storage media of claim 16 , wherein the remote server identifies the proxy device based on the proxy device being better able to communicate with the remote server.
18 . One or more computer storage media storing computer-useable instructions that, when used by one or more computing devices, cause the one or more computing devices to perform a communicating data to one or more client devices by way of a proxy device, the method comprising:
at a remote server, determining that data is to be communicated to one or more client devices; identifying a proxy device through which the data is to be communicated to the one or more client devices, wherein the identifying of the proxy device is based on one or more of,
(1) a connection type,
(2) a speed,
(3) other communications currently in progress, or
(4) wired or wireless capabilities; and
communicating the data to the one or more client devices by way of the proxy device.
19 . The one or more computer storage media of claim 19 , further comprising detecting, at the remote server, that the one or more client devices are attempting to communicate with a shared service that is associated with the remote server.
20 . The one or more computer storage media of claim 19 , wherein the proxy device is identified based on it being better able to communicate with the remote server.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.