IP Library Granted Patent US 8,990,824
Granted Patent B2
US 8,990,824 · App. 13/096,460 · Granted Mar 24, 2015

System and method for automated virtual network configuration

Inventors: Chandrasekharan Nilakantan (Cupertino, CA); Gary Lewis (San Jose, CA); Lawrence Stein (San Carlos, CA)
Assignee: Dell Products L.P.
G06F9/45558G06F2009/45595
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 8,990,824
App. No.
13/096,460
Filed
Apr 28, 2011
Granted
Mar 24, 2015
Kind
B2
Art Unit
2195
USPC
718/1
Abstract

A method of automatically configuring a data network, the data network including a controller and a virtualization host with a hypervisor installed thereon, the method including creating a virtual switch in the hypervisor and communicatively coupling the virtual switch to a first physical network interface in the virtualization host. Further, the method includes receiving a request to boot an operating system image in a virtual machine in the hypervisor, the operating system image having network connectivity requirements. The method also includes creating a first virtual port in the virtual switch based upon the network connectivity requirements of the operating system image and creating a first virtual network adapter in the virtual machine in the hypervisor. Further, the method includes communicatively coupling the first virtual network adapter to the first virtual port in the virtual switch and configuring networking attributes of the first virtual network adapter in the virtual machine.

Claims (74)

1. A method of automatically configuring a data network, the data network including a controller and a virtualization host with a hypervisor installed thereon, the method comprising:

determining, on the virtualization host in combination with the controller, a channel associated with a first physical network interface in the virtualization host, wherein the channel defines the connectivity provided by the first physical network interface to a plurality of virtual local area networks (VLANs);

determining, on the virtualization host in combination with the controller, that the channel is associated with a second physical network interface in the virtualization host, wherein the channel defines the connectivity provided by the second physical network interface to the plurality of VLANs;

automatically creating, on the virtualization host in combination with the controller, a virtual switch in the hypervisor for the channel that defines the connectivity provided by the first physical network interface to the plurality of VLANs;

communicatively coupling, on the virtualization host in combination with the controller, the virtual switch to the first physical network interface;

communicatively coupling, on the virtualization host in combination with the controller, the virtual switch to the second physical network interface;

teaming the first physical network interface with the second physical network interface together utilizing the virtual switch;

receiving a request, at the controller, to boot an operating system image in a virtual machine in the hypervisor, the operating system image requiring connectivity to at least one or more VLANs;

creating, on the virtualization host in combination with the controller, a virtual port in the virtual switch for each of the one or more VLANs that the operating system image requires connectivity to;

creating, on the virtualization host in combination with the controller for each virtual port that was created, a virtual network adapter in the virtual machine in the hypervisor;

communicatively coupling, on the virtualization host in combination with the controller, each virtual network adapter that was created to a respective virtual port that was created in the virtual switch; and

configuring, on the virtualization host in combination with the controller, networking attributes of each virtual network adapter in the virtual machine based upon the one or more VLANs that the operating system image requires connectivity to.

2. The method of claim 1 , wherein the channel defines the connectivity provided by the first physical network interface to a subset of the plurality of VLANs in the data network.

3. The method of claim 1 , wherein the creating a virtual port for each of the one or more VLANs that the operating system requires connectivity to further comprises:

creating, on the virtualization host in combination with the controller, a first virtual port and associating the first virtual port with a first VLAN of the one or more VLANs that the operating system image requires connectivity to.

4. The method of claim 3 , wherein the creating a virtual port for each of the one or more VLANs that the operating system requires connectivity to further comprises:

creating, on the virtualization host in combination with the controller, a second virtual port and associating the second virtual port with a second VLAN of the one or more VLANs that the operating system image requires connectivity to, wherein the second VLAN is different from the first VLAN.

5. The method of claim 4 , wherein the creating, on the virtualization host in combination with the controller, for each virtual port that was created, the virtual network adapter in the virtual machine in the hypervisor further comprises:

creating, on the virtualization host in combination with the controller, a first virtual network adapter in the virtual machine in the hypervisor; and

communicatively coupling, on the virtualization host in combination with the controller, the first virtual network adapter to the first virtual port in the virtual switch;

creating, on the virtualization host in combination with the controller, a second virtual network adapter in the virtual machine in the hypervisor; and

communicatively coupling, on the virtualization host in combination with the controller, the second virtual network adapter to the second virtual port in the virtual switch.

6. A method of configuring a data network that includes a controller, a virtualization host with a hypervisor installed thereon, and a plurality of virtual local area networks (VLANs) associated with portions of the data network, the method comprising:

determining, with the controller, which of the plurality of VLANs that each physical network interface in the virtualization host provides access to, and determining a first set of physical network interfaces that each provide access to the same VLANs;

