| CPC H04L 12/2803 (2013.01) [G06F 7/58 (2013.01); G06F 7/588 (2013.01); G06F 8/71 (2013.01); G06F 9/45545 (2013.01); G06F 9/4555 (2013.01); G06F 9/4881 (2013.01); G06F 16/955 (2019.01); H04L 12/2856 (2013.01); H04L 12/4633 (2013.01); H04L 47/283 (2013.01); H04L 61/256 (2013.01); H04L 61/2575 (2013.01); H04L 61/2585 (2013.01); H04L 61/2589 (2013.01); H04L 61/2592 (2013.01); H04L 61/4511 (2022.05); H04L 61/5007 (2022.05); H04L 63/0272 (2013.01); H04L 63/0281 (2013.01); H04L 63/029 (2013.01); H04L 63/164 (2013.01); H04L 67/01 (2022.05); H04L 67/02 (2013.01); H04L 67/025 (2013.01); H04L 67/133 (2022.05); H04L 67/141 (2013.01); H04L 67/142 (2013.01); H04L 67/288 (2013.01); H04L 67/2885 (2013.01); H04L 67/56 (2022.05); H04L 67/563 (2022.05); H04L 67/568 (2022.05); H04L 67/5681 (2022.05); H04L 67/63 (2022.05); H04L 69/16 (2013.01); H04L 69/162 (2013.01); H04L 69/167 (2013.01); H04L 69/168 (2013.01); H04W 4/80 (2018.02); H04W 48/18 (2013.01); H04W 84/10 (2013.01); H04W 84/18 (2013.01); G06F 9/45558 (2013.01); G06F 2009/45591 (2013.01); G06F 2009/45595 (2013.01); H04L 2101/69 (2022.05)] | 108 Claims |

|
1. A method for obtaining, by a client device that is configured to be in at least idle and non-idle states, a content that is identified by a content identifier and is stored in a web server, for use with distinct first and second servers, the method comprising:
connecting, by the client device, to the Internet, via a first network;
selecting, by the client device, the first server from a plurality of servers;
initiating, by the client device, communication with the selected first server;
periodically sending, by the client device, over the Internet via the first network, a message that comprises a status of the client device, or is in response to the status of the client device;
measuring, by the client device, a data rate of communicating over the Internet;
sending, by the client device to the first server, over the Internet via the first network, the measured data rate;
responsive to being the non-idle states, determining, if an idling condition is met, wherein the idling condition is met when the measured data rate is below a threshold;
responsive to the determination that the idling condition is met, shifting to the idle state;
responsive to being in the idle state, determining if an idling condition is met;
responsive to the determination that the idling condition is not met, shifting to the non-idle states;
when in the idle state, receiving, by the client device from the first or second server, over the Internet via the first network, the content identifier;
sending, by the client device to the web server, over the Internet via the first network, the content identifier, in response to the receiving of the content identifier;
receiving, from the web server, over the Internet via the first network, the content, in response to the sent content identifier; and
sending, to the first or second server, over the Internet via the first network, the received content.
|