IP Library Granted Patent US 7,043,758
Granted Patent B2
US 7,043,758 · App. 09/881,058 · Granted May 9, 2006

Scanning computer files for specified content

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 7,043,758
App. No.
09/881,058
Granted
May 9, 2006
Kind
B2
Abstract

Scanning for computer viruses or E-mail and data content filtering is performed using a distributed programming approach. A master computer 4 serves to divide the scanning operation into a plurality of tasks that are allocated to further computers 8, 10, 12, 14, 20 . These further computers then separately perform the tasks and return the results to the master computer 4 . The master computer 4 can check the update status of the further computers prior to them starting operation in order to check that they have the latest data defining the scanning to be performed.

Claims (61)

1. A computer program product comprising a computer program operable to control a master computer to scan a plurality of computer files to identify one or more computer files having one or more predetermined characteristics indicative of a computer file having at least some specified content, said computer program comprising:

scan initiating logic operable in response to a scan initiating command to initiate a scan of said plurality of computer files;

scan dividing logic operable to divide said scan into a plurality of tasks;

task issuing logic operable to issue at least some of said plurality of tasks to one or more further computers to be performed by respective ones of said one or more further computers;

task result receiving logic operable to receive from said one or more further computers results of said tasks performed by respective ones of said one or more further computers;

scan result merging logic responsive to said results of said tasks performed by respective ones of said one or more further computers to identify any of said plurality of computer files having any of said one or more predetermined characteristics to provide a merged scan result; and

task performing logic such that said master computer may also perform one or more of said tasks, wherein said scan dividing logic identifies high priority tasks with said high priority tasks being performed by said task performing logic of said master computer.

2. A computer program product as claimed in claim 1 , wherein said one or more predetermined characteristics include a computer file containing an specified computer program.

3. A computer program product as claimed in claim 2 , wherein said specified computer program is a computer virus, worm or Trojan.

4. A computer program product as claimed in claim 1 , wherein said one or more predetermined characteristics include a computer file containing content to be banned, redirected or quarantined.

5. A computer program product as claimed in claim 1 , wherein said plurality of computer files comprise computer files stored on one or more networked data storage devices.

6. A computer program product as claimed in claim 1 , wherein said plurality of computer files comprise received and sent messages.

7. A computer program product as claimed in claim 1 , wherein said plurality of computer files comprise data transmission streams.

8. A computer program product as claimed in claim 1 , wherein said plurality of computer files are stored remotely from said master computer.

9. A computer program product as claimed in claim 1 , wherein said one or more further computers include a local further computer connected to a system bus of said master computer.

10. A computer program product comprising a computer program operable to control a master computer to scan a plurality of computer files to identify one or more computer files having one or more predetermined characteristics indicative of a computer file having at least some specified content said computer program comprising:

scan initiating logic operable in response to a scan initiating command to initiate a scan of said plurality of computer files;

scan dividing logic operable to divide said scan into a plurality of tasks;

task issuing logic operable to issue at least some of said plurality of tasks to one or more further computers to be performed by respective ones of said one or more further computers;

task result receiving logic operable to receive from said one or more further computers results of said tasks performed by respective ones of said one or more further computers;

scan result merging logic responsive to said results of said tasks performed by respective ones of said one or more further computers to identify any of said plurality of computer files having any of said one or more predetermined characteristics to provide a merged scan result; and

task monitoring logic operable to monitor proper execution of said tasks by said one or more further computers, wherein said task monitoring logic is operable to detect if a task has been pending with a further computer for more than a predetermined time and if so reissuing said task to another computer, wherein if a task has been pending with said further computer for more than a predetermined time, ten one or more of:

further tasks are not issued to said further computer; and

a diagnostic process is initiated.

11. A computer program product as claimed in claim 10 , wherein said task monitoring logic is operable to poll said one or more further computers for information regarding a processing status of a task being performed by a respective further computer.

12. A method of controlling a master computer to scan a plurality of computer files to identify one or more computer files having one or more predetermined characteristics indicative of a computer file having at least some specified content, said method comprising the steps of:

in response to a scan initiating command, initiating a scan of said plurality of computer files;

dividing said scan into a plurality of tasks;

issuing at least some of said plurality of tasks to one or more further computers to be performed by respective ones of said one or more further computers;

receiving from said one or more further computers results of said tasks performed by respective ones of said one or more further computers; and

in response to said results of said tasks performed by respective ones of said one or more further computers, identifying any of said plurality of computer files having any of said one or more predetermined characteristics to provide a merged scan result, wherein said master computer may also perform one or more of said tasks, wherein said step of dividing identifies high priority tasks with said high priority tasks being performed by said master computer.

13. A method as claimed in claim 12 , wherein said one or more predetermined characteristics include a computer file containing an specified computer program.

14. A method as claimed in claim 13 , wherein said specified computer program is a computer virus, worm or Trojan.

15. A method as claimed in claim 12 , wherein said one or more predetermined characteristics include a computer file containing content to be banned, redirected or quarantined.

16. A method as claimed in claim 12 , wherein said plurality of computer files comprise computer files stored on one or more networked data storage devices.

17. A method as claimed in claim 12 , wherein said plurality of computer files comprise received and sent messages.

