IP Library Granted Patent US 7,096,388
Granted Patent B2
US 7,096,388 · App. 09/924,983 · Granted Aug 22, 2006

Fault tolerance software system with periodic external self-test failure detection

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,096,388
App. No.
09/924,983
Granted
Aug 22, 2006
Kind
B2
Abstract

Fault tolerance is improved in a computing system which includes one or more computing machines by (i) executing a control thread or other control program in conjunction with a fault tolerance software system running on at least one of the machines, and (ii) initiating via the control program a test script program which sends one or more requests to a monitored program. The test script program also processes corresponding responses to the one or more requests, and generates a return value utilizable by the control program to indicate a failure condition in the monitored program. The computing system may be configured in accordance with a client-server architecture, with the fault tolerance software system and the monitored program both running on a server of the system. The test script program is preferably implemented in an object-oriented programming language such as Java, such that one or more components of the test script program comprise a base class from which one or more other components of the test script program are generatable for use with the monitored program.

Claims (23)

1. A method for use in providing improved fault tolerance in a computing system comprising at least one computing machine, the method comprising the steps of:

executing a control program in conjunction with a fault tolerance software system running on the at least one computing machine; and

initiating via the control program a test script program which sends one or more requests to a monitored program, wherein the test script program processes corresponding responses to the one or more requests, and generates at least one return value utilizable by the control program to indicate a failure condition in the monitored program.

2. The method of claim 1 wherein the computing system is configured in accordance with a client-server architecture and the at least one computing machine comprises a server of the computing system.

3. The method of claim 1 wherein the control program comprises a control thread of a failure detection process associated with a failure detection component of the fault tolerance software system.

4. The method of claim 1 wherein the control program comprises a thread of a failure detection process and the test script program comprises a process separate from the failure detection process.

5. The method of claim 1 wherein the control program comprises a thread of a failure detection process and the test script program comprises a thread of the same failure detection process.

6. The method of claim 1 wherein the test script program is implemented in an object-oriented programming language such that one or more components of the test script program comprise a base class from which one or more other components of the test script program are generatable for use with the monitored program.

7. The method of claim 6 wherein the object-oriented programming language comprises the Java programming language.

8. The method of claim 6 wherein the one or more components comprising the base class comprise one or more of an initialization component, an obtain requests component, and a request interruption component.

9. The method of claim 8 wherein the one or more other components generatable from the base class comprise a request issuance component and a response verification component, both particular to the monitored program.

10. The method of claim 9 wherein for each of the requests specified in the obtain requests component, that component creates corresponding ones of the request issuance component and the request interruption component, and wherein the request interruption component terminates the corresponding request if a response from the monitored program is not received within a designated period of time.

11. The method of claim 1 wherein the control program initiates a persistent program, and the persistent program periodically initiates the test script program.

12. The method of claim 11 wherein the persistent program comprises at least one of a thread and a process.

13. The method of claim 11 wherein the persistent program receives the return value from the test script program and delivers it to the control program.

14. The method of claim 1 wherein the test script program comprises an interpreted script.

15. The method of claim 1 wherein the test script program comprises a native executable.

16. The method of claim 1 wherein the test script program comprises byte code.

17. An apparatus for use in providing improved fault tolerance in a computing system, the apparatus comprising:

at least one computing machine having a processor and a memory, the processor being operatively coupled to the memory, wherein the processor is operative: (i) to execute a control program in conjunction with a fault tolerance software system running on the at least one computing machine, and (ii) to initiate via the control program a test script program which sends one or more requests to a monitored program, wherein the test script program processes corresponding responses to the one or more requests, and generates at least one return value utilizable by the control program to indicate a failure condition in the monitored program.

18. A storage medium for storing program code for use in providing improved fault tolerance in a computing system comprising at least one computing machine, wherein the program code when executed on the at least one computing machine performs the steps of:

executing a control program in conjunction with a fault tolerance software system running on the at least one computing machine; and

initiating via the control program a test script program which sends one or more requests to a monitored program, wherein the test script program processes corresponding responses to the one or more requests, and generates at least one return value utilizable by the control program to indicate a failure condition in the monitored program.

