IP Library Granted Patent US 7,089,259
Granted Patent B1
US 7,089,259 · App. 10/056,702 · Granted Aug 8, 2006

System and method for providing a framework for network appliance management in a distributed computing environment

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,089,259
App. No.
10/056,702
Granted
Aug 8, 2006
Kind
B1
Abstract

A system and method for providing a framework for network appliance management in a distributed computing environment is disclosed. A status report periodically received from each of a plurality of network appliances is recorded. Each status report contains health and status information and application-specific data for each network appliance. Configuration settings for each network appliance progressively assembled concurrent to providing installable components are maintained. A catalog listing currently installable components for each network appliance based on the configuration settings is dynamically provided.

Claims (106)

1. A system for providing a framework for network appliance management in a distributed computing environment, comprising:

an appliance status table recording a status report periodically received from a status daemon autonomously operating on each of a plurality of network appliances, each status report containing health and status information and application-specific data pertaining to autonomous configuration and management of each network appliance; and

a catalog server maintaining configuration settings for each network appliance progressively assembled concurrent to providing installable components and dynamically providing a catalog listing currently installable components for being installed on each network appliance based on the configuration settings independently received from the network appliance;

wherein each network appliance, prior to sending the status report, executes at least one initial plug-in; and, after installing the installable components, executes at least one post-plug-in;

wherein the at least one initial plug-in monitors the status daemon to determine if the status daemon is running, and restart the status daemon if it is determined that the status daemon is not running;

wherein the catalog further includes installable component names, installable component versions, a tag indicating a component server at which to locate and obtain each installable component, and a type indicator indicating whether each installable component is a package or a file;

wherein a network operations center establishes a secure session with each network appliance utilizing Secure Hypertext Transfer Protocol (HTTPS);

wherein the appliance status table further records a user identifier associated with one of the network appliances from which the status report is received and a time the status report is received.

2. A system according to claim 1 ,

wherein the network operations center installs an initial set of installable components on each network appliance during a bootstrap configuration.

3. A system according to claim 1 , wherein the currently installable components comprise at least one self-installable package, and the component server supplies the at least one package for installation responsive to a request from one such network appliance.

4. A system according to claim 3 , further comprising:

a crypto module digitally signing the at least one package for the network operations center prior to being supplied for installation.

5. A system according to claim 3 , further comprising:

a crypto module encrypting the at least one package prior to being supplied for installation.

6. A system according to claim 1 , wherein the installable components comprise at least one file, and the component server supplies the at least one file responsive to a request from one such network appliance.

7. A system according to claim 6 , wherein the component server establishes the secure session prior to the at least one file being supplied for installation.

8. A system according to claim 6 , further comprising:

a file information subdirectory specifying installation instructions for the at least one file in a pre-determined entry prior to the at least one file being supplied for installation.

9. A system according to claim 1 , further comprising:

a proxy component server staging the currently installable components for retrieval in a separate components database.

10. A system according to claim 1 , wherein the distributed computing environment is TCP/IP-compliant.

11. A system according to claim 1 , wherein the status report contains machine-specific data including a load on a processor and available disk space associated with each network appliance, and the application-specific data includes a number of e-mails passing through each of a plurality of network devices.

12. A system according to claim 1 , wherein the installable components for being installed on each network appliance are installed on each network appliance according to a location identified in a corresponding file information subdirectory of the network operations center.

13. A method for providing a framework for network appliance management in a distributed computing environment, comprising:

recording a status report periodically received from a status daemon autonomously operating on each of a plurality of network appliances, each status report containing health and status information and application-specific data pertaining to autonomous configuration and management of each network appliance;

maintaining configuration settings for each network appliance progressively assembled concurrent to providing installable components; and

dynamically providing a catalog listing currently installable components for being installed on each network appliance based on the configuration settings independently received from the network appliance;

wherein each network appliance, prior to sending the status report, executes at least one initial plug-in; and, after installing the installable components, executes at least one post-plug-in;

wherein the at least one initial plug-in monitors the status daemon to determine if the status daemon is running, and restart the status daemon if it is determined that the status daemon is not running;

wherein the catalog further includes installable component names, installable component versions, a tag indicating a component server at which to locate and obtain each installable component, and a type indicator indicating whether each installable component is a package or a file;

wherein a secure session is established with each network appliance utilizing Secure Hypertext Transfer Protocol (HTTPS);

wherein a user identifier associated with one of the network appliances from which the status report is received and a time the status report is received are recorded.