18. A method as claimed in claim 12 , wherein said plurality of computer files comprise network data traffic.

19. A method as claimed in claim 12 , wherein said plurality of computer files are stored remotely from said master computer.

20. A method as claimed in claim 12 , further comprising the step of said master computer monitoring proper execution of said tasks by said one or more further computers.

21. A method as claimed in claim 20 , wherein said monitoring includes polling said one or more further computers for information regarding a processing status of a task being performed by a respective further computer.

22. A method as claimed in claim 20 , wherein monitoring includes detecting if a task has been pending with a further computer for more than a predetermined time and if so reissuing said task to another computer.

23. A method as claimed in claim 22 , wherein if a task has been pending with said further computer for more than a predetermined time, containing content to be banned, redirected or quarantined.

24. A method as claimed in claim 12 , wherein said one or more further computers include a local further computer connected to a system bus of said master computer.

25. Apparatus including a master computer for scanning a plurality of computer files to identify one or more computer files having one or more predetermined characteristics indicative of a computer file having at least some specified content, said apparatus comprising:

a scan initiator operable in response to a scan initiating command to initiate a scan of said plurality of computer files;

a scan divider operable to divide said scan into a plurality of tasks;

a task issuer operable to issue at least some of said plurality of tasks to one or more further computers to be performed by respective ones of said one or more further computers;

a task result receiver operable to receive from said one or more further computers results of said tasks performed by respective ones of said one or more further computers;

a scan result merging processor responsive to said results of said tasks performed by respective ones of said one or more further computers to identify any of said plurality of computer files having any of said one or more predetermined characteristics to provide a merged scan result; and

a task performer such that said master computer may also perform one or more of said tasks, wherein said scan divider identifies high priority tasks with said high priority tasks being performed by said task performer of said master computer.

26. Apparatus as claimed in claim 25 , wherein said one or more predetermined characteristics include a computer file containing an specified computer program.

27. Apparatus as claimed in claim 26 , wherein said specified computer program is a computer virus, worm or Trojan.

28. Apparatus as claimed in claim 25 , wherein said one or more predetermined characteristics include a computer file containing content to be banned, redirected or quarantined.

29. Apparatus as claimed in claim 25 , wherein said plurality of computer files comprise computer files stored on one or more networked data storage devices.

30. Apparatus as claimed in claim 25 , wherein said plurality of computer files comprise received and sent messages.

31. Apparatus as claimed in claim 25 , wherein said plurality of computer files are stored remotely from said master computer.

32. Apparatus as claimed in claim 25 , further comprising a task monitor operable to monitor proper execution of said tasks by said one or more further computers.

33. Apparatus as claimed in claim 32 , wherein said task monitor is operable to poll said one or more further computers for information regarding a processing status of a task being performed by a respective further computer.

34. Apparatus as claimed in claim 32 , wherein said task monitor is operable to detect if a task has been pending with a further computer for more than a predetermined time and if so reissuing said task to another computer.

35. Apparatus as claimed in claim 34 , wherein if a task has been pending with said further computer for more than a predetermined time, containing content to be banned, redirected or quarantined.

36. Apparatus as claimed in claim 25 , wherein said one or more further computers include a local further computer connected to a system bus of said master computer.

Assignments (11)
CORRECTIVE ASSIGNMENT TO CORRECT THE THE PATENT TITLES AND REMOVE DUPLICATES IN THE SCHEDULE PREVIOUSLY RECORDED AT REEL: 059354 FRAME: 0335. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jun 23, 2022
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 060792/0307 →
SECURITY INTEREST Recorded Mar 3, 2022
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT AND COLLATERAL AGENT
Reel/Frame 059354/0335 →
RELEASE OF INTELLECTUAL PROPERTY COLLATERAL - REEL/FRAME 045056/0676 Recorded Mar 2, 2022
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: MCAFEE, LLC
Reel/Frame 059354/0213 →
RELEASE OF INTELLECTUAL PROPERTY COLLATERAL - REEL/FRAME 045055/0786 Recorded Oct 26, 2020
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: MCAFEE, LLC
Reel/Frame 054238/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENT 6336186 PREVIOUSLY RECORDED ON REEL 045056 FRAME 0676. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Oct 22, 2020
From: MCAFEE, LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 054206/0593 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENT 6336186 PREVIOUSLY RECORDED ON REEL 045055 FRAME 786. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Oct 22, 2020
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 055854/0047 →
SECURITY INTEREST Recorded Jan 12, 2018
From: MCAFEE, LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 045056/0676 →
SECURITY INTEREST Recorded Jan 12, 2018
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 045055/0786 →
CHANGE OF NAME AND ENTITY CONVERSION Recorded Aug 24, 2017
From: MCAFEE, INC.
To: MCAFEE, LLC
Reel/Frame 043665/0918 →
MERGER Recorded Aug 1, 2005
From: NETWORKS ASSOCIATES TECHNOLOGY, INC.
To: MCAFEE, INC.
Reel/Frame 016593/0812 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 10, 2001
From: GRUPE, ROBERT
To: NETWORKS ASSOCIATES TECHNOLOGY, INC.
Reel/Frame 012245/0925 →