# US 2016/0253192 A1 · Dynamic host performance tuning of a network stack

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

- Number: US 2016/0253192 A1
- Document ID: US20160253192A1
- Status: Published application
- Kind: A1
- Application number: 14/747,472
- Filed: 2015-06-23
- Published: 2016-09-01
- Earliest claimed: 2015-02-26
- Assignees: VMware, Inc.
- Applicants: VMware, Inc.
- Inventors: Lenin SINGARAVELU; Chien-Chia CHEN
- Web page: https://patentgrep.com/patent/US20160253192A1

## CPC

- G06F 9/45537: {Provision of facilities of other operating environments, e.g. WINE (I/O emulation G06F13/105)}
- G06F 9/45558: {Hypervisor-specific management and integration aspects}
- H04L 43/16: Threshold monitoring
- H04L 43/20: the monitoring system or the monitored elements being virtualised, abstracted or software-defined entities, e.g. SDN or NFV
- G06F 2009/45579: {I/O management, e.g. providing access to device drivers or storage}
- 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

A tuning engine for a virtualized computing system is described that periodically collect performance metrics from the virtualized computing system, and detects whether a change in system state has occurred based on the collected metrics. The tuning engine may determine whether the virtualized computing system is densely virtualized, and accordingly modify operations and configuration settings of various components in charge of handling networking for the virtualized computing system.

## Claims

### Claim 1

A method comprising:
receiving performance metrics associated with at least one virtual machine (VM) executing on a host;
determining that the host is in a densely provisioned state based on a comparison of at least one performance metric to a corresponding threshold;
modifying scheduling of at least one process thread configured to handle emulating networking for the VM responsive to determining that the host is in the densely provisioned state; and
modifying configurations of a physical network interface underlying a virtual network interface card of the VM that the host is in the densely provisioned state.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
modifying emulation settings of a virtual network interface card of the VM responsive to determining that the host is in the densely provisioned state and that the VM is not configured to execute a latency-sensitive workload.

### Claim 3 (depends on 2)

The method of claim 2, wherein the modifying emulation settings of the virtual network interface card of the VM further comprises:
reducing a number of system threads handling transmission of packets on the virtual network interface card of the VM.

### Claim 4 (depends on 2)

The method of claim 2, wherein the modifying emulation settings of the virtual network interface card of the VM further comprises:
modifying the virtual network interface card to increase the number of received network packets batched together to be delivered at once based on the performance metrics comprising CPU load of the host.

### Claim 5 (depends on 1)

The method of claim 1, wherein modifying scheduling of the at least one process thread configured to handle emulating networking for the VM further comprises:
reducing a frequency of activating the at least one process thread for execution on a physical CPU of the host, wherein the at least one system thread is configured to handle transmission of network packets on the virtual network interface card.

### Claim 6 (depends on 1)

The method of claim 1, further comprising:
reducing a number of kernel threads configured to handle non-virtual-machine-related traffic for the host responsive to determining that the host is in the densely provisioned state.

### Claim 7 (depends on 1)

The method of claim 1, wherein the modifying configurations of the physical network interface underlying the virtual network interface card of the VM further comprises:
reducing an interrupt rate of the physical network interface of the host based on the performance metrics comprising CPU load of the host.

### Claim 8 (depends on 1)

The method of claim 1, wherein the modifying configurations of the physical network interface underlying the virtual network interface card of the VM further comprises:
reducing a number of queues allocated for the physical network interface of the host.

### Claim 9

A non-transitory computer-readable storage medium comprising instructions that, when executed in a computing device, manage a virtualized computing system, by performing the steps of:
receiving performance metrics associated with at least one virtual machine (VM) executing on a host;
determining that the host is in a densely provisioned state based on a comparison of at least one performance metric to a corresponding threshold;
modifying scheduling of at least one process thread configured to handle emulating networking for the VM responsive to determining that the host is in the densely provisioned state; and
modifying configurations of a physical network interface underlying a virtual network interface card of the VM responsive to determining that the host is in the densely provisioned state.

### Claim 10 (depends on 9)

The non-transitory computer-readable storage medium of claim 9, further comprising:
modifying emulation settings of a virtual network interface card of the VM responsive to determining that the host is in the densely provisioned state and that the VM is not configured to execute a latency-sensitive workload.

### Claim 11 (depends on 10)

The non-transitory computer-readable storage medium of claim 10, wherein the modifying emulation settings of the virtual network interface card of the VM further comprises:
reducing a number of system threads handling transmission of packets on the virtual network interface card of the VM; and
modifying the virtual network interface card to increase the number of received network packets batched together to be delivered at once based on the performance metrics comprising CPU load of the host.

### Claim 12 (depends on 9)

The non-transitory computer-readable storage medium of claim 9, wherein modifying scheduling of the at least one process thread configured to handle emulating networking for the VM further comprises:
reducing a frequency of activating the at least one process thread for execution on a physical CPU of the host, wherein the at least one system thread is configured to handle transmission of network packets on the virtual network interface card.

### Claim 13 (depends on 9)

The non-transitory computer-readable storage medium of claim 9, further comprising:
reducing a number of kernel threads configured to handle non-virtual-machine-related traffic for the host responsive to determining that the host is in the densely provisioned state.

### Claim 14 (depends on 9)

The non-transitory computer-readable storage medium of claim 9, wherein the modifying configurations of the physical network interface underlying the virtual network interface card of the VM further comprises:
reducing an interrupt rate of the physical network interface of the host based on the performance metrics comprising CPU load of the host; and
reducing a number of queues allocated for the physical network interface of the host.

### Claim 15

A host computing system comprising:
a physical network interface; and
a processor configured to support execution of at least one virtual machine (VM) on the computing system,
wherein the processor is further configured to:
receive performance metrics associated with the at least one VM executing on the computing system;
determine that the host computing system is in a densely provisioned state based on a comparison of at least one performance metric to a corresponding threshold;
modify scheduling of at least one process thread configured to handle emulating networking for the VM responsive to determining that the host computing system is in the densely provisioned state; and
modify configurations of the physical network interface underlying a virtual network interface card of the VM responsive to determining that the host computing system is in the densely provisioned state.

### Claim 16 (depends on 15)

The computing system of claim 15, wherein the processor is further configured to:
modify emulation settings of a virtual network interface card of the VM responsive to determining that the host computing system is in the densely provisioned state and that the VM is not configured to execute a latency-sensitive workload.

### Claim 17 (depends on 16)

The computing system of claim 16, wherein the processor configured to modify the emulation settings of the virtual network interface card of the VM is further configured to:
reduce a number of system threads handling transmission of packets on the virtual network interface card of the VM; and
modify the virtual network interface card to increase the number of received network packets batched together to be delivered at once based on the performance metrics comprising CPU load of the host computing system.

### Claim 18 (depends on 15)

The computing system of claim 15, wherein the processor configured to modify scheduling of the at least one process thread configured to handle emulating networking for the VM is further configured to:
reduce a frequency of activating the at least one process thread for execution on a physical CPU of the host computing system, wherein the at least one system thread is configured to handle transmission of network packets on the virtual network interface card.

### Claim 19 (depends on 15)

The computing system of claim 15, wherein the processor is further configured to:
reduce a number of kernel threads configured to handle non-virtual-machine-related traffic for the host computing system responsive to determining that the host computing system is in the densely provisioned state.

### Claim 20 (depends on 15)

The computing system of claim 15, wherein the wherein the processor configured to modify configurations of the physical network interface underlying the virtual network interface card of the VM is further configured to:
reduce an interrupt rate of the physical network interface of the host computing system based on the performance metrics comprising CPU load of the host computing system; and
reduce a number of queues allocated for the physical network interface of the host computing system.
