IP Library Granted Patent US 10,341,436
Granted Patent B2
US 10,341,436 · App. 15/265,734 · Granted Jul 2, 2019

Using cloud storage as temporary cache for backup

Inventors: Danilo O. Tan (Austin, TX); Abu Shaher Sanaullah (Austin, TX); Fernando L. Guerrero (Austin, TX)
Assignee: Dell Products L.P.
H04L67/1097H04L67/2842H04N5/765H04N9/8042H04N21/2181H04N21/21815H04N21/231H04N21/23106H04N21/23116H04N21/2743H04N21/6587H04N21/845
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 10,341,436
App. No.
15/265,734
Granted
Jul 2, 2019
Kind
B2
Abstract

Systems and methods are described to transfer content from a first computing device to a second computing that is not directly accessible from the first computing device. The transfer may be carried out using an application operating on the first computing device that uploads the content to the cloud storage service. The second computing device may operate an application that monitors the cloud storage service for recently uploaded content. When the second computing device detects that content has been uploaded to the cloud storage service, the second computing device may download the content. The second computing device may update a manifest file located on the cloud storage service to indicate that the content was downloaded. Subsequently, the first computing device may access the manifest file and determine that content was downloaded.

Claims (76)

1. A computer-implemented method, comprising:

storing content on a computing device;

determining that a private network is inaccessible to the computing device;

determining that a plurality of cloud storage services, including a first cloud storage service and a second cloud storage service, are accessible by the computing device;

determining, based on an available storage capacity of the cloud storage service, that the content is greater than a size threshold associated with the first cloud storage service;

dividing the content into a plurality of portions, wherein a size of each portion of the plurality of portions is less than the size threshold;

storing a first portion of the content from the computing device to the first cloud storage service, wherein a size of the first portion is less than the size threshold;

storing a remaining portion of the content from the computing device to the second cloud storage service;

accessing a first manifest file stored on the first cloud storage service, and a second manifest file stored on the second cloud storage service;

determining from the first manifest file that the content has been downloaded from the first cloud storage service;

determining from the second manifest file that the content has been downloaded from the second cloud storage service; and

deleting the content from the computing device.

2. The computer-implemented method of claim 1 , further comprising:

modifying the first manifest file stored on the first cloud storage service to indicate that the first portion of the content has been stored to the first cloud storage service; and

modifying the second manifest file stored on the second cloud storage service to indicate that the second portion of the content has been stored to the second cloud storage service.

3. The computer-implemented method of claim 1 , further comprising:

sending additional content to the first cloud storage service;

determining from the first manifest file that the private network has not successfully downloaded the additional content; and

resending the additional content to the first cloud storage service in response to determining that the private network has not successfully downloaded the additional content.

4. The computer-implemented method of claim 1 , further comprising:

encrypting the first portion of the content before storing the first portion of the content.

5. The computer-implemented method of claim 1 , wherein the private network is configured to perform a backup of the content when the private network is accessible to the computing device.

6. The computer-implemented method of claim 1 , further comprising:

determining that the computing device is unable to access a backup system operating in the private network; and

determining from the first manifest file that the content is stored in the private network by the backup system.

7. The computer-implemented method of claim 6 , wherein determining that the computing device is unable to access the private network is based at least in part on an identity of a network access point currently accessible by the computing device.

8. The computer-implemented method of claim 6 , wherein the private network is a local area network (LAN), and the first cloud storage service and second cloud storage service are accessible by the computing device via a wide area network (WAN).

9. The computer-implemented method of claim 1 , wherein:

the computing device comprises a security camera, and

the content comprises one or more video files recorded by the security camera.

10. The computer-implemented method of claim 9 , wherein additional video files are periodically uploaded to the first cloud storage service and deleted from the first cloud storage service.

11. A computing device, comprising:

one or more processors; and

one or more non-transitory computer-readable media to store instructions that are executable by the one or more processors to perform operations comprising:

capturing content using a camera associated with the computing device;

storing the content in the one or more non-transitory computer-readable media;

determining that a private network is inaccessible to the computing device;

determining that a plurality of cloud storage services, including a first cloud storage service and a second could storage service, are accessible to the computing device;

