IP Library Granted Patent US 10,091,161
Granted Patent B2
US 10,091,161 · App. 15/146,339 · Granted Oct 2, 2018

Assignment of router ID for logical routers

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,091,161
App. No.
15/146,339
Granted
Oct 2, 2018
Kind
B2
Abstract

Some embodiments provide a method for determining a router identifier for a centralized routing component of a logical router. The method determines that a dynamic routing protocol is enabled for the centralized routing component. When a router identifier was previously stored for the centralized routing component, the method assigns the stored router identifier as the router identifier for the centralized routing component only when the stored router identifier matches one of a set of valid addresses for the centralized routing component. When the centralized routing component does not have a previously stored router identifier that matches one of the set of valid addresses, the method assigns one of the set of valid addresses as the router identifier for the centralized routing component according to a hierarchy among the set of valid addresses.

Claims (29)

1. A method comprising:

determining that a dynamic routing protocol is enabled for a centralized routing component of a logical router, wherein the dynamic routing protocol allows the centralized routing component to exchange routes with at least one physical router;

based on the determination that the dynamic routing protocol is enabled, determining whether a router identifier was previously stored for the centralized routing component;

when a router identifier was previously stored for the centralized routing component, assigning the stored router identifier as a router identifier for the centralized routing component to use for the dynamic routing protocol only when the stored router identifier matches one of a set of valid addresses for the centralized routing component; and

when the centralized routing component does not have a previously stored router identifier that matches one of the set of valid addresses, assigning one of the set of valid addresses as the router identifier for the centralized routing component to use for the dynamic routing protocol according to a hierarchy among the set of valid addresses.

2. The method of claim 1 , wherein the logical router comprises a plurality of centralized routing components and a distributed routing component.

3. The method of claim 2 , wherein each centralized routing component is implemented on a single host machine and the distributed routing component is implemented on a plurality of host machines, including the host machines of each centralized routing component.

4. The method of claim 1 , wherein the at least one physical router operates in a network external to the logical network.

5. The method of claim 1 , wherein the method is performed by a network controller operating on a host machine with the centralized routing component.

6. The method of claim 5 , wherein the network controller assigns router identifiers for a plurality of centralized routing components of different logical routers that operate on the host machine.

7. The method of claim 5 , wherein dynamic routing protocol operations using the assigned router identifier are performed by a separate component operating on the host machine.

8. The method of claim 1 , wherein the set of valid addresses comprises addresses of one or more uplink interfaces of the logical router that are assigned to the centralized routing component.

9. The method of claim 8 , wherein the set of valid addresses further comprises an address of a loopback interface of the centralized routing component, wherein the loopback interface address is assigned as the router identifier for the centralized routing component.

10. The method of claim 8 , wherein the centralized routing component does not have a loopback interface assigned, wherein a highest address of the uplink interface addresses is assigned as the router identifier for the centralized routing component.

11. The method of claim 8 , wherein the centralized routing component does not have a loopback interface assigned, wherein a lowest address of the uplink interface addresses is assigned as the router identifier for the centralized routing component.

12. The method of claim 8 , wherein the logical router comprises additional uplink interfaces that are assigned to different centralized routing components.

13. A non-transitory machine readable medium storing a program for execution by at least one processing unit, the program comprising sets of instructions for:

determining that a dynamic routing protocol is enabled for a centralized routing component of a logical router, wherein the dynamic routing protocol allows the centralized routing component to exchange routes with at least one physical router;

based on the determination that the dynamic routing protocol is enabled, determining whether a router identifier was previously stored for the centralized routing component;

when a router identifier was previously stored for the centralized routing component, assigning the stored router identifier as a router identifier for the centralized routing component to use for the dynamic routing protocol only when the stored router identifier matches one of a set of valid addresses for the centralized routing component; and

when the centralized routing component does not have a previously stored router identifier that matches one of the set of valid addresses, assigning one of the set of valid addresses as the router identifier for the centralized routing component to use for the dynamic routing protocol according to a hierarchy among the set of valid addresses.

14. The non-transitory machine readable medium of claim 13 , wherein the logical router comprises a plurality of centralized routing components and a distributed routing component, wherein each centralized routing component is implemented on a single host machine and the distributed routing component is implemented on a plurality of host machines including the host machines of each centralized routing component.

15. The non-transitory machine readable medium of claim 13 , wherein the at least one physical router operates in a network external to the logical network.

16. The non-transitory machine readable medium of claim 13 , wherein the program is a network controller application executing on a host machine on which the centralized routing component also executes.

17. The non-transitory machine readable medium of claim 16 , wherein the network controller application further comprises a set of instructions for assigning router identifiers for a plurality of centralized routing components of different logical routers that also execute on the host machine.

18. The non-transitory machine readable medium of claim 16 , wherein a separate component also executes on the host machine to perform dynamic routing protocol operations using the assigned router identifier.

19. The non-transitory machine readable medium of claim 13 , wherein the set of valid addresses comprises addresses of one or more uplink interfaces of the logical router that are assigned to the centralized routing component.

20. The non-transitory machine readable medium of claim 19 , wherein the set of valid addresses further comprises addresses of one or more loopback interfaces of the centralized routing component, wherein one of the loopback interface addresses is assigned as the router identifier for the centralized routing component.

21. The non-transitory machine readable medium of claim 19 , wherein the centralized routing component does not have a loopback interface assigned, wherein a highest address of the uplink interface addresses is assigned as the router identifier for the centralized 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 May 4, 2016
From: DUBEY, ANKUR; BOUTROS, SAMI
To: NICIRA, INC.
Reel/Frame 038456/0911 →
Cited By (2)
US 12,255,804 US 12,353,180