Back to results
US 11,706,298 B2Granted
Multichannel virtual internet protocol address affinity
AssigneeCohesity, Inc.
InventorsKrishna Ram Kuttuva Jeyaram, Vijay Panghal, Ganesha Shanmuganathan
Life of this patent
Estimating the term…
Abstract
A plurality of virtual internet protocol addresses for a first single network interface card of a node of a storage cluster are provided to a client. A separate connection is established between the client and the node for each of the plurality of virtual internet protocol addresses. The separate connections are utilized together in parallel to transfer data between the client and the node.
Claims11
A method, comprising:
- providing to a client a first group of virtual internet protocol addresses assigned to a first single network interface card of a first node of a storage cluster that includes a plurality of nodes, wherein the first group of virtual internet protocol addresses have an affinity towards the first node, and wherein the first group of virtual internet protocol addresses includes a primary virtual network address associated with the first node and one or more secondary virtual network addresses associated with the first node that the first single network interface card of the first node of the storage cluster is capable of utilizing in parallel to communicate data to and from the client after a communication session is established, wherein the client is capable of communicating with the first node using the one or more secondary virtual network addresses after communications are established using the primary virtual network address, wherein a second node of the plurality of nodes includes a second single network interface card and is associated with a second group of virtual internet protocol addresses;
- establishing between the client and the first node of the storage cluster the communication session that enables the client and the first single network interface card of the first node of the storage cluster to communicate data, in parallel, via the primary virtual network address associated with the first node and the one or more secondary virtual network addresses associated with the first node;
- performing a data management service by transferring in parallel, via the primary virtual network address associated with the first single network interface card of the first node and the one or more secondary virtual network addresses associated with the first single network interface card of the first node, data associated with the data management service from the client to the first node of the storage cluster and from the first node of the storage cluster to the client, wherein the first group of virtual internet protocol addresses are associated with one network interface card at a time during a performance of the data management service, wherein a number of transmission control protocol (TCP) connections associated with the first node is adaptively scaled up based at least in part on a detected latency between the first node and the client while the data management service is being performed, wherein each of the TCP connections is associated with a separate virtual internet protocol address;
- determining that the first node is unsuitable for communications with the client;
- migrating the first group of virtual internet protocol addresses to the second node of the storage cluster;
- resuming the data management service by establishing corresponding separate connections between the client and the second node for each of the virtual internet protocol addresses included in the first group;
- determining that the first node is suitable for communications with the client;
- and
- migrating the first group of virtual internet protocol addresses from the second node of the storage cluster back to the first node of the storage cluster.
6 more elements
A computer program product embodied in a non-transitory computer readable medium and comprising computer instructions for:
- providing to a client a first group of virtual internet protocol addresses assigned to a first single network interface card of a first node of a storage cluster that includes a plurality of nodes, wherein the first group of virtual internet protocol addresses have an affinity towards the first node, and wherein the first group of virtual internet protocol addresses includes a primary virtual network address associated with the first node and one or more secondary virtual network addresses associated with the first node that the first single network interface card of the first node of the storage cluster is capable of utilizing in parallel to communicate data to and from the client after a communication session is established, wherein the client is capable of communicating with the first node using the one or more secondary virtual network addresses after communications are established using the primary virtual network address, wherein a second node of the plurality of nodes includes a second single network interface card and is associated with a second group of virtual internet protocol addresses;
- establishing between the client and the first node of the storage cluster the communication session that enables the client and the first single network interface card of the first node of the storage cluster to communicate data, in parallel, via the primary virtual network address associated with the first node and the one or more secondary virtual network addresses associated with the first node;
- performing a data management service by transferring in parallel, via the primary virtual network address associated with the first single network interface card of the first node and the one or more secondary virtual network addresses associated with the first single network interface card of the first node, data associated with the data management service from the client to the first node of the storage cluster and from the first node of the storage cluster to the client, wherein the first group of virtual internet protocol addresses are associated with one network interface card at a time during a performance of the data management service, wherein a number of TCP connections associated with the first node is adaptively scaled up based at least in part on a detected latency between the first node and the client while the data management service is being performed, wherein each of the TCP connections is associated with a separate virtual internet protocol address;
- determining that the first node is unsuitable for communications with the client;
- migrating the first group of virtual internet protocol addresses to the second node of the storage cluster;
- resuming the data management service by establishing corresponding separate connections between the client and the second node for each of the virtual internet protocol addresses included in the first group;
- determining that the first node is suitable for communications with the client;
- and
- migrating the first group of virtual internet protocol addresses from the second node of the storage cluster back to the first node of the storage cluster.
6 more elements
A system, comprising:
- a processor configured to:
- provide to a client a first group of virtual internet protocol addresses assigned to a first single network interface card of a first node of a storage cluster that includes a plurality of nodes, wherein the first group of virtual internet protocol addresses have an affinity towards the first node, and wherein the first group of virtual internet protocol addresses includes a primary virtual network address associated with the first node and one or more secondary virtual network addresses associated with the first node that the first single network interface card of the first node of the storage cluster is capable of utilizing in parallel to communicate data to and from the client after a communication session is established, wherein the client is capable of communicating with the first node using the one or more secondary virtual network addresses after communications are established using the primary virtual network address, wherein a second node of the plurality of nodes includes a second single network interface card and is associated with a second group of virtual internet protocol addresses;
- establish between the client and the first node of the storage cluster the communication session that enables the client and the first single network interface card of the first node of the storage cluster to communicate data, in parallel, via the primary virtual network address associated with the first node and the one or more secondary virtual network addresses associated with the first node;
- perform a data management service by transferring in parallel, via the primary virtual network address associated with the first single network interface card of the first node and the one or more secondary virtual network addresses associated with the first single network interface card of the first node, data associated with the data management service from the client to the first node of the storage cluster and from the first node of the storage cluster to the client, wherein the first group of virtual internet protocol addresses are associated with one network interface card at a time during a performance of the data management service, wherein a number of TCP connections associated with the first node is adaptively scaled up based at least in part on a detected latency between the first node and the client while the data management service is being performed, wherein each of the TCP connections is associated with a separate virtual internet protocol address;
- determine that the first node is unsuitable for communications with the client;
- migrate the first group of virtual internet protocol addresses to the second node of the storage cluster;
- resume the data management service by establishing corresponding separate connections between the client and the second node for each of the virtual internet protocol addresses included in the first group;
- determine that the first node is suitable for communications with the client;
- and
- migrate the first group of virtual internet protocol addresses from the second node of the storage cluster back to the first node of the storage cluster;
- and
- a memory coupled to the processor and configured to provide the processor with instructions.
9 more elements
Dependencies are inferred from the claim text.