Using mobile devices of a user as an edge cache to stream video files
First Claim
1. A computer-implemented method of using one of a plurality of computing devices of a user as an edge cache of a distributed backup system for streaming a video file of the user, the method comprising:
- receiving, at a data backup application in a first computing device of the computing devices, a request to stream the video file stored in the distributed backup system to the first computing device, the distributed backup system storing at least a subset of a plurality of data files of the user at a cloud storage service, the video file being one of the data files, the distributed backup system storing different subsets of the data files at different computing devices of the user based on a plurality of data backup policies, wherein the video file is stored in a specific computing device of the computing devices based on a data backup policy of the data backup policies;
confirming, by the data backup application, that the cloud storage service contains the video file and is available to stream the video file to the first computing device;
determining, by the data backup application and based on the data backup policy, whether a second computing device of the computing devices contains the video file;
responsive to a determination that the second computing device contains the video file, determining, by the data backup application, whether the second computing device is available as the edge cache of the distributed computing system to stream the video file to the first computing device, the determining including;
determining, by the data backup application, whether the second computing device is in proximity to the first computing device, andresponsive to a determination that the second computing device is in proximity, determining that the second computing device is available as the edge cache of the distributed backup system to stream the video file of the first computing device;
responsive to a determination that the second computing device is available as the edge cache of the distributed backup system, requesting, by the first computing device, the second computing device to stream the video file to the first computing device; and
receiving, by the first computing device, a stream of the video file from the second computing device via short range wireless communication.
4 Assignments
0 Petitions
Accused Products
Abstract
Technology is disclosed for using computing devices (“the devices”) of a user as an edge cache of a distributed backup system to stream video files. In the distributed backup system, the user can store different data files of the user at different devices of the user and/or at a server. For example, the user may store video files at one of the devices of the user (“a first device”) in addition to storing at the server. When the user requests to stream a particular video file to a particular device, the technology streams the video file to the particular device either from the server or from the first device. If the first device is in proximity to the particular device, the video file is streamed from the first device instead of from the server, thereby minimizing the latency involved in streaming the video file from the server.
12 Citations
24 Claims
-
1. A computer-implemented method of using one of a plurality of computing devices of a user as an edge cache of a distributed backup system for streaming a video file of the user, the method comprising:
-
receiving, at a data backup application in a first computing device of the computing devices, a request to stream the video file stored in the distributed backup system to the first computing device, the distributed backup system storing at least a subset of a plurality of data files of the user at a cloud storage service, the video file being one of the data files, the distributed backup system storing different subsets of the data files at different computing devices of the user based on a plurality of data backup policies, wherein the video file is stored in a specific computing device of the computing devices based on a data backup policy of the data backup policies; confirming, by the data backup application, that the cloud storage service contains the video file and is available to stream the video file to the first computing device; determining, by the data backup application and based on the data backup policy, whether a second computing device of the computing devices contains the video file; responsive to a determination that the second computing device contains the video file, determining, by the data backup application, whether the second computing device is available as the edge cache of the distributed computing system to stream the video file to the first computing device, the determining including; determining, by the data backup application, whether the second computing device is in proximity to the first computing device, and responsive to a determination that the second computing device is in proximity, determining that the second computing device is available as the edge cache of the distributed backup system to stream the video file of the first computing device; responsive to a determination that the second computing device is available as the edge cache of the distributed backup system, requesting, by the first computing device, the second computing device to stream the video file to the first computing device; and receiving, by the first computing device, a stream of the video file from the second computing device via short range wireless communication. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computing device for retrieving a video file from a distributed backup system, comprising:
-
a processor; a network component that works in cooperation with the processor to receive a streaming request from a user of the computing device to stream the video file to the computing device, the distributed backup system storing at least a subset of a plurality of data files of the user at a cloud storage service, the distributed backup system storing different subsets of the data files at different computing devices of the user based on a plurality of data backup policies, wherein the video file is stored in the cloud storage service and in one of the computing devices based on a data backup policy of the data backup policies, the network component further configured to confirm that the cloud storage service is available to serve the streaming request; a device identification module to identify, based on the data backup policy, a second computing device of the computing devices that contains the video file; a device proximity determination module to determine whether the second computing device is available as an edge cache of the distributed computing system to stream the video file to the computing device, the determining including; determining whether the second computing device is in proximity to the computing device, and responsive to a determination that the second computing device is in proximity, determining that the second computing device is available as the edge cache of the distributed backup system to stream the video file of the computing device; and an access redirection module to transmit the streaming request to the computing device instead of the cloud storage service, the streaming request requesting the second computing device to stream the video file to the computing device over short range wireless communication. - View Dependent Claims (9, 10, 11)
-
-
12. A computer-implemented method of using one of a plurality of computing devices of a user as an edge cache of a distributed backup system for streaming a video file of the user, the method comprising:
-
receiving, at a server in the distributed backup system, a request to stream the video file stored at the server to a first computing device of the computing devices, the distributed backup system storing at least a subset of a plurality of data files of the user at the server, the distributed backup system storing different subsets of the data files at different computing devices of the user based on a plurality of data backup policies; determining, by the server and based on the data backup policies, whether a second computing device of the computing devices contains the video file; responsive to a determination that the second computing device contains the video file, determining, by the server, whether the second computing device is available as the edge cache of the distributed computing system to stream the video file to the first computing device, the determining including; determining, by the server, whether the second computing device is in proximity to the first computing device, and responsive to a determination that the second computing device is in proximity, determining that the second computing device is available as the edge cache of the distributed backup system to stream the video file of the first computing device; responsive to a determination that the second computing device is available as the edge cache of the distributed backup system, instructing the second computing device to stream the video file to the first computing device; and causing, by the server, the first computing device to receive a stream of the video file from the second computing device via short range wireless communication. - View Dependent Claims (13, 14, 15, 16, 17, 18)
-
-
19. A server for using one of a plurality of computing devices of a user as an edge cache of a distributed backup system for streaming a video file of the user, the server comprising:
-
a processor; a network component that works in cooperation with the processor to receive a request to stream the video file stored at the server to a first computing device of the computing devices, the distributed backup system storing at least a subset of a plurality of data files of the user at the server, the distributed backup system storing different subsets of the data files at different computing devices of the user based on a plurality of data backup policies; a device identification module to determine based on the data backup policies whether a second computing device of the computing devices contains the video file; a device proximity determination module to determine whether the second computing device is available as an edge cache of the distributed computing system to stream the video file to the first computing device, the determining including; determining whether the second computing device is in proximity to the first computing device, and responsive to a determination that the second computing device is in proximity, determining that the second computing device is available as the edge cache of the distributed backup system to stream the video file of the first computing device; and an access redirection module to instruct, responsive to a determination that the second computing device is available as the edge cache of the distributed backup system, the second computing device to stream the video file to the first computing device via short range wireless communication. - View Dependent Claims (20, 21, 22, 23, 24)
-
Specification