14. A method according to claim 13 , further comprising:

installing an initial set of installable components on each network appliance during a bootstrap configuration.

15. A method according to claim 13 , wherein the currently installable components comprise at least one self-installable package, further comprising:

supplying the at least one package for installation responsive to a request from one such network appliance.

16. A method according to claim 15 , further comprising:

digitally signing the at least one package prior to being supplied for installation.

17. A method according to claim 15 , further comprising:

encrypting the at least one package prior to being supplied for installation.

18. A method according to claim 13 , wherein the installable components comprise at least one file, further comprising:

supplying the at least one file responsive to a request from one such network appliance.

19. A method according to claim 18 , further comprising

establishing the secure session prior to the at least one file being supplied for installation.

20. A method according to claim 18 , further comprising:

specifying installation instructions for the at least one file in a pre-determined entry prior to the at least one file being supplied for installation.

21. A method according to claim 13 , further comprising:

staging the currently installable components for retrieval in a separate components database.

22. A method according to claim 13 , wherein the distributed computing environment is TCP/IP-compliant.

23. A computer-readable storage medium holding code for performing the method according to claims 13 , 14 , 15 , 16 , 17 , 18 , 19 , 20 , 21 , or 22 .

24. A system for autonomously managing a network appliance deployed within a distributed computing environment, comprising:

an internal catalog of components installed on one such network appliance identified by component and version; and

a status daemon operating autonomously on the one such network appliance and periodically providing a status report containing health and status information and application-specific data pertaining to autonomous configuration and management of the one such network appliance; and

a catalog checker obtaining a catalog of currently installable components dynamically generated for the one such network appliance based on the status report independently received from the one such network appliance and determining non-current components by comparing the components and versions listed in the obtained catalog against the internal catalog;

wherein each network appliance, prior to sending the status report, executes at least one initial plug-in; and, after installing the installable components, executes at least one post-plug-in;

wherein the at least one initial plug-in monitors the status daemon to determine if the status daemon is running, and restart the status daemon if it is determined that the status daemon is not running;

wherein the catalog further includes a tag indicating a component server at which to locate and obtain each installable component, and a type indicator indicating whether each installable component is a package or a file;

wherein a network operations center negotiates a secure session with the one such network appliance utilizing Secure Hypertext Transfer Protocol (HTTPS);

wherein an appliance status table records a user identifier associated with the one such network appliance from which the status report is received and a time the status report is received.

25. A system according to claim 24 , wherein the components comprise at least one self-installable package, further comprising:

an installer obtaining the at least one self-installable package and installing the at least one self-installable package per instructions encoded therein.

26. A system according to claim 25 , wherein the components further comprise at least one file dependent on the at least one self-installable package, further comprising:

an installer obtaining the at least one file subsequent to installing the at least one self-installable package and installing the at least one self-installable package per instructions stored in a pre-determined entry.

27. A system according to claim 25 , wherein the component server negotiates a non-secure session prior to obtaining the at least one self-installable package.

28. A system according to claim 25 , further comprising:

a crypto module at least one of authenticating and decrypting the at least one self-installable package prior to installing the at least one self-installable package.

29. A system according to claim 25 , wherein the instructions comprise an executable installation program plus one or more files to be installed.

30. A system according to claim 25 , wherein the components further comprise at least one file, further comprising:

an installer obtaining the at least one file and installing the at least one self-installable package per instructions stored in a predetermined entry.

31. A system according to claim 30 , wherein the component server negotiates the secure session prior to obtaining the at least one self-installable package.

32. A system according to claim 30 , wherein the pre-determined entry comprise a file information subdirectory identifying installation instructions.

33. A system according to claim 25 , wherein at least one such network appliance performs one of electronic mail anti-virus scanning, content filtering, packet routing, and file, Web and print servicing.

34. A system according to claim 25 , wherein the distributed computing environment is TCP/IP-compliant.

35. A method for autonomously managing a network appliance deployed within a distributed computing environment, comprising:

maintaining an internal catalog of components installed on one such network appliance identified by component and version;

periodically providing a status report containing health and status information and application-specific data pertaining to autonomous configuration and management of the one such network appliance and received from a status daemon autonomously operating on for the one such network appliance,

obtaining a catalog of currently installable components dynamically generated for the one such network appliance based on the status report independently received from the one such network appliance; and

determining non-current components by comparing the components and versions listed in the obtained catalog against the internal catalog;