automatically creating, on the virtualization host in combination with the controller, a first virtual switch in the hypervisor, the first virtual switch corresponding to the first set of physical network interfaces;

communicatively coupling, on the virtualization host in combination with the controller, the first virtual switch to each of the physical network interfaces in the first set of physical network interfaces;

receiving a request, at the controller, to boot an operating system image in a virtual machine in the hypervisor, the operating system image requiring connectivity to a first VLAN in the plurality of virtual VLANs and a second VLAN in the plurality of VLANs that is different from the first VLAN;

creating, on the virtualization host in combination with the controller, a first virtual port in the first virtual switch based upon the connectivity required by the operating system image to the first VLAN;

creating, on the virtualization host in combination with the controller, a second virtual port in the first virtual switch based upon the connectivity required by the operating system image to the second VLAN;

creating, on the virtualization host in combination with the controller, a first virtual network adapter in the virtual machine in the hypervisor, the first virtual network adapter corresponding to the first virtual port;

creating, on the virtualization host in combination with the controller, a second virtual network adapter in the virtual machine in the hypervisor, the second virtual network adapter corresponding to the second virtual port;

communicatively coupling, on the virtualization host in combination with the controller, the first virtual network adapter to the first virtual port in the first virtual switch;

communicatively coupling, on the virtualization host in combination with the controller, the second virtual network adapter to the second virtual port in the first virtual switch;

configuring, on the virtualization host in combination with the controller, networking attributes of the first virtual network adapter in the virtual machine based upon the connectivity required by the operating system image to the first VLAN; and

configuring, on the virtualization host in combination with the controller, networking attributes of the second virtual network adapter in the virtual machine based upon the connectivity required by the operating system image to the second VLAN.

7. The method of claim 6 , further comprising:

determining a second set of physical network interfaces in the virtualization host that each provide access to the same VLANs, the second set of physical network interfaces providing access to at least one VLAN that is different from any of the VLANs for which access is provided by the first set of physical network interfaces.

8. The method of claim 7 , further including:

automatically creating, on the virtualization host in combination with the controller, a second virtual switch in the hypervisor, the second virtual switch corresponding to the second set of physical network interfaces; and

communicatively coupling, on the virtualization host in combination with the controller, the second virtual switch to each of the physical network interfaces in the second set of physical network interfaces.

9. The method of claim 8 , wherein the operating system image requires connectivity to a second VLAN in the plurality of VLANs that is different from the first VLAN, and the method further includes:

creating, on the virtualization host in combination with the controller, a second virtual port in the second virtual switch based upon the connectivity required by the operating system image to the first VLAN;

creating, on the virtualization host in combination with the controller, a second virtual network adapter in the virtual machine in the hypervisor, the second virtual network adapter corresponding to the second virtual port;

communicatively coupling, on the virtualization host in combination with the controller, the second virtual network adapter to the second virtual port in the second virtual switch; and

configuring, on the virtualization host in combination with the controller, networking attributes of the second virtual network adapter in the virtual machine based upon the connectivity required by the operating system image to the second VLAN.

10. The method of claim 6 , wherein the first set of physical network interfaces includes a plurality of physical network interfaces, and wherein the automatically creating the first virtual switch includes teaming together the plurality of physical network interfaces in the first set of plurality of physical network interfaces.

11. The method of claim 6 , wherein configuring the networking attributes of the first virtual network adapter includes configuring layer 3 networking attributes.

12. A data network management system for managing a data network that includes a virtualization host with a hypervisor installed thereon and a plurality of virtual local area networks (VLANs) associated with portions of the data network, the system comprising:

a controller including a processor that is configured to:

determine which VLANs of the plurality of VLANs that each physical network interface in the virtualization host provides access to and determine a first set of physical network interfaces that each provide access to the same VLANs;

automatically create, in combination with the virtualization host, a first virtual switch in the hypervisor, the first virtual switch corresponding to the first set of physical network interfaces;

communicatively couple, in combination with the virtualization host, the first virtual switch to each of the physical network interfaces in the first set of physical network interfaces;

receive a request to boot an operating system image in a virtual machine in the hypervisor, the operating system image requiring connectivity to a first VLAN in the plurality of VLANs and a second VLAN of the plurality of VLANs that is different from the first VLAN;

create, in combination with the virtualization host, a first virtual port in the first virtual switch based upon the connectivity required by the operating system image to the first VLAN;

create, in combination with the virtualization host, a second virtual port in the first virtual switch based upon the connectivity required by the operating system image to the second VLAN;

create, in combination with the virtualization host, a first virtual network adapter in the virtual machine in the hypervisor, the first virtual network adapter corresponding to the first virtual port;

