IP Library Granted Patent US 12,278,878
Granted Patent B2
US 12,278,878 · App. 17/717,086 · Granted Apr 15, 2025

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/60G06Q40/08G06Q50/16H04L43/0864H04L63/029H04L63/0407H04L65/612H04L67/02H04L67/06H04L67/141H04L67/567H04L67/59G05B2219/2642G08B21/043H04L12/2803H04L67/52H04N21/4622H04W4/029
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 12,278,878
App. No.
17/717,086
Granted
Apr 15, 2025
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 (100)

1. A method for fetching by a fourth device over the Internet, using first, second, and third devices, a content that is stored in a web server and is constructed of at least first, second, and third content parts, the first content part is identified by a first Uniform Resource Locator (URL), the second content part is identified by a second URL, and the third content part is identified by a third URL, the method comprising:

measuring, by the first device, a first utilization level of a first resource;

sending, by the first device over the Internet, a first message that is based on, or comprises, the measured first utilization level;

receiving, by the first device from the fourth device over the Internet, a first HyperText Transfer Protocol (HTTP) request that includes the first URL;

sending, by the first device to the web server over the Internet, the first URL, in response to the receiving of the first HTTP request;

receiving, by the first device from the web server over the Internet, the first content part, in response to the sending of the first URL;

sending, by the first device to the fourth device over the Internet, the received first content part;

measuring, by the second device, a second utilization level of a second resource;

sending, by the second device over the Internet, a second message that is based on, or comprises, the measured second utilization level;

receiving, by the second device from the fourth device over the Internet, a second HTTP request that includes the second URL;

sending, by the second device to the web server over the Internet, the second URL, in response to the receiving of the second HTTP request;

receiving, by the second device from the web server over the Internet, the second content part, in response to the sending of the second URL;

sending, by the second device to the fourth device over the Internet, the received second content part;

measuring, by the third device, a third utilization level of a third resource;

sending, by the third device over the Internet, a third message that is based on, or comprises, the measured third utilization level;

receiving, by the third device from the fourth device over the Internet, a third HTTP request that includes the third URL;

sending, by the third device to the web server over the Internet, the third URL, in response to the receiving of the third HTTP request;

receiving, by the third device from the web server over the Internet, the third content part, in response to the sending of the third URL; and

sending, by the third device to the fourth device over the Internet, the received third content part; and

reconstructing, by the fourth device, at least part of the content from the received first, second, and third content parts.

2. The method according to claim 1 , wherein each of the sendings by the first, second, and third devices to the web server uses the respective device address as a source address, so that the web server is prevented from being aware of the fourth device.

3. The method according to claim 1 , wherein each of the sendings by the first, second, and third devices of the respective message comprises sending to the fourth device.

4. The method according to claim 1 , wherein the first content part comprises, consists of, or is part of, a first web-page, wherein the second content part comprises, consists of, or is part of, a second web-page, and wherein the third content part comprises, consists of, or is part of, a third web-page.

5. The method according to claim 4 , wherein the content comprises, consists of, or is part of a web-site that includes the first, second, and third web-pages.

6. The method according to claim 1 , wherein the content comprises at least first, second, and third objects, and wherein the first content part comprises, or consists of, the first object, wherein the second content part comprises, or consists of, the second object, and wherein the third content part comprises, or consists of, the third object.

7. The method according to claim 6 , wherein the content comprises, consists of, or is part of, a web-page.

8. The method according to claim 1 , wherein at least one of the first, second, and third content part includes, consists of, or comprises, a part or whole of a file, text data, a number, audio data, voice data, multimedia data, video data, an image, music data, or a computer program.

9. The method according to claim 1 , wherein the web server is a web server that uses HyperText Transfer Protocol (HTTP) and responds to HTTP requests via the Internet.

10. The method according to claim 1 , wherein the communication of the first, second, third, or fourth device is based on, or using, a HTTP persistent connection.

11. The method according to claim 1 , wherein the first device is addressed in the Internet using a first Internet Protocol (IP) address, wherein the second device is addressed in the Internet using a second IP address, and wherein the third device is addressed in the Internet using a third IP address.

12. The method according to claim 11 , for use with a list of that includes at least the first, second, and third IP addresses, wherein the method further comprising:

selecting the first IP address from the list;

selecting the second IP address from the list; and

selecting the third IP address from the list.

13. The method according to claim 12 , wherein each of the IP addresses in the list is in IPv4 or IPv6 form, and wherein the list is stored in the fourth device.

14. The method according to claim 13 , further comprising:

sending, by the fourth device to the first device over the Internet, the first HTTP request, in response to the selecting of the first IP address;

sending, by the fourth device to the second device over the Internet, the second HTTP request, in response to the selecting of the third IP address; and

sending, by the fourth device to the third device over the Internet, the third HTTP request, in response to the selecting of the third IP address.

15. The method according to claim 12 , wherein the selecting of the first, second, and third IP addresses comprises randomly selecting of the respective IP address.

16. The method according to claim 12 , wherein the selecting of the first, second, or third IP address from the list comprises selecting based on an attribute or a characteristic of the selected IP address or the device that is addressed by the selected IP address.

17. The method according to claim 12 , wherein the selecting of the first, second, or third IP address from the list comprises selecting based on a physical geographical location associated with the selected IP address or with the device that is addressed by the selected IP address.

18. The method according to claim 17 , wherein the selecting of the first, second, or third IP address from the list comprises selecting based on a physical geographical proximity to the web server or to the fourth device.

19. The method according to claim 17 , wherein the selecting of the first, second, or third IP address from the list comprises selecting based on a past activities or on a timing of an event.

20. The method according to claim 1 , wherein the communication over the Internet with the first, second, third, or fourth device is based on, or according to, TCP/IP protocol or connection.

21. The method according to claim 1 , further comprising establishing a connection over the Internet with the first, second, third, or fourth device using TCP, and wherein the connection is established by performing ‘Active OPEN’ or ‘Passive OPEN’.

22. The method according to claim 1 , wherein at least one of the first, second, third, or fourth device comprises, or consists of, a portable or mobile device.

23. The method according to claim 22 , wherein the portable or mobile device stores, operates, or uses, a mobile operating system.

24. The method according to claim 23 , wherein the mobile operating system is one out of Android version 2.2 (Froyo), Android version 2.3 (Gingerbread), Android version 4.0 (Ice Cream Sandwich), Android Version 4.2 (Jelly Bean), Android version 4.4 (KitKat), Apple iOS version 3, Apple iOS version 4, Apple iOS version 5, Apple iOS version 6, Apple iOS version 7, Microsoft Windows® Phone version 7, Microsoft Windows® Phone version 8, Microsoft Windows® Phone version 9, and Blackberry® operating system.

25. The method according to claim 22 , wherein the portable or mobile device comprises, or consists of, a smartphone.

26. The method according to claim 22 , wherein the fourth device comprises, or consists of, a smartphone.

27. The method according to claim 1 , wherein at least one of the first, second, and third devices comprises, or consists of, a respective smartphone.

28. The method according to claim 1 , wherein at least two of the content parts are of the same size.

29. The method according to claim 1 , wherein a partitioning of the content into the content parts is sequential in the content.

30. The method according to claim 1 , wherein a partitioning of the content into the content parts is non-sequential in the content.

31. The method according to claim 1 , wherein the content further comprises a fourth content part that is identified by a fourth URL, the method further comprising:

receiving, by the first device from the fourth device over the Internet, a fourth HTTP request that includes the fourth URL;

sending, by the first device to the web server over the Internet, the fourth URL, in response to the receiving of the fourth HTTP request;

receiving, by the fourth device from the web server over the Internet, the fourth content part, in response to the sending of the fourth URL; and

sending, by the first device to the fourth device over the Internet, the received fourth content part.

32. The method according to claim 1 , wherein the fourth device comprises, or consists of, a server device.

33. The method according to claim 32 , further comprising storing, operating, or using, by the server device, a server operating system.

34. The method according to claim 33 , wherein the server operating system consists or, comprises of, or based on, one out of Microsoft Windows Server®, Linux, or UNIX.

35. The method according to claim 33 , wherein the server operating system consists or, comprises of, or based on, one out of 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®, MacIM OS X, FreeBSD®, OpenBSD, and NetBSD®.

36. The method according to claim 1 , wherein at least one of the first, second, third, and fourth devices comprises, or consists of, a client device.

37. The method according to claim 36 , wherein each of the first, second, third, and fourth devices comprises, or consists of, a respective client device.

38. The method according to claim 36 , further comprising storing, operating, or using, by the client device, a client operating system.

39. The method according to claim 38 , wherein the client operating system consists or, comprises of, or is based on, one out of Microsoft Windows 7, Microsoft Windows XP, Microsoft Windows 8, Microsoft Windows 8.1, Linux, and Google Chrome OS.

40. The method according to claim 36 , further comprising executing, by the client device, an application.

41. The method according to claim 40 , wherein the application consists of, or comprises, a web browser.

42. The method according to claim 41 , wherein the web browser consists of, comprises of, or is based on, Microsoft Internet Explorer, Google Chrome, Opera™, Mozilla Firefox®, Safari, Opera Mini™, or Android web browser.

43. The method according to claim 1 , further comprising selecting the first device from a group of devices.

44. The method according to claim 43 , wherein the selecting of the first device is based on, or uses, the measured first utilization level.

45. The method according to claim 44 , wherein the measuring of the utilization level comprises periodically measuring of the utilization level.

46. The method according to claim 45 , wherein the sending of the first message comprises periodically sending of a respective first message.

47. The method according to claim 46 , wherein the sending of the respective first message is performed every 10, 20, 30, 50, or 100 milliseconds; every 1, 2, 3, 5, or 10 seconds; or every 1, 2, 3, 5, or 10 minutes.

48. The method according to claim 1 , wherein the measuring of the utilization level comprises continuously measuring of the utilization level.

49. The method according to claim 1 , for use with a criterion associated with the utilization level of the resource, the method further comprising determining whether the measured first utilization level satisfies the criterion.

50. The method according to claim 49 , wherein the sending of the first message is in response to determining that the measured first utilization level satisfies the criterion.

51. The method according to claim 49 , for use with a threshold level, and wherein the criterion is satisfied when the measured utilization level is above or below the threshold level.

52. The method according to claim 1 , for use with a threshold level, wherein the sending of the first message is in response to the measured first utilization level crossing the threshold level.

53. The method according to claim 1 , wherein the first resource comprises, or consists of, a hardware component or using of the hardware component, in the first device.

54. The method according to claim 53 , wherein the hardware component comprises, or consists of, a processor or Central Processing Unit (CPU) operation in the first device.

55. The method according to claim 54 , wherein the first resource utilization is based on, or comprises, the processor or CPU time of executing one or more threads or processes, wherein the resource utilization is based on, or comprises, the processor or CPU idling time, or wherein the resource utilization is based on, or comprises, the processor or CPU executing a system idle process.

56. The method according to claim 53 , wherein the hardware component comprises, or consists of, a memory in the respective device, and wherein the first resource utilization is based on, or comprises, an amount of used or unused location or space of the memory.

57. The method according to claim 1 , wherein the first resource comprises, or consists of, input or output capability.

58. The method according to claim 57 , wherein the first resource comprises, or consists of, communication bandwidth of communication with another device over the Internet.

59. The method according to claim 58 , wherein the first resource comprises, or consists of, a bandwidth of communication with the web server over the Internet, or wherein the first resource utilization is based on, or according to, IETF RFC 2914.

60. The method according to claim 1 , wherein at least one of the first, second, and third devices is a vehicular device configured to be in a vehicle.

61. The method according to claim 1 , wherein at least one of the first, second, and third devices comprises, or is part of, a household appliance.

62. The method according to claim 61 , wherein the appliance comprises, consists of, or includes, a major appliance that is an air conditioner, a dishwasher, a clothes dryer, a drying cabinet, a kitchen stove, a water heater, a washing machine, a trash compactor, a microwave oven, or an induction cooker.

63. The method according to claim 61 , wherein the appliance comprises, consists of, or includes, a major appliance that is a freezer or a refrigerator.

64. The method according to claim 61 , wherein the appliance comprises, consists of, or includes, a small appliance that is a television (TV) set.

65. The method according to claim 61 , wherein the appliance comprises, consists of, or includes, a small appliance that is a CD or DVD player, a camcorder, a still camera, a clock, an alarm clock, a video game console, a HiFi or home cinema, or an answering machine.

66. The method according to claim 1 , further comprising periodically sending, by at least one of the first, second, and third devices to a first server, an ‘heartbeat’ message that comprises a status of the respective device, or is in response to the status of the respective device.

67. The method according to claim 66 , wherein the status is based on the respective measured utilization level.

68. The method according to claim 66 , wherein a time period between sent multiple ‘heartbeat’ messages is at least 10 milliseconds, 20 milliseconds, 30 milliseconds, 50 milliseconds, 100 milliseconds, 1 second, 2 seconds, 3 seconds, 5 seconds, 10 seconds, 20 seconds, 30 seconds, 50 seconds, 100 seconds, 1 minute, 2 minutes, 3 minutes, minutes 5, or 10 minutes.

69. The method according to claim 1 , further comprising sending, by at least one of the first, second, and third devices to a first server, a physical geographical location.

70. The method according to claim 69 , wherein the physical geographical location corresponds to the actual physical geographical location of the respective device.

