IP Library Granted Patent US 10,447,581
Granted Patent B2
US 10,447,581 · App. 15/444,343 · Granted Oct 15, 2019

Failure handling at logical routers according to a non-preemptive mode

Inventors: Ankur Dubey (Palo Alto, CA); Sami Boutros (Palo Alto, CA)
Assignee: NICIRA, INC.
H04L45/28H04L45/586H04L41/0668H04L41/0816
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 10,447,581
App. No.
15/444,343
Granted
Oct 15, 2019
Kind
B2
Abstract

Example methods are provided to handle failure at one or more logical routers according to a non-preemptive mode. The method may include in response to detecting, by a first routing component operating in a standby state, a failure associated with a second routing component operating in an active state, generating a control message that includes a non-preemptive code to instruct the second routing component not to operate in the active state after a recovery from the failure, sending the control message to the second routing component, and performing a state transition from the standby state to the active state. The method may also include in response to detecting, by the first routing component operating in the active state, network traffic during the failure or after the recovery of the second routing component, forwarding the network traffic from the first network to the second network, or from the second network to the first network.

Claims (74)

1. A method to handle failure at a logical router according to a non-preemptive mode, wherein the logical router includes a first routing component and a second routing component that connect a first network with a second network, and the method comprises:

in response to detecting, by the first routing component operating in a standby state, a failure associated with the second routing component operating in an active state,

generating, by the first routing component, a control message that includes a non-preemptive code to instruct the second routing component not to operate in the active state after a recovery from the failure, wherein the non-preemptive mode is implemented at a particular tier or particular tiers from multiple tiers of the logical router based on the non-preemptive code;

sending, by the first routing component, the control message to the second routing component; and

performing, by the first routing component, a state transition from the standby state to the active state; and

in response to detecting, by the first routing component operating in the active state, network traffic during the failure or after the recovery of the second routing component,

forwarding the network traffic, by the first routing component, from the first network to the second network, or from the second network to the first network according to the non-preemptive mode at the particular tier or the particular tiers.

2. The method of claim 1 , wherein generating the control message comprises:

configuring the non-preemptive code to implement the non-preemptive mode at the particular tier from multiple tiers of the logical router, wherein the first routing component and second routing component reside on the particular tier.

3. The method of claim 1 , wherein generating the control message comprises:

configuring the non-preemptive code to implement the non-preemptive mode at the multiple tiers of the logical router, wherein the first routing component and second routing component reside on one of the multiple tiers.

4. The method of claim 1 , wherein generating the control message comprises:

configuring the non-preemptive code to implement the non-preemptive mode for a particular service associated with the first routing component and second routing component.

5. The method of claim 1 , wherein the method further comprises:

prior to detecting the failure, performing, by the first routing component operating in an initialization state, a state transition to the standby state in response to determination that the second routing component is operating in the active state.

6. The method of claim 5 , wherein the method further comprises:

performing the state transition from the initialization state to the standby state by configuring an inferior routing metric associated with the first routing component; and

performing the state transition from the standby state to the active state by removing the inferior routing metric to attract the network traffic from the second network.

7. The method of claim 5 , wherein the method further comprises:

performing the state transition from the initialization state to the standby state by configuring a datapath transit link connecting the first routing component and a third routing component of the logical router to be down; and

performing the state transition from the standby state to the active state by configuring the datapath transit link to be up to forward the network traffic to and from the third routing component.

8. The method of claim 1 , wherein detecting the failure comprises at least one of the following:

detecting the failure associated with a fault detection session between a first edge node supporting the first routing component and a second edge node supporting the second routing component; and

receiving a control message from the second routing component reporting that the failure has occurred at the second routing component.

9. A non-transitory computer-readable storage medium that includes a set of instructions which, in response to execution by a processor of an edge device supporting a first routing component, cause the processor to implement a method of failure handling at a logical router according to a non-preemptive mode, wherein the logical router includes the first routing component and a second routing component that connect a first network with a second network, and the method comprises:

in response to detecting, by the first routing component operating in a standby state, a failure associated with the second routing component operating in an active state,

generating, by the first routing component, a control message that includes a non-preemptive code to instruct the second routing component not to operate in the active state after a recovery from the failure, wherein the non-preemptive mode is implemented at a particular tier or particular tiers from multiple tiers of the logical router based on the non-preemptive code;

sending, by the first routing component, the control message to the second routing component; and

performing, by the first routing component, a state transition from the standby state to the active state; and

in response to detecting, by the first routing component operating in the active state, network traffic during the failure or after the recovery of the second routing component,

forwarding the network traffic, by the first routing component, from the first network to the second network, or from the second network to the first network according to the non-preemptive mode at the particular tier or the particular tiers.

10. The non-transitory computer-readable storage medium of claim 9 , wherein generating the control message comprises:

configuring the non-preemptive code to implement the non-preemptive mode at the particular tier from multiple tiers of the logical router, wherein the first routing component and second routing component reside on the particular tier.

