IP Library Granted Patent US 11,909,637
Granted Patent B2
US 11,909,637 · App. 17/376,106 · Granted Feb 20, 2024

Orchestration of tenant overlay network constructs

Inventors: Akshay Kale (Sunnyvale, CA); Anil Lohiya (Cupertino, CA); Fang Peng (Saratoga, CA); Maheedhar Nallapareddy (Newark, CA); Jianjun Shen (Redwood City, CA)
Assignee: VMware LLC
H04L45/64H04L12/4641H04L12/66H04L41/0806H04L45/586
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 11,909,637
App. No.
17/376,106
Granted
Feb 20, 2024
Kind
B2
Abstract

A method for creating overlay networking constructs to establish network connectivity between virtual routers and remote physical gateways is provided. An orchestrator receives a mapping between tenant network identifiers for multiple tenant networks and overlay network identifiers for multiple overlay networks. The orchestrator attaches a virtual router to a parent logical port of an overlay logical switch for connectivity between a physical gateway and the multiple tenant networks. The orchestrator creates multiple child logical ports that are sub-interfaces of the parent logical port. Each child logical port is uniquely identified by a tenant network identifier. The orchestrator connects multiple child logical switches to the multiple child logical ports according to the received mapping. Each child logical switch is uniquely identified by an overlay network identifier. The orchestrator establishes multiple overlay networks based on the child logical switches to tunnel data between the physical gateway and the child logical ports.

Claims (31)

1. A method for connecting a physical gateway to a plurality of virtual local area networks (VLANs), the method comprising:

on a host computer that executes a virtual router and a virtual switch:

receiving a mapping between (i) VLAN identifiers for a plurality of tenant networks and (ii) overlay virtual network identifiers (VNIs) for a plurality of overlay networks associated with the plurality of tenant networks;

associating an interface of the virtual router with a parent logical port of the virtual switch in order to facilitate connectivity between the physical gateway and the plurality of tenant networks;

creating, for each particular tenant network, a child port on the virtual switch to serve as an interface for the particular tenant network, each particular child port associated with a particular VNI of the particular tenant network for which the particular child port is created;

associating the plurality of child ports with a plurality of child logical switches each of which is associated with one tenant network; and

for a packet received at the parent logical port of the virtual switch, (i) using the received mapping to map the packet's associated VLAN identifier to a particular VNI specified for a particular tenant network, (ii) passing the packet to the child port associated with the particular VNI, and (iii) sending the packet to the physical gateway from the particular child port along a tunnel with the associated particular VNI embedded in a header of the tunnel.

2. The method of claim 1 , wherein the host computer is a particular host computer, wherein the virtual router, the virtual switch, the plurality of child ports, and the plurality of child logical switches are implemented by one or more host computers running virtualization software including the particular host computer.

3. The method of claim 1 , wherein the plurality of overlay networks are virtual extensible local area networks (VXLANs).

4. The method of claim 1 , wherein each overlay network carries data traffic that is tagged with a VLAN identifier and encapsulated with a corresponding VNI according to the mapping.

5. The method of claim 1 , further comprising validating the mapping between the VLAN identifiers and VNIs based on a pool of available VNIs.

6. The method of claim 1 , wherein receiving the mapping comprises exposing an application program interface (API) and receiving a definition and update of the mapping from the API.

7. The method of claim 6 , further comprising receiving, from the API, an overlay transport zone definition that identifies a collection of host computers that are within a span of the virtual switch.

8. The method of claim 1 , wherein the virtual router comprises two or more parent logical ports, each parent logical port associated with a plurality of child ports.

9. The method of claim 1 , wherein a first tenant has a first mapping between VLAN identifiers and VNIs and a second tenant has a second mapping between VLAN identifiers and VNIs, wherein a particular VLAN identifier is mapped to a first VNI for the first tenant and is mapped to a second, different VNI for the second tenant.

10. A computing device comprising:

one or more processors; and

a computer-readable storage medium storing a plurality of computer-executable components that are executable by the one or more processors to perform a plurality of actions for connecting a physical gateway to a plurality of virtual local area networks (VLANs), the plurality of actions comprising:

receiving a mapping between (i) VLAN identifiers for a plurality of tenant networks and (ii) overlay virtual network identifiers (VNIs) for a plurality of overlay networks associated with the plurality of tenant networks;

associating an interface of a virtual router executing on the computing device with a parent logical port of a virtual switch executing on the computing device, in order to facilitate connectivity between the physical gateway and the plurality of tenant networks;

creating, for each particular tenant network, a child port on the virtual switch to serve as an interface for the particular tenant network, each particular child port associated with a particular VNI of the particular tenant network for which the particular child port is created;

associating the plurality of child ports with a plurality of child logical switches each of which is associated with one tenant network; and

for a packet received at the parent logical port of the virtual switch, (i) using the received mapping to map the packet's associated VLAN identifier to a particular VNI specified for a particular tenant network, (ii) passing the packet to the child port associated with the particular VNI, and (iii) sending the packet to the physical gateway from the particular child port along a tunnel with the associated particular VNI embedded in a header of the tunnel.

11. The computing device of claim 10 , wherein the host computer is a particular host computer, wherein the virtual router, the virtual switch, the plurality of child ports, and the plurality of child logical switches are implemented by one or more host computers running virtualization software including the particular host computer.

12. The computing device of claim 10 , wherein the plurality of overlay networks are virtual extensible local area networks (VXLANs).

13. The computing device of claim 10 , wherein each overlay network carries data traffic that is tagged with a VLAN identifier and encapsulated with a corresponding VNI according to the mapping.

14. The computing device of claim 10 , wherein the plurality of actions further comprises validating the mapping between the VLAN identifiers and VNIs based on a pool of available VNIs.

15. The computing device of claim 10 , wherein receiving the mapping comprises exposing an application program interface (API) and receiving a definition and update of the mapping from the API.

16. The computing device of claim 15 , wherein the plurality of actions further comprises receiving, from the API, an overlay transport zone definition that identifies a collection of host computers that are within a span of the virtual switch.

17. The computing device of claim 10 , wherein the virtual router comprises two or more parent logical ports, each parent logical port associated with a plurality of child ports.

18. The computing device of claim 10 , wherein a first tenant has a first mapping between VLAN identifiers and VNIs and a second tenant has a second mapping between VLAN identifiers and VNIs, wherein a particular VLAN identifier is mapped to a first VNI for the first tenant and is mapped to a second, different VNI for the second tenant.

Assignments (2)
CHANGE OF NAME Recorded Feb 27, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 066692/0103 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 22, 2021
From: KALE, AKSHAY; LOHIYA, ANIL; PENG, FANG; NALLAPAREDDY, MAHEEDHAR; SHEN, JIANJUN
To: VMWARE, INC.
Reel/Frame 058187/0858 →
Continuity (1)
Related Publication 20230013269A1 · Jan 19, 2023
Cited By (2)
US 12,316,531 US 12,634,167