IP Library Granted Patent US 7,770,063
Granted Patent B2
US 7,770,063 · App. 11/467,551 · Granted Aug 3, 2010

Simulation of failure recovery within clustered systems

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,770,063
App. No.
11/467,551
Granted
Aug 3, 2010
Kind
B2
Abstract

Failure recovery within clustered systems is simulated. For each of a number of failure conditions for an initial state of a number of computing elements of a computerized system, a failure state of the computing elements is generated that corresponds to the failure condition and that is based on the initial state of the computing elements. A failure condition may include one or more hardware and/or software failures. For each failure state of the computing elements, a recovery state is then generated, or simulated, for the computing elements, based on the failure state and the initial state of the computing elements and on a number of recovery rules for the computing elements. Each recovery state is then output for subsequent analysis, where such analysis may be either with human interaction, or automatically and without human interaction.

Claims (51)

1. A method comprising:

for each of a plurality of failure conditions, generating a failure state of a plurality of computing elements of a computerized system corresponding to the failure condition and based on an initial state of the plurality of computing elements of the computerized system, the failure conditions regarding a plurality of failures of the plurality of computing elements,

wherein each failure comprises one of a single hardware failure within the plurality of computing elements and a single software failure within the plurality of computing elements, the failures comprising at least three failures;

wherein the failure conditions comprise all possible combinations of one, two, and three of the failures;

for each failure state of the plurality of computing elements of the computerized system, generating a recovery state of the plurality of computing elements of the computerized system based on the failure state and the initial state of the plurality of computing elements of the computerized system and on a plurality of recovery rules for the plurality of computing elements of the computerized system; and,

outputting each unique recovery state of the plurality of computing elements of the computerized system for subsequent analysis of the recovery state,

wherein one of the recovery rules comprises doing nothing.

2. The method of claim 1 , further comprising initially inputting the initial state of the plurality of computing elements of the computerized system.

3. The method of claim 1 , further comprising initially generating the plurality of failure conditions for the initial state of the plurality of computing elements of the computerized system.

4. The method of claim 1 , wherein at least one of the failure conditions each comprises a hardware failure within at least one of the plurality of computing elements of the computerized system.

5. The method of claim 1 , wherein at least one of the failure conditions each comprises a software failure within at least one of the plurality of computing elements of the computerized system.

6. The method of claim 1 , wherein at least one of the failure conditions each comprises a single failure within one of the plurality of computing elements of the computerized system.

7. The method of claim 1 , wherein at least one of the failure conditions each comprises a multiple failure within one of the plurality of computing elements of the computerized system.

8. The method of claim 1 , wherein each failure state represents a state of the plurality of computing elements of the computerized system based on the corresponding failure condition occurring to the initial state of the plurality of computing elements of the computerized system.

9. The method of claim 1 , wherein each recovery state of the plurality of computing elements of the computerized system represents a state of the plurality of computing elements of the computerized system based on applying the recovery rules to the failure state of the plurality of computing elements of the computerized system.

10. The method of claim 1 , further comprising determining whether each recovery state is appropriate for the failure state to which the recovery state corresponds.

11. A method comprising:

for each of a plurality of failure conditions for an initial state of a plurality of computing elements of a computerized system, generating a failure state of the plurality of computing elements representing a state of the plurality of computing elements corresponding to the failure condition occurring to the plurality of computing elements in the initial state, the failure conditions regarding a plurality of failures of the plurality of computing elements,

wherein each failure comprises one of a single hardware failure within the plurality of computing elements and a single software failure within the plurality of computing elements, the failures comprising at least three failures;

wherein the failure conditions comprise all possible combinations of one, two, and three of the failures;

for each failure state of the plurality of computing elements, generating a recovery state of the plurality of computing elements by applying a plurality of recovery rules to the plurality of computing elements in the failure state, and based on the initial state of the plurality of computing elements, to yield the recovery state; and,

