| 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)] | 40 Claims |

|
1. A method performed by a client device that is configured to be in multiple states that include first and second states according to a utilization level of a resource in the client device, the method comprising:
establishing, by the client device over the Internet, a connection with a first server;
sending, by the client device over the established connection to the first server, an Internet Protocol (IP) address that identifies the client device on the Internet;
sending, by the client device to the first server over the established connection, a physical geographical location that corresponds to an actual physical geographical location of the client device;
periodically metering, by the client device, the utilization level of the resource in the client device;
determining, by the client device, that the metered resource utilization level is under a threshold by comparing the metered resource utilization level to the threshold;
responsive to the determining that the utilization level is under the threshold, shifting to the first state or staying in the first state of the multiple states, by the client device;
responsive to the determining that the utilization level is above the threshold, shifting to the second state or staying in the second state of the multiple states, by the client device;
sending, by the client device to the first server over the established connection, a message indicative of the client device being in the first or second state;
receiving, by the client device from the first server over the established connection, a first request, for a first content, that comprises a first identifier of the first content in the Internet;
obtaining, by the client device, the first content, in response to the receiving of the first request;
sending, by the client device to the first server over the established connection, the obtained first content,
receiving, by the client device from the first server over the established connection, a second request, for a second content, that comprises a second identifier of the second content in the Internet;
obtaining, by the client device, the second content, in response to the receiving of the second request; and
sending, by the client device to the first server over the established connection, the obtained second content,
wherein the metering of the resource utilization level in the client device comprises metering a process or a thread by a processor, metering a utilization level of a processor, metering a utilization level of a memory, sensing an input from a user by an input device, sensing an output of a sensor, metering a communication activity, or sensing a battery level of a battery, and
wherein the client device comprises a mobile device.
|