# US 12,192,271 B2 · Systems and methods for cloud topology management during deployment of virtual applications

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

- Number: US 12,192,271 B2
- Document ID: US12192271B2
- Status: Granted
- Kind: B2
- Application number: 18/315,494
- Filed: 2023-05-10
- Published: 2023-09-07
- Granted: 2025-01-07
- Earliest claimed: 2021-12-06
- Assignees: Verizon Patent and Licensing Inc.
- Applicants: Verizon Patent and Licensing Inc.
- Inventors: Abhishek Kumar; Ravi Potluri; Hans Raj Nahata
- Web page: https://patentgrep.com/patent/US12192271B2

## CPC

- H04L 67/1008: based on parameters of servers, e.g. available memory or workload (monitoring of computer activity G06F11/30)
- H04L 47/762: triggered by the network
- H04L 47/781: {Centralised allocation of resources}
- H04L 67/10: in which an application is distributed across nodes in the network (software deployment G06F8/60; multiprogramming arrangements G06F9/46)
- H04L 67/1053: {with pre-configuration of logical or physical connections with a determined number of other peers}
- 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: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A device may receive application information of an application to be deployed in a cloud computing environment. The application information may include requirement information including information defining a compute requirement of the application, a storage requirement of the application, and a network connectivity requirement of the application, and first capability information identifying requested capabilities of the first set of devices. The device may receive second capability information identifying actual capabilities of the second set of devices. The device may compare the first capability information and the second capability information to determine a measure of similarity between the first capability information and the second capability information. The device may generate deployment information for deploying the application on a device, of the second set of devices, based on the measure of similarity.

## Claims

### Claim 1

A method comprising:
receiving, by a device, first capability information that identifies requested capabilities, of a first set of devices, for deploying an application in a cloud computing environment;
determining, based on the first capability information, a topology associated with the requested capabilities,
wherein the topology defines a relationship between requested compute capabilities of the first set of devices, requested storage capabilities of the first set of devices, and requested network connectivity capabilities of the first set of devices;
receiving second capability information that identifies actual capabilities of a second set of devices of the cloud computing environment;
comparing the first capability information and the second capability information to generate a score; and
generating deployment information for deploying the application on one or more devices, of the second set of devices, based on the topology and the second capability information,
wherein the one or more devices are identified based on the score.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
providing the deployment information to cause software packages, for deploying the application on the one or more devices, to be generated.

### Claim 3 (depends on 1)

The method of claim 1, wherein the application is a virtual network function, and wherein the one or more devices are included in a network functions virtualization infrastructure (NFVI).

### Claim 4 (depends on 1)

The method of claim 1, wherein the requested capabilities are based on requirements for deploying the application, and
wherein the method further comprises: receiving requirement information regarding the requirements for deploying the application,
wherein the requirement information includes information defining a compute requirement of the application, information defining a storage requirement of the application, and information defining a network connectivity requirement of the application.

### Claim 5 (depends on 1)

The method of claim 1, wherein the first capability information further includes information associated with monitoring first performance of the first set of devices, and wherein the method further comprises:
obtaining performance information regarding second performance of the second set of devices; and
identifying the one or more devices based on the performance information.

### Claim 6 (depends on 1)

The method of claim 1, wherein the topology includes a plurality of nodes representing the first set of devices, wherein a node, of the plurality of nodes, includes information regarding one or more requested compute capabilities of a device of the first set of devices, one or more requested storage capabilities of the device of the first set of devices, and one or more requested network connectivity capabilities of the device of the first set of devices, and
wherein the method further comprises:
comparing the node and the second capability information to identify the one or more devices.

### Claim 7 (depends on 6)

The method of claim 6, wherein comparing the node and the second capability information comprises:
comparing a first vector that includes first descriptors of the node and second vectors, for the second set of devices, that include second descriptors of the second set of devices.

### Claim 8

A device, comprising:
one or more processors configured to:
receive first capability information that identifies requested capabilities for deploying an application in a cloud computing environment,
wherein the requested capabilities include one or more requested compute capabilities, one or more requested storage capabilities, and one or more requested network connectivity capabilities;
receive second capability information that identifies actual capabilities of a set of devices of the cloud computing environment,
wherein the actual capabilities include one or more actual compute capabilities, one or more actual storage capabilities, and one or more actual network connectivity capabilities;
compare the first capability information and the second capability information to generate a score;
generate deployment information for deploying the application on one or more devices, of the set of devices, based on the first capability information and the second capability information,
wherein the one or more devices are identified based on the score; and
cause the application to be deployed on the one or more devices based on the deployment information.

### Claim 9 (depends on 8)

The device of claim 8, wherein the one or more processors, to cause the application to be deployed, are configured to:
provide the deployment information to cause software packages, for deploying the application on the one or more devices, to be generated.

### Claim 10 (depends on 8)

The device of claim 8, wherein, to compare the first capability information and the second capability information, the one or more processors are configured to:
compare the first capability information and the second capability information to identify the one or more devices.

### Claim 11 (depends on 8)

The device of claim 8, wherein, to compare the first capability information and the second capability information, the one or more processors are configured to:
compare the score to different matching confidence thresholds to identify the one or more devices.

### Claim 12 (depends on 11)

The device of claim 11, wherein the different matching confidence thresholds include a first confidence threshold, a second confidence threshold that exceeds the first confidence threshold, and a third confidence threshold that exceeds the second confidence threshold, and
wherein, to generate the deployment information, the one or more processors are configured to:
determine that the score satisfies the third confidence threshold based on comparing the score to the different matching confidence thresholds; and
generate the deployment information based on determining that the score satisfies the third confidence threshold.

### Claim 13 (depends on 8)

The device of claim 8, wherein the one or more processors, to generate the deployment information, are configured to one or more of:
generate a first recommendation regarding the one or more devices;
generate a second recommendation regarding plugins associated with the one or more devices; or
generate a third recommendation regarding a preferred device for different types of applications.

### Claim 14 (depends on 13)

The device of claim 13, wherein the different types of applications include one or more of: a central processor unit intensive application, a memory intensive application, a storage intensive application, or a network intensive application.

### Claim 15

A non-transitory computer-readable storage medium storing instructions executable by one or more processors of a device, wherein the instructions are configured to:
receive first capability information of a first set of devices associated with a cloud computing environment, wherein the first capability information identifies requested capabilities of the first set of devices;
receive second capability information of a second set of devices associated with the cloud computing environment, wherein the second capability information identifies actual capabilities of the second set of devices;
compare the first capability information and the second capability information to generate a score; and
generate deployment information for deploying an application on one or more devices of the second set of devices,
wherein the one or more devices are identified based on the score.

### Claim 16 (depends on 15)

The non-transitory computer-readable storage medium of claim 15, wherein the application is a virtual network function, and
wherein the one or more devices are included in a network functions virtualization infrastructure (NFVI).

### Claim 17 (depends on 15)

The non-transitory computer-readable storage medium of claim 15, wherein the instructions, when executed by the one or more processors, further cause the device to:
provide the deployment information to cause the application to be deployed on the one or more devices based on the deployment information.

### Claim 18 (depends on 15)

The non-transitory computer-readable storage medium of claim 15, wherein the instructions, that cause the device to compare the first capability information and the second capability information, cause the device to:
compare the score to different matching confidence thresholds to identify the one or more devices.

### Claim 19 (depends on 15)

The non-transitory computer-readable storage medium of claim 15, wherein the first capability information further includes information associated with monitoring a performance of the first set of devices, and
wherein the instructions, when executed by the one or more processors, further cause the device to: obtain performance information regarding the second set of devices, and identify the one or more devices based on the performance information.

### Claim 20 (depends on 15)

The non-transitory computer-readable storage medium of claim 15, wherein the instructions, that cause the device to generate the deployment information, cause the device to: generate a first recommendation regarding the one or more devices; generate a second recommendation regarding plugins associated with the one or more devices; or generate a third recommendation regarding a preferred device for different types of applications.
