IP Library Granted Patent US 11,080,143
Granted Patent B2
US 11,080,143 · App. 16/508,661 · Granted Aug 3, 2021

Systems and processes for data backup and recovery

Inventors: Danilo O. Tan (Austin, TX); Abu Shaher Sanaullah (Austin, TX); Fernando L. Guerrero (Austin, TX)
Assignee: Dell Products L.P.
G06F11/1451G06F11/1464G06F16/113G06F16/184H04L67/1095H04W76/15G06F2201/80
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,080,143
App. No.
16/508,661
Granted
Aug 3, 2021
Kind
B2
Abstract

Systems and processes for backing up data files and recovering data files are described. A computing device connected to a network may backup data files for one or more additional computing devices connected to the network. In some cases, the computing devices connected to the network may be ranked according to a fitness of each respective computing device to backup data files. Additionally, data files of computing devices connected to a network may be prioritized to indicate a level of relative importance to backup each respective data file. Based on the rankings of the computing devices and the prioritization of the data files, particular data files may be associated with a corresponding computing device that is designated to store backup copies of the data files.

Claims (101)

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

establishing, by a first computing device, a connection with a local area network, the local area network comprising a plurality of devices and a second computing device;

providing a plurality of device criteria associated with the first computing device to the plurality of devices and the second computing device that are connected to the local area network, the plurality of device criteria comprising:

a network interface of the first computing device,

a location of the first computing device,

an average amount of time that the first computing device is connected to the local area network during a specified period of time,

an amount of time before the first computing device enters a low power mode, and

a storage capacity of the first computing device;

receiving, by the first computing device, a data file torn the second computing device based on the second computing device determining that the first computing device has a highest rank compared to ranks of the plurality of computing devices, wherein the highest rank and the ranks are determined based on the plurality of device criteria, respectively, associated with the first computing device and the plurality of computing devices, respectively;

storing the data file at a particular location on the first computing device; and

writing information to a manifest, wherein the information identifies the particular location of the data file.

2. The one or more non-transitory computer-readable media of claim 1 , wherein the operations further comprise:

receiving, from an additional computing device, a request to obtain the data file;

accessing, based at least partly on the request, the manifest;

determining, based at least partly on the manifest, the particular location of the data file; and

sending a copy of the data file to the additional computing device.

3. The one or more non-transitory computer-readable media of claim 1 , wherein storing the data file at the particular location on the first computing device comprises:

applying a compression algorithm to the data file to create a compressed data file; and

storing the compressed data file at the particular location on the first computing device.

4. The one or more non-transitory computer-readable media of claim 1 , wherein the plurality of device criteria associated with the first computing device further comprise:

a chassis type of the first computing device; and

one or more features of the memory of the first computing device.

5. The one or more non-transitory computer-readable media of claim 4 , wherein the chassis type comprises one of a server chassis, a storage chassis, a portable chassis, or a handheld chassis.

6. The one or more non-transitory computer-readable media of claim 1 , wherein establishing the connection with the local area network includes accessing a wireless access point of the local area network.

7. The one or more non-transitory computer-readable media of claim 1 , wherein the second computing device determines a corresponding priority of the data file based on one of a plurality of file criteria, the plurality of file criteria comprising:

a file type of the data file;

a file source of the data file;

an amount of memory consumed by the data file;

a usage history of the data file; and

a storage location of the data file.

8. A method comprising:

establishing, by a first computing device, a connection with a local area network, the local area network comprising a plurality of devices and a second computing device;

providing, by the first computing device, a plurality of device criteria associated with the first computing device to the plurality of devices and the second computing device that are connected to the local area network, the plurality of device criteria comprising:

a network interface of the first computing device,

a location of the first computing device,

an average amount of time that the first computing device is connected to the local area network during a specified period of time,

an amount of time before the first computing device enters a low power mode, and

a storage capacity of the first computing device;

receiving, by the first computing device, a data file from the second computing device based on the second computing device determining that the first computing device has a highest rank compared to ranks of the plurality of computing devices, wherein the highest rank and the ranks are determined based on the plurality of device criteria, respectively, associated with the first computing device and the plurality of computing devices, respectively;

storing, by the first computing device, the data file at a particular location on the first computing device; and

adding, by the first computing device, information to a manifest, wherein the manifest identifies the particular location of the data file.

9. The method of claim 8 , further comprising:

receiving, from an additional computing device, a request to obtain the data file;

accessing, based at least partly on the request, the manifest;

