IP Library Granted Patent US 11,088,919
Granted Patent B1
US 11,088,919 · App. 16/906,929 · Granted Aug 10, 2021

Data structure for defining multi-site logical network

Inventors: Ganesan Chandrashekhar (Campbell, CA); Pankaj Thakkar (Cupertino, CA); Pavlush Margarian (Dublin, CA)
Assignee: VMWARE, INC.
H04L41/12H04L41/0893H04L41/22
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,088,919
App. No.
16/906,929
Granted
Aug 10, 2021
Kind
B1
Abstract

Some embodiments provide a method for managing a logical network that spans multiple physical sites. The method creates a global tree data structure for defining the logical network. The method adds at least two physical sites to the global tree data structure. The physical sites added to the global tree structure are eligible to be spanned by the logical network. The method adds multiple logical network elements to the global tree data structure. At least a subset of the logical network elements reference the physical sites in the global tree data structure in order to span to the physical sites.

Claims (59)

1. A method for managing a logical network that spans a plurality of physical sites, the method comprising:

creating a global tree data structure for defining the logical network;

adding at least two physical sites to the global tree data structure, wherein the physical sites added to the global tree structure are eligible to be spanned by the logical network; and

adding a plurality of logical network elements to the global tree data structure, at least a subset of the logical network elements referencing the physical sites in the global tree data structure in order to span to the physical sites.

2. The method of claim 1 , wherein the global tree data structure comprises a plurality of nodes and edges connecting the plurality of nodes.

3. The method of claim 1 , wherein adding a particular physical site to the global tree data structure comprises:

receiving input from a network administrator to add the particular physical site to the global tree data structure for defining the logical network;

adding a node for the particular physical site to the global tree data structure; and

automatically discovering physical network data regarding the particular physical site and adding nodes relating to the physical network data to the global tree data structure as child nodes of the node for the particular physical site.

4. The method of claim 3 , wherein the method is performed by a global network manager, wherein automatically discovering the physical network data comprises communicating with a local network manager at the particular physical site.

5. The method of claim 4 , wherein the global network manager communicates with respective local network managers at each of the respective physical sites added to the global tree data structure to automatically discover physical network data for the respective physical sites.

6. The method of claim 1 , wherein the plurality of logical network elements comprises at least one of (i) logical forwarding elements, (ii) groups of logical network endpoints, and (iii) logical network services.

7. The method of claim 1 , wherein adding the plurality of logical network elements to the global tree data structure comprises:

receiving input from a network administrator to create a logical forwarding element;

adding a node for the logical forwarding element to the global tree data structure;

receiving input from the network administrator to define a link from the logical forwarding element to a particular physical site; and

defining a reference from the logical forwarding element to the particular physical site in the global tree data structure.

8. The method of claim 7 , wherein:

the logical forwarding element is a first logical forwarding element;

a span of the first logical forwarding element that identifies the physical sites at which the first logical forwarding element is to be implemented is based on the references from the first logical forwarding element to physical sites in the global tree data structure;

adding the plurality of logical network elements to the global tree data structure further comprises:

receiving input from the network administrator (i) to create a second logical forwarding element and (ii) to link the second logical forwarding element to the first logical forwarding element; and

defining a reference from the second logical forwarding element to the first logical forwarding element; and

a span of the second logical forwarding element is based on the span of the first logical forwarding element.

9. The method of claim 1 , wherein the plurality of logical network elements comprises a plurality of logical domains, each logical domain comprising one or more references to physical sites added to the global tree structure.

10. The method of claim 9 , wherein adding the plurality of logical network elements to the global tree data structure comprises:

receiving input from a network administrator to create a logical domain and to link the logical domain to at least one of the physical sites; and

receiving input from the network administrator to define groups of logical network endpoints within the logical domain, wherein a span for the groups is based on the physical sites to which the logical domain is linked.

11. The method of claim 10 further comprising receiving definition of a set of rules that refer to the defined groups.

12. A non-transitory machine-readable medium storing a program which when executed by at least one processing unit manages a logical network that spans a plurality of physical sites, the program comprising sets of instructions for:

creating a global tree data structure for defining the logical network;

adding at least two physical sites to the global tree data structure, wherein the physical sites added to the global tree structure are eligible to be spanned by the logical network; and

adding a plurality of logical network elements to the global tree data structure, at least a subset of the logical network elements referencing the physical sites in the global tree data structure in order to span to the physical sites.

13. The non-transitory machine-readable medium of claim 12 , wherein the global tree data structure comprises a plurality of nodes and edges connecting the plurality of nodes.

14. The non-transitory machine-readable medium of claim 12 , wherein adding a particular physical site to the global tree data structure comprises:

receiving input from a network administrator to add the particular physical site to the global tree data structure for defining the logical network;

adding a node for the particular physical site to the global tree data structure; and

automatically discovering physical network data regarding the particular physical site and adding nodes relating to the physical network data to the global tree data structure as child nodes of the node for the particular physical site.

15. The non-transitory machine-readable medium of claim 14 , wherein the program is a global network manager application, wherein the set of instructions for automatically discovering the physical network data comprises a set of instructions for communicating with a local network manager application at the particular physical site.

16. The non-transitory machine-readable medium of claim 15 , wherein the global network manager communicates with respective local network managers at each of the respective physical sites added to the global tree data structure to automatically discover physical network data for the respective physical sites.

17. The non-transitory machine-readable medium of claim 12 , wherein the set of instructions for adding the plurality of logical network elements to the global tree data structure comprises sets of instructions for:

receiving input from a network administrator to create a logical forwarding element;

adding a node for the logical forwarding element to the global tree data structure;

receiving input from the network administrator to define a link from the logical forwarding element to a particular physical site; and

defining a reference from the logical forwarding element to the particular physical site in the global tree data structure.

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

the logical forwarding element is a first logical forwarding element;

a span of the first logical forwarding element that identifies the physical sites at which the first logical forwarding element is to be implemented is based on the references from the first logical forwarding element to physical sites in the global tree data structure;

the set of instructions for adding the plurality of logical network elements to the global tree data structure further comprises sets of instructions for:

receiving input from the network administrator (i) to create a second logical forwarding element and (ii) to link the second logical forwarding element to the first logical forwarding element; and

defining a reference from the second logical forwarding element to the first logical forwarding element; and

a span of the second logical forwarding element is based on the span of the first logical forwarding element.

19. The non-transitory machine-readable medium of claim 12 , wherein the plurality of logical network elements comprises a plurality of logical domains, each logical domain comprising one or more references to physical sites added to the global tree structure.

20. The non-transitory machine-readable medium of claim 19 , wherein:

the set of instructions for adding the plurality of logical network elements to the global tree data structure comprises:

receiving input from a network administrator to create a logical domain and to link the logical domain to at least one of the physical sites; and

receiving input from the network administrator to define groups of logical network endpoints within the logical domain;

a span for the groups is based on the physical sites to which the logical domain is linked; and

the program further comprises a set of instructions for receiving definition of a set of rules that refer to the defined groups.

Assignments (3)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0314 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 3, 2020
From: CHANDRASHEKHAR, GANESAN
To: VMWARE, INC.
Reel/Frame 054262/0391 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 19, 2020
From: THAKKAR, PANKAJ; MARGARIAN, PAVLUSH
To: VMWARE, INC.
Reel/Frame 052993/0780 →
Cited By (3)
US 12,212,458 US 12,255,804 US 12,399,886