IP Library Granted Patent US 8,527,618
Granted Patent B1
US 8,527,618 · App. 11/608,240 · Granted Sep 3, 2013

Repercussionless ephemeral agent for scalable parallel operation of distributed computers

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 8,527,618
App. No.
11/608,240
Granted
Sep 3, 2013
Kind
B1
Abstract

A repercussionless ephemeral agent for scalable parallel operation of distributed computers provides efficient processing on the distributed computers via a bootstrapped agent and on-demand downloading of software components. Central computers having access to script, bootstrap, and library software code as well as a database, activate remote execution of the script on the distributed computers to control the distributed computers. The distributed computers are optionally controlled to perform an analysis according to the script in a distributed fashion with a high degree of parallelism. The analysis optionally examines all or portions of files implemented on or accessible to the distributed computers without the necessity of transferring the files from the distributed computers to the central machines. When the bootstrapped agent completes processing, all processes and files associated with the agent are removed from the distributed computers, effectively eliminating all traces of the execution from the distributed computers.

Claims (90)

1. A method comprising:

communicating via a central computer an executable script to two or more remote processes respectively executing on two or more remote computers;

communicating, via the central computer, an executable program to the remote processes in response to call backs resulting from execution of the executable script by the remote processes;

communicating, via the central computer, objects in response to object requests from the remote processes, the object requests resulting from execution of the executable program;

receiving, via the central computer, respective output from the remote processes;

wherein the executable script specifies the executable program;

wherein the executable program is an analysis program having at least one reference to each of the objects;

wherein at least one of the objects comprises keys that are results of linguistic analysis of content, the analysis program being enabled to use the keys to ascertain if the content is in files accessible to the analysis program while not enabling determination of the content from the keys alone;

wherein the executable script is compatible with and executable under control of a create service function that is compatible with an operating system of a particular type;

wherein the executable program is stored in a folder that is exposed by the operating system in accordance with a universal naming convention; and

wherein the remote computers respectively host the remote processes, the central computer is a member of a particular domain, the domain being of the operating system, and the remote computers have each established a respective trust relationship with the central computer via joining the particular domain.

2. The method of claim 1 , wherein the executable program is compatible with a software framework of the operating system.

3. The method of claim 1 , wherein the create service function is either a 32-bit create service function of the operating system or a 64-bit create service function of the operating system.

4. The method of claim 1 , further comprising spawning the remote processes on the respective remote computers.

5. The method of claim 1 , wherein the central computer has a database repository comprising the executable script.

6. The method of claim 1 , wherein at least one of the objects is a software module object and at least another one of the objects is a data module object.

7. The method of claim 1 , wherein the analysis program is capable of categorizing information content in the files according to at least one of

a personal information category,

a financial information category,

a public information category,

a private information category,

a proprietary information category,

a sensitive information category, and

a government regulated information category.

8. The method of claim 1 , wherein the remote processes are executed with administrator privileges.

9. The method of claim 1 , wherein the acts of communicating and the act of receiving are in cooperation with one or more analysis processes, and a first one of the analysis processes is performed at least partially in parallel with a second one of the analysis processes.

10. The method of claim 9 , wherein the first and the second analysis processes are via distinct ones of the remote computers.

11. A method comprising:

responding, via spawning a process, to a request from a controlling computer to process an executable script;

requesting an analysis program from the controlling computer via a call back resulting from processing of the executable script;

executing the analysis program;

requesting, when the executing refers to one or more objects that are unavailable locally, the respective object from the controlling computer;

communicating output from the executing to the controlling computer;

wherein the executable script specifies the analysis program;

wherein at least one of the objects comprises keys that are results of linguistic analysis of content, the analysis program being enabled to use the keys to ascertain if the content is in files accessible to the analysis program while not enabling determination of the content from the keys alone;

wherein the executable script is compatible with and executable under control of a create service function that is compatible with an operating system of a particular type;

wherein the analysis program is stored in a folder that is exposed by the operating system in accordance with a universal naming convention; and

wherein the controlling computer is a member of a particular domain, the domain being of the operating system, and the responding is performed by one or more members that have each established a respective trust relationship with the controlling computer via joining the particular domain.

12. The method of claim 11 , wherein the process is ephemeral.

13. The method of claim 12 , further comprising destroying the process.

14. The method of claim 13 , further comprising destroying all child processes spawned by the process.

