# US 2021/0240510 A1 · Systems and methods for virtual server resource usage metric evaluation and performance tracking

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

- Number: US 2021/0240510 A1
- Document ID: US20210240510A1
- Status: Published application
- Kind: A1
- Application number: 17/020,088
- Filed: 2020-09-14
- Published: 2021-08-05
- Earliest claimed: 2020-01-30
- Assignees: Coupang Corp.
- Applicants: Coupang Corp.
- Inventors: Tae Kyung KIM
- Web page: https://patentgrep.com/patent/US20210240510A1

## CPC

- G06F 9/5072: {Grid computing}
- G06F 9/45558: {Hypervisor-specific management and integration aspects}
- 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)}
- H04L 41/024: {using relational databases for representation of network management data, e.g. managing via structured query language [SQL]}
- H04L 41/40: using virtualisation of network functions or resources, e.g. SDN or NFV entities
- H04L 43/045: for graphical visualisation of monitoring data
- H04L 43/08: Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L 43/20: the monitoring system or the monitored elements being virtualised, abstracted or software-defined entities, e.g. SDN or NFV
- G06F 2009/45591: {Monitoring or debugging support}
- 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

Methods and systems for resource usage metric grading are disclosed. In one embodiment, an exemplary method comprises receiving a request to assign a first role to at least one virtual server; configuring the virtual server to associate the first role with a first resource of the virtual server; modifying a database to include an identifier associated with the virtual server and an identifier of the first role assigned to the virtual server; receiving, from the virtual server, indications of resource usage for a plurality of roles; calculating an efficiency metric associated with the first role, the efficiency based on resource usage associated with the first role and resource usage associated with the plurality of roles; modifying a user interface element for presentation on a web page to include the calculated efficiency metric for the first role; receiving a request from a user; and delivering the web page.

## Claims

### Claim at position 1

1-20. (canceled)

### Claim 21

A first server having at least one designated role, the server comprising:
a memory storing instructions; and
at least one processor configured to execute the instructions to:
receive a resource usage request for at least one resource from a first client;
determine a role associated with the resource usage request;
determine if an efficiency metric of the server satisfies a threshold;
allocate, based on the resource usage request and when the efficiency metric satisfies the threshold, an amount of the at least one resource;
generate an indication of resource usage, the indication including the determined role; and
provide the indication to a system, wherein the server is configured to automatically transfer the at least one designated role to a second server when the efficiency metric does not satisfy the threshold.

### Claim 22 (depends on 21)

The first server of claim 21, wherein the resource usage request comprises a request for an operation, a request to modify data, a request to store data, or a request to transfer data.

### Claim 23 (depends on 21)

The first server of claim 21, wherein the role associated with the resource usage request is determined based on an identity of the first client.

### Claim 24 (depends on 23)

The first server of claim 23, wherein the identity of the first client comprises a media access control (MAC) address or an Internet Protocol (IP) address.

### Claim 25 (depends on 21)

The first server of claim 21, wherein:
the resource usage request is a first resource usage request; and
the role associated with the resource usage request is determined based on a similarity of the first received resource usage request and a second resource usage request.

### Claim 26 (depends on 21)

The first server of claim 21, wherein the at least one resource is a processing resource, a storage resource, or a connectivity resource.

### Claim 27 (depends on 21)

The first server of claim 21, wherein automatically transferring the at least one designated role to the second server comprises:
assembling a configuration file containing settings or variables; and
transferring the configuration file to the second server.

### Claim 28 (depends on 21)

The first server of claim 21, wherein the indication is provided to the system in response to a request received via an application programming interface (API).

### Claim 29 (depends on 21)

The first server of claim 21, wherein the at least one processor is further configured to execute an instruction to determine the efficiency metric.

### Claim 30 (depends on 29)

The first server of claim 29, wherein determining the efficiency metric comprises:
receiving a plurality of indications of resource usages; and
filtering the plurality of indications to determine a resource usage associated with the determined role.

### Claim 31 (depends on 30)

The first server of claim 30, wherein the plurality of indications are incorporated into a data structure.

### Claim 32 (depends on 30)

The first server of claim 30, wherein determining the efficiency metric further comprises:
determining a first difference between the resource usage associated with the determined role and a lowest resource usage among the plurality;
determining a second difference between the resource usage associated with a highest resource usage among the plurality and the resource usage associated with the lowest resource usage among the plurality; and
dividing the first difference by the second difference to determine the efficiency metric.

### Claim 33 (depends on 30)

The first server of claim 30, wherein determining the efficiency metric further comprises:
determining a first difference between a natural logarithm of the resource usage associated with the determined role and a natural logarithm of a lowest resource usage among the plurality;
determining a second difference between a natural logarithm of the resource usage associated with a highest resource usage among the plurality and the natural logarithm of the resource usage associated with the lowest resource usage among the plurality; and
dividing the first difference by the second difference to determine the efficiency metric.

### Claim 34 (depends on 29)

The first server of claim 29, wherein the efficiency metric is determined based on usage statistics aggregated over a period of time.

### Claim 35 (depends on 21)

The first server of claim 21, wherein the first server and the second server are virtual servers.

### Claim 36

A computer-implemented method for transferring roles between servers, the method comprising receiving a resource usage request for at least one resource from a first client;
determining a role associated with the resource usage request;
determining if an efficiency metric of the server satisfies a threshold;
allocating, based on the resource usage request and when the efficiency metric satisfies the threshold, an amount of the at least one resource;
generating an indication of resource usage, the indication including the determined role;
providing the indication to a system; and
automatically transferring at least one designated role from a first server to a second server when the efficiency metric does not satisfy the threshold.

### Claim 37 (depends on 36)

The computer-implemented method of claim 36, wherein the role is determined based on an identity of the first client.

### Claim 38 (depends on 36)

The computer-implemented method of claim 36 further comprising:
assembling a configuration file containing settings or variables;
obtaining an identifier of the second server; and
transferring the configuration file to the second server.

### Claim 39 (depends on 36)

The computer-implemented method of claim 36 further comprising:
determining the efficiency metric by performing steps of:
receiving a plurality of indications of resource usages; and
filtering the plurality of indications to determine a resource usage associated with the determined role.

### Claim 40 (depends on 39)

The computer-implemented method of claim 39, wherein the steps further comprise:
determining a first difference between the resource usage associated with the determined role and a lowest resource usage among the plurality;
determining a second difference between the resource usage associated with a highest resource usage among the plurality and the resource usage associated with the lowest resource usage among the plurality; and
dividing the first difference by the second difference to determine the efficiency metric.
