US 12,034,559 B2
System and method for selecting and using a proxy device
Derry Shribman, Tel Aviv (IL); and Ofer Vilenski, Moshav Hadar Am (IL)
Assigned to BRIGHT DATA LTD., Netanya (IL)
Filed by BRIGHT DATA LTD., Netanya (IL)
Filed on Sep. 13, 2020, as Appl. No. 17/019,265.
Application 17/019,265 is a continuation of application No. 16/481,470, granted, now 10,880,266, previously published as PCT/IL2018/050910, filed on Aug. 16, 2018.
Claims priority of provisional application 62/550,834, filed on Aug. 28, 2017.
Claims priority of provisional application 62/563,157, filed on Sep. 26, 2017.
Claims priority of provisional application 62/624,208, filed on Jan. 31, 2018.
Claims priority of provisional application 62/684,211, filed on Jun. 13, 2018.
Prior Publication US 2021/0058367 A1, Feb. 25, 2021
This patent is subject to a terminal disclaimer.
Int. Cl. H04L 9/40 (2022.01); G06F 7/58 (2006.01); G06F 8/71 (2018.01); G06F 9/455 (2018.01); G06F 9/48 (2006.01); G06F 16/955 (2019.01); H04L 12/28 (2006.01); H04L 12/46 (2006.01); H04L 47/283 (2022.01); H04L 61/256 (2022.01); H04L 61/2575 (2022.01); H04L 61/2585 (2022.01); H04L 61/2589 (2022.01); H04L 61/2592 (2022.01); H04L 61/4511 (2022.01); H04L 61/5007 (2022.01); H04L 67/01 (2022.01); H04L 67/02 (2022.01); H04L 67/025 (2022.01); H04L 67/1021 (2022.01); H04L 67/133 (2022.01); H04L 67/141 (2022.01); H04L 67/142 (2022.01); H04L 67/288 (2022.01); H04L 67/2885 (2022.01); H04L 67/56 (2022.01); H04L 67/563 (2022.01); H04L 67/568 (2022.01); H04L 67/5681 (2022.01); H04L 67/63 (2022.01); H04L 69/16 (2022.01); H04L 69/167 (2022.01); H04L 69/168 (2022.01); H04W 4/80 (2018.01); H04W 48/18 (2009.01); H04W 84/10 (2009.01); H04W 84/18 (2009.01); H04L 101/69 (2022.01)
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)] 82 Claims
OG exemplary drawing
 
1. A method for fetching by a client device a content identified by a content identifier from a web server using mobile devices, for use with a group of mobile devices and first and second servers that are each connected to the Internet and are each addressable in the Internet using a respective IP address, where each of the mobile devices in the group is associated with a respective first value of a first attribute type, the second server stores a list of the Internet Protocol (IP) addresses of the mobile devices in the group, the method comprising:
receiving, by the first server from the client device, a request message that comprises the content identifier and a second value;
sending, by the first server to the second server, a first message in response to the receiving of the request message;
receiving, by the first server from the second server, the list of the IP address, in response to the first message;
selecting, by the first server, a selected mobile device from the received list of IP addresses, according to a criterion that is based on the first value associated with the selected mobile device being equal to the received second value;
sending, by the first server to the selected mobile device a second message that comprises the content identifier;
receiving, by the first server from the web server via the selected mobile device, the content in response to the second message; and
sending, by the first server to the client device, the content received from the selected mobile device,
wherein the selecting of the selected mobile device by the first server is based on, or is in response to, load balancing and a former selection of the selected mobile device or a time of the former selection of the selected mobile device,
wherein the communication over the Internet between the client device and the first server utilizes HyperText Transfer Protocol (HTTP) or HTTP Secure (HTTPS) connection, where the first serves as an HTTPS server respectively and the client device serves as an HTTPS client respectively, and
wherein the first attribute type comprises a geographical location, Internet Service Provider (ISP) or Autonomous System Number (ASN), a communication property or feature of a communication link of mobile devices, a hardware type or software type, or any combination thereof.