# US 11,909,599 B2 · Multi-domain and multi-tenant network topology model generation and deployment

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

- Number: US 11,909,599 B2
- Document ID: US11909599B2
- Status: Granted
- Kind: B2
- Application number: 18/105,542
- Filed: 2023-02-03
- Published: 2023-06-15
- Granted: 2024-02-20
- Earliest claimed: 2021-06-01
- Assignees: Cisco Technology, Inc.
- Applicants: Cisco Technology, Inc.
- Inventors: Sebastian Jeuk; Sridar Kandaswamy
- Web page: https://patentgrep.com/patent/US11909599B2

## CPC

- H04L 41/12: Discovery or management of network topologies
- H04L 41/5019: Ensuring fulfilment of SLA
- H04L 67/1001: for accessing one among a plurality of replicated servers
- H04L 67/1097: for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
- H04L 41/145: {involving simulating, designing, planning or modelling of a network}
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Techniques are described herein for generating network topologies based on models, and deploying the network topologies across hybrid clouds and other computing environments that include multiple workload resource domains. A topology deployment system may receive data representing a logical topology model, and may generate a network topology for deployment based on the logical model. The network topology may include various services and/or other resources provided by different tenants in the computing environment, and tenant may be associated with different set of resources and deployment constraints. The topology deployment system may determine and generate the network topology to use the various resources and comply with various deployment constraints of the different tenants providing the services, and the tenants consuming the network topology.

## Claims

### Claim 1

A method comprising:
receiving, by a topology deployment system, a logical topology model;
determining, by the topology deployment system, a first cloud resource and a second cloud resource in a cloud computing environment;
determining, by the topology deployment system, a first tenant associated with the first cloud resource and a second tenant associated with the second cloud resource, wherein the first tenant or the second tenant includes at least one of a service provider tenant configured to provide the first cloud resource or the second cloud resource via the cloud computing environment or a service consumer tenant configured to consume the first cloud resource or the second cloud resource via the cloud computing environment;
determining, by the topology deployment system, a first tenant-specific deployment constraint associated with the first tenant, wherein the first tenant-specific deployment constraint includes at least one requirement associated with use of the first cloud resource;
determining, by the topology deployment system, a second tenant-specific deployment constraint associated with the second tenant, wherein the second tenant-specific deployment constraint is different from the first tenant-specific deployment constraint, and wherein the second tenant-specific deployment constraint includes at least one requirement associated with use of the second cloud resource; and
determining, by the topology deployment system, a network topology for the cloud computing environment based on the logical topology model, wherein the network topology includes the first cloud resource and the second cloud source, and wherein the network topology complies with the first tenant-specific deployment constraint and the second tenant-specific deployment constraint.

### Claim 2 (depends on 1)

The method of claim 1, wherein the first tenant is a service consumer tenant configured to:
consume the first cloud resource via the cloud computing environment; and
provide the second cloud resource, based at least in part on the first cloud resource, via the cloud computing environment.

### Claim 3 (depends on 1)

The method of claim 1,
wherein determining the network topology comprises verifying that the network topology complies with the first tenant-specific deployment constraint and the second tenant-specific deployment constraint.

### Claim 4 (depends on 3)

The method of claim 3, wherein:
the first tenant is a service provider tenant configured to provide the first cloud resource via the cloud computing environment, and
the second tenant is a service provider tenant configured to provide the second cloud resource via the cloud computing environment.

### Claim 5 (depends on 3)

The method of claim 3, wherein:
the first tenant is associated with a first set of cloud-based resources in the cloud computing environment, including the first cloud resource, and a first set of tenant-specific deployment constraints including the first tenant-specific deployment constraint;
the second tenant is associated with a second set of cloud-based resources in the cloud computing environment, including the second cloud resource, and a second set of tenant-specific deployment constraints including the second tenant-specific deployment constraint; and
the first set of cloud-based resources is different from the second set of cloud-based resources, and the first set of tenant-specific deployment constraints is different from the second set of tenant-specific deployment constraints.

### Claim 6 (depends on 1)

The method of claim 1, wherein the cloud computing environment comprises a plurality of workload resource domains, and wherein the network topology comprises at least one cloud service operating in each of the plurality of workload resource domains.

### Claim 7 (depends on 1)

The method of claim 1, wherein the first tenant is associated with a plurality of cloud-based resources including the first cloud resource, and wherein the first tenant-specific deployment constraint includes at least one of:
a constraint associating each of the plurality of cloud-based resources with a particular workload resource domain in the cloud computing environment;
a constraint identifying an amount of at least one of a compute resource, a storage resource, or a network resource associated with each of the plurality of cloud-based resources;
a security-related constraint associated with each of the plurality of cloud-based resources; or
a constraint including an affinity rule or an anti-affinity rule associated with each of the plurality of cloud-based resources.

### Claim 8 (depends on 1)

The method of claim 1, wherein determining the network topology for the cloud computing environment comprises:
determining a first proposed network topology including the first cloud resource and the second cloud resource;
determining that the first proposed network topology fails to comply with at least one of the first tenant-specific deployment constraint or the second tenant-specific deployment constraint; and
modifying the first proposed network topology, in response to determining that the first proposed network topology fails to comply with at least one of the first tenant-specific deployment constraint or the second tenant-specific deployment constraint.

### Claim 9 (depends on 1)

The method of claim 1, further comprising:
determining a set of deployment instructions based on the network topology; and
transmitting the set of deployment instructions to one or more nodes within the cloud computing environment.

### Claim 10

A system comprising:
one or more processors; and
one or more non-transitory computer-readable media storing computer-executable instructions that, when executed by the one or more processors, perform operations comprising:
receiving a logical topology model;
determining a first cloud resource and a second cloud resource operating in a cloud computing environment;
determining a first tenant associated with the first cloud resource and a second tenant associated with the second cloud resource, wherein the first tenant or the second tenant includes at least one of a service provider tenant configured to provide the first cloud resource or the second cloud resource via the cloud computing environment or a service consumer tenant configured to consume the first cloud resource or the second cloud resource via the cloud computing environment;
determining a first tenant-specific deployment constraint associated with the first tenant, wherein the first tenant-specific deployment constraint includes at least one requirement associated with use of the first cloud resource;
determining a second tenant-specific deployment constraint associated with the second tenant, wherein the second tenant-specific deployment constraint is different from the first tenant-specific deployment constraint, and wherein the second tenant-specific deployment constraint includes at least one requirement associated with use of the second cloud resource; and
determining a network topology for the cloud computing environment based on the logical topology model, wherein the network topology includes the first cloud resource and the second cloud resource, and wherein the network topology complies with the first tenant-specific deployment constraint and the second tenant-specific deployment constraint.

### Claim 11 (depends on 10)

The system of claim 10, wherein the first tenant is a service consumer tenant configured to:
consume the first cloud resource via the cloud computing environment; and
provide the second cloud resource, based at least in part on the first cloud resource, via the cloud computing environment.

### Claim 12 (depends on 10)

The system of claim 10,
wherein determining the network topology comprises verifying that the network topology complies with the first tenant-specific deployment constraint and the second tenant-specific deployment constraint.

### Claim 13 (depends on 12)

The system of claim 12, wherein:
the first tenant is a service provider tenant configured to provide the first cloud resource via the cloud computing environment, and
the second tenant is a service provider tenant configured to provide the second cloud resource via the cloud computing environment.

### Claim 14 (depends on 12)

The system of claim 12, wherein:
the first tenant is associated with a first set of cloud-based resources in the cloud computing environment, including the first cloud resource, and a first set of tenant-specific deployment constraints including the first tenant-specific deployment constraint;
the second tenant is associated with a second set of cloud-based resources in the cloud computing environment, including the second cloud resource, and a second set of tenant-specific deployment constraints including the second tenant-specific deployment constraint; and
the first set of cloud-based resources is different from the second set of cloud-based resources, and the first set of tenant-specific deployment constraints is different from the second set of tenant-specific deployment constraints.

### Claim 15 (depends on 10)

The system of claim 10, wherein the cloud computing environment comprises a plurality of workload resource domains, and wherein the network topology comprises at least one cloud service operating in each of the plurality of workload resource domains.

### Claim 16 (depends on 10)

The system of claim 10, wherein the first tenant is associated with a plurality of cloud-based resources including the first cloud resource, and wherein the first tenant-specific deployment constraint includes at least one of:
a constraint associating each of the plurality of cloud-based resources with a particular workload resource domain in the cloud computing environment;
a constraint identifying an amount of at least one of a compute resource, a storage resource, or a network resource associated with each of the plurality of cloud-based resources;
a security-related constraint associated with each of the plurality of cloud-based resources; or
a constraint including an affinity rule or an anti-affinity rule associated with each of the plurality of cloud-based resources.

### Claim 17 (depends on 10)

The system of claim 10, wherein determining the network topology for the cloud computing environment comprises:
determining a first proposed network topology including the first cloud resource and the second cloud resource;
determining that the first proposed network topology fails to comply with at least one of the first tenant-specific deployment constraint or the second tenant-specific deployment constraint; and
modifying the first proposed network topology, in response to determining that the first proposed network topology fails to comply with at least one of the first tenant-specific deployment constraint or the second tenant-specific deployment constraint.

### Claim 18

A non-transitory computer-readable medium storing processor-executable instructions that, when executed by one or more processors, cause the one or more processors to perform operations comprising:
receiving a logical topology model;
determining a first cloud resource and a second cloud resource operating in a cloud computing environment;
determining a first tenant associated with the first cloud resource and a second tenant associated with the second cloud resource, wherein the first tenant or the second tenant includes at least one of a service provider tenant configured to provide the first cloud resource or the second cloud resource via the cloud computing environment or a service consumer tenant configured to consume the first cloud resource or second cloud resource via the cloud computing environment;
determining a first tenant-specific deployment constraint associated with the first tenant, wherein the first tenant-specific deployment constraint includes at least one requirement associated with use of the first cloud resource;
determining a second tenant-specific deployment constraint associated with the second tenant, wherein the second tenant-specific deployment constraint is different from the first tenant-specific deployment constraint, and wherein the second tenant-specific deployment constraint includes at least one requirement associated with use of the first cloud resource;
determining a network topology for the cloud computing environment based on the logical topology model, wherein the network topology includes the first cloud resource and the second cloud resource, and wherein the network topology complies with the first tenant-specific deployment constraint and the second tenant-specific deployment constraint.

### Claim 19 (depends on 18)

The non-transitory computer-readable medium of claim 18, wherein the first tenant is a service consumer tenant configured to:
consume the first cloud resource via the cloud computing environment; and
provide the second cloud resource, based at least in part on the first cloud resource, via the cloud computing environment.

### Claim 20 (depends on 18)

The non-transitory computer-readable medium of claim 18,
wherein determining the network topology comprises verifying that the network topology complies with the first tenant-specific deployment constraint and the second tenant-specific deployment constraint.