Assignments (27)
(SECURITY INTEREST) GRANTOR'S NAME CHANGE Recorded Sep 21, 2023
From: AVAYA INC.
To: AVAYA LLC
Reel/Frame 065019/0231 →
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 53955/0436) Recorded May 18, 2023
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: AVAYA MANAGEMENT L.P.; AVAYA INC.; INTELLISIST, INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC
Reel/Frame 063705/0023 →
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 61087/0386) Recorded May 18, 2023
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: AVAYA MANAGEMENT L.P.; AVAYA INC.; INTELLISIST, INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC
Reel/Frame 063690/0359 →
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 045034/0001) Recorded May 18, 2023
From: GOLDMAN SACHS BANK USA., AS COLLATERAL AGENT
To: AVAYA INC.; INTELLISIST, INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC; OCTEL COMMUNICATIONS LLC; VPNET TECHNOLOGIES, INC.; ZANG, INC. (FORMER NAME OF AVAYA CLOUD INC.); HYPERQUALITY, INC.; HYPERQUALITY II, LLC; CAAS TECHNOLOGIES, LLC; AVAYA MANAGEMENT L.P.
Reel/Frame 063779/0622 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded May 4, 2023
From: AVAYA INC.; AVAYA MANAGEMENT L.P.; INTELLISIST, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 063542/0662 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded May 3, 2023
From: AVAYA MANAGEMENT L.P.; AVAYA INC.; INTELLISIST, INC.; KNOAHSOFT INC.
To: WILMINGTON SAVINGS FUND SOCIETY, FSB [COLLATERAL AGENT]
Reel/Frame 063742/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS AT REEL 45124/FRAME 0026 Recorded Apr 26, 2023
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: AVAYA HOLDINGS CORP.; AVAYA INC.; AVAYA MANAGEMENT L.P.; AVAYA INTEGRATED CABINET SOLUTIONS LLC
Reel/Frame 063457/0001 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Aug 5, 2022
From: AVAYA INC.; INTELLISIST, INC.; AVAYA MANAGEMENT L.P.; AVAYA CABINET SOLUTIONS LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 061087/0386 →
BANKRUPTCY COURT ORDER RELEASING THE SECURITY INTEREST RECORDED AT REEL/FRAME 020156/0149 Recorded Jul 25, 2022
From: CITIBANK, N.A., AS ADMINISTRATIVE AGENT
To: AVAYA, INC.; AVAYA TECHNOLOGY LLC; OCTEL COMMUNICATIONS LLC; VPNET TECHNOLOGIES
Reel/Frame 060953/0412 →
SECURITY INTEREST Recorded Sep 25, 2020
From: AVAYA INC.; AVAYA MANAGEMENT L.P.; INTELLISIST, INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 053955/0436 →
SECURITY INTEREST Recorded Jan 23, 2018
From: AVAYA INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC; OCTEL COMMUNICATIONS LLC; VPNET TECHNOLOGIES, INC.; ZANG, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 045124/0026 →
SECURITY INTEREST Recorded Jan 10, 2018
From: AVAYA INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC; OCTEL COMMUNICATIONS LLC; VPNET TECHNOLOGIES, INC.; ZANG, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 045034/0001 →
RELEASE OF SECURITY INTEREST Recorded Jan 9, 2018
From: CITICORP USA, INC.
To: AVAYA, INC.; SIERRA HOLDINGS CORP.; AVAYA TECHNOLOGY, LLC; OCTEL COMMUNICATIONS LLC; VPNET TECHNOLOGIES, INC.
Reel/Frame 045032/0213 →
BANKRUPTCY COURT ORDER RELEASING ALL LIENS INCLUDING THE SECURITY INTEREST RECORDED AT REEL/FRAME 041576/0001 Recorded Dec 15, 2017
From: CITIBANK, N.A.
To: AVAYA INC.; AVAYA INTEGRATED CABINET SOLUTIONS INC.; OCTEL COMMUNICATIONS LLC (FORMERLY KNOWN AS OCTEL COMMUNICATIONS CORPORATION); VPNET TECHNOLOGIES, INC.
Reel/Frame 044893/0531 →
BANKRUPTCY COURT ORDER RELEASING ALL LIENS INCLUDING THE SECURITY INTEREST RECORDED AT REEL/FRAME 025863/0535 Recorded Dec 15, 2017
From: THE BANK OF NEW YORK MELLON TRUST, NA
To: AVAYA INC.
Reel/Frame 044892/0001 →
BANKRUPTCY COURT ORDER RELEASING ALL LIENS INCLUDING THE SECURITY INTEREST RECORDED AT REEL/FRAME 012759/0141 Recorded Dec 15, 2017
From: THE BANK OF NEW YORK
To: AVAYA INC. (FORMERLY KNOWN AS AVAYA TECHNOLOGY CORP.)
Reel/Frame 044891/0439 →
BANKRUPTCY COURT ORDER RELEASING ALL LIENS INCLUDING THE SECURITY INTEREST RECORDED AT REEL/FRAME 030083/0639 Recorded Dec 15, 2017
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
To: AVAYA INC.
Reel/Frame 045012/0666 →
SECURITY INTEREST Recorded Jan 27, 2017
From: AVAYA INC.; AVAYA INTEGRATED CABINET SOLUTIONS INC.; OCTEL COMMUNICATIONS CORPORATION; VPNET TECHNOLOGIES, INC.
To: CITIBANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 041576/0001 →
SECURITY AGREEMENT Recorded Mar 13, 2013
From: AVAYA, INC.
To: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., THE
Reel/Frame 030083/0639 →
SECURITY AGREEMENT Recorded Feb 22, 2011
From: AVAYA INC., A DELAWARE CORPORATION
To: BANK OF NEW YORK MELLON TRUST, NA, AS NOTES COLLATERAL AGENT, THE
Reel/Frame 025863/0535 →
CONVERSION FROM CORP TO LLC Recorded Dec 29, 2008
From: AVAYA TECHNOLOGY CORP.
To: AVAYA TECHNOLOGY LLC
Reel/Frame 022071/0420 →
REASSIGNMENT Recorded Jun 27, 2008
From: AVAYA TECHNOLOGY LLC
To: AVAYA INC
Reel/Frame 021158/0319 →
SECURITY AGREEMENT Recorded Nov 28, 2007
From: AVAYA, INC.; AVAYA TECHNOLOGY LLC; OCTEL COMMUNICATIONS LLC; VPNET TECHNOLOGIES, INC.
To: CITICORP USA, INC., AS ADMINISTRATIVE AGENT
Reel/Frame 020166/0705 →
SECURITY AGREEMENT Recorded Nov 27, 2007
From: AVAYA, INC.; AVAYA TECHNOLOGY LLC; OCTEL COMMUNICATIONS LLC; VPNET TECHNOLOGIES, INC.
To: CITIBANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 020156/0149 →
SECURITY AGREEMENT Recorded Apr 9, 2002
From: AVAYA TECHNOLOGY CORP.
To: BANK OF NEW YORK, THE
Reel/Frame 012759/0141 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 26, 2002
From: AVAYA INC.
To: AVAYA TECHNOLOGIES CORP.
Reel/Frame 012702/0533 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 8, 2001
From: SINGH, NAVJOT; TSAI, TIMOTHY
To: AVAYA INC.
Reel/Frame 012067/0627 →