IP Library Granted Patent US 8,176,364
Granted Patent B1
US 8,176,364 · App. 12/334,644 · Granted May 8, 2012

Method and system for providing high availability to computer applications

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,176,364
App. No.
12/334,644
Granted
May 8, 2012
Kind
B1
Abstract

A system and method for assigning application specific IP addresses to individual applications. The system may be operable to assign a unique IP address to an application, and alias the application IP address to a NIC IP address on the host where the application is running. In an exemplary embodiment, the system may be further operable to migrate the application IP address to a new host as part of a migration, and alias the application IP address to a NIC in the new host as part of the migration.

Claims (46)

1. A method of assigning a unique IP address to one or more applications running on a host with a host IP address on an IP-based network, the method comprising:

preloading a shared library for each one or more applications on said host; and

aliasing said unique IP address of the one or more applications, by the shared library, to a NIC IP address on a first host where the one or more applications are running;

wherein said unique IP address is unique within the IP address space of said IP network;

wherein said unique IP address is assigned to each of the one or more applications by the preloaded shared library;

wherein said one or more applications do not require at least one of source-code modification, recompilation, re-linking, or re-configuration to be used with said unique IP address.

2. The method according to claim 1 , wherein the one or more applications are standard applications.

3. The method according to claim 1 , wherein the one or more applications are operating system services.

4. The method according to claim 1 , wherein the unique IP address is used by external client applications to communicate with the one or more applications.

5. The method according to claim 1 , wherein the one or more applications can be addressed independently of the first host upon which the applications are running at any given point in time.

6. The method according to claim 1 , further comprising:

migrating the one or more applications' IP address to a second host as part of a migration of the one or more applications; and

aliasing the one or more applications' IP address to a NIC in the second host as part of the migration;

capturing a state of the one or more applications' TCP/IP connections on the first host and transferring said state to the TCP/IP stack on the second host as part of the migration; and

setting a state of the TCP/IP stack on the second host to said transferred state for the one or more applications' connections;

wherein

a local TCP/IP stack on the second host starts processing TCP/IP connections for said one or more applications after said aliasing of IP address and said transferring of state.

7. The method according to claim 6 , wherein the migration of the one or more applications from the first host to the second host is hidden from external client applications by transferring the applications' IP address from the first host to the second host.

8. The method according to claim 6 , whereupon failure of the one or more applications, the method further comprises re-establishing connections to the second host.

9. The method according to claim 6 , wherein aliasing of the unique IP address is provided as a system level function.

10. The method according to claim 6 , wherein the one or more applications can be addressed independently of the first host and the second host while running at any given point in time.

11. A non-transitory computer readable storage medium storing a computer program having instructions for migrating one or more applications across hosts networked on an IP-network, wherein the computer program performs steps comprising:

preloading a shared library for each one or more applications;

assigning a unique IP address, by the shared library, to the one or more applications;

aliasing the IP address of the one or more applications, by the shared library, to a NIC IP address on a first host where the one or more applications are running;

migrating the IP address of the one or more applications to a second host as part of a migration; and

aliasing the IP address to a NIC in the second host as part of the migration, wherein said IP address is unique within the IP address space of said IP network;

wherein said one or more applications do not require at least one of source-code modification, recompilation, re-linking, or re-configuration to be used with said unique IP address.

12. The non-transitory computer readable storage medium according to claim 11 , further comprising when the one or more applications fail on the first host, the computer program performs the step of migrating the applications' IP address with the applications.

13. The non-transitory computer readable storage medium according to claim 11 , further comprising when the one or more applications fail on the first host, the computer program performs the step of re-establishing a connection to the second host.

14. The non-transitory computer readable storage medium according to claim 11 , wherein the migration of the one or more applications from the first host to the second host is hidden from external client applications by transferring the applications' IP address from the first host to the second host.

15. The non-transitory computer readable storage medium according to claim 11 , wherein the one or more applications is at least one of standard applications, operating system services, operating system programs, and virtual machine programs.

16. The non-transitory computer readable storage medium according to claim 11 , wherein aliasing of the applications' IP address is provided as a system level function.

17. A system for migration of one or more applications among servers during failure of the one or more applications, the system comprising:

an Internet Protocol (IP)-based communications network;

a first server structured to run the one or more applications;

a second server in communication with the first server, and structured to operate as a back-up server for the first server; and

at least one computer readable medium associated with the first server and the second server, the one or more computer readable medium including a computer program having instructions for migrating the one or more applications between the first server and the second server, wherein the computer program performs steps comprising:

preloading a shared library for each one or more applications;

assigning a unique IP address, by the shared library, to the one or more applications;

aliasing the IP address of the one or more applications, by the shared library, to a NIC IP on a first server where the one or more applications are running;

migrating the IP address of the one or more applications to the second server as part of a migration; and

aliasing the IP address to a NIC in the second server as part of the migration; wherein said IP address is unique within the IP address space of said IP network;

wherein said one or more applications do not require at least one of source-code modification, recompilation, re-linking, or re-configuration to be used with said unique IP address.

18. The system according to claim 17 , wherein the computer program is operable to alias the IP address for the one or more applications as a system level function.

19. The system according to claim 17 , wherein the one or more applications can be addressed independently of the first server upon which the applications are running at any given point in time.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 20, 2012
From: OPEN INVENTION NETWORK, LLC
To: RED HAT, INC.
Reel/Frame 028994/0382 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 15, 2008
From: HAVEMOSE, ALLAN
To: OPEN INVENTION NETWORK LLC
Reel/Frame 021979/0001 →