// Module included in the following assemblies:
//
// * machine_management/creating_machinesets/creating-machineset-azure.adoc
// * machine_management/control_plane_machine_management/cpmso_provider_configurations/cpmso-config-options-azure.adoc

ifeval::["{context}" == "creating-machineset-azure"]
:compute:
endif::[]
ifeval::["{context}" == "cpmso-supported-features-azure"]
:cpmso:
endif::[]

:_mod-docs-content-type: REFERENCE
[id="machineset-azure-accelerated-networking_{context}"]
= Accelerated Networking for {azure-first} VMs

[role="_abstract"]
You can enable Accelerated Networking, which uses single root I/O virtualization (SR-IOV) to provide {azure-first} VMs with a more direct path to the switch,
ifdef::compute[during or ]
after installation. This enhances network performance. 

[id="machineset-azure-accelerated-networking-limits_{context}"]
== Limitations

Consider the following limitations when deciding whether to use Accelerated Networking:

* Accelerated Networking is only supported on clusters where the Machine API is operational.

* {empty}
+
ifdef::compute[Although the minimum requirement for an {azure-short} worker node is two vCPUs, ]
Accelerated Networking requires an {azure-short} VM size that includes at least four vCPUs. To satisfy this requirement, you can change the value of `vmSize` in your machine set. For information about {azure-short} VM sizes, see link:https://docs.microsoft.com/en-us/azure/virtual-machines/sizes[{azure-first} documentation].

//iiuc, this is not true for control planes since the operator will roll out changes according to the update strategy
ifdef::compute[]
* When this feature is enabled on an existing {azure-short} cluster, only newly provisioned nodes are affected. Currently running nodes are not reconciled. To enable the feature on all nodes, you must replace each existing machine. This can be done for each machine individually, or by scaling the replicas down to zero, and then scaling back up to your desired number of replicas.
endif::compute[]

ifeval::["{context}" == "creating-machineset-azure"]
:!compute:
endif::[]
ifeval::["{context}" == "cpmso-supported-features-azure"]
:!cpmso:
endif::[]