determining, based at least partly on the manifest, the particular location of the data file; and

sending a copy of the data file to the additional computing device.

10. The method of claim 8 , wherein storing the data file at the particular location on the first computing device comprises:

applying a compression algorithm to the data file to create a compressed data file; and

storing the compressed data file at the particular location on the first computing device.

11. The method of claim 8 , further comprising:

receiving, from an additional computing device, a request to store an additional data file;

storing the additional data file at a second particular location on the first computing device; and

adding additional information to the manifest, wherein the additional information identifies the second particular location of the additional data file.

12. The method of claim 11 , further comprising:

receiving, from the additional computing device, a request to provide the additional data file;

accessing the additional information in the manifest, the additional information identifying the second particular location of the additional data file;

retrieving the additional data file from the second particular location on the first computing device; and

sending the additional data file from the first computing device to the additional computing device.

13. The method of claim 8 , wherein the plurality of device criteria associated with the first computing device further comprise:

a chassis type of the first computing device, wherein the chassis type comprises one of a server chassis, a storage chassis, a portable chassis, or a handheld chassis; and

one or more features of the memory of the first computing device, wherein the one or more features of the memory comprise at least one of a spinning hard drive, a solid-state drive, or a flash memory device.

14. The method of claim 8 , wherein:

the second computing device determines a corresponding priority of the data file on one of a plurality of file criteria, the plurality of file criteria comprising:

a file type of the data file;

a file source of the data file;

an amount of memory consumed by the data file;

a usage history of the data file; and

a storage location of the data file.

15. A first computing device comprising:

one or more processors, and

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

establishing a connection with a local area network, the local area network comprising a plurality of devices and a second computing device;

providing a plurality of device criteria associated with the first computing device to the plurality of devices and second computing device that are connected to the local area network, the plurality of device criteria comprising:

a network interface of the computing device,

a location of the computing device,

an average amount of time that the computing device is connected to the local area network during a specified period of time,

an amount of time before the computing device enters a low power mode, and

a storage capacity of the computing device;

receiving a data file from the second computing device based on the second computing device determining that the first computing device has a highest rank compared to ranks of the plurality of computing devices, wherein the highest rank and the ranks are determined based on the plurality of device criteria, respectively, associated with the first computing device and the plurality of computing devices, respectively;

storing the data file at a particular location on the first computing device; and

writing information to a manifest, wherein the information identifies the particular location of the data file.

16. The first computing device of claim 15 , wherein the operations further comprise:

receiving, from an additional computing device, a request to obtain the data file;

accessing, based at least partly on the request, the manifest;

determining, based at least partly on the manifest, the particular location of the data file; and

sending a copy of the data file to the additional computing device.

17. The first computing device of claim 15 , wherein storing the data file at the particular location on the computing device comprises:

applying a compression algorithm to the data file to create a compressed data file; and

storing the compressed data file at the particular location on the computing device.

18. The first computing device of claim 15 , wherein the first device criteria further comprise:

a chassis type of the computing device, wherein the chassis type comprises one of a server chassis, a storage chassis, a portable chassis, or a handheld chassis; and

one or more features of the memory of the computing device, wherein the one or more features of the memory comprise at least one of a spinning hard drive, a solid-state drive, or a flash memory device.

19. The first computing device of claim 15 , the operations further comprising:

determining, from a wireless access point associated with the local area network, a second identifier associated with the second computing device; and

determining that the second computing device is connected to the local area network based at least partly on the second identifier associated with the second computing device.

20. The first computing device of claim 15 , wherein the operations further comprise:

receiving, from an additional computing device, a request to obtain the data file;

determining, based at least partly on the manifest, the particular location of the data file;

determining that the data file is unavailable or inaccessible;

determining, based at least partly on the manifest, that a copy of the data file is stored in a second particular location on a third computing device; and

sending an instruction to the third computing device to send the copy of the data file to the additional 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 (053311/0169) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0742 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (050724/0571) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060436/0088 →
RELEASE OF SECURITY INTEREST AT REEL 050406 FRAME 421 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 058213/0825 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 053311/0169 →
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 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Oct 15, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 050724/0571 →
SECURITY AGREEMENT Recorded Sep 17, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 050406/0421 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 11, 2019
From: TAN, DANIEL O.; SANAULLAH, ABU SHAHER; GUERRERO, FERNANDO L.
To: DELL PRODUCTS L. P.
Reel/Frame 049729/0572 →