IP Library Granted Patent US 11,418,588
Granted Patent B2
US 11,418,588 · App. 17/036,206 · Granted Aug 16, 2022

Intelligent peer-to-peer container filesystem

Inventors: Victor Fong (Medford, MA); Xuebin He (Westwood, MA)
Assignee: EMC IP HOLDING COMPANY LLC
H04L67/1076H04L67/1042H04L67/1063H04L67/1078
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,418,588
App. No.
17/036,206
Granted
Aug 16, 2022
Kind
B2
Abstract

A peer container filesystem is provided. The peer container filesystem allows peer nodes to share containers. The peer container filesystem allows the images or portions thereof to be shared without a container registry. A node send requests to the network that are configured to push or distribute an image in the network, search for an image in the network, download an image in the network, and perform updates amongst the peer nodes such that the locations of images and/or their files are known to at least some of the peers in the network.

Claims (34)

1. A method, comprising:

receiving a request to run a container on a node in a network, the node including a peer container filesystem and a container controller, the container associated with a container image, wherein an order in which files associated with the container are accessed during container execution has been previously recorded and associated with the container, wherein the order is stored in a tracker file;

requesting the files associated with the container from peer nodes when the files are not present at the node;

receiving the tracker file from a peer node, wherein the tracker file identifies files required to start the container execution;

downloading the required files from at least one of the peer nodes;

starting the container when the required files are downloaded; and

downloading second files identified in the tracker file from the peer nodes based on the order of the second files, wherein the second files are not required to be downloaded prior to starting the container on the node,

wherein downloading the second files is initiated prior to the second files being needed for the container execution.

2. The method of claim 1 , further comprising determining whether any of the files are present on the node before requesting the files from the peer nodes using a key-value table.

3. The method of claim 1 , wherein the tracker file includes file access data that identifies the files used by the container and the order in which the files are accessed, and identifies the required files.

4. The method of claim 1 , further comprising sharing the container with the peer nodes.

5. The method of claim 1 , further comprising performing file system operations associated with the peer container filesystem.

6. The method of claim 5 , further comprising searching for an image by sending a broadcast request to the peer nodes for the image, wherein the image is identified by a hash.

7. The method of claim 5 , further comprising downloading an image or files of an image from one of the peer hosts.

8. The method of claim 5 , further comprising updating the peer nodes with information that identifies which files and images are stored by the node.

9. The method of claim 5 , further comprising pushing an image of the container to other nodes in the network, wherein the images are pushed to a minimum number of nodes.

10. The method of claim 9 , wherein the image is pushed to nodes having the most available storage.

11. A non-transitory storage medium having stored therein instructions that are executable by one or more hardware processors to perform operations comprising:

receiving a request to run a container on a node in a network, the node including a peer container filesystem and a container controller, the container associated with a container image, wherein an order in which files associated with the container are accessed during container execution has been previously recorded and associated with the container, wherein the order is stored in a tracker file;

requesting the files associated with the container from peer nodes when the files are not present at the node;

receiving the tracker file from a peer node, wherein the tracker file identifies files required to start the container execution;

downloading the required files from at least one of the peer nodes;

starting the container when the required files are downloaded; and

downloading second files identified in the tracker file from the peer nodes based on the order of the second files, wherein the second files are not required to be downloaded prior to starting the container on the node,

wherein downloading the second files is initiated prior to the second files being needed for the container execution.

12. The non-transitory storage medium of claim 11 , further comprising determining whether any of the files are present on the node before requesting the files from the peer nodes using a key-value table.

13. The non-transitory storage medium of claim 11 , wherein the tracker file includes file access data that identifies the files used by the container and the order in which the files are accessed, and identifies the required files.

14. The non-transitory storage medium of claim 11 , further comprising sharing the container with the peer nodes.

15. The non-transitory storage medium of claim 11 , further comprising performing file system operations associated with the peer container filesystem.

16. The non-transitory storage medium of claim 15 , further comprising searching for an image by sending a broadcast request to the peer nodes for the image, wherein the image is identified by a hash.

17. The non-transitory storage medium of claim 15 , further comprising downloading an image or files of an image from one of the peer hosts.

18. The non-transitory storage medium of claim 15 , further comprising updating the peer nodes with information that identifies which files and images are stored by the node.

19. The non-transitory storage medium of claim 15 , further comprising pushing an image of the container to other nodes in the network, wherein the images are pushed to a minimum number of nodes.

20. The non-transitory storage medium of claim 19 , wherein the image is pushed to nodes having the most available storage.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (054475/0523) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 060332/0664 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (054475/0434) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 060332/0740 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (054475/0609) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 062021/0570 →
RELEASE OF SECURITY INTEREST AT REEL 054591 FRAME 0471 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0463 →
SECURITY INTEREST Recorded Nov 18, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 054475/0609 →
SECURITY INTEREST Recorded Nov 18, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 054475/0434 →
SECURITY INTEREST Recorded Nov 18, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 054475/0523 →
SECURITY AGREEMENT Recorded Nov 13, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 054591/0471 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 29, 2020
From: FONG, VICTOR; HE, XUEBIN
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 053915/0221 →