IP Library Granted Patent US 10,019,185
Granted Patent B2
US 10,019,185 · App. 15/459,316 · Granted Jul 10, 2018

System and method for copying directory structures

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,019,185
App. No.
15/459,316
Granted
Jul 10, 2018
Kind
B2
Abstract

A method, storage control system and information handling system (IHS) provides copying of a first directory containing a first plurality of files from a client to a target server. The method includes receiving, via a first processor of the client, a request to copy the first directory containing the first plurality of files from a first storage device to the target server. The first directory is parsed into a first i-node tree. Metadata corresponding to the first i-node tree is generated and transmit from the client to the target server. A second processor at the target server is triggered to generate a second directory based on the metadata corresponding to the first i-node tree. The first plurality of files contained in the first directory from the first storage device is transmitted to the target server.

Claims (49)

1. A computer-implemented method of copying a first directory containing a first plurality of files from a client to a target server, the method comprising:

parsing the first directory into a first i-node tree;

generating metadata corresponding to the first i-node tree;

transmitting the metadata from the client to the target server;

triggering a second processor at the target server to generate a second directory based on the metadata corresponding to the first i-node tree;

in response to receiving, from the target server, a confirmation that the second directory was generated: transmitting the first plurality of files contained in the first directory from the first storage device to a second storage device of the target server; triggering the second processor to write the first plurality of files as a second plurality of files contained in the second directory on the second storage device; and monitor for receipt, from the target server, of confirmation that the second plurality of files were written to the second directory of the second storage device; and

in response to not receiving confirmation within a pre-determined time period that the second directory was generated and that the first plurality of files were written, as the second plurality of files, to the second directory of the second storage device, generating an error message.

2. The method of claim 1 , further comprising:

transmitting to the target server a request to identify if the second directory is stored on the second storage device of the target server; and

in response to the second directory being stored on the second storage device of the target server, generating a message indicating that the second directory is already stored on the second storage device, wherein the second directory stored on the second storage device is prevented from being overwritten.

3. The method of claim 1 , wherein triggering the second processor to generate the second directory further comprises forwarding a set of one or more commands that trigger the second processor to perform the functions of:

parsing the metadata via the second processor;

generating a second i-node tree based on the metadata; and

generating the second directory based on the second i-node tree.

4. The method of claim 1 , further comprising converting the first i-node tree into an encoded pattern using a depth first search algorithm that traverses or searches data structures starting at a root and explores as far as possible along each branch before backtracking, wherein each i-node is converted into meta data.

5. A storage control system for copying a first directory containing a first plurality of files from a client to a target server, the storage control system comprising:

a first processor and a first storage device communicatively coupled to the first processor via a system interconnect, the first processor having firmware executing thereon to enable copying of the first directory containing the first plurality of files from the client to the target server, wherein the firmware configures the first processor to:

in response to receive a request to copy the first directory containing the first plurality of files from the first storage device to the target server, parse the first directory into a first i-node tree;

generate metadata corresponding to the first i-node tree;

transmit the metadata from the client to the target server;

trigger a second processor at the target server to generate a second directory based on the metadata corresponding to the first i-node tree;

in response to receiving, from the target server, a confirmation that the second directory was generated: transmit the first plurality of files contained in the first directory from the first storage device to a second storage device of the target server; trigger the second processor to write the first plurality of files as a second plurality of files to the second directory on the second storage device; and monitor for receipt, from the target server, of confirmation that the second plurality of files were written to the second directory of the second storage device; and

in response to not receiving confirmation within a pre-determined time period that the second directory was generated and that the first plurality of files was written, as the second plurality of files, to the second directory of the second storage device, generate an error message.

6. The storage control system of claim 5 , wherein the firmware further configures the first processor to:

transmit to the target server a request to identify if the second directory is stored on the second storage device of the target server; and

in response to the second directory being stored on the second storage device of the target server, generating a message indicating that the second directory is already stored on the second storage device, wherein the second directory stored on the second storage device is prevented from being overwritten.

7. The storage control system of claim 5 , wherein triggering the second processor to generate the second directory further comprises forwarding a set of one or more commands that trigger the second processor to perform the functions of:

parsing, via the second processor, the metadata;

generating a second i-node tree based on the metadata; and

generating the second directory based on the second i-node tree.

8. An information handling system (IHS) comprising:

a first processor and a first storage device communicatively coupled to the first processor via a system interconnect, the first processor having firmware executing thereon to enable copying of a first directory containing a first plurality of files from a client to a target server, wherein the firmware configures the first processor to:

receive a request to copy the first directory containing the first plurality of files from the first storage device to the target server;

in response to receiving the request to copy the first directory:

parse the first directory into a first i-node tree;

generate metadata corresponding to the first i-node tree;

transmit the metadata from the client to the target server;

trigger a second processor at the target server to generate a second directory based on the metadata corresponding to the first i-node tree;

in response to receiving, from the target server, a confirmation that the second directory was generated: transmit the first plurality of files contained in the first directory from the first storage device to a second storage device of the target server; trigger the second processor to write the first plurality of files as a second plurality of files to the second directory on the second storage device; and monitor for receipt, from the target server, of confirmation that the second plurality of files were written to the second directory of the second storage device; and

in response to not receiving confirmation within a pre-determined time period that the second directory was generated and that the first plurality of files was written, as the second plurality of files, to the second directory of the second storage device, generate an error message.

9. The information handling system of claim 8 , wherein the firmware further configures the first processor to:

transmit to the target server a request to identify if the second directory is stored on the second storage device of the target server; and

in response to the second directory being stored on the second storage device of the target server, generating a message indicating that the second directory is already stored on the second storage device and wherein the second directory stored on the second storage device is prevented from being overwritten.

10. The information handling system of claim 8 , wherein triggering the second processor to generate the second directory further comprises forwarding a set of one or more commands that trigger the second processor to perform the functions of:

parsing, via the second processor, the metadata;

generating a second i-node tree based on the metadata; and

generating the second directory based on the second i-node tree.

11. The information handling system of claim 7 , wherein the firmware further configures the first processor to:

generate at least one network packet containing the metadata and the first plurality of files contained in the first directory.

Assignments (8)
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 (042769/0001) Recorded Apr 26, 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 (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO WYSE TECHNOLOGY L.L.C.)
Reel/Frame 059803/0802 →
RELEASE OF SECURITY INTEREST AT REEL 042768 FRAME 0585 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; MOZY, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058297/0536 →
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 →
PATENT SECURITY INTEREST (CREDIT) Recorded Jun 12, 2017
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; MOZY, INC.; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 042768/0585 →
PATENT SECURITY INTEREST (NOTES) Recorded Jun 12, 2017
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; MOZY, INC.; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 042769/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 15, 2017
From: VIDYADHARA, SUMANTH; SINGH, ANKIT; S, SHEKAR BABU; SINHA, PRASOON KUMAR
To: DELL PRODUCTS, L.P.
Reel/Frame 041581/0612 →