Network connection failover during application service interruption
AssigneeInternational Business Machines Corporation
InventorVivek Kashyap
Life of this patent
Estimating the term…
Abstract
A system, method and computer program product for implementing network connection failover during application service interruption. While the application is quiesced, a network socket that terminates a network connection to a network peer is maintained on behalf of the application. The socket's network connection state information is sustained by providing acknowledgements of incoming network traffic to the network peer that prevent the peer from terminating the connection. Upon restart, the application is brought up with a blocked socket. The state of the blocked socket is conformed to a current network connection state of the original socket and the blocked socket is unblocked.
Claims25
A method for implementing network connection failover during application service interruption, comprising:
- quiescing a running application while maintaining a first network socket owned by said application that terminates a network connection to a network peer on behalf of said application;
- sustaining said network connection by providing acknowledgements of incoming network traffic to said network peer that prevent said network peer from terminating said connection;
- restarting said application with a blocked second socket;
- conforming a state of said blocked second socket to a current network connection state associated with said first socket;
- and
- unblocking said blocked second socket.
A system for implementing network connection failover during application service interruption, comprising:
- a source machine;
- a target machine;
- an application to be migrated from said source machine to said target machine;
- a first socket owned by said application when running on said source machine that terminates a network connection to a network peer on behalf of said application;
- socket maintaining logic adapted to maintain said first socket after said application is quiesced for migration from said source machine to said target machine platform;
- network connection sustaining logic adapted to sustain said network connection by providing acknowledgements of incoming network traffic to said network peer that prevent said network peer from terminating said connection;
- a second socket owned by said application when running on said target machine that terminates a network connection to a network peer on behalf of said application, said second socket having a blocked state and an unblocked state;
- connection state conforming logic adapted to conform a network connection state of said second socket when in said blocked state to a current network connection state of said first socket;
- and
- unblocking logic adapted to unblock said blocked socket from said blocked state to said unblocked state.
A computer program product, comprising:
- one or more data storage media;
- programming means recorded on said data storage media for programming a hardware platform to implement network connection failover during application service interruption, as by:
- quiescing a running application while maintaining a source network socket owned by said application that terminates a network connection to a network peer on behalf of said application;
- sustaining said network connection by providing acknowledgements of incoming network traffic to said network peer that prevent said network peer from terminating said connection;
- restarting said application with a blocked second socket;
- conforming a state of said blocked second socket to a current network connection state associated with said first socket;
- and
- unblocking said blocked second socket.
A method for implementing network connection failover during application service interruption, comprising:
- quiescing a running application while maintaining a network socket that terminates a network connection to a network peer on behalf of said application;
- transferring control of said socket and network connection state information associated with said socket to a connection manager, such that said socket becomes a connection manager socket;
- sustaining said network connection by providing acknowledgements of incoming network traffic to said network peer that prevent said network peer from terminating said connection;
- restarting said application with a blocked socket;
- conforming a state of said blocked socket to a current network connection state maintained by said connection manager;
- and
- unblocking said blocked socket.
A computer program, comprising:
- one or more data storage media;
- programming means recorded on said data storage media for programming a hardware platform to implement a migration manager for migrating a running application while implementing network connection failover during said migration, as by:
- quiescing a running application while maintaining a network socket that terminates a network connection to a network peer on behalf of said application;
- transferring control of said socket and network connection state information associated with said socket to a connection manager, such that said socket becomes a connection manager socket;
- sustaining said network connection by providing acknowledgements of incoming network traffic to said network peer that prevent said network peer from terminating said connection;
- restarting said application with a blocked socket;
- conforming a state of said blocked socket to a current network connection state maintained by said connection manager;
- and
- unblocking said blocked socket.
Dependencies are inferred from the claim text.