IP Library Granted Patent US 11,838,388
Granted Patent B2
US 11,838,388 · App. 18/073,112 · Granted Dec 5, 2023

System and method for improving internet communication by using intermediate nodes

Inventors: Derry Shribman (Tel Aviv, IL); Ofer Vilenski (Moshav Hadar Am, IL)
Assignee: BRIGHT DATA LTD.
H04L67/60H04L43/0864H04L63/029H04L63/0407H04L65/612H04L67/02H04L67/06H04L67/141H04L67/567H04L67/59H04N21/4622
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,838,388
App. No.
18/073,112
Granted
Dec 5, 2023
Kind
B2
Abstract

A method for fetching a content from a web server to a client device is disclosed, using tunnel devices serving as intermediate devices. The client device accesses an acceleration server to receive a list of available tunnel devices. The requested content is partitioned into slices, and the client device sends a request for the slices to the available tunnel devices. The tunnel devices in turn fetch the slices from the data server, and send the slices to the client device, where the content is reconstructed from the received slices. A client device may also serve as a tunnel device, serving as an intermediate device to other client devices. Similarly, a tunnel device may also serve as a client device for fetching content from a data server. The selection of tunnel devices to be used by a client device may be in the acceleration server, in the client device, or in both. The partition into slices may be overlapping or non-overlapping, and the same slice (or the whole content) may be fetched via multiple tunnel devices.

Claims (33)

1. A method for use with a group of client devices that are each identified in the Internet using a respective IP address and that are each associated with a respective physical geographical location that comprises a country, a city, a street, a ZIP code, a longitude, a latitude, or any combination thereof, the method comprising:

storing, by a first server, the respective physical geographical location of each one of the client devices in the group;

receiving, by the first server from a first device over the Internet, a first Uniform Resource Locator (URL);

selecting, by the first server, in response to the receiving of the first URL, a first client device from the group, based on the respective physical geographical location of the first client device;

receiving, by the first server from the selected first client device over the Internet, a first content;

sending, by the first server to the first device over the Internet, the first content;

receiving, by the first server from the first device over the Internet, a second URL;

selecting, by the first server, in response to the receiving of the second URL, a second client device from the group, based on the respective physical geographical location of the second client device;

receiving, by the first server from the selected second client device over the Internet, a second content; and

sending, by the first server to the first device over the Internet, the second content,

wherein the first server is not a client device.

2. The method according to claim 1 , further for use with a first web server that stores the first content that is identified by the first URL, and for use with a second web server that stores the second content that is identified by the second URL, wherein the method is for anonymously fetching, by the first device, the first and second contents respectively from the first and second web servers.

3. The method according to claim 1 , further comprising sending, by the first server to the selected first client device over the Internet, the first URL, in response to the selecting of the first client device, and wherein the receiving of the first content from the selected first client device is in response to the sending of the first URL.

4. The method according to claim 1 , further comprising sending, by the first server to the selected second client device over the Internet, the second URL, in response to the selecting of the second client device, and wherein the receiving of the second content from the selected second client device is in response to the sending of the second URL.

5. The method according to claim 1 , wherein the first and second contents include, consist of, or comprise, a part of, or whole of, respective first and second web-pages.

6. The method according to claim 1 , further comprising sending, by the first server to the first device over the Internet, Internet Protocol (IP) addresses of the selected first and second client devices.

7. The method according to claim 1 , wherein the first device comprises a consumer computer device.

8. The method according to claim 1 , wherein each of the client devices in the group comprises a respective consumer computer device.

9. The method according to claim 1 , wherein the selecting comprises randomly selecting, out of the client devices in the group associated with the same physical geographical location of the first or second client device.

10. The method according to claim 1 , wherein the selecting comprises selecting, out of the client devices in the group that are associated with a physical geographical location, based on attributes or characteristics of the client devices in the group.

11. The method according to claim 1 , further comprising receiving, by the first server, a respective physical geographical location from each of the client devices in the group.

12. The method according to claim 1 , further comprising associating, by the first server, a respective physical geographical location to each of the client devices in the group.

13. The method according to claim 12 , wherein the associating is based on a geolocation.

14. The method according to claim 13 , wherein the geolocation is based on W3C Geolocation API.

15. The method according to claim 1 , wherein the selecting of the first or second client device is further based on past activities of the selected devices.

16. The method according to claim 15 , wherein the selecting further comprises selecting based on timing of an event.

17. The method according to claim 15 , wherein the selecting further comprises selecting based on timing of a last communication with the devices in the group.

18. The method according to claim 1 , wherein the first server is further storing, operating, or using, a server operating system.

19. The method according to claim 18 , wherein the server operating system consists or, comprises of, or is based on, Microsoft Windows Server®, Linux, UNIX, or any combination thereof.

20. The method according to claim 18 , wherein the server operating system consists or, comprises of, or is based on, Microsoft Windows Server® 2003 R2, 2008, 2008 R2, 2012, or 2012 R2 variant, Linux™ or GNU/Linux based Debian GNU/Linux, Debian GNU/kFreeBSD, Debian GNU/Hurd, Fedora™, Gentoo™, Linspire™, Mandriva, Red Hat® Linux, SuSE, and Ubuntu®, UNIX® variant Solaris™, AIX®, Mac™ OS X, FreeBSD®, OpenBSD, NetBSD®, or any combination thereof.

21. The method according to claim 1 , wherein the first content includes, consists of, or comprises, a part of, or whole of, a computer file, a text, audio data, voice data, multimedia data, video data, an image, music data, a computer program, or any combination thereof.

22. The method according to claim 1 , further comprising receiving, by the first server, a respective message over the Internet from each of the client devices in the group, and wherein the storing of a respective IP address is in response to the receiving of the messages.

23. The method according to claim 1 , further comprising receiving, by the first server from each of the client devices in the group, a message over the Internet; and storing, by the first server, a respective IP address of each of the client devices in the group.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 1, 2022
From: SHRIBMAN, DERRY; VILENSKI, OFER
To: LUMINATI NETWORKS LTD.
Reel/Frame 061945/0204 →
CHANGE OF NAME Recorded Dec 1, 2022
From: LUMINATI NETWORKS LTD.
To: BRIGHT DATA LTD.
Reel/Frame 062038/0808 →
Continuity (8)
Continuation 17518594 · Nov 4, 2021
Continuation 17146625 · Jan 12, 2021
Continuation 16292364 · Mar 5, 2019
Continuation 15663762 · Jul 30, 2017
Continuation 14930894 · Nov 3, 2015
Division 14468836 · Aug 26, 2014
Provisional Application 61870815 · Aug 28, 2013
Related Publication 20230101272A1 · Mar 30, 2023