IP Library Patent Application 18765837
Patent Application
App. No. 18/765,837

INTER-CLUSTER COMMUNICATION

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 None
App. No.
18/765,837
Filed
Jul 8, 2024
Examiner
NOWLIN, ERIC
Art Unit
2474
USPC
370/254
Abstract

Various embodiments set forth a computer-readable media storing program instructions that, when executed by one or more processors, cause the processors to perform steps of maintaining, by a first node of a first cluster, a respective first open transport control protocol (TCP) connection with each of a plurality of second nodes in a second cluster; maintaining, by a third node of the first cluster, a second open TCP connection with the first node, wherein the third node is prevented from establishing a TCP connection with any of the plurality of second nodes; and sending, by the third node, a message to the second cluster by sending the message to the first node via the second open TCP connection, wherein the first node is configured to forward the message to one of the second nodes via a corresponding one of the respective first open TCP connections.

Claims (75)

1 . One or more non-transitory computer-readable media storing program instructions that, when executed by one or more processors, cause the one or more processors to perform steps of:

maintaining, by a first node of a first cluster, a respective first open transport control protocol (TCP) connection with each of a plurality of second nodes in a second cluster;

maintaining, by a third node of the first cluster, a second open TCP connection with the first node, wherein the third node is prevented from establishing a TCP connection with any of the plurality of second nodes; and

sending, by the third node, a message to the second cluster by sending the message to the first node via the second open TCP connection, wherein the first node is configured to forward the message to one of the second nodes via a corresponding one of the respective first open TCP connections.

2 . The one or more non-transitory computer-readable media of claim 1 , wherein the first node is a leader node that opens the respective first open TCP connection with each of the plurality of second nodes in response to being elected as a leader in the first cluster.

3 . The one or more non-transitory computer-readable media of claim 1 , wherein the third node is a non-leader node that opens the second open TCP connection with the first node in response to the first node being elected as a leader in the first cluster.

4 . The one or more non-transitory computer-readable media of claim 1 , wherein the steps further comprise:

receiving, by the first node, a second message from one of the second nodes via the corresponding one of the respective first open TCP connections; and

sending, by the first node, the second message to the third node via the second open TCP connection.

5 . The one or more non-transitory computer-readable media of claim 1 , wherein the first cluster is included in a public cloud computing system, a private cloud computing system, or a hybrid cloud computing system.

6 . The one or more non-transitory computer-readable media of claim 1 , wherein a firewall prevents the second nodes from establishing TCP connections with the first node or the third node.

7 . The one or more non-transitory computer-readable media of claim 1 , wherein the steps further comprise:

sending, by the third node, a request to a connection database for an identifier of a node in the second cluster; and

receiving, by the third node, an identifier of the first node in response to the request.

8 . The one or more non-transitory computer-readable media of claim 7 , wherein the identifier of the first node is included in the response based on a determination that the third node is a non-leader node of the first cluster.

9 . The one or more non-transitory computer-readable media of claim 7 , wherein:

the response to the request from the third node includes respective identifiers of nodes in the first cluster; and

the steps, further comprise selecting, by the third node, the identifier of the first node from the respective identifiers.

10 . The one or more non-transitory computer-readable media of claim 7 , wherein the identifier is an address of the first node.

11 . The one or more non-transitory computer-readable media of claim 1 , wherein the steps further comprise:

sending, by the first node, a request to a connection database for an identifier of a node in the second cluster; and

receiving, by the first node an identifier of one of the plurality of second nodes in response to the request.

12 . The one or more non-transitory computer-readable media of claim 11 , wherein the identifier of the one of the plurality of second nodes is included in the response based on a determination that the first node is a leader node of the first cluster.

13 . A computer-implement method comprising:

maintaining, by a first node of a first cluster, a respective first open transport control protocol (TCP) connection with each of a plurality of second nodes in a second cluster;

maintaining, by a third node of the first cluster, a second open TCP connection with the first node, wherein the third node is prevented from establishing a TCP connection with any of the plurality of second nodes; and

sending, by the third node, a message to the second cluster by sending the message to the first node via the second open TCP connection, wherein the first node is configured to forward the message to one of the second nodes via a corresponding one of the respective first open TCP connections.

14 . The computer-implement method of claim 13 , wherein the first node is a leader node that opens the respective first open TCP connection with each of the plurality of second nodes in response to being elected as a leader in the first cluster.