11. The non-transitory computer-readable storage medium of claim 9 , wherein generating the control message comprises:

configuring the non-preemptive code to implement the non-preemptive mode at the multiple tiers of the logical router, wherein the first routing component and second routing component reside on one of the multiple tiers.

12. The non-transitory computer-readable storage medium of claim 9 , wherein generating the control message comprises:

configuring the non-preemptive code to implement the non-preemptive mode for a particular service associated with the first routing component and second routing component.

13. The non-transitory computer-readable storage medium of claim 9 , wherein the method further comprises:

prior to detecting the failure, performing, by the first routing component operating in an initialization state, a state transition to the standby state in response to determination that the second routing component is operating in the active state.

14. The non-transitory computer-readable storage medium of claim 13 , wherein the method further comprises:

performing the state transition from the initialization state to the standby state by configuring an inferior routing metric associated with the first routing component; and

performing the state transition from the standby state to the active state by removing the inferior routing metric to attract the network traffic from the second network.

15. The non-transitory computer-readable storage medium of claim 13 , wherein the method further comprises:

performing the state transition from the initialization state to the standby state by configuring a datapath transit link connecting the first routing component and a third routing component of the logical router to be down; and

performing the state transition from the standby state to the active state by configuring the datapath transit link to be up to forward the network traffic to and from the third routing component.

16. The non-transitory computer-readable storage medium of claim 9 , wherein detecting the failure comprises at least one of the following:

detecting the failure associated with a fault detection session between a first edge node supporting the first routing component and a second edge node supporting the second routing component; and

receiving a control message from the second routing component reporting that the failure has occurred at the second routing component.

17. An edge device configured to implement a first routing component to handle failure at a logical router according to a non-preemptive mode, wherein the logical router includes the first routing component and a second routing component that connect a first network with a second network, and the edge device comprises:

a processor; and

a non-transitory computer-readable medium having stored thereon instructions that, when executed by the processor, cause the processor to:

in response to detecting, by the first routing component operating in a standby state, a failure associated with the second routing component operating in an active state,

generate, by the first routing component, a control message that includes a non-preemptive code to instruct the second routing component not to operate in the active state after a recovery from the failure, wherein the non-preemptive mode is implemented at a particular tier or particular tiers from multiple tiers of the logical router based on the non-preemptive code;

send, by the first routing component, the control message to the second routing component; and

perform, by the first routing component, a state transition from the standby state to the active state; and

in response to detecting, by the first routing component operating in the active state, network traffic during the failure or after the recovery of the second routing component,

forward the network traffic, by the first routing component, from the first network to the second network, or from the second network to the first network according to the non-preemptive mode at the particular tier or the particular tiers.

18. The edge device of claim 17 , wherein the instructions for generating the control message cause the processor to:

configure the non-preemptive code to implement the non-preemptive mode at the particular tier from multiple tiers of the logical router, wherein the first routing component and second routing component reside on the particular tier.

19. The edge device of claim 17 , wherein the instructions for generating the control message cause the processor to:

configure the non-preemptive code to implement the non-preemptive mode at the multiple tiers of the logical router, wherein the first routing component and second routing component reside on one of the multiple tiers.

20. The edge device of claim 17 , wherein the instructions for generating the control message cause the processor to:

configure the non-preemptive code to implement the non-preemptive mode for a particular service associated with the first routing component and second routing component.

21. The edge device of claim 17 , wherein the instructions further cause the processor to:

prior to detecting the failure, perform, by the first routing component operating in an initialization state, a state transition to the standby state in response to determination that the second routing component is operating in the active state.

22. The edge device of claim 21 , wherein the instructions further cause the processor to:

perform the state transition from the initialization state to the standby state by configuring an inferior routing metric associated with the first routing component; and

perform the state transition from the standby state to the active state cause the processor to remove the inferior routing metric to attract the network traffic from the second network.

23. The edge device of claim 21 , wherein the instructions further cause the processor to:

perform the state transition from the initialization state to the standby state by configuring a datapath transit link between the first routing component and a third routing component of the logical router to be down; and

perform the state transition from the standby state to the active state by configuring the datapath transit link to be up to receive or send the network traffic via the third routing component.

24. The edge device of claim 17 , wherein the instructions for detecting the failure cause the processor to perform at least one of the following:

detect the failure associated with a fault detection session between the edge device supporting the first routing component and a second edge device supporting the second routing component; and

receive a control message from the second routing component reporting that the failure has occurred at the second routing component.

Assignments (2)
MERGER Recorded Jan 27, 2025
From: NICIRA, INC.
To: VMWARE LLC
Reel/Frame 070187/0487 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 28, 2017
From: DUBEY, ANKUR; BOUTROS, SAMI
To: NICIRA, INC.
Reel/Frame 041404/0690 →
Continuity (1)
Related Publication 20180248785A1 · Aug 30, 2018