determining, based on an available storage capacity of the cloud storage service, that the content is greater than a size threshold associated with the first cloud storage service;

storing a first portion of the content from the computing device to the first cloud storage service, wherein a size of the first portion is less than the size threshold;

storing a remaining portion of the content from the computing device to the second cloud storage service;

determining that the first portion has been downloaded from the first cloud storage service to the private network;

determining that the remaining portion has been downloaded from the second cloud storage service to the private network; and

deleting the content from the one or more non-transitory computer-readable media.

12. The computing device of claim 11 , further comprising:

modifying a first manifest file stored on the first cloud storage service to indicate that the first portion of the content has been stored to the first cloud storage service; and

modifying a second manifest file stored on the second cloud storage service to indicate that the remaining portion of the content has been stored to the second cloud storage service.

13. The computing device of claim 11 , further comprising:

determining that additional content has been stored in the one or more non-transitory computer-readable media;

storing the additional content to the first cloud storage service;

determining from the first manifest file that the private network was unsuccessful in downloading the additional content from the first cloud storage service; and

storing the additional content to the first cloud storage service.

14. The computing device of claim 11 , further comprising:

encrypting the first portion of the content before storing the first portion of the content.

15. The computing device of claim 11 , wherein the private network is configured to perform a backup of the content when the private network is accessible to the computing device.

16. One or more non-transitory computer-readable media to store instructions that are executable by one or more processors to perform operations comprising:

storing content in the one or more non-transitory computer-readable media of a computing device;

determining that a private network is inaccessible to the computing device;

determining that a plurality of cloud storage services, including a first cloud storage service and a second could storage service, are accessible to the computing device;

determining, based on an available storage capacity of the cloud storage service, that the content is greater than a size threshold associated with the first cloud storage service;

storing a first portion of the content from the computing device to the first cloud storage service, wherein a size of the first portion is less than the size threshold;

storing a remaining portion of the content from the computing device to the second cloud storage service;

determining that the first portion has been downloaded from the first cloud storage service to the private network;

determining that the remaining portion has been downloaded from the second cloud storage service to the private network; and

deleting the content from the one or more non-transitory computer-readable media.

17. The one or more non-transitory computer-readable media of claim 16 , further comprising:

modifying a first manifest file stored on the first cloud storage service to indicate that the first portion of the content has been stored to the first cloud storage service; and

modifying a second manifest file stored on the second cloud storage service to indicate that the remaining portion of the content has been stored to the second cloud storage service.

18. The one or more non-transitory computer-readable media of claim 16 , further comprising:

determining that additional content has been stored in the one or more non-transitory computer-readable media;

storing the additional content to the first cloud storage service;

determining from the first manifest file that the private network was unsuccessful in downloading the additional content from the first cloud storage service; and

storing the additional content to the first cloud storage service.

19. The one or more non-transitory computer-readable media of claim 16 , further comprising:

encrypting the first portion of the content before storing the first portion of the content.

20. The one or more non-transitory computer-readable media of claim 16 , wherein the private network is configured to perform a backup of the content when the private network is accessible to the computing device.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040679/0386) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO WYSE TECHNOLOGY L.L.C.)
Reel/Frame 059803/0666 →
RELEASE OF SECURITY INTEREST AT REEL 040633 FRAME 0799 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL INTERNATIONAL, L.L.C.; DELL PRODUCTS L.P.; WYSE TECHNOLOGY L.L.C.; EMC CORPORATION
Reel/Frame 058297/0427 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 15, 2018
From: DELL SOFTWARE INC.
To: DELL PRODUCTS L.P.
Reel/Frame 044947/0749 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Nov 23, 2016
From: DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; WYSE TECHNOLOGY L.L.C.; EMC CORPORATION
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 040679/0386 →
SECURITY INTEREST Recorded Nov 16, 2016
From: DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; WYSE TECHNOLOGY L.L.C.; EMC CORPORATION
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040633/0799 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 15, 2016
From: TAN, DANILO O.; SANAULLAH, ABU SHAHER; GUERRERO, FERNANDO L.
To: DELL SOFTWARE, INC.
Reel/Frame 039752/0598 →
Continuity (1)
Related Publication 20180077219A1 · Mar 15, 2018