IP Library Granted Patent US 8,612,738
Granted Patent B2
US 8,612,738 · App. 13/096,061 · Granted Dec 17, 2013

System and method for automated network configuration

Inventors: Chandrasekharan Nilakantan (Cupertino, CA); Lawrence Stein (San Carlos, CA)
Assignee: Dell Products L.P.
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,612,738
App. No.
13/096,061
Filed
Apr 28, 2011
Granted
Dec 17, 2013
Kind
B2
Art Unit
2116
USPC
713/2
Abstract

A method of configuring a data network with a controller, the data network including a plurality of hosts each associated with at least one of a plurality of switches, the method including receiving a request to boot an operating system image on one of the plurality of hosts, the operating system image having network connectivity requirements. Further, the method includes selecting a host out of the plurality of hosts on which to boot the operating system image. The method also includes booting the operating system image on the host, and configuring a switch out of the plurality of switches associated with the host based upon the network connectively requirements of the operating system image. Additionally, the method includes configuring networking attributes of a network interface in the host based upon the network connectivity requirements of the operating system image.

Claims (57)

1. A method of configuring a data network with a controller, the data network including a plurality of hosts each associated with at least one of a plurality of switches, the method comprising:

receiving, at the controller, a request to boot an operating system image on one of the plurality of hosts, the operating system image having network connectivity requirements, wherein the receiving the request to boot the operating system image includes determining a first number of virtual networks in the data network to which the operating system image requires access;

automatically selecting, with the controller, a host out of the plurality of hosts on which to boot the operating system image, the selecting being based upon the network connectivity requirements of the operating system image;

booting, with the controller, the operating system image on the host;

configuring, with the controller, a switch out of the plurality of switches associated with the host based upon the network connectivity requirements of the operating system image; and

configuring, with an agent executing in the operating system image, networking attributes of a network interface in the host based upon the network connectivity requirements of the operating system image;

wherein, if the host includes a fewer number of physical network interfaces than the first number of virtual networks:

instantiating on the host a second of number of virtual network interfaces equal to the first number of virtual network in lieu of configuring the network attributes of the network interface; and

configuring layer 3 networking attributes of the second number of virtual network interfaces such that each of the second number of virtual network interfaces is communicatively coupled to a different one of the first number of virtual networks.

2. The method of claim 1 , wherein configuring the networking attributes of the network interface includes configuring the layer 3 networking attributes of the network interface.

3. The method of claim 1 , wherein the booting the operating system image includes booting an operating system containing the agent therein.

4. The method of claim 1 , wherein the selecting the host includes selecting a host with network connectivity to each of the first number of virtual networks.

5. The method of claim 4 , wherein the selecting the host further includes selecting a host with a fewer number of physical network interfaces than the first number of virtual networks only if a host with an equal or greater number of physical network interfaces than the first number of virtual networks is not available.

6. The method of claim 1 , wherein the configuring the switch includes:

placing a switch port coupled to the network interface into access mode if the host includes an equal or greater number of physical network interfaces than the first number of virtual networks; and

placing the switch port coupled to the network interface into trunk mode if the host includes a fewer number of physical network interfaces than the first number of virtual networks.

7. The method of claim 1 , wherein the configuring the network attributes includes configuring the layer 3 networking attributes of the network interface such that it is communicatively coupled to one of the first number of virtual networks if the host includes an equal or greater number of physical network interfaces than the first number of virtual networks.

8. A method of configuring a data network with a controller, the data network including a plurality of hosts each associated with at least one of a plurality of switches and including a plurality of virtual networks associated with portions of the data network, the method comprising:

receiving, at the controller, a request to boot an operating system image on one of the plurality of hosts, the operating system image requiring network connectivity to a first number of the virtual networks;

automatically selecting, with the controller, a host out of the plurality of hosts on which to boot the operating system image, the selecting including selecting a host with network connectivity to each of the first number of virtual networks;

determining, with the controller, whether a second number of network interfaces in the host is less than the first number of virtual networks, each of the second number of network interfaces being coupled to a switch port on one of the plurality of switches;

booting, with the controller, the operating system image on the host;

configuring, if the second number of network interfaces is not less than the first number of virtual networks, the layer 3 networking attributes of the second number of network interfaces with an agent on the host such that each of the second number of network interfaces is communicatively coupled to one of the first number of virtual networks; and