outputting each unique recovery state of the plurality of computing elements for subsequent analysis of the recovery state,

wherein one of the recovery rules comprises doing nothing.

12. The method of claim 11 , further comprising initially:

inputting the initial state of the plurality of computing elements of the computerized system; and,

generating the plurality of failure conditions for the initial state of the plurality of computing elements of the computerized system.

13. The method of claim 11 , wherein each failure condition comprises at least one of:

a hardware failure within at least one of the plurality of computing elements;

a software failure within at least one of the plurality of computing elements;

a single failure; and,

a multiple failure.

14. The method of claim 11 , further comprising determining whether each recovery state is appropriate for the failure state to which the recovery state corresponds.

15. A computerized system comprising:

hardware;

a failure mechanism implemented at least in the hardware and to generate a plurality of failure states of a plurality of computing elements by applying user-specified failure criteria to an initial state of the plurality of computing elements, the failure criteria regarding a plurality of failures of the plurality of computing elements,

wherein each failure comprises one of a single hardware failure within the plurality of computing elements and a single software failure within the plurality of computing elements, the failures comprising at least three failures;

wherein the failure criteria comprise all possible combinations of one, two, and three of the failures; and,

a simulation mechanism implemented at least in the hardware and to generate a plurality of recovery states of the plurality of computing elements corresponding to the failure states by applying a plurality of recovery rules to the failure states and based on the initial state of the plurality of computing elements, and to output the unique recovery states for subsequent analysis,

wherein one of the recovery rules comprises doing nothing.

16. The computerized system of claim 15 , wherein each failure state represents a failure occurring within the plurality of computing elements in the initial state.

17. The computerized system of claim 16 , wherein the failure of each failure state comprises at least one of:

a hardware failure within at least one of the plurality of computing elements;

a software failure within at least one of the plurality of computing elements;

a single failure; and,

a multiple failure.

18. An article of manufacture comprising:

a tangible computer-readable data storage medium; and,

means in the medium for generating a plurality of failure states of a plurality of computing elements of a computerized system from an initial state of the plurality of computing elements by applying user-specified failure criteria to the initial state, for generating a plurality of recovery states of the plurality of computing elements corresponding to the failure states based at least on an initial state of the plurality of computing elements by applying a plurality of recovery rules to the failure states, and for outputting the recovery states for subsequent analysis, the failure criteria regarding a plurality of failures of the plurality of computing elements,

wherein each failure comprises one of a single hardware failure within the plurality of computing elements and a single software failure within the plurality of computing elements, the failures comprising at least three failures;

wherein the failure criteria comprise all possible combinations of one, two, and three of the failures;

and wherein one of the recovery rules comprises doing nothing.