15 . The computer-implement method of claim 13 , wherein the third node is a non-leader node that opens the second open TCP connection with the first node in response to the first node being elected as a leader in the first cluster.

16 . The computer-implement method of claim 13 , further comprising:

receiving, by the first node, a second message from one of the second nodes via the corresponding one of the respective first open TCP connections; and

sending, by the first node, the second message to the third node via the second open TCP connection.

17 . The computer-implement method of claim 13 , wherein the first cluster is included in a public cloud computing system, a private cloud computing system, or a hybrid cloud computing system.

18 . The computer-implement method of claim 13 , wherein a firewall prevents the second nodes from establishing TCP connections with the first node or the third node.

19 . The computer-implement method of claim 13 , further comprising:

sending, by the third node, a request to a connection database for an identifier of a node in the second cluster; and

receiving, by the third node, an identifier of the first node in response to the request.

20 . The computer-implement method of claim 19 , wherein the identifier of the first node is included in the response based on a determination that the third node is a non-leader node of the first cluster.

21 . The computer-implement method of claim 19 , wherein:

the response to the request from the third node includes respective identifiers of nodes in the first cluster; and

the method further comprises selecting, by the third node, the identifier of the first node from the respective identifiers.

22 . The computer-implement method of claim 19 , wherein the identifier is an address of the first node.

23 . The computer-implement method of claim 13 , further comprising:

sending, by the first node, a request to a connection database for an identifier of a node in the second cluster; and

receiving, by the first node an identifier of one of the plurality of second nodes in response to the request.

24 . The computer-implement method of claim 23 , wherein the identifier of the one of the plurality of second nodes is included in the response based on a determination that the first node is a leader node of the first cluster.

25 . A first cluster comprising one or more processors executing one or more instructions to provide:

a first node configured to maintain a respective first open transport control protocol (TCP) connection with each of a plurality of second nodes in a second cluster; and

a third node configured to:

maintain a second open TCP connection with the first node, wherein the third node is prevented from establishing a TCP connection with any of the plurality of second nodes; and

send a message to the second cluster by sending the message to the first node via the second open TCP connection;

wherein the first node is further configured to forward the message to one of the second nodes via a corresponding one of the respective first open TCP connections.

26 . The first cluster of claim 25 , wherein:

the first node is a leader node; and

the first node is further configured to open the respective first open TCP connection with each of the plurality of second nodes in response to being elected as a leader in the first cluster.

27 . The first cluster of claim 25 , wherein:

the third node is a non-leader node; and

the third node is further configured to open the second open TCP connection with the first node in response to the first node being elected as a leader in the first cluster.

28 . The first cluster of claim 25 , wherein the first node is further configured to:

receive a second message from one of the second nodes via the corresponding one of the respective first open TCP connections; and

send the second message to the third node via the second open TCP connection.

29 . The first cluster of claim 25 , wherein the first cluster is included in a public cloud computing system, a private cloud computing system, or a hybrid cloud computing system.

30 . The first cluster of claim 25 , wherein a firewall prevents the second nodes from establishing TCP connections with the first node or the third node.

31 . The first cluster of claim 25 , wherein the third node is further configured to:

send a request to a connection database for an identifier of a node in the second cluster; and

receive an identifier of the first node in response to the request.

32 . The first cluster of claim 31 , wherein the identifier of the first node is included in the response based on a determination that the third node is a non-leader node of the first cluster.

33 . The first cluster of claim 31 , wherein:

the response to the request from the third node includes respective identifiers of nodes in the first cluster; and

the third node is further configured to select the identifier of the first node from the respective identifiers.

34 . The first cluster of claim 31 , wherein the identifier is an address of the first node.

35 . The first cluster of claim 25 , wherein the first node is further configured to:

send a request to a connection database for an identifier of a node in the second cluster; and

receive an identifier of one of the plurality of second nodes in response to the request.

36 . The first cluster of claim 35 , wherein the identifier of the one of the plurality of second nodes is included in the response based on a determination that the first node is a leader node of the first cluster.

Assignments (2)
SECURITY INTEREST Recorded Feb 13, 2025
From: NUTANIX, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 070206/0463 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 2, 2024
From: ARORA, AASHRAY; JALTADE, ADITYA VILAS; BHARDWAJ, RISHI
To: NUTANIX, INC.
Reel/Frame 068765/0220 →