instantiating on the host, if the second number of network interfaces is less than the first number of virtual networks, a third of number of virtual network interfaces equal to the first number of virtual networks with the agent on the host, the instantiating including configuring the layer 3 networking attributes of the third number of virtual network interfaces such that each of the third number of virtual network interfaces is communicatively coupled to a different one of the first number of virtual networks.

9. The method of claim 8 , wherein the configuring the layer 3 networking attributes of the second number of network interfaces includes:

placing, with the controller, each of the switch ports coupled to the second number of network interfaces into access mode; and

associating each of the switch ports coupled to the second number of network interfaces with one of the first number of virtual networks.

10. The method of claim 8 , wherein the instantiating a third of number of virtual network interfaces includes:

placing, with the controller, each of the switch ports coupled to the second number of network interfaces into trunk mode;

associating each of the switch ports coupled to the second number of network interfaces with more than one of the first number of virtual networks; and

communicatively coupling each of the virtual network interfaces to one of the second number of physical network interfaces.

11. The method of claim 8 , including, if the second number of network interfaces is less than the first number of virtual networks:

partitioning the second number of network interfaces into a fourth number of network interface partitions equal to the first number of virtual networks, the partitioning being done instead of the instantiating the third number of virtual network interfaces;

placing each of the switch ports coupled to the second number of network interfaces into trunk mode; and

configuring the layer 3 networking attributes of the fourth number of network interface partitions such that that each of the fourth number of network interface partitions is communicatively coupled to a different one of the first number of virtual networks.

12. The method of claim 8 , wherein the selecting the host further includes selecting a host with a fewer number of physical network interfaces than the first number of virtual networks only if a host with an equal or greater number of physical network interfaces than the first number of virtual networks is not available.

13. The method of claim 8 , wherein the booting the operating system image includes booting an operating system containing the agent therein.

14. A data network management system for managing a data network that includes a plurality of hosts each associated with at least one of a plurality of switches and includes a plurality of virtual networks associated with portions of the data network, the system comprising:

a controller operable to:

receive a request to boot an operating system image on one of the plurality of hosts, the operating system image requiring network connectivity to a first number of the virtual networks;

automatically select a host out of the plurality of hosts on which to boot the operating system image, the selected host having network connectivity to each of the first number of virtual networks;

determine whether a second number of network interfaces in the host is less than the first number of virtual networks, wherein each of the second number of network interfaces is coupled to a switch port on one of the plurality of switches; and

boot the operating system image on the host, the operating system image including an operating system;

an agent module configured to execute in the operating system on the host, the agent operable to:

configure, if the second number of network interfaces is not less than the first number of virtual networks, the layer 3 networking attributes of the second number of network interfaces such that each of the second number of network interfaces is communicatively coupled to one of the first number of virtual networks; and

instantiate, if the second number of network interfaces is less than the first number of virtual networks, a third of number of virtual network interfaces equal to the first number of virtual networks, and configure the layer 3 networking attributes of the third number of virtual network interfaces such that each of the third number of virtual network interfaces is communicatively coupled to a different one of the first number of virtual networks.

15. The data network management system of claim 14 , wherein, if the second number of network interfaces is not less than the first number of virtual networks, the controller is further operable to place each of the switch ports coupled to the second number of network interfaces into access mode and associate each of the switch ports coupled to the second number of network interfaces with one of the first number of virtual networks.

16. The data network management system of claim 14 , wherein, if the second number of network interfaces is less than the first number of virtual networks, the controller is further operable to:

place each of the switch ports coupled to the second number of network interfaces into trunk mode;

associate each of the switch ports coupled to the second number of network interfaces with more than one of the first number of virtual networks; and

instruct the agent to communicatively couple each of the virtual network interfaces to one of the second number of physical network interfaces.

17. The data network management system of claim 14 ,

wherein, if the second number of network interfaces is less than the first number of virtual networks, the controller is further operable to place each of the switch ports coupled to the second number of network interfaces into trunk mode; and

wherein, if the second number of network interfaces is less than the first number of virtual networks, the agent is further operable to:

partition the second number of network interfaces into a fourth number of network interface partitions equal to the first number of virtual networks in lieu of instantiating the third number of virtual network interfaces; and

configure the layer 3 networking attributes of the fourth number of network interface partitions such that that each of the fourth number of network interface partitions is communicatively coupled to a different one of the first number of virtual networks.

18. The data network management system of claim 14 , wherein the operating system image includes an operating system with the agent therein.

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: 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 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; STEIN, LAWRENCE
To: DELL PRODUCTS L.P.
Reel/Frame 026192/0610 →
Continuity (1)
Related Publication 20120278599A1 · Nov 1, 2012