Assignments (20)
RELEASE OF SECURITY INTEREST REEL/FRAME 035656/0251 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: BORLAND SOFTWARE CORPORATION; ATTACHMATE CORPORATION; NETIQ CORPORATION; MICRO FOCUS (US), INC.; MICRO FOCUS SOFTWARE INC. (F/K/A NOVELL, INC.)
Reel/Frame 062623/0009 →
RELEASE OF SECURITY INTEREST REEL/FRAME 044183/0718 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: MICRO FOCUS LLC (F/K/A ENTIT SOFTWARE LLC); BORLAND SOFTWARE CORPORATION; MICRO FOCUS (US), INC.; SERENA SOFTWARE, INC; ATTACHMATE CORPORATION; MICRO FOCUS SOFTWARE INC. (F/K/A NOVELL, INC.); NETIQ CORPORATION
Reel/Frame 062746/0399 →
RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME - 042388/0386 AND REEL/FRAME - 044183/0577 Recorded Mar 18, 2019
From: JPMORGAN CHASE BANK, N.A.
To: SUSE LLC
Reel/Frame 048628/0221 →
RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME - : 044183/0718 Recorded Mar 18, 2019
From: JPMORGAN CHASE BANK, N.A.
To: SUSE LLC
Reel/Frame 048628/0436 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 20, 2019
From: MICRO FOCUS SOFTWARE INC.
To: SUSE LLC
Reel/Frame 048379/0548 →
CORRECTIVE ASSIGNMENT TO CORRECT THE TO CORRECT TYPO IN APPLICATION NUMBER 10708121 WHICH SHOULD BE 10708021 PREVIOUSLY RECORDED ON REEL 042388 FRAME 0386. ASSIGNOR(S) HEREBY CONFIRMS THE NOTICE OF SUCCESSION OF AGENCY. Recorded Jul 26, 2018
From: BANK OF AMERICA, N.A., AS PRIOR AGENT
To: JPMORGAN CHASE BANK, N.A., AS SUCCESSOR AGENT
Reel/Frame 048793/0832 →
SECURITY INTEREST Recorded Oct 11, 2017
From: ATTACHMATE CORPORATION; BORLAND SOFTWARE CORPORATION; NETIQ CORPORATION; MICRO FOCUS (US), INC.; MICRO FOCUS SOFTWARE, INC.; ENTIT SOFTWARE LLC; ARCSIGHT, LLC; SERENA SOFTWARE, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 044183/0718 →
NOTICE OF SUCCESSION OF AGENCY Recorded May 2, 2017
From: BANK OF AMERICA, N.A., AS PRIOR AGENT
To: JPMORGAN CHASE BANK, N.A., AS SUCCESSOR AGENT
Reel/Frame 042388/0386 →
CHANGE OF NAME Recorded Sep 13, 2016
From: NOVELL, INC.
To: MICRO FOCUS SOFTWARE INC.
Reel/Frame 040020/0703 →
SECURITY INTEREST Recorded May 13, 2015
From: MICRO FOCUS (US), INC.; BORLAND SOFTWARE CORPORATION; ATTACHMATE CORPORATION; NETIQ CORPORATION; NOVELL, INC.
To: BANK OF AMERICA, N.A.
Reel/Frame 035656/0251 →
RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 028252/0316 Recorded Nov 24, 2014
From: CREDIT SUISSE AG
To: NOVELL, INC.
Reel/Frame 034469/0057 →
RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 028252/0216 Recorded Nov 24, 2014
From: CREDIT SUISSE AG
To: NOVELL, INC.
Reel/Frame 034470/0680 →
GRANT OF PATENT SECURITY INTEREST SECOND LIEN Recorded May 23, 2012
From: NOVELL, INC.
To: CREDIT SUISSE AG, AS COLLATERAL AGENT
Reel/Frame 028252/0316 →
GRANT OF PATENT SECURITY INTEREST FIRST LIEN Recorded May 23, 2012
From: NOVELL, INC.
To: CREDIT SUISSE AG, AS COLLATERAL AGENT
Reel/Frame 028252/0216 →
RELEASE OF SECURITY IN PATENTS SECOND LIEN (RELEASES RF 026275/0018 AND 027290/0983) Recorded May 22, 2012
From: CREDIT SUISSE AG, AS COLLATERAL AGENT
To: NOVELL, INC.
Reel/Frame 028252/0154 →
RELEASE OF SECURITY INTEREST IN PATENTS FIRST LIEN (RELEASES RF 026270/0001 AND 027289/0727) Recorded May 22, 2012
From: CREDIT SUISSE AG, AS COLLATERAL AGENT
To: NOVELL, INC.
Reel/Frame 028252/0077 →
GRANT OF PATENT SECURITY INTEREST (SECOND LIEN) Recorded May 13, 2011
From: NOVELL, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 026275/0018 →
GRANT OF PATENT SECURITY INTEREST Recorded May 12, 2011
From: NOVELL, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 026270/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 1, 2006
From: ROBERTSON, ALAN
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 018329/0297 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 26, 2006
From: BEEKHOF, ANDREW J.
To: NOVELL, INC.
Reel/Frame 018176/0132 →