15. The method of claim 11 , wherein the process is repercussionless.

16. The method of claim 15 , further comprising removing all files created by the process.

17. The method of claim 11 , wherein the analysis program is compatible with a software framework of the operating system.

18. The method of claim 11 , wherein the create service function is either a 32-bit create service function or a 64-bit create service function of the operating system.

19. The method of claim 11 , wherein the analysis program has modules to classify content of files accessible by the process according to a plurality of classifications.

20. The method of claim 19 , wherein the classifications comprise:

a personal information classification,

a financial information classification,

a public information classification,

a private information classification,

a proprietary information classification,

a sensitive information classification, and

a government regulated information classification.

21. The method of claim 11 , wherein the executing is at an administrator privilege level.

22. The method of claim 11 , wherein the executing is at an adjustable priority level.

23. The method of claim 22 , wherein the adjustable priority level is dynamically modified according to availability of at least one of idle processor cycles and spare input/output bandwidth.

24. The method of claim 11 , wherein the executing is via a controlled computer, and the controlled computer is one of a laptop computer, a desktop computer, a file server computer, and a workstation computer.

25. A system comprising:

a computer having a networking interface;

non-volatile storage coupled to the computer and having images stored therein of

a control agent program,

an executable script,

an executable analysis program, and

a collection of objects;

wherein the executable analysis program has references to the objects;

wherein the control agent program, when executed by the computer, causes the computer to perform functions comprising

initiating spawning of a plurality of slave processes,

communicating the executable script to all of the slave processes,

communicating, in response to call backs arising from execution of the executable script by one or more of the slave processes, the executable analysis program to the slave processes,

communicating, in response to object requests arising from execution of the executable analysis program by the slave processes, appropriate ones of the objects from the non-volatile storage, and

receiving respective output data from each of the slave processes;

wherein at least one of the objects comprises keys that are results of linguistic analysis of content, the analysis program being enabled to use the keys to ascertain if the content is in files accessible to the analysis program while not enabling determination of the content from the keys alone;

wherein the executable script is compatible with and executable under control of a create service function that is compatible with an operating system of a particular type;

wherein the analysis program is stored in a folder that is exposed by the operating system in accordance with a universal naming convention; and

wherein the computer is enabled to become a member of a particular domain, the domain being of the operating system, and respective hosts of the slave processes are each enabled to establish a respective trust relationship with the computer via joining the particular domain.

26. The system of claim 25 , wherein the executable analysis program is compatible with a software framework of the operating system.

27. The system of claim 25 , wherein the create service function is either a 32-bit create service function or a 64-bit create service function.

28. The system of claim 25 , wherein the output data has results of a file content analysis according to the executable analysis program of the operating system.

29. The system of claim 28 , wherein the file content analysis is according to a plurality of file content categories comprising:

a personal information category,

a financial information category,

a public information category,

a private information category,

a proprietary information category,

a sensitive information category, and

a government regulated information category.

30. The system of claim 25 , wherein the computer operates as a master computer and each of the slave processes is to execute on a respective slave computer.

31. The system of claim 30 , wherein one of the slave computers is at least one of a laptop computer, a desktop computer, a file server computer, and a workstation computer.

32. The system of claim 30 , further comprising the slave computers.

Assignments (14)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061753/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061324/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 3, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL USA L.P.; ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL, L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058216/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 Sep 29, 2016
From: EMC CORPORATION
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 040203/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040134/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040136/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 23, 2010
From: RSA SECURITY LLC
To: RSA SECURITY HOLDING, INC.
Reel/Frame 023975/0453 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 23, 2010
From: RSA SECURITY HOLDING, INC.
To: EMC CORPORATION
Reel/Frame 023975/0151 →
MERGER Recorded Jan 27, 2010
From: RSA SECURITY INC
To: RSA SECURITY LLC
Reel/Frame 023852/0644 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 21, 2010
From: RSA SECURITY LLC
To: RSA SECURITY HOLDING, INC.
Reel/Frame 023824/0729 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 21, 2010
From: RSA SECURITY HOLDING, INC.
To: EMC CORPORATION
Reel/Frame 023825/0109 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 19, 2008
From: TABLUS, INC.
To: RSA SECURITY, INC.
Reel/Frame 020675/0681 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 8, 2007
From: WIESE, JAMES CHRISTOPHER
To: TABLUS, INC.
Reel/Frame 018871/0095 →