IP Library Granted Patent US 12,255,804
Granted Patent B2
US 12,255,804 · App. 18/227,655 · Granted Mar 18, 2025

Edge device implanting a logical network that spans across multiple routing tables

Inventors: Ankur Dubey (Santa Clara, CA); Sami Boutros (Union City, CA); Yashika Narang (Sunnyvale, CA); Vinay Kumar Ganeshmal Jain (San Jose, CA); Meenakshi Sundaram Selvaraj (Pleasanton, CA)
Assignee: VMWare LLC
H04L45/021H04L12/4633H04L12/4645H04L12/66H04L41/0803H04L41/0893H04L45/02H04L45/028H04L45/04H04L45/24H04L45/42H04L45/44H04L45/50H04L45/54H04L45/586H04L45/64H04L45/74H04L49/252H04L49/65H04L49/70H04L61/2592H04L61/5007H04L67/289H04L2101/622H04L2212/00
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 12,255,804
App. No.
18/227,655
Granted
Mar 18, 2025
Kind
B2
Abstract

Some embodiments provide a method for configuring an edge computing device to implement a logical router belonging to a logical network. The method configures a datapath executing on the edge computing device to use a first routing table associated with the logical router for processing data messages routed to the logical router. The method configures a routing protocol application executing on the edge computing device to (i) use the first routing table for exchanging routes with a network external to the logical network and (ii) use a second routing table for exchanging routes with other edge computing devices that implement the logical router.

Claims (47)

1. A method for implementing a logical router belonging to a logical network, the method comprising:

at a routing protocol application that executes on an edge computing device implementing the logical router:

exchanging routes from a first routing table associated with the logical router in a first routing protocol session with an external physical router in a network external to the logical network; and

exchanging routes from a second routing table in a second routing protocol session with another edge computing device that also implements the logical router,

wherein a datapath also executing on the edge computing device uses the first routing table and not the second routing table for processing data messages routed to the logical router;

wherein:

a network manager that manages the logical network configures the routing protocol application to use the first and second routing tables respectively for the first and second routing protocol sessions; and

the network manager configures the first routing table by adding routes relating to the logical network to the first routing table such that the datapath routes data messages received from the external network to destinations in the logical network using the first routing table.

2. The method of claim 1 , wherein the logical network is implemented in a datacenter, wherein the logical router implements a connection of the logical network to one or more networks external to the datacenter.

3. The method of claim 1 , wherein the first and second routing tables are virtual routing and forwarding (VRF) tables.

4. The method of claim 1 further comprising automatically importing routes from the first routing table to the second routing table so that the imported routes are exchanged with the other edge computing device in the second routing protocol session.

5. The method of claim 1 , wherein:

the edge computing device implements a plurality of logical routers and the datapath uses separate respective routing tables associated with each of the respective logical routers for processing data messages routed to the respective logical routers; and

the method further comprises:

exchanging routes from the respective routing tables in respective routing protocol sessions with respective external physical routers in networks external to the logical network; and

exchanging routes from the second routing table in additional routing protocol sessions with other edge computing devices that also implement the respective logical routers.

6. The method of claim 5 further comprising automatically importing routes from the respective separate routing tables to the second routing table so that the imported routes are exchanged with the other edge computing devices.

7. The method of claim 6 further comprising tagging the routes imported to the second routing table to distinguish between the respective logical routers so that the other edge computing devices only add routes to their routing tables for logical routers with which the routes are associated.

8. The method of claim 1 , wherein:

the logical router is stretched across a plurality of datacenters; and

the edge computing device operates in a first one of the datacenter and the other edge computing device operates in a second one of the datacenters.

9. The method of claim 8 , wherein the edge device is a first edge device and the other edge device is a second edge device that executes another routing protocol application, wherein the other routing protocol application:

exchanges routes in a third routing protocol session with a second external physical router located in a different network external to the logical network; and

exchange routes learned from the second external physical router in the second routing protocol session with the first edge device.

10. A non-transitory machine-readable medium storing a routing protocol application for execution by at least one processing unit of an edge computing device that implements a logical router belonging to a logical network, the routing protocol application comprising sets of instructions for:

exchanging routes from a first routing table associated with the logical router in a first routing protocol session with an external physical router in a network external to the logical network; and

exchanging routes from a second routing table in a second routing protocol session with another edge computing device that also implements the logical router,

wherein a datapath also executing on the edge computing device uses the first routing table and not the second routing table for processing data messages routed to the logical router;

wherein:

the edge computing device implements a plurality of logical routers and the datapath uses separate respective routing tables associated with each of the respective logical routers for processing data messages routed to the respective logical routers; and

the routing protocol application further comprises sets of instructions for:

exchanging routes from the respective routing tables in respective routing protocol sessions with respective external physical routers in networks external to the logical network; and

exchanging routes from the second routing table in additional routing protocol sessions with other edge computing devices that also implement the respective logical routers.

11. The non-transitory machine-readable medium of claim 10 , wherein the logical network is implemented in a datacenter, wherein the logical router implements a connection of the logical network to one or more networks external to the datacenter.

12. The non-transitory machine-readable medium of claim 10 , wherein the first and second routing tables are virtual routing and forwarding (VRF) tables.

13. The non-transitory machine-readable medium of claim 10 , wherein the routing protocol application further comprises a set of instructions for automatically importing routes from the first routing table to the second routing table so that the imported routes are exchanged with the other edge computing device in the second routing protocol session.

14. The non-transitory machine-readable medium of claim 10 , wherein:

a network manager that manages the logical network configures the routing protocol application to use the first and second routing tables respectively for the first and second routing protocol sessions; and

the network manager configures the first routing table by adding routes relating to the logical network to the first routing table such that the datapath routes data messages received from the external network to destinations in the logical network using the first routing table.

15. The non-transitory machine-readable medium of claim 10 , wherein the routing protocol application further comprises a set of instructions for automatically importing routes from the respective separate routing tables to the second routing table so that the imported routes are exchanged with the other edge computing devices.

16. The non-transitory machine-readable medium of claim 15 , wherein the routing protocol application further comprises a set of instructions for tagging the routes imported to the second routing table to distinguish between the respective logical routers so that the other edge computing devices only add routes to their routing tables for logical routers with which the routes are associated.

17. The non-transitory machine-readable medium of claim 10 , wherein:

the logical router is stretched across a plurality of datacenters; and

the edge computing device operates in a first one of the datacenter and the other edge computing device operates in a second one of the datacenters.

18. The non-transitory machine-readable medium of claim 17 , wherein the edge device is a first edge device and the other edge device is a second edge device that executes another routing protocol application, wherein the other routing protocol application:

exchanges routes in a third routing protocol session with a second external physical router located in a different network external to the logical network; and

exchange routes learned from the second external physical router in the second routing protocol session with the first edge device.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 12, 2025
From: DUBEY, ANKUR; BOUTROS, SAMI; NARANG, YASHIKA; JAIN, VINAY KUMAR GANESHMAL; SELVARAJ, MEENAKSHI
To: VMWARE, INC.
Reel/Frame 070197/0019 →
CHANGE OF NAME Recorded Feb 27, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 066692/0103 →