Externally initiated application session endpoint migration
First Claim
1. A method comprising:
- configuring, by a controller, a first network address translation rule to translate a first address of a first server to a second address of a second server for protocol data units being received at the first server from a client device;
configuring, by the controller, a second network address translation rule to translate the second address of the second server to the first address of the first server for protocol data units being transmitted to the client device from the second server; and
migrating, by the controller, an endpoint of an application communication session from the first server to the second server using the first and second network address translation rules, the migrating comprising;
transmitting, by the controller, an acknowledgement message to the first server to appear as though the client device sent the acknowledgment message, the acknowledgement message comprising an acknowledgement identifier not expected by the first server; and
transmitting, by the controller, a reset message to the first server to appear as though the client device sent the reset message, wherein the reset message is created with a sequence field set to a second acknowledgment identifier indicated in a second acknowledgement message received from the first server.
0 Assignments
0 Petitions
Accused Products
Abstract
In storage networks (e.g., SAN and NAS), various reasons can arise for migrating an application layer communication session endpoint to a different host. To achieve scalability and robustness, the migration can be enacted externally and carried out at a middlebox at the transport layer. When a migration is triggered to migrate an application layer communication session endpoint from a host A to a host B, the middlebox coordinates network address translation with a transport protocol reset mechanism to switch the connection to host B and close the connection on host A with minimal disruption to the non-migrating application layer communication session endpoint using the connection. At the application layer, the non-migrating application layer communication session endpoint will initiate a new connection in response to detecting the reset, and retry any operation that was aborted as a result of the connection switch.
-
Citations
20 Claims
-
1. A method comprising:
-
configuring, by a controller, a first network address translation rule to translate a first address of a first server to a second address of a second server for protocol data units being received at the first server from a client device; configuring, by the controller, a second network address translation rule to translate the second address of the second server to the first address of the first server for protocol data units being transmitted to the client device from the second server; and migrating, by the controller, an endpoint of an application communication session from the first server to the second server using the first and second network address translation rules, the migrating comprising; transmitting, by the controller, an acknowledgement message to the first server to appear as though the client device sent the acknowledgment message, the acknowledgement message comprising an acknowledgement identifier not expected by the first server; and transmitting, by the controller, a reset message to the first server to appear as though the client device sent the reset message, wherein the reset message is created with a sequence field set to a second acknowledgment identifier indicated in a second acknowledgement message received from the first server. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A non-transitory computer readable storage medium having stored thereon instructions for performing a method comprising machine executable code which when executed by at least one machine, causes the machine to:
-
configure, by a controller, a first network address translation rule to translate a first address of a first server to a second address of a second server for protocol data units being received at the first server from a client device; configure, by the controller, a second network address translation rule to translate the second address of the second server to the first address of the first server for protocol data units being transmitted to the client device from the second server; and migrate, by the controller, an endpoint of an application communication session from the first server to the second server using the first translation rule and the second translation rule, comprising; transmitting, by the controller, an acknowledgement message to the first server to appear as though the client device sent the acknowledgment message, the acknowledgement message comprising an acknowledgement identifier not expected by the first server; and transmitting, by the controller, a reset message to the first server to appear as though the client device sent the reset message, wherein the reset message is created with a sequence field set to a second acknowledgment identifier indicated in a second acknowledgement message received from the first server. - View Dependent Claims (10, 11, 12, 13, 14, 15)
-
-
16. A computing device comprising:
-
a memory comprising machine executable code for performing a method; and a processor coupled to the memory, the processor configured to execute the machine executable code to cause the processor to; configure, by the computing device, a first network address translation rule to translate a first address of a first server to a second address of a second server for protocol data units being received at the first server from a client device; configure, by the computing device, a second network address translation rule to translate the second address of the second server to the first address of the first server for protocol data units being transmitted to the client device from the second server; and migrate, by the computing device, an endpoint of an application communication session from the first server to the second server using the first translation rule and the second translation rule, comprising; transmitting, by the computing device, an acknowledgement message to the first server to appear as though the client device sent the acknowledgment message, the acknowledgement message comprising an acknowledgement identifier not expected by the first server; and transmitting, by the computing device, a reset message to the first server to appear as though the client device sent the reset message, wherein the reset message is created with a sequence field set to a second acknowledgment identifier indicated in a second acknowledgement message received from the first server. - View Dependent Claims (17, 18, 19, 20)
-
Specification