wherein each network appliance, prior to sending the status report, executes at least one initial plug-in; and, after installing the installable components, executes at least one post-plug-in;

wherein the at least one initial plug-in monitors the status daemon to determine if the status daemon is running, and restart the status daemon if it is determined that the status daemon is not running;

wherein the catalog further includes a tag indicating a component server at which to locate and obtain each installable component, and a type indicator indicating whether each installable component is a package or a file;

wherein a secure session is negotiated with the one such network appliance utilizing Secure Hypertext Transfer Protocol (HTTPS);

wherein a user identifier associated with the one such network appliance from which the status report is received and a time the status report is received are recorded.

36. A method according to claim 35 , further comprising:

broadcasting a query message to each such network appliance to trigger a status report.

37. A method according to claim 35 , wherein the components comprise at least one self-installable package, further comprising:

obtaining the at least one self-installable package; and

installing the at least one self-installable package per instructions encoded therein.

38. A method according to claim 37 , wherein the components further comprise at least one file dependent on the at least one self-installable package, further comprising:

obtaining the at least one file subsequent to installing the at least one self-installable package; and

installing the at least one self-installable package per instructions stored in a pre-determined entry.

39. A method according to claim 37 , further comprising;

negotiating a non-secure session prior to obtaining the at least one self-installable package.

40. A method according to claim 37 , further comprising:

at least one of authenticating and decrypting the at least one self-installable package prior to installing the at least one self-installable package.

41. A method according to claim 37 , wherein the instructions comprise an executable installation program plus one or more files to be installed.

42. A method according to claim 35 , wherein the components further comprise at least one file, further comprising:

obtaining the at least one file; and

installing the at least one self-installable package per instructions stored in a pre-determined entry.

43. A method according to claim 42 , further comprising:

negotiating the secure session prior to obtaining the at least one self-installable package.

44. A method according to claim 42 , wherein the pre-determined entry comprise a file information subdirectory identifying installation instructions.

45. A method according to claim 35 , wherein at least one such network appliance performs one of electronic mail anti-virus scanning, content filtering, packet routing, and file, Web and print servicing.

46. A method according to claim 35 , wherein the distributed computing environment is TCP/IP-compliant.

47. A computer-readable storage medium holding code for performing the method according to claims 35 , 36 , 37 , 38 , 39 , 40 , 41 , 42 , 43 , 44 , 45 , or 46 .

Assignments (12)
TERMINATION AND RELEASE OF FIRST LIEN SECURITY INTEREST IN CERTAIN PATENTS RECORDED AT REEL 057453, FRAME 0053 Recorded Aug 15, 2024
From: UBS AG, STAMFORD BRANCH, AS COLLATERAL AGENT
To: MUSARUBRA US LLC
Reel/Frame 068655/0413 →
TERMINATION AND RELEASE OF SECOND LIEN SECURITY INTEREST IN CERTAIN PATENTS RECORDED AT REEL 056990, FRAME 0960 Recorded Aug 15, 2024
From: UBS AG, STAMFORD BRANCH, AS COLLATERAL AGENT
To: MUSARUBRA US LLC
Reel/Frame 068655/0430 →
CORRECTIVE ASSIGNMENT TO CORRECT THE PROPERTY NUMBERS PREVIOUSLY RECORDED AT REEL: 057315 FRAME: 0001. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Apr 11, 2022
From: MCAFEE, LLC
To: MUSARUBRA US LLC
Reel/Frame 060878/0126 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Jul 27, 2021
From: MUSARUBRA US LLC; SKYHIGH NETWORKS, LLC
To: UBS AG, STAMFORD BRANCH, AS COLLATERAL AGENT
Reel/Frame 056990/0960 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Jul 27, 2021
From: MUSARUBRA US LLC; SKYHIGH NETWORKS, LLC
To: UBS AG, STAMFORD BRANCH, AS COLLATERAL AGENT
Reel/Frame 057453/0053 →
RELEASE OF SECURITY INTEREST Recorded Jul 26, 2021
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: MCAFEE, LLC; SKYHIGH NETWORKS, LLC
Reel/Frame 057620/0102 →
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: JPMORGAN CHASE BANK, N.A.
Reel/Frame 045055/0786 →
SECURITY INTEREST Recorded Jan 12, 2018
From: MCAFEE, LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 045056/0676 →
CHANGE OF NAME AND ENTITY CONVERSION Recorded Aug 24, 2017
From: MCAFEE, INC.
To: MCAFEE, LLC
Reel/Frame 043665/0918 →