Yandex Cloud
Search
Contact UsGet started
  • Blog
  • Pricing
  • Documentation
  • All Services
  • System Status
    • Featured
    • Infrastructure & Network
    • Data Platform
    • Containers
    • Developer tools
    • Serverless
    • Security
    • Monitoring & Resources
    • ML & AI
    • Business tools
  • All Solutions
    • By industry
    • By use case
    • Economics and Pricing
    • Security
    • Technical Support
    • Customer Stories
    • Cloud credits to scale your IT product
    • Gateway to Russia
    • Cloud for Startups
    • Education and Science
    • Yandex Cloud Partner program
  • Blog
  • Pricing
  • Documentation
© 2025 Direct Cursus Technology L.L.C.
Yandex Virtual Private Cloud
  • Getting started
    • Resource relationships
    • Yandex Cloud network overview
    • Cloud networks and subnets
    • Cloud resource addresses
    • Routing
    • Security groups
    • Gateways
    • Service connections
    • Monitoring network connections
    • Public IP address ranges
    • MTU and MSS
    • DHCP settings
    • Software-accelerated network
    • Quotas and limits
  • DDoS Protection
  • Access management
  • Terraform reference
  • Audit Trails events
  • Release notes
  • FAQ

In this article:

  • Regular VM network
  • Software-accelerated network
  • Recommendations for using a software-accelerated network
  1. Concepts
  2. Software-accelerated network

Software-accelerated network in Virtual Private Cloud

Written by
Yandex Cloud
Updated at October 30, 2024
  • Regular VM network
  • Software-accelerated network
  • Recommendations for using a software-accelerated network

If your application generates an extreme load to the VM cores and, at the same time, requires large amounts of network traffic, the user and network processes may start competing for hardware resources. To avoid this, we recommend using a software-accelerated network in VPC.

Regular VM networkRegular VM network

In the Yandex Cloud infrastructure, all VMs run in the QEMU-KVM virtualization environment. A hypervisor proportionally distributes the computing load across all processor cores allocated to a VM.

The computing load can be logically divided into three parts:

  • User load: OS processes and user processes run in the OS of a user VM.
  • Processes maintaining the operation of network disks.
  • Processes for handling the VM's network traffic.

The load distribution across compute cores can be presented as follows:

The diagram shows that the user load and VM network traffic handling are distributed across all compute cores allocated to the VM.

The processes maintaining the operation of network disks are separated from the user load and run on compute cores from a separate pool, the service cores labeled as Core S1 and Core Sn in the diagram.

You can isolate VM network traffic from the user load using the software-accelerated network (SAN) mechanism.

Software-accelerated networkSoftware-accelerated network

Software network acceleration is achieved by transferring network traffic processing from the VM cores to additional compute cores allocated from a shared pool of cores available to a physical server. To enable SAN, you need to completely shut down your VM.

Load distribution across compute cores with SAN enabled can be represented as follows:

The diagram shows the use of additional compute cores (Core 4 and Core 5) for network traffic processing. The number of service compute cores depends on the number of VM cores:

  • If a VM is hosted on a single NUMA node of a physical server, two additional compute cores for network traffic will be allocated to it as soon as SAN is enabled (see the diagram).
  • If a VM is hosted on two NUMA nodes of a physical server, four additional cores will be allocated to it as soon as SAN is enabled.

Note

The additional compute cores allocated when enabling SAN will not be visible inside the user VM.

You cannot enable SAN on a VM with performance level below 100%.

This way, SAN ensures that there is no competition between user and service loads for the VM's hardware resources, as all network traffic is processed separately. This minimizes lags and packet losses when transmitting traffic, while the VM's computing resources are freed up to serve the user load.

The cost of additional hardware resources depends on the platform and the number of VM cores.

To enable a software-accelerated network:

  • Select the Software network acceleration option when creating a new VM or reconfigure an existing VM.

  • Enable the Software network acceleration option in the basic VM configuration when creating an instance group or set the network_settings.type key to SOFTWARE_ACCELERATED in the YAML specification.

Recommendations for using a software-accelerated networkRecommendations for using a software-accelerated network

We recommend enabling a software-accelerated network to speed up request handling:

  • On VMs with custom DB installations in the case of high disk and CPU utilization (over 70-80%).
  • If you see a high CPU steal time metric value inside a VM.
  • In Yandex Managed Service for Kubernetes cluster node groups when using intra-cluster L7 load balancers, e.g., Ingress NGINX controllers or Istio ingress gateways.

Warning

Enabling SAN will not accelerate your network disks.

Was the article helpful?

Previous
DHCP settings
Next
Quotas and limits
© 2025 Direct Cursus Technology L.L.C.