# US 2017/0289002 A1 · Technologies for deploying dynamic underlay networks in cloud computing infrastructures

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2017/0289002 A1
- Document ID: US20170289002A1
- Status: Published application
- Kind: A1
- Application number: 15/087,172
- Filed: 2016-03-31
- Published: 2017-10-05
- Earliest claimed: 2016-03-31
- Inventors: Mrittika Ganguli; Deepak S; Ananth S. Narayan; Hubert Sokolowski
- Web page: https://patentgrep.com/patent/US20170289002A1

## CPC

- H04L 41/40: using virtualisation of network functions or resources, e.g. SDN or NFV entities
- H04L 43/0876: Network utilisation, e.g. volume of load or congestion level
- H04L 12/4641: {Virtual LANs, VLANs, e.g. virtual private networks [VPN] (LAN interconnection over a bridge based backbone H04L12/462; encapsulation techniques H04L12/4633; routing of packets H04L45/00; packet switches H04L49/00; virtual private networks for security H04L63/0272)}
- H04L 41/5051: Service on demand, e.g. definition and deployment of services in real time
- H04L 41/5054: Automatic deployment of services triggered by the service manager, e.g. service implementation by automatic configuration of network components
- H04L 67/10: in which an application is distributed across nodes in the network (software deployment G06F8/60; multiprogramming arrangements G06F9/46)
- H04L 41/5009: Determining service level performance parameters or violations of service level contracts, e.g. violations of agreed response time or mean time between failures [MTBF]
- H04L 41/5025: by proactively reacting to service quality change, e.g. by reconfiguration after service quality degradation or upgrade
- H04L 41/5077: {wherein the managed service relates to simple transport services, i.e. providing only network infrastructure}
- H04L 43/0817: by checking functioning
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Technologies for deploying dynamic underlay networks in a cloud computing infrastructure include a network controller of the cloud computing infrastructure communicatively coupled via disaggregated switches to one or more compute nodes of the cloud computing infrastructure. The network controller is configured to receive tenant network creation requests from a cloud operating system (OS) of the cloud computing infrastructure indicating that a tenant network is to be created in the cloud computing infrastructure (e.g., for a new tenant of the cloud computing infrastructure). The network controller is configured to provision an underlay network to support the tenant network based on identified physical resources using criteria specified by the cloud OS and transmit information of the provisioned underlay network to the cloud OS that is usable to create a cloud visible overlay network associated with the underlay network. Other embodiments are described herein.

## Claims

### Claim 1

A network controller for deploying dynamic underlay networks in a cloud computing infrastructure, the network controller comprising:
one or more processors; and
one or more memory devices having stored therein a plurality of instructions that, when executed by the one or more processors, cause the network controller to:
receive, from a cloud operating system of the cloud computing infrastructure, a tenant network creation request that indicates a tenant network is to be created in the cloud computing infrastructure for a new tenant of the cloud computing infrastructure;
identify network criteria for the tenant network based on the received tenant network creation request;
identify physical resources of the cloud computing infrastructure usable to create the tenant network based on the identified network criteria;
provision an underlay network to support the tenant network based on the identified physical resources; and
transmit information of the underlay network to the cloud operating system, wherein the information of the underlay network is usable to create a cloud visible overlay network associated with the underlay network.

### Claim 2 (depends on 1)

The network controller of claim 1, wherein to identify the physical resources of the cloud computing infrastructure comprises to (i) identify one or more target compute nodes for instantiation of one or more virtual machines to be associated with the tenant network and (ii) identify one or more switches coupling the one or more identified target compute nodes to the cloud computing infrastructure.

### Claim 3 (depends on 2)

The network controller of claim 2, wherein to provision the underlay network comprises to (i) initialize a virtual local area network (VLAN) interface over a physical network interface of the one or more identified target compute nodes and (ii) configure switch ports of the one or more switches to configure a VLAN between the one or more switches.

### Claim 4 (depends on 1)

The network controller of claim 1, wherein to receive the tenant network creation request comprises to receive an indication that one or more virtual machines are to be instantiated to support the tenant network, and
wherein the plurality of instructions further cause the network controller to:
instantiate the one or more virtual machines at one or more target compute nodes of the cloud computing infrastructure; and
attach the one or more instantiated virtual machines to the cloud visible overlay network associated with the underlay network.

### Claim 5 (depends on 1)

The network controller of claim 1, wherein to identify the network criteria usable to create the tenant network comprises to identify at least one of a performance criterion or a resource criterion, wherein the performance criterion includes at least one of a usage threshold or a quality of service requirement, and wherein the resource criterion includes at least one of a compute availability, memory availability, or storage availability.

### Claim 6 (depends on 1)

The network controller of claim 1, wherein the plurality of instructions further cause the network controller to discover the physical resources of the cloud computing infrastructure, wherein to discover the physical resources comprises to discover at least one of a plurality of switches of the cloud computing infrastructure, capabilities of each of the plurality of switches, a plurality of compute nodes of the cloud computing infrastructure, capabilities of each of the plurality of compute nodes, or a topology of the physical resources.

### Claim 7 (depends on 6)

The network controller of claim 6, wherein the plurality of instructions further cause the network controller to monitor the physical resources based on the identified network criteria, and wherein to monitor the physical resources comprises to monitor at least one of one or more physical network interfaces of one or more of the plurality of compute nodes, one or more virtual network interfaces of one or more of the plurality of compute nodes, or one or more switch ports of one or more of the plurality of switches.

### Claim 8 (depends on 7)

The network controller of claim 7, wherein to identify the physical resources of the cloud computing infrastructure usable to create the tenant network is further based on a result of the monitored physical resources, wherein the plurality of instructions further cause the network controller to identify present network performance metrics for the underlay network based on a result of the monitored physical resources.

### Claim 9 (depends on 1)

The network controller of claim 1, wherein the plurality of instructions further cause the network controller to (i) receive an indication of a virtual machine instance to be instantiated in the underlay network, (ii) identify one or more present network performance metrics of the underlay network, (iii) update network performance criteria associated with monitoring performance levels of the underlay network, (iv) compare the one or more present network performance metrics and the updated network performance criteria, and (v) determine whether the underlay network can support instantiation of the virtual machine instance.

### Claim 10 (depends on 9)

The network controller of claim 9, wherein the plurality of instructions further cause the network controller to initiate, in response to a determination that the underlay network cannot support instantiation of the virtual machine instance, creation of a new underlay network that includes the virtual machine instance to be instantiated.

### Claim 11 (depends on 9)

The network controller of claim 9, wherein the plurality of instructions further cause the network controller to (i) identify, in response to a determination that the underlay network can support instantiation of the virtual machine instance, a target compute node in which to instantiate the virtual machine instance, (ii) instantiate the virtual machine instance on the identified target compute node, and (iii) attach the instantiated virtual machine instance to the cloud visible overlay network associated with the underlay network.

### Claim 12

One or more computer-readable storage media comprising a plurality of instructions stored thereon that in response to being executed cause a network controller to:
receive, from a cloud operating system of the cloud computing infrastructure, a tenant network creation request that indicates a tenant network is to be created in the cloud computing infrastructure for a new tenant of the cloud computing infrastructure;
identify network criteria for the tenant network based on the received tenant network creation request;
identify physical resources of the cloud computing infrastructure usable to create the tenant network based on the identified network criteria;
provision an underlay network to support the tenant network based on the identified physical resources; and
transmit information of the underlay network to the cloud operating system, wherein the information of the underlay network is usable to create a cloud visible overlay network associated with the underlay network.

### Claim 13 (depends on 12)

The one or more computer-readable storage media of claim 12, wherein to identify the physical resources of the cloud computing infrastructure comprises to (i) identify one or more target compute nodes for instantiation of one or more virtual machines to be associated with the tenant network and (ii) identify one or more switches coupling the one or more identified target compute nodes to the cloud computing infrastructure.

### Claim 14 (depends on 13)

The one or more computer-readable storage media of claim 13, wherein to provision the underlay network comprises to (i) initialize a virtual local area network (VLAN) interface over a physical network interface of the one or more identified target compute nodes and (ii) configure switch ports of the one or more switches to configure a VLAN between the one or more switches.

### Claim 15 (depends on 12)

The one or more computer-readable storage media of claim 12, wherein to receive the tenant network creation request comprises to receive an indication that one or more virtual machines are to be instantiated to support the tenant network, and
wherein the plurality of instructions further cause the network controller to:
instantiate the one or more virtual machines at one or more target compute nodes of the cloud computing infrastructure; and
attach the one or more instantiated virtual machines to the cloud visible overlay network associated with the underlay network.

### Claim 16 (depends on 12)

The one or more computer-readable storage media of claim 12, wherein to identify the network criteria usable to create the tenant network comprises to identify at least one of a performance criterion or a resource criterion, wherein the performance criterion includes at least one of a usage threshold or a quality of service requirement, and wherein the resource criterion includes at least one of a compute availability, memory availability, or storage availability.

### Claim 17 (depends on 12)

The one or more computer-readable storage media of claim 12, wherein the plurality of instructions further cause the network controller to discover the physical resources of the cloud computing infrastructure, wherein to discover the physical resources comprises to discover at least one of a plurality of switches of the cloud computing infrastructure, capabilities of each of the plurality of switches, a plurality of compute nodes of the cloud computing infrastructure, capabilities of each of the plurality of compute nodes, or a topology of the physical resources.

### Claim 18 (depends on 17)

The one or more computer-readable storage media of claim 17, wherein the plurality of instructions further cause the network controller to monitor the physical resources based on the identified network criteria, and wherein to monitor the physical resources comprises to monitor at least one of one or more physical network interfaces of one or more of the plurality of compute nodes, one or more virtual network interfaces of one or more of the plurality of compute nodes, or one or more switch ports of one or more of the plurality of switches.

### Claim 19 (depends on 18)

The one or more computer-readable storage media of claim 18, wherein to identify the physical resources of the cloud computing infrastructure usable to create the tenant network is further based on a result of the monitored physical resources, and wherein the plurality of instructions further cause the network controller to identify present network performance metrics for the underlay network based on a result of the monitored physical resources.

### Claim 20 (depends on 12)

The one or more computer-readable storage media of claim 12, wherein the plurality of instructions further cause the network controller to (i) receive an indication of a virtual machine instance to be instantiated in the underlay network, (ii) identify one or more present network performance metrics of the underlay network, (iii) update network performance criteria associated with monitoring performance levels of the underlay network, (iv) compare the one or more present network performance metrics and the updated network performance criteria, and (v) determine whether the underlay network can support instantiation of the virtual machine instance.

### Claim 21 (depends on 20)

The one or more computer-readable storage media of claim 20, wherein the plurality of instructions further cause the network controller to initiate, in response to a determination that the underlay network cannot support instantiation of the virtual machine instance, creation of a new underlay network that includes the virtual machine instance to be instantiated.

### Claim 22 (depends on 20)

The one or more computer-readable storage media of claim 20, wherein the plurality of instructions further cause the network controller to (i) identify, in response to a determination that the underlay network can support instantiation of the virtual machine instance, a target compute node in which to instantiate the virtual machine instance, (ii) instantiate the virtual machine instance on the identified target compute node, and (iii) attach the instantiated virtual machine instance to the cloud visible overlay network associated with the underlay network.

### Claim 23

A method for deploying dynamic underlay networks in a cloud computing infrastructure, the method comprising:
receiving, by a network controller in the cloud computing infrastructure, a tenant network creation request from a cloud operating system of the cloud computing infrastructure, wherein the tenant network creation request indicates to the network controller to create a new tenant network in the cloud computing infrastructure;
identifying, by the network controller, network criteria for the new tenant network based on the received tenant network creation request;
identifying, by the network controller, physical resources of the cloud computing infrastructure usable to create the new tenant network based on the identified network criteria;
provisioning, by the network controller, an underlay network to support the new tenant network based on the identified physical resources; and
transmitting, by the network controller, information of the underlay network to the cloud operating system, wherein the information of the underlay network is usable to create a cloud visible overlay network associated with the underlay network.

### Claim 24 (depends on 23)

The method of claim 23, wherein to identify the physical resources of the cloud computing infrastructure comprises to (i) identify one or more target compute nodes for instantiation of one or more virtual machines to be associated with the tenant network and (ii) identify one or more switches coupling the one or more identified target compute nodes to the cloud computing infrastructure, and wherein to provision the underlay network comprises to (i) initialize a virtual local area network (VLAN) interface over a physical network interface of the one or more identified target compute nodes and (ii) configure switch ports of the one or more switches to configure a VLAN between the one or more switches.

### Claim 24 (depends on 23)

The method of claim 23, wherein to receive the tenant network creation request comprises to receive an indication that one or more virtual machines are to be instantiated to support the tenant network, and
wherein the plurality of instructions further cause the network controller to:
instantiate the one or more virtual machines at one or more target compute nodes of the cloud computing infrastructure; and
attach the one or more instantiated virtual machines to the cloud visible overlay network associated with the underlay network.

### Claim 25 (depends on 23)

The method of claim 23, wherein identifying the network criteria usable to create the tenant network comprises identifying at least one of a performance criterion or a resource criterion, wherein the performance criterion includes at least one of a usage threshold or a quality of service requirement, and wherein the resource criterion includes at least one of a compute availability, memory availability, or storage availability.

### Claim 26 (depends on 23)

The method of claim 23, further comprising discovering, by the network controller, the physical resources of the cloud computing infrastructure, wherein discovering the physical resources comprises discovering at least one of a plurality of switches of the cloud computing infrastructure, capabilities of each of the plurality of switches, a plurality of compute nodes of the cloud computing infrastructure, capabilities of each of the plurality of compute nodes, or a topology of the physical resources.

### Claim 27 (depends on 26)

The method of claim 26, further comprising monitoring, by the network controller, the physical resources based on the identified network criteria, and wherein monitoring the physical resources comprises monitoring at least one of one or more physical network interfaces of one or more of the plurality of compute nodes, one or more virtual network interfaces of one or more of the plurality of compute nodes, or one or more switch ports of one or more of the plurality of switches.

### Claim 28

A network controller for deploying dynamic underlay networks in a cloud computing infrastructure, the network controller comprising:
an application interface circuit to receive a tenant network creation request from a cloud operating system of the cloud computing infrastructure, wherein the tenant network creation request indicates to the network controller to create a new tenant network in the cloud computing infrastructure;
means for identifying network criteria for the new tenant network based on the received tenant network creation request;
means for identifying physical resources of the cloud computing infrastructure usable to create the new tenant network based on the identified network criteria; and
means for provisioning an underlay network to support the new tenant network based on the identified physical resources,
means for transmitting information of the underlay network to the cloud operating system, wherein the information of the underlay network is usable to create a cloud visible overlay network associated with the underlay network.

### Claim 29 (depends on 28)

The network controller of claim 28, wherein the means for identifying the physical resources of the cloud computing infrastructure comprises means for (i) identifying one or more target compute nodes for instantiation of one or more virtual machines to be associated with the new tenant network and (ii) identifying one or more switches coupling the one or more identified target compute nodes to the cloud computing infrastructure.

### Claim 30 (depends on 29)

The network controller of claim 29, wherein the means for provisioning the underlay network comprises means for (i) initializing a virtual local area network (VLAN) interface over a physical network interface of the one or more identified target compute nodes and (ii) configuring switch ports of the one or more switches to configure a VLAN between the one or more switches.