create, in combination with the virtualization host, a second virtual network adapter in the virtual machine in the hypervisor, the second virtual network adapter corresponding to the second virtual port;

communicatively couple, in combination with the virtualization host, the first virtual network adapter to the first virtual port in the first virtual switch;

communicatively couple, in combination with the virtualization host, the second virtual network adapter to the second virtual port in the first virtual switch;

configure, in combination with the virtualization host, networking attributes of the first virtual network adapter in the virtual machine based upon the connectivity required by the operating system image to the first VLAN; and

configure, in combination with the virtualization host, networking attributes of the second virtual network adapter in the virtual machine based upon the connectivity required by the operating system image to the second VLAN.

13. The data network management system of claim 12 , wherein the processor in the controller is further configured to:

determine a second set of physical network interfaces in the virtualization host that each provide access to the same VLANs, the second set of physical network interfaces providing access to at least one VLAN that is different from any of the VLANs for which access is provided by the first set of physical network interfaces.

14. The data network management system of claim 13 , wherein the processor in the controller is further configured to:

automatically create, in combination with the virtualization host, a second virtual switch in the hypervisor, the second virtual switch corresponding to the second set of physical network interfaces and communicatively couple the second virtual switch to each of the physical network interfaces in the second set of physical network interfaces.

15. The data network management system of claim 14 , wherein the operating system image requires connectivity to a second VLAN in the plurality of VLANs that is different from the first VLAN, and wherein the processor in the controller is further configured to:

create, in combination with the virtualization host, a second virtual port in the second virtual switch based upon the connectivity required by the operating system image to the second VLAN;

create, in combination with the virtualization host, a second virtual network adapter in the virtual machine in the hypervisor, the second virtual network adapter corresponding to the second virtual port;

communicatively couple, in combination with the virtualization host, the second virtual network adapter to the second virtual port in the first virtual switch; and

configure, in combination with the virtualization host, networking attributes of the second virtual network adapter in the virtual machine based upon the connectivity required by the operating system image to the second VLAN.

16. The data network management system of claim 12 , wherein the first set of physical network interfaces includes a plurality of physical network interfaces, and wherein the processor in the controller is further configured to:

team the plurality of physical network interfaces in the first set of plurality of physical network interfaces.

17. The data network management system of claim 12 , wherein the processor in the controller is further configured to:

configure layer 3 networking attributes of the first virtual network adapter.

Assignments (15)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061753/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061324/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 3, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL, L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058216/0001 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040136/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040134/0001 →
RELEASE OF SECURITY INTEREST Recorded Sep 14, 2016
From: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: FORCE10 NETWORKS, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.; DELL MARKETING L.P.; ASAP SOFTWARE EXPRESS, INC.; APPASSURE SOFTWARE, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL PRODUCTS L.P.; DELL USA L.P.; DELL SOFTWARE INC.
Reel/Frame 040065/0618 →
RELEASE OF SECURITY INTEREST Recorded Sep 14, 2016
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: DELL MARKETING L.P.; ASAP SOFTWARE EXPRESS, INC.; APPASSURE SOFTWARE, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL PRODUCTS L.P.; DELL USA L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040040/0001 →
RELEASE OF SECURITY INTEREST Recorded Sep 13, 2016
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: DELL MARKETING L.P.; ASAP SOFTWARE EXPRESS, INC.; APPASSURE SOFTWARE, INC.; COMPELLANT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL PRODUCTS L.P.; DELL USA L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040065/0216 →
PATENT SECURITY AGREEMENT (ABL) Recorded Jan 2, 2014
From: DELL INC.; APPASSURE SOFTWARE, INC.; ASAP SOFTWARE EXPRESS, INC.; BOOMI, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL USA L.P.; FORCE10 NETWORKS, INC.; GALE TECHNOLOGIES, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 031898/0001 →
PATENT SECURITY AGREEMENT (TERM LOAN) Recorded Jan 2, 2014
From: DELL INC.; APPASSURE SOFTWARE, INC.; ASAP SOFTWARE EXPRESS, INC.; BOOMI, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL USA L.P.; FORCE10 NETWORKS, INC.; GALE TECHNOLOGIES, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 031899/0261 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Jan 2, 2014
From: APPASSURE SOFTWARE, INC.; ASAP SOFTWARE EXPRESS, INC.; BOOMI, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL USA L.P.; FORCE10 NETWORKS, INC.; GALE TECHNOLOGIES, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS FIRST LIEN COLLATERAL AGENT
Reel/Frame 031897/0348 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 28, 2011
From: NILAKANTAN, CHANDRASEKHARAN; LEWIS, GARY; STEIN, LAWRENCE
To: DELL PRODUCTS L.P.
Reel/Frame 026195/0226 →
Continuity (1)
Related Publication 20120278802A1 · Nov 1, 2012