71. The method according to claim 69 , wherein the physical geographical location comprises a respective continent, a country, a state or province, a city, a street, a ZIP code, a longitude, a latitude, or any combination thereof.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 10, 2022
From: SHRIBMAN, DERRY; VILENSKI, OFER
To: LUMINATI NETWORKS LTD.
Reel/Frame 059552/0655 →
CHANGE OF NAME Recorded Apr 10, 2022
From: LUMINATI NETWORKS LTD.
To: BRIGHT DATA LTD.
Reel/Frame 059692/0655 →
Continuity (7)
Continuation 16865366 · May 3, 2020
Continuation 16214476 · Dec 10, 2018
Continuation 15663762 · Jul 30, 2017
Continuation 14930894 · Nov 3, 2015
Division 14468836 · Aug 26, 2014
Provisional Application 61870815 · Aug 28, 2013
Related Publication 20220272174A1 · Aug 25, 2022
References Cited (400)
US 3922494A · Cooper et al. · 1975 [cited by applicant]
US 3962539A · Ehrsam et al. · 1976 [cited by applicant]
US 4347827A · Lo Cascio · 1982 [cited by applicant]
US 4405829A · Rivest et al. · 1983 [cited by applicant]
US 4464650A · Eastman et al. · 1984 [cited by applicant]
US 4558302A · Welch · 1985 [cited by applicant]
US 4814746A · Miller et al. · 1989 [cited by applicant]
US 4855894A · Asahi · 1989 [cited by applicant]
US 4937781A · Lee et al. · 1990 [cited by applicant]
US 5519693A · Galuszka · 1996 [cited by applicant]
US 5577243A · Sherwood et al. · 1996 [cited by applicant]
US 5734829A · Robinson · 1998 [cited by applicant]
US 5758195A · Balmer · 1998 [cited by applicant]
US 5826014A · Coley · 1998 [cited by applicant]
US 5974566A · Ault · 1999 [cited by applicant]
US 6012083A · Savitzky · 2000 [cited by applicant]
US 6012090A · Chung · 2000 [cited by applicant]
US 6061278A · Kato et al. · 2000 [cited by applicant]
US 6085193A · Malkin · 2000 [cited by applicant]
US 6134584A · Chang · 2000 [cited by applicant]
US 6154782A · Kawaguchi · 2000 [cited by applicant]
US 6173330B1 · Guo et al. · 2001 [cited by applicant]
US 6185625B1 · Tso · 2001 [cited by applicant]
US 6236652B1 · Preston et al. · 2001 [cited by applicant]
US 6240444B1 · Fin · 2001 [cited by applicant]
US 6266704B1 · Reed et al. · 2001 [cited by applicant]
US 6311216B1 · Smith · 2001 [cited by applicant]
US 6345303B1 · Knauerhase et al. · 2002 [cited by applicant]
US 6351775B1 · Yu · 2002 [cited by applicant]
US 6356934B1 · Delph · 2002 [cited by applicant]
US 6389422B1 · Doi · 2002 [cited by applicant]
US 6389462B1 · Cohen · 2002 [cited by applicant]
US 6397259B1 · Lincke et al. · 2002 [cited by applicant]
US 6412008B1 · Fields et al. · 2002 [cited by applicant]
US 6421733B1 · Tso · 2002 [cited by applicant]
US 6449640B1 · Haverstock · 2002 [cited by applicant]
US 6466470B1 · Chang · 2002 [cited by applicant]
US 6477581B1 · Carpenter et al. · 2002 [cited by applicant]
US 6484149B1 · Jammes et al. · 2002 [cited by applicant]
US 6513061B1 · Ebata · 2003 [cited by applicant]
US 6519693B1 · Debey · 2003 [cited by applicant]
US 6578066B1 · Logan et al. · 2003 [cited by applicant]
US 6601098B1 · Case et al. · 2003 [cited by applicant]
US 6658463B1 · Dillon et al. · 2003 [cited by applicant]
US 6661799B1 · Molitor · 2003 [cited by applicant]
US 6665715B1 · Houri · 2003 [cited by applicant]
US 6687732B1 · Bector · 2004 [cited by applicant]
US 6701374B2 · Gupta · 2004 [cited by applicant]
US 6785705B1 · Kocherlakota · 2004 [cited by applicant]
US 6792461B1 · Hericourt · 2004 [cited by applicant]
US 6795848B1 · Border et al. · 2004 [cited by applicant]
US 6820133B1 · Grove · 2004 [cited by applicant]
US 6829638B1 · McBrearty · 2004 [cited by applicant]
US 6842463B1 · Drwiega · 2005 [cited by applicant]
US 6868453B1 · Watanabe · 2005 [cited by applicant]
US 6895011B1 · Lassers · 2005 [cited by applicant]
US 6941562B2 · Gao et al. · 2005 [cited by applicant]
US 6961783B1 · Cook · 2005 [cited by applicant]
US 6970913B1 · Albert et al. · 2005 [cited by applicant]
US 7007228B1 · Carro · 2006 [cited by applicant]
US 7010526B2 · Denesuk et al. · 2006 [cited by applicant]
US 7020667B2 · Guest et al. · 2006 [cited by applicant]
US 7047315B1 · Srivastava · 2006 [cited by applicant]
US 7080158B1 · Squire · 2006 [cited by applicant]
US 7009927B2 · Cudd · 2006 [cited by applicant]
US 7120666B2 · McCanne et al. · 2006 [cited by applicant]
US 7027418B2 · Gan et al. · 2006 [cited by applicant]
US 7139276B1 · Sitaraman et al. · 2006 [cited by applicant]
US 7139557B2 · Tang et al. · 2006 [cited by applicant]
US 7139579B2 · Hatano · 2006 [cited by applicant]
US 7149797B1 · Weller et al. · 2006 [cited by applicant]
US 7159234B1 · Murphy et al. · 2007 [cited by applicant]
US 7203741B2 · Marco et al. · 2007 [cited by applicant]
US 7234059B1 · Beaver · 2007 [cited by applicant]
US 7240100B1 · Wein et al. · 2007 [cited by applicant]
US 7246272B2 · Cabezas · 2007 [cited by applicant]
US 7254636B1 · O'Toole, Jr. et al. · 2007 [cited by applicant]
US 7257634B2 · Colby et al. · 2007 [cited by applicant]
US 7353279B2 · Durvasula et al. · 2008 [cited by applicant]
US 7381366B2 · Carter · 2008 [cited by applicant]
US 7401115B1 · Arsenault · 2008 [cited by applicant]
US 7464123B2 · Croker · 2008 [cited by applicant]
US 7543018B2 · Appelman · 2009 [cited by applicant]
US 7558854B2 · Nakahara et al. · 2009 [cited by applicant]
US 7558942B1 · Chen et al. · 2009 [cited by applicant]
US 7603710B2 · Harvey et al. · 2009 [cited by applicant]
US 7620703B1 · Shteyn · 2009 [cited by applicant]
US 7639682B2 · Suzuki et al. · 2009 [cited by applicant]
US 7640580B1 · Plotnikov et al. · 2009 [cited by applicant]
US 7664125B1 · Bauer et al. · 2010 [cited by applicant]
US 7673048B1 · O'Toole · 2010 [cited by applicant]
US 7702784B2 · Berstis · 2010 [cited by applicant]
US 7706362B1 · Senthilnathan · 2010 [cited by applicant]
US 7719971B1 · Issa · 2010 [cited by applicant]
US 7742485B2 · Zhang · 2010 [cited by applicant]
US 7751628B1 · Reisman · 2010 [cited by applicant]
US 7761500B1 · Wei et al. · 2010 [cited by applicant]
US 7734777B2 · Raja · 2010 [cited by applicant]
US 7783777B1 · Pabla · 2010 [cited by applicant]
US 7788378B2 · Rao · 2010 [cited by applicant]
US 7801824B1 · Bryar · 2010 [cited by applicant]
US 7805517B2 · Shim · 2010 [cited by applicant]
US 7818430B2 · Zuckerman · 2010 [cited by applicant]
US 7831720B1 · Noureddine · 2010 [cited by applicant]
US 7840660B1 · Johnston et al. · 2010 [cited by applicant]
US 7853472B2 · Al-Abdulqader · 2010 [cited by applicant]
US 7860988B2 · Aoki · 2010 [cited by applicant]
US 7865585B2 · Samuels et al. · 2011 [cited by applicant]
US 7877511B1 · Berger · 2011 [cited by applicant]
US 7886050B2 · Raja et al. · 2011 [cited by applicant]
US 7890547B2 · Hotti · 2011 [cited by applicant]
US 7890624B2 · Bivens · 2011 [cited by applicant]
US 7894431B2 · Goring · 2011 [cited by applicant]
US 7917755B1 · Giliyaru · 2011 [cited by applicant]
US 7929429B2 · Bornstein · 2011 [cited by applicant]
US 7929535B2 · Chen et al. · 2011 [cited by applicant]
US 7970835B2 · St. Jacques · 2011 [cited by applicant]
US 7984110B1 · Raman · 2011 [cited by applicant]
US 8014292B1 · Breau et al. · 2011 [cited by applicant]
US 7941525B1 · Yavilevich · 2011 [cited by applicant]
US 8041784B1 · Amidon · 2011 [cited by applicant]
US 8078601B1 · Egnor et al. · 2011 [cited by applicant]
US 8108245B1 · Hosea et al. · 2012 [cited by applicant]
US 8108554B1 · Masters · 2012 [cited by applicant]
US 8135912B2 · Shribman et al. · 2012 [cited by applicant]
US 8144611B2 · Agarwal · 2012 [cited by applicant]
US 8156275B2 · de Cesare · 2012 [cited by applicant]
US 8156441B1 · Bihari et al. · 2012 [cited by applicant]
US 8171101B2 · Gladwin et al. · 2012 [cited by applicant]
US 8190593B1 · Dean · 2012 [cited by applicant]
US 8234370B2 · Hammer et al. · 2012 [cited by applicant]
US 8285808B1 · Joel et al. · 2012 [cited by applicant]
US 8302161B2 · Burch et al. · 2012 [cited by applicant]
US 8306022B1 · Cranor · 2012 [cited by applicant]
US 8307089B1 · Rothschild · 2012 [cited by applicant]
US 8312075B1 · Makinson et al. · 2012 [cited by applicant]
US 8347405B2 · Backhouse · 2013 [cited by applicant]
US 8375434B2 · Cottrell · 2013 [cited by applicant]
US 8452901B1 · Sandstrom et al. · 2013 [cited by applicant]
US 8453227B2 · Aiello · 2013 [cited by applicant]
US 8458786B1 · Kailash · 2013 [cited by applicant]
US 8464350B2 · Kanevsky · 2013 [cited by applicant]
US 8479251B2 · Feinleib et al. · 2013 [cited by applicant]
US 8490059B2 · Huang et al. · 2013 [cited by applicant]
US 8499059B2 · Stoyanov · 2013 [cited by applicant]
US 8514812B2 · Tang et al. · 2013 [cited by applicant]
US 8516084B1 · Grieve · 2013 [cited by applicant]
US 8527631B1 · Liang · 2013 [cited by applicant]
US 8527635B2 · Jeon et al. · 2013 [cited by applicant]
US 8527639B1 · Liskov et al. · 2013 [cited by applicant]
US 8533628B2 · Rohrabaugh · 2013 [cited by applicant]
US 8543721B2 · White · 2013 [cited by examiner]
US 8560604B2 · Shribman et al. · 2013 [cited by applicant]
US 8566452B1 · Goodwin, III et al. · 2013 [cited by applicant]
US 8577724B1 · Gandhi · 2013 [cited by applicant]
US 8595786B2 · Choi · 2013 [cited by applicant]
US 8612641B1 · Bozarth et al. · 2013 [cited by applicant]
US 8627422B2 · Hawkes · 2014 [cited by applicant]
US 8639630B2 · Fomenko et al. · 2014 [cited by applicant]
US 8639748B2 · Kazerani et al. · 2014 [cited by applicant]
US 8655838B2 · Wright · 2014 [cited by applicant]
US 8655985B2 · De · 2014 [cited by applicant]
US 8719430B2 · Van Ackere · 2014 [cited by applicant]
US 8719505B2 · Shribman et al. · 2014 [cited by applicant]
US 8769035B2 · Resch et al. · 2014 [cited by applicant]
US 8793347B2 · Chow et al. · 2014 [cited by applicant]
US 8832179B2 · Owen et al. · 2014 [cited by applicant]
US 8832260B2 · Raja et al. · 2014 [cited by applicant]
US 8838811B2 · Chen · 2014 [cited by applicant]
US 8874594B2 · Want · 2014 [cited by examiner]
US 8671221B2 · Shribman et al. · 2014 [cited by applicant]
US 8935418B2 · Knouse et al. · 2015 [cited by applicant]
US 8935798B1 · Smith · 2015 [cited by applicant]
US 9201808B2 · Shribman et al. · 2015 [cited by applicant]
US 8972602B2 · Mithyantha · 2015 [cited by applicant]
US 8990357B2 · Graham-Cumming · 2015 [cited by applicant]
US 8996856B2 · Amit · 2015 [cited by applicant]
US 9015335B1 · Gigliotti · 2015 [cited by applicant]
US 9049247B2 · Holloway · 2015 [cited by applicant]
US 9059938B1 · Strand · 2015 [cited by applicant]
US 9060031B1 · Taylor et al. · 2015 [cited by applicant]
US 9071668B2 · Brueck et al. · 2015 [cited by applicant]
US 9100320B2 · Hsy · 2015 [cited by applicant]
US 9122554B2 · Callaghan · 2015 [cited by applicant]
US 9154557B2 · Lev-Ran · 2015 [cited by applicant]
US 9177157B2 · Binder · 2015 [cited by applicant]
US 9210094B1 · Warren et al. · 2015 [cited by applicant]
US 9237210B2 · Liu · 2016 [cited by applicant]
US 9253164B2 · Gouge · 2016 [cited by applicant]
US 9313100B1 · Jenkins · 2016 [cited by applicant]
US 9374244B1 · Reed · 2016 [cited by applicant]
US 9378473B2 · Wolfe · 2016 [cited by applicant]
US 9380028B2 · Rizzo · 2016 [cited by applicant]
US 9418243B2 · Bauer · 2016 [cited by applicant]
US 9380523B1 · Mijar · 2016 [cited by applicant]
US 9438564B1 · Weng et al. · 2016 [cited by applicant]
US 9444903B2 · Nuaimi · 2016 [cited by applicant]
US 9503540B2 · Athas et al. · 2016 [cited by applicant]
US 9529911B2 · Richard et al. · 2016 [cited by applicant]
US 9584529B2 · Su · 2017 [cited by applicant]
US 9634994B2 · Prince · 2017 [cited by applicant]
US 9654581B2 · Pollack et al. · 2017 [cited by applicant]
US 9660895B1 · Bennett · 2017 [cited by applicant]
US 9673996B1 · Upadhyay et al. · 2017 [cited by applicant]
US 9705959B1 · Strand · 2017 [cited by applicant]
US 9742866B2 · Shribman · 2017 [cited by applicant]
US 9769121B2 · Joy et al. · 2017 [cited by applicant]
US 9838497B2 · Lawrence · 2017 [cited by applicant]
US 9866655B2 · Steiner et al. · 2018 [cited by applicant]
US 9880881B1 · Perez et al. · 2018 [cited by applicant]
US 9979674B1 · Kumar · 2018 [cited by applicant]
US 9990295B2 · Shribman et al. · 2018 [cited by applicant]
US 9995586B2 · Geelen · 2018 [cited by applicant]
US 10069852B2 · Turgeman et al. · 2018 [cited by applicant]
US 10104165B1 · Killian · 2018 [cited by applicant]
US 10110606B2 · Mizhar · 2018 [cited by applicant]
US 10148735B1 · Kolam · 2018 [cited by applicant]
US 10182466B2 · Nirantar · 2019 [cited by applicant]
US 10277711B2 · Shribman · 2019 [cited by applicant]
US 10361911B2 · Brandwine · 2019 [cited by applicant]
US 10375192B1 · Lepeska · 2019 [cited by applicant]
US 10404791B2 · Puri · 2019 [cited by applicant]
US 10410244B2 · Toval · 2019 [cited by applicant]
US 10469614B2 · Shribman · 2019 [cited by examiner]
US 10484337B2 · Subbarayan · 2019 [cited by applicant]
US 10484510B2 · Shribman · 2019 [cited by applicant]
US 10511630B1 · Weiss et al. · 2019 [cited by applicant]
US 10560509B2 · Lo · 2020 [cited by applicant]
US 10594660B2 · Smith · 2020 [cited by applicant]
US 10601948B1 · Juravicius · 2020 [cited by applicant]
US 10601984B2 · Olligschlaeger · 2020 [cited by applicant]
US 10630771B1 · Garza et al. · 2020 [cited by applicant]
US 10637956B1 · Juravicius · 2020 [cited by applicant]
US 10642738B1 · Parakh et al. · 2020 [cited by applicant]
US 10645654B1 · Backholm · 2020 [cited by applicant]
US 10650166B1 · Sundberg · 2020 [cited by applicant]
US 10652357B2 · Shribman et al. · 2020 [cited by applicant]
US 10735322B2 · Alstad et al. · 2020 [cited by applicant]
US 10743051B1 · Reed · 2020 [cited by applicant]
US 10749893B1 · Dahlberg · 2020 [cited by applicant]
US 10771524B1 · Long · 2020 [cited by applicant]
US 10798209B1 · Juravicius et al. · 2020 [cited by applicant]
US 10805181B2 · Boutros et al. · 2020 [cited by applicant]
US 10887313B2 · Mitevski · 2021 [cited by applicant]
US 10972434B2 · Kupisiewicz et al. · 2021 [cited by applicant]
US 11140235B1 · Vilcinskas et al. · 2021 [cited by applicant]
US 11258872B1 · Gogel · 2022 [cited by applicant]
US 11424946B2 · Shribman et al. · 2022 [cited by applicant]
US 11469992B2 · Gerstel · 2022 [cited by applicant]
US 11574536B2 · Saurin et al. · 2023 [cited by applicant]
US 11593446B2 · Shribman et al. · 2023 [cited by applicant]
US 11614893B2 · Kannan et al. · 2023 [cited by applicant]
US 11635877B2 · Lopez et al. · 2023 [cited by applicant]
US 11658876B2 · Hooda et al. · 2023 [cited by applicant]
US 11677853B2 · Acharya et al. · 2023 [cited by applicant]
US 11757961B2 · Shribman et al. · 2023 [cited by applicant]
US 11818096B2 · Jain et al. · 2023 [cited by applicant]
US 11831532B2 · Nakamura et al. · 2023 [cited by applicant]
US 20010011312A1 · Chu · 2001 [cited by applicant]
US 20010033583A1 · Rabenko et al. · 2001 [cited by applicant]
US 20010054020A1 · Barth · 2001 [cited by applicant]
US 20020007413A1 · Garcia-Luna-Aceves et al. · 2002 [cited by applicant]
US 20020026517A1 · Watson · 2002 [cited by applicant]
US 20020052947A1 · Duimovich et al. · 2002 [cited by applicant]
US 20020055956A1 · Krasnoiarov · 2002 [cited by examiner]
US 20020055966A1 · Border et al. · 2002 [cited by applicant]
US 20020059371A1 · Jamail · 2002 [cited by applicant]
US 20020059429A1 · Carpenter · 2002 [cited by applicant]
US 20020065930A1 · Rhodes · 2002 [cited by applicant]
US 20020069241A1 · Narlikar et al. · 2002 [cited by applicant]
US 20020073075A1 · Dutta · 2002 [cited by applicant]
US 20020073232A1 · Hong · 2002 [cited by applicant]
US 20020078371A1 · Heilig et al. · 2002 [cited by applicant]
US 20020091760A1 · Rozen · 2002 [cited by applicant]
US 20020099781A1 · Scheussler et al. · 2002 [cited by applicant]
US 20020103823A1 · Jackson · 2002 [cited by applicant]
US 20020112036A1 · Bohannon · 2002 [cited by applicant]
US 20020112152A1 · VanHeyningen · 2002 [cited by applicant]
US 20020120874A1 · Shu et al. · 2002 [cited by applicant]
US 20020123895A1 · Potekhin · 2002 [cited by applicant]
US 20020169818A1 · Stewart · 2002 [cited by applicant]
US 20020178217A1 · Nguyen · 2002 [cited by applicant]
US 20020194183A1 · Yoakum · 2002 [cited by applicant]
US 20020194292A1 · King · 2002 [cited by applicant]
US 20030009518A1 · Harrow et al. · 2003 [cited by applicant]
US 20030009583A1 · Chan et al. · 2003 [cited by applicant]
US 20030018705A1 · Chen · 2003 [cited by applicant]
US 20030018834A1 · Eilers · 2003 [cited by applicant]
US 20030061282A1 · Ebata et al. · 2003 [cited by applicant]
US 20030065745A1 · Wolfe et al. · 2003 [cited by applicant]
US 20030074403A1 · Harrow et al. · 2003 [cited by applicant]
US 20030095520A1 · Aalbers · 2003 [cited by applicant]
US 20030097408A1 · Kageyama · 2003 [cited by applicant]
US 20030115364A1 · Shu et al. · 2003 [cited by applicant]
US 20030120805A1 · Couts · 2003 [cited by applicant]
US 20030149720A1 · Goldstein · 2003 [cited by applicant]
US 20030163413A1 · Wiczkowski · 2003 [cited by applicant]
US 20030174648A1 · Wang et al. · 2003 [cited by applicant]
US 20030187925A1 · Inala · 2003 [cited by applicant]
US 20030200307A1 · Raju et al. · 2003 [cited by applicant]
US 20030204602A1 · Hudson et al. · 2003 [cited by applicant]
US 20030210694A1 · Jayaraman et al. · 2003 [cited by applicant]
US 20030212648A1 · Cunningham et al. · 2003 [cited by applicant]
US 20030217144A1 · Fu et al. · 2003 [cited by applicant]
US 20030229682A1 · Day · 2003 [cited by applicant]
US 20030229718A1 · Tock · 2003 [cited by applicant]
US 20030229785A1 · Daseke · 2003 [cited by applicant]
US 20040044731A1 · Chen · 2004 [cited by applicant]
US 20040052257A1 · Abdo · 2004 [cited by applicant]
US 20040054748A1 · Ackaouy · 2004 [cited by applicant]
US 20040054800A1 · Shah · 2004 [cited by applicant]
US 20040068579A1 · Marmigere · 2004 [cited by applicant]
US 20040088646A1 · Yeager et al. · 2004 [cited by applicant]
US 20040111529A1 · Parmar · 2004 [cited by applicant]
US 20040117455A1 · Kaminsky · 2004 [cited by applicant]
US 20040133692A1 · Blanchet · 2004 [cited by applicant]
US 20040136370A1 · Moore et al. · 2004 [cited by applicant]
US 20040143665A1 · Mace · 2004 [cited by applicant]
US 20040153473A1 · Hutchinson · 2004 [cited by applicant]
US 20040162076A1 · Chowdry et al. · 2004 [cited by applicant]
US 20040199623A1 · Houri · 2004 [cited by applicant]
US 20040199629A1 · Bomer · 2004 [cited by applicant]
US 20040212490A1 · Fredericks · 2004 [cited by applicant]
US 20040215717A1 · Seifert · 2004 [cited by applicant]
US 20040221207A1 · Yokota · 2004 [cited by applicant]
US 20040230593A1 · Rudin · 2004 [cited by applicant]
US 20040236962A1 · Wong · 2004 [cited by applicant]
US 20040254907A1 · Crow et al. · 2004 [cited by applicant]
US 20040257761A1 · Park · 2004 [cited by applicant]
US 20040263479A1 · Shkolnikov · 2004 [cited by applicant]
US 20040264506A1 · Furukawa · 2004 [cited by applicant]
US 20050015552A1 · So et al. · 2005 [cited by applicant]
US 20050018645A1 · Mustonen et al. · 2005 [cited by applicant]
US 20050022236A1 · Ito et al. · 2005 [cited by applicant]
US 20050025070A1 · Yamada · 2005 [cited by applicant]
US 20050027782A1 · Jalan · 2005 [cited by applicant]
US 20050027834A1 · Chen et al. · 2005 [cited by applicant]
US 20050050097A1 · Yeh · 2005 [cited by applicant]
US 20050050317A1 · Kramer et al. · 2005 [cited by applicant]
US 20050060542A1 · Risan · 2005 [cited by applicant]
US 20050086328A1 · Landram et al. · 2005 [cited by applicant]
US 20050091399A1 · Candan et al. · 2005 [cited by applicant]
US 20050091540A1 · Dick · 2005 [cited by applicant]
US 20050096753A1 · Arling · 2005 [cited by applicant]
US 20050097217A1 · Val et al. · 2005 [cited by applicant]
US 20050097221A1 · James · 2005 [cited by applicant]
US 20050097441A1 · Herbach · 2005 [cited by applicant]
US 20050108244A1 · Riise · 2005 [cited by applicant]
US 20050108551A1 · Toomey · 2005 [cited by applicant]
US 20050120111A1 · Bailey et al. · 2005 [cited by applicant]
US 20050125412A1 · Glover · 2005 [cited by applicant]
US 20050138426A1 · Styslinger · 2005 [cited by applicant]
US 20050165903A1 · Doan · 2005 [cited by applicant]
US 20050180319A1 · Hutnik · 2005 [cited by applicant]
US 20050190059A1 · Wehrenberg · 2005 [cited by applicant]
US 20050198309A1 · Li et al. · 2005 [cited by applicant]
US 20050228964A1 · Sechrest et al. · 2005 [cited by applicant]
US 20050235044A1 · Tazuma · 2005 [cited by applicant]
US 20050246442A1 · Gutjahr · 2005 [cited by applicant]
US 20050289648A1 · Grobman et al. · 2005 [cited by applicant]
US 20060015545A1 · Ezra · 2006 [cited by applicant]
US 20060026304A1 · Price · 2006 [cited by applicant]
US 20060031407A1 · Dispensa et al. · 2006 [cited by applicant]
US 20060036755A1 · Abdullah · 2006 [cited by applicant]
US 20060039352A1 · Karstens · 2006 [cited by applicant]
US 20060047844A1 · Deng · 2006 [cited by applicant]
US 20060059091A1 · Wang · 2006 [cited by applicant]
US 20060075114A1 · Panasyuk · 2006 [cited by applicant]
US 20060155995A1 · Torvinen · 2006 [cited by applicant]
US 20060184647A1 · Dixit · 2006 [cited by applicant]
US 20060187830A1 · Nam · 2006 [cited by applicant]
US 20060200541A1 · Wikman et al. · 2006 [cited by applicant]
US 20060206586A1 · Ling · 2006 [cited by applicant]
US 20060212542A1 · Fang · 2006 [cited by applicant]
US 20060212584A1 · Yu et al. · 2006 [cited by applicant]
US 20060218285A1 · Talwar et al. · 2006 [cited by applicant]
US 20060224687A1 · Popkin · 2006 [cited by applicant]
US 20060236083A1 · Fritsch · 2006 [cited by applicant]
US 20060242318A1 · Nettle · 2006 [cited by applicant]
US 20060256772A1 · Yarlagadda · 2006 [cited by applicant]
US 20060259607A1 · O'Neal et al. · 2006 [cited by applicant]
US 20060259728A1 · Chandrasekaran et al. · 2006 [cited by applicant]
US 20060271438A1 · Shotland · 2006 [cited by applicant]
US 20060280191A1 · Nishida · 2006 [cited by applicant]
US 20060287738A1 · Rizzi et al. · 2006 [cited by applicant]
US 20060293052A1 · Orler · 2006 [cited by applicant]
US 20070011674A1 · Joo · 2007 [cited by applicant]
US 20070042332A1 · Leem · 2007 [cited by applicant]
US 20070047452A1 · Lohr · 2007 [cited by applicant]
US 20070050522A1 · Grove · 2007 [cited by applicant]
US 20070061440A1 · Sundaram · 2007 [cited by applicant]
US 20070073878A1 · Issa · 2007 [cited by applicant]
US 20070088821A1 · Sankuratripati · 2007 [cited by applicant]
US 20070100839A1 · Kim · 2007 [cited by applicant]
US 20070142036A1 · Wikman · 2007 [cited by applicant]
US 20070156855A1 · Johnson · 2007 [cited by applicant]
US 20070160072A1 · Thalanany et al. · 2007 [cited by applicant]
US 20070171921A1 · Wookey · 2007 [cited by applicant]
US 20070174246A1 · Sigurdsson · 2007 [cited by applicant]
US 20070174442A1 · Sherman et al. · 2007 [cited by applicant]