IP Library Granted Patent US 12689550
Granted Patent B1
US 12689550 · App. 18/662,350 · Granted Jul 21, 2026

Stateful multi-node high availability

Inventors: Umesh Mangla (Sunnyvale, CA); Xiaodong Zhu (Fremont, CA); Dilip H. Sanghavi (San Ramon, CA); Avinash Kumar Singh (Fremont, CA); Sai Sundar Ramamurthy (Sunnyvale, CA); Ashwin M. Kovummal (Newark, CA)
Assignee: Hewlett Packard Enterprise Development LP
H04L41/0661
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 12689550
App. No.
18/662,350
Granted
Jul 21, 2026
Kind
B1
Abstract

A first node communicates, via a high availability link, initialization information with a second node and thereby configures the first node as an active node for a first service redundancy group (SRG) and as a backup node for a second SRG. The first node also causes a first ingress floating IP address to be associated with an ingress link of the first node and a first egress floating IP address to be associated with an egress link of the first node, wherein the first ingress floating IP address is associated with the first SRG and the first egress floating IP address is associated with the first SRG. The first node communicates, via the high availability link, SRG state information with the second node and updates a data structure based on the SRG state information.

Claims (82)

1 . A processor-implemented method, comprising:

causing, by a system, creation of a group of nodes that includes a first node and a second node,

wherein the first node is configured with a first ingress floating Internet protocol (IP) address associated with an ingress link of the first node and a first egress floating IP address associated with an egress link of the first node, and the second node is configured with a second ingress floating IP address associated with an ingress link of the second node and a second egress floating IP address associated with an egress link of the second node, and

wherein the first node is configured as an active node for a first service redundancy group (SRG) and as a backup node for a second SRG, and the second node is configured as a backup node for the first SRG and as an active node for the second SRG;

sending, by the system, ingress information that indicates that the first ingress floating IP address is associated with the first SRG and that the second ingress floating IP address is associated with the second SRG; and

sending, by the system, egress information that indicates that the first egress floating IP address is associated with the first SRG and that the second egress floating IP address is associated with the second SRG.

2 . The processor-implemented method of claim 1 , wherein causing the creation of the group of nodes comprises:

identifying a serverless compute function for creating nodes; and

causing execution of the serverless compute function.

3 . The processor-implemented method of claim 1 , wherein sending the ingress information comprises:

sending the ingress information to an ingress node,

wherein sending the ingress information to the ingress node allows the ingress node to register the first ingress floating IP address as associated with the first SRG and the second ingress floating IP address as associated with the second SRG.

4 . The processor-implemented method of claim 1 , wherein sending the egress information comprises:

sending the egress information to an endpoint device,

wherein sending the egress information to the endpoint device allows the endpoint device to register the first egress floating IP address as associated with the first SRG and the second egress floating IP address as associated with the second SRG.

5 . The processor-implemented method of claim 1 , further comprising:

identifying a failure event associated with a failed node of the group of nodes; and

causing deletion of the failed node and creation of a replacement node for the group of nodes.

6 . The processor-implemented method of claim 5 , wherein causing the deletion of the failed node and the creation of the replacement node for the group of nodes comprises:

identifying a serverless compute function for deleting and creating nodes; and

causing the serverless compute function to be executed.

7 . A first node, comprising:

one or more memories; and

one or more processors to:

communicate, via a high availability link, initialization information with a second node;

configure, based on communicating the initialization information with the second node, the first node as an active node for a first service redundancy group (SRG) and as a backup node for a second SRG;

cause, based on communicating the initialization information with the second node, a first ingress floating Internet protocol (IP) address to be associated with an ingress link of the first node and a first egress floating IP address to be associated with an egress link of the first node,

wherein the first ingress floating IP address is associated with the first SRG and the first egress floating IP address is associated with the first SRG;

send, via the high availability link, first SRG state information associated with the first SRG to the second node;

receive, via the high availability link, second SRG state information associated with the second SRG from the second node; and

update a data structure based on the first SRG state information and the second SRG state information.

8 . The first node of claim 7 , wherein the one or more processors are further to:

receive, via the ingress link, traffic associated with the first SRG; and

send, via the egress link, at least a portion of the traffic associated with the first SRG.

9 . The first node of claim 7 , wherein the one or more processors are further to:

communicate, via the high availability link, node health information with the second node;

