Implementing a storage system using a personal user device and a data distribution device
First Claim
1. One or more non-transitory computer readable media comprising instructions which, when executed by one or more hardware processors, cause performance of operations comprising:
- storing, by a personal user device, a set of one or more content items;
responsive to determining that a level of similarity across the set of content items is above a specified threshold;
selecting only a subset of the set of content items for transmission to a data distribution device, wherein the subset of content items includes a first content item;
transmitting, by the personal user device to a data distribution device, the subset of content items;
receiving, by the personal user device from a client device, a request for the first content item;
identifying a set of one or more characteristics associated with one or more of;
the personal user device, the data distribution device, the client device, the request, and the first content item;
based on the set of characteristics, determining whether the request should be served by the personal user device or the data distribution device;
performing one of;
responsive to determining that the request should be served by the personal user device;
transmitting, by the personal user device to the client device, the first content item; and
responsive to determining that the request should be served by the data distribution device;
redirecting, by the personal user device, the client device to the data distribution device for obtaining the first content item.
1 Assignment
0 Petitions
Accused Products
Abstract
A storage system is implemented using a personal user device and a data distribution device. A personal user device stores a particular content item and transmits the particular content item to a data distribution device for storage. A client device transmits a request for the particular content item to the personal user device. The personal user device determines a characteristic associated with the personal user device, the data distribution device, the client device, and/or the particular content item. Based on the characteristic, the personal user device determines whether to serve the particular content item, or to redirect the client device to the data distribution device to obtain the particular content item. If the client device is redirected, then the client device transmits a request for the particular content item to the data distribution device. The data distribution device transmits the particular content item to the client device.
-
Citations
25 Claims
-
1. One or more non-transitory computer readable media comprising instructions which, when executed by one or more hardware processors, cause performance of operations comprising:
-
storing, by a personal user device, a set of one or more content items; responsive to determining that a level of similarity across the set of content items is above a specified threshold; selecting only a subset of the set of content items for transmission to a data distribution device, wherein the subset of content items includes a first content item; transmitting, by the personal user device to a data distribution device, the subset of content items; receiving, by the personal user device from a client device, a request for the first content item; identifying a set of one or more characteristics associated with one or more of;
the personal user device, the data distribution device, the client device, the request, and the first content item;based on the set of characteristics, determining whether the request should be served by the personal user device or the data distribution device; performing one of; responsive to determining that the request should be served by the personal user device;
transmitting, by the personal user device to the client device, the first content item; andresponsive to determining that the request should be served by the data distribution device;
redirecting, by the personal user device, the client device to the data distribution device for obtaining the first content item. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. One or more non-transitory computer readable media comprising instructions which, when executed by one or more hardware processors, cause performance of operations comprising:
-
storing, by a data distribution device, a content item received from a personal user device; subsequent to authenticating, by the data distribution device, a client device requesting the content item;
establishing a first connection between the data distribution device and the client device;providing, by the data distribution device via the first connection, information to the client device and the personal user device to establish a direct connection that does not include the data distribution device; serving, by the data distribution device via the first connection, at least a first portion of the content item to the client device while the client device and the personal device establish the direct connection that does not involve the data distribution device; responsive to the client device using the first connection with the data distribution device, from a group comprising (a) the first connection with the data distribution device and (b) the direct connection with the personal user device, for obtaining at least a second portion of the content item; serving, by the data distribution device via the first connection, the second portion of the content item to the client device. - View Dependent Claims (17)
-
-
18. One or more non-transitory computer readable media comprising instructions which, when executed by one or more hardware processors, cause performance of operations comprising:
-
storing, by a personal user device, a set of one or more data files; transmitting, by the personal user device to a data distribution device, at least a data file of the set of data files, wherein the data file comprises a first content item and a second content item; receiving, by the personal user device from a client device, a request for the data file; identifying a first set of one or more characteristics associated with one or more of;
the personal user device, the data distribution device, the client device, the request, the data file, the first content item, and the second content item;based on the first set of characteristics, determining whether the first content item should be returned by the personal user device or the data distribution device; responsive to determining that the first content item should be returned by the personal user device;
transmitting, by the personal user device to the client device, the first content item;identifying a second set of one or more characteristics associated with one or more of;
the personal user device, the data distribution device, the client device, the request, the data file, the first content item, and the second content item;based on the second set of characteristics, determining whether the second content item should be returned by the personal user device or the data distribution device; responsive to determining that the second content item should be returned by the data distribution device;
redirecting, by the personal user device, the client device to the data distribution device for obtaining the second content item.
-
-
19. One or more non-transitory computer readable media comprising instructions which, when executed by one or more hardware processors, cause performance of operations comprising:
-
transmitting, by a client device to a personal user device, a first request to obtain a first content item, wherein the personal user device stores the first content item; receiving, by the client device from the personal user device, a first message indicating that at least a first portion of the first content item may be obtained from a data distribution device; selecting, by the client device, the data distribution device for obtaining at least the first portion of the first content item; transmitting, by the client device to the data distribution device, a second request for at least the first portion of the first content item; and receiving, by the client device from the data distribution device, at least the first portion of the first content item. - View Dependent Claims (20, 21, 22, 23, 24)
-
-
25. One or more non-transitory computer readable media comprising instructions which, when executed by one or more hardware processors, cause performance of operations comprising:
-
storing, by a personal user device in a private cloud infrastructure, a set of one or more content items; transmitting, by the personal user device to a data distribution device, at least a first content item and a second content item of the set of content items; receiving, by the personal user device from a client device, a first request for the first content item; wherein the first request for the first content item is associated with an indicator indicating that the client device selects the data distribution device as a source for the first content item; identifying a first set of one or more characteristics associated with one or more of;
the personal user device, the data distribution device, the client device, the first request, and the first content item;based on the first set of characteristics;
determining, by the personal user device, whether the first request should be served by the personal user device or the data distribution device;based at least on the indicator;
determining that the first request should be served by the data distribution device;responsive to determining that the first request should be served by the data distribution device; redirecting, by the personal user device, the client device to the data distribution device for obtaining the first content item; receiving, by the personal user device from the client device, a second request for the second content item; identifying a second set of one or more characteristics associated with one or more of;
the personal user device, the data distribution device, the client device, the second request, and the second content item;based on the second set of characteristics;
determining, by the personal user device, whether the second request should be served by the personal user device or the data distribution device;responsive to determining that the request should be served by the personal user device; transmitting, by the personal user device to the client device, the second content item.
-
Specification