# US 2022/0035645 A1 · Managing communication rates between applications in a tiered application computing environment

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

- Number: US 2022/0035645 A1
- Document ID: US20220035645A1
- Status: Published application
- Kind: A1
- Application number: 16/942,196
- Filed: 2020-07-29
- Published: 2022-02-03
- Earliest claimed: 2020-07-29
- Assignees: VMware, Inc.
- Applicants: VMware, Inc.
- Inventors: Suresh Babu Muppala; Venkatakrishnan Rajagopalan; Sirisha Myneni
- Web page: https://patentgrep.com/patent/US20220035645A1

## CPC

- G06F 9/45558: {Hypervisor-specific management and integration aspects}
- G06F 9/5083: {Techniques for rebalancing the load in a distributed system}
- G06F 9/485: {Task life-cycle, e.g. stopping, restarting, resuming execution (G06F9/4881 takes precedence)}
- G06F 9/505: {considering the load}
- G06F 9/5077: {Logical partitioning of resources; Management or configuration of virtualized resources (specific details on emulation or internal functioning of virtual machines G06F9/455)}
- G06F 11/301: {where the computing system is a virtual computing platform, e.g. logically partitioned systems (virtual machines G06F9/45533; logical partitioning of resources G06F9/5077)}
- G06F 11/3433: {for load management (allocation of a server based on load conditions G06F9/505; load rebalancing G06F9/5083; redistributing the load in a network by a load balancer H04L67/1029)}
- H04L 41/0816: the condition being an adaptation, e.g. in response to network events
- H04L 41/0895: Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
- H04L 43/0876: Network utilisation, e.g. volume of load or congestion level
- G06F 11/3466: {Performance evaluation by tracing or monitoring}
- G06F 2009/4557: {Distribution of virtual machine instances; Migration and load balancing}
- G06F 2009/45583: {Memory management, e.g. access or allocation}
- H04L 41/5022: by giving priorities, e.g. assigning classes of service
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Described herein are systems, methods, and software to manage communication rates between applications in a tiered application computing environment. In one implementation, a load service monitor load information associated with applications that each execute using one or more virtual nodes. The load service further determines that the load information associated with an application of the applications satisfy one or more load criteria and identifies at least one application that communicates requests to the application. Once identified, the load service communicates a notification to the at least one application to update a communication request configuration to the application.

## Claims

### Claim 1

A method comprising:
monitoring load information associated with applications in a tiered application environment, wherein each of the applications executes using one or more virtual nodes;
determining that the load information associated with a first application in a first tier of the applications satisfies one or more load criteria;
identifying at least one other application of the applications in a different tier above the first tier; and
communicating a notification to the at least one other application to modify a configuration for communicating requests in the tiered application environment.

### Claim 2 (depends on 1)

The method of claim 1, wherein the one or more virtual nodes comprises one or more virtual machines.

### Claim 3 (depends on 1)

The method of claim 1, wherein the load information comprises memory usage or processing system usage by the virtual nodes for the applications.

### Claim 4 (depends on 1)

The method of claim 1, wherein the load information comprises memory usage or processing system usage on one or more host computing systems that host the virtual nodes.

### Claim 5 (depends on 1)

The method of claim 1 further comprising:
in response to the notification, changing a communication rate from the at least one other application from a first rate to a second rate.

### Claim 6 (depends on 5)

The method of claim 5 further comprising:
determining that the load information associated with the first application satisfies one or more second load criteria; and
communicating a notification to the at least one other application to return to the first rate.

### Claim 7 (depends on 1)

The method of claim 1 further comprising:
in response to the notification, pausing communications from the at least one other application.

### Claim 8 (depends on 1)

The method of claim 1, wherein the at least one other application communicates requests to the first application.

### Claim 9 (depends on 1)

The method of claim 1, wherein communicating the notification to the at least one other application to modify the configuration for communicating requests in the tiered application environment comprises communicating the notification to the at least one other application to change a destination for requests from the at least one other application.

### Claim 10

A computing apparatus comprising:
a storage system;
a processing system operatively coupled to the storage system; and
program instructions stored on the storage system that, when executed by the processing system, direct the computing apparatus to:
monitor load information associated with applications in a tiered application environment, wherein each of the applications executes using one or more virtual nodes;
determine that the load information associated with a first application in a first tier of the applications satisfies one or more load criteria;
identify at least one other application of the applications in a different tier above the first tier; and
communicate a notification to the at least one application to modify a configuration for communicating requests in the tiered application environment.

### Claim 11 (depends on 10)

The computing apparatus of claim 10, wherein the one or more virtual nodes comprises one or more virtual machines.

### Claim 12 (depends on 10)

The computing apparatus of claim 10, wherein the load information comprises memory usage or processing system usage by the virtual nodes for the applications.

### Claim 13 (depends on 10)

The computing apparatus of claim 10, wherein the load information comprises memory usage or processing system usage on one or more host computing systems that host the virtual nodes.

### Claim 14 (depends on 10)

The computing apparatus of claim 10, wherein the program instructions further direct the computing apparatus to, in response to the notification, change a communication rate from the at least one other application from a first rate to a second rate.

### Claim 15 (depends on 14)

The computing apparatus of claim 14, wherein the program instructions further direct the computing apparatus to:
determine that the load information associated with the first application satisfies one or more second load criteria; and
communicate a notification to the at least one other application to return to the first rate.

### Claim 16 (depends on 10)

The computing apparatus of claim 10, wherein the program instructions further direct the computing apparatus to, in response to the notification, pause communications from the at least one other application.

### Claim 17 (depends on 10)

The computing apparatus of claim 10, wherein the at least one other application communicates requests to the first application.

### Claim 18 (depends on 10)

The computing apparatus of claim 10, wherein communicating the notification to the at least one other application to modify the configuration for communicating requests in the tiered application environment comprises communicating the notification to the at least one other application to change a destination for requests from the at least one other application.

### Claim 19 (depends on 10)

The computing apparatus of claim 10, wherein the program instructions further direct the computing apparatus to update a load balancer in a logical router for the applications.

### Claim 20

An apparatus comprising:
a storage system;
program instructions stored on the storage system that, when executed by a processing system of a computing system, direct the computing system to:
monitor load information associated with applications in a tiered application environment, wherein each of the applications executes using one or more virtual nodes;
determine that the load information associated with a first application in a first tier of the applications satisfies one or more load criteria;
identify two or more applications of the applications in different tiers above the first application; and
communicate a notification to the two or more applications to modify a configuration for communicating requests in the tiered application environment.
