> For the complete documentation index, see [llms.txt](https://docs.ionos.com/cloud/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.ionos.com/cloud/network-services/vdc-networking/nic-multi-queue.md).

# NIC Multi-Queue

IONOS CLOUD NIC Multi-Queue: improve VM network throughput with multi-queue NIC configuration

The Network Interface Cards (NICs) Multi-Queue feature enhances the network performance of [<mark style="color:blue;">Dedicated Core Servers</mark>](/cloud/compute-services/compute-engine/dedicated-core.md) and [<mark style="color:blue;">vCPU Servers</mark>](/cloud/compute-services/compute-engine/vcpu-server.md) by associating multiple queues with a VM based on the number of cores. It enables the VM to distribute network traffic across multiple queues, which improves throughput and reduces latency, particularly during high-traffic periods. By utilizing multiple CPU cores to process network packets, NIC Multi-Queue efficiently handles network Input or Output (I/O) and prevents bottlenecks commonly found in single-queue NICs. This feature benefits applications that require high network bandwidth and low latency, such as databases, analytics platforms, and high-performance computing workloads.

NIC Multi-Queue is available in all supported data centers. It is off by default; to use this feature, you must turn it on for each VM using the [<mark style="color:blue;">DCD</mark>](/cloud/network-services/vdc-networking/nic-multi-queue/how-tos/create-nic-multi-queue.md) or [<mark style="color:blue;">IONOS CLOUD API</mark>](/cloud/network-services/vdc-networking/nic-multi-queue/api-how-tos/create-nic-multi-queue.md) for [<mark style="color:blue;">Dedicated Core Servers</mark>](/cloud/compute-services/compute-engine/how-tos/set-up-dedicated-core.md) and [<mark style="color:blue;">vCPU Servers</mark>](/cloud/compute-services/compute-engine/how-tos/set-up-vcpu.md).

Other <code class="expression">space.vars.ionos\_cloud</code> products also use NIC Multi-Queue internally to improve their own network performance. For example, [<mark style="color:blue;">Network File Storage</mark>](/cloud/backup-and-storage/network-file-storage/overview.md) clusters activate it automatically, with no configuration required.

## System requirements

The feature is supported on any VM configuration that meets the two-thread minimum, regardless of core count or processor architecture. A minimum of two CPU threads can be provided by:

* Multiple CPU cores.
* Hyper-threading on single-core systems. Examples:
  * A VM with one Intel Xeon core (providing two threads through hyper-threading) meets the minimum requirement for NIC Multi-Queue.
  * Certain CPU families, such as Intel Sierra Forest, do not support hyperthreads, and therefore require two cores to enable this feature.

## Features

* **Automatic VM Restart:** Enabling NIC Multi-Queue `nicMultiQueue: true` triggers an automatic [<mark style="color:blue;">Virtual Machine (VM)</mark>](https://docs.ionos.com/cloud/support/general-information/glossary-of-terms#virtual-machine-vm) restart to apply the configuration changes.
* **Hot-Plug NIC Support:** You can add network interfaces to a running VM without system restart or downtime. The number of queues per NIC will be equivalent to the number of core threads.
* **Scaling Queue Count:** Adding CPU cores requires a VM restart to update the queue count and leverage increased parallelism:
  * Restart the VM using the [<mark style="color:blue;">Cloud API</mark>](https://docs.ionos.com/cloud/api-reference/cloud-api-v6/servers/) or the [<mark style="color:blue;">Data Center Designer (DCD)</mark>](/cloud/set-up-ionos-cloud/data-center-designer.md).
  * An Operating System (OS)-level restart is insufficient and will not update the queue configuration. Queue count changes require a platform-initiated restart to reload the NIC driver with the updated configuration.
* The following Configuration Management Tools support NIC Multi-Queue:
  * [<mark style="color:blue;">Crossplane Provider</mark>](https://docs.ionos.com/crossplane-provider/api/compute-engine/server)
  * [<mark style="color:blue;">Docker Driver</mark>](https://docs.ionos.com/cloud/tools-docker-machine-driver)
  * [<mark style="color:blue;">IonosCTL</mark>](https://docs.ionos.com/cli-ionosctl/subcommands/compute-engine/server/create)
  * [<mark style="color:blue;">Terraform</mark>](https://docs.ionos.com/terraform-provider/resources/server)
  * [<mark style="color:blue;">Ansible</mark>](https://docs.ionos.com/ansible/api/compute-engine/modules/server)

## Quick Links

<table data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><mark style="color:blue;"><strong>Enable NIC Multi-Queue</strong></mark></td><td>Enable NIC Multi-Queue for your VMs.</td><td><a href="/cloud/network-services/vdc-networking/nic-multi-queue/enable-nic-multi-queue.md">Enable NIC Multi-Queue for Virtual Machines (VMs)</a></td></tr><tr><td><mark style="color:blue;"><strong>How-Tos</strong></mark></td><td>Enable or toggle the NIC Multi-Queue property for your VMs using the DCD.</td><td><a href="/cloud/network-services/vdc-networking/nic-multi-queue/how-tos.md">DCD How-Tos</a></td></tr><tr><td><mark style="color:blue;"><strong>API How-Tos</strong></mark></td><td>Create NIC Multi-Queue enabled VMs or toggle its state using the API.</td><td><a href="/cloud/network-services/vdc-networking/nic-multi-queue/api-how-tos.md">API How-Tos</a></td></tr></tbody></table>

## Developer Tools

<table data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><mark style="color:blue;"><strong>IONOS CLOUD API</strong></mark></td><td>Access the REST API documentation for VMs.</td><td><a href="https://docs.ionos.com/cloud/api-reference/cloud-api-v6/servers/">https://docs.ionos.com/cloud/api-reference/cloud-api-v6/servers/</a></td></tr><tr><td><mark style="color:blue;"><strong>SDKs</strong></mark></td><td>Interact with the API using SDKs.</td><td><a href="https://docs.ionos.com/cloud/sdk-tools-home">https://docs.ionos.com/cloud/sdk-tools-home</a></td></tr><tr><td><mark style="color:blue;"><strong>Config Management Tools</strong></mark></td><td>Explore configuration management tools compatible with NIC for VMs.</td><td><a href="https://docs.ionos.com/cloud/sdk-tools-home#tools">https://docs.ionos.com/cloud/sdk-tools-home#tools</a></td></tr></tbody></table>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.ionos.com/cloud/network-services/vdc-networking/nic-multi-queue.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