determine, based on communicating the node health information with the second node, that the second node is a failed node;

configure, based on determining that the second node is a failed node, the first node as an active node for the second SRG; and

cause, based on determining that the second node is a failed node, a second ingress floating IP address to be associated with the ingress link of the first node and a second egress floating IP address to be associated with the egress link of the first node,

wherein the second ingress floating IP address is associated with the second SRG and the second egress floating IP address is associated with the second SRG.

10 . The first node of claim 9 , wherein the one or more processors are further to:

receive, via the ingress link, traffic associated with the first SRG and the second SRG; and

send, via the egress link, at least a portion of the traffic associated with the first SRG and the second SRG.

11 . The first node of claim 9 , wherein the one or more processors are further to:

identify, after determining that the second node is a failed node, that a replacement second node is available;

communicate, via another high availability link, other initialization information with the replacement second node;

configure, based on communicating the other initialization information with the replacement second node, the first node as a backup node for the second SRG; and

cause, based on communicating the other initialization information with the replacement second node, the second ingress floating IP address to cease being associated with the ingress link of the first node and the second egress floating IP address to cease being associated with the egress link of the first node.

12 . The first node of claim 11 , wherein the one or more processors are further to:

send, via the other high availability link, other first SRG state information associated with the first SRG to the replacement second node;

receive, via the other high availability link, other second SRG state information associated with the second SRG from the replacement second node; and

update the data structure based on the other first SRG state information and the other second SRG state information.

13 . The first node of claim 11 , wherein the one or more processors are further to:

receive, via the ingress link, traffic associated with the first SRG; and

send, via the egress link, at least a portion of the traffic associated with the first SRG.

14 . A non-transitory computer-readable medium storing a set of instructions, the set of instructions comprising:

one or more instructions that, when executed by one or more processors of a first node, cause the first node to:

configure the first node as an active node for a first service redundancy group (SRG) and as a backup node for a second SRG; and

cause a first ingress floating Internet protocol (IP) address to be associated with an ingress link of the first node and a first egress floating IP address to be associated with an egress link of the first node,

wherein the first ingress floating IP address is associated with the first SRG and the first egress floating IP address is associated with the first SRG.

15 . The non-transitory computer-readable medium of claim 14 , wherein the one or more instructions, when executed by the one or more processors, further cause the first node to:

send, via a high availability link, first SRG state information associated with the first SRG to a second node; and

receive, via the high availability link, second SRG state information associated with the second SRG from the second node.

16 . The non-transitory computer-readable medium of claim 14 , wherein the one or more instructions, when executed by the one or more processors, further cause the first node to:

receive, via the ingress link, traffic associated with the first SRG; and

send, via the egress link, at least a portion of the traffic associated with the first SRG.

17 . The non-transitory computer-readable medium of claim 14 , wherein the one or more instructions, when executed by the one or more processors, further cause the first node to:

determine that a second node is a failed node,

wherein the second node is an active node for the second SRG;

configure, based on determining that the second node is a failed node, the first node as an active node for the second SRG; and

cause, based on determining that the second node is a failed node, a second ingress floating IP address to be associated with the ingress link of the first node and a second egress floating IP address to be associated with the egress link of the first node,

wherein the second ingress floating IP address is associated with the second SRG and the second egress floating IP address is associated with the second SRG.

18 . The non-transitory computer-readable medium of claim 17 , wherein the one or more instructions, when executed by the one or more processors, further cause the first node to:

receive, via the ingress link, traffic associated with the first SRG and the second SRG; and

send, via the egress link, at least a portion of the traffic associated with the first SRG and the second SRG.

19 . The non-transitory computer-readable medium of claim 17 , wherein the one or more instructions, when executed by the one or more processors, further cause the first node to:

identify, after determining that the second node is a failed node, that a replacement second node is available;

configure, based on identifying that the replacement second node is available, the first node as a backup node for the second SRG; and

cause, based on identifying that the replacement second node is available, the second ingress floating IP address to cease being associated with the ingress link of the first node and the second egress floating IP address to cease being associated with the egress link of the first node.

20 . The non-transitory computer-readable medium of claim 19 , wherein the one or more instructions, when executed by the one or more processors, further cause the first node to:

receive, via the ingress link, traffic associated with the first SRG; and

send, via the egress link, at least a portion of the traffic associated